Commit Graph

20594 Commits

Author SHA1 Message Date
Ben Newman
c45e90d24f Bump package versions for 1.6.1-rc.2 release. release/METEOR@1.6.1-rc.2 2018-01-09 19:33:30 -05:00
Ben Newman
dd1d21daaf Bump $BUNDLE_VERSION to 8.9.16 before rebuilding dev bundle. 2018-01-09 12:54:03 -05:00
Ben Newman
991fb5ea86 Rename Boilerplate#toHTML to toHTMLStream and deprecate toHTML.
PR #9343 changed the return type of Boilerplate#toHTML from String to
Stream, which is likely to break existing code that expects a string.

In order to make the change in return type more obvious, I have renamed
the method to toHTMLStream, and I have attempted to update all call sites
appropriately. However, because this change comes in the release candidate
phase of Meteor 1.6.1 testing, it seemed important to preserve the
string-returning behavior of toHTML, with a deprecation notice.

Unless third-party code is using the Boilerplate class directly, I don't
think the toHTML method will ever be called, and we can remove it in
Meteor 1.6.2.

Thanks to @macrozone for tracking this problem down.

Fixes #9521.
2018-01-09 12:12:11 -05:00
Ben Newman
573f14f171 Allow EnvironmentVariable#withValue callbacks to return Promises.
As a happy side-effect, this also allows buildmessage.enterJob callbacks
to be async and/or return Promises.
2018-01-09 11:46:02 -05:00
Ben Newman
49ff5bcb33 Update meteor-babel and reify to latest versions.
Fixes #9504.
2018-01-09 10:59:51 -05:00
Ben Newman
cc70c62983 Reduce noisiness of WebSocket disconnection errors.
https://github.com/meteor/meteor/pull/9274#issuecomment-355241004

The `Error in connection establishment: net::ERR_CONNECTION_REFUSED`
message will still repeat every few seconds, but devtools should coalesce
it into a single line with an incrementing counter, as before.
2018-01-04 14:40:45 -05:00
Ben Newman
40f5abd9a6 Bulk-update History.md with notable changes in Meteor 1.6.1. 2018-01-03 16:21:16 -05:00
Ben Newman
5e38bd5758 Bump package versions for 1.6.1-rc.1 release. release/METEOR@1.6.1-rc.1 2018-01-03 14:48:21 -05:00
Ben Newman
6f9d07b977 Try loading SockJS dynamically after native WebSocket errors.
This is a back-port of a similar change on the web.browser.legacy branch:
b8601d3ce7

To save size in modern browsers, JavaScript bundles built for the
web.browser architecture no longer statically include the SockJS library.
That's safe as long as native WebSockets actually work, but what if
there's a problem with the network that necessitates falling back to
long-polling or some other SockJS strategy?

In those cases, we can load SockJS using a dynamic import(), which is a
little slower than including it in the bundle, but that's OK because the
module will be permanently cached in IndexedDB in production, and falling
back to SockJS should be rare in modern browsers anyway.

