Перенесите мой модуль на Swift 4
Я создал свой стручок в Swift 3, и теперь я хочу перенести его в Swift 4.
Я уже сделал миграцию кода в примере проекта (я решил создать пример при запуске pod lib create
), но мой подспек все еще не проходит проверку.
Одна из причин заключается в том, что конфигурация cocoapods по умолчанию компилирует его как Swift 3.
Другой заключается в том, что для обновления зависимостей для компиляции с помощью Swift 4 Мне нужно сослаться на конкретную ветвь, например RxSwift
, но я не мог найти способ сделать это в подспеце.
Как я могу исправить эти проблемы?
1 ответ:
Согласно CocoaPods: укажите на ветвь в pod spec
Вы не можете использовать метаданные :git и :branch в podspec. Ожидается, что метаданные :git и: branch будут получены из подфайла.
Если вы хотите использовать теги, то используйте как показано ниже: rxcocoa/RxSwift для тега swift 4(
4.0.0-beta.0
)Pod::Spec.new do |s| ###Your code here s.dependency 'RxCocoa', '~> 4.0.0-beta.0' s.dependency 'RxSwift', '~> 4.0.0-beta.0' end
Если вы хотите использовать ветвь, то Ваш
podspec
выглядит следующим образом:Pod::Spec.new do |s| ###Your code here s.dependency 'RxSwift' end
Ваш
Podfile
будет:use_frameworks! target 'YOUR_TARGET' do pod 'RxSwift', :git => 'https://github.com/ReactiveX/RxSwift.git', :branch => 'rxswift4.0-swift4.0' end