Help test 2.3.1 RC

RC for 2.3.1 is out!

First we have update to Node 14.17.2 of the July security release.

Second Meteor will now generate “.aab” (bundle files) by default when building for Android. This is the new default format for Android apps. Use the new build flag --packageType=apk if you still need to generate APK.

Finally last two things of note are two independent releases of webapp and dynamic-importto fix issues on Windows and Safari respectively.

You can now update your Meteor app via meteor update --release 2.3.1-rc.0 to get these changes.
Please give this latest RC a try and let us know if you encounter any issues (or not) so that we can release this as soon as possible.

1 Like

I have tested it on Mac and Windows. On Mac works well.

On Windows, when it was updating to 2.3.1-rc.0 (from 2.3-beta.1), it got hung up or frozen, but this error has been common on Windows systems and I’ve got it before with other versions of Meteor (when create the first meteor app or update the Meteor version). So, I wouldn’t consider it as a new issue, just need to kill the process and run it again to solve it.

Once meteor app was updated, I ran it and I got this error:

"C:\Program Files\nodejs\node.exe" C:\Users\Steeltwins\AppData\Roaming\npm\node_modules\yarn\bin\yarn.js test
yarn run v1.22.10
$ meteor test --settings ./settings/settings-development.json --once --full-app --driver-package meteortesting:mocha
[[[[[ Tests ]]]]]

=> Started proxy.
=> [HMR] Dev server listening on port 3003.
=> Started MongoDB.
Browserslist: caniuse-lite is outdated. Please run next command `npm update`
W20210705-15:38:00.577(-5)? (STDERR) C:\Users\Steeltwins\AppData\Local\.meteor\packages\meteor-tool\2.3.1-rc.0\mt-os.windows.x86_64\dev_bundle\server-lib\node_modules\fibers\future.js:280
W20210705-15:38:00.657(-5)? (STDERR)                                            throw(ex);
W20210705-15:38:00.657(-5)? (STDERR)                                            ^
W20210705-15:38:00.658(-5)? (STDERR) 
W20210705-15:38:00.658(-5)? (STDERR) TypeError: Cannot read property '_handleConnect' of undefined
W20210705-15:38:00.658(-5)? (STDERR)     at exposeLivedata (packages\lamhieu_meteorx.js:26:25)
W20210705-15:38:00.659(-5)? (STDERR)     at packages\lamhieu_meteorx.js:200:1
W20210705-15:38:00.659(-5)? (STDERR)     at packages\lamhieu_meteorx.js:225:4
W20210705-15:38:00.659(-5)? (STDERR)     at packages\lamhieu_meteorx.js:233:3
W20210705-15:38:00.660(-5)? (STDERR)     at C:\Users\STEELT~1\AppData\Local\Temp\meteor-test-runopwor.np2jra\.meteor\local\build\programs\server\boot.js:401:38
W20210705-15:38:00.660(-5)? (STDERR)     at Array.forEach (<anonymous>)
W20210705-15:38:00.661(-5)? (STDERR)     at C:\Users\STEELT~1\AppData\Local\Temp\meteor-test-runopwor.np2jra\.meteor\local\build\programs\server\boot.js:226:21
W20210705-15:38:00.661(-5)? (STDERR)     at C:\Users\STEELT~1\AppData\Local\Temp\meteor-test-runopwor.np2jra\.meteor\local\build\programs\server\boot.js:464:7
W20210705-15:38:00.661(-5)? (STDERR)     at Function.run (C:\Users\STEELT~1\AppData\Local\Temp\meteor-test-runopwor.np2jra\.meteor\local\build\programs\server\profile.js:280:14)
W20210705-15:38:00.662(-5)? (STDERR)     at C:\Users\STEELT~1\AppData\Local\Temp\meteor-test-runopwor.np2jra\.meteor\local\build\programs\server\boot.js:463:13
=> Started your app.

=> App running at: http://localhost:3000/
   Type Control-C twice to stop.

error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

Process finished with exit code 1

After that, I ran meteor update again and the error has gone:

C:\Users\Steeltwins\Documents\WEB\versus-api-player>meteor update
Not updating the release, because this app is at a newer release (METEOR@2.3.1-rc.0) than the latest recommended release (METEOR@2.2.1).

Changes to your project's package version selections from updating package versions:

blaze-tools                  upgraded from 1.1.1 to 1.1.2
caching-html-compiler        upgraded from 1.2.0 to 1.2.1
html-tools                   upgraded from 1.1.1 to 1.1.2
htmljs                       upgraded from 1.1.0 to 1.1.1
http                         upgraded from 1.4.3 to 1.4.4
lamhieu:meteorx              removed from your project
meteortesting:mocha          upgraded from 2.0.1 to 2.0.2
montiapm:agent               upgraded from 2.42.0 to 2.43.1
montiapm:meteorx             added, version 2.2.0
observe-sequence             upgraded from 1.0.16 to 1.0.18
socialize:server-presence    upgraded from 1.0.3 to 1.0.4
socialize:user-presence      upgraded from 1.0.3 to 1.0.4
spacebars-compiler           upgraded from 1.2.1 to 1.3.0
static-html                  upgraded from 1.3.0 to 1.3.2
templating-tools             upgraded from 1.2.0 to 1.2.1
tunguska:reactive-aggregate  upgraded from 1.3.3 to 1.3.6


Newer versions of the following indirect dependencies are available:
 * http 1.4.4 (2.0.0 is available)
 * meteortesting:mocha-core 8.0.1 (8.1.2 is available)
 * spacebars 1.0.15 (1.2.0 is available)
These versions may not be compatible with your project.
To update one or more of these packages to their latest
compatible versions, pass their names to `meteor update`,
or just run `meteor update --all-packages`.

The error was due to lamhie:meteorx package, so this was replaced by monitapm:meteorx

IMHO It works fine this release.

Yes, the error is related to that package which was outdated and using long deprecated APIs.

My app appears to function fine. No anomalies to report so far.

1 Like

2.3.1-rc.1 has been released with updated Node. This should only improve Windows experience. Let me know if you run into any issues.

1 Like

I’ve tried updating our Admin app first (to be on the safe side), however I’m running into a problem with some package holding back the upgrade of accounts-base:

=> Errors while initializing project:

While selecting package versions:
error: Conflict: Constraint accounts-base@1.1.3 is not satisfied by accounts-base 2.0.0.
Constraints on package "accounts-base":
* accounts-base@~2.0.0 <- top level
* accounts-base@2.0.0 <- accounts-password 2.0.0
* accounts-base@2.0.0 <- service-configuration 1.1.0 <- accounts-base 2.0.0 <- accounts-password 2.0.0
* accounts-base@1.1.3 <- useraccounts:core 1.14.2 <- useraccounts:flow-routing 1.14.2

How can I find out which one is blocking it?

useraccounts:core is the culprit. If you look closely you will notice that it requires accounts-base@1.1.3.

Thanks, so what do I need to do then?

I have submitted a PR to fix the issue:

But I think those packages are no longer maintained, so you might want to fork them locally with the fix.

1 Like

It’s a lot of forking and setting correct package dependencies. Current progress of that in Wekan is seen on latest commits on this branch, and dependency changes at .meteor/packages and .meteor/versions:

1 Like

Appreciate that as I have not much clue what to do otherwise. Sorry that I can’t be of more help

Hi @xet7 we should try to migrate the new forks of unmaintained packages to MCP so we can keep providing updates as community.

It a good opportunity for our community to clean up old packages and provide a maintained new forked version when it makes sense.

Currently I have forks of 41 packages in that Wekan Meteor 2.3 branch :smiley:

Those forks are here wekan/packages at upgrade-meteor-2.3-try2 · wekan/wekan · GitHub

:smiley: That is not good. I have submitted PRs with the fixes everywhere where I could, hopefully this can help us filter active packages.

Currently I’m figuring out why I get this error Feature Request: Upgrading to Meteor 2.3 ? · Issue #3881 · wekan/wekan · GitHub , but it’s good progress that I can already login and add lists, although not yet cards, on Wekan Meteor 2.3

@xet7 are they all depending on Accounts or the issue was around the add_files API change?

For many packages, I needed to change add_files to addFiles and on_use to onUse, then fork packages, change package.js files to they depend on http@2.0.0 and forked dependencies.

@xet7 could you provide more context about this error?

Ability to add card. Current error is: formComponent is undefined at list.js

Do you have any mix of requires/exports and import/export? During Meteor adjustments to Node.js 14 I saw a few problems when mixing different ways of importing/exporting modules.

Node.js 14 release notes don’t state anything specific but they have a vague sentence about different behavior in modules.

Hmmm, got it.

One option is to return this old API. I don’t think is beneficial to have a lot of forks just because of this.

But if you want to keep these forks running so this would be a good starting point.

What do you think?