Search code examples
cocoapodstravis-cirubymotion

Travis not compiling all cocoapods


for a RubyMotion gem, I use Travis for the tests. The tests are passing locally but fail on Travis. The reason is quite simple, all the code from one pod is not fully compiled.

If you look at https://travis-ci.org/bmichotte/ProMotion-XLForm at line 838 (for the actual build), it compile only those files

     Build ./Pods.xcodeproj [XLForm - Release]
     Compile ./XLForm/XLForm/XL/Helpers/NSExpression+XLFormAdditions.m
     Compile ./XLForm/XLForm/XL/Helpers/NSArray+XLFormAdditions.m
     Compile ./XLForm/XLForm/XL/Helpers/NSPredicate+XLFormAdditions.m
     Compile ./XLForm/XLForm/XL/Helpers/NSObject+XLFormAdditions.m
     Compile ./XLForm/XLForm/XL/Helpers/NSString+XLFormAdditions.m

while locally, it compile all files.

I'm not sure who is guilty (cocoapods, rubymotion, motion-cocoapods, ...) ? because it use the exact same version as I am using except xcode (6.1 on Travis, 6.4 locally).

Any idea why this occurs ?


Solution

  • Ok, so after a --trace, I was able to find the issue

    The pod I use, use nonnull, null_unspecified and other keywords supported by XCode 6.3+ while the default XCode on Travis is 6.1...

    Adding osx_image: xcode6.4 on my .travis.yml corrected the issue...

    Now, I only have to get a RubyMotion install on this.