Meteor.js 3.0 is here
The most “impactful” release of the year!
First, we would like to thank the community and everyone involved in making this happen, in no particular order:
@denyhs @nachocodoner @hschmaiske @jkuester @fredmaiaarantes @zodern @radekmie @grubba @storyteller @alimgafar @camikuro @gabsferreira @copleykj @harry97 @acemtp @filipenevola @edimarlnx @matheusccastro and so many more, too many to mention them here. We appreciate and respect every single one of you.
Also, we would like to thank all our business partners who have been part of this directly or indirectly. Meteor.js is more than just a tool, it’s about a thriving entrepreneurship ecosystem. Not only a framework, but a whole platform to build upon. In our community you can find not only engineers, but creators and entrepreneurs.
And now, with Meteor.js 3 you will be able to leverage it’s unparalleled speed of product development with access to not only modern syntax but a whole universe of compatibility with Node.js tooling and security.
You can now safely create apps and migrate existing ones. If you find any issues, please report it to us through GitHub issues, Forums or Discord.
Using Meteor.js 3
From now on to install Meteor 3 you can simply run:
npx meteor
To create a new Meteor 3 project you still need to use the specifier:
meteor create --release 3.0.1
To update an existing Meteor project, also:
meteor update --release 3.0.1
The specifier will only be required for a few more days, later on you can fully omit it
Changes included in the Official Release (since RC 4)
- Incorrect Node.js version in Meteor 3 projects
- Find alternative and remove dependencies which hold the
posix
package - Check Fix handling unexpected errors during build and merge it
- Unable to run bundle from “meteor build”
- Deprecate Meteor.call for async methods
- Review and update documentation for
callAsync
- Replace docs page for Meteor 3 with a link to the ad hoc docs for the migration
- [Meteor] Fix how to compare constraints version when publishing a package
- Check if TLA or require as promises is missing documentation
- Update node version to latest v20
- Rename or remove asyncLocalStorage global
- Tinytest major version increased
- Add
addEmailAsync
alias - Cannot create new project with
meteor create my-react-app
due to skeleton clone (PR 1, PR 2) - Calling
subscribe
with different params reinserts all documents - Back from offline: method does not apply on server side
Summary of what changes in Meteor.js 3 as a whole
-
Async Server Methods: We’ve made several server methods asynchronous, enhancing performance and efficiency.
-
Package Updates: Numerous packages have been updated due to dependency changes, ensuring you’re working with the latest and most secure versions.
-
Node v20 and Express Integration: Meteor 3.0 now integrates with Express and takes full advantage of the features offered by Node 20 and it’s middleware and package ecosystem.
-
Major Architectural Changes: We’ve made substantial changes, including dropping Fibers, making all MongoDB interactions
async/await
, and supporting MeteorJS on ARM architectures. -
New Documentation: We’ve launched new V3 Docs focusing solely on Meteor 3.0, with a Migration Guide to help you transition from Meteor 2.x to 3.0 seamlessly.
For more detailed information, please refer to our official documentation and our blog posts:
More content will be made available in the following days, leading to a launch event later on. Stay tuned.
The future is bright, happy coding!
Best,
The Meteor Team