Commit Graph

6395 Commits

Author SHA1 Message Date
Ben Newman
e3e259169f Merge branch 'release-1.5.1' into release-1.6 2017-06-27 11:30:41 -04:00
Ben Newman
ac2595ad92 Merge branch 'devel' into release-1.5.1 2017-06-27 09:36:42 -04:00
Antonio Tapiador del Dujo
0b1a1ef59f Make require and module visible for meteor shell scripts 2017-06-27 09:31:43 -04:00
Antonio Tapiador del Dujo
2bcfb073c4 Remove parentheses wrapper of evaluateAndExit commmand
The prevented to run certain commands in scripts,
like `import { Foo } from './bar'`

See https://github.com/meteor/meteor/issues/8823
2017-06-27 09:31:43 -04:00
Ben Newman
d411229206 Merge branch 'devel' into release-1.5.1 2017-06-26 19:07:05 -04:00
Ben Newman
cf3c8270c6 Display PhantomJS stderr after tests finish, if not empty string. 2017-06-26 15:29:25 -04:00
Jesse Rosenberger
e2a6f397e7 Merge pull request #8842 from RickvdP/master
Updated old github wiki references to Meteor Guide/API docs
2017-06-26 14:08:39 +03:00
Rick van der Plas
e71a9e9856 Updated old github wiki references to Meteor Guide/API docs 2017-06-24 18:44:10 +02:00
Ben Newman
943c6a4d83 Merge branch 'release-1.5.1' into release-1.6 2017-06-21 14:40:01 -04:00
Ben Newman
ab338d6cd8 Don't call meteorDebugFuture.wait() unless METEOR_INSPECT_BRK is set.
Bug fixed: we should never be calling meteorDebugFuture.wait() in
production, so we now use process.env.METEOR_INSPECT_BRK in developement
to enable the waiting.

Lesson learned: if you call Fiber.yield() in the only running Fiber
without any other events scheduled on the event loop, the program will
immediately exit with code 0, as it should.

Closes #8817.
2017-06-19 14:32:52 -04:00
Ben Newman
85ee23cfa5 Stop using Object.create to clone process.env in npm-rebuild.js.
Fixes #8808.
2017-06-19 12:29:13 -04:00
Jesse Rosenberger
a05be9a600 Merge branch 'devel' into additional-packages-option 2017-06-19 14:58:37 +03:00
Rick
c6f80b9502 Updated doc URLs 2017-06-19 12:00:35 +02:00
Ben Newman
ab4f54c49a Revert unnecessary npm_config_disturl overrides. 2017-06-15 09:40:11 -04:00
Ben Newman
175ee4885b Always spawn app process with IPC to enable proc.send(message). 2017-06-14 19:38:50 -04:00
Ben Newman
8550412bb0 Reimplement meteor debug using the Node 8 inspector.
This is the feature that excites me most about Meteor 1.6, hands down.

Benefits include:

* Works with `meteor test[-packages] --debug-port 9229` (for tests), as
  well as just `meteor debug` (for apps).

* The application process waits patiently for the debugger to attach, so
  you don't have to race to open the debugger.

* The application process pauses at a location just after all server code
  has been evaluated, but before any code starts executing, giving you a
  chance to set reliable breakpoints anywhere in server code. This is much
  better than using the `node --inspect-brk` flag, since that stops too
  soon to set any useful breakpoints.

* The application server runs at full speed, so you don't have to wait
  forever to hit that all-important breakpoint, and you don't lose nearly
  as much time if you accidentally continue past the line of code where
  the trouble is occurring.

* Even if your application is stuck in an infinite loop, you can still
  attach the debugger, pause execution, and debug the loop.

