Commit Graph

22356 Commits

Author SHA1 Message Date
Erik Demaine
78c6ac915c Switch to modern nodemailer 4, Node 4 version. Fix #8591 (#8605)
* Switch to modern nodemailer 4, Node 4 version. Fix #8591

* Most critically, use a pool instead of direct SMTP connection,
  to handle dropped connections and increase throughput,
  like mail module 1.1.  (#8591)
* New nodemailer's sendMail wants an options object, not a MailComposer
  object.  Luckily, a MailComposer object has a "mail" field that
  remembers the original options, so we can keep original behavior.
* However, we no longer support the mailComposer option set to a compiled
  MailComposer object (functionality that was briefly added in 1.2.0).
* nodemailer does SMTP URL parsing now automatically for us, simplifying code.
* Tests' outputs now end with additional "\r\n"
* Drop underscore package dependency (no longer needed)

* General formatting/style cleanup for `packages/email`.

* snake_cased => camelCased for some local variables.
* Added curly-brackets to `if`s.
* Removed trailing spaces.
* Removed commented-out code.
* Removed older doc text and changed some links.

* Get rid of back-and-forth assigning of `mailUrlString`.
2017-04-25 15:40:27 -07:00
Ben Newman
150ef7100e Bump ecmascript package version to 0.7.3.
Bumping this version is necessary after upgrading babel-compiler since
ecmascript registers a compiler plugin that uses babel-compiler.
2017-04-25 15:38:15 -07:00
Ben Newman
a00bcd026e Update npm-shrinkwrap.json for babel-compiler package. 2017-04-25 15:38:03 -07:00
Ben Newman
da9e3971f8 Upgrade meteor-babel and reify to fix #8595. (#8599)
* Upgrade meteor-babel to version 0.20.1 and reify to 0.7.4.
* Bump $BUNDLE_VERSION to 4.7.25 before rebuilding dev bundle.
2017-04-25 15:37:36 -07:00
Jesse Rosenberger
94f8c9d7ce Remove experimental trailing comma to avoid problems with jsdoc.
The comma in question: a trailing comma a rest-parameter, within a
function argument's parameter de-structuring:

	function a({
	  a = false,
	  ...b,
	}) {
	  // ...
	}

Espree, the parser used by `jsdoc` (used in Meteor docs) previously
allowed this with `experimentalObjectRestSpread` enabled but now throws
an error with the addition of 652990a7bf.

It might have been argued at one point that the trailing-comma could
allow for the easy, future addition of another parameter, ala:

	function a({
	  a = false,
	  ...b,
	  c = true,
	}) {
	  // ...
	}

Having the rest-parameter in the last position is certainly more clear
(it is the "rest", after-all, and there can be only one) but I'm not
going to have that discussion at the cost of docs not deploying!
2017-04-25 15:36:10 -07:00
Jesse Rosenberger
411dd81a45 Update versions of node-inspector and v8-profiler packages.
Notable changes in `node-inspector`:
  https://github.com/node-inspector/node-inspector/blob/master/ChangeLog.md#2017-04-24-version-111

Fixes meteor/meteor#8469.
2017-04-25 15:30:03 -07:00
Jesse Rosenberger
d9f559ccc5 Add History.md for Node.js and npm package updates. 2017-04-25 15:29:52 -07:00
Jesse Rosenberger
66f353ffb0 Update npm package to v4.5.0.
Notable changes:
  https://github.com/npm/npm/releases/tag/v4.5.0
2017-04-25 15:21:43 -07:00
Hugh Willson
1886bdb9d6 Upgraded to Node 4.8.2 and bumped the dev bundle version. 2017-04-25 15:21:31 -07:00
Jesse Rosenberger
f3a935fe1c Merge pull request #8634 from hwillson/issue-8630
Upgrade Node to 4.8.2 and related core npm packages.
2017-04-25 15:13:09 -07:00
Jesse Rosenberger
e82ad976d3 Update versions of node-inspector and v8-profiler packages.
Notable changes in `node-inspector`:
  https://github.com/node-inspector/node-inspector/blob/master/ChangeLog.md#2017-04-24-version-111

Fixes meteor/meteor#8469.
2017-04-25 12:20:19 -07:00
Jesse Rosenberger
45a44f35e0 Add History.md for Node.js and npm package updates. 2017-04-25 12:03:04 -07:00
Jesse Rosenberger
b6d815e9bb Update npm package to v4.5.0.
Notable changes:
  https://github.com/npm/npm/releases/tag/v4.5.0
2017-04-25 12:02:58 -07:00
Hugh Willson
30c042c8f1 Upgraded to Node 4.8.2 and bumped the dev bundle version. 2017-04-25 11:41:45 -04:00
Ben Newman
d9264e3b4b Better API for module.prefetch(id). 2017-04-25 10:26:24 -04:00
Ben Newman
5477aeac3f Support module.prefetch(id) to fetch but not evaluate dynamic modules.
Generally, module.prefetch(id) will not throw even if the fetched module
is missing. If you need to know whether module.prefetch(id) succeeded,
simply await the result of the promise, which will be null on success, or
an Error object if the module could not be imported.
2017-04-24 16:40:58 -04:00
Ben Newman
f4fc2a904d Use final hashes of dynamic modules for browser caching.
Previously, the linker included a "version" hash in each stub entry
corresponding to a dynamic module in the meteorInstall bundle. These stub
entries also contain information about any module identifiers ("deps")
imported by the module, and various other metadata.

This hash was derived from the source code of the dynamic module, instead
of its fully-processed generated code, which created a small risk that the
source hash would remain the same when anything changed in the post-linker
processing logic.

This new implementation uses the same hashes found in program.json
manifest files, which more reliably reflect changes in the actual final
contents of the modules.

Because these hashes are not known at link time, they are now injected as
one blob into the meteor/dynamic-import/dynamic-versions.js module, rather
than appearing in the meteorInstall bundles for their containing packages.
2017-04-21 16:15:09 -04:00
Ben Newman
de6deb5954 Use module.importSync instead of module.import in getNamespace. 2017-04-21 16:14:01 -04:00
Ben Newman
29a3f310ca Bump package versions for 1.5-beta.16 release. release/METEOR@1.5-beta.16 2017-04-20 17:36:02 -04:00
Ben Newman
b057415048 Merge branch 'devel' into release-1.5 2017-04-20 16:46:03 -04:00
Ben Newman
4122e6e7f2 Minor cleanup to make import chain test more robust. 2017-04-20 16:12:08 -04:00
Ben Newman
1c041237d9 Fix faulty content-length comparison in utils/http-helpers.js.
Since body is a string, body.length is not necessarily the number of bytes
in the response body.
2017-04-20 16:12:08 -04:00
Jesse Rosenberger
ce54e02269 Bump google-oauth package version in preparation for publishing. 2017-04-20 05:50:54 -07:00
Jesse Rosenberger
936df52b92 Exchange serverAuthCode for an accessToken in packages/google-oauth.
The `accessToken` isn't always immediately provided (for example on
Android devices) but instead needs to be retrieved by exchanging the
`serverAuthCode`.

