Commit Graph

9117 Commits

Author SHA1 Message Date
David Glasser
080f6f60dd Lower version numbers of some third-party packages
We haven't yet decided how we want to do versioning for packages that
mostly just wrap non-Meteor code that has its own version numbers. We
might stick to totally-unrelated version numbers (and maybe add a
"wrapped version" field that gets displayed in the upgrade/downgrade
messages?), or change to matching upstream versions (with techniques for
dealing with changes to packaging, a la debian_revision), or something
different.

But since changing to match upstream versions is a possibility, let's
make sure that that operation won't be viewed as a "downgrade" by
updating the wrapped packages whose upstream versions are 0.*.
2014-08-20 17:14:57 -07:00
ekatek
7946be9f9b bad merge diffs 2014-08-20 16:20:29 -07:00
ekatek
75df1097e0 one weird hack to maybe have better messages for nonexistent packages 2014-08-20 16:19:24 -07:00
David Glasser
0bc445e8d2 Make slow operations more bearable with Patience
Introduces a "Patience" class which lets CPU-bound operations like the
constraint solver yield every so often, and print messages if an
operation (CPU-bound or not) are taken or not.
2014-08-20 15:49:58 -07:00
ekatek
019d3d289e don't crash when removing a nonexistent package 2014-08-20 15:20:22 -07:00
Emily Stark
4ce2888596 Change meetup /members URL.
Apparently secure.meetup.com doesn't work anymore.
2014-08-20 11:53:03 -07:00
David Glasser
6f1c74465b adjust which tests are from checkout 2014-08-19 19:34:26 -07:00
ekatek
b28a84cca2 wrap opennign server connection in a try/catch block from refresh 2014-08-19 18:47:37 -07:00
Matthew Arbesfeld
0df7bdc378 Fix client side reload race condition
There was a race condition between the bundle process and when we established
the client watch set. We now store the future for the old bundle process so
that it cannot be invalidated.
2014-08-19 18:38:36 -07:00
David Glasser
2866a2018f version bump for rc10 release/METEOR-CORE@0.9.0-rc10 2014-08-19 17:31:18 -07:00
ekatek
ff8498dd1b mark tests from checkout if they use the test server due to release duplication issues 2014-08-19 17:07:53 -07:00
ekatek
6e6a48a913 output safety 2014-08-19 15:33:38 -07:00
David Glasser
6d353044d4 Merge branch 'upgrade-tar-fstream' into devel 2014-08-19 14:11:46 -07:00
David Glasser
ec3ecb3523 Remove work-around for fstream bug
Now fixed upstream.
2014-08-19 14:10:00 -07:00
David Glasser
9fefcb2a6f update fstream/tar to fix tarball crash
https://github.com/npm/fstream/issues/26

We were working around this before, but this is a better fix. Plus might
be a (probably unobservable?) performance improvement since we do fewer
fs ops.
2014-08-19 12:58:32 -07:00
David Glasser
fceacf2885 Use 15-second timeout for service connections
This should reduce failures to send package stats.
2014-08-19 12:41:00 -07:00
ekatek
52e3eafa5c tests and minor fixes for --name 2014-08-19 12:32:16 -07:00
ekatek
b29a4cc439 more detaled wip on name coming from package.js 2014-08-19 12:32:16 -07:00
David Greenspan
63f984c5e5 Fix stack trace fix after testing in Safari 2014-08-19 11:08:13 -07:00
David Greenspan
187c86b3e5 Improve Deps error reporting for Cordova
In Chrome, the built-in, non-standard property `e.stack` starts with `“Error: ”+e.message`.  So we said `(e.stack || e.message)`.  However, in Cordova, e.stack does not include e.message.  So detect whether e.stack includes e.message or not and act accordingly (to avoid losing the message or printing it twice).

Also add some comments and stop printing “Exception from Deps afterFlush function function”.
2014-08-19 10:56:19 -07:00
David Glasser
84955c7ff4 selftest.fail instead of faux expectEqual 2014-08-19 10:39:56 -07:00
David Glasser
d8ff20103d version bumps (pre rc10)
We'll make rc10 tomorrow, but I want to build a release just to play
with built releases again.
release/GLASSER-TEST@maybe-rc10
2014-08-18 20:48:43 -07:00
David Glasser
69cf01a138 don't leak readstream 2014-08-18 20:11:47 -07:00
David Glasser
883fc8516d files.OfflineError prettier than [object Object]
(It should also be caught at every httpHelpers.getUrl call and handled
properly, but this is a start.)
2014-08-18 20:10:52 -07:00
David Glasser
196089ae33 package-client: Help users without usernames
- If they're in deferred-registration state, give them their
  registration link and exit.

- Before running the login prompt, mention that it's a Meteor developer
  account which you can sign up for on www.meteor.com.
2014-08-18 19:13:06 -07:00
David Glasser
9054effdeb Fix ServiceConnection DDP negotiation
Now ServiceConnection's guarantee is that once a DDP connection is
successfully negotiated, it won't restart. This relies on the assumption
that the only use of reconnect({_force: true}) is DDP protocol
negotiation!

Drop some unnecessary (and flawed, for this application) `disconnect`
stream events.

Also, remove some unnecessary `new` calls.

