Commit Graph

489 Commits

Author SHA1 Message Date
filipenevola
aae80530e0 Bump meteor-node-stubs package version to 1.0.1 2020-08-05 17:52:32 -04:00
Ben Newman
dab79ff4c6 Update modules test app to Meteor 1.10.1. 2020-03-31 12:06:58 -04:00
Ben Newman
f78afca824 Update linked copy of acorn source used by modules test app. 2020-03-31 12:06:58 -04:00
Ben Newman
a1b1846fc0 Update dynamic-import test app Meteor and npm versions. 2020-03-31 12:06:58 -04:00
Ben Newman
fc2bdd6ddf Attempt to fix @babel/runtime/helpers/esm/* import test.
CircleCI tests will fail for this commit, since these changes do not
address the problem that the module.useNode() stub imports the ESM code
using require. I will fix the tests properly in a later commit.
2020-02-19 13:13:32 -05:00
Ben Newman
b6320119d4 Update @babel/* dependencies of modules test app. 2020-02-19 11:07:29 -05:00
claudiosdc
924b5e8c3c Improve Node.js built-in modules detection to fix #10892 (#10896) 2020-02-07 17:45:20 -05:00
Ben Newman
33bcb04d68 Update modules test app to Meteor 1.9. 2020-01-08 22:35:53 -05:00
Ben Newman
6b646c6a8f Merge branch 'release-1.8.3' into release-1.9 2019-12-18 16:23:31 -05:00
Ben Newman
5758aaa30d Add jquery npm package to modules test app. 2019-12-18 14:53:16 -05:00
Seba Kerckhof
8b43e385e0 Add upgrader to add jquery dependency for blaze-users. (#10801) 2019-12-18 13:45:38 -05:00
Ben Newman
24e02b7411 Avoid bundling jquery twice (#10498)
Although the Meteor jquery package is no long a core package (and thus is
not tied to the Meteor release), it seems like a good idea to nudge folks
towards installing jquery from npm, instead of relying on the very old
version (1.12.1) residing in meteor/packages/non-core/jquery/jquery.js.

Closes #10289.
2019-12-18 13:45:36 -05:00
Ben Newman
c90246d55b Merge branch 'devel' into release-1.9 2019-11-26 15:46:38 -05:00
Ben Newman
cf8dbf1c37 Add static-html compiler plugin to custom-minifier test app. 2019-11-26 12:58:49 -05:00
Ben Newman
f6fcd620a7 Add a package.json to custom-minifiers test app.
Self-tests involving this test app were failing because of an undefined
jQuery reference on the client.
2019-11-26 12:49:23 -05:00
Ben Newman
0af5c64bd1 Update modules test app to Meteor 1.8.2. 2019-11-14 17:21:02 -05:00
Ben Newman
edbaeae98b Merge branch 'release-1.8.2' into release-1.9 2019-11-12 19:47:30 -05:00
Ben Newman
41868fa165 Attempt to make static-html self-tests less flaky.
Salvaged from PR #10771, which I had to revert because it caused EMFILE
(too many open files) errors on Windows.
2019-11-11 19:35:48 -05:00
Ben Newman
926cba9a77 Revert "Merge pull request #10771 from meteor/copy-directories-asynchronously"
This reverts commit 77a9784929, reversing
changes made to e0ddae2cc7.
2019-11-11 19:35:16 -05:00
Ben Newman
61b2d1710b Attempt to make static-html self-tests less flaky. 2019-11-11 18:41:43 -05:00
Ben Newman
f8de4127da Merge branch 'release-1.8.2' into release-1.9 2019-11-08 20:07:59 -05:00
Ben Newman
bd9043db20 Prefer "main" field of package.json over "module" in legacy bundle.
https://github.com/meteor/meteor/issues/10658#issuecomment-550456095
https://github.com/meteor/meteor/issues/10658#issuecomment-551870115

As usual, changes to module resolution logic need to happen in parallel in
tools/isobuild/resolver.ts and in packages/modules-runtime. However,
thanks to the modern/legacy system, it's easy to make the modules-runtime
package behave exactly the way(s) we want in the server, modern client,
and legacy client bundles.
2019-11-08 11:15:23 -05:00
Ben Newman
f290eef631 Simplify delayed watching of lazy modules. (#10763)
* Avoid modifying unibuild.watchSet in PackageSourceBatch._watchOutputFiles.

Should fix #10736 by preventing old hashes from remaining in
unibuild.watchSet, which was sometimes causing isUpToDate to fail
immediately upon restart.

* Regression test for issue #10736.
2019-11-08 11:08:56 -05:00
Ben Newman
791992375d Merge branch 'release-1.8.2' into release-1.9 2019-09-06 20:41:05 -04:00
Ben Newman
7155feaaa1 Test dependency-tree-based client refresh detection.
Part of #10686.
2019-09-06 17:21:57 -04:00
Ben Newman
b32e44a5d5 Merge branch 'release-1.8.2' into release-1.9 2019-07-30 14:24:09 -04:00
Ben Newman
4e894663f5 Add basic test of TypeScript support to modules test app. 2019-07-07 19:29:34 -04:00
Ben Newman
df4e54a80d Test that the ganalytics npm package is importable.
As reported by @arggh in this comment:
https://github.com/meteor/meteor/pull/10522#issuecomment-508908306
2019-07-06 12:38:04 -04:00
Ben Newman
53fd2a1f4a Merge branch 'release-1.8.2' into release-1.9 2019-07-04 17:27:51 -04:00
Ben Newman
101eea015f Update meteor-node-stubs npm dependency to v1.0.0. 2019-07-04 16:36:27 -04:00
Ben Newman
6979b55dfc Update @babel/runtime to latest version in remaining test apps. 2019-07-04 16:23:12 -04:00
Ben Newman
755d0d1722 Fix outdated import of optimism package in dynamic-import test. 2019-07-04 16:18:59 -04:00
Ben Newman
6d24ab5293 Update all dependencies of dynamic-import test app. 2019-07-04 16:18:45 -04:00
Ben Newman
146e6ba1d4 Update @babel/{runtime,...} dependencies of modules test app. 2019-07-04 16:04:33 -04:00
Ben Newman
a68dc6d977 Merge branch 'release-1.8.2' into release-1.9 2019-07-03 13:30:44 -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
2fa761bbfc Test that ESM modules can be imported from npm packages.
With appropriate meteor.nodeModules.recompile configuration, that is.
2019-07-02 11:50:51 -04:00
Ben Newman
108144c3d5 Update @babel/* dependencies of modules test app. 2019-07-02 11:41:39 -04:00
Ben Newman
2dae9be561 Regression test that the graphql package can be imported. 2019-06-25 14:25:23 -04:00
Ben Newman
2e309f5639 Merge branch 'release-1.8.2' into release-1.9 2019-06-24 15:48:15 -04:00
Ben Newman
88004d4649 Add a basic regression test of issue #10563. 2019-06-20 12:11:29 -04:00
Ben Newman
1d4a81c0ee Fix dynamic import(...) self-test.
The assert.deepEqual function is apparently much stricter in Node.js 12,
as it no longer ignores symbols or object prototypes.
2019-05-08 17:14:28 -04:00
Ben Newman
9b68eb7af2 Merge branch 'release-1.8.2' into release-1.9 2019-05-06 12:27:44 -04:00
Ben Newman
5d0a1200c7 Allow .npm/package/node_modules to be compiled in Meteor packages.
When I implemented support for the "module" entry point in package.json
files for client code in #10541, I modified PackageSource#_findSources to
include files found in node_modules that need to be compiled, but my
implementation considered only "local" node_modules directories, like the
one in the application root directory, while neglecting the private
.npm/package/node_modules directories that many Meteor packages have.

This commit includes .npm/**/node_modules when _findSources is scanning a
Meteor package, which should solve issues like #10544, where a Meteor
package imports an npm package that was installed with Npm.depends, and
that npm package has a "module" field in its package.json file, pointing
to an ESM entry point module, but the ESM syntax was not appropriately
compiled, leading to parse errors like "Unexpected token export".

