Commit Graph

13178 Commits

Author SHA1 Message Date
Sashko Stubailo
f29c954458 Bump a bunch of version numbers for new preview release/WINDOWS-PREVIEW@0.1.7 2015-02-09 13:23:24 -08:00
Sashko Stubailo
1cc23f8547 Bump release 2015-02-09 13:14:57 -08:00
Sashko Stubailo
c99f9584c1 Bump dev bundle version 2015-02-09 12:10:44 -08:00
Sashko Stubailo
466559a8c4 Switch to using a fork of fibers on Windows 2015-02-09 12:10:44 -08:00
Slava Kim
a3a2ad5edd Merge branch 'windows-r' into devel
Conflicts:
	tools/profile-require.js
2015-02-09 11:44:05 -08:00
David Glasser
8c48196f4d Remove unnecessary requires from mini-files.js
and add a comment making it clear that we are NOT using this file for
the concurrency-related changes, just for cross-platform normalization.
2015-02-09 11:40:44 -08:00
Sashko Stubailo
18692b672d Special cases for files.getHomeDir on win32
Fixes https://github.com/meteor/windows-preview/issues/38
2015-02-09 11:33:32 -08:00
Slava Kim
e70193442f Add the new Windows Installer
Developed by Sorin Chitu, from the Elance contract
2015-02-09 11:25:57 -08:00
Ben Newman
4ad860ca47 Move tools/shell/server.js to tools/server/shell-server.js.
Since this file ends up getting copied into the server bundle, along with
files like boot.js, it makes sense to keep it with those files.

Renamed tools/shell/client.js to tools/shell-client.js for symmetry.
2015-02-09 11:42:49 -05:00
Mitar
40575dde25 Missing dependency. 2015-02-08 19:02:12 -08:00
Dan Dascalescu
63d069e138 Syntax highlight for the reactive-dict README example 2015-02-08 19:00:42 -08:00
Slava Kim
d07ff8e99c Convert the Windows-styled path from Assets.get* calls 2015-02-07 08:54:44 -08:00
David Glasser
8e8ee3eca4 Unregister ObserveMultiplexer before stop
It's maybe possible that stop() yields, and in general is more complex.
Since the ObserveMultiplexer is already at the point where it will not
be able to start running again, we should remove it from the registry
first.
2015-02-07 00:02:42 -08:00
David Glasser
9166de39fe Release write fences on PollingObserveDriver.stop
OplogObserveDriver.stop() already does this.
2015-02-07 00:01:20 -08:00
David Glasser
25d9ab8250 Improve error message in PollingObserveDriver
Now when we get an error from Mongo, the cursor description is included.

Other than by the test-only _resumePolling, _pollMongo is only called at
the top level of an async-queued task, so the previously thrown error
never did anything other than print the exception (from within
_SynchronousQueue) anyway.

Fixes #1633.

(See also #2534.)
2015-02-06 19:21:30 -08:00
David Glasser
44d200d259 We now stand a chance of supporting MongoDB 3.0. 2015-02-06 18:50:43 -08:00
David Glasser
eaf11fa55e Update Node Mongo driver from 1.4.1 to 1.4.30
and BSON from 0.2.7 to 0.2.18

This is past the minimum version required to use the upcoming MongoDB
3.0.

Fixes #3654.
2015-02-06 18:05:16 -08:00
Sashko Stubailo
ce93b8f108 Improve findMongoPids and style in run-mongo.js 2015-02-06 17:14:22 -08:00
Avital Oliver
02038e70a6 Correctly detect which package versions are installed
This was a small mistake left over from a previous commit
to change the return value of _alreadyInstalled
2015-02-06 16:50:11 -08:00
Avital Oliver
ff32eb5722 In selftest in Windows, kill child processes more
In a previous commit we did that in one but not all cases in selftest
where we try to kill child processes.
2015-02-06 15:33:24 -08:00
David Glasser
b276aa79ca Give a more specific error message on disk full
Fixes #2378.

Note that this error is detected by reading stdout, and we don't
actually want to buffer all of stdout in memory (it grows pretty fast).
2015-02-06 14:57:40 -08:00
Sashko Stubailo
6aa9142e67 Fix some test bugs related to package names/dirs 2015-02-06 14:49:23 -08:00
Avital Oliver
2f24eb418d Fix incorrect logic, while improving an error message 2015-02-06 14:28:51 -08:00
Sashko Stubailo
e6a26bded0 Wrong method call in self test. (add flow plz) 2015-02-06 13:56:01 -08:00
Sashko Stubailo
497340498f Fix missing createPackage arguments in selftest 2015-02-06 13:53:24 -08:00
Avital Oliver
7b531c1ad5 Don't extract dev bundle unless deletion worked
Before this change, if the deletion failed the dev bundle
would get extracted into a subdirectory of METEOR\dev_bundle
rather than into that directory.
2015-02-06 13:47:37 -08:00
Avital Oliver
8fb583507f Make "run" selftest pass on Windows 2015-02-06 13:47:15 -08:00
Sashko Stubailo
0ba325d1ca Guard against undefined options 2015-02-06 13:40:33 -08:00
Ben Newman
19080bd53d Split server/shell.js into shell/server.js and shell/client.js.
Note that shell/server.js is copied into the bundle as shell-server.js,
like before, however now it contains none of the extraneous code that
belongs in shell/client.js.

The original reason server and client code were combined in a single file
was to share helper functions and configuration variables (e.g.
getInfoFile and EXITING_MESSAGE). Now, shell/client.js requires
shell/server.js to access those shared exports.
2015-02-06 14:33:19 -05:00
David Glasser
07b6a2245a Merge branch 'mongo-2.6' into devel
Full support for MongoDB 2.6.

Upgrade bundled dependencies:

  - node: 0.10.36 (from 0.10.33)
  - Fibers: 1.0.5 (from 1.0.1)
  - MongoDB: 2.6.7 (from 2.4.12)
  - openssl in mongo: 1.0.2 (from 1.0.1j)

Fixes #2036.
2015-02-06 11:09:50 -08:00
David Glasser
a8568eb992 History.md updates for Mongo and Node upgrades 2015-02-06 10:55:34 -08:00
David Glasser
2e4d3f2833 Don't use system.replset to check for replset
It requires an unnecessary level of permissions in Mongo 2.6.  Instead,
use the isMaster command plus parsing the URL.

Fixes #2121.
2015-02-05 22:40:45 -08:00
David Glasser
5936c0b3de Add a link to a comment about upsert 2015-02-05 22:40:44 -08:00
David Glasser
a83008ebb4 Make our upserts match 2.6 semantics
Mongo 2.4 had the following behavior: if

  c.update({_id: 'x'}, {y: 1}, {upsert: 1})

resulted in an insert, it would get a random _id instead of 'x'.  (This
only happened when the update was a "replacement" rather than a
"modifier".) We dutifully implemented this behavior in various parts of
Meteor and added tests to prove that it occured.

However, this was actually a bug which got fixed in Mongo 2.6:
https://jira.mongodb.org/browse/SERVER-5289

Since this was regarded by Mongo as a bug (not a backwards-incompatible
change deemed worthy of mention in the Mongo 2.6 release notes), we
should just make Meteor always behave the Mongo 2.6 way, no matter what
version we're on (at least in the aspects where Meteor has its own code
to control this).  In other parts of Meteor where the queries are just
getting processed by Mongo, the behavior of this special case will match
Mongo's behavior.  If you care strongly about consistent behavior in
this strange edge case, upgrade to Mongo 2.6!

