Commit Graph

4946 Commits

Author SHA1 Message Date
David Glasser
1c8c7d171c very basic insert support 2013-12-02 19:17:25 -08:00
David Glasser
cae886b2f0 remove processing works. 2013-12-02 19:17:25 -08:00
David Glasser
ba63548d4d checkpoint monday morning 2013-12-02 19:17:25 -08:00
David Glasser
123c06ac3f oplog checkpoint from friday 2013-12-02 19:17:24 -08:00
David Glasser
6637656261 Don't reset the replset unless the port changes.
(Resetting the replset is slow!)
2013-12-02 19:17:24 -08:00
David Glasser
a832b11211 Factor tailing code out of observe-changes code. 2013-12-02 19:17:24 -08:00
David Glasser
878dfe9a1f In "meteor run", run mongo in repl-set mode, so that oplog is available.
Note: this is pretty slow. Before merging this branch, should cache the fact
that replset has been initiated on port N so that on the next run, if the port
hasn't changed, we don't need to re-initiate.
2013-12-02 19:17:24 -08:00
David Glasser
4d2097912d Add cursorSupportedByOplogTailing. 2013-12-02 19:17:24 -08:00
David Glasser
4ea191e452 Drop uglify dependency from handlebars module
This reduces the npm download done when updating the handlebars package
by 2M.  (Uglify is only used by bin/handlebars, not the handlebars API.)
2013-12-02 19:12:09 -08:00
David Glasser
e11228a3f8 Clean up package dirs containing only ".build"
These directories are often left around when switching from another
branch; git does not delete the gitignored .build directory (but it will
show up annoyingly in 'git status').
2013-12-02 17:50:30 -08:00
David Glasser
cd873c0e47 Drop handlebars from the dev bundle. 2013-12-02 17:15:37 -08:00
David Glasser
8ab66ff255 Stop using handlebars in the bundler.
The dev bundle contains a copy of the handlebars NPM module solely for
creating app.html.  This is separate from the NPM module used by the
handlebars NPM package.

On the shark branch, we no longer use the handlebars NPM module for
Meteor template (it is being replaced by Spacebars), so in preparation
for that, we'll remove this barely-used build-time dependency on
handlebars.

A subsequent commit will remove it from the dev bundle.

Once the Spacebars API has fully settled (eg, it has been merged to
devel), we should get rid of this ad hoc templating and replace it with
Spacebars, either in webapp_server (driven entirely by program.json) or
by using unipackage.load in bundler.
2013-12-02 17:15:37 -08:00
David Glasser
c066b90e1c Add comment referencing #1648 2013-12-02 16:59:50 -08:00
David Glasser
0a4663bafd Upgrade websocket-driver from 0.3.0 to 0.3.1
This fixes a DoS we found:
https://github.com/faye/faye-websocket-node/issues/26
2013-12-02 16:49:09 -08:00
Naomi Seyfer
b1cc446fc8 rename event with a meteor prefix 2013-12-02 16:25:40 -08:00
Naomi Seyfer
bc3b42a941 glasser comments 2013-12-02 15:15:06 -08:00
Naomi Seyfer
d1767da26d Short socket timeout while no pending request. Long timeout with pending req 2013-12-02 14:21:29 -08:00
Naomi Seyfer
e58156bd58 Handle long-polling sockets when we are shutting down the server with SIGHUP better 2013-11-27 15:28:28 -08:00
karayu
7372c4cd05 added meta description 2013-11-26 15:34:03 -08:00
Nick Martin
db59ab13c1 wait for server to be running instead of naive sleep. 2013-11-26 15:05:18 -08:00
David Glasser
b2b5e323eb set x-forwarded-* headers in 'meteor run'
This was a regression in 0.6.6 when we upgraded to a new unreleased
version of http-proxy which now requires an explicit option to set them.
See #1624.
2013-11-25 17:16:57 -08:00
Nick Martin
4a8bbce814 Oops, missed one. Add deps package to autoupdate dependencies. 2013-11-21 16:52:23 -08:00
Nick Martin
ed5971b08e Merge branch 'autoupdate-review-from-glasser' into devel 2013-11-21 16:42:47 -08:00
Nick Martin
f25b733bc6 Change AutoUpdate symbol name to be one word not two.
perl -pi -e 's/AutoUpdate/Autoupdate/g' **/*.{js,md}
perl -pi -e 's/autoUpdate/autoupdate/g' **/*.{js,md}
2013-11-21 16:34:07 -08:00
Nick Martin
5803dfbf2f Comments and safety belts from glasser's review. 2013-11-21 16:31:49 -08:00
Emily Stark
d564ab4b99 Fix SeededRandom's use of Random's alea.
Thanks glasser
2013-11-21 10:14:03 -08:00
Matt DeBergalis
8531977bc2 point to Contributing-to-Meteor wiki page 2013-11-20 16:06:19 -08:00
Nick Martin
f4a41a1726 Also include path of file in hash computation.
Followup to 72d3e08067. Without this, the hash wouldn't change and the client
wouldn't reload if a file was renamed in a way that didn't change the order
of files (eg, preserving its name in alphabetical order).

