nsomar/Swiftline

Cocoapods and Rome Issue?

madhavajay opened this issue · 2 comments

I have the latest cocapods and rome installed

cocoapods (1.1.0.rc.2, 1.0.1)
cocoapods-core (1.1.0.rc.2, 1.0.1)
cocoapods-deintegrate (1.0.1)
cocoapods-downloader (1.1.1)
cocoapods-plugins (1.0.0)
cocoapods-rome (0.7.0)
cocoapods-search (1.0.0)
cocoapods-stats (1.0.0)
cocoapods-trunk (1.0.0)
cocoapods-try (1.1.0)

And I get error:

[!] The dependency `Swiftline (from `../Swiftline.podspec`)` is not used in any concrete target.

I believe Podfile syntax has changed to require a target, but I don't understand how thats supposed to work with these CLI rome framework scripts?

Is there something broken here or am I doing it wrong?

same issue.

There are quite a few problems with current repo's version of Podfile in Examples.

First of all, to get Rome works with Cocoapods, according to CocoaPods/Rome#58, you must "specify some target on it even if it doesn't exist just to get cocoapods to not complain".

Secondly, there are some bugs with dSym generation (CocoaPods/Rome#64 (comment)), so disable them.

Thirdly, there are an issue with versions of Quick and Nimble.

Finally, I was able to build and execute examples by using Xcode 10 with Swift 3.2, using last version of Quick and Nimble (1.3.2 and 7.3.1, correspondingly).

Modified Podfile for a reference:

platform :osx, '10.10'

plugin 'cocoapods-rome', {
    :pre_compile => Proc.new { |installer|
        installer.pods_project.targets.each do |target|
            target.build_configurations.each do |config|
                # Swiftline is build with Swift 3
                # On my system default version is 4, so override it here
                config.build_settings['SWIFT_VERSION'] = '3.2'
            end
        end

        installer.pods_project.save
    },
    # Disable dsym
    # https://github.com/CocoaPods/Rome/issues/64#issuecomment-381044979
    dsym: false
}

# Target name doesn't matter, if you do not have a related project
# https://github.com/CocoaPods/Rome/issues/58
target 'fiction' do
    pod 'Swiftline', :path => '../Swiftline.podspec'
    # use last versions
    pod 'Quick'
    pod 'Nimble'
end