Note that this trick would not be possible if the implementation of
dynamic import() still required a socket connection! (#9384)
2018-01-03 14:43:49 -05:00
Ben Newman
56da9bed3f Bump $BUNDLE_VERSION to 8.9.15 before rebuilding dev bundle. 2018-01-03 13:57:27 -05:00
Ben Newman
cca8ee4fa4 Upgrade Node to version 8.9.4.
https://nodejs.org/en/blog/release/v8.9.4/
2018-01-03 13:38:57 -05:00
Ben Newman
d8989653e5 Bump package versions for 1.6.1-rc.0 release. release/METEOR@1.6.1-rc.0 2018-01-03 10:50:02 -05:00
Ben Newman
da02835f0a Merge branch 'devel' into release-1.6.1 2018-01-03 10:49:37 -05:00
Hugh Willson
da67406b89 Add missing ecmascript dependency to accounts-* packages (#9507)
All external service `accounts-*` packages (`accounts-facebook`,
`accounts-github`, etc.) are currently using ES2015 syntax, but
do not explicitly declare a dependency on the `ecmascript`
package. This means the ES2015 syntax being used is not
transpiled by Meteor, and can lead to issues like #9506.
Since `accounts-base` and `accounts-password` both already
have `ecmascript` as a dependency, this PR adds an `ecmascript`
dependency to all external service `accounts-*` packages.

Fixes #9506.
2018-01-03 10:33:45 -05:00
Ben Newman
1170b95b0f Bump $BUNDLE_VERSION to 8.9.14 before rebuilding dev bundle. 2017-12-30 14:16:42 -05:00
Ben Newman
b35ce7d168 Update meteor-babel to version 7.0.0-beta.36. 2017-12-30 14:02:58 -05:00
Ben Newman
3f8c90a29f Bump accounts-base patch version to 1.4.1 before republishing.
Fixes #9492 (good catch @skirunman!)
2017-12-21 12:56:08 -05:00
Hugh Willson
bdf8091687 Update meteor create --full to use meteortesting:mocha (#9489)
This commit updates the `meteor create --full` app skeleton to use `meteortesting:mocha`
(and npm based `chai`), instead of the deprecated `practicalmeteor:mocha` package.
2017-12-20 18:45:03 -05:00
Ben Newman
b19e8a6af0 Bump package versions for 1.6.1-beta.21 release. release/METEOR@1.6.1-beta.21 2017-12-20 18:32:31 -05:00
Ben Newman
bc28522e3f Bump $BUNDLE_VERSION to 8.9.13 before rebuilding dev bundle. 2017-12-20 15:21:09 -05:00
Ben Newman
bda490b637 Update various tool npm dependencies to latest versions. 2017-12-20 15:21:08 -05:00
Ben Newman
7b83066822 Return null from requireWithPrefixes when .babelrc plugin missing. 2017-12-20 15:21:08 -05:00
Ben Newman
29140f8c31 Copy rather than mutating .babelrc configuration objects.
Helps with #9469, since any extraneous "env" property will be removed from
the copied object.
2017-12-20 15:21:08 -05:00
Ben Newman
f1c3c0ad4e Try all {@babel/,babel-}{preset,plugin}- prefixes for .babelrc plugins. 2017-12-20 15:21:08 -05:00
Ben Newman
8fe0c41091 Update various @babel/runtime version constraints to -beta.35. 2017-12-20 15:21:08 -05:00
Adam Zionts
cc47278564 Updates information about Meteor CLI usage (#9462) 2017-12-20 14:48:08 -05:00
Ben Newman
8bf3484314 Update meteor-babel to version 7.0.0-beta.35-1.
f5b8d7f24c
2017-12-20 14:36:40 -05:00
Ben Newman
4268785ffe Bump package versions for 1.6.1-beta.20 release. release/METEOR@1.6.1-beta.20 2017-12-20 12:12:07 -05:00
Ben Newman
bd4ae26433 Merge branch 'devel' into release-1.6.1 2017-12-20 12:08:18 -05:00
Kevin Newman
23e3ac9677 Prefetch dynamic modules when appcache is active (#9482) 2017-12-20 12:06:23 -05:00
Hugh Willson
f6fcc5633e Unescape ampersands in oauth redirect URLs (#9484)
When using the `oauth` package "redirect" `loginStyle`, the
redirect URL is escaped before it is embedded in the HTML
page that is used to finalize the oauth process. This
escaped redirect URL is then assigned directly to
`window.location` to finalize the redirect. Browsers can
properly handle most of the escaped URL components, with
the exception of HTML entity based ampersands: `&`.
The `&`'s are left in the redirect URL after the
redirect has completed, leading to broken redirects in
some cases.

This commit makes sure `&`'s are converted back to
`&`'s before the redirect URL is assigned to
`window.location`.

Fixes #9279
2017-12-20 11:45:55 -05:00
Hugh Willson
85c8dc3ec5 Update minifier-js uglify-es dependency to latest version (#9483) 2017-12-20 11:37:23 -05:00
Ben Newman
349841e01a Bump $BUNDLE_VERSION to 8.9.12 before rebuilding dev bundle. 2017-12-20 10:46:37 -05:00
Ben Newman
bdb60404be Upgrade npm to version 5.6.0, and pacote to 7.0.2.
http://blog.npmjs.org/post/167963735925/v560-2017-11-27
2017-12-20 10:30:18 -05:00
skirunman
9380be5308 Fix cordova lib dependency (#9487)
`cordova-lib@7.1.0` should use `cordova-common@2.1.1`
2017-12-19 18:59:04 -05:00
Ben Newman
3f2a79eaba Bump package versions for 1.6.1-beta.19 release. release/METEOR@1.6.1-beta.19 2017-12-19 18:41:38 -05:00
Ben Newman
468e7cbcca Bump $BUNDLE_VERSION to 8.9.11 before rebuilding dev bundle. 2017-12-19 18:23:19 -05:00
Ben Newman
bf6d0dabc9 Merge branch 'devel' into release-1.6.1 2017-12-19 18:22:51 -05:00
Ben Newman
7583fc0bb6 Update meteor-babel and reify to latest versions. 2017-12-19 18:14:38 -05:00
Ben Newman
a7585da87c Bump MIN_NODE_VERSION to enforce Node >= 8 in production. (#9485)
Clearly we haven't remembered to bump this version for some time now,
which is too bad, because it could have provided a more helpful error for
developers using an older version of Node in their non-Galaxy deployment
environments: https://github.com/meteor/meteor/issues/9470
2017-12-19 13:10:54 -05:00
Hugh Willson
d644705aa8 Deprecate stylus (#9445)
* Deprecate the stylus package

Better / more up to date 3rd party stylus packages exist and
there isn't really any technical reason why Meteor core needs
to include its own stylus package. Since a stylus package
can be fully built and managed outside of core, this commit
moves the `stylus` package into `deprecated` (and preps the
package contents for deprecation if we decide to publish a
final version).

* Removed dupe

* Add test placeholder css file to console test runner

Some of Meteor's package tests require at least one `.css`
file to be available in the tested application bundle
(e.g. "appcache - sections validity" and "webapp -
content-type header"). The inclusion of this file makes
sure that at least one `.css` file can always be found,
when the tests are run.

* Bump test-in-console package version

* Bump package minor version

Putting the minor version at something unreachable to
make sure the deprecated version isn't accidientally
pulled into an app when running
`meteor update --all-packages` or `meteor update stylus`.

* Add PR link
2017-12-14 09:47:02 -05:00
Jesse Rosenberger
9b056f5e91 Merge pull request #9341 from meteor/glasser/progress-status-only
Improved console behavior within the Emacs shell, and also general
Console refactoring to modernize ECMAScript use and remove Underscore.
2017-12-13 20:14:13 +02:00
Jesse Rosenberger
6f1f20c054 Update History.md [skip ci]
To fix my typo from the previous commit.
2017-12-13 20:06:58 +02:00
Jesse Rosenberger
6507a9009e Update History.md 2017-12-13 19:30:02 +02:00
Hugh Willson
7c48bb5a73 Prevent Tool crash when settings file contains BOM (#9459)
* Prevent Tool crash when settings file contains BOM

The use of a byte order mark in a `--settings` file
crashes the Meteor Tool, when it attempts to JSON parse
the loaded settings data. Since a BOM is not required
(or recommended) when using UTF-8, this commit removes
it from the loaded settings data, before it is parsed.

Fixes #5180.

* Add PR link to History.md

* Update History.md
2017-12-13 12:05:42 -05:00
Andrew Mao
25a7439769 Update URL for information about file watchers (#9460)
The documentation itself could benefit from an update to describe the new polling/watcher priority system, but that's a task for another PR.
2017-12-13 11:50:50 -05:00
Hugh Willson
ce3885b6df Ignore undefined fields when inserting/updating in Mongo (#9444)
* Ignore undefined fields when inserting/updating in Mongo

The Mongo Node driver that Meteor uses currently replaces
`undefined` field values with `null`, when doing an
insert/update. This approach can lead to unexpected behaviour,
as outlined in #1646, #6051 and several other issues. This commit
configures the default Mongo connection to `ignoreUndefined`
fields, which means `undefined` fields are not inserted/updated,
instead of being inserted/updated as `null`.

Fixes #6051.

* Add PR link to History.md
2017-12-13 11:36:54 -05:00
Hugh Willson
ae1783bd4b Update Email.send docs to show how to add header objects (#9443)
* Update Email.send docs to show how to add header objects

Recent versions of `mailcomposer` (which Meteor is now using) no
longer `JSON.stringify` added header objects. This commit updates
the `Email.send` `options.headers` docs to show how to properly
associate objects with custom headers using `JSON.stringify`.

Fixes #8660.

* Adjust header object docs property naming to avoid confusion
2017-12-13 11:30:19 -05:00
Hugh Willson
56a86bf298 Help browser account saving with accounts-ui login/signup forms (#9442)
* Help browser account saving with accounts-ui login/signup forms

`accounts-ui-unstyled` currently uses `<div />`'s to hold its
login/signup forms, as well as `<div />`'s to represent the
login/signup buttons in the form. By not using proper
`<form />` and `<button />` elements, certain browser's do not
notice incoming login/signup requests, and therefore do not
trigger their built in "would you like to save your user/password"
functionality. This commit adjusts the `accounts-ui-unstyled`
login/signup form to use proper `<form />` and `<button />`
elements, allowing most (Chrome, Firefox, IE - Safari will
recognize the request when a user attempts to leave the page)
browsers to recognize incoming login/signup requests.

Fixes #1746.

* Add History.md entry outlining potential back compat issues

* Bump minor versions
2017-12-13 11:29:55 -05:00
Jesse Rosenberger
577088551a Merge pull request #9467 from meteor/abernix/fix-test-versioning-hot-code-push
Define Sandbox `clients` when running `versioning hot code push test`.
2017-12-13 17:38:31 +02:00