Commit Graph

60 Commits

Author SHA1 Message Date
Slava Kim
4d41c4c7cd Fix failing meteor build self-test 2014-10-10 14:36:43 -07:00
Emily Stark
99228d7c7b Clean up tarball in old-cli-test.
If we don't clean up the tarball, then the following command (`meteor
build`) fails ("Couldn't create tarball"), but for some reason still
exits with code 0. So we then go on to successfully untar the output of
`meteor build`. If we clean up the tarball from `meteor bundle`, we at
least catch the failure by trying to untar a nonexistent file.
2014-10-09 22:21:32 -07:00
ekatek
1ab17b6aa8 tells bundler tests to initialize the official catalog - we used to not need this, but now that we use the official catalog as the recordstore not mirrored locally, we have to do it 2014-09-29 15:04:10 -07:00
ekatek
d8377487dc support multiple major versions in meteor 0.9.3 and above. A little hacky in the tool around keeping old interfaces, but it works 2014-09-18 00:12:30 -07:00
Emily Stark
ccfee68145 Merge branch 'master' into devel
Conflicts:
	docs/client/api.html
	docs/client/data.js
	docs/client/names.json
	meteor
	packages/autoupdate/package.js
	packages/base64/.gitignore
	packages/constraint-solver/package.js
	packages/device-orientation/.gitignore
	packages/less/package.js
	packages/meteor-tool/package.js
	packages/meteor/package.js
	packages/package-version-parser/package.js
	packages/webapp/webapp_server.js
	scripts/admin/meteor-release-experimental.json
	tools/commands.js
	tools/help.txt
	tools/package-version-parser.js
	tools/run-all.js
	tools/tests/apps/build-errors/packages/with-colon-plugin/.gitignore
2014-09-15 14:48:57 -07:00
David Glasser
d5df1b9eb5 sigh, old test versions files update 2014-09-11 15:57:22 -07:00
Emily Stark
88bf4ce810 Update old cli test for meteor build. 2014-09-11 15:30:39 -07:00
ekatek
390b6394b5 strip out extra dependencies on semver in tool 2014-09-10 15:53:23 -07:00
ekatek
debb13fdb6 refactorred the update function to be legible and have fewer bugs 2014-09-05 18:21:24 -07:00
Sashko Stubailo
84f1fcace1 Fix docs and self-test 2014-08-29 11:52:33 -07:00
Sashko Stubailo
aafd8a0d3e Merge branch 'release-0.9.1' into ddp
Conflicts:
	packages/livedata/package.js
2014-08-28 17:16:38 -07:00
Sashko Stubailo
3189a364e9 Rename livedata to ddp, meteor test-packages passes 2014-08-28 12:53:34 -07:00
Sashko Stubailo
6f72a3c649 Update deps to tracker in self-test 2014-08-28 12:04:27 -07:00
David Glasser
2e259e61c2 update old test version, sigh 2014-08-25 13:47:08 -07:00
David Glasser
4482427da5 make cli-tests tests 2014-08-25 12:31:37 -07:00
David Glasser
a247b79aa1 test version bumps, sigh 2014-08-24 21:17:58 -07:00
David Glasser
131b73bc71 update tools/tests id files
really, these directories shouldn't have the files, we should copy to a
temp dir...
2014-08-22 17:33:36 -07:00
ekatek
e859266aaf changes, as per glasser's code review 2014-08-21 13:41:29 -07:00
David Glasser
4af87eadb1 old test app version bump (this is silly) 2014-08-18 00:28:37 -07:00
David Glasser
149fbe942c get old cli tests passing for me 2014-08-16 10:23:35 -07:00
David Glasser
924195b224 app versions bump, grr 2014-08-14 16:17:00 -07:00
David Glasser
c9488c74d0 versions update 2014-08-13 18:11:46 -07:00
David Glasser
f946ff9054 uniload from checkout uses separate catalog 2014-08-13 18:11:46 -07:00
David Glasser
2755f95bb6 Move uniload package list to uniload.js
Actually verify that uniloaded packages are in the list. Add missing
'ejson'. Remove (ah well) test that relies on ability to uniload an app
package (which shouldn't work anyway, but it would be nice to test
uniload Assets...)
2014-08-13 18:11:46 -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
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
9c7fd931f8 updated versions in tools/tests/old
(Should these files really be checked in? With tools/tests/apps, the
apps are always copied into a temp directory before running meteor,
which is better.)
2014-08-06 19:56:48 -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
ekatek
3aff2199cc fixing old cli test 2014-07-28 16:09:19 -07:00
Emily Stark
9e65038d08 Update "old cli test" for new 'meteor remove' output 2014-07-28 10:46:15 -07:00
ekatek
4205a06ba2 add exact constraints 2014-07-24 15:13:47 -07:00
Avital Oliver
a6db03f131 Unbreak hot code push test by eliminating references to non-existent spacebars-common package 2014-07-23 20:27:35 -07:00
Emily Stark
cbc12117a6 Fix pipe/grep for missing package in old cli test 2014-07-22 17:37:53 -07:00
Emily Stark
eb70a7c299 Make old cli test pass.
We might want to revisit this after polishing error messages.

Still doesn't pass with METEOR_WAREHOUSE_DIR set from self-test.
2014-07-22 14:24:17 -07:00
David Glasser
9dbc64ef06 test versions file updates from devel merge 2014-07-21 16:46:04 -07:00
ekatek
8bb675c0b6 cleaning up some tests to run from release 2014-07-17 15:41:39 -07:00
ekatek
8ed9d3459c removed some name fields, changes console.log to process.std[out,err].write in commands-packages and gave user a warning to remember to publish for arch. 2014-07-08 22:41:21 -07:00
David Glasser
ddba5d4a3f Never copy dev bundle node_modules into bundle
symlink as a special case for runner only

future commits on this branch will add a
package.json/npm-shrinkwrap.json that can be used by "meteor bundle"
users
2014-07-01 14:09:44 -07:00
David Glasser
94aab913f1 self-test now passes 2014-06-26 17:32:17 -07:00
ekatek
d2aadf4e54 now we have search! 2014-06-13 18:01:18 -07:00
ekatek
d2ed5ab48d add packages self-test 2014-06-13 16:28:37 -07:00
David Glasser
553af3515b bundler-npm passes
well, most of the time. the final parallelism test fails a lot, but i
think it's due to the fundamental raciness of renameDirAlmostAtomically.
2014-06-10 22:05:52 -07:00
David Glasser
d422da3584 bundler-options passes 2014-06-10 19:25:38 -07:00
David Glasser
6d3257909d test-bundler-assets passes 2014-06-10 19:13:48 -07:00
ekatek
1cf0655da4 Bundler should not take appDir and loader as arguments anymore 2014-05-30 18:32:49 -07:00
David Glasser
e4000c6808 Merge branch 'devel' into packaging
Conflicts (around utils.quotemeta):
	tools/packages.js
	tools/utils.js
2014-05-12 17:06:11 -07:00
Felix Rabe
3431c66c16 Fix occurrences of "cd dirname $0"
They are not safe for spaces in paths. There might be other places to look for trouble.

I've run the following command to produce this commit: (on OS X, copy-and-pasting the below exactly)

    find . -type f -name '*.sh' -print0  |  # Find all .sh files
        xargs -0 fgrep -H -- '`'         |  # See all places with backticks in them
        fgrep 'cd `dirname $0'           |  # I deemed these problematic (variable assignments are safe)
        cut -d ':' -f 1                  |  # Take the <file> from <file>:<line> produced by "grep -H"
        tr '\n' '\0'                     |  # Also here, spaces can be problematic - always do "xargs -0"!
        xargs -0 -- sed -i '' 's/cd `dirname $0`/cd "`dirname "$0"`"/g'

The significance of adding the two levels of "'s can be verified by running the following in your Terminal:

    $ node -e 'console.log(process.argv.splice(1))' -- `echo 1   2`
    [ '1', '2' ]

    $ node -e 'console.log(process.argv.splice(1))' -- "`echo 1   2`"
    [ '1 2' ]

    $ node -e 'console.log(process.argv.splice(1))' -- "`echo "1   2"`"
    [ '1   2' ]
2014-05-07 17:51:09 -07:00
David Glasser
314c8a1a34 We no longer need to pass --force to npm install
(Also, make a test assertion useful: assert.equal's default truncation
is horrible.)
2014-04-30 18:03:53 -07:00
David Glasser
fbde0a00a7 Merge branch 'publish-packages' into library-refactor
Conflicts:
	packages/domutils/package.js
	packages/handlebars/package.js
	packages/htmljs/package.js
	packages/liverange/package.js
	packages/spark/package.js
	packages/universal-events/package.js
	tools/bundler.js
	tools/help.txt
	tools/packages.js
	tools/run-app.js
	tools/run-mongo.js
	tools/skel/.meteor/packages
2014-04-24 17:01:36 -07:00