Commit Graph

22673 Commits

Author SHA1 Message Date
filipenevola
d208ca7fcf Bump package versions for 1.10-beta.9 release release/METEOR@1.10-beta.9 2020-02-25 16:32:29 -04:00
Filipe Névola
e97682ecf4 Merge pull request #10829 from eskan/devel
Fix/Change the way resource file are added to cordova project
2020-02-25 16:30:21 -04:00
Filipe Névola
79dccfe49f Merge pull request #10818 from wildhart/fix-issue-10469
Limit fetching full user objects (performance) Fixes #10469
2020-02-25 16:26:04 -04:00
Filipe Névola
e384b1ce37 Merge pull request #10942 from meteor/refactor/modernize-random
Refactor/modernize random
2020-02-25 16:10:16 -04:00
Filipe Névola
e31f390237 Merge branch 'release-1.10' into devel 2020-02-25 15:42:03 -04:00
Filipe Névola
979b31b87c Merge branch 'release-1.10' into fix-issue-10469 2020-02-25 15:40:39 -04:00
Filipe Névola
3516bc8193 Merge branch 'release-1.10' into refactor/modernize-random 2020-02-25 15:37:17 -04:00
filipenevola
0806489de6 Bump package versions for 1.10-beta.8 release release/METEOR@1.10-beta.8 2020-02-25 12:19:23 -04:00
Filipe Névola
b03b7bb9ba Merge pull request #10537 from lamhieu-vk/TravisRetryInRunTests
Should be retry run test for Travis CI when falling
2020-02-25 12:18:11 -04:00
Filipe Névola
735e05d2d7 Merge pull request #10864 from meteor/mongo-performance-improvements
Reduce EJSON.clone's when observing query changes
2020-02-25 12:10:20 -04:00
cyrille
a72ee88a0e Merge branch 'devel' of https://github.com/meteor/meteor into devel 2020-02-25 13:08:52 +01:00
Seba Kerckhof
6368359927 Bump version 2020-02-25 10:39:44 +01:00
sebakerckhof
f0930360ef Refactor types into strategy-pattern (ish) subclasses. 2020-02-25 10:39:44 +01:00
sebakerckhof
c4504ba1f3 Some style improvements 2020-02-25 10:39:44 +01:00
sebakerckhof
3a3774f47f Modernize random 2020-02-25 10:39:44 +01:00
Filipe Névola
b582d7de58 Merge branch 'release-1.10' into mongo-performance-improvements 2020-02-24 22:45:51 -04:00
wildhart
10b3bd3fce Merge remote-tracking branch 'upstream/devel' into fix-issue-10469 2020-02-24 09:01:26 +13:00
Filipe Névola
d612d7546f Merge pull request #10931 from harryadelb/community-slack-invitation
Add Slack invite link
2020-02-22 09:06:55 -04:00
Filipe Névola
ed9cfab9a7 Merge pull request #10933 from meteor/drop-support-win-32-bit
Drops support for Win 32-bit
2020-02-21 20:35:01 -04:00
filipenevola
fbfea6188f Fixes History format 2020-02-21 19:42:44 -04:00
filipenevola
63dd0462a1 Bump $BUNDLE_VERSION to 12.16.1.4 before rebuilding dev bundle. 2020-02-21 19:37:35 -04:00
filipenevola
dfef2c3641 Drops support for Windows 32-bit as MongoDB no longer supports it 2020-02-21 19:21:12 -04:00
filipenevola
25ac4f0d3b Bump $BUNDLE_VERSION to 12.16.1.3 before rebuilding dev bundle. 2020-02-21 17:11:04 -04:00
filipenevola
0bc97f0126 Bump $BUNDLE_VERSION to 12.16.1.3 before rebuilding dev bundle. 2020-02-21 16:49:05 -04:00
filipenevola
94b79bfb03 Merge branch 'devel' into release-1.10 2020-02-21 16:47:30 -04:00
Filipe Névola
b1b1665182 Merge pull request #10675 from klaussner/error-page-syntax-highlighting
Convert ANSI escape codes to HTML on error page
2020-02-21 16:43:21 -04:00
Filipe Névola
cb6c663f1c Merge branch 'devel' into error-page-syntax-highlighting 2020-02-21 16:42:55 -04:00
Harry Adel
ba3044bcce Add Slack invite link 2020-02-21 18:19:07 +02:00
Filipe Névola
db55440041 Removes BrowserStack badge and other copy updates 2020-02-20 14:15:22 -04:00
Ben Newman
67671dc9b3 Bump package versions for 1.10-beta.7 release. release/METEOR@1.10-beta.7 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
f685b8c10d Bump $BUNDLE_VERSION to 12.16.1.2 before rebuilding dev bundle.
Since Meteor 1.9.2 included a rebuilt dev bundle, it's important to
rebuild the dev bundle again after merging master (which now corresponds
to 1.9.2) into devel (which has seen a number of dev bundle-relevant
changes that are not yet on master, e.g. MongoDB 4.0.6 => 4.2.1).
2020-02-20 11:37:36 -05:00
Ben Newman
150d387b44 Merge branch 'master' into devel 2020-02-20 11:24:20 -05:00
Ben Newman
34f8807709 Merge pull request #10927 from meteor/release-1.9.2
Release 1.9.2
2020-02-20 11:13:08 -05:00
filipenevola
b96fe01ffa Updates 1.9.2 release date 2020-02-20 2020-02-20 10:43:27 -04:00
filipenevola
05e7b81c2a Bump package versions for 1.9.2 release release/METEOR@1.9.2 2020-02-20 10:36:07 -04:00
cyrille
53dff3f174 remove useless slash in path 2020-02-20 10:09:35 +01:00
cyrille
1e4288f1f9 Merge branch 'devel' of https://github.com/meteor/meteor into devel 2020-02-20 09:44:09 +01:00
Ben Newman
60355ae0e3 Bump package versions for 1.9.2-rc.1 release. release/METEOR@1.9.2-rc.1 2020-02-19 18:21:35 -05:00
Ben Newman
ec60e66ef9 Bump $BUNDLE_VERSION to 12.16.1.1 before rebuilding dev bundle. 2020-02-19 15:32:59 -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
9c852da695 Make optimisticLookupPackageJson return array of package.json objects.
Commit 646fa4e3ee fixed #10547 by
restricting optimisticLookupPackageJson to package.json files with a
"name" property, which effectively skipped over intermediate package.json
files with additional properties.

