Commit Graph

10008 Commits

Author SHA1 Message Date
Ben Newman
b42524ba52 Bump package versions for 1.8.1-beta.10 release. 2019-01-04 13:27:16 -05:00
Ben Newman
57a55ac0d6 Bump package versions for 1.8.1-beta.9 release. 2018-12-19 14:08:49 -05:00
Ben Newman
ff72595fd8 Move the less package into packages/non-core.
This will enable us to update the less npm package in future versions of
Meteor without worrying about minor version constraints imposed by the
Meteor release.
2018-12-13 11:13:55 -05:00
Ben Newman
502d84e7e9 Bump package versions for 1.8.1-beta.8 release. 2018-12-06 12:42:45 -05:00
Ben Newman
40d0fc5dfe Merge branch 'devel' into release-1.8.1 2018-12-06 12:21:52 -05:00
Ben Newman
ad2d715367 Bump meteor-promise version to 0.8.7.
Should help with #10359, as this version includes @VeselyT's commit
bbe4f0d20b
2018-12-06 12:17:19 -05:00
Ben Newman
237d026f6e Update meteor-babel to version 7.2.0. 2018-12-06 10:59:58 -05:00
Ben Newman
1a721df3e1 Bump package versions for 1.8.1-beta.7 release. 2018-11-28 12:02:07 -05:00
Ben Newman
29db9cbd44 Update to latest Mongo server and driver patch versions. 2018-11-28 11:33:53 -05:00
Ben Newman
2de35f4d29 Merge branch 'devel' into release-1.8.1 2018-11-28 11:16:44 -05:00
Ben Newman
47e0046c96 Revert "Remove Blaze dependencies from static-html (#10267)"
This reverts commit 4aad077a9f.