Specifically:

 - The minimongo implementation of modifiers loses its special-case code
   which drops _id from the modified document during an upsert replace.
 - Mongo.Collection.update should only generate a random _id as an
   insertedId if the selector doesn't mention one.
 - The case of a selector mentioning _id and a *replacement* modifier
   not mentioning _id should still count as "known ID" in the
   lower-level MongoConnection.update, which means that there's no
   reason to use simulated upsert and that we should include it as
   insertedId in the return object.
 - Various tests of the previous behavior should be changed.

(Note that if this commit is cherry-picked onto 1.0.3.1 (ie, run against
2.4), it would fail, because some of the tested cases end up going to
unsimulated Mongo upsert and assume the 2.6 behavior. That's OK, as
described above.)

Fixes #2278.
2015-02-05 22:40:44 -08:00
David Glasser
ceb07b254e upsert: Detect "can't change _id" in Mongo 2.6
This fixes the "upsert error parse" test and changes the behavior of
other failing upsert tests to be failing with "Upsert failed after 3
tries" errors instead of failing with a "can't change _id"-style error.

First step of addressing #2278.
2015-02-05 22:40:44 -08:00
David Glasser
d9cfa85b48 Fix test depending on Mongo document key order
In Mongo 2.6, _id always comes first:
http://docs.mongodb.org/manual/release-notes/2.6/#insert-and-update-improvements
2015-02-05 22:40:44 -08:00
David Glasser
30481e10bb Mongo 2.6 makes --nohttpinterface the default 2015-02-05 22:40:44 -08:00
Ben Newman
5d08559cc7 Pull in new Node and Mongo builds 2015-02-05 22:40:44 -08:00
Sashko Stubailo
02d6b020a7 Upgrade fibers to 1.0.5, which has the fixes
Also, there are some bug fixes for Windows which is really
what I wanted
2015-02-05 22:40:44 -08:00
David Glasser
505a77ecad Update other places that mention the Node version 2015-02-05 22:40:43 -08:00
Ben Newman
dbb595639e Bump $NODE_VERSION in scripts/build-node-for-dev-bundle.sh.
Note that this change depends on the existence of the branch
https://github.com/meteor/node/tree/v0.10.36-with-npm-5821 in our fork of
node (which I just created and pushed).
2015-02-05 22:40:43 -08:00
David Glasser
cf464883be Upgrade Mongo to 2.6.7 and OpenSSL to 1.0.2
(If this works, will still need a History update.)
2015-02-05 22:40:43 -08:00
David Glasser
fca8a19b4c generate-dev-bundle: download stuff over https 2015-02-05 22:40:43 -08:00
David Glasser
6e5f034a0d if a self-test throws, don't stop running tests
Previously, if a random exception was thrown in a self-test test (as
opposed to a specific TestFailure), it would crash the whole process and
not run any more tests.  That's silly.  It should just be a test
failure!
2015-02-05 22:39:32 -08:00
David Glasser
2cc0d41ee2 Fix packages with organizations test 2015-02-05 22:32:42 -08:00
David Glasser
15aa649541 reserve dev bundle 0.4.13 2015-02-05 20:40:31 -08:00
David Glasser
bcf2b58946 avoid use of shell
use execFile's callback instead of an event
2015-02-05 20:39:06 -08:00
David Glasser
695ed96a22 fix non-run uses of bundler 2015-02-05 20:35:15 -08:00
Sashko Stubailo
3cd883bda4 Merge branch 'windows-r' into devel
Conflicts:
	meteor
	tools/tropohouse.js
2015-02-05 20:28:09 -08:00
Sashko Stubailo
0c8e7baf30 Add fail fast and rename option to "reference directly" 2015-02-05 20:12:39 -08:00