Fixes 'meteor mongo some-galaxy app'.
2014-08-18 17:09:04 -07:00
David Glasser
f3085db2d2 Work around a node-tar bug
See https://github.com/npm/fstream/issues/26
2014-08-18 15:10:15 -07:00
David Glasser
b1b1520f3e Remove lots of pre-packaging scripts/admin stuff
You can still find it on release-0.8.3! :)
2014-08-18 00:40:00 -07:00
David Glasser
9ed6204acc Remove awssum submodule 2014-08-18 00:37:14 -07:00
David Glasser
4ac638d60b oops, didn't mean to add blank line 2014-08-18 00:32:15 -07:00
David Glasser
558fb92651 state that package stat error is only in checkout 2014-08-18 00:31:12 -07:00
David Glasser
4af87eadb1 old test app version bump (this is silly) 2014-08-18 00:28:37 -07:00
David Glasser
73b33ee4da note about why official.refresh uses buildmessage 2014-08-18 00:28:23 -07:00
David Glasser
08a6fa99fd Don't use _.once or instanceof with uniload
_.once has the problem that if you call the once'd function while it is
still in progress (re-entrantly or in another Fiber), it returns
undefined immediately.  That's bad for uniload! uniload already has a
cache, so just use that.  (In the future, perhaps detect an attempt to
uniload something that's currently in the process of being uniloaded in
another fiber and block until the other fiber is ready.)

Using instanceof with things you've uniloaded is a little sketchy: maybe
two different uniload calls will end up with two different copies of
Package.meteor.Meteor.Error, and it seems kind of hairy to ensure you're
not mixing and matching copies.  However, Meteor.Errors are all tagged
with a string errorType, which fills me with much less fear,
uncertainty, and doubt than instanceof.
2014-08-17 23:37:38 -07:00
David Glasser
acd5e0b04c remove deprecated release option from uniload.load 2014-08-17 23:33:06 -07:00
David Glasser
9427c803e1 fix report-stats test again 2014-08-17 23:12:03 -07:00
David Glasser
3b3e8d7b93 Simplify ServiceConnection.
- ServiceConnection should never try to reconnect. It's already the case
  that we don't hold open ServiceConnections over long periods while
  idle; it makes the class much simpler if it corresponds to a single
  TCP connection. This also means that as soon as we have one connection
  failure (eg you're offline) we can fail instantly instead of retrying
  pointlessly.

- Drop the explicit timeout code in ServiceConnection. There's already
  timeout handling in stream_client, and now that we don't retry, it
  actually takes effect.

- Be more rigorous about uses of Future in ServiceConnection. Ensure
  that each Future is only used once (ie, avoid "Future resolved more
  than once" errors).  Hopefully fixes #2390.

- ServiceConnection constructor now blocks until it's connected (and
  throws if there's a connection failure).  Maybe this introduces a tiny
  bit more latency to the connection, but it makes it much easier to
  handle errors properly.

- In packageClient.handlePackageServerConnectionError, show the error
  message corresponding to the connection failure.

- In Node, the (newish) error passed to the Stream callback is now a
  "DDP.ConnectionError" object. We can detect this in the tool (and we
  don't even need to do some complex uniload/instanceof dance, since
  error classes made with Meteor.makeErrorType label themselves with a
  string errorType).  We also no longer have a special
  ServiceConnection.ConnectionTimeoutError.
2014-08-17 21:34:57 -07:00
David Glasser
87b3748ec5 node ddp client: send errors to disconnect event
this includes the timeout one
2014-08-17 20:30:34 -07:00
David Glasser
b4039173a6 Status shouldn't be "waiting" unless we will retry 2014-08-17 20:19:57 -07:00
David Glasser
2115eed79a Revert "include a backtrace for "got open from inactive""
This reverts commit 4378d9f5d0.

The previous commit switches to a version of Faye which fixes the bug
that causes this error to be thrown.
2014-08-17 20:16:54 -07:00
David Glasser
6aae5086e5 Switch to a fork of faye fixing close-before-start
This should stop all the "Got open from inactive client" errors.
2014-08-17 20:15:32 -07:00
David Greenspan
e897539adb Work-around for Safari JIT bug 2014-08-16 20:39:24 -07:00
David Glasser
8a262adc97 Close stats server connections after using them
Notably, we were leaking a (DDP/https/TCP) connection for every restart
in 'meteor run'.
2014-08-16 16:07:28 -07:00
David Greenspan
b5715a9621 Stop trying to fetch an MP4 file in tests
We test event capturing using the <video> “play” event, because it is a non-bubbling event native to modern browsers.  We previously had the src URL be a video on the Internet, but even if the video could not be accessed, the test still seemed to work.

So now set the “src” to “”.  Seems to work in IE 9, Firefox, Safari, Chrome.
2014-08-16 11:21:45 -07:00
David Greenspan
7981f17af1 Make “same input.value” test work in IE 8 2014-08-16 11:04:43 -07:00
David Greenspan
0c9d5337aa Improve test driver progress bar CSS
Keep the label from moving with the progress bar in Firefox
2014-08-16 11:04:43 -07:00
David Glasser
149fbe942c get old cli tests passing for me 2014-08-16 10:23:35 -07:00
David Glasser
04ba193ee4 oops, re-initialize resolver after refresh
Fixes "TypeError: Cannot call method 'resolve' of null", caught by
cli-test.  Gets cli tests closer to passing.
2014-08-16 10:23:18 -07:00
David Glasser
eb0626a0a7 fix report-stats test from checkout
You'd think that when making a commit with a name like 'fix
reports-stats test from release', this "glasser" fellow would consider
checking to see if he broke the other use case, but that's apparently
too much to ask.
2014-08-16 10:04:00 -07:00
David Glasser
1e384092c3 fix --slow report-stats test (broken by 66f21a6) 2014-08-16 10:03:32 -07:00