Pin iron:router to @0.9.4 in localmarket. (Maybe fixes #2969.)
Organize localmarket packages and add comments.
This commit does not update the versions files; that will happen at
release time.
It looks wrong to see `Deploying to http://foo` without the
meteor.com. (The "Now serving" message gets the full site name from the
server and is fine.)
Original commit was from #2770.
The larger, "benchmark" tests of the constraint solver broke when we
got rid of ECVs earlier this week, because they relied on setting the
ECV to get certain package version semantics. (We didn't notice they
were broken because these slow tests aren't run unless you ask for
them explicitly via an environment variable.)
This branch fixes up the data to behave equivalently but without
relying on ECVs. It also removes code that post-processes the dataset
by baking the processing into the data itself. This is appropriate,
because we ought to be able to specify constraint solver tests in a
simple input-data-output-data sort of way.
The original benchmark/test translated all constraints into either inexact or exact Meteor constraints — that is, Rails’s `~>1.2.3`, `>1.2.3`, and `>=1.2.3` became the inexact `1.2.3`, and `=1.2.3` became `=1.2.3` — but also gave all versions of all packages an ECV of 0.0.0, meaning all versions are compatible with each other.
In order to make this test pass without ECV, we need to emulate pure `>=` (without incompatibility between major versions) in some other way. So, for each constraint of the form `foo@a.b.c` where `foo` has larger major versions available than `a`, we allow those major versions as well. For example, if we depend on `foo@1.1.11` and the largest version of `foo` is `3.2.0`, we rewrite `1.1.11` to `1.1.11 || 2.0.0 || 3.0.0` in order to emulate a pure `>=1.1.11` with no concern for major version compatibility.
in test-data. Importantly, tests still pass!
For example:
- Convert 1.2 to 1.2.0
- Convert 1.2.0.0 to 1.2.0
- Remove 1.2.0.1 completely
- Remove all rcs, betas, alphas, pres, etc.
Remove unused “platform” property.
Next step: Make the test not depend on setting ECVs in order to pass.
We worked with the Faye maintainer to test a "native" implementation of
proxied websockets, and now we use that with the high-level
faye-websocket module again instead of duplicating a bunch of
faye-websocket's functionality using its low-level websocket-driver
module.
As far as I understand, cordovaDependencies exist in these places:
- On an entire package (not an individual unibuild), as stored in the
main JSON blob (isopack.json)
- On a target (combination of many packages), as stored in the star
This commit removes some stray code where they show up in other places:
- A field (which is never written) is read from the individual unibuild
JSON file and passed to the Unibuild constructor, which does not
expect it.
- A field (which is never read) is written to the buildinfo.json file.
Also, an assignment to Isopack.cordovaDependencies is pulled out of a
loop.