Cocoapods: Pushing spec fails with Xcode 10 GM

Created on 12 Sep 2018  路  18Comments  路  Source: CocoaPods/CocoaPods

Report

pod trunk push fails with Xcode 10 GM with this error:

Validating podspec
 -> Kronos (3.0.0)
    - NOTE  | xcodebuild:  note: Using new build system
    - NOTE  | xcodebuild:  note: Planning build
    - NOTE  | xcodebuild:  note: Constructing build description
    - NOTE  | [iOS] xcodebuild:  note: Using build description '28b601d336dbb5ea0b7317d49a5058ff'
    - NOTE  | xcodebuild:  warning: Skipping code signing because the target does not have an Info.plist file. (in target 'App')
    - NOTE  | xcodebuild:  note: Using eager compilation
    - ERROR | [OSX] xcodebuild: Returned an unsuccessful exit code. You can use `--verbose` for more information.
    - NOTE  | [OSX] xcodebuild:  note: Using build description '832d3ee3de99c1899b48002e8b955a8d'
    - NOTE  | [tvOS] xcodebuild:  note: Using build description 'ac1be6e24fcb8433bfd3b0f07175c2fd'

I was able to work around this by forcing the old build system by changing this line https://github.com/CocoaPods/CocoaPods/blob/1.5.3/lib/cocoapods/validator.rb#L859 to include -UseNewBuildSystem=NO

What did you do?

pod trunk push Kronos.podspec --swift-version=4.2

CocoaPods Environment

### Stack

```
  CocoaPods : 1.5.3
        Ruby : ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-darwin17]
    RubyGems : 2.7.6
        Host : Mac OS X 10.13.6 (17G2307)
      Xcode : 10.0 (10A254a)
        Git : git version 2.18.0
Ruby lib dir : /usr/local/Cellar/ruby/2.5.1/lib
Repositories : master - https://github.com/CocoaPods/Specs.git @ 18bd04a45f19f0cc3822aeeb319d35baced41d6d
```

### Installation Source

```
Executable Path: /Users/ksmiley/.gem/bin/pod
```

### Plugins

```
cocoapods-deintegrate : 1.0.2
cocoapods-plugins     : 1.0.0
cocoapods-search      : 1.0.0
cocoapods-stats       : 1.0.0
cocoapods-trunk       : 1.3.1
cocoapods-try         : 1.1.0
```

Project that demonstrates the issue

Pushing from this sha https://github.com/lyft/Kronos/commit/d38491d123fb58897ecb339920cf69da479d19d0

new build system

Most helpful comment

Run gem install cocoapods --pre to install beta version 1.6.0.beta.1 fixes the issue for me

All 18 comments

@keith have you tried with with pod lib lint --no-clean and inspect the workspace and see the actual error message of the build?

It doesn't fail if I build it in Xcode directly
CocoaPods-Lint-20180912-22029-1uuivd7-Kronos.zip

But I believe this warning, which is in the NOTES above, might cause some issues.

Hm, IIRC without seeing validator.rb code I don't think NOTES make lint fail. I will need to download 474248GB of Xcode 10 GM so I can try it myself.

Update to the latest beta, it fixed it for me (1.6.0 beta1)

@keith any chance to double check with 1.6.0.beta.1? I am not sure how it helps but worth a shot.

@keith I tried it today:

    ** BUILD SUCCEEDED **

   Testing with `xcodebuild`. 
 -> Kronos (3.0.0)
    - NOTE  | xcodebuild:  note: Using new build system
    - NOTE  | xcodebuild:  note: Planning build
    - NOTE  | xcodebuild:  note: Constructing build description
    - NOTE  | [iOS] xcodebuild:  note: Using build description '92b105de30d6a948d060d90ef15aa568'
    - NOTE  | xcodebuild:  warning: Skipping code signing because the target does not have an Info.plist file. (in target 'App')
    - NOTE  | xcodebuild:  note: Using eager compilation
    - NOTE  | [iOS] xcodebuild:  note: build debugging is enabled, trace file: '/Users/dimitris/Library/Developer/Xcode/DerivedData/App-celcfvcbsgrahkhkzecjrueiqclm/Build/Intermediates.noindex/XCBuildData/buildDebugging-558556230.063393/build.trace'
    - NOTE  | [iOS] xcodebuild:  note: build debugging is enabled, current manifest: '/Users/dimitris/Library/Developer/Xcode/DerivedData/App-celcfvcbsgrahkhkzecjrueiqclm/Build/Intermediates.noindex/XCBuildData/buildDebugging-558556230.063393/current-manifest.xcbuild'
    - NOTE  | [iOS] xcodebuild:  note: build debugging is enabled, current serialized description: '/Users/dimitris/Library/Developer/Xcode/DerivedData/App-celcfvcbsgrahkhkzecjrueiqclm/Build/Intermediates.noindex/XCBuildData/buildDebugging-558556230.063393/current-desc.xcbuild'
    - NOTE  | [OSX] xcodebuild:  note: Using build description 'ac7734e136a49982f89978727e7ddc87'
    - NOTE  | [OSX] xcodebuild:  note: build debugging is enabled, trace file: '/Users/dimitris/Library/Developer/Xcode/DerivedData/App-celcfvcbsgrahkhkzecjrueiqclm/Build/Intermediates.noindex/XCBuildData/buildDebugging-558556240.7303/build.trace'
    - NOTE  | [OSX] xcodebuild:  note: build debugging is enabled, current manifest: '/Users/dimitris/Library/Developer/Xcode/DerivedData/App-celcfvcbsgrahkhkzecjrueiqclm/Build/Intermediates.noindex/XCBuildData/buildDebugging-558556240.7303/current-manifest.xcbuild'
    - NOTE  | [OSX] xcodebuild:  note: build debugging is enabled, current serialized description: '/Users/dimitris/Library/Developer/Xcode/DerivedData/App-celcfvcbsgrahkhkzecjrueiqclm/Build/Intermediates.noindex/XCBuildData/buildDebugging-558556240.7303/current-desc.xcbuild'
    - NOTE  | [tvOS] xcodebuild:  note: Using build description '8141fb8545d0e6dcf7c147c43cd63a8f'
    - NOTE  | [tvOS] xcodebuild:  note: build debugging is enabled, trace file: '/Users/dimitris/Library/Developer/Xcode/DerivedData/App-celcfvcbsgrahkhkzecjrueiqclm/Build/Intermediates.noindex/XCBuildData/buildDebugging-558556254.91876/build.trace'
    - NOTE  | [tvOS] xcodebuild:  note: build debugging is enabled, current manifest: '/Users/dimitris/Library/Developer/Xcode/DerivedData/App-celcfvcbsgrahkhkzecjrueiqclm/Build/Intermediates.noindex/XCBuildData/buildDebugging-558556254.91876/current-manifest.xcbuild'
    - NOTE  | [tvOS] xcodebuild:  note: build debugging is enabled, current serialized description: '/Users/dimitris/Library/Developer/Xcode/DerivedData/App-celcfvcbsgrahkhkzecjrueiqclm/Build/Intermediates.noindex/XCBuildData/buildDebugging-558556254.91876/current-desc.xcbuild'

