Commit Graph

137 Commits

Author SHA1 Message Date
Justin SB
d46e14a0aa Don't print 'expected' error-exit from phantomjs 2014-10-13 16:24:32 -07:00
Nick Martin
4b1e713252 Revert "Run self-test in debug mode"
This reverts commit 7132c94e28.
2014-10-11 20:44:35 -07:00
Justin SB
7132c94e28 Run self-test in debug mode 2014-10-11 02:52:37 -07:00
ekatek
b8d927851a increment client cache format to v2
The client cache in sql-land was broken: it sent over the wrong sync token as the default.
This meant that the server thought that this was a much older client. As a result, any
0.9.3+ packages with '_' or '||' in their versions/dependencies were filtered out. There is no
easy way to undo that sort of filtering without deleting the db for a variety of reasons, and if
we are going to delete the db, we might as well increment the version so we don't have to worry about
consistency.
2014-10-08 22:31:37 -07:00
David Glasser
1df375d3a2 Fix test-package-server tag
... and also make some fixes to the 'update package server data' test,
though it's possible that only the other change is strictly necessary
2014-10-08 17:21:44 -07:00
David Greenspan
d7bae95deb Merge branch 'dgreensp-selftests' into 0.9.4
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2014-10-08 15:08:21 -07:00
David Greenspan
9dcc5e8780 Show list of failed tests 2014-10-08 15:05:57 -07:00
Justin SB
d25bfb7cd8 Log if phantomjs exits with error (e.g. missing libs) 2014-10-08 14:49:10 -07:00
David Greenspan
d87a1fe111 Edit some comments 2014-10-07 18:59:58 -07:00
David Greenspan
746fd0f792 Take a ––file regex; comments and usage 2014-10-07 15:59:05 -07:00
David Greenspan
4b1a781755 Support ––file option to self-test 2014-10-07 15:22:20 -07:00
David Greenspan
0c641fd7b3 Improve output of meteor self-test ––list 2014-10-07 15:09:33 -07:00
David Greenspan
ceda65f24b Refactor selftest.runTests and create listTests
Not extensively tested.  Needs comments describing options to the new functions (e.g. getFilteredTests) and updated usage for `meteor self-test ––list`.

Filtering and running tests now proceeds in stages
- Add “pseudo-tags” like non-matching and unchanged
- Remove tests whose tags are in a list of “tags to skip”
- Run or list the resulting TestList
- Optionally report skipped tests
- Optionally save the testState
2014-10-06 17:20:39 -07:00
David Greenspan
ded0601d0a Minor clarifications to self-tests code 2014-10-06 13:44:32 -07:00
Justin SB
90a24c9bd8 Check for meteor avd 2014-10-01 15:18:38 -07:00
ekatek
c67de0830a merging from sqllite 2014-09-30 16:29:41 -07:00
Justin SB
cd43315e76 Launch phantomjs using spawn; should work better on Linux/Docker 2014-09-30 16:18:20 -07:00
Justin SB
1337b84466 Properly close the heredoc we pass to phantomjs 2014-09-30 12:39:44 -07:00
Justin SB
96a72349c5 If selftest fails because of extra-junk, print that extra-junk 2014-09-29 14:58:56 -07:00
Pascal Rapicault
1abe499843 self test writes out v2 format 2014-09-23 11:43:54 -04:00
ekatek
298f684580 we also need to update the warehouse code to use the right version 2014-09-19 18:24:05 -07:00
David Greenspan
0b1d744731 Merge branch 'reactive-dict' into devel
Conflicts:
	examples/todos/.meteor/versions
2014-09-03 15:20:09 -07:00
Matthew Arbesfeld
611298fb50 Merge branch 'cordova-hcp' into devel
Conflicts:
	packages/deps/package.js
	packages/reload/reload.js
	tools/tests/apps/hot-code-push-test/.meteor/versions
2014-08-29 12:08:34 -07:00
Sashko Stubailo
84f1fcace1 Fix docs and self-test 2014-08-29 11:52:33 -07:00
Matthew Arbesfeld
0bf177ca0b Create more hot code push tests and let --browserstack use many browsers. 2014-08-29 11:07:13 -07:00
Matthew Arbesfeld
fca5c382d5 Merge branch 'release-0.9.1' into cordova-hcp
Conflicts:
	docs/client/api.html
	docs/client/api.js
	meteor
	packages/autoupdate/autoupdate_server.js
	packages/autoupdate/package.js
	packages/constraint-solver/package.js
	packages/less/package.js
	packages/meteor-tool/package.js
	packages/meteor/package.js
	packages/minimongo/package.js
	packages/mongo-livedata/package.js
	packages/oauth1/package.js
	packages/package-version-parser/package.js
	packages/spiderable/package.js
	packages/standard-app-packages/package.js
	packages/templating/package.js
	packages/test-in-console/package.js
	packages/webapp/package.js
	scripts/admin/meteor-release-experimental.json
	scripts/generate-dev-bundle.sh
	tools/uniload.js
