Has anyone been able build for SDK 33?

Has anyone been able to successfully build for SDK 33, or is it not possible with Meteor and Cordova at this point?

This PR from one of Quave devs has been merged to the 2.14 release branch.

I think this is what you are looking for.

Yeah, I updated to the 2.14 release. It doesn’t build anything or give any errors. It just builds the server tarball, and that’s it. I may have missed something, but I’m not sure where to go from here.

Hi, did you see that the RC for 2.14 is out now?

The new Cordova is on there too.

We’ve been using the PR version of the new Cordova version for a few weeks now and can build platform 33 apps, although we’re just now finalizing patching and fixing all our one incompatible android packages…

But it builds for us, no doubt.

Can you not see the logs of the android build process at all?

1 Like

Hey Daniel, could you share what you have altered to make it work? I was trying to write something for the migration guide that helps people to be able to build for SDK 33. That would be great!!

Hi @grubba are there still outstanding issues? If so I’m not aware of it, we may have fixed them because we thought they were part of some shoddy old cordova plugins we used… :smile:

If so do you have a quick link to the outstanding issues? We have someone helping us out with our android issues, maybe he could have a look too.


What we basically did some weeks ago:

  • We merged the Cordova PR (the one where the pipeline still failed) on top of a local meteor checkout of the version 2.13 release.
    (For the uninitated: the custom meteor checkout contains a binary you can use instead of your installed meteor, eg by using ../../my-meteor/meteor build ...)

  • We changed our .mobile-config.js to

App.setPreference('android-targetSdkVersion', '33')
App.setPreference('android-minSdkVersion', '28')

(we upped minSdkVersion from 22 to 28 because we suspected some issues when trying to backward support back til SDK 22, IDK if that’s important maybe?)

With that we were able to build for Android Platform 33.

We had to fix some conflicts & update some of our old plugins because of different permissions, Google SDK changes etc.

But I think we could always at least create the cordova project and then check it in a recent Android Studio (the project is available in .meteor/local/cordova-build/platforms/android if the gradle build fails to check what’s wrong by repeatedly banging your head against the wall^r^r^r^r^r^r^r I mean by repeating the builds and fixing issues one by one :slight_smile: )

Now it just builds…

My issue was something little. I didn’t realize my android platform had been removed. I added that back, removed the splash tags in my mobile-config, and changed my build tools version to 33.0.2. I’m now able to successfully build an Android app targeting SDK 33.

1 Like

Good to hear @trustydusty82 ! :slight_smile:

1 Like

Good to hear that all worked out @trustydusty82!

Thanks a lot for the explanation, @DanielDornhardt. This will help many people!!

I am no longer able to build with meteor 2.14, I get thrown the following error:

Errors executing Cordova commands:                                              
                                                                                   
   While adding plugin cordova-plugin-meteor-webapp@2.0.3 to Cordova project:      
   CordovaError: Uh oh!                                                            

   "/app/.meteor/local/cordova-build/plugins/cordova-plugin-meteor-webapp/src/ios/GCDWebServer/GCDWebServer/Core/GCDWebServer.m"
   not found!

I see the GCDWebServer folder is missing from .meteor/local/cordova-build/plugins/cordova-plugin-meteor-webapp/src/ios so I attempted adding it manually from here … but no luck yet.

Have you tried deleting your cordova-build folder and trying to build again?

Yes, I have removed the entire .meteor/local folder too. I tried the suggestions from here too, but the problem keeps coming back.

You can try doing a pod repo update in your home directory, clean the Meteor build data and try again. I had this problem sometimes and it was always fixed by the pod repo update :slight_smile:

Thanks, I have the pod repo update as part of my build script, but I tried it again and got the same error.

Even get the same when doing a minimal app with the following:

cd /tmp
meteor create --minimal cordova-app
cd cordova-app
meteor add-platform ios
meteor build --debug ../build --server http://127.0.0.1:3000

Leads to

