无法识别的'swift_version'密钥

无法识别的'swift_version'密钥,swift,cocoapods,podspec,Swift,Cocoapods,Podspec,我无法将我的pod的新版本推送到CocoaPods规范库 运行pod trunk push MyPod.podspec会导致以下错误: [!] The Pod Specification did not pass validation. The following validation failed: - Warnings: Unrecognized `swift_version` key. 这是我的播客规范: Pod::Spec.new do |spec| spec.name = "M

我无法将我的pod的新版本推送到CocoaPods规范库

运行
pod trunk push MyPod.podspec
会导致以下错误:

[!] The Pod Specification did not pass validation.
The following validation failed:
- Warnings: Unrecognized `swift_version` key.
这是我的播客规范:

Pod::Spec.new do |spec|

  spec.name = "MyPod"
  spec.version = "0.1.1"
  spec.summary = "[REDACTED]"
  spec.homepage = "[REDACTED]"
  spec.license = "Apache License, version 2"
  spec.author = "[REDACTED]"
  spec.social_media_url = "[REDACTED]"
  spec.module_name = "MyPod"
  spec.swift_version = "5.0"
  spec.platform = :ios, "8.0"
  spec.source = { :git => "https://github.com/[REDACTED].git", :tag => "v#{spec.version}" }
  spec.source_files = "MyPod/**/*.{h,m,swift}"

end
我做错了什么


在更新到Swift 5和Xcode 10.2之前,我第一次注意到这些错误。

总结,要更新pod:

提前更新podspec中的版本和标记 提交,将代码推送到git 使用当前代码创建新标记,确保它与podspec中的标记相同

git标签0.1.1

git推送原点0.1.1 呼叫pod spec lint进行检查,pod trunk push在回购主列表中更新

pod lib lint YourSDK.podspec

pod trunk push YourSDK.podspec
看起来您的podfile正在使用标记v0.1.1,但是您的存储库中的标记是0.1.1,没有v。这也会导致linting失败。

这似乎是一个服务器端错误。据报道


但是,由于它是一个警告,而不是一个错误(尽管它是红色字体,这很容易混淆),因此可以用
--allow warnings
参数忽略它。

不,不是这样的情况:版本号中的“v”在podspec和repo中都存在。此外,lint命令说pod通过了验证;但是,推到中继失败。这是警告。所以当你推树干时,允许警告:pod trunk push MyPod.podspec——允许警告希望能帮助你啊,这确实是一个警告。谢谢你,阿巴斯托拉比。我被红色字体的颜色弄糊涂了,虽然这是一个错误,但传递
--allow warnings
参数不能忽略它。