* No more `node-inspector`! Instead, you can now debug your server code in
  native Chrome DevTools, or several other high-quality inspector clients,
  such as VS Code or WebStorm (seriously, check out the documentation:
  https://nodejs.org/en/docs/inspector/#inspector-tools-clients). The list
  of debuggable processes can be found at the URL chrome://inspect.

* Realistic performance and memory profiling is now possible via the
  familiar DevTools interface.

* I highly recommend this Chrome extension that automatically (re)connects
  to any open inspector sockets, so you don't have to keep manually
  (re)attaching the debugger: http://june07.com/nim

* The implementation of `meteor debug` no longer has to proxy multiple
  private/public debugger ports. Look at all that deleted code!

This new inspector is so much better than the old `node-inspector` that
I've been using the release-1.6 branch to debug problems in Meteor 1.5,
despite the risks of using Node 8, because those risks are so far
outweighed by the quality of the new debugging experience.

That said, the experience isn't perfect (yet). I welcome your feedback on
the Meteor 1.6 PR: https://github.com/meteor/meteor/pull/8728
2017-06-14 19:08:40 -04:00
Ben Newman
92b6d48960 Set disturl safely for meteor npm and Meteor package .npm management. 2017-06-14 12:18:39 -04:00
Ben Newman
7f44db91db Revert "Work around a Node 8.1.0 regression that broke meteor login."
This reverts commit dd11432722.

This bug that necessitated this workaround was fixed by
https://github.com/nodejs/node/pull/13560, as mentioned in
https://nodejs.org/en/blog/release/v8.1.1/.
2017-06-14 11:33:34 -04:00
Michał Powaga
ec78bdb8ce Remove redundant empty line 2017-06-14 15:42:35 +01:00
Michał Powaga
4d106db287 Fix formatting 2017-06-14 15:38:53 +01:00
Ben Newman
48deea984d Update node-gyp and node-pre-gyp to latest versions. 2017-06-13 19:33:27 -04:00
Ben Newman
7e1d4ba6a1 Don't skip reinstalling unchanged Npm.depends-style dependencies. (#8787)
Fixes #8732.
Should also fix #8747.
2017-06-12 16:59:34 -04:00
Ben Newman
85cc9f2407 Don't skip reinstalling unchanged Npm.depends-style dependencies.
Fixes #8732.
Should also fix #8747.
2017-06-12 14:44:51 -04:00
Ben Newman
dd11432722 Work around a Node 8.1.0 regression that broke meteor login. 2017-06-09 10:02:34 -04:00
Michał Powaga
e6a53ee564 Update help.txt 2017-06-08 23:30:36 +01:00
Michał Powaga
7239bf5ec2 Add --extra-packages option to test and test-packages commands 2017-06-08 23:26:47 +01:00
Jesse Rosenberger
f244a5b0c6 Change runInThisContext to Script.prototype.runInThisContext. (#8771)
This actually changed ages ago, in Node.js 0.11 via
fd3657610e
however the descriptive error message, which was previously
enabled with `true` as the third argument, was silently lost.

This reimplements the descriptive error message as mentioned in
https://github.com/meteor/meteor/issues/3200#issuecomment-289685677 by
@d-schiffner.
2017-06-08 18:07:04 -04:00
Michał Powaga
4c236dd69e --extra-packages now overrides .meteor/packages constraints 2017-06-08 16:21:09 +01:00
Michał Powaga
4c45c28a92 Remove unnecessary file 2017-06-08 11:08:48 +01:00
Michał Powaga
809179b725 Add example to help command 2017-06-08 11:02:27 +01:00
Michał Powaga
0f6f9d5ebf Trim input when parsing --extra-packages 2017-06-08 10:59:14 +01:00
Michał Powaga
a276af1706 Add selftest 2017-06-08 10:56:56 +01:00
Michał Powaga
dd19865a1e Add --extra-packages option 2017-06-06 23:24:42 +01:00
Ben Newman
77843cdb28 Throttle requestGarbageCollection to once per 500ms.
With Meteor 1.6 / Node 8, I noticed _buildLocalPackages taking multiple
seconds on initial server startup and restart, and the problem seems to be
that we call the global.gc function too often. This wasn't a problem in
previous versions of Node, as far as I know, but it makes sense to heed
the comment in tools/utils/gc.js, now that it matters.
2017-06-06 12:52:09 -04:00
Ben Newman
6f925b0103 Merge branch 'devel' into release-1.6 2017-06-06 12:51:50 -04:00
Ben Newman
cdc047bbc7 Update unicode asset sanitization tests (and History.md). 2017-06-06 12:25:33 -04:00
Ben Newman
a2f26cbe6e Fix #8761 in three different ways.
The root of the problem was that the es5-ext npm package contains
directories called '#', e.g.
https://github.com/medikoo/es5-ext/tree/master/array/%23

These directory names were being sanitized to '' and thus ignored when
reserving paths in the Builder, which led to reservation conflicts later.

This commit fixes the problem in three different and independently
sufficient ways:

* Use files.mkdir_p instead of files.mkdir when creating parent
  directories of written files.

* Replace illegal characters in sanitized paths with '_' instead of ''.

* Allow '#' in sanitized paths (only needs to be escaped in the shell, not
  actually forbidden in paths).
2017-06-06 12:25:33 -04:00
Ben Newman
b3b464b614 Miscellaneous updates due to changes between Node 5 and 7.
https://github.com/nodejs/node/wiki/Breaking-changes-between-v5-and-v6
https://github.com/nodejs/node/wiki/Breaking-changes-between-v6-and-v7
2017-06-05 18:57:52 -04:00
Ben Newman
6418026e15 Update all new Buffer usage to Buffer.from for Node 6+.
https://github.com/nodejs/node/wiki/Breaking-changes-between-v5-and-v6
2017-06-05 18:16:03 -04:00
Ben Newman
9e0ec68181 Merge branch 'devel' into release-1.6 2017-06-05 17:40:41 -04:00
Ben Newman
40f1d99e2c Stop polyfilling global.Buffer in modules test app. 2017-06-02 16:37:19 -04:00
Ben Newman
929fa0e90e Test that require("module") returns Module constructor on the client.
On the server, require("module") returns Node's native Module constructor,
which is not the same as module.constructor in our server JS bundle.
2017-06-02 16:26:54 -04:00
Ben Newman
a7feffd5a6 Upgrade the modules test app to Meteor 1.5. 2017-06-02 14:31:37 -04:00
Ben Newman
9c5293b6e2 Upgrade the dynamic-import test app to Meteor 1.5. 2017-06-02 14:25:46 -04:00
Ben Newman
a2aec7becf Add a failing test of dynamic imports from user:name packages.
Confirms #8751.
2017-06-02 10:45:24 -04:00
Hugh Willson
a4c3e335eb Merge pull request #8684 from paulincai/patch-1
Update to present media object sizes
2017-05-31 11:28:01 -04:00
Ben Newman
0d7c9e8481 Merge branch 'wip-upgrade-to-node-6' into release-1.6 2017-05-30 15:41:12 -04:00
Ben Newman
da097e209d Bump LINKER_CACHE_SALT and compiler.BUILT_BY for good measure. 2017-05-30 14:16:46 -04:00
Ben Newman
1df6668cc9 Test that importing the winston npm package works now.
This is a test that should have accompanied my previous commit
81a07ed84f.
2017-05-29 19:37:33 -04:00
James
6445a44001 Clarify meteor update message for indirect dependencies
* Adjust string style to be in line with meteor style guide 6.2

* Partially addresses #8721 #8488
2017-05-29 14:41:00 -04:00