meteor v1.9 Release Notes

Release Date: 2020-01-09 // over 4 years ago
  • 💥 Breaking changes

    • 🐧 Because Node.js 12 no longer supports 32-bit Linux, Meteor 1.9 has also dropped support for 32-bit Linux. In other words, Meteor 1.9 supports 64-bit Mac, Windows, and Linux, as well as 32-bit Windows.

    Migration Steps

    N/A

    🔄 Changes

    • ⚡️ Node.js has been updated to version 12.14.0, which includes several major Node.js versions since 8.17.0 (used by Meteor 1.8.3):

    • ⚡️ The fibers npm package has been updated to version 4.0.3, which includes changes that may drastically reduce garbage collection pressure resulting from heavy Fiber usage.

    • ⚡️ The pathwatcher npm package has been updated to use a fork of version 8.0.2, with PR #128 applied.

    • ⚡️ The sqlite3 npm package has been updated to version 4.1.0.

    • ⚡️ The node-gyp npm package has been updated to version 6.0.1, and node-pre-gyp has been updated to version 0.14.0.

    • The feature that restarts the application up to two times if it crashes on startup has been removed. Feature #335 PR #10345

    • ⚡️ Facebook OAuth has been updated to call v5 API endpoints. PR #10738

    🔄 Changes

    • Meteor.user(), Meteor.findUserByEmail() and Meteor.findUserByUserName() can take a new options parameter which can be used to limit the returned fields. Useful for minimizing DB bandwidth on the server and avoiding unnecessary reactive UI updates on the client. Issue #10469

    • 0️⃣ Accounts.config() has a new option defaultFieldSelector which will apply to all Meteor.user() and Meteor.findUserBy...() functions without explicit field selectors, and also to all onLogin, onLogout and onLoginFailure callbacks. This is useful if you store large data on the user document (e.g. a growing list of transactions) which do no need to be retrieved from the DB whenever you or a package author call Meteor.user() without limiting the fields. Issue #10469

    • Lots of internal calls to Meteor.user() without field specifiers in accounts-base and accounts-password packages have been optimized with explicit field selectors to only fetch the fields needed by the functions they are in. Issue #10469