Pods workspace available at `/var/folders/0x/798grj997td8xhm6_jr85l680000gn/T/CocoaPods-Lint-20180913-3622-1nw4p6b-Kronos/App.xcworkspace` for inspection.

Kronos passed validation.

That was with CocoaPods 1.6.0.beta.1 pretty much on a custom branch of my own that had unrelated changes to validation.

I should have another spec to push soon and I'll try it again

@keith confirmed also it happens with 1.5.3 for me digging a bit more but I think 1.6.0.beta.1 is fixing this for you.

@keith sorry for bombardment:

    sent 260440 bytes  received 106 bytes  521092.00 bytes/sec
    total size is 260015  speedup is 1.00
    /var/folders/0x/798grj997td8xhm6_jr85l680000gn/T/CocoaPods-Lint-20180913-4194-1e3exgm-Kronos/Pods/Target Support Files/Pods-App/Pods-App-frameworks.sh: line 104: EXPANDED_CODE_SIGN_IDENTITY: unbound variable
    Command PhaseScriptExecution failed with a nonzero exit code

    ** BUILD FAILED **

That is for macOS 10.9 (1.5.3)

Ah awesome, that would make sense to be fixed since https://github.com/CocoaPods/CocoaPods/pull/7720 is in the beta

@keith I think we can safely close this as already fixed

@keith last thing "I promise"

I think you couldn't repro straight from Xcode because a) you had to select macOS target to build for and b) opening the workspace defaults to "Debug" configuration for the scheme versus the validator in the command line uses RELEASE so you would have to switch it to "Release" which would enable code sign and then eventually fail.

Run gem install cocoapods --pre to install beta version 1.6.0.beta.1 fixes the issue for me

Any update on this? I tried with beta 1.6.0.beta.1 but still the same error.

NOTE  | xcodebuild:  note: Using new build system
    - NOTE  | [iOS] xcodebuild:  note: Planning build
    - NOTE  | [iOS] xcodebuild:  note: Constructing build description
    - NOTE  | [iOS] xcodebuild:  warning: Skipping code signing because the target does not have an Info.plist file. (in target 'App')
    - NOTE  | [iOS] xcodebuild:  warning: duplicate output file '/Users/mac/Library/Developer/Xcode/DerivedData/App-gntjywglqgzfqyeaokytqugljyma/Build/Products/Release-iphonesimulator/MKProgress/MKProgress.framework/Info.plist' on task: ProcessInfoPlistFile /Users/mac/Library/Developer/Xcode/DerivedData/App-gntjywglqgzfqyeaokytqugljyma/Build/Products/Release-iphonesimulator/MKProgress/MKProgress.framework/Info.plist Target Support Files/MKProgress/MKProgress-Info.plist (in target 'MKProgress')
    - NOTE  | [iOS] xcodebuild:  error: Multiple commands produce '/Users/mac/Library/Developer/Xcode/DerivedData/App-gntjywglqgzfqyeaokytqugljyma/Build/Products/Release-iphonesimulator/MKProgress/MKProgress.framework/Info.plist

@kamirana4 there are no updates because the issue is closed.

Your issue seems this https://github.com/CocoaPods/CocoaPods/issues/8125, remove Info.plist from your source files.

@dnkoutso Thanks, it has definitely worked for me. Moreover i have to remove.swift-version file and added s.swift_version = '4.2' in pod spec file (XXXXXX.podspec) for lint to build successfully for Swift 4.2.

I encountered the same problem, upgrading to the latest version (1.6.0.beta.1) is no problem.

how can i skip xcodebuild when i push spec file? my framework depends on another framework which is personally used by myself

Was this page helpful?
0 / 5 - 0 ratings