However, in Node.js 12.16.0 (Meteor 1.9.1+), modules evaluated natively by
Node are considered ECMAScript modules if the closest package.json file
has "type": "module" (or has an .mjs file extension). This poses a problem
for the module.useNode() trick (see packages/modules-runtime/server.js),
because ESM modules cannot be imported using require.

For example, recent versions of the @babel/runtime package have a
@babel/runtime/helpers/esm/package.json file for the ESM versions of its
helpers (which specifies "type": "module"), but that package.json file
does not have a "name" property, because it is not the root package.json
file representing the entire @babel/runtime package.

I considered making the "name" restriction configurable, but that would
have fragmented the caching of optimisticLookupPackageJson. Instead, I
made it return an array of all potentially relevant package.json objects,
which can be safely cached.

This means that the caller has to iterate over the array, but there is
only one call site for this function (in tools/isobuild/package-source.js)
right now, so that wasn't too much work.
2020-02-19 15:24:42 -04:00
Ben Newman
0743289ff3 Add History.md section for Meteor 1.9.2. 2020-02-19 14:16:05 -05:00
Ben Newman
947361bbc8 Merge pull request #10926 from meteor/avoid-module.useNode-for-ESM-imports
Avoid bailing out with module.useNode() for ESM modules.
2020-02-19 14:11:40 -05:00
filipenevola
0c7c2a6731 Bump $BUNDLE_VERSION to 12.16.1.0 before rebuilding dev bundle. 2020-02-19 14:39:41 -04:00
filipenevola
0132191dcd Bump Node version to 12.16.1 2020-02-19 14:39:26 -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
Ben Newman
290e084cab Make optimisticLookupPackageJson return array of package.json objects.
Commit 646fa4e3ee fixed #10547 by
restricting optimisticLookupPackageJson to package.json files with a
"name" property, which effectively skipped over intermediate package.json
files with additional properties.

However, in Node.js 12.16.0 (Meteor 1.9.1+), modules evaluated natively by
Node are considered ECMAScript modules if the closest package.json file
has "type": "module" (or has an .mjs file extension). This poses a problem
for the module.useNode() trick (see packages/modules-runtime/server.js),
because ESM modules cannot be imported using require.

For example, recent versions of the @babel/runtime package have a
@babel/runtime/helpers/esm/package.json file for the ESM versions of its
helpers (which specifies "type": "module"), but that package.json file
does not have a "name" property, because it is not the root package.json
file representing the entire @babel/runtime package.

I considered making the "name" restriction configurable, but that would
have fragmented the caching of optimisticLookupPackageJson. Instead, I
made it return an array of all potentially relevant package.json objects,
which can be safely cached.

This means that the caller has to iterate over the array, but there is
only one call site for this function (in tools/isobuild/package-source.js)
right now, so that wasn't too much work.
2020-02-19 13:14:47 -05:00