Hello everyone, we are happy to announce that Meteor v3.0.3 is out!
In this release, we focused on performance research to understand some of the isolated reports we received. @nachocodoner will soon share some of our findings and benchmarks in a post.
From that research, we extracted a few potential actionable ideas to improve Meteor 3 performance:
- Implement batching Observer > DDP calls can greatly reduce the amount of async contexts (Async Local Storage) we spawn, thus relieving garbage collection.
- You can disable WebSocket message compression to get a significant boost in performance depending on your app behavior if it’s heavy on reactivity.
- We must move away from ALS in high-frequency hotspots and use it sparingly.
We want to experiment with DDP batching in the next releases. If you have any feedback or ideas on it, let us know.
We also have a few notes that we would like to share after investigating a few issues:
If you’ve had your Meteor installation for over a year, we suggest reinstalling it to avoid any package installation issues. You can do this by running a few quick commands:
npx meteor uninstall // or rm -rf ~/.meteor
npx meteor
You can read more on it here.
Some packages seem to be improperly changing async context behavior, by using withValue
in the wrong order, be sure to implement the correct behavior in your package. You can find more info here.
We have upgraded Cordova, here’s a few recommendations:
Cordova Upgrade Notes
-
Update Java:
Upgrade to Java 17. If you encounter issues, make sure to update yourJAVA_HOME
environment variable accordingly. -
Gradle Update:
If you’re facing setup issues, upgrade Gradle to version 8.7. -
Android SDK Requirements:
Android SDK 34 is now the minimum required version for app stores. To configure this, add the following line to yourmobile-config.js
file:App.setPreference('android-targetSdkVersion', '34');
Tasks and issues done in this release:
- Fix
Meteor.userId
only being invoked withbindEnvironment
- Upgrade cordova to latest compatible versions
- Update to Node 20.17.0
- Meteor 3 --open opens the browser before the app is started
- Investigate error when installing package
jam:method
- Update the new available version message when running an app
- Update docs link inside install.sh
- Subscription stopping after parameter change
- Add MongoDB connection telemetry
- Bump email package so update errors don’t occur
We want to give a special thank you to the community for helping solve these issues:
- Meteor 3 --open opens the browser before the app is started · Issue #13175 · meteor/meteor · GitHub
- fix: improve the performance of Meteor on Windows 10 and newer by ayewo · Pull Request #13203 · meteor/meteor · GitHub
How to try it?
Installing Meteor
npx meteor
Existing projects:
meteor update --release 3.0.3
Starting a project:
meteor create app-name --release 3.0.3
Your help testing this version by creating a new app or migrating your current one will be extremely helpful!
Please give us your feedback, and if you find any issues, you can create a post here or open an issue on GitHub .
Next Releases
- Meteor 3.0.4 (Early-October, 2024)
- Meteor 3.0.5 (Mid-October, 2024)