Before lazy compilation was introduced in Meteor 1.7 (#9983), including
the node_modules directories of Meteor packages would likely have been a
big problem for build performance, since there would be that many more
modules to compile. It's still worth making sure this change doesn't
regress build performance for other reasons, but I'm reasonably confident
lazy compilation will save us here, unless there are just too many npm
packages installed via Npm.depends that export ESM modules.
2019-05-04 18:08:49 -04:00
Ben Newman
9a4fa16db9 Merge branch 'devel' into release-1.8.2 2019-05-03 14:29:48 -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
4b0e4f8b0d Add package.json to tools/tests/apps/app-prints-pid.
The SIGKILL self-test in tools/tests/run.js has been failing recently
because @babel/runtime can't be found when the app-prints-pid app starts
up, which prevents the app from polling the parent process correctly.
2019-05-02 15:24:57 -04:00
Ben Newman
9171b568a4 Remove long-deprecated idle-gc dependency from modules test app.
https://circleci.com/gh/meteor/meteor/32476
2019-04-12 18:43:12 -04:00
Ben Newman
5e24494e01 Update dynamic import test app to Meteor 1.8.1 and meteor-node-stubs@1.0.0. 2019-04-10 19:18:36 -04:00
Ben Newman
07815583f1 Update modules test app to Meteor 1.8.1 and meteor-node-stubs@1.0.0. 2019-04-10 19:18:36 -04:00