Commit Graph

10115 Commits

Author SHA1 Message Date
Ben Newman
1955ec08fa Bump package versions for 1.8.2-beta.12 release. 2019-07-03 12:40:48 -04:00
Ben Newman
e195440442 Fall back to package.json "main" field if "module" cannot be resolved.
The meteor/tools/isobuild/resolver.js changes are the static half of the
puzzle. The runtime half was implemented in install@0.13.0 with this
commit: 233aa75ce3
2019-07-03 12:25:05 -04:00
Ben Newman
ad92fe8647 Merge branch 'devel' into release-1.8.2 2019-07-03 11:19:56 -04:00
Ben Newman
e0caf13103 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-07-03 11:07:34 -04:00
Ben Newman
59284a90b5 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-07-03 11:06:43 -04:00
Ben Newman
2add249b7c Update reify to version 0.20.11. 2019-07-03 10:59:14 -04:00
David Sichau
fd47bb3a23 Ignore oplog entries from other dbs instead of throwing an error. (#10604) 2019-07-03 10:38:44 -04:00
Ben Newman
86f0208f41 Update reify to version 0.20.10.
We don't need to build a whole new dev bundle just for this upgrade, since
we've already worked around the bug that it fixes, but it will get picked
up the next time we build the dev bundle for Meteor 1.8.2.
2019-07-02 16:06:34 -04:00
Ben Newman
e9060d01df Bump package versions for 1.8.2-beta.11 release. 2019-07-02 15:09:51 -04:00
Ben Newman
b3c1e83ef3 Update meteor-babel to version 7.4.18.
This allows us to take advantage of the features.compileForShell option
when compiling code in the `meteor shell` REPL.
2019-07-02 14:30:57 -04:00
Ben Newman
4384fdb917 Update meteor-babel and reify to latest versions.
This ensures we wrap modules with a function to rename the `module`
identifier to something more reliable when the ImportScanner compiles
unanticipated modules imported from node_modules.
2019-07-01 12:43:00 -04:00
Ben Newman
48276c3d36 Bump package versions for 1.8.2-beta.10 release. 2019-06-25 14:28:38 -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. 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. 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
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. 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. 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
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
67c6d2cdd3 Update meteor-babel and reify to latest versions, again. 2019-06-20 13:28:21 -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
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
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
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. 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
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
6d3386d77d Bump package versions for 1.8.2-beta.4 release. 2019-05-16 13:27:56 -04:00
Ben Newman
e94d5d3237 Bump package versions for 1.8.2-beta.3 release. 2019-05-05 19:39:22 -04:00
Ben Newman
43d72af0f0 Bump package versions for 1.8.2-beta.2 release. 2019-05-04 18:57:36 -04:00
Ben Newman
9a4fa16db9 Merge branch 'devel' into release-1.8.2 2019-05-03 14:29:48 -04:00
Ben Newman
3fbf0619d5 Bump package versions for 1.8.2-beta.1 release. 2019-05-02 19:23:29 -04:00
Ben Newman
f166f226d8 Support the "module" field of package.json for client code. (#10541)
Supporting "module" in package.json for server code is not advisable
because Node.js will be adopting the "type":"module" convention instead,
and in the meantime we need to maintain consistency with Node's module
resolution rules, which only currently pay attention to "main":
https://medium.com/@nodejs/announcing-a-new-experimental-modules-1be8d2d6c2ff
2019-05-02 18:30:13 -04:00
Ben Newman
f4b92a004e Bump package versions for 1.8.2-beta.0 release. 2019-04-26 19:49:03 -04:00
Luigi Pinca
efc8a3525d Fix variable scope (#10526)
Currenlty the `v` variable is only visible in the `if` block but it is
also used in the outer scope. Move the declaration to the outer scope.
2019-04-26 17:40:53 -04:00
Ben Newman
36c4ae0a73 Bump accounts-base package version to 1.4.4.
This should have been done when PR #10299 was first merged. Thankfully,
@macrozone discovered the problem while diagnosing issue #10530.

Should fix #10530.
2019-04-23 16:59:24 -04:00
Ben Newman
20273d72e9 Bump package versions for 1.8.2-alpha.1 release. 2019-04-14 14:27:07 -04:00
Ben Newman
588d037ca6 Bump package versions for 1.8.2-alpha.0 release. 2019-04-12 19:34:13 -04:00