@hwillson Travis CI tests were failing after I merged this, and now
they're passing again (locally) with this commit reverted:
https://travis-ci.org/meteor/meteor/builds/458921622
2018-11-23 14:20:06 -05:00
Ben Newman
56c9062533 Bump webapp package version to 1.7.2. 2018-11-23 14:12:34 -05:00
Ben Newman
8f9401306d Bump dynamic-import package version to 0.5.1. 2018-11-23 14:10:49 -05:00
Hugh Willson
4aad077a9f Remove Blaze dependencies from static-html (#10267)
These changes create a new copy of the static-html and
caching-html-compiler packages in core, as well as a new package
called html-scanner, to house the html-scanner.js functionality
from the templating-tools package. With these changes in place,
we're able to remove all Blaze dependencies from static-html,
which benefits React based Meteor apps.

We don't need the extra `CompileError` class, and using it
was throwing off `caching-html-compiler` error handling.
Errors with messages and line numbers weren't being
interpreted / formatted properly.
2018-11-23 13:04:49 -06:00
Ben Newman
f4ebac54ae Merge pull request #10309 from nathan-muir/webapp-runtime-override-is-modern
Fix Meteor.isModern when inline scripts are disabled.
2018-11-23 12:22:03 -06:00
Kevin Newman
2a37f61066 Use setTimeout in prefetchInChunks to avoid blocking UI (#10354)
Addresses #10350.
2018-11-23 12:21:09 -06:00
idmadj
fc02c2592c Avoid object shorthand syntax in oauth package. (#10349)
Fixes #10347.
2018-11-23 12:19:50 -06:00
Ben Newman
2d06bf7d54 Bump package versions for 1.8.1-beta.6 release. 2018-11-23 13:14:56 -05:00
Ben Newman
ca2d44204f Bump package versions for the official 1.8.0.1 release. 2018-11-23 11:50:10 -05:00
Ben Newman
40ac2de412 Use object ...spread syntax rather than _.extend. 2018-11-21 11:34:01 -05:00
Ben Newman
2190fdbb18 Bump package versions for 1.8.1-beta.5 release. 2018-11-20 18:21:02 -05:00
Ben Newman
e8440a491d Bump package versions for 1.8.0.1-rc.4 release. 2018-11-20 17:14:23 -05:00
Ben Newman
887f2c6624 Merge branch 'devel' into release-1.8.1 2018-11-20 16:47:52 -05:00
Ben Newman
269a12efe9 Merge branch 'devel' into release-1.8.0.1 2018-11-20 16:34:06 -05:00
Ben Newman
d5cee78567 Update meteor-babel to version 7.1.6.
Change responsible for the source maps improvements:
389cf7dfed
2018-11-20 16:29:13 -05:00
Ben Newman
4ceb405f27 Bump package versions for 1.8.0.1-rc.3 release. 2018-11-19 12:45:51 -05:00
Ben Newman
c0a35f0457 Bump package versions for 1.8.0.1-rc.2 release. 2018-11-17 15:27:35 -05:00
Ben Newman
c67d40f7f1 Merge branch 'devel' into release-1.8.1 2018-11-15 15:56:54 -05:00
Ben Newman
4c22e5ec97 Bump package versions for 1.8.0.1-rc.1 release. 2018-11-15 13:51:00 -05:00
Ben Newman
0296f15880 Bump webapp and modern-browsers package versions for #10334. 2018-11-15 13:50:50 -05:00
Ben Newman
f3f584d96b Make modern/legacy browser name check case-insensitive.
https://github.com/meteor/meteor/pull/10334#commitcomment-31302219

cc @abernix @hwillson
2018-11-15 13:50:49 -05:00
Jesse Rosenberger
128c9311ea For modern bundles, treat Chromium and "Headless Chrome" the same as Chrome.
Best I can tell, the major version portion of Chromium versions has always
tracked all the way through to Chrome Canary, Dev and Stable releases.
Since we observe the major version of Chrome in terms of identifying it as a
"modern browser", it seems to make sense to treat "Headless Chrome" and
Chromium in the same regard.

Interestingly, when the same Chrome as we all use on our machines is run
with the `--headless` flag, it switches its `navigator.userAgent` to
`HeadlessChrome/`, rather than `Chrome/`.

This was initially problematic since the `useragent` npm we use for parsing
user agents didn't understand this designation, however, with the update of
`webapp`'s `useragent` npm in 058351b7, `headlesschrome` will now have its
version available from `WebAppInternals.identifyBrowser`, so we can
accurately identify it and serve it the modern bundle.
2018-11-15 13:50:49 -05:00
Jesse Rosenberger
5e98790291 Update webapp's useragent npm to v2.3.0 to support HeadlessChrome.
Previously, while the `useragent` package was able to parse the User-Agent
for so-called "Headless Chrome" and generate a family of "HeadlessChrome",
it was unable to parse out the individual portions of the version number
(e.g. major, minor, patch).

For example, the following User-Agent (herein referred to as `userAgentAbove`):

```
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/69.0.3497.100 Safari/537.36
```

Previously resulted in:

```
> require('useragent').lookup(userAgentAbove);

{
  family: 'HeadlessChrome',
  major: '0',
  minor: '0',
  patch: '0',
  /* ... */
}
```

With the newer version of `useragent`, these are now properly extracted and
set which will enable Meteor to treat Headless Chrome the same as Chrome in
a follow-up commit.  Now:

```
> require('useragent').lookup(userAgentAbove);

{
  family: 'HeadlessChrome',
  major: '69',
  minor: '0',
  patch: '3497'
  /* ... */
}
```
2018-11-15 13:50:48 -05:00
Ben Newman
65e44f6da6 Bump webapp and modern-browsers package versions for #10334. 2018-11-15 11:44:25 -05:00
Ben Newman
dc2f2487ac Make modern/legacy browser name check case-insensitive.
https://github.com/meteor/meteor/pull/10334#commitcomment-31302219

cc @abernix @hwillson
2018-11-15 11:44:24 -05:00
Jesse Rosenberger
b65f8b0610 For modern bundles, treat Chromium and "Headless Chrome" the same as Chrome.
Best I can tell, the major version portion of Chromium versions has always
tracked all the way through to Chrome Canary, Dev and Stable releases.
Since we observe the major version of Chrome in terms of identifying it as a
"modern browser", it seems to make sense to treat "Headless Chrome" and
Chromium in the same regard.

Interestingly, when the same Chrome as we all use on our machines is run
with the `--headless` flag, it switches its `navigator.userAgent` to
`HeadlessChrome/`, rather than `Chrome/`.

This was initially problematic since the `useragent` npm we use for parsing
user agents didn't understand this designation, however, with the update of
`webapp`'s `useragent` npm in 058351b7, `headlesschrome` will now have its
version available from `WebAppInternals.identifyBrowser`, so we can
accurately identify it and serve it the modern bundle.
2018-11-15 11:44:24 -05:00
Jesse Rosenberger
ea28a34a2c Update webapp's useragent npm to v2.3.0 to support HeadlessChrome.
Previously, while the `useragent` package was able to parse the User-Agent
for so-called "Headless Chrome" and generate a family of "HeadlessChrome",
it was unable to parse out the individual portions of the version number
(e.g. major, minor, patch).

For example, the following User-Agent (herein referred to as `userAgentAbove`):

```
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/69.0.3497.100 Safari/537.36
```

Previously resulted in:

```
> require('useragent').lookup(userAgentAbove);

{
  family: 'HeadlessChrome',
  major: '0',
  minor: '0',
  patch: '0',
  /* ... */
}
```

With the newer version of `useragent`, these are now properly extracted and
set which will enable Meteor to treat Headless Chrome the same as Chrome in
a follow-up commit.  Now:

```
> require('useragent').lookup(userAgentAbove);

{
  family: 'HeadlessChrome',
  major: '69',
  minor: '0',
  patch: '3497'
  /* ... */
}
```
2018-11-15 11:44:24 -05:00
Ben Newman
c06a31a322 Bump package versions for 1.8.0.1-rc.0 release. 2018-11-14 12:08:13 -05:00
Ben Newman
c8628e5109 Bump package versions for 1.8.1-beta.4 release. 2018-11-12 21:07:05 -05:00
Ben Newman
d19ac6a5dd Merge branch 'devel' into release-1.8.1 2018-11-12 20:52:26 -05:00
Ben Newman
f7bd8e9f37 Merge pull request #10330 from meteor/fix-findImportedModuleIdentifiers-hash-collision
Ensure file.hash is always computed from sha1(file.data).
2018-11-12 20:48:49 -05:00
Ben Newman
152879c093 Bump diff-sequence package version to fix #10320. (#10331)
After @nathan-muir's PR #10053, we did not publish a new version of the
diff-sequence package, which would have contained DiffSequence.diffMaps.

I honestly have no idea why #10320 did not manifest before now, but
publishing these changes seems to fix it.
2018-11-12 20:44:49 -05:00
Ben Newman
253213c24f Bump ecmascript package version after bumping babel-compiler version. 2018-11-12 19:35:50 -05:00
Ben Newman
4294414506 Update meteor-babel to version 7.1.5. 2018-11-12 19:35:47 -05:00
Ben Newman
44e713f046 Ensure file.hash is always computed from sha1(file.data).
With the introduction of lazy compilation in Meteor 1.8, calling

  inputFile.addJavaScript({
    ...
    hash: inputFile.getSourceHash(),
    ...
  }, function () {
    return compiler.processFilesForTarget(inputFile);
  });

becomes problematic, since inputFile.getSourceHash() is usually different
from compiler.processFilesForTarget(inputFile).hash, because the latter is
computed from the compiled code, whereas the former is computed from the
source code.

For example, when we use file.hash to cache imported module identifiers in
ImportScanner#_findImportedModuleIdentifiers, we really need to be using
the hash of the compiled code, since a single source module can be
compiled in different ways. If we cache based on the source hash, there's
a risk of reusing the scanned imports from the web.browser version for the
web.browser.legacy version, which can lead to all sorts of problems that
are only apparent in legacy browsers.

The quick fix is easy enough: BabelCompiler can simply stop including a
hash in the eager options to inputFile.addJavaScript. This fix can be
published as a minor update to the babel-compiler and ecmascript packages.

The remaining changes in this commit add another layer of defense against
this problem, by ignoring any hash options provided by compiler plugins,
in favor of simply computing the hash from the compiled data buffer.
These additional changes will become available in the next release of
Meteor (likely 1.8.1).
2018-11-12 18:57:06 -05:00
Ben Newman
903bdea790 Bump package versions for 1.8.1-beta.3 release. 2018-11-03 16:38:45 -04:00
Ben Newman
f94b29b5c7 Merge branch 'devel' into release-1.8.1 2018-11-03 16:21:58 -04:00
Ben Newman
13388b4955 Bump session package version. 2018-11-03 16:21:32 -04:00
Ben Newman
6a18c7a2bf Bump caching-compiler package version. 2018-11-03 16:21:16 -04:00
Seba Kerckhof
05ae386b79 Sanitize compiler name for environment variables (#10270)
While strictly speaking more characters are allowed, they are not usable in a shell except for uppercase / digits / underscore.
( https://stackoverflow.com/a/2821183 )
2018-11-03 16:14:47 -04:00