Commit Graph

17753 Commits

Author SHA1 Message Date
Ben Newman
168351c472 Bump package versions for 1.4.2-beta.12 release. release/METEOR@1.4.2-beta.12 2016-10-14 16:47:59 -04:00
Ben Newman
91058b53a7 Allow (junction) symlinking node_modules on Windows.
Hopefully fixes #7830 by ensuring that server node_modules are physically
present in the programs/server/npm directory.
2016-10-14 16:29:35 -04:00
Ben Newman
c572b12f26 Allow Builder#copyDirectory to make junction links on Windows. 2016-10-14 16:25:07 -04:00
Ben Newman
9039f98b30 Make findMongoPort return null if net.connect throws. 2016-10-14 16:24:27 -04:00
Ben Newman
53304c487b Set extraFeatures.jscript on the server too for better caching.
The jscript transform is perfectly safe for server code, and relatively
cheap compared to the cost of having to compile every file for both the
client and the server, just because the set of plugins is different.
2016-10-14 14:49:26 -04:00
Ben Newman
f42ca04fdb Bump package versions for 1.4.2-beta.11 release. release/METEOR@1.4.2-beta.11 2016-10-13 21:46:35 -04:00
Ben Newman
56c041c858 Filter out node_modules/babel-runtime/* when Meteor provides babel-runtime.
Should fix #7872 and others (e.g. #7833).
2016-10-13 19:24:34 -04:00
Ben Newman
5de9070c9c Implement ImportScanner#isWeb convenience method. 2016-10-13 19:24:33 -04:00
Ben Newman
7ea95063b0 Ignore non-top-level identifiers early in Resolver#_resolveNodeModule. 2016-10-13 19:24:33 -04:00
Jesse Rosenberger
ff0d822369 Move History entry about #7821 higher explain further
meteor/meteor#7821 is a breaking change for anyone running the `meteor` tool as `root` right now.  This moves it higher and explain that it's not just a warning.
2016-10-13 14:59:28 -04:00
Ben Newman
ec34a4ecc6 Fix tests by making sure to close optimistic file watchers.
If a test process does not explicitly call process.exit, pathwatcher
watchers may keep it alive indefinitely (either that, or there's a bug
with the persistent:false option to fs.watchFile).

This accidental immortality can be prevented by explicitly closing all
watchers when we no longer have any interest in file change notifications.
2016-10-13 14:09:16 -04:00
Ben Newman
fb2f863a37 Bump $BUNDLE_VERSION to 4.3.6 before rebuilding dev bundle. 2016-10-12 18:12:17 -04:00
Ben Newman
56de90e440 Switch back some optimistic functions in tools/fs/watch.js.
In particular, optimisticReaddir was getting called before relevant dirty
callbacks were firing, and thus failing to notice actual changes on the
file system.

In general, the tools/fs/watch.js code is the one place where we really
need an up-to-date view of the file system. Put another way, if optimistic
functions worked perfectly, we wouldn't need to rely so much on WatchSet
logic, but for now it's a balance of equally important strategies, and we
shouldn't be compromising one by intermingling it with the other.
2016-10-12 18:12:16 -04:00
Ben Newman
ca51aa327b Update the optimism npm package to version 0.3.3. 2016-10-12 13:22:26 -04:00
Ben Newman
4300d261f3 Support meteor <command> for any dev_bundle/bin/<command> executable.
This will make it easier to use tools like https://yarnpkg.com/ with the
right version of Node, etc.

With this commit, here's all you have to do:

  meteor npm install -g yarnpkg

Then test that it works:

  meteor yarn info

Note that any commands registered by Meteor itself will not be honored.
2016-10-12 13:22:26 -04:00
Ben Newman
ebecfeeb3e Prevent exceptional optimisticReadFile from invalidating Resolver caching. 2016-10-12 11:41:34 -04:00
Ben Newman
6bb4bd739b Update the meteor-babel npm package to version 0.13.0. 2016-10-11 22:35:10 -04:00
Ben Newman
3dd94b120a Merge branch 'devel' into release-1.4.2 2016-10-11 21:23:07 -04:00
Ben Newman
9a85f0cbb3 Add package version constraints to observe-sequence package.js. 2016-10-11 21:21:43 -04:00
Ben Newman
c7c42b843e Update the optimism npm package to version 0.3.1. 2016-10-11 19:48:29 -04:00
Ben Newman
fe143dd847 Merge pull request #7851 from rodrigopalhares/7850-observer-sequence_null_values
observe-sequence: Bug, array with null values. fixes #7850
2016-10-11 18:59:26 -04:00
Ben Newman
1d375ffb70 Hold off on using optimistic functions in watch.readAndWatchFileWithHash.
This partially reverts commit 96c95629eb.

When running `meteor update`, we call writeReleaseFileAndDevBundleLink
immediately before reading .meteor/release, so there's no time for a file
change notification to invalidate the cached contents of that file.

In the future, we could perhaps call optimisticReadFile.dirty(path) as a
consequence of files.writeFile(path, ...), but that may be tricky.
2016-10-11 11:25:36 -04:00
Ben Newman
c8c4686588 Bump $BUNDLE_VERSION to 4.3.5 before rebuilding dev bundle. 2016-10-11 10:06:35 -04:00
Ben Newman
b594b460a4 Go back to using pathwatcher.watch, with new rewatching logic.
Judging from the variety and extent of test failures, switching to
chokidar.watch was too drastic a change for this late-beta stage of the
release cycle.

The problem with pathwatcher.watch was that watches don't survive the
deletion of the watched file, because (like fs.watch) it watches files
based on inodes, not paths. This problem can be solved in a relatively
narrow way, by attempting to rewatch the file after any "delete" or
"rename" events.
2016-10-11 10:02:06 -04:00
Ben Newman
b814311266 Catch async chokidar.watch errors and suggest raising watch limit. 2016-10-10 17:39:17 -04:00
Ben Newman
0311e76673 Bring back fs.watchFile fallback when chokidar.watch fails.
Especially on Linux, chokidar.watch tends to throw ENOSPC errors when too
many files are being watched.

I removed this logic earlier because I thought chokidar could handle such
failures by itself, but that was wishful thinking.
2016-10-10 17:12:53 -04:00
Ben Newman
96c95629eb Use optimistic functions throughout tools/fs/watch.js. 2016-10-10 15:22:53 -04:00
Ben Newman
6a66368e09 Cache optimistic stat objects in InputFile#findControlFile. 2016-10-10 15:22:53 -04:00
Ben Newman
df7ab75da1 Bump $BUNDLE_VERSION to 4.3.4 before rebuilding dev bundle. 2016-10-10 15:09:05 -04:00
Ben Newman
117b1a8525 Use chokidar for file watching instead of pathwatcher.
Healthy competition among fs.watch wrappers appears to have produced a
clear winner: https://www.npmjs.com/package/chokidar

This wrapper is better for Meteor than pathwatcher was, because it can
watch directory trees recursively, and it has no trouble watching
nonexistent file paths, whereas pathwatcher would throw an exception.
2016-10-10 14:12:51 -04:00
Ben Newman
5969628990 Update the optimism npm package to version 0.3.0. 2016-10-10 11:53:10 -04:00
Ben Newman
1e5b414e48 Prepare for breaking API change affecting optimistic subscribe functions.
As of optimism@0.3.0, the value of `this` within subscribe functions is no
longer the optimistic wrapper function object (instead: null or global, as
if called with no receiver object), so we need to retain a reference to
the optimistic function so that the watcher can call .dirty(...args).
2016-10-10 11:47:19 -04:00
Ben Newman
78bcad5196 Merge branch 'devel' into release-1.4.2 2016-10-08 15:35:51 -04:00
Ben Newman
e86ef3cb47 Merge pull request #7898 from meteor/bump-mongo-versions-to-fix-travis-tests
Fix Travis CI tests by setting mongoOptions.server.reconnectTries = Infinity.
2016-10-08 15:30:42 -04:00
Ben Newman
0c324f3145 Bump mongo package version to 1.1.12_5. 2016-10-08 14:58:45 -04:00
Ben Newman
3ee0cd73e1 Set mongoOptions.server.reconnectTries = Infinity.
Setting mongoOptions.server.auto_reconnect was removed by #7880 via commit
0ffb9ac824, though it seems the Server
options still respect autoReconnect, even in version 2.2 of the driver:
http://mongodb.github.io/node-mongodb-native/2.2/api/Server.html

That said, having inspected the code of the `mongodb` package, I do not
believe this change is really critical, since the default value for
autoReconnect appears to be true.

More importantly, I can't find any support in the code of the `mongodb`
npm package or its dependencies for the claim that setting
mongoOptions.server.reconnectTries to 0 is the same as making it infinite,
so this commit sets it to Infinity.
2016-10-08 14:53:24 -04:00
Ben Newman
cc5bb86611 Use npm-mongo@2.2.10_1 in mongo@1.1.12_4. 2016-10-08 13:58:37 -04:00
Ben Newman
39046e4eb8 Make npm-mongo package version match npm mongodb package. 2016-10-08 13:58:37 -04:00
Ben Newman
70fb77dede Bump $BUNDLE_VERSION to 4.3.3 before rebuilding dev bundle. 2016-10-07 19:34:01 -04:00
Ben Newman
875222c8ec Update the optimism npm package to v0.2.3. 2016-10-07 19:32:18 -04:00
Ben Newman
817876f7b3 Use optimistic functions in PackageSource#initFromPackageDir. 2016-10-07 19:31:17 -04:00
Ben Newman
a1cfbc7ab2 Add profiling and use optimistic functions in LocalCatalog. 2016-10-07 19:31:07 -04:00
Ben Newman
2553958c38 Merge branch 'devel' into release-1.4.2 2016-10-07 19:30:30 -04:00
Ben Newman
dfd477568f Fix test failure by tolerating different line/column numbers. 2016-10-07 18:56:13 -04:00
Ben Newman
68347cdb76 Bump standard-minifier-css version to 1.3.1.
Because I previously published a 1.2.3 version with the same code as
1.3.0, I have also published a 1.2.4 with the same code as 1.3.1, though
of course you should use the latest version (1.3.1) if possible.
2016-10-07 18:48:57 -04:00
Ben Newman
281a73ddec Be sure to get original CSS contents from appropriate SourceMapConsumer.
https://github.com/meteor/meteor/pull/7877#issuecomment-252359894
2016-10-07 18:35:43 -04:00
Ben Newman
d8d70eaba6 Revert "Add version constraints to dependencies of the mongo package."
This (partially) reverts commit 904c77fe80.
2016-10-07 16:41:45 -04:00
Ben Newman
7e7885c2a5 Remove -beta.5 suffix from facts package version. 2016-10-07 16:41:45 -04:00
Ben Newman
904c77fe80 Add version constraints to dependencies of the mongo package. 2016-10-07 16:02:07 -04:00
Tom Coleman
0ffb9ac824 Reconnect to mongo indefinitely. (#7880)
* Reconnect to mongo indefinitely.

A fix for https://github.com/meteor/meteor/issues/7822

It seems the driver now always autoReconnects, but only for 30s.

To get the old (sensible) behavior of endlessly reconnecting, we set `reconnectTries` to 0.

* Releasing an rc of mongo package
2016-10-07 15:47:35 -04:00