2014-08-28 21:13:59 -07:00
Emily Stark
d5e3b2691a Make test packages server URL universe-friendly 2014-08-27 15:56:07 -07:00
Matthew Arbesfeld
75427d70ce Merge branch 'devel' into cordova-hcp
Conflicts:
	docs/client/docs.js
	examples/leaderboard/.meteor/versions
	meteor
	packages/backbone/package.js
	packages/constraint-solver/package.js
	packages/meetup/package.js
	packages/meteor-tool/package.js
	packages/showdown/package.js
	packages/stylus/package.js
	scripts/admin/meteor-release-experimental.json
	tools/commands-packages.js
	tools/commands.js
	tools/project.js
	tools/tests/old/app-with-private/.meteor/versions
	tools/tests/old/app-with-public/.meteor/versions
	tools/tests/old/empty-app/.meteor/versions
2014-08-27 13:38:57 -07:00
Emily Stark
2e7e9fbb9e Add guards against proc not existing in selftest 2014-08-27 08:54:18 -07:00
Emily Stark
a023e4b60c Grab selftest.fail from packaging branch 2014-08-27 08:54:18 -07:00
David Glasser
273b70bea4 prerelease versions shouldn't prompt you do update
Replace catalog.getLatestVersion with catalog.getLatestMainlineVersion,
which skips prerelease versions (those with dashes in the
version). Ensure that this function is only used by high-level commands
like 'meteor list'.  Replace other uses of that function with other
equivalent functions.

Also, don't stack trace on 'meteor add' constraint failure.
2014-08-26 23:56:51 -07:00
Matthew Arbesfeld
922af65765 Merge branch 'devel' into cordova-hcp
Conflicts:
	meteor
	scripts/generate-dev-bundle.sh
	tools/bundler.js
	tools/unipackage.js
2014-08-20 19:48:26 -07:00
David Glasser
b6955a3899 Move towards non-singleton catalog.complete
We're going to make uniload use a different flavor of "complete" catalog
soon.  So we need to reduce the number of singleton-ish references to
it.

Also, we need one PackageCache per catalog, so stop it from being a
singleton too.
2014-08-13 18:11:46 -07:00
Matthew Arbesfeld
66e8f13ea9 Merge branch 'devel' into cordova-hcp
Conflicts:
	meteor
2014-08-13 17:37:05 -07:00
David Glasser
4ac78a3646 Move DEFAULT_TRACK to catalog module
It's a constant, so no need to have to think "hmm, I wonder if I should
be writing catalog.official.DEFAULT_TRACK or
catalog.complete.DEFAULT_TRACK?"
2014-08-13 15:39:03 -07:00
Matthew Arbesfeld
e9b9132a04 Merge branch 'devel' into cordova-hcp
Conflicts:
	meteor
	tools/catalog.js
	tools/commands-packages.js
	tools/commands.js
2014-08-13 15:07:42 -07:00
David Glasser
390f449fe6 20 lines of history rarely shows whole stacktrace 2014-08-13 13:27:51 -07:00
David Glasser
64d939acb2 Add a lot more buildmessage captures
Many of these (mostly in top level commands in commands-packages.js) are
not super well thought out: they use a new "doOrDie" helper to run some
function in a capture and exit if there are any messages.  We really
need to get a little more thoughtful about the big picture of error
handling (combining "build" errors, network errors, catalog errors,
etc). But this at least allows the addition of more buildmessage
assertions.

At the very least, this ensures that if you edit a package.js in a local
package while "meteor run" is running, that instead of crashing the tool
it properly shows the buildmessage and lets you fix the issue.
2014-08-11 17:06:28 -04:00
David Glasser
52230a8d79 fix 'update server package data unit test'
various things were not talking to the test server / storage file
2014-08-06 19:56:48 -07:00
Matthew Arbesfeld
9f2ee36e60 Merge branch 'packaging' into cordova-hcp
Conflicts:
	packages/constraint-solver/constraint-solver-tests.js
	packages/constraint-solver/constraint-solver.js
	packages/less/plugin/compile-less.js
	packages/meteor/plugin/basic-file-types.js
	packages/star-translate/translator.js
	packages/stylus/plugin/compile-stylus.js
	packages/templating/plugin/compile-templates.js
	packages/webapp/webapp_server.js
	tools/bundler.js
	tools/commands.js
	tools/compiler.js
	tools/package-source.js
	tools/run-app.js
	tools/selftest.js
	tools/tests/old/test-bundler-assets.js
	tools/tests/old/test-bundler-options.js
	tools/unipackage.js
