Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

deps: upgrade npm to 2.8.3 #1448

Closed
wants to merge 3 commits into from
Closed

deps: upgrade npm to 2.8.3 #1448

wants to merge 3 commits into from

Conversation

othiym23
Copy link
Contributor

The npm team has been very busy over the last week, partially working on getting issues related to scoped modules straightened out prior to the launch of private packages on the npm, Inc. registry, but mostly to get git working as robustly as possible with npm, so I could stop thinking about it for a while. Because there were many intermediate releases as we fixed bugs, the combined changelog is massive, but I've worked hard to make the release notes readable, so:

The reason for the semver-minor version bump, taken from the 2.8.0 release notes, is:

  • EXPERIMENTAL FEATURE: Add support for github:, gist:, bitbucket:,
    and gitlab: shorthand prefixes. GitHub shortcuts will continue to be
    normalized to org/repo instead of being saved as github:org/repo, but
    gitlab:, gist:, and bitbucket: prefixes will be used on the command
    line and from package.json. BE CAREFUL WITH THIS. package.json files
    published with the new shorthand syntax can only be read by npm@2.8.0 and
    later, and this feature is mostly meant for playing around with it. If you
    want to save git dependencies in a form that older versions of npm can read,
    use --save-exact, which will save the git URL and resolved commit hash of
    the head of the branch in a manner simiilar to the way that --save-exact
    pins versions for registry dependencies. This is documented (so check npm help install for details), but we're not going to make a lot of noise about
    it until it has a chance to bake in a little more.

A large portion of the diff is changes to the tests that I made in an effort to clean them up and to make it easier for contributors to write new tests without getting confused about how they should look.

As usual, the floating node-gyp patches have been applied.

r: @Fishrock123
r: @chrisdickinson (as the 1.8.0 release leader)

othiym23 and others added 3 commits April 17, 2015 01:16
Every npm version bump requires a few patches to be floated on
node-gyp for io.js compatibility. These patches are found in
03d1992,
5de334c, and
da730c7. This commit squashes
them into a single commit.

PR-URL: nodejs#990
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
On Windows, when node or io.js attempts to dynamically load a compiled
addon, the compiled addon tries to load node.exe or iojs.exe again -
depending on which import library the module used when it was linked.
This causes many compiled addons to break when node.exe or iojs.exe are
renamed, because when the binary has been renamed the addon DLL can't
find the (right) .exe file to load its imports from.

This patch gives compiled addon developers an option to overcome this
restriction by compiling a delay-load hook into their binary. The
delay-load hook ensures that whenever a module tries to load imports
from node.exe/iojs.exe, it'll just look at the process image, thereby
making the addon work regardless of what name the node/iojs binary has.

To enable this feature, the addon developer must set the
'win_delay_load_hook' option to 'true' in their binding.gyp file, like
this:

```
{
  'targets': [
    {
      'target_name': 'ernie',
      'win_delay_load_hook': 'true',
      ...
```

Bug: nodejs#751
Bug: nodejs#965
Upstream PR: nodejs/node-gyp#599

PR-URL: nodejs#1251
Reviewed-By: Rod Vagg <rod@vagg.org>

PR-URL: nodejs#1266
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
@mscdex mscdex added the npm Issues and PRs related to the npm client dependency or the npm registry. label Apr 17, 2015
@Fishrock123
Copy link
Contributor

Hmmm, curl -L https://github.com/iojs/io.js/pull/1448.patch | git am caused a conflict with this patch in qs's readme. (same base as here).

Merging from remote worked fine though.

What tests we have seem fine.

LGTM!

@chrisdickinson
Copy link
Contributor

Echoing @Fishrock123's comments. LGTM. Merge at will.

@chrisdickinson chrisdickinson added this to the 1.8.0 milestone Apr 17, 2015
@othiym23
Copy link
Contributor Author

I'm at the Computer History Museum today, so if merging this is going to be a blocker for 1.8.0, feel free to merge on my behalf. 💻

@Fishrock123
Copy link
Contributor

Will do. Thanks again @othiym23!

othiym23 added a commit that referenced this pull request Apr 17, 2015
PR-URL: #1448
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: Chris Dickinson <christopher.s.dickinson@gmail.com>
@Fishrock123
Copy link
Contributor

Landed in 162f0ae c411515 5d36f3d

Not anymore.

@Fishrock123
Copy link
Contributor

Uh... hmmm. That qs readme file is giving some git grief still.. see #1455 ....

@chrisdickinson chrisdickinson mentioned this pull request Apr 17, 2015
chrisdickinson added a commit that referenced this pull request Apr 17, 2015
Notable Changes:

* build: Support for building io.js as a static library (Marat Abdullin) #1341
* deps: upgrade openssl to 1.0.2a (Shigeki Ohtsu) #1389
* npm: Upgrade npm to 2.8.3. (Forrest L Norvell) #1448
* src: allow multiple arguments to be passed to process.nextTick (Trevor Norris) #1077
* module: interaction of require('.') with NODE_PATH has been restored and deprecated.
  This functionality will be removed at a later point. (Roman Reiss) #1363
chrisdickinson added a commit that referenced this pull request Apr 17, 2015
Notable Changes:

* build: Support for building io.js as a static
  library (Marat Abdullin) #1341
* deps: upgrade openssl to 1.0.2a (Shigeki Ohtsu) #1389
* npm: Upgrade npm to 2.8.3. (Forrest L Norvell) #1448
* src: allow multiple arguments to be passed to
  process.nextTick (Trevor Norris) #1077
* module: the interaction of require('.') with NODE_PATH has been
  restored and deprecated. This functionality will be removed at
  a later point. (Roman Reiss) #1363
chrisdickinson added a commit that referenced this pull request Apr 20, 2015
Notable Changes:

* build: revert vcbuild.bat changes
* changes inherited from v1.8.0:
  * build: Support for building io.js as a static
    library (Marat Abdullin) #1341
  * npm: Upgrade npm to 2.8.3. (Forrest L Norvell) #1448
  * deps: upgrade openssl to 1.0.2a (Shigeki Ohtsu) #1389
  * src: allow multiple arguments to be passed to
    process.nextTick (Trevor Norris) #1077
  * module: the interaction of require('.') with NODE_PATH has been
    restored and deprecated. This functionality will be removed at
    a later point. (Roman Reiss) #1363
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
npm Issues and PRs related to the npm client dependency or the npm registry.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants