Commit Graph

22627 Commits

Author SHA1 Message Date
Ben Newman
d6b45509ef Merge pull request #10929 from BrianMulhall/xmlbuilder2-update
Xmlbuilder2 update
2020-02-25 18:49:48 -05:00
Ben Newman
41c20d683a Bump $BUNDLE_VERSION to 12.16.1.5 before rebuilding dev bundle.
Version 12.16.1.4 has already been used on the release-1.10 branch.
2020-02-25 15:54:16 -05:00
Brian Mulhall
709b736161 revert this unneeded change to the license file 2020-02-25 15:47:24 -05:00
Brian Mulhall
ec8f5dd74e adding the xmlbuilder library back in to the license file because we have both in the project now. xmlbuilder is used in the non-core xmlbuilder isopack and xmlbuilder2 is used in the dev bundle 2020-02-25 15:47:24 -05:00
Brian Mulhall
a228aa746a moving the xmlbuilder isopack to the non-core folder since it is no longer being used 2020-02-25 15:47:24 -05:00
Brian Mulhall
30fe5cfe13 add xmlbuilder2 to the list of node packages to install with the dependency kit 2020-02-25 15:45:26 -05:00
Brian Mulhall
c68757a52c remove the xmlbuilder isopack and all references to it in the code 2020-02-25 15:44:44 -05:00
Brian Mulhall
65799b23ae Update the builder.js file to use the xmlbuilder2 node package directly, and no longer by importing the isopackxmlbuilder 2020-02-25 15:44:43 -05:00
Brian Mulhall
6285604530 Updated the npm-shrinkwrap.json
these dependencies are needed after all
2020-02-25 15:44:43 -05:00
Brian Mulhall
69f359e592 bug fix - spelling errors in the test file 2020-02-25 15:44:43 -05:00
Brian Mulhall
6ed31add94 removed xmlbuilder's dependencies from the npm-shrinkwrap.json file 2020-02-25 15:44:43 -05:00
Brian Mulhall
e376f83b35 updated the tests to help identify which function (each used function has a separate test case now) has failed in the event that a library update causes the api's behavior to change version to version from what we have come to expect 2020-02-25 15:44:43 -05:00
Brian Mulhall
0d86f3dacd removed the old node packages from the npm-shrinkwrap file because they are not needed anymore 2020-02-25 15:44:43 -05:00
Brian Mulhall
6ab985f142 cleaned up the test case data to only include what is used 2020-02-25 15:44:43 -05:00
Brian Mulhall
2168910194 update the license file to reference the xmlbuilder2 library 2020-02-25 15:44:43 -05:00
Brian Mulhall
20bc926f05 update the builder.js to use the xmlbuilder2's api instead of the xmlbuilder api.
updates are made to account for the following api changes

1.) raw is no longer used by xmlbuilder2
2.) element has been shortened to ele
3.) the create function signature/definition has changed compared to xmlbuilder
2020-02-25 15:44:43 -05:00
Brian Mulhall
928fcdafd1 update the shrinkwrap file's with the new node packages that come with xmlbuilder2, and remove the xmlbuilder packages 2020-02-25 15:44:43 -05:00
Brian Mulhall
2ce2f68426 update the xmlbuilder isopack's package.js file 2020-02-25 15:44:43 -05:00
Brian Mulhall
e4b4b37d2a updated the npm dependency to xmlbuilder2 2020-02-25 15:44:43 -05:00
Brian Mulhall
feaab51e3d added in a test file and a test case to exercise all the functions from xmlbuilder2 the /meteor/tools/cordova/builder.js file uses 2020-02-25 15:44:43 -05: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
filipenevola
25ac4f0d3b Bump $BUNDLE_VERSION to 12.16.1.3 before rebuilding dev bundle. 2020-02-21 17:11:04 -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
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
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
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
filipenevola
fca6c62d43 Bump $BUNDLE_VERSION to 12.16.0.1 before rebuilding dev bundle. 2020-02-19 09:26:25 -05:00
Tsegaselassie Tadesse
d3dd0a1756 Update Roadmap to nominate lead for Vue.js 2020-02-19 09:26:22 -05:00
filipenevola
d7bb478a41 Merge branch 'master' into devel 2020-02-19 09:26:16 -05:00
Filipe Névola
17eb5ba846 Merge pull request #10922 from meteor/release-1.9.1
Release 1.9.1
2020-02-19 07:13:13 -04:00
filipenevola
2a8f8d3c80 Bump package versions for 1.9.1 release release/METEOR@1.9.1 2020-02-18 21:06:07 -04:00
filipenevola
1b1e9cd4af Bump package versions for 1.9.1-rc.1 release release/METEOR@1.9.1-rc.1 2020-02-18 14:40:27 -04:00
filipenevola
eb527fded2 Bump $BUNDLE_VERSION to 12.16.0.0 before rebuilding dev bundle. 2020-02-18 14:37:43 -04:00
filipenevola
29c243fb6d V8 updated to v7.8 in History 2020-02-18 14:10:10 -04:00
filipenevola
268d8ff7f6 Adjusts 1.9 release date in History 2020-02-18 14:10:10 -04:00
filipenevola
68a85d78e7 Bump package versions for 1.9.1-rc.0 release 2020-02-18 14:10:10 -04:00