2014-08-06 13:43:56 -07:00
David Glasser
7d05640ea0 Make buildmessage fiber-aware
Port a simplified version of Meteor.EnvironmentVariable and
Meteor.bindEnvironment to fiber-helpers.js to deal with this.

Identify uses of fiberHelpers.inFiber and switch them to either
fiberHelpers.bindEnvironment (if the callback they are wrapping is
semantically "part of" the context that creates the callback) or
fiberHelpers.inBareFiber (otherwise).

Without this, concurrency was causing the wrong buildmessage message
sets and jobs to be active when builds yielded.
2014-08-04 19:03:05 -07:00
Matthew Arbesfeld
8bcbd65344 Separate "browser" target into web.browser/cordova
Cordova projects often have a different set of files than web targets,
so we would like to be able to target different client architectures in
our bundles. Ideally, we allow the user to use arbitrary client
architectures - but this patch is a step in the right direction by
abstracting out more of the hard coded "browser"/"os" lines.

We accomplish this separation in a backwards compatible way by allowing
api.___ commands to target a "client" architecture. For example,
api.addFiles('a.js', 'client') adds 'a.js' to both the 'client.browser'
and 'client.cordova' targets.

Effects on 0.9 packaging stuff: packages don't have to change, but the
"data.json" file in ".meteor0" has "browser" in some places. We think we
have to fix the troposphere code where this data.json is created.

Some plugins will also be backwards-incompatible with this change, since
many have a "clientArch.matches("browser")" line in the plugin
code. Ideally, we fix plugins so that this stops being an issue, but for
now package authors can just patch that line.

At the compiled (unipackage) level the new names are 'web.browser' and
'web.cordova', replacing 'browser'. In package.js, the new names are
'client.browser' and 'client.cordova', serving as an adjunct to 'client'.
2014-07-31 14:12:15 -07:00
David Glasser
06a7dc90b5 Add many buildmessage.capture/assertInCapture
Moving towards a world where all things that might invoke buildmessage.error are
encouraged to be in a buildmessage.capture.

This commit is the answer to the question "how many small changes need to be
made to add buildmessage.assertInCapture to PackageCache.loadPackageAtPath?"

Next steps include:
 - Making catalog.resolveConstraints ALWAYS buildmessage.assertInCapture
   (not just when ignoreProjectDeps isn't passed)
 - Then changing resolveConstraints to complain using buildmessage
 - Removing the process.exit(1) in _ensureDepsUpToDate
 - Adding a more structured way to ensure that most commands
   call _ensureDepsUpToDate at an unsurprising location
2014-07-30 22:16:21 -07:00
David Glasser
b11a623193 assert rebuildLocalPackages in capture 2014-07-30 20:38:27 -07:00
David Glasser
26006d53dc Merge branch 'devel' into packaging
Conflicts:
	tools/utils.js
2014-07-30 17:40:44 -07:00
Justin SB
706fc7ebe7 Allow TIMEOUT_SCALE_FACTOR env variable to scale up timeouts for self-test
Particularly for automated tests, where we may run on a slow machine, we need
an escape valve to let us boost the timeouts.  This also allows for a 'tolerant'
test (scale factor 2+?) and a 'strict' test (scale factor 0.5?) etc
2014-07-30 14:37:18 -07:00
David Glasser
cd57ac3535 isolate different servers' packages
also, in self-test, only set $METEOR_PACKAGE_SERVER_URL for the specific
runs that actually want the test server (using a tag) rather than kinda
always by accident
2014-07-28 20:45:08 -07:00
David Glasser
59d38b28bb minor cleanup 2014-07-25 14:12:21 -07:00
Matthew Arbesfeld
960f8907d3 Merge branch 'packaging' into cordova-hcp
Conflicts:
	packages/constraint-solver/constraint-solver.js
	packages/webapp/webapp_server.js
	tools/tests/package-tests.js
2014-07-25 13:52:34 -07:00
ekatek
83ac27f9c4 A separate data.json for each package server 2014-07-24 18:36:15 -07:00