Commit Graph

10323 Commits

Author SHA1 Message Date
filipenevola
0806489de6 Bump package versions for 1.10-beta.8 release 2020-02-25 12:19:23 -04:00
Filipe Névola
b582d7de58 Merge branch 'release-1.10' into mongo-performance-improvements 2020-02-24 22:45:51 -04:00
Ben Newman
67671dc9b3 Bump package versions for 1.10-beta.7 release. 2020-02-20 11:45:58 -05:00
Ben Newman
de5db52f87 Merge branch 'devel' into release-1.10 2020-02-20 11:42:09 -05:00
Ben Newman
150d387b44 Merge branch 'master' into devel 2020-02-20 11:24:20 -05:00
filipenevola
05e7b81c2a Bump package versions for 1.9.2 release 2020-02-20 10:36:07 -04:00
Ben Newman
60355ae0e3 Bump package versions for 1.9.2-rc.1 release. 2020-02-19 18:21:35 -05:00
Ben Newman
c81738fbb3 Update meteor-babel to version 7.8.2 and typescript to 3.7.5. 2020-02-19 15:20:20 -05:00
filipenevola
dad91bd581 Bump package versions for 1.9.2-rc.0 release 2020-02-19 16:15:37 -04:00
Ben Newman
924c748ecc Avoid bailing out with module.useNode() for ESM modules.
On the server, Meteor attempts to avoid bundling node_modules code by
replacing entry point modules with a stub that calls module.useNode() (see
packages/modules-runtime/server.js). This trick allows evaluating server
node_modules natively in Node.js, faithfully preserving all Node-specific
behaviors, such as module.id being an absolute file system path, the
__dirname and __filename variables, the ability to import binary .node
modules, and so on.

However, starting in Node.js 12.16.0 (Meteor 1.9.1+), modules evaluated
natively by Node are considered ECMAScript modules (ESM) if the closest
package.json file has "type": "module" (or has an .mjs file extension).
This poses a problem for the module.useNode() trick, because ESM modules
cannot be imported synchronously using require (which is currently how
module.useNode() works).

To work around this new error, this commit checks package.json for "type":
"module" in ImportScanner#shouldUseNode to determine whether it's safe to
use the module.useNode() trick.

The good news is that ESM modules don't have access to nearly as many
Node.js-specific quirks: no module, require, or exports variables; no
__dirname, no __filename; no ability to import JSON or other non-ESM file
types (at least right now). So it seems somewhat less important for ESM
code (compared to CommonJS code) to bail out into native Node.js execution
using module.useNode(). In other words, bundling server code should not
affect its execution in nearly as many cases, if that code is ESM rather
than legacy CommonJS.

