Commit Graph

1541 Commits

Author SHA1 Message Date
Ben Newman
1a120a6f4d Merge branch 'devel' into release-1.5 2017-04-08 11:36:56 -04:00
Ben Newman
384023ecbd Bump package versions for the official 1.4.4.1 release. 2017-04-07 17:58:50 -04:00
Ben Newman
ce29815ae7 Bump package versions for 1.4.4.1-rc.0 release. 2017-04-07 16:27:22 -04:00
Ben Newman
fb2290960c Bump package versions for 1.5-beta.14 release. 2017-04-07 13:28:39 -04:00
Ben Newman
43d339d087 Merge branch 'devel' into release-1.5 2017-04-07 12:45:29 -04:00
Jesse Rosenberger
948ec2b05f Merge branch 'master' into devel 2017-04-07 18:50:17 +03:00
Jesse Rosenberger
68afef2050 Bump package versions for the official 1.4.4 release. 2017-04-07 13:55:36 +03:00
Jesse Rosenberger
13c55e734c Bump package versions for 1.4.4-rc.9 release. 2017-04-06 22:51:33 +03:00
Jesse Rosenberger
9e0f61c4b3 Revert "Use fs.move() from fs-extra to fix EXDEV cross device error in docker builds. (#8491)"
Unfortunately, `fs-extra` is still not as perfect at handling various
file system conditions as would be ideal.  It seemed sensical to try and
use a library like this however, it turns out that the Meteor suite
of file system functions stands up best on Windows, which is where I
encountered most problems.

For example, `fs-extra` still tries to create symlinks as an unprivileged
user – a forbidden task on Windows unless running as Administrator.

In addition, I ran into a constant stream of other errors: `ENOTEMPTY`,
`EBUSY`, `EEXIST` – all for various reasons.

My current recommendation is that we remove `fs-extra` and replace the
`Builder#complete` `renameDirAlmostAtomically` call (which does not
absolutely _have_ to be done atomically) with a `try`/`catch` which
resorts to a basic copy if `err.code === 'EXDEV'`.  All other
functionality stays the same.

This reverts commits:

* d49f3e2704
* 3257bafc84
* 74cb8ebdc2
* 5bbdcc9baa
* 6a0767bbac
2017-04-06 06:50:03 +03:00
Jesse Rosenberger
f62b25e3f0 Bump package versions for 1.4.4-rc.8 release. 2017-04-05 20:09:52 +03:00
Jesse Rosenberger
eb827b2515 Bump package versions for 1.4.4-rc.7 release. 2017-04-05 14:43:43 +03:00
Jesse Rosenberger
74cb8ebdc2 Improve fs-extras move calls for Windows platform. (#8560)
* Improve `fs-extra.move` calls for Windows platform.

This is a follow-up to meteor/meteor#8491 which worked properly on Unix
platforms, but failed in a variety of ways on Windows due to its lack
of Fiber-awareness and desire to create symlinks as unprivileged users
(something not always possible on Windows).

The Fiber issue was observed when trying to remove "src" directories
within the `move` function (which tries a variety of OS/OS/arch-specific
techniques to accomplish its goal) after they had been copied to "dest".
On Windows, this resulted in `EDIRNOTEMPTY` errors since Windows appears
to temporarily cache the file-handle or doesn't release the file-handle
until the next tick.

The symlink issue will hopefully improve in an upcoming release of
Windows (Creator Edition) when Microsoft makes it possible to create
symlinks as an unprivileged user, however it will still require enabling
"Developer" mode in Windows settings.  This implements the same catch
which was already in place for `fs.rename` on the `fs.move` provided by
`fs-extra`.

Performance gains were the same in tests comparing before and after
these changes.

Relates to:
https://github.com/meteor/meteor/issues/8558#issuecomment-291194385

* A few code-cleanups to my original commit.
2017-04-05 12:58:32 +03:00
Jesse Rosenberger
cba8c63340 Update node-gyp and node-pre-gyp packages.
* `node-gyp` - Adds support for Visual Studio 2017.
  - https://github.com/nodejs/node-gyp/blob/master/CHANGELOG.md#v360-2017-03-16
* `node-pre-gyp` - Nothing notable.
  - https://github.com/mapbox/node-pre-gyp/blob/master/CHANGELOG.md#0634
2017-04-04 19:42:03 +03:00
Jesse Rosenberger
7915afbbc1 Update npm package to v4.4.4.
Notable changes:
  https://github.com/npm/npm/releases/tag/v4.4.4
2017-04-04 19:42:03 +03:00
Jesse Rosenberger
a376c909cf Update Node.js to v4.8.1.
Notable changes:
  https://nodejs.org/en/blog/release/v4.8.1/
2017-04-04 19:35:50 +03:00
Ben Newman
f3c2eaf5bf Bump package versions for 1.4.4-rc.6 release. 2017-04-03 20:24:06 -04:00
Jesse Rosenberger
ef265077a9 Merge branch 'abernix/fix-windows-dev-bundle-extract-error' into release-1.4.3.x 2017-03-30 20:16:24 +03:00
Jesse Rosenberger
ab111e7800 Detect dev_bundle download errors and fail appropriately on Windows.
This is in an attempt to resolve a situation which could occur when the
extraction of the dev_bundle.tar fails with an EOF error, but the tool
continues as if the file was fine.  Ultimately the, error preference
set in the PS1 script is only observed in the case of PowerShell
ErrorLevel and not just an error condition encountered in a command.
2017-03-30 16:12:19 +03:00
Jesse Rosenberger
2fd61b83a7 Bump package versions for 1.4.4-rc.5 release. 2017-03-30 15:47:07 +03:00
Jesse Rosenberger
276f828359 Bump package versions for 1.4.4-rc.4 release. 2017-03-30 02:16:40 +03:00
Jesse Rosenberger
be79aa8708 Bump version for 1.4.4-rc.3 release. 2017-03-28 17:06:29 +03:00
Jeremy Shimko
d49f3e2704 Use fs.move() from fs-extra to fix EXDEV cross device error in docker builds. (#8491)
Use fs.move to fix EXDEV cross device error in docker builds.

Fixes #7852.
2017-03-28 15:53:22 +03:00
Ben Newman
a780686098 Bump package versions for 1.4.4-rc.2 release.
We (@abernix and I) have decided to abandon 1.4.3.3 in favor of 1.4.4,
because the changes we wanted to include are slightly more significant
than seems appropriate for a "patch" update.
2017-03-27 18:26:49 -04:00
Ben Newman
b490d270f1 Bump package versions for 1.5-beta.13 release. 2017-03-27 16:22:40 -04:00
Ben Newman
5cf603ce82 Merge branch 'release-1.4.3.x' into release-1.5 2017-03-27 15:37:11 -04:00
Ben Newman
0eb52a1fd8 Upgrade meteor-babel to v0.19.1 and reify to v0.6.6. 2017-03-25 11:12:52 -04:00
Ben Newman
91ac26b4d7 Bump package versions for 1.4.3.3-rc.1 release. 2017-03-22 16:02:53 -04:00
Jeremy Shimko
20baddf7b7 Use fs.move() from fs-extra to fix EXDEV cross device error in docker builds. (#8491)
Use fs.move to fix EXDEV cross device error in docker builds.

Fixes #7852.
2017-03-22 12:54:07 -04:00
Ben Newman
a6061bf4c7 Bump package versions for 1.4.3.3-rc.0 release. 2017-03-21 15:55:23 -04:00
Ben Newman
9a057f4e51 Upgrade meteor-babel to v0.18.2 and reify to v0.5.7. 2017-03-21 15:23:03 -04:00
Jesse Rosenberger
da763c74fa Change Windows "Generate Dev Bundle" script to use common globals.
This change allows the Windows "Generate Dev Bundle" script to
automatically get the versions of major bundled versions from the same
script which the Unix script uses, thus preventing different versions of
Node.js, npm, Mongo, etc. from being built into different versions of
Meteor, such as what happened when I published Meteor 1.4.3.2 and failed
to notice the duplication of variables across different scripts.

This behavior now works in a similar way as the 'BUNDLE_VERSION' variable, which
is retrieved from the global `meteor` script except this change uses the
package versions from the `build-dev-bundle-common.sh` script in the
`scripts` directory.
2017-03-21 12:21:14 -04:00
Jesse Rosenberger
358af021a4 Bump versions of Node.js, npm and MongoDB for the Windows dev_bundle.
In a similar fashion as:

* f51c6822ae (Node.js)
* 8ea41588ea (npm)
* 3470516f93 (MongoDB)

I overlooked the multiplicity of these version variables when updating the major package versions during the release of Meteor 1.4.3.2.

While I intend on never making this mistake again, I've also opened meteor/meteor#8505 which consolidates these variables to a single location (in `build-dev-bundle-common.sh`) to hopefully prevent this from happening to anyone else!
2017-03-21 13:14:57 +02:00
Ben Newman
e972fa3eb1 Bump meteor-babel to v0.18.1 to fix strict minification errors. 2017-03-17 21:26:15 -04:00
Ben Newman
6842ec9c8a Bump meteor-babel to v0.18.1 to fix strict minification errors. 2017-03-17 21:12:29 -04:00
Ben Newman
7d770c1dda Bump package versions for 1.5-beta.12 release. 2017-03-17 19:58:30 -04:00
Ben Newman
953e9a4e2d Merge branch 'release-1.4.3.x' into release-1.5 2017-03-17 19:13:27 -04:00
Ben Newman
5ab626cead Bump package versions for 1.4.3.3-beta.4 release. 2017-03-17 18:42:07 -04:00
Ben Newman
b8513774cb Bump package versions for 1.4.3.3-beta.3 release. 2017-03-16 18:57:40 -04:00
Ben Newman
046b3f0e92 Bump package versions for 1.4.3.3-beta.2 release. 2017-03-16 17:40:44 -04:00
Ben Newman
7df133e330 Bump package versions for 1.4.3.3-beta.1 release. 2017-03-16 13:08:19 -04:00
Ben Newman
e3de42e989 Bump package versions for 1.4.3.3-beta.0 release. 2017-03-16 12:26:05 -04:00
Ben Newman
06574b78a7 Update meteor-babel to version 0.18.0.
The most important change in this version is that the Reify compiler can
now compile these useful `export ... from ...` extensions:

  https://github.com/leebyron/ecmascript-export-ns-from
  https://github.com/leebyron/ecmascript-export-default-from

Fixes #8432 (`transform-export-extensions` no longer needed).
2017-03-16 11:28:43 -04:00
Ben Newman
9d4d7488a7 Update meteor-babel to version 0.17.2.
The most important change in this version is that the Reify compiler is
now just another Babel plugin, so it's possible for other Babel presets
and plugins to run before it.

Fixes #8399.
Fixes #8422.
Fixes https://github.com/meteor/babel/issues/13.
2017-03-14 18:07:03 -04:00
Ben Newman
251c6c9b8b Bump package versions for 1.5-beta.11 release. 2017-03-14 16:13:25 -04:00
Ben Newman
e79a4e9272 Merge branch 'devel' into release-1.5 2017-03-14 15:36:06 -04:00
Jesse Rosenberger
5f2039f1ff Bump package versions for the official 1.4.3.2 release. 2017-03-14 10:53:26 +02:00
Jesse Rosenberger
ae458cce08 Bump package versions for 1.4.3.2-rc.0 release. 2017-03-13 15:00:52 +02:00
Jesse Rosenberger
9030faa57e Bump package versions for 1.4.3.2-beta.0 release. 2017-03-09 16:41:57 +02:00
Ben Newman
b1aa458e38 Bump package versions for 1.5-beta.10 release. 2017-03-08 17:56:59 -05:00
Ben Newman
6def3891e1 Bump package versions for 1.5-beta.9 release. 2017-03-04 20:09:27 -05:00