Commit Graph

22071 Commits

Author SHA1 Message Date
Ben Newman
48276c3d36 Bump package versions for 1.8.2-beta.10 release. release/METEOR@1.8.2-beta.10 2019-06-25 14:28:38 -04:00
Ben Newman
2dae9be561 Regression test that the graphql package can be imported. 2019-06-25 14:25:23 -04:00
Ben Newman
e89d68f636 Support .mjs modules (as well as .js and .jsx) in ecmascript plugin.
https://github.com/meteor/meteor/pull/10522#issuecomment-505553025
2019-06-25 14:11:17 -04:00
Ben Newman
0a353c03ca Bump package versions for 1.8.2-beta.9 release. release/METEOR@1.8.2-beta.9 2019-06-25 13:15:41 -04:00
Ben Newman
a69ba4904d Move meteorBabelHelpers to modules package, and restrict to legacy bundle. (#10596)
Should fix #10595.

Code from the application `node_modules` directory becomes part of the
`modules` package, so that it can be imported by any other package that
uses the module system, regardless of package load order.

Now that we compile code from `node_modules` using `babel-compiler` and
`meteor-babel` (#10585), `node_modules` code requires the same runtime
environment as any other Meteor JS code. For the most part, this need is
satisfied by the `@babel/runtime/helpers/...` modules, which are also
defined in the `modules` package because they come from `node_modules`.
However, in the legacy bundle, `meteorBabelHelpers.sanitizeForInObject` is
used to fix buggy for-in iteration in older Internet Explorers.

Thankfully, this extra helper code does not need to be included in the
modern or server bundles, but only in legacy code.
2019-06-25 13:08:38 -04:00
Ben Newman
097b493a4e Use session.withTransaction to make Mongo Livedata test more robust. 2019-06-24 15:40:46 -04:00
Ben Newman
2b53de2d21 Bump package versions for 1.8.2-beta.8 release. release/METEOR@1.8.2-beta.8 2019-06-24 15:32:29 -04:00
Ben Newman
9f6c66aa25 Stop using Mongo Timestamp as cacheKey in DocFetcher.
See my comment in issue #10512 for motivation:
https://github.com/meteor/meteor/issues/10512#issuecomment-504797861

I think the changes in b0cb1ceda3 are still
worthwhile because they ensure ops within a transaction have distinct
Timestamps, with the caveat that we should avoid assuming those Timestamps
are necessarily unique.
2019-06-24 15:22:52 -04:00
Ben Newman
9abe331ed1 Bump $BUNDLE_VERSION to 8.16.0.10 before rebuilding dev bundle. 2019-06-24 14:57:20 -04:00
Ben Newman
df6e2ac43b Update node-pre-gyp to version 0.13.0.
Since PR #10592 updated node-gyp to the latest version, we should update
node-pre-gyp as well.
2019-06-24 11:13:20 -04:00
Ben Newman
7a10dddb2e Update meteor-babel and reify to latest versions. 2019-06-24 11:11:16 -04:00
Ben Newman
758d2ce7c8 Bump package versions for 1.8.2-beta.7 release. release/METEOR@1.8.2-beta.7 2019-06-23 19:42:27 -04:00
Ben Newman
b0cb1ceda3 Give different Timestamps to operations within a transaction.
Follow-up to #10420, per this comment by @conorstrejcek:
https://github.com/meteor/meteor/issues/10420#issuecomment-476833232

Should help with #10512.
2019-06-23 19:27:36 -04:00
Ben Newman
b17dd0d3e1 Update mongodb npm package to version 3.2.7. 2019-06-23 19:27:36 -04:00
Ben Newman
e70e1cda79 Bump package versions for 1.8.2-beta.6 release. release/METEOR@1.8.2-beta.6 2019-06-23 15:03:39 -04:00
Ben Newman
6afc82b48d Bump $BUNDLE_VERSION to 8.16.0.9 before rebuilding dev bundle. 2019-06-23 15:03:39 -04:00
Ben Newman
f259d553be Update @wry/context to version 0.4.4. 2019-06-23 15:03:39 -04:00
Ben Newman
168468dce3 Update meteor-babel to latest version (7.4.14). 2019-06-23 14:56:18 -04:00
Ben Newman
a797bf3e67 Bump $BUNDLE_VERSION to 8.16.0.8 before rebuilding dev bundle. 2019-06-23 12:37:46 -04:00
Konstantin
a872401b09 Update dev-bundle-tool-package.js (#10592)
Need to update version "node-gyp" to "5.0.1", due to deprecated packages into 3.7.0
2019-06-23 12:35:54 -04:00
Robert Lowe
f214eba7d9 Allow for METEOR_GIT_COMMIT_HASH in lieu of findGitCommitHash's execFile (#10586) 2019-06-23 11:54:47 -04:00
Ben Newman
ed101ad22b Merge pull request #10585 from meteor/invoke-compileOneJsResource-from-ImportScanner
Support full ECMAScript compilation of modules unexpectedly imported from node_modules.
2019-06-23 11:51:04 -04:00
Ben Newman
13048740c8 Update meteor-babel and reify to latest versions, again. 2019-06-23 11:12:39 -04:00
Ben Newman
5c701daba7 Update meteor-babel to latest version (7.4.12), again. 2019-06-20 17:06:43 -04:00
Ben Newman
16518dac52 Bump $BUNDLE_VERSION to 8.16.0.7 before rebuilding dev bundle. 2019-06-20 13:29:02 -04:00
Ben Newman
67c6d2cdd3 Update meteor-babel and reify to latest versions, again. 2019-06-20 13:28:21 -04:00
Ben Newman
ad47129b60 Bump $BUNDLE_VERSION to 8.16.0.6 before rebuilding dev bundle. 2019-06-20 12:11:29 -04:00
Ben Newman
4c097321ca Update meteor-babel and reify to latest versions, again. 2019-06-20 12:11:29 -04:00
Ben Newman
a4586e4332 Compile import/export syntax in @babel/runtime-related modules.
Case in point: @babel/runtime/helpers/esm/typeof.js uses ECMAScript module
syntax (import, export), but must not be compiled with transforms like
@babel/plugin-transform-typeof-symbol, since it's part of the runtime
library depended upon by that transform.

This logic is an extreme implementation detail for sure, but at least
babel-compiler is the only code that needs to know about this complexity.
2019-06-20 12:11:29 -04:00
Ben Newman
26d4cb33c6 Bump $BUNDLE_VERSION to 8.16.0.5 before rebuilding dev bundle. 2019-06-20 12:11:29 -04:00
Ben Newman
7d3e7ab189 Bump minor versions of babel-compiler, ecmascript, and modules. 2019-06-20 12:11:29 -04:00
Ben Newman
de14b380c5 Update meteor-babel and reify to latest versions. 2019-06-20 12:11:29 -04:00
Ben Newman
88004d4649 Add a basic regression test of issue #10563. 2019-06-20 12:11:29 -04:00
Ben Newman
d21400567f Avoid double-compilation of @babel/runtime-related packages.
Now that we have the ability to invoke Babel via compiler plugins for
individual modules encountered by the ImportScanner, it's possible the
ImportScanner will try to compile @babel/runtime/helpers/* modules.

These modules are not safe to recompile because they use native syntax
(such as typeof) in ways that do not need additional transformation or
simulation, and would be broken by applying the usual Babel transforms.

It may bother you that this list of packages is hard-coded, or that it
might grow over time. To ease those concerns, I would say:

  1. We can release new versions of the babel-compiler and ecmascript
     packages whenever we need to.

  2. These particular npm packages belong in this list because Babel
     itself assumes they have already been compiled, so there shouldn't be
     (m)any other packages that fit that narrow criterion.

In other words, this is just a list of packages that must be left
untouched in order to bootstrap the Babel compiler system, and the
babel-compiler package is where the details of that system primarily
reside, so that's where we should put this list, until/unless we find a
better solution.
2019-06-20 12:11:29 -04:00
Ben Newman
c7b886c5d9 Nest cacheOptions in scope where used. 2019-06-20 12:11:29 -04:00
Ben Newman
9f88fa35c3 Use full power of compiler plugins to compile unanticipated modules.
Instead of merely supporting ECMAScript module syntax via Reify, we should
really be compiling unanticipated modules (typically within node_modules)
using the same logic that the rest of the application uses.

Note: this processing applies only to .js files for now, since that's what
the ImportScanner works with.

Should help with #10563.
2019-06-20 12:11:29 -04:00
Ben Newman
a2f5e1c3e5 Make PackageSourceBatch ResourceSlot creation more reusable. 2019-06-20 12:11:29 -04:00
Ben Newman
330a6cfe3d Update ecmascript-runtime-{client,server} to use core-js@3.1.4. (#10588)
* Update ecmascript-runtime-{client,server} to core-js@3.1.4.

Also added a polyfill for Symbol.asyncIterator to server, modern, and
legacy, which should fix #9897.

* Add a test of for-await-of async iteration.

This should verify that #9897 is fixed.
2019-06-19 20:24:23 -04:00
Ben Newman
830c13b287 Bump package versions for 1.8.2-beta.5 release. release/METEOR@1.8.2-beta.5 2019-06-19 13:20:02 -04:00
Ben Newman
bd89ac8d1b Merge branch 'devel' into release-1.8.2 2019-06-19 13:19:11 -04:00
Ben Newman
bf24ef3cb6 Bump patch version of accounts-google package to 1.3.3. 2019-06-19 13:14:01 -04:00
Filipe Névola
ce14282304 Enable running multiple Cordova apps from same application source (#10577)
Fixes #10576.
2019-06-19 13:07:25 -04:00
zodern
d0de6e1176 Add assets to watchSet, again (#10565)
Follow-up to #10452.
2019-06-17 12:51:33 -04:00
Timo Schneider
ee09e22bde Add missing dot in query parameter (#10581)
So that emails from other users are not exposed.
2019-06-17 12:38:05 -04:00
Ben Newman
f0d39b86e6 Avoid module.useNode() for packages with "module" entry points. 2019-05-17 11:22:23 -04:00
Ben Newman
9fc6642f5a Compile unhandled JS imports for server bundles, too. 2019-05-17 10:59:17 -04:00
Ben Newman
6d3386d77d Bump package versions for 1.8.2-beta.4 release. release/METEOR@1.8.2-beta.4 2019-05-16 13:27:56 -04:00
Ben Newman
4b518d56e2 Bump $BUNDLE_VERSION to 8.16.0.4 before rebuilding dev bundle. 2019-05-16 13:11:18 -04:00
Ben Newman
c73ac1c844 Update reify and @babel/runtime to latest versions in dev bundle.
We ended up with two different versions of the reify package (0.19.0 and
0.19.1) in the last build of the dev bundle, which seems to have caused
the test failures.
2019-05-16 13:10:28 -04:00
Ben Newman
28d74dcc9f Use Reify to compile dynamic import(...). 2019-05-15 19:12:09 -04:00