If this good news turns out to be overly optimistic, we can consider using
a different kind of bailout stub that's capable of importing ESM using
dynamic import(). For now, making sure we avoid bailing out for ESM code
like @babel/runtime/helpers/esm/* is the priority.
2020-02-19 15:24:42 -04:00
Ben Newman
87bc54fb9f Avoid bailing out with module.useNode() for ESM modules.
On the server, Meteor attempts to avoid bundling node_modules code by
replacing entry point modules with a stub that calls module.useNode() (see
packages/modules-runtime/server.js). This trick allows evaluating server
node_modules natively in Node.js, faithfully preserving all Node-specific
behaviors, such as module.id being an absolute file system path, the
__dirname and __filename variables, the ability to import binary .node
modules, and so on.

However, starting in Node.js 12.16.0 (Meteor 1.9.1+), modules evaluated
natively by Node are considered ECMAScript modules (ESM) if the closest
package.json file has "type": "module" (or has an .mjs file extension).
This poses a problem for the module.useNode() trick, because ESM modules
cannot be imported synchronously using require (which is currently how
module.useNode() works).

To work around this new error, this commit checks package.json for "type":
"module" in ImportScanner#shouldUseNode to determine whether it's safe to
use the module.useNode() trick.

The good news is that ESM modules don't have access to nearly as many
Node.js-specific quirks: no module, require, or exports variables; no
__dirname, no __filename; no ability to import JSON or other non-ESM file
types (at least right now). So it seems somewhat less important for ESM
code (compared to CommonJS code) to bail out into native Node.js execution
using module.useNode(). In other words, bundling server code should not
affect its execution in nearly as many cases, if that code is ESM rather
than legacy CommonJS.

If this good news turns out to be overly optimistic, we can consider using
a different kind of bailout stub that's capable of importing ESM using
dynamic import(). For now, making sure we avoid bailing out for ESM code
like @babel/runtime/helpers/esm/* is the priority.
2020-02-19 13:25:22 -05:00
filipenevola
c9ea1f427c Bump package versions for 1.10-beta.6 release 2020-02-19 11:07:29 -05:00
Ben Newman
8ff7eed55c Merge branch 'devel' into release-1.10 2020-02-19 09:41:44 -05:00
filipenevola
d7bb478a41 Merge branch 'master' into devel 2020-02-19 09:26:16 -05:00
filipenevola
2a8f8d3c80 Bump package versions for 1.9.1 release 2020-02-18 21:06:07 -04:00
filipenevola
1b1e9cd4af Bump package versions for 1.9.1-rc.1 release 2020-02-18 14:40:27 -04:00
filipenevola
68a85d78e7 Bump package versions for 1.9.1-rc.0 release 2020-02-18 14:10:10 -04:00
Manuel Saelices
3192364217 Fix race condition in the facts-base package tests as the Facts list may not be resetted between tests
Fixes #10749
2020-02-12 11:42:50 -04:00
filipenevola
4629295643 bump appcache version to 1.2.5 (1.2.4 was published without publishing the version here) 2020-02-12 11:33:21 -04:00
Filipe Névola
aa13a4b838 Merge pull request #10901 from povesteam/devel
Add enableCallback option for appcache
2020-02-12 11:30:28 -04:00
Filipe Névola
055214c793 Merge pull request #10696 from mitar/update-optimization
A small optimization when updating documents
2020-02-12 11:22:16 -04:00
Filipe Névola
323a4eba58 Merge pull request #10726 from osminushkin/sparse_index_1_to_true
change sparse and unique index options values from 1 to true
2020-02-12 11:20:49 -04:00
Filipe Névola
f03834d1e9 Merge pull request #10856 from meteor/fix/10733
Add hash to runtime config file url
2020-02-12 10:40:35 -04:00
Filipe Névola
925d6e15ad Merge pull request #10738 from StorytellerCZ/facebook-api-update
Update Facebook API calls to v5
2020-02-12 10:27:57 -04:00
Jesse Rosenberger
fd0bd1ec59 Bump package version of accounts-github in preparation for publishing.
Bumping this to make sure it brings in the correct dependency of
`github-oauth` and the fix included in the references below.

Ref: 4228dcbd03
Ref: https://github.com/meteor/meteor/pull/10899
2020-02-05 18:53:18 +02:00
Jan Dvorak
4228dcbd03 Switch google-oauth to pass token in headers. (#10899)
Update API calls for authentication due to depracation: https://developer.github.com/changes/2019-11-05-deprecated-passwords-and-authorizations-api/
https://developer.github.com/v3/auth/#basic-authentication
2020-02-05 18:21:14 +02:00
Ruben Sainiuc
61deae5068 Add enableCallback option for appcache 2020-02-05 15:21:27 +02:00
seke
bf7b23275c Bump minor package versions for livequery changes 2020-02-04 17:23:45 +01:00
seke
c55875c66c Revert dev changes 2020-02-04 17:21:38 +01:00
seke
a0113ba868 Add more comments about data mutation assumptions 2020-02-04 17:21:38 +01:00
seke
20f197cec5 Add more extended scribble test 2020-02-04 17:21:38 +01:00
seke
9eaa77b2cf Reduce EJSON.clone's when observing query changes 2020-02-04 17:21:38 +01:00
Ben Newman
6b4d429e5d Bump package versions for 1.10-beta.5 release. 2020-02-01 15:14:50 -05:00
Ben Newman
6f083942b8 Merge branch 'devel' into release-1.10 2020-02-01 14:16:56 -05:00
Ben Newman
c20c0dc017 Bump socket-stream-client patch version after PR #10741. 2020-02-01 14:11:41 -05:00
Frederick Stark
ad1b160fbc Remove redundant dynamic-import from socket-stream-client (#10741) 2020-02-01 14:10:32 -05:00
Ben Newman
ec8190a4fe Bump mongo package patch version after PR #10889. 2020-02-01 13:51:56 -05:00
François Fournier
5be354b10f Fix bug #10880 "[1.9] bundle-visualizer crashes app" (#10886)
The updated babel-based minifiers must be more tight on some syntax. This
trailing coma has been there for a while but it's now causing issue when
minimizing to view the bundle size. Tests on a local app show a resolution
just by deleting the coma.
2020-02-01 13:42:57 -05:00
Christian Klaussner
dc148ae0fa Remove deprecated MongoDB connection options. (#10889)
The `autoReconnect` and `reconnectTries` options are incompatible with the
unified topology: http://mongodb.github.io/node-mongodb-native/3.3/reference/unified-topology/
2020-02-01 13:36:34 -05:00
Christian Klaussner
018d5a9f4c Update MongoDB driver to 3.5.2. (#10895) 2020-02-01 13:34:39 -05:00
filipenevola
e046442278 Bump ddp-server package version to 2.3.1. 2020-01-30 21:58:22 -04:00
Filipe Névola
630822a26f Fixes bug #10468: ddp-server guards against null argument in s… (#10891)
Fixes bug #10468: ddp-server guards against null argument in sockjs connection handler
2020-01-30 21:44:49 -04:00
Christian Klaussner
c9fb850b75 Don't use deprecated REPLServer.rli property. (#10888)
This property is deprecated since Node.js 12.
https://github.com/nodejs/node/pull/26260
2020-01-30 10:29:53 -05:00
Mark Reid
9bf98136d0 ddp-server/stream_server guards against null argument in sockjs server connection handler 2020-01-30 16:35:34 +11:00
Jan Dvorak
2e013c62b1 Update Facebook API calls to v5 2020-01-26 10:34:32 +09:00
Jan Dvorak
d044f05881 Merge branch 'devel' into facebook-api-update 2020-01-26 10:18:22 +09:00
Ben Newman
266b9af20c Bump package versions for 1.10-beta.4 release 2020-01-16 13:05:07 -05:00
Ben Newman
80cb6451e9 Merge branch 'devel' into release-1.10 2020-01-16 13:03:32 -05:00
Ben Newman
9043cbc4a7 Update meteor-babel to version 7.8.1 in dev bundle.
The changes in 7.8.1 add a new method to the meteor-babel/register API,
which is only used internally, so there is no need to publish a new
version of babel-compiler, ecmascript, and typescript.
2020-01-16 12:22:00 -05:00
Ben Newman
ea14956a45 Bump minor version of webapp package to 1.9.0-beta110.3. 2020-01-16 11:30:11 -05:00