=> Errors executing Cordova commands:                                           
                                                                                
   While adding plugin cordova-plugin-meteor-webapp@2.0.3 to Cordova project:   
   CordovaError: Uh oh!                                                         

   "/private/tmp/cordova-app/.meteor/local/cordova-build/plugins/cordova-plugin-meteor-webapp/src/ios/GCDWebServer/GCDWebServer/Core/GCDWebServer.m"
   not found!
   at copyFile
   (/private/tmp/cordova-app/.meteor/local/cordova-build/node_modules/cordova-ios/lib/plugman/pluginHandlers.js:315:36)
   at copyNewFile
   (/private/tmp/cordova-app/.meteor/local/cordova-build/node_modules/cordova-ios/lib/plugman/pluginHandlers.js:341:5)
   at installHelper
   (/private/tmp/cordova-app/.meteor/local/cordova-build/node_modules/cordova-ios/lib/plugman/pluginHandlers.js:265:13)
   at install
   (/private/tmp/cordova-app/.meteor/local/cordova-build/node_modules/cordova-ios/lib/plugman/pluginHandlers.js:34:13)
   at ActionStack.process
   (/private/tmp/cordova-app/.meteor/local/cordova-build/node_modules/cordova-common/src/ActionStack.js:55:25)
   at PluginManager.doOperation
   (/private/tmp/cordova-app/.meteor/local/cordova-build/node_modules/cordova-common/src/PluginManager.js:111:24)
   at PluginManager.addPlugin
   (/private/tmp/cordova-app/.meteor/local/cordova-build/node_modules/cordova-common/src/PluginManager.js:141:21)
   at Api.addPlugin
   (/private/tmp/cordova-app/.meteor/local/cordova-build/node_modules/cordova-ios/lib/Api.js:258:14)
   at handleInstall
   (/Users/jacoswarts/.meteor/packages/meteor-tool/.2.14.0.4er21n.ybzh3++os.osx.x86_64+web.browser+web.browser.legacy+web.cordova/mt-os.osx.x86_64/dev_bundle/lib/node_modules/cordova-lib/src/plugman/install.js:561:10)
   at
   /Users/jacoswarts/.meteor/packages/meteor-tool/.2.14.0.4er21n.ybzh3++os.osx.x86_64+web.browser+web.browser.legacy+web.cordova/mt-os.osx.x86_64/dev_bundle/lib/node_modules/cordova-lib/src/plugman/install.js:344:28
   at
   /Users/jacoswarts/.meteor/packages/meteor-tool/.2.14.0.4er21n.ybzh3++os.osx.x86_64+web.browser+web.browser.legacy+web.cordova/mt-os.osx.x86_64/dev_bundle/lib/node_modules/meteor-promise/fiber_pool.js:43:40
   => awaited here:
   at Function.Promise.await
   (/Users/jacoswarts/.meteor/packages/meteor-tool/.2.14.0.4er21n.ybzh3++os.osx.x86_64+web.browser+web.browser.legacy+web.cordova/mt-os.osx.x86_64/dev_bundle/lib/node_modules/meteor-promise/promise_server.js:56:12)
   at CordovaProject.runCommands (/tools/cordova/project.js:895:22)
   at CordovaProject.addPlugin (/tools/cordova/project.js:594:14)
   at /tools/cordova/project.js:772:16
   at Function.each
   (/Users/jacoswarts/.meteor/packages/meteor-tool/.2.14.0.4er21n.ybzh3++os.osx.x86_64+web.browser+web.browser.legacy+web.cordova/mt-os.osx.x86_64/dev_bundle/lib/node_modules/underscore/underscore-node-f-pre.js:1321:7)
   at /tools/cordova/project.js:771:11
   at Object.enterJob (/tools/utils/buildmessage.js:388:12)
   at CordovaProject.ensurePluginsAreSynchronized
   (/tools/cordova/project.js:638:18)
   at CordovaProject.prepareFromAppBundle
   (/tools/cordova/project.js:270:10)
   at /tools/cli/commands.js:1282:24
   at Object.enterJob (/tools/utils/buildmessage.js:388:12)
   at /tools/cli/commands.js:1270:20
   at Object.capture (/tools/utils/buildmessage.js:283:5)
   at Object.main.captureAndExit (/tools/cli/main.js:281:29)
   at buildCommand (/tools/cli/commands.js:1261:10)
   at /tools/cli/commands.js:1048:25
   at Function.run
   (/Users/jacoswarts/.meteor/packages/meteor-tool/.2.14.0.4er21n.ybzh3++os.osx.x86_64+web.browser+web.browser.legacy+web.cordova/mt-os.osx.x86_64/tools/tool-env/tools/tool-env/profile.ts:289:14)
   at /tools/cli/commands.js:1046:18
   at
   /Users/jacoswarts/.meteor/packages/meteor-tool/.2.14.0.4er21n.ybzh3++os.osx.x86_64+web.browser+web.browser.legacy+web.cordova/mt-os.osx.x86_64/dev_bundle/lib/node_modules/meteor-promise/fiber_pool.js:43:40

In the minimalist example, after a pod repo update it seems to work

$ pod repo update
Updating spec repo `trunk`
$ meteor build --debug ../build --server http://127.0.0.1:3000
 > Merging [ app/client/main.css ] > 52 bytes|
minifyStdCSS: Total CSS 52 bytes

It might be related to a specific plugin in my actual project conflicting with 2.14, I will have to start the elimination process again…

See @matheusccastro’s answer below for a workaround

@jacoatvatfree Just faced this issue in a project here, and this seems to be an issue on the latest releases of the cordova-plugin-meteor-webapp. Created an issue here `GCDWebServer` missing in `cordova-plugin-meteor-webapp` · Issue #12946 · meteor/meteor · GitHub (there’s also a workaround on the description of the issue).

1 Like

Thanks for that, thought I was the only one with this issue