Meteor 1.6 how do I get/upgrade to latest Cordova?


#1

I have updated my project to Meteor 1.6 but I am seeing some issues when I meteor add-platform ios

cordova-custom-config: Installed npm dependencies
%% Plugin doesn't support this project's cordova-ios version. cordova-ios: 4.5.1, failed version requirement: <4.5.0
%% Skipping 'cordova-plugin-console' for ios  
Google Sign-In prerequisites                 -
START Running hook to add iOS Keychain Sharing entitlements (required since iOS 10)
Will add iOS Keychain Sharing entitlements to project 'Buzzy'
END Running hook to add iOS Keychain Sharing entitlements (required since iOS 10)
cordova-custom-config: Skipping auto-restore of config file backup(s)
cordova-custom-config: Applied custom config from config.xml to /Users/adamginsburg/Documents/development/buzzy7/.meteor/local/cordova-build/platforms/ios/Buzzy/Buzzy-Info.plist
ios: added platform                   

The plugin cordova-plugin-console is not actually needed anymore as it’s built in now included …

This plugin is no longer being worked on as the functionality provided by this plugin is now included in cordova-ios > 4.5.0 or greater, and support is already built in to cordova-windows > 5.0.0. You should remove this plugin from your > applications.

So it seems like the Cordover version of my Meteor project is on 4.5.1… how do I get it to a later version (post 5)?

thanks

BTW these are the cordova plugins I currently have:

cordova-custom-config@3.3.0
cordova-plugin-calendar@4.4.7
cordova-plugin-compat@1.2.0
cordova-plugin-console@1.1.0
cordova-plugin-contacts@2.3.1
cordova-plugin-device@1.1.6
cordova-plugin-file@4.3.3
cordova-plugin-geolocation@2.4.3
cordova-plugin-image-picker@1.1.3
cordova-plugin-inappbrowser@1.7.1
cordova-plugin-ios-ble-permissions@1.0.1
cordova-plugin-media-capture@1.4.3
cordova-plugin-speech-recognition-feat-siri@2.1.1
cordova-plugin-speechrecognition@https://github.com/pbakondy/cordova-plugin-speechrecognition.git#9302a31f7007a0180bd291e52da4130b48661924
cordova-plugin-splashscreen@4.0.0
cordova-plugin-statusbar@2.2.3
cordova-plugin-wkwebview-engine@1.1.3
cordova.plugins.diagnostic@3.0.2
phonegap-plugin-push@1.10.5

#2

The latest released version of cordova-ios is v4.5.3. This pull request in Meteor 1.6.1 provides this version. There is no version 5 of cordova-ios.

Also, sounds like you might need to update to cordova-custom-config@4.4.0 and remove cordova-plugin-console@1.1.0 from your ./meteor/cordova-plugins file.


#3

Thanks. @skirunman yep, if I remove cordova-plugin-console I get a linker error in Xcode, if I add it back in it goes away.

The error is around duplicates…

duplicate symbol _OBJC_CLASS_$_CDVLogger in:
    /Users/adamginsburg/Library/Developer/Xcode/DerivedData/Buzzy-dqirsrcohaqedrfarjlcqjhtcjxc/Build/Intermediates.noindex/Buzzy.build/Debug-iphoneos/Buzzy.build/Objects-normal/arm64/CDVLogger.o
    /Users/adamginsburg/Library/Developer/Xcode/DerivedData/Buzzy-dqirsrcohaqedrfarjlcqjhtcjxc/Build/Products/Debug-iphoneos/libCordova.a(CDVLogger.o)
duplicate symbol _OBJC_METACLASS_$_CDVLogger in:
    /Users/adamginsburg/Library/Developer/Xcode/DerivedData/Buzzy-dqirsrcohaqedrfarjlcqjhtcjxc/Build/Intermediates.noindex/Buzzy.build/Debug-iphoneos/Buzzy.build/Objects-normal/arm64/CDVLogger.o
    /Users/adamginsburg/Library/Developer/Xcode/DerivedData/Buzzy-dqirsrcohaqedrfarjlcqjhtcjxc/Build/Products/Debug-iphoneos/libCordova.a(CDVLogger.o)
ld: 2 duplicate symbols for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

any ideas pls?


[SOLVED] Error when building Meteor App for iOS using Cordova
#4

I deleted CDV_Logger from the project and the error went away… that said, I can’t seem to find the dependency on it. I have been through all the cordovaplugins I have and can’t seem to see it. :-/ So me deliting the files out of the XCode project this seems like a complete hack… which gets overritten each time I do a meteor run ios-device

is there a command I can use to see what version of Cordova is actually running?


#5

Look in /.meteor/local/cordova-build/platforms/platforms.json

For Meteor 1.6 you should see

{
    "android": "6.2.3",
    "ios": "4.5.1"
}

#6

Thanks @skirunman. I see exactly that.

cheers