Search code examples
iosobjective-ccocoapodspodspeccocoalumberjack

Pod spec lint error due to CocoaLumberjack subspec


Week ago I've pushed MyApp to my private cocoapods without any problems. I did not update anything with CocoaLumberjack in the meantime.

My podspec contains:

spec.subspec 'Core' do |cs|
    cs.dependency 'libextobjc', '~> 0.4'
    cs.dependency 'CocoaLumberjack', '2.0.0-rc2'
end

And here is the command && error:

$ pod repo push my-private MyApp.podspec 

Validating spec
 -> MyApp (0.0.7)
    - NOTE  | [MyApp/Core] [xcodebuild]  CocoaLumberjack/Classes/DDASLLogger.m:85:31: warning: implicit declaration of function 'geteuid' is invalid in C99 [-Wimplicit-function-declaration]
    - ERROR | [MyApp/Core] [xcodebuild]  CocoaLumberjack/Classes/DDASLLogger.m:85:31: error: conflicting types for 'geteuid'
    - NOTE  | [MyApp/Core] [xcodebuild]  /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.1.sdk/usr/include/unistd.h:445:8: note: previous declaration is here

[!] The `MyApp.podspec` specification does not validate.

Where line 85 of that file is:

uid_t const readUID = geteuid();

It has been working before. I have no idea what have changed that it isn't working now.


Solution

  • Seems to fix itself after upgrading to Cocoapods version 0.36.0