v1.9-beta.4November 26, 2019
v1.9-beta.3November 14, 2019
v1.9-beta.2November 10, 2019
v1.9-beta.1September 19, 2019
v1.9-beta.0September 19, 2019
v1.9-alpha.9July 30, 2019
v1.9-alpha.8July 30, 2019
v1.9-alpha.7July 03, 2019
v1.9-alpha.10September 07, 2019
💥 Breaking changes
- Module-level variable declarations named
exportsare no longer automatically renamed, so they may collide with module function parameters of the same name, leading to errors like
Uncaught SyntaxError: Identifier 'exports' has already been declared. See this comment by @SimonSimCity.
⚡️ Be sure to update the
@babel/runtimenpm package to its latest version (currently 7.7.2):
meteor npm install @babel/runtime@latest
🆕 New Meteor applications now depend on
email@example.com, so it may be a good idea to update to the same major version:
meteor npm install meteor-node-stubs@next
📦 If you are the author of any Meteor packages, and you encounter errors when using those packages in a Meteor 1.8.2 application (for example,
module.watchbeing undefined), we recommend that you bump the minor version of your package and republish it using Meteor 1.8.2, so Meteor 1.8.2 applications will automatically use the new version of the package, as compiled by Meteor 1.8.2:
cd path/to/your/package # Add api.versionsFrom("1.8.2") to Package.onUse in package.js... meteor --release 1.8.2 publish
This may not be necessary for all packages, especially those that have been recently republished using Meteor 1.8.1, or local packages in the
packages/directory (which are always recompiled from source). However, republishing packages is a general solution to a wide variety of package versioning and compilation problems, and package authors can make their users' lives easier by handling these issues proactively.
⚡️ Node has been updated to version 8.16.2.
npmnpm package has been updated to version 6.13.0, and our fork of its
pacotedependency has been updated to version 9.5.9.
🆕 New Meteor applications now include an official
typescriptpackage, supporting TypeScript compilation of
.tsxmodules, which can be added to existing apps by running
meteor add typescript.
🆕 New TypeScript-based Meteor applications can be created by running
meteor create --typescript new-typescript-app
This app skeleton contains a recommended tsconfig.json file, and should serve as a reference for how to make TypeScript and Meteor work together (to the best of our current knowledge). PR #10695
When bundling modern client code, the Meteor module system now prefers the
package.json(if defined) over the
"main"field, which should unlock various
export-based optimizations such as tree shaking in future versions of Meteor. As before, server code uses only the
"main"field, like Node.js, and legacy client code prefers
"main", and then
"module". PR #10541, PR #10765.
ECMAScript module syntax (
export, and dynamic
import()) is now supported by default everywhere, including in modules imported from
node_modules, thanks to the Reify compiler.
If you need to import code from
node_modulesthat uses modern syntax beyond module syntax, it is now possible to enable recompilation for specific npm packages using the
meteor.nodeModules.recompileoption in your application's
package.jsonfile. See PR #10603 for further explanation.
🏗 The Meteor build process is now able to detect whether files changed in development were actually used by the server bundle, so that a full server restart can be avoided when no files used by the server bundle have changed. Client-only refreshes are typically much faster than server restarts. Run
meteor add autoupdateto enable client refreshes, if you are not already using the
autoupdatepackage. Issue #10449 PR #10686
mongodbnpm package used by the
npm-mongoMeteor package has been updated to version 3.2.7.
meteor-babelnpm package has been updated to version 7.7.0, enabling compilation of the
meteor/toolscodebase with TypeScript (specifically, version 3.7.2 of the
reifynpm package has been updated to version 0.20.12.
core-jsnpm package used by
ecmascript-runtime-serverhas been updated to version 3.2.1.
tersernpm package used by
minifier-js(and indirectly by
standard-minifier-js) has been updated to version 4.3.1.
node-gypnpm package has been updated to version 5.0.1, and
node-pre-gyphas been updated to 0.13.0.
optimismnpm package has been updated to version 0.11.3, which enables caching of thrown exceptions as well as ordinary results, in addition to performance improvements.
pathwatchernpm package has been updated to version 8.1.0.
underscorenpm package installed in the Meteor dev bundle (for use by the
meteor/toolscodebase) has been updated from version 1.5.2 to version 1.9.1, and
@types/underscorehas been installed for better TypeScript support.
In addition to the
.jsxfile extensions, the
--cordova-server-portoption to override local port where Cordova will serve static resources, which is useful when multiple Cordova apps are built from the same application source code, since by default the port is generated using the ID from the application's
--test-app-path <directory>option for
meteor testnow accepts relative paths as well as absolute paths.
- Module-level variable declarations named