Fixes https://github.com/meteor/meteor/issues/8613.
2017-04-20 05:29:40 -07:00
Ben Newman
6f75eae135 Remove automatic Buffer polyfill.
This polyfill is unnecessary in Node, and added a whopping 22KB to the
minified client bundle. If you really need the Buffer API on the client,
you can get it from require("buffer").Buffer.
2017-04-19 17:41:11 -04:00
Ben Newman
0042ae55f1 Split ecmascript-runtime into client and server packages.
This split gives us the ability to use different sets of polyfills for
server and client, which allows us to take better advantage of native
support in Node 4+.

We now rely on core-js as a peer dependency on the client (which is a win
because core-js is always installed along with babel-runtime), and as an
Npm.depends-style dependency on the server (which is necessary because
there's not always an an application to provide peer node_modules on the
server, e.g. in isopackets and compiler plugins).

Since we're using different sets of polyfills on the client and the
server, it didn't seem to make sense to rely on a single npm package, so
meteor-ecmascript-runtime has been removed.
2017-04-19 17:36:04 -04:00
Ben Newman
b491985b4a Make babel-runtime use ecmascript-runtime on server only. 2017-04-19 15:56:33 -04:00
Jesse Rosenberger
6a9f8b9044 Merge pull request #8571 from Akarshit/fix-passwordIndex
Move the index creation to a location which will cover applications which do not use `accounts-password` but still need the benefit of the index.
2017-04-19 08:28:18 -07:00
Wexpo Lyu
1c9eacaeb8 Accounts login functions (#2375) (#8452)
Provide AccountsClient#{call,apply}LoginFunction methods.
2017-04-19 11:17:53 -04:00
Jesse Rosenberger
23d19f08e0 Merge branch 'master' into devel 2017-04-17 13:50:30 -07:00
Jesse Rosenberger
b5ac9d2677 Merge pull request #8609 from meteor/abernix/packages/email-1.2.1
email@1.2.1
2017-04-17 13:44:22 -07:00
Erik Demaine
57b050a78a Switch to modern nodemailer 4, Node 4 version. Fix #8591 (#8605)
* Switch to modern nodemailer 4, Node 4 version. Fix #8591

* Most critically, use a pool instead of direct SMTP connection,
  to handle dropped connections and increase throughput,
  like mail module 1.1.  (#8591)
* New nodemailer's sendMail wants an options object, not a MailComposer
  object.  Luckily, a MailComposer object has a "mail" field that
  remembers the original options, so we can keep original behavior.
* However, we no longer support the mailComposer option set to a compiled
  MailComposer object (functionality that was briefly added in 1.2.0).
* nodemailer does SMTP URL parsing now automatically for us, simplifying code.
* Tests' outputs now end with additional "\r\n"
* Drop underscore package dependency (no longer needed)

* General formatting/style cleanup for `packages/email`.

* snake_cased => camelCased for some local variables.
* Added curly-brackets to `if`s.
* Removed trailing spaces.
* Removed commented-out code.
* Removed older doc text and changed some links.

* Get rid of back-and-forth assigning of `mailUrlString`.
2017-04-17 12:45:38 -07:00
Erik Demaine
6d45626566 Switch to modern nodemailer 4, Node 4 version. Fix #8591 (#8605)
* Switch to modern nodemailer 4, Node 4 version. Fix #8591

* Most critically, use a pool instead of direct SMTP connection,
  to handle dropped connections and increase throughput,
  like mail module 1.1.  (#8591)
* New nodemailer's sendMail wants an options object, not a MailComposer
  object.  Luckily, a MailComposer object has a "mail" field that
  remembers the original options, so we can keep original behavior.
* However, we no longer support the mailComposer option set to a compiled
  MailComposer object (functionality that was briefly added in 1.2.0).
* nodemailer does SMTP URL parsing now automatically for us, simplifying code.
* Tests' outputs now end with additional "\r\n"
* Drop underscore package dependency (no longer needed)

* General formatting/style cleanup for `packages/email`.

* snake_cased => camelCased for some local variables.
* Added curly-brackets to `if`s.
* Removed trailing spaces.
* Removed commented-out code.
* Removed older doc text and changed some links.

* Get rid of back-and-forth assigning of `mailUrlString`.
2017-04-17 12:41:44 -07:00
Ben Newman
7a9dd2b7a4 Use tokens from Google Sign-In instead of calling getTokens. (#8604)
* Use tokens from Google Sign-In instead of calling getTokens.

Follow-up to https://github.com/meteor/meteor/pull/8588.

* Bump google-oauth package version to 1.2.3.
2017-04-14 18:11:06 -04:00
Ben Newman
353bea75b7 Bump ecmascript package version to 0.7.3.
Bumping this version is necessary after upgrading babel-compiler since
ecmascript registers a compiler plugin that uses babel-compiler.
2017-04-14 02:38:27 -04:00
Ben Newman
d8fa46b5aa Update npm-shrinkwrap.json for babel-compiler package. 2017-04-14 02:37:35 -04:00
Ben Newman
895321e35f Upgrade meteor-babel and reify to fix #8595. (#8599)
* Upgrade meteor-babel to version 0.20.1 and reify to 0.7.4.
* Bump $BUNDLE_VERSION to 4.7.25 before rebuilding dev bundle.
2017-04-14 02:35:01 -04:00
Ben Newman
9bd5194fa4 Merge pull request #8529 from s7dhansh/patch-1
Add the name of the field to MiniMongo error messages.
2017-04-12 15:25:51 -04:00
Ben Newman
1887031733 Bump minimongo package version to 1.0.22. 2017-04-12 15:25:12 -04:00
Ben Newman
c41a65ce59 Bump google-oauth package version to 1.2.2. 2017-04-12 15:20:43 -04:00
Ben Newman
301c51380a Merge pull request #8588 from realyze/fix/google-oauth
Fixed Google OAuth user data fetching.
2017-04-12 15:19:09 -04:00
Ben Newman
c67540cf56 Remove underscore dependency from google-oauth package. 2017-04-12 14:36:11 -04:00
Jesse Rosenberger
27b2a04f6f Remove experimental trailing comma to avoid problems with jsdoc.
The comma in question: a trailing comma a rest-parameter, within a
function argument's parameter de-structuring:

	function a({
	  a = false,
	  ...b,
	}) {
	  // ...
	}

Espree, the parser used by `jsdoc` (used in Meteor docs) previously
allowed this with `experimentalObjectRestSpread` enabled but now throws
an error with the addition of 652990a7bf.

It might have been argued at one point that the trailing-comma could
allow for the easy, future addition of another parameter, ala:

	function a({
	  a = false,
	  ...b,
	  c = true,
	}) {
	  // ...
	}

Having the rest-parameter in the last position is certainly more clear
(it is the "rest", after-all, and there can be only one) but I'm not
going to have that discussion at the cost of docs not deploying!
2017-04-12 09:59:09 -07:00
Tomas Brambora
fde92c9d79 Fixed Google OAuth user data fetching. 2017-04-12 21:51:35 +10:00
Ben Newman
8a97dab2f9 Bump $BUNDLE_VERSION to 6.10.2 before rebuilding dev bundle. 2017-04-08 11:45:12 -04:00
Ben Newman
47dd35cde7 Ugrade Node to version 6.10.2. 2017-04-08 11:45:07 -04:00
Ben Newman
f87e5afa04 Merge branch 'release-1.5' into wip-upgrade-to-node-6 2017-04-08 11:43:28 -04:00
Ben Newman
1a120a6f4d Merge branch 'devel' into release-1.5 2017-04-08 11:36:56 -04:00
Ben Newman
caf7f3d7dd Merge branch 'master' into devel 2017-04-07 18:46:07 -04:00
Ben Newman
06e82b845c Merge pull request #8574 from meteor/release-1.4.4.1
Release 1.4.4.1
2017-04-07 18:43:40 -04:00