This didn't used to be a problem, as the hash computation was only used in
appcached, which included the file path already and would change if the
file was renamed.
2013-11-19 11:31:25 -08:00
Nick Martin
72d3e08067 Merge branch 'pr/1583' into devel 2013-11-19 02:26:36 -08:00
Nick Martin
32000d4c5e Comments. 2013-11-19 02:20:47 -08:00
Nick Martin
4951520d55 Add history for autoupdate change. 2013-11-19 02:16:48 -08:00
Andrew Wilcox
3245f0d9d6 Comment on hack encoding knowledge of autoupdate in livedata. 2013-11-19 01:34:54 -08:00
Andrew Wilcox
22f9183c6b use Deps.autorun, remove unused crypto 2013-11-19 01:34:54 -08:00
Andrew Wilcox
005e4a2e85 livedata doesn't need to use localstorage because it's now using
reload migration instead.
2013-11-19 01:34:54 -08:00
Andrew Wilcox
a2c4a78743 Have using test-in-browser cause autoupdate to reload on server changes,
which is convenient when running unit tests in the browser.
2013-11-19 01:34:54 -08:00
Andrew Wilcox
15f5ca3d7e Have the client send the "connect" message on stream open
instead of waiting for the welcome message.
2013-11-19 01:34:54 -08:00
Andrew Wilcox
8d3929e450 Fix typo. 2013-11-19 01:34:54 -08:00
Andrew Wilcox
8c0e02635b Add an overview of autoupdate and the code push process. 2013-11-19 01:34:54 -08:00
Andrew Wilcox
78b9a47fcb Fix livedata tests. 2013-11-19 01:34:54 -08:00
Andrew Wilcox
6239d388ef Reuse stream reconnect exponential backoff code for DDP version
negotiation failure retries.
2013-11-19 01:34:53 -08:00
Andrew Wilcox
456e6916be Use reload migration API instead of localstorage.
Remove the unused `serverRequestedVersion` argument to
`onDDPVersionNegotiationFailure`.

And let's call the remaining argument `description` instead of `error`
since it isn't an Error object.
2013-11-19 01:34:53 -08:00
Andrew Wilcox
e27e2d8c82 Calculate the client hash in webapp so that autoupdate doesn't have to
be a strong dependency of appcache.

Delaying publishing the current client version document until the auto
update version is available isn't necessary because the publish
callback won't be called before webapp starts listening, and that
happens after startup.

In the app cache manifest include both the client hash and the
AUTOUPDATE_VERSION, which both allows the browser to load new
client code even when the auto update version is explicitly set by the
developer, and also ensures that if the developer changes the auto
update version this is propagated to the client in the app HTML so
that autoupdate doesn't get into an infinite loop of reloads.
2013-11-19 01:34:53 -08:00
Andrew Wilcox
572fc333c7 Avoid having test-in-browser shutdown the autoupdate subscription,
so that developers still get hot code pushes when writing tests.

Fix livedata tests.

Add a sanity check to deciding when to reload: only reload if there is
an available client version marked "current".  (Otherwise if the
server fails to publish any valid client versions, perhaps as a bug in
a forked autopublish package, the client will go into an infinite loop
of reloads).

Update QA notes.
2013-11-19 01:34:53 -08:00
Andrew Wilcox
d8935bdbcb Update description of deprecated DDP welcome message and include QA notes. 2013-11-19 01:34:53 -08:00
Andrew Wilcox
cbc28e1c7f Reload the client on DDP version negotiation failure
on the default connection, on the assumption that new
client code will be able to negotiate successfully.

Uses an exponential backoff if after reload the DDP version
negotiation fails again.
2013-11-19 01:34:53 -08:00
Andrew Wilcox
a741726dfc autoupdate package doesn't need to be internal 2013-11-19 01:34:53 -08:00
Andrew Wilcox
e48fa460bc Implement AutoUpdate.newClientAvailable reactive data source.
Have the appcache use the auto update client version id.

Fix autopublish warning.
2013-11-19 01:34:53 -08:00
Andrew Wilcox
7d25bd1f87 Move auto reload functionality out of livedata inside of DDP to new
autoupdate package implemented on top of DDP.
2013-11-19 01:34:53 -08:00
Emily Stark
a2b0ffff1b Check for matching hostname before doing end-of-oauth redirect 2013-11-18 18:28:12 -08:00
David Glasser
b01bef022a De-dup Contributing text between repo and wiki 2013-11-18 18:01:38 -08:00