Ben Newman
e85cef8e1a
Make download resumption test faster and more deterministic.
...
We now use a smaller file (the `babel-compiler` archive instead of
`meteor-tool`), and we interrupt every 500kB, which leads to three total
interruptions for that file. Also, we only delay one second (instead of
five) between attempts.
2016-07-14 17:00:08 -04:00
Ben Newman
91f203999b
Make download resumption test always run (and pass).
...
This is a test that really needs to run and pass every time we run the
test suite, so I decided it shouldn't be --slow. If it takes too long, we
can always download a smaller test file.
Hard-coding the download length was a recipe for brittleness, so now I'm
downloading the file without interruptions in parallel with the
interrupted/resumed download, so that we can compare the two files when
both have finished downloading.
Follow-up to #7399 .
2016-07-14 16:05:35 -04:00
Ben Newman
7a530f79f6
Increase more test timeouts for robustness' sake.
2016-07-14 14:52:41 -04:00
Ben Newman
d20dcbeab5
Don't let meteor {node,npm} fail if packages.data.db incomplete.
...
It's pretty strange that `data` can be undefined when there is no `error`,
but that's the API we're dealing with.
2016-07-14 14:39:38 -04:00
Ben Newman
f0e3522b3c
Make autoupdate self-test more robust.
2016-07-14 13:53:53 -04:00
Ben Newman
9ae91e7b73
Rename upgrader that removes .meteor/dev_bundle.
2016-07-14 12:51:17 -04:00
Ben Newman
0c43039f60
Avoid fiberHelpers.bindEnvironment by returning Promise from attempt.
...
Follow-up to #7399 .
2016-07-14 11:47:32 -04:00
Ben Newman
fbfb5b84e2
Avoid exposing httpHelpers._currentRequest.
...
Follow-up to #7399 .
2016-07-14 11:47:32 -04:00
Tom Coleman
2cb3462b6d
Minor fixes + added a comment
2016-07-14 11:47:32 -04:00
Tom Coleman
4a28c33dd7
Better logging and progress
...
Using Console.debug to register messages about retries.
2016-07-14 11:47:31 -04:00
Tom Coleman
36011459fa
Made the test work in a sensible way
2016-07-14 11:47:31 -04:00
Tom Coleman
cc07c15b6b
First pass at request resuming via buffering the range header
...
This is still a WIP, but I wanted to get feedback at this point.
Will update the PR with outstanding TODOs.
2016-07-14 11:47:30 -04:00
Ben Newman
73e44a3c9c
Use .meteor/local/dev_bundle instead of .meteor/dev_bundle.
...
I'm deliberately leaving in the code to ensure .meteor/.gitignore contains
dev_bundle for now, so that the old file won't get accidentally checked
into anyone's app repository.
2016-07-14 11:47:30 -04:00
Ben Newman
5e874bec93
Make $METEOR_NPM_REBUILD_FLAGS override default flags.
2016-07-14 11:47:29 -04:00
Ben Newman
46c0243fce
Support additional meteor rebuild flags via environment variable.
2016-07-14 11:27:59 -04:00
Ben Newman
fa14798115
Pass --no-bin-links to npm rebuild to fix #7401 .
2016-07-14 11:27:58 -04:00
Ben Newman
f4ac7dc448
Decompose npm-rebuild-args.js.
...
Helps with #7401 .
2016-07-14 11:27:58 -04:00
Ben Newman
e90ce88b0e
Fix a bug in tools/utils/http-helpers.js.
2016-07-14 11:27:58 -04:00
Ben Newman
0f4aedb7fb
Call npm rebuild --update-binary in npm-rebuild.json.
2016-07-14 11:27:57 -04:00
Ben Newman
391a7a3134
Ensure parent directory exists in files.writeFileAtomically.
2016-07-14 11:27:56 -04:00
Ben Newman
69b100d21a
Save .meteor/local/resolver-result-cache.json to improve startup performance.
2016-07-14 11:27:56 -04:00
Ben Newman
ea236fc9da
Try harder to create .meteor/dev_bundle symlink.
...
May help with #7391 .
2016-07-14 11:27:55 -04:00
Ben Newman
c3e73c264c
Prevent archinfo.host() from yielding by forcing its result to be cached.
2016-07-14 11:27:55 -04:00
Ben Newman
a37d226da8
Return all packages from getProdPackageNames if package.json missing.
2016-07-14 11:27:54 -04:00
Ben Newman
934bdcf598
Rebuild binary npm packages used by compiler plugins, too.
...
Fixes #7297 .
2016-07-14 11:27:54 -04:00
Ben Newman
78fcabbd58
Always link .meteor/dev_bundle to release specified in .meteor/release.
...
I was mistaken to think that files.getDevBundle() would be called after
springboarding to the appropriate release.
2016-07-14 11:27:53 -04:00
Eli Skeggs
6c455a9321
Add --raw-logs option for meteor test ( #7398 )
...
Fixes #7396 .
2016-07-13 17:15:40 +00:00
Ben Newman
f8b1bba606
Improve .meteor/dev_bundle link reading and creation.
2016-07-10 15:39:46 -04:00
Ben Newman
74aea0ca3c
Update modules test app to Meteor 1.3.4.4.
2016-07-10 15:26:06 -04:00
Ben Newman
0689cae25a
Set loglevel = error for Npm.depends-related npm commands.
2016-07-10 10:04:50 -04:00
Ben Newman
1dac34f00c
Store .meteor/dev_bundle target as text when symbolic linking fails.
...
This wouldn't work if .meteor/dev_bundle needed to be a true symbolic
link, but fortunately we just need to record the target path in a way that
allows us to read it later.
Fixes #7374 .
2016-07-09 17:15:21 -04:00
Ben Newman
77feb7b76a
Decompose readLink and makeLink helper functions.
...
Part of #7374 .
2016-07-09 16:55:14 -04:00
Ben Newman
126b9172c7
Update modules test app to Meteor 1.3.4.3.
2016-07-08 22:07:05 -04:00
Ben Newman
b2cae10a24
Always update .meteor/dev_bundle when reading .meteor/release.
2016-07-08 13:44:06 -04:00
Ben Newman
9e6ebde836
Make sure .meteor/.gitignore ignores .meteor/dev_bundle.
...
https://github.com/meteor/meteor/pull/7340#issuecomment-231253317
2016-07-08 13:44:05 -04:00
Ben Newman
e2dbb6093e
Always call updateMeteorToolSymlink after successful update.
...
https://github.com/meteor/meteor/pull/7340#issuecomment-231254368
2016-07-08 13:44:04 -04:00
Ben Newman
817187bfc9
Bump LINKER_CACHE_SALT to trigger relinking.
2016-07-07 17:01:12 -04:00
Ben Newman
a9e8cbe267
Move Promise runtime setup into its own module.
...
Test code was requiring the install-runtime.js module without requiring
the index.js module, so global.Promise was not defined.
2016-07-07 17:01:11 -04:00
Ben Newman
7b37188279
Remove .meteor/dev_bundle if .meteor/release reads "none".
2016-07-07 16:51:04 -04:00
Ben Newman
542891b65d
Make meteor {node,npm} respect .meteor/dev_bundle when possible.
2016-07-07 15:24:25 -04:00
Ben Newman
6cd1c472d9
Create a .meteor/dev_bundle symlink when writing .meteor/release.
...
This will make it easier for `meteor node` and `meteor npm` to find the
right dev_bundle for the current application.
2016-07-07 15:24:24 -04:00
Ben Newman
b23ad6d85f
Respect .meteor/release when running meteor {npm,node} from checkout.
2016-07-07 15:24:24 -04:00
Ben Newman
eadb6e65cc
Ensure only one Promise constructor is ever used by tools code.
2016-07-07 11:04:18 -04:00
Ben Newman
f812762353
Infer dev_bundle for meteor {npm,node} from .meteor/release.
...
Fixes #7338 .
Fixes #7297 .
2016-07-06 21:00:40 -04:00
Ben Newman
9c37dbf3e5
Only write .meteor-portable files in npm package directories.
...
Also clean up any existing misplaced .meteor-portable files.
Fixes #7296 .
2016-07-06 21:00:39 -04:00
Ben Newman
c91a95cbef
Make sure meteor shell options JSON is parsed separately.
...
Also don't ignore the `error` parameter passed to the readJSONFromStream
callback function.
Fixes #7312 .
2016-07-06 21:00:39 -04:00
Ben Newman
1783559b56
Use ES2015 syntax to import JsFile and CssFile.
2016-07-06 21:00:39 -04:00
Ben Newman
9d417303c1
Symlink .meteor/local/plugin-cache in temporary test directory.
...
Because the cache directories are shared instead of copied, the results
now have a chance of surviving multiple invocations of `meteor test`.
This significantly reduces rebuild times when testing a large app; for
example, the meteor/tools/tests/apps/modules app now takes less than 10
seconds to rebuild (after restarting the process, not after a file change)
instead of 60 seconds or more.
2016-07-06 21:00:38 -04:00
Ben Newman
9865322d4c
Compute prodPackageNames lazily.
2016-07-06 21:00:38 -04:00
Ben Newman
94f9ebbdd8
Don't call nonexistent writeHead method of net.Socket objects.
2016-07-06 21:00:38 -04:00