diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 00000000000000..d827391361741b --- /dev/null +++ b/.travis.yml @@ -0,0 +1,36 @@ +language: cpp +sudo: false +dist: trusty + +os: + - linux + - osx + +compiler: + - gcc + - clang + +cache: + directories: + - out/Release + +matrix: + exclude: + - os: osx + compiler: gcc + +addons: + apt: + sources: + - ubuntu-toolchain-r-test + packages: + - g++-4.9 + +before_install: + - if [ $TRAVIS_OS_NAME == linux ]; then CC=gcc-4.9 && CXX=g++-4.9; fi + +before_script: + - ./configure --shared + +script: + - make -j5 diff --git a/CHANGELOG.md b/CHANGELOG.md index d2d57b97673282..13fc70bcb8b3d5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ release lines. Select a Node.js version below to view the changelog history: +* [Node.js 9](doc/changelogs/CHANGELOG_V9.md) * [Node.js 8](doc/changelogs/CHANGELOG_V8.md) * [Node.js 7](doc/changelogs/CHANGELOG_V7.md) * [Node.js 6](doc/changelogs/CHANGELOG_V6.md) @@ -20,14 +21,18 @@ release. - - + + + -
8Current7-9Current8LTS 6LTS 4LTS
-8.8.1
+9.0.0
+
+8.9.0
+8.8.1
8.8.0
8.7.0
8.6.0
@@ -43,25 +48,6 @@ release. 8.1.0
8.0.0
-7.10.1
-7.10.0
-7.9.0
-7.8.0
-7.7.4
-7.7.3
-7.7.2
-7.7.1
-7.7.0
-7.6.0
-7.5.0
-7.4.0
-7.3.0
-7.2.1
-7.2.0
-7.1.0
-7.0.0
-
6.11.5
6.11.4
diff --git a/LIB_USAGE.md b/LIB_USAGE.md new file mode 100644 index 00000000000000..0edca55a1f32aa --- /dev/null +++ b/LIB_USAGE.md @@ -0,0 +1,46 @@ +## How to use Node.js as a C++ library +### Handling the Node.js event loop +There are two different ways of handling the Node.js event loop. +#### C++ keeps control over thread +By calling `node::lib::ProcessEvents()`, the Node.js event loop will be run once, handling the next pending event. The return value of the call specifies whether there are more events in the queue. + +#### C++ gives up control of the thread to Node.js +By calling `node::lib::RunEventLoop(callback)`, the C++ host program gives up the control of the thread and allows the Node.js event loop to run until no more events are in the queue or `node::lib::StopEventLoop()` is called. The `callback` parameter in the `RunEventLoop` function is called once per event loop. This allows the C++ programmer to react on changes in the Node.js state and e.g. terminate Node.js preemptively. + +### Examples + +In the following, simple examples demonstrate the usage of Node.js as a library. For more complex examples, including handling of the event loop, see the [node-embed](https://github.com/hpicgs/node-embed) repository. + +#### (1) Evaluating in-line JavaScript code +This example evaluates multiple lines of JavaScript code in the global Node context. The result of `console.log` is piped to the stdout. + +```C++ +node::lib::Initialize("example01"); +node::lib::Evaluate("var helloMessage = 'Hello from Node.js!';"); +node::lib::Evaluate("console.log(helloMessage);"); +``` + +#### (2) Running a JavaScript file +This example evaluates a JavaScript file and lets Node handle all pending events until the event loop is empty. + +```C++ +node::lib::Initialize("example02"); +node::lib::Run("cli.js"); +while (node::lib::ProcessEvents()) { } +``` + + +#### (3) Including an NPM Module +This example uses the [fs](https://nodejs.org/api/fs.html) module to check whether a specific file exists. +```C++ +node::lib::Initialize("example03"); +auto fs = node::lib::IncludeModule("fs"); +v8::Isolate *isolate = node::lib::internal::isolate(); + +// Check if file cli.js exists in the current working directory. +auto result = node::lib::Call(fs, "existsSync", {v8::String::NewFromUtf8(isolate, "cli.js")}); + +auto file_exists = v8::Local::Cast(result)->BooleanValue(); +std::cout << (file_exists ? "cli.js exists in cwd" : "cli.js does NOT exist in cwd") << std::endl; + +``` diff --git a/LICENSE b/LICENSE index 9257e71df68ca0..a34f642b3cb053 100644 --- a/LICENSE +++ b/LICENSE @@ -1119,3 +1119,29 @@ The externally maintained libraries used by Node.js are: OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """ + +- remark-cli, located at tools/remark-cli, is licensed as follows: + """ + (The MIT License) + + Copyright (c) 2014-2016 Titus Wormer + Copyright (c) 2011-2014, Christopher Jeffrey (https://github.com/chjj/) + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + """ diff --git a/README.md b/README.md index 339c74e2d9919b..409bbee02830c7 100644 --- a/README.md +++ b/README.md @@ -1,587 +1,16 @@ -

- - Node.js - -

-

- -

+# Node.js: Embedding in C++ [![Build Status](https://travis-ci.org/hpicgs/node.svg?branch=node_lib)](https://travis-ci.org/hpicgs/node) -Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js -uses an event-driven, non-blocking I/O model that makes it lightweight and -efficient. The Node.js package ecosystem, [npm][], is the largest ecosystem of -open source libraries in the world. +This fork proposes changes to node.js' shared library interface to allow for a easier and more flexible development experience when embedding node.js into C++ applications. This project is a work in progress in the "Advanced Development in C++" project seminar at Hasso Platter Institute's Chair of Computer Graphics Systems. -The Node.js project is supported by the -[Node.js Foundation](https://nodejs.org/en/foundation/). Contributions, -policies, and releases are managed under an -[open governance model](./GOVERNANCE.md). +For example applications showing how to use node's current embedding interface, as well as examples for our proposed new interface, please visit [this repository](https://github.com/hpicgs/node-embed). -**This project is bound by a [Code of Conduct][].** +For information concerning the setup, usage etc. of this project, please read the [wiki](https://github.com/hpicgs/node/wiki) (work in progress). -If you need help using or installing Node.js, please use the -[nodejs/help](https://github.com/nodejs/help) issue tracker. +### Building Node as _shared library_ +#### Linux -# Table of Contents - -* [Resources for Newcomers](#resources-for-newcomers) -* [Release Types](#release-types) - * [Download](#download) - * [Current and LTS Releases](#current-and-lts-releases) - * [Nightly Releases](#nightly-releases) - * [API Documentation](#api-documentation) - * [Verifying Binaries](#verifying-binaries) -* [Building Node.js](#building-nodejs) - * [Security](#security) - * [Current Project Team Members](#current-project-team-members) - * [TSC (Technical Steering Committee)](#tsc-technical-steering-committee) - * [Collaborators](#collaborators) - * [Release Team](#release-team) - -## Resources for Newcomers - -### Official Resources - -* [Website][] -* [Node.js Help][] -* [Contributing to the project][] -* IRC (node core development): [#node-dev on chat.freenode.net][] - -### Unofficial Resources - -* IRC (general questions): [#node.js on chat.freenode.net][]. Please see - for more information regarding the `#node.js` IRC -channel. - -_Please note that unofficial resources are neither managed by (nor necessarily -endorsed by) the Node.js TSC. Specifically, such resources are not -currently covered by the [Node.js Moderation Policy][] and the selection and -actions of resource operators/moderators are not subject to TSC oversight._ - -## Release Types - -The Node.js project maintains multiple types of releases: - -* **Current**: Released from active development branches of this repository, - versioned by [SemVer](http://semver.org/) and signed by a member of the - [Release Team](#release-team). - Code for Current releases is organized in this repository by major version - number. For example: [v4.x](https://github.com/nodejs/node/tree/v4.x). - The major version number of Current releases will increment every 6 months - allowing for breaking changes to be introduced. This happens in April and - October every year. Current release lines beginning in October each year have - a maximum support life of 8 months. Current release lines beginning in April - each year will convert to LTS (see below) after 6 months and receive further - support for 30 months. -* **LTS**: Releases that receive Long-term Support, with a focus on stability - and security. Every second Current release line (major version) will become an - LTS line and receive 18 months of _Active LTS_ support and a further 12 - months of _Maintenance_. LTS release lines are given alphabetically - ordered codenames, beginning with v4 Argon. LTS releases are less frequent - and will attempt to maintain consistent major and minor version numbers, - only incrementing patch version numbers. There are no breaking changes or - feature additions, except in some special circumstances. -* **Nightly**: Versions of code in this repository on the current Current - branch, automatically built every 24-hours where changes exist. Use with - caution. - -More information can be found in the [LTS README](https://github.com/nodejs/LTS/). - -## Download - -Binaries, installers, and source tarballs are available at -. - -#### Current and LTS Releases -**Current** and **LTS** releases are available at -, listed under their version strings. -The [latest](https://nodejs.org/download/release/latest/) directory is an -alias for the latest Current release. The latest LTS release from an LTS -line is available in the form: latest-_codename_. For example: -. - -#### Nightly Releases -**Nightly** builds are available at -, listed under their version -string which includes their date (in UTC time) and the commit SHA at -the HEAD of the release. - -#### API Documentation -**API documentation** is available in each release and nightly -directory under _docs_. points to the API -documentation of the latest stable version. - -### Verifying Binaries - -Current, LTS and Nightly download directories all contain a _SHASUMS256.txt_ -file that lists the SHA checksums for each file available for -download. - -The _SHASUMS256.txt_ can be downloaded using curl. - -```console -$ curl -O https://nodejs.org/dist/vx.y.z/SHASUMS256.txt -``` - -To check that a downloaded file matches the checksum, run -it through `sha256sum` with a command such as: - -```console -$ grep node-vx.y.z.tar.gz SHASUMS256.txt | sha256sum -c - -``` - -_(Where "node-vx.y.z.tar.gz" is the name of the file you have -downloaded)_ - -Additionally, Current and LTS releases (not Nightlies) have the GPG -detached signature of SHASUMS256.txt available as SHASUMS256.txt.sig. -You can use `gpg` to verify that SHASUMS256.txt has not been tampered with. - -To verify SHASUMS256.txt has not been altered, you will first need to import -all of the GPG keys of individuals authorized to create releases. They are -listed at the bottom of this README under [Release Team](#release-team). -Use a command such as this to import the keys: - -```console -$ gpg --keyserver pool.sks-keyservers.net --recv-keys DD8F2338BAE7501E3DD5AC78C273792F7D83545D ``` - -_(See the bottom of this README for a full script to import active -release keys)_ - -Next, download the SHASUMS256.txt.sig for the release: - -```console -$ curl -O https://nodejs.org/dist/vx.y.z/SHASUMS256.txt.sig +./configure --shared +make -j4 ``` - -After downloading the appropriate SHASUMS256.txt and SHASUMS256.txt.sig files, -you can then use `gpg --verify SHASUMS256.txt.sig SHASUMS256.txt` to verify -that the file has been signed by an authorized member of the Node.js team. - -Once verified, use the SHASUMS256.txt file to get the checksum for -the binary verification command above. - -## Building Node.js - -See [BUILDING.md](BUILDING.md) for instructions on how to build -Node.js from source. The document also contains a list of -officially supported platforms. - -## Security - -All security bugs in Node.js are taken seriously and should be reported by -emailing security@nodejs.org. This will be delivered to a subset of the project -team who handle security issues. Please don't disclose security bugs -publicly until they have been handled by the security team. - -Your email will be acknowledged within 24 hours, and you’ll receive a more -detailed response to your email within 48 hours indicating the next steps in -handling your report. - -There are no hard and fast rules to determine if a bug is worth reporting as -a security issue. The general rule is any issue worth reporting -must allow an attacker to compromise the confidentiality, integrity -or availability of the Node.js application or its system for which the attacker -does not already have the capability. - -To illustrate the point, here are some examples of past issues and what the -Security Reponse Team thinks of them. When in doubt, however, please do send -us a report nonetheless. - - -### Public disclosure preferred - -- [#14519](https://github.com/nodejs/node/issues/14519): _Internal domain - function can be used to cause segfaults_. Causing program termination using - either the public Javascript APIs or the private bindings layer APIs requires - the ability to execute arbitrary Javascript code, which is already the highest - level of privilege possible. - -- [#12141](https://github.com/nodejs/node/pull/12141): _buffer: zero fill - Buffer(num) by default_. The buffer constructor behaviour was documented, - but found to be prone to [mis-use](https://snyk.io/blog/exploiting-buffer/). - It has since been changed, but despite much debate, was not considered misuse - prone enough to justify fixing in older release lines and breaking our - API stability contract. - -### Private disclosure preferred - -- [CVE-2016-7099](https://nodejs.org/en/blog/vulnerability/september-2016-security-releases/): - _Fix invalid wildcard certificate validation check_. This is a high severity - defect that would allow a malicious TLS server to serve an invalid wildcard - certificate for its hostname and be improperly validated by a Node.js client. - -- [#5507](https://github.com/nodejs/node/pull/5507): _Fix a defect that makes - the CacheBleed Attack possible_. Many, though not all, OpenSSL vulnerabilities - in the TLS/SSL protocols also effect Node.js. - -- [CVE-2016-2216](https://nodejs.org/en/blog/vulnerability/february-2016-security-releases/): - _Fix defects in HTTP header parsing for requests and responses that can allow - response splitting_. While the impact of this vulnerability is application and - network dependent, it is remotely exploitable in the HTTP protocol. - -When in doubt, please do send us a report. - - -## Current Project Team Members - -The Node.js project team comprises a group of core collaborators and a sub-group -that forms the _Technical Steering Committee_ (TSC) which governs the project. -For more information about the governance of the Node.js project, see -[GOVERNANCE.md](./GOVERNANCE.md). - -### TSC (Technical Steering Committee) - -* [addaleax](https://github.com/addaleax) - -**Anna Henningsen** <anna@addaleax.net> (she/her) -* [ChALkeR](https://github.com/ChALkeR) - -**Сковорода Никита Андреевич** <chalkerx@gmail.com> (he/him) -* [cjihrig](https://github.com/cjihrig) - -**Colin Ihrig** <cjihrig@gmail.com> -* [evanlucas](https://github.com/evanlucas) - -**Evan Lucas** <evanlucas@me.com> (he/him) -* [fhinkel](https://github.com/fhinkel) - -**Franziska Hinkelmann** <franziska.hinkelmann@gmail.com> (she/her) -* [Fishrock123](https://github.com/Fishrock123) - -**Jeremiah Senkpiel** <fishrock123@rocketmail.com> -* [indutny](https://github.com/indutny) - -**Fedor Indutny** <fedor.indutny@gmail.com> -* [jasnell](https://github.com/jasnell) - -**James M Snell** <jasnell@gmail.com> (he/him) -* [joshgav](https://github.com/joshgav) - -**Josh Gavant** <josh.gavant@outlook.com> -* [joyeecheung](https://github.com/joyeecheung) - -**Joyee Cheung** <joyeec9h3@gmail.com> (she/her) -* [mcollina](https://github.com/mcollina) - -**Matteo Collina** <matteo.collina@gmail.com> (he/him) -* [mhdawson](https://github.com/mhdawson) - -**Michael Dawson** <michael_dawson@ca.ibm.com> (he/him) -* [mscdex](https://github.com/mscdex) - -**Brian White** <mscdex@mscdex.net> -* [MylesBorins](https://github.com/MylesBorins) - -**Myles Borins** <myles.borins@gmail.com> (he/him) -* [ofrobots](https://github.com/ofrobots) - -**Ali Ijaz Sheikh** <ofrobots@google.com> -* [rvagg](https://github.com/rvagg) - -**Rod Vagg** <rod@vagg.org> -* [targos](https://github.com/targos) - -**Michaël Zasso** <targos@protonmail.com> (he/him) -* [thefourtheye](https://github.com/thefourtheye) - -**Sakthipriyan Vairamani** <thechargingvolcano@gmail.com> (he/him) -* [trevnorris](https://github.com/trevnorris) - -**Trevor Norris** <trev.norris@gmail.com> -* [Trott](https://github.com/Trott) - -**Rich Trott** <rtrott@gmail.com> (he/him) - -### TSC Emeriti - -* [bnoordhuis](https://github.com/bnoordhuis) - -**Ben Noordhuis** <info@bnoordhuis.nl> -* [chrisdickinson](https://github.com/chrisdickinson) - -**Chris Dickinson** <christopher.s.dickinson@gmail.com> -* [isaacs](https://github.com/isaacs) - -**Isaac Z. Schlueter** <i@izs.me> -* [nebrius](https://github.com/nebrius) - -**Bryan Hughes** <bryan@nebri.us> -* [orangemocha](https://github.com/orangemocha) - -**Alexis Campailla** <orangemocha@nodejs.org> -* [piscisaureus](https://github.com/piscisaureus) - -**Bert Belder** <bertbelder@gmail.com> -* [shigeki](https://github.com/shigeki) - -**Shigeki Ohtsu** <ohtsu@ohtsu.org> (he/him) - -### Collaborators - -* [abouthiroppy](https://github.com/abouthiroppy) - -**Yuta Hiroto** <hello@about-hiroppy.com> (he/him) -* [addaleax](https://github.com/addaleax) - -**Anna Henningsen** <anna@addaleax.net> (she/her) -* [ak239](https://github.com/ak239) - -**Aleksei Koziatinskii** <ak239spb@gmail.com> -* [andrasq](https://github.com/andrasq) - -**Andras** <andras@kinvey.com> -* [AndreasMadsen](https://github.com/AndreasMadsen) - -**Andreas Madsen** <amwebdk@gmail.com> (he/him) -* [AnnaMag](https://github.com/AnnaMag) - -**Anna M. Kedzierska** <anna.m.kedzierska@gmail.com> -* [apapirovski](https://github.com/apapirovski) - -**Anatoli Papirovski** <apapirovski@mac.com> (he/him) -* [aqrln](https://github.com/aqrln) - -**Alexey Orlenko** <eaglexrlnk@gmail.com> (he/him) -* [bengl](https://github.com/bengl) - -**Bryan English** <bryan@bryanenglish.com> (he/him) -* [benjamingr](https://github.com/benjamingr) - -**Benjamin Gruenbaum** <benjamingr@gmail.com> -* [bmeck](https://github.com/bmeck) - -**Bradley Farias** <bradley.meck@gmail.com> -* [bmeurer](https://github.com/bmeurer) - -**Benedikt Meurer** <benedikt.meurer@gmail.com> -* [bnoordhuis](https://github.com/bnoordhuis) - -**Ben Noordhuis** <info@bnoordhuis.nl> -* [brendanashworth](https://github.com/brendanashworth) - -**Brendan Ashworth** <brendan.ashworth@me.com> -* [BridgeAR](https://github.com/BridgeAR) - -**Ruben Bridgewater** <ruben@bridgewater.de> -* [bzoz](https://github.com/bzoz) - -**Bartosz Sosnowski** <bartosz@janeasystems.com> -* [calvinmetcalf](https://github.com/calvinmetcalf) - -**Calvin Metcalf** <calvin.metcalf@gmail.com> -* [ChALkeR](https://github.com/ChALkeR) - -**Сковорода Никита Андреевич** <chalkerx@gmail.com> (he/him) -* [chrisdickinson](https://github.com/chrisdickinson) - -**Chris Dickinson** <christopher.s.dickinson@gmail.com> -* [cjihrig](https://github.com/cjihrig) - -**Colin Ihrig** <cjihrig@gmail.com> -* [claudiorodriguez](https://github.com/claudiorodriguez) - -**Claudio Rodriguez** <cjrodr@yahoo.com> -* [danbev](https://github.com/danbev) - -**Daniel Bevenius** <daniel.bevenius@gmail.com> -* [DavidCai1993](https://github.com/DavidCai1993) - -**David Cai** <davidcai1993@yahoo.com> (he/him) -* [edsadr](https://github.com/edsadr) - -**Adrian Estrada** <edsadr@gmail.com> (he/him) -* [eljefedelrodeodeljefe](https://github.com/eljefedelrodeodeljefe) - -**Robert Jefe Lindstaedt** <robert.lindstaedt@gmail.com> -* [estliberitas](https://github.com/estliberitas) - -**Alexander Makarenko** <estliberitas@gmail.com> -* [eugeneo](https://github.com/eugeneo) - -**Eugene Ostroukhov** <eostroukhov@google.com> -* [evanlucas](https://github.com/evanlucas) - -**Evan Lucas** <evanlucas@me.com> (he/him) -* [fhinkel](https://github.com/fhinkel) - -**Franziska Hinkelmann** <franziska.hinkelmann@gmail.com> (she/her) -* [firedfox](https://github.com/firedfox) - -**Daniel Wang** <wangyang0123@gmail.com> -* [Fishrock123](https://github.com/Fishrock123) - -**Jeremiah Senkpiel** <fishrock123@rocketmail.com> -* [gabrielschulhof](https://github.com/gabrielschulhof) - -**Gabriel Schulhof** <gabriel.schulhof@intel.com> -* [geek](https://github.com/geek) - -**Wyatt Preul** <wpreul@gmail.com> -* [gibfahn](https://github.com/gibfahn) - -**Gibson Fahnestock** <gibfahn@gmail.com> (he/him) -* [gireeshpunathil](https://github.com/gireeshpunathil) - -**Gireesh Punathil** <gpunathi@in.ibm.com> (he/him) -* [iarna](https://github.com/iarna) - -**Rebecca Turner** <me@re-becca.org> -* [imran-iq](https://github.com/imran-iq) - -**Imran Iqbal** <imran@imraniqbal.org> -* [imyller](https://github.com/imyller) - -**Ilkka Myller** <ilkka.myller@nodefield.com> -* [indutny](https://github.com/indutny) - -**Fedor Indutny** <fedor.indutny@gmail.com> -* [italoacasas](https://github.com/italoacasas) - -**Italo A. Casas** <me@italoacasas.com> (he/him) -* [JacksonTian](https://github.com/JacksonTian) - -**Jackson Tian** <shyvo1987@gmail.com> -* [jasnell](https://github.com/jasnell) - -**James M Snell** <jasnell@gmail.com> (he/him) -* [jasongin](https://github.com/jasongin) - -**Jason Ginchereau** <jasongin@microsoft.com> -* [jbergstroem](https://github.com/jbergstroem) - -**Johan Bergström** <bugs@bergstroem.nu> -* [jhamhader](https://github.com/jhamhader) - -**Yuval Brik** <yuval@brik.org.il> -* [jkrems](https://github.com/jkrems) - -**Jan Krems** <jan.krems@gmail.com> (he/him) -* [joaocgreis](https://github.com/joaocgreis) - -**João Reis** <reis@janeasystems.com> -* [joshgav](https://github.com/joshgav) - -**Josh Gavant** <josh.gavant@outlook.com> -* [joyeecheung](https://github.com/joyeecheung) - -**Joyee Cheung** <joyeec9h3@gmail.com> (she/her) -* [julianduque](https://github.com/julianduque) - -**Julian Duque** <julianduquej@gmail.com> (he/him) -* [JungMinu](https://github.com/JungMinu) - -**Minwoo Jung** <minwoo@nodesource.com> (he/him) -* [kfarnung](https://github.com/kfarnung) - -**Kyle Farnung** <kfarnung@microsoft.com> (he/him) -* [kunalspathak](https://github.com/kunalspathak) - -**Kunal Pathak** <kunal.pathak@microsoft.com> -* [lance](https://github.com/lance) - -**Lance Ball** <lball@redhat.com> -* [lpinca](https://github.com/lpinca) - -**Luigi Pinca** <luigipinca@gmail.com> (he/him) -* [lucamaraschi](https://github.com/lucamaraschi) - -**Luca Maraschi** <luca.maraschi@gmail.com> (he/him) -* [matthewloring](https://github.com/matthewloring) - -**Matthew Loring** <mattloring@google.com> -* [mcollina](https://github.com/mcollina) - -**Matteo Collina** <matteo.collina@gmail.com> (he/him) -* [mhdawson](https://github.com/mhdawson) - -**Michael Dawson** <michael_dawson@ca.ibm.com> (he/him) -* [micnic](https://github.com/micnic) - -**Nicu Micleușanu** <micnic90@gmail.com> (he/him) -* [mikeal](https://github.com/mikeal) - -**Mikeal Rogers** <mikeal.rogers@gmail.com> -* [misterdjules](https://github.com/misterdjules) - -**Julien Gilli** <jgilli@nodejs.org> -* [mscdex](https://github.com/mscdex) - -**Brian White** <mscdex@mscdex.net> -* [MylesBorins](https://github.com/MylesBorins) - -**Myles Borins** <myles.borins@gmail.com> (he/him) -* [not-an-aardvark](https://github.com/not-an-aardvark) - -**Teddy Katz** <teddy.katz@gmail.com> -* [ofrobots](https://github.com/ofrobots) - -**Ali Ijaz Sheikh** <ofrobots@google.com> -* [orangemocha](https://github.com/orangemocha) - -**Alexis Campailla** <orangemocha@nodejs.org> -* [othiym23](https://github.com/othiym23) - -**Forrest L Norvell** <ogd@aoaioxxysz.net> (he/him) -* [phillipj](https://github.com/phillipj) - -**Phillip Johnsen** <johphi@gmail.com> -* [pmq20](https://github.com/pmq20) - -**Minqi Pan** <pmq2001@gmail.com> -* [princejwesley](https://github.com/princejwesley) - -**Prince John Wesley** <princejohnwesley@gmail.com> -* [Qard](https://github.com/Qard) - -**Stephen Belanger** <admin@stephenbelanger.com> (he/him) -* [refack](https://github.com/refack) - -**Refael Ackermann** <refack@gmail.com> (he/him) -* [richardlau](https://github.com/richardlau) - -**Richard Lau** <riclau@uk.ibm.com> -* [rmg](https://github.com/rmg) - -**Ryan Graham** <r.m.graham@gmail.com> -* [robertkowalski](https://github.com/robertkowalski) - -**Robert Kowalski** <rok@kowalski.gd> -* [romankl](https://github.com/romankl) - -**Roman Klauke** <romaaan.git@gmail.com> -* [ronkorving](https://github.com/ronkorving) - -**Ron Korving** <ron@ronkorving.nl> -* [RReverser](https://github.com/RReverser) - -**Ingvar Stepanyan** <me@rreverser.com> -* [rvagg](https://github.com/rvagg) - -**Rod Vagg** <rod@vagg.org> -* [saghul](https://github.com/saghul) - -**Saúl Ibarra Corretgé** <saghul@gmail.com> -* [sam-github](https://github.com/sam-github) - -**Sam Roberts** <vieuxtech@gmail.com> -* [santigimeno](https://github.com/santigimeno) - -**Santiago Gimeno** <santiago.gimeno@gmail.com> -* [sebdeckers](https://github.com/sebdeckers) - -**Sebastiaan Deckers** <sebdeckers83@gmail.com> -* [seishun](https://github.com/seishun) - -**Nikolai Vavilov** <vvnicholas@gmail.com> -* [shigeki](https://github.com/shigeki) - -**Shigeki Ohtsu** <ohtsu@ohtsu.org> (he/him) -* [silverwind](https://github.com/silverwind) - -**Roman Reiss** <me@silverwind.io> -* [srl295](https://github.com/srl295) - -**Steven R Loomis** <srloomis@us.ibm.com> -* [stefanmb](https://github.com/stefanmb) - -**Stefan Budeanu** <stefan@budeanu.com> -* [targos](https://github.com/targos) - -**Michaël Zasso** <targos@protonmail.com> (he/him) -* [thefourtheye](https://github.com/thefourtheye) - -**Sakthipriyan Vairamani** <thechargingvolcano@gmail.com> (he/him) -* [thekemkid](https://github.com/thekemkid) - -**Glen Keane** <glenkeane.94@gmail.com> (he/him) -* [thlorenz](https://github.com/thlorenz) - -**Thorsten Lorenz** <thlorenz@gmx.de> -* [TimothyGu](https://github.com/TimothyGu) - -**Timothy Gu** <timothygu99@gmail.com> (he/him) -* [tniessen](https://github.com/tniessen) - -**Tobias Nießen** <tniessen@tnie.de> -* [trevnorris](https://github.com/trevnorris) - -**Trevor Norris** <trev.norris@gmail.com> -* [Trott](https://github.com/Trott) - -**Rich Trott** <rtrott@gmail.com> (he/him) -* [tunniclm](https://github.com/tunniclm) - -**Mike Tunnicliffe** <m.j.tunnicliffe@gmail.com> -* [vkurchatkin](https://github.com/vkurchatkin) - -**Vladimir Kurchatkin** <vladimir.kurchatkin@gmail.com> -* [vsemozhetbyt](https://github.com/vsemozhetbyt) - -**Vse Mozhet Byt** <vsemozhetbyt@gmail.com> (he/him) -* [watilde](https://github.com/watilde) - -**Daijiro Wachi** <daijiro.wachi@gmail.com> (he/him) -* [whitlockjc](https://github.com/whitlockjc) - -**Jeremy Whitlock** <jwhitlock@apache.org> -* [XadillaX](https://github.com/XadillaX) - -**Khaidi Chu** <i@2333.moe> (he/him) -* [yorkie](https://github.com/yorkie) - -**Yorkie Liu** <yorkiefixer@gmail.com> -* [yosuke-furukawa](https://github.com/yosuke-furukawa) - -**Yosuke Furukawa** <yosuke.furukawa@gmail.com> - -### Collaborator Emeriti - -* [isaacs](https://github.com/isaacs) - -**Isaac Z. Schlueter** <i@izs.me> -* [lxe](https://github.com/lxe) - -**Aleksey Smolenchuk** <lxe@lxe.co> -* [monsanto](https://github.com/monsanto) - -**Christopher Monsanto** <chris@monsan.to> -* [Olegas](https://github.com/Olegas) - -**Oleg Elifantiev** <oleg@elifantiev.ru> -* [petkaantonov](https://github.com/petkaantonov) - -**Petka Antonov** <petka_antonov@hotmail.com> -* [piscisaureus](https://github.com/piscisaureus) - -**Bert Belder** <bertbelder@gmail.com> -* [rlidwka](https://github.com/rlidwka) - -**Alex Kocharin** <alex@kocharin.ru> -* [tellnes](https://github.com/tellnes) - -**Christian Tellnes** <christian@tellnes.no> - -Collaborators follow the [COLLABORATOR_GUIDE.md](./COLLABORATOR_GUIDE.md) in -maintaining the Node.js project. - -### Release Team - -Node.js releases are signed with one of the following GPG keys: - -* **Colin Ihrig** <cjihrig@gmail.com> -`94AE36675C464D64BAFA68DD7434390BDBE9B9C5` -* **Evan Lucas** <evanlucas@me.com> -`B9AE9905FFD7803F25714661B63B535A4C206CA9` -* **Italo A. Casas** <me@italoacasas.com> -`56730D5401028683275BD23C23EFEFE93C4CFFFE` -* **James M Snell** <jasnell@keybase.io> -`71DCFD284A79C3B38668286BC97EC7A07EDE3FC1` -* **Jeremiah Senkpiel** <fishrock@keybase.io> -`FD3A5288F042B6850C66B31F09FE44734EB7990E` -* **Myles Borins** <myles.borins@gmail.com> -`C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8` -* **Rod Vagg** <rod@vagg.org> -`DD8F2338BAE7501E3DD5AC78C273792F7D83545D` - -The full set of trusted release keys can be imported by running: - -```shell -gpg --keyserver pool.sks-keyservers.net --recv-keys 94AE36675C464D64BAFA68DD7434390BDBE9B9C5 -gpg --keyserver pool.sks-keyservers.net --recv-keys FD3A5288F042B6850C66B31F09FE44734EB7990E -gpg --keyserver pool.sks-keyservers.net --recv-keys 71DCFD284A79C3B38668286BC97EC7A07EDE3FC1 -gpg --keyserver pool.sks-keyservers.net --recv-keys DD8F2338BAE7501E3DD5AC78C273792F7D83545D -gpg --keyserver pool.sks-keyservers.net --recv-keys C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 -gpg --keyserver pool.sks-keyservers.net --recv-keys B9AE9905FFD7803F25714661B63B535A4C206CA9 -gpg --keyserver pool.sks-keyservers.net --recv-keys 56730D5401028683275BD23C23EFEFE93C4CFFFE -``` - -See the section above on [Verifying Binaries](#verifying-binaries) for details -on what to do with these keys to verify that a downloaded file is official. - -Previous releases may also have been signed with one of the following GPG keys: - -* **Chris Dickinson** <christopher.s.dickinson@gmail.com> -`9554F04D7259F04124DE6B476D5A82AC7E37093B` -* **Isaac Z. Schlueter** <i@izs.me> -`93C7E9E91B49E432C2F75674B0A78B0A6C481CF6` -* **Julien Gilli** <jgilli@fastmail.fm> -`114F43EE0176B71C7BC219DD50A3051F888C628D` -* **Timothy J Fontaine** <tjfontaine@gmail.com> -`7937DFD2AB06298B2293C3187D33FF9D0246406D` - -### Working Groups - -Information on the current Node.js Working Groups can be found in the -[TSC repository](https://github.com/nodejs/TSC/blob/master/WORKING_GROUPS.md). - -[npm]: https://www.npmjs.com -[Website]: https://nodejs.org/en/ -[Contributing to the project]: CONTRIBUTING.md -[Node.js Help]: https://github.com/nodejs/help -[Node.js Moderation Policy]: https://github.com/nodejs/TSC/blob/master/Moderation-Policy.md -[#node.js on chat.freenode.net]: https://webchat.freenode.net?channels=node.js&uio=d4 -[#node-dev on chat.freenode.net]: https://webchat.freenode.net?channels=node-dev&uio=d4 -[Code of Conduct]: https://github.com/nodejs/TSC/blob/master/CODE_OF_CONDUCT.md diff --git a/deps/npm/.mailmap b/deps/npm/.mailmap index 7c092c41ca5ae7..86d870d26b4a61 100644 --- a/deps/npm/.mailmap +++ b/deps/npm/.mailmap @@ -32,6 +32,7 @@ Jake Verbaten James Sanders James Treworgy Jason Smith +Joshua Bennett Jonas Weber Julien Meddah Kevin Lorenz diff --git a/deps/npm/.travis.yml b/deps/npm/.travis.yml index e63df7e47bf3e3..8d24a458c10643 100644 --- a/deps/npm/.travis.yml +++ b/deps/npm/.travis.yml @@ -25,9 +25,6 @@ matrix: script: - "standard" - "node . run tap -- \"test/tap/*.js\" \"test/broken-under-nyc/*.js\"" -before_install: - # required by test/tap/registry.js - - "mkdir -p /var/run/couchdb" notifications: slack: npm-inc:kRqQjto7YbINqHPb1X6nS3g8 cache: diff --git a/deps/npm/AUTHORS b/deps/npm/AUTHORS index 07f44ab1c17379..9f3aadba0eb2dc 100644 --- a/deps/npm/AUTHORS +++ b/deps/npm/AUTHORS @@ -424,7 +424,7 @@ Daniel Paz-Soldan Sakthipriyan Vairamani Zach Renner Christopher Hiller -legodude17 +Joshua Bennett Andrew Meyer Michael Jasper Max @@ -503,3 +503,26 @@ Sanketh Katta Tim Needham leonardo rojas Mark Peter Fejes +Ryan Florence +MichaelQQ +Anders D. Johnson +Benjamin Fernandes +Simon Kurtz +David Goss +Luis Gustavo Pereira +Amos Wenger +Samuel Marks +Victor Travieso +legodude17 +Joshua Chaitin-Pollak +Brendan Warkentin +Scott Santucci +Xavier Cambar +Vikram +Igor Nadj +Tong Li +tripu +Carsten Brandt +Marcin Szczepanski +Josh Clow +Jakub Holy diff --git a/deps/npm/CHANGELOG.md b/deps/npm/CHANGELOG.md index 0571c17272e891..1c650d724bd66d 100644 --- a/deps/npm/CHANGELOG.md +++ b/deps/npm/CHANGELOG.md @@ -1,3 +1,402 @@ +## v5.5.1 (2017-10-04): + +A very quick, record time, patch release, of a bug fix to a (sigh) last minute bug fix. + +* [`e628e058b`](https://github.com/npm/npm/commit/e628e058b) + Fix login to properly recognize OTP request and store bearer tokens. + ([@Rebecca Turner](https://github.com/Rebecca Turner)) + +## v5.5.0 (2017-10-04): + +Hey y'all, this is a big new feature release! We've got some security +related goodies plus a some quality-of-life improvements for anyone who uses +the public registry (so, virtually everyone). + +The changes largely came together in one piece, so I'm just gonna leave the commit line here: + +* [`f6ebf5e8b`](https://github.com/npm/npm/commit/f6ebf5e8bd6a212c7661e248c62c423f2b54d978) + [`f97ad6a38`](https://github.com/npm/npm/commit/f97ad6a38412581d059108ea29be470acb4fa510) + [`f644018e6`](https://github.com/npm/npm/commit/f644018e6ef1ff7523c6ec60ae55a24e87a9d9ae) + [`8af91528c`](https://github.com/npm/npm/commit/8af91528ce6277cd3a8c7ca8c8102671baf10d2f) + [`346a34260`](https://github.com/npm/npm/commit/346a34260b5fba7de62717135f3e083cc4820853) + Two factor authentication, profile editing and token management. + ([@iarna](https://github.com/iarna)) + +### TWO FACTOR AUTHENTICATION + +You can now enable two-factor authentication for your npm account. You can +even do it from the CLI. In fact, you have to, for the time being: + +``` +npm profile enable-tfa +``` + +With the default two-factor authentication mode you'll be prompted to enter +a one-time password when logging in, when publishing and when modifying access rights to +your modules. + +### TOKEN MANAGEMENT + +You can now create, list and delete authentication tokens from the comfort +of the command line. Authentication tokens created this way can have NEW +restrictions placed on them. For instance, you can create a `read-only` +token to give to your CI. It will be able to download your private modules +but it won't be able to publish or modify modules. You can also create +tokens that can only be used from certain network addresses. This way you +can lock down access to your corporate VPN or other trusted machines. + +Deleting tokens isn't new, you could [do it via the +website](https://www.npmjs.com/settings/tokens) but now you can do it via +the CLI as well. + +### CHANGE YOUR PASSWORD, SET YOUR EMAIL + +You can finally change your password from the CLI with `npm profile set +password`! You can also update your email address with `npm profile set +email
`. If you change your email address we'll send you a new +verification email so you verify that its yours. + +### AND EVERYTHING ELSE ON YOUR PROFILE + +You can also update all of the other attributes of your profile that +previously you could only update via the website: `fullname`, `homepage`, +`freenode`, `twitter` and `github`. + +### AVAILABLE STAND ALONE + +All of these features were implemented in a stand alone library, so if you +have use for them in your own project you can find them in +[npm-profile](https://www.npmjs.com/package/npm-profile) on the registry. +There's also a little mini-cli written just for it at +[npm-profile-cli](https://www.npmjs.com/package/npm-profile-cli). You might +also be interested in the [API +documentation](https://github.com/npm/registry/tree/master/docs) for these +new features: [user profile editing](https://github.com/npm/registry/blob/master/docs/user/profile.md) and +[authentication](https://github.com/npm/registry/blob/master/docs/user/authentication.md). + +### BUG FIXES + +* [`5ee55dc71`](https://github.com/npm/npm/commit/5ee55dc71b8b74b8418c3d5ec17483a07b3b6777) + install.sh: Drop support for upgrading from npm@1 as npm@5 can't run on + any Node.js version that ships npm@1. This fixes an issue some folks were seeing when trying + to upgrade using `curl | http://npmjs.com/install.sh`. + ([@iarna](https://github.com/iarna)) +* [`5cad1699a`](https://github.com/npm/npm/commit/5cad1699a7a0fc85ac7f77a95087a9647f75e344) + `npm-lifecycle@1.0.3` Fix a bug where when more than one lifecycle script + got queued to run, npm would crash. + ([@zkat](https://github.com/zkat)) +* [`cd256cbb2`](https://github.com/npm/npm/commit/cd256cbb2f97fcbcb82237e94b66eac80e493626) + `npm-packlist@1.1.9` Fix a bug where test directories would always be + excluded from published modules. + ([@isaacs](https://github.com/isaacs)) +* [`2a11f0215`](https://github.com/npm/npm/commit/2a11f021561acb1eb1ad4ad45ad955793b1eb4af) + Fix formatting of unsupported version warning + ([@iarna](https://github.com/iarna)) + +### DEPENDENCY UPDATES + +* [`6d2a285a5`](https://github.com/npm/npm/commit/6d2a285a58655f10834f64d38449eb1f3c8b6c47) + `npm-registry-client@8.5.0` +* [`69e64e27b`](https://github.com/npm/npm/commit/69e64e27bf58efd0b76b3cf6e8182c77f8cc452f) + `request@2.83.0` +* [`34e0f4209`](https://github.com/npm/npm/commit/34e0f42090f6153eb5462f742e402813e4da56c8) + `abbrev@1.1.1` +* [`10d31739d`](https://github.com/npm/npm/commit/10d31739d39765f1f0249f688bd934ffad92f872) + `aproba@1.2.0` +* [`2b02e86c0`](https://github.com/npm/npm/commit/2b02e86c06cf2a5fe7146404f5bfd27f190ee4f4) + `meant@1.0.1` +* [`b81fff808`](https://github.com/npm/npm/commit/b81fff808ee269361d3dcf38c1b6019f1708ae02) + `rimraf@2.6.2`: + Fixes a long standing bug in rimraf's attempts to work around Windows limitations + where it owns a file and can change its perms but can't remove it without + first changing its perms. This _may_ be an improvement for Windows users of npm under + some circumstances. + ([@isaacs](https://github.com/isaacs)) + +## v5.4.2 (2017-09-14): + +This is a small bug fix release wrapping up most of the issues introduced with 5.4.0. + +### Bugs + +* [`0b28ac72d`](https://github.com/npm/npm/commit/0b28ac72d29132e9b761717aba20506854465865) + [#18458](https://github.com/npm/npm/pull/18458) + Fix a bug on Windows where rolling back of failed optional dependencies would fail. + ([@marcins](https://github.com/marcins)) +* [`3a1b29991`](https://github.com/npm/npm/commit/3a1b299913ce94fdf25ed3ae5c88fe6699b04e24) + `write-file-atomic@2.1.0` Revert update of `write-file-atomic`. There were changes made to it + that were resulting in EACCES errors for many users. + ([@iarna](https://github.com/iarna)) +* [`cd8687e12`](https://github.com/npm/npm/commit/cd8687e1257f59a253436d69e8d79a29c85d00c8) + Fix a bug where if npm decided it needed to move a module during an upgrade it would strip + out much of the `package.json`. This would result in broken trees after package updates. +* [`5bd0244ee`](https://github.com/npm/npm/commit/5bd0244eec347ce435e88ff12148c35da7c69efe) + [#18385](https://github.com/npm/npm/pull/18385) + Fix `npm outdated` when run on non-registry dependencies. + ([@joshclow](https://github.com/joshclow)) + ([@iarna](https://github.com/iarna)) + +### Ux + +* [`339f17b1e`](https://github.com/npm/npm/commit/339f17b1e6816eccff7df97875db33917eccdd13) + Report unsupported node versions with greater granularity. + ([@iarna](https://github.com/iarna)) + +### Docs + +* [`b2ab6f43b`](https://github.com/npm/npm/commit/b2ab6f43b8ae645134238acd8dd3083e5ba8846e) + [#18397](https://github.com/npm/npm/pull/18397) + Document that the default loglevel with `npm@5` is `notice`. + ([@KenanY](https://github.com/KenanY)) +* [`e5aedcd82`](https://github.com/npm/npm/commit/e5aedcd82af81fa9e222f9210f6f890c72a18dd3) + [#18372](https://github.com/npm/npm/pull/18372) + In npm-config documentation, note that env vars use \_ in place of -. + ([@jakubholynet](https://github.com/jakubholynet)) + +## v5.4.1 (2017-09-06): + +This is a very small bug fix release to fix a problem where permissions on +installed binaries were being set incorrectly. + +* [`767ff6eee`](https://github.com/npm/npm/commit/767ff6eee7fa3a0f42ad677dedc0ec1f0dc15e7c) + [zkat/pacote#117](https://github.com/zkat/pacote/pull/117) + [#18324](https://github.com/npm/npm/issues/18324) + `pacote@6.0.2` + ([@zkat](https://github.com/zkat)) + +## v5.4.0 (2017-08-22): + +Here's another ~~small~~ big release, with a ~~handful~~ bunch of fixes and +a couple of ~~small~~ new features! This release has been incubating rather +longer than usual and it's grown quite a bit in that time. I'm also excited +to say that it has contributions from **27** different folks, which is a new +record for us. Our previous record was 5.1.0 at 21. Before that the record +had been held by 1.3.16 since _December of 2013_. + +![chart of contributor counts by version, showing an increasing rate over time and spikes mid in the 1.x series and later at 5.x](https://pbs.twimg.com/media/DH38rbZUwAAf9hS.jpg) + +If you can't get enough of the bleeding edge, I encourage you to check out +our canary release of npm. Get it with `npm install -g npmc`. It's going to +be seeing some exciting stuff in the next couple of weeks, starting with a +rewriten `npm dedupe`, but moving on to… well, you'll just have to wait and +find out. + +### PERFORMANCE + +* [`d080379f6`](https://github.com/npm/npm/commit/d080379f620c716afa2c1d2e2ffc0a1ac3459194) + `pacote@6.0.1` Updates extract to use tar@4, which is much faster than the + older tar@2. It reduces install times by as much as 10%. + ([@zkat](https://github.com/zkat)) +* [`4cd6a1774`](https://github.com/npm/npm/commit/4cd6a1774f774506323cae5685c9ca9a10deab63) + [`0195c0a8c`](https://github.com/npm/npm/commit/0195c0a8cdf816834c2f737372194ddc576c451d) + [#16804](https://github.com/npm/npm/pull/16804) + `tar@4.0.1` Update publish to use tar@4. tar@4 brings many advantages + over tar@2: It's faster, better tested and easier to work with. It also + produces exactly the same byte-for-byte output when producing tarballs + from the same set of files. This will have some nice carry on effects for + things like caching builds from git. And finally, last but certainly not + least, upgrading to it also let's us finally eliminate `fstream`—if + you know what that is you'll know why we're so relieved. + ([@isaacs](https://github.com/isaacs)) + +### FEATURES + +* [`1ac470dd2`](https://github.com/npm/npm/commit/1ac470dd283cc7758dc37721dd6331d5b316dc99) + [#10382](https://github.com/npm/npm/pull/10382) + If you make a typo when writing a command now, npm will print a brief "did you + mean..." message with some possible alternatives to what you meant. + ([@watilde](https://github.com/watilde)) +* [`20c46228d`](https://github.com/npm/npm/commit/20c46228d8f9243910f8c343f4830d52455d754e) + [#12356](https://github.com/npm/npm/pull/12356) + When running lifecycle scripts, `INIT_CWD` will now contain the original + working directory that npm was executed from. Remember that you can use `npm + run-script` even if you're not inside your package root directory! + ([@MichaelQQ](https://github.com/MichaelQQ)) +* [`be91e1726`](https://github.com/npm/npm/commit/be91e1726e9c21c4532723e4f413b73a93dd53d1) + [`4e7c41f4a`](https://github.com/npm/npm/commit/4e7c41f4a29744a9976cc22c77eee9d44172f21e) + `libnpx@9.6.0`: Fixes a number of issues on Windows and adds support for + several more languages: Korean, Norwegian (bokmål and nynorsk), Ukrainian, + Serbian, Bahasa Indonesia, Polish, Dutch and Arabic. + ([@zkat](https://github.com/zkat)) +* [`2dec601c6`](https://github.com/npm/npm/commit/2dec601c6d5a576751d50efbcf76eaef4deff31e) + [#17142](https://github.com/npm/npm/pull/17142) + Add the new `commit-hooks` option to `npm version` so that you can disable commit + hooks when committing the version bump. + ([@faazshift](https://github.com/faazshift)) +* [`bde151902`](https://github.com/npm/npm/commit/bde15190230b5c62dbd98095311eab71f6b52321) + [#14461](https://github.com/npm/npm/pull/14461) + Make output from `npm ping` clear as to its success or failure. + ([@legodude17](https://github.com/legodude17)) + +### BUGFIXES + +* [`b6d5549d2`](https://github.com/npm/npm/commit/b6d5549d2c2d38dd0e4319c56b69ad137f0d50cd) + [#17844](https://github.com/npm/npm/pull/17844) + Make package-lock.json sorting locale-agnostic. Previously, sorting would vary + by locale, due to using `localeCompare` for key sorting. This'll give you + a little package-lock.json churn as it reshuffles things, sorry! + ([@LotharSee](https://github.com/LotharSee)) +* [`44b98b9dd`](https://github.com/npm/npm/commit/44b98b9ddcfcccf68967fdf106fca52bf0c3da4b) + [#17919](https://github.com/npm/npm/pull/17919) + Fix a crash where `npm prune --production` would fail while removing `.bin`. + ([@fasterthanlime](https://github.com/fasterthanlime)) +* [`c3d1d3ba8`](https://github.com/npm/npm/commit/c3d1d3ba82aa41dfb2bd135e6cdc59f8d33cd9fb) + [#17816](https://github.com/npm/npm/pull/17816) + Fail more smoothly when attempting to install an invalid package name. + ([@SamuelMarks](https://github.com/SamuelMarks)) +* [`55ac2fca8`](https://github.com/npm/npm/commit/55ac2fca81bf08338302dc7dc2070494e71add5c) + [#12784](https://github.com/npm/npm/pull/12784) + Guard against stack overflows when marking packages as failed. + ([@vtravieso](https://github.com/vtravieso)) +* [`597cc0e4b`](https://github.com/npm/npm/commit/597cc0e4b5e6ee719014e3171d4e966df42a275c) + [#15087](https://github.com/npm/npm/pull/15087) + Stop outputting progressbars or using color on dumb terminals. + ([@iarna](https://github.com/iarna)) +* [`7a7710ba7`](https://github.com/npm/npm/commit/7a7710ba72e6f82414653c2e7e91fea9a1aba7e2) + [#15088](https://github.com/npm/npm/pull/15088) + Don't exclude modules that are both dev & prod when using `npm ls --production`. + ([@iarna](https://github.com/iarna)) +* [`867df2b02`](https://github.com/npm/npm/commit/867df2b0214689822b87b51578e347f353be97e8) + [#18164](https://github.com/npm/npm/pull/18164) + Only do multiple procs on OSX for now. We've seen a handful of issues + relating to this in Docker and in on Windows with antivirus. + ([@zkat](https://github.com/zkat)) +* [`23540af7b`](https://github.com/npm/npm/commit/23540af7b0ec5f12bbdc1558745c8c4f0861042b) + [#18117](https://github.com/npm/npm/pull/18117) + Some package managers would write spaces to the \_from field in package.json's in the + form of `name @spec`. This was causing npm to fail to interpret them. We now handle that + correctly and doubly make sure we don't do that ourselves. + ([@IgorNadj](https://github.com/IgorNadj)) +* [`0ef320cb4`](https://github.com/npm/npm/commit/0ef320cb40222693b7367b97c60ddffabc2d58c5) + [#16634](https://github.com/npm/npm/pull/16634) + Convert any bin script with a shbang a the start to Unix line-endings. (These sorts of scripts + are not compatible with Windows line-endings even on Windows.) + ([@ScottFreeCode](https://github.com/ScottFreeCode)) +* [`71191ca22`](https://github.com/npm/npm/commit/71191ca2227694355c49dfb187104f68df5126bd) + [#16476](https://github.com/npm/npm/pull/16476) + `npm-lifecycle@1.0.2` Running an install with `--ignore-scripts` was resulting in the + the package object being mutated to have the lifecycle scripts removed from it and that + in turn was being written out to disk, causing further problems. This fixes that: + No more mutation, no more unexpected changes. + ([@addaleax](https://github.com/addaleax)) +* [`459fa9d51`](https://github.com/npm/npm/commit/459fa9d51600904ee75ed6267b159367a1209793) + [npm/read-package-json#74](https://github.com/npm/read-package-json/pull/74) + [#17802](https://github.com/npm/npm/pull/17802) + `read-package-json@2.0.1` Use unix-style slashes for generated bin + entries, which lets them be cross platform even when produced on Windows. + ([@iarna](https://github.com/iarna)) +* [`5ec72ab5b`](https://github.com/npm/npm/commit/5ec72ab5b27c5c83cee9ff568cf75a9479d4b83a) + [#18229](https://github.com/npm/npm/pull/18229) + Make install.sh find nodejs on debian. + ([@cebe](https://github.com/cebe)) + +### DOCUMENTATION + +* [`b019680db`](https://github.com/npm/npm/commit/b019680db78ae0a6dff2289dbfe9f61fccbbe824) + [#10846](https://github.com/npm/npm/pull/10846) + Remind users that they have to install missing `peerDependencies` manually. + ([@ryanflorence](https://github.com/ryanflorence)) +* [`3aee5986a`](https://github.com/npm/npm/commit/3aee5986a65add2f815b24541b9f4b69d7fb445f) + [#17898](https://github.com/npm/npm/pull/17898) + Minor punctuation fixes to the README. + ([@AndersDJohnson](https://github.com/AndersDJohnson)) +* [`e0d0a7e1d`](https://github.com/npm/npm/commit/e0d0a7e1dda2c43822b17eb71f4d51900575cc61) + [#17832](https://github.com/npm/npm/pull/17832) + Fix grammar, format, and spelling in documentation for `run-script`. + ([@simonua](https://github.com/simonua)) +* [`3fd6a5f2f`](https://github.com/npm/npm/commit/3fd6a5f2f8802a9768dba2ec32c593b5db5a878d) + [#17897](https://github.com/npm/npm/pull/17897) + Add more info about using `files` with `npm pack`/`npm publish`. + ([@davidjgoss](https://github.com/davidjgoss)) +* [`f00cdc6eb`](https://github.com/npm/npm/commit/f00cdc6eb90a0735bc3c516720de0b1428c79c31) + [#17785](https://github.com/npm/npm/pull/17785) + Add a note about filenames for certificates on Windows, which use a different + extension and file type. + ([@lgp1985](https://github.com/lgp1985)) +* [`0cea6f974`](https://github.com/npm/npm/commit/0cea6f9741243b1937abfa300c2a111d9ed79143) + [#18022](https://github.com/npm/npm/pull/18022) + Clarify usage for the `files` field in `package.json`. + ([@xcambar](https://github.com/xcambar)) +* [`a0fdd1571`](https://github.com/npm/npm/commit/a0fdd15710971234cbc57086cd1a4dc037a39471) + [#15234](https://github.com/npm/npm/pull/15234) + Clarify the behavior of the `files` array in the package-json docs. + ([@jbcpollak](https://github.com/jbcpollak)) +* [`cecd6aa5d`](https://github.com/npm/npm/commit/cecd6aa5d4dd04af765b26b749c1cd032f7eb913) + [#18137](https://github.com/npm/npm/pull/18137) + Clarify interaction between npmignore and files in package.json. + ([@supertong](https://github.com/supertong)) +* [`6b8972039`](https://github.com/npm/npm/commit/6b89720396767961001e727fc985671ce88b901b) + [#18044](https://github.com/npm/npm/pull/18044) + Corrected the typo in package-locks docs. + ([@vikramnr](https://github.com/vikramnr)) +* [`6e012924f`](https://github.com/npm/npm/commit/6e012924f99c475bc3637c86ab6a113875405fc7) + [#17667](https://github.com/npm/npm/pull/17667) + Fix description of package.json in npm-scripts docs. + ([@tripu](https://github.com/tripu)) + +### POSSIBLY INTERESTING DEPENDENCY UPDATES + +* [`48d84171a`](https://github.com/npm/npm/commit/48d84171a302fde2510b3f31e4a004c5a4d39c73) + [`f60b05d63`](https://github.com/npm/npm/commit/f60b05d6307a7c46160ce98d6f3ccba89411c4ba) + `semver@5.4.1` Perf improvements. + ([@zkat](https://github.com/zkat)) +* [`f4650b5d4`](https://github.com/npm/npm/commit/f4650b5d4b2be2c04c229cc53aa930e260af9b4e) + `write-file-atomic@2.3.0`: + Serialize writes to the same file so that results are deterministic. + Cleanup tempfiles when process is interrupted or killed. + ([@ferm10n](https://github.com/ferm10n)) + ([@iarna](https://github.com/iarna)) + +### CHORES + +* [`96d78df98`](https://github.com/npm/npm/commit/96d78df9843187bc53be2c93913e8567003ccb73) + [`80e2f4960`](https://github.com/npm/npm/commit/80e2f4960691bc5dbd8320002e4d9143784b9ce9) + [`4f49f687b`](https://github.com/npm/npm/commit/4f49f687bbd54b6a0e406936ae35593d8e971e1e) + [`07d2296b1`](https://github.com/npm/npm/commit/07d2296b10e3d8d6f079eba3a61f0258501d7161) + [`a267ab430`](https://github.com/npm/npm/commit/a267ab4309883012a9d55934533c5915e9842277) + [#18176](https://github.com/npm/npm/pull/18176) + [#18025](https://github.com/npm/npm/pull/18025) + Move the lifecycle code out of npm into a separate library, + [`npm-lifecycle`](https://github.com/npm/lifecycle). Shh, I didn't tell you this, but this + portends to some pretty cool stuff to come very soon now. + ([@mikesherov](https://github.com/mikesherov)) +* [`0933c7eaf`](https://github.com/npm/npm/commit/0933c7eaf9cfcdf56471fe4e71c403e2016973da) + [#18025](https://github.com/npm/npm/pull/18025) + Force Travis to use Precise instead of Trusty. We have issues with our + couchdb setup and Trusty. =/ + ([@mikesherov](https://github.com/mikesherov)) +* [`afb086230`](https://github.com/npm/npm/commit/afb086230223f3c4fcddee4e958d18fce5db0ff9) + [#18138](https://github.com/npm/npm/pull/18138) + Fix typos in files-and-ignores test. + ([@supertong](https://github.com/supertong)) +* [`3e6d11cde`](https://github.com/npm/npm/commit/3e6d11cde096b4ee7b07e7569b37186aa2115b1a) + [#18175](https://github.com/npm/npm/pull/18175) + Update dependencies to eliminate transitive dependencies with the WTFPL license, which + some more serious corporate lawyery types aren't super comfortable with. + ([@zkat](https://github.com/zkat)) +* [`ee4c9bd8a`](https://github.com/npm/npm/commit/ee4c9bd8ae574a0d6b24725ba6c7b718d8aaad8d) + [#16474](https://github.com/npm/npm/pull/16474) + The tests in `test/tap/lifecycle-signal.js`, as well as the features + they are testing, are partially broken. This moves them from + being skipped in CI to being disabled only for certain platforms. + In particular, because `npm` spawns its lifecycle scripts in a + shell, signals are not necessarily forwarded by the shell and + won’t cause scripts to exit; also, shells may report the signal + they receive using their exit status, rather than terminating + themselves with a signal. + ([@addaleax](https://github.com/addaleax)) +* [`9462e5d9c`](https://github.com/npm/npm/commit/9462e5d9cfbaa50218de6d0a630d6552e72ad0a8) + [#16547](https://github.com/npm/npm/pull/16547) + Remove unused file: bin/read-package-json.js + ([@metux](https://github.com/metux)) +* [`0756d687d`](https://github.com/npm/npm/commit/0756d687d4ccfcd4a7fd83db0065eceb9261befb) + [#16550](https://github.com/npm/npm/pull/16550) + The build tools for the documentation need to be built/installed + before the documents, even with parallel builds. + Make has a simple mechanism which was made exactly for that: + target dependencies. + ([@metux](https://github.com/metux)) + ## v5.3.0 (2017-07-12): As mentioned before, we're continuing to do relatively rapid, smaller releases diff --git a/deps/npm/Makefile b/deps/npm/Makefile index 53ab16a29063c2..42b7beda933770 100644 --- a/deps/npm/Makefile +++ b/deps/npm/Makefile @@ -88,12 +88,16 @@ doc-clean: html/doc \ man +## build-time tools for the documentation +build-doc-tools := node_modules/.bin/marked \ + node_modules/.bin/marked-man + # use `npm install marked-man` for this to work. -man/man1/npm-README.1: README.md scripts/doc-build.sh package.json +man/man1/npm-README.1: README.md scripts/doc-build.sh package.json $(build-doc-tools) @[ -d man/man1 ] || mkdir -p man/man1 scripts/doc-build.sh $< $@ -man/man1/%.1: doc/cli/%.md scripts/doc-build.sh package.json +man/man1/%.1: doc/cli/%.md scripts/doc-build.sh package.json $(build-doc-tools) @[ -d man/man1 ] || mkdir -p man/man1 scripts/doc-build.sh $< $@ @@ -106,26 +110,26 @@ man/man5/npm-json.5: man/man5/package.json.5 man/man5/npm-global.5: man/man5/npm-folders.5 cp $< $@ -man/man5/%.5: doc/files/%.md scripts/doc-build.sh package.json +man/man5/%.5: doc/files/%.md scripts/doc-build.sh package.json $(build-doc-tools) @[ -d man/man5 ] || mkdir -p man/man5 scripts/doc-build.sh $< $@ -doc/misc/npm-index.md: scripts/index-build.js package.json +doc/misc/npm-index.md: scripts/index-build.js package.json $(build-doc-tools) node scripts/index-build.js > $@ -html/doc/index.html: doc/misc/npm-index.md $(html_docdeps) +html/doc/index.html: doc/misc/npm-index.md $(html_docdeps) $(build-doc-tools) @[ -d html/doc ] || mkdir -p html/doc scripts/doc-build.sh $< $@ -man/man7/%.7: doc/misc/%.md scripts/doc-build.sh package.json +man/man7/%.7: doc/misc/%.md scripts/doc-build.sh package.json $(build-doc-tools) @[ -d man/man7 ] || mkdir -p man/man7 scripts/doc-build.sh $< $@ -html/doc/README.html: README.md $(html_docdeps) +html/doc/README.html: README.md $(html_docdeps) $(build-doc-tools) @[ -d html/doc ] || mkdir -p html/doc scripts/doc-build.sh $< $@ -html/doc/cli/%.html: doc/cli/%.md $(html_docdeps) +html/doc/cli/%.html: doc/cli/%.md $(html_docdeps) $(build-doc-tools) @[ -d html/doc/cli ] || mkdir -p html/doc/cli scripts/doc-build.sh $< $@ @@ -135,11 +139,11 @@ html/doc/files/npm-json.html: html/doc/files/package.json.html html/doc/files/npm-global.html: html/doc/files/npm-folders.html cp $< $@ -html/doc/files/%.html: doc/files/%.md $(html_docdeps) +html/doc/files/%.html: doc/files/%.md $(html_docdeps) $(build-doc-tools) @[ -d html/doc/files ] || mkdir -p html/doc/files scripts/doc-build.sh $< $@ -html/doc/misc/%.html: doc/misc/%.md $(html_docdeps) +html/doc/misc/%.html: doc/misc/%.md $(html_docdeps) $(build-doc-tools) @[ -d html/doc/misc ] || mkdir -p html/doc/misc scripts/doc-build.sh $< $@ diff --git a/deps/npm/README.md b/deps/npm/README.md index ce79f41ec2b13b..d394af73dd244f 100644 --- a/deps/npm/README.md +++ b/deps/npm/README.md @@ -141,12 +141,12 @@ you have chosen. ## More Docs -Check out the [docs](https://docs.npmjs.com/), +Check out the [docs](https://docs.npmjs.com/). You can use the `npm help` command to read any of them. If you're a developer, and you want to use npm to publish your program, -you should [read this](https://docs.npmjs.com/misc/developers) +you should [read this](https://docs.npmjs.com/misc/developers). ## BUGS diff --git a/deps/npm/bin/read-package-json.js b/deps/npm/bin/read-package-json.js deleted file mode 100755 index 7e62a0bd7de552..00000000000000 --- a/deps/npm/bin/read-package-json.js +++ /dev/null @@ -1,24 +0,0 @@ -var argv = process.argv -if (argv.length < 3) { - console.error('Usage: read-package.json [ ...]') - process.exit(1) -} - -var file = argv[2] -var readJson = require('read-package-json') - -readJson(file, function (er, data) { - if (er) throw er - if (argv.length === 3) { - console.log(data) - } else { - argv.slice(3).forEach(function (field) { - field = field.split('.') - var val = data - field.forEach(function (f) { - val = val[f] - }) - console.log(val) - }) - } -}) diff --git a/deps/npm/doc/cli/npm-access.md b/deps/npm/doc/cli/npm-access.md index aabdbe03ca0169..a338673c8d84a6 100644 --- a/deps/npm/doc/cli/npm-access.md +++ b/deps/npm/doc/cli/npm-access.md @@ -60,6 +60,9 @@ You must have privileges to set the access of a package: * You have been given read-write privileges for a package, either as a member of a team or directly as an owner. +If you have two-factor authentication enabled then you'll have to pass in an +otp with `--otp` when making access changes. + If your account is not paid, then attempts to publish scoped packages will fail with an HTTP 402 status code (logically enough), unless you use `--access=public`. diff --git a/deps/npm/doc/cli/npm-config.md b/deps/npm/doc/cli/npm-config.md index aad9e0dffea90d..c60afc167c7420 100644 --- a/deps/npm/doc/cli/npm-config.md +++ b/deps/npm/doc/cli/npm-config.md @@ -6,7 +6,7 @@ npm-config(1) -- Manage the npm configuration files npm config set [-g|--global] npm config get npm config delete - npm config list [-l] + npm config list [-l] [--json] npm config edit npm get npm set [-g|--global] @@ -48,7 +48,8 @@ Echo the config value to stdout. npm config list -Show all the config settings. Use `-l` to also show defaults. +Show all the config settings. Use `-l` to also show defaults. Use `--json` +to show the settings in json format. ### delete diff --git a/deps/npm/doc/cli/npm-dist-tag.md b/deps/npm/doc/cli/npm-dist-tag.md index 8b4c170ddebf9e..14ce2d3f52e392 100644 --- a/deps/npm/doc/cli/npm-dist-tag.md +++ b/deps/npm/doc/cli/npm-dist-tag.md @@ -15,7 +15,9 @@ Add, remove, and enumerate distribution tags on a package: * add: Tags the specified version of the package with the specified tag, or the - `--tag` config if not specified. + `--tag` config if not specified. The tag you're adding is `latest` and you + have two-factor authentication on auth-and-writes then you'll need to include + an otp on the command line with `--otp`. * rm: Clear a tag that is no longer in use from the package. diff --git a/deps/npm/doc/cli/npm-owner.md b/deps/npm/doc/cli/npm-owner.md index 43929cb3322aed..94010298c18ef5 100644 --- a/deps/npm/doc/cli/npm-owner.md +++ b/deps/npm/doc/cli/npm-owner.md @@ -27,6 +27,10 @@ Note that there is only one level of access. Either you can modify a package, or you can't. Future versions may contain more fine-grained access levels, but that is not implemented at this time. +If you have two-factor authentication enabled with `auth-and-writes` then +you'll need to include an otp on the command line when changing ownership +with `--otp`. + ## SEE ALSO * npm-publish(1) diff --git a/deps/npm/doc/cli/npm-ping.md b/deps/npm/doc/cli/npm-ping.md index f0e628915efdee..3b2da9944bb242 100644 --- a/deps/npm/doc/cli/npm-ping.md +++ b/deps/npm/doc/cli/npm-ping.md @@ -8,6 +8,14 @@ npm-ping(1) -- Ping npm registry ## DESCRIPTION Ping the configured or given npm registry and verify authentication. +If it works it will output something like: +``` +Ping success: {*Details about registry*} +``` +otherwise you will get: +``` +Ping error: {*Detail about error} +``` ## SEE ALSO diff --git a/deps/npm/doc/cli/npm-profile.md b/deps/npm/doc/cli/npm-profile.md new file mode 100644 index 00000000000000..31e8b7e8ef8afa --- /dev/null +++ b/deps/npm/doc/cli/npm-profile.md @@ -0,0 +1,74 @@ +npm-profile(1) -- Change settings on your registry profile +========================================================== + +## SYNOPSIS + + npm profile get [--json|--parseable] [] + npm profile set [--json|--parseable] + npm profile set password + npm profile enable-2fa [auth-and-writes|auth-only] + npm profile disable-2fa + +## DESCRIPTION + +Change your profile information on the registry. This not be available if +you're using a non-npmjs registry. + +* `npm profile get []`: + Display all of the properties of your profile, or one or more specific + properties. It looks like: + +``` ++-----------------+---------------------------+ +| name | example | ++-----------------+---------------------------+ +| email | me@example.com (verified) | ++-----------------+---------------------------+ +| two factor auth | auth-and-writes | ++-----------------+---------------------------+ +| fullname | Example User | ++-----------------+---------------------------+ +| homepage | | ++-----------------+---------------------------+ +| freenode | | ++-----------------+---------------------------+ +| twitter | | ++-----------------+---------------------------+ +| github | | ++-----------------+---------------------------+ +| created | 2015-02-26T01:38:35.892Z | ++-----------------+---------------------------+ +| updated | 2017-10-02T21:29:45.922Z | ++-----------------+---------------------------+ +``` + +* `npm profile set `: + Set the value of a profile property. You can set the following properties this way: + email, fullname, homepage, freenode, twitter, github + +* `npm profile set password`: + Change your password. This is interactive, you'll be prompted for your + current password and a new password. You'll also be prompted for an OTP + if you have two-factor authentication enabled. + +* `npm profile enable-2fa [auth-and-writes|auth-only]`: + Enables two-factor authentication. Defaults to `auth-and-writes` mode. Modes are: + * `auth-only`: Require an OTP when logging in or making changes to your + account's authentication. The OTP will be required on both the website + and the command line. + * `auth-and-writes`: Requires an OTP at all the times `auth-only` does, and also requires one when + publishing a module, setting the `latest` dist-tag, or changing access + via `npm access` and `npm owner`. + +* `npm profile disable-2fa`: + Disables two-factor authentication. + +## DETAILS + +All of the `npm profile` subcommands accept `--json` and `--parseable` and +will tailor their output based on those. Some of these commands may not be +available on non npmjs.com registries. + +## SEE ALSO + +* npm-config(7) diff --git a/deps/npm/doc/cli/npm-publish.md b/deps/npm/doc/cli/npm-publish.md index 892786b61d9556..7e173ec00aff25 100644 --- a/deps/npm/doc/cli/npm-publish.md +++ b/deps/npm/doc/cli/npm-publish.md @@ -4,7 +4,7 @@ npm-publish(1) -- Publish a package ## SYNOPSIS - npm publish [|] [--tag ] [--access ] + npm publish [|] [--tag ] [--access ] [--otp otpcode] Publishes '.' if no argument supplied Sets tag 'latest' if no --tag specified @@ -41,6 +41,11 @@ specifying a different default registry or using a `npm-scope(7)` in the name If you don't have a paid account, you must publish with `--access public` to publish scoped packages. +* `[--otp ]` + If you have two-factor authentication enabled in `auth-and-writes` mode + then you can provide a code from your authenticator with this. If you + don't include this and you're running from a TTY then you'll be prompted. + Fails if the package name and version combination already exists in the specified registry. @@ -65,3 +70,4 @@ packs them into a tarball to be uploaded to the registry. * npm-deprecate(1) * npm-dist-tag(1) * npm-pack(1) +* npm-profile(1) diff --git a/deps/npm/doc/cli/npm-run-script.md b/deps/npm/doc/cli/npm-run-script.md index b79d58fb01952c..c1ce3429537c03 100644 --- a/deps/npm/doc/cli/npm-run-script.md +++ b/deps/npm/doc/cli/npm-run-script.md @@ -27,7 +27,7 @@ and not to any pre or post script. The `env` script is a special built-in command that can be used to list environment variables that will be available to the script at runtime. If an -"env" command is defined in your package it will take precedence over the +"env" command is defined in your package, it will take precedence over the built-in. In addition to the shell's pre-existing `PATH`, `npm run` adds @@ -38,7 +38,17 @@ you should write: "scripts": {"test": "tap test/\*.js"} -instead of `"scripts": {"test": "node_modules/.bin/tap test/\*.js"}` to run your tests. +instead of + + "scripts": {"test": "node_modules/.bin/tap test/\*.js"} + +to run your tests. + +Scripts are run from the root of the module, regardless of what your current +working directory is when you call `npm run`. If you want your script to +use different behavior based on what subdirectory you're in, you can use the +`INIT_CWD` environment variable, which holds the full path you were in when +you ran `npm run`. `npm run` sets the `NODE` environment variable to the `node` executable with which `npm` is executed. Also, if the `--scripts-prepend-node-path` is passed, diff --git a/deps/npm/doc/cli/npm-token.md b/deps/npm/doc/cli/npm-token.md new file mode 100644 index 00000000000000..bc0d7596fe0cf4 --- /dev/null +++ b/deps/npm/doc/cli/npm-token.md @@ -0,0 +1,59 @@ +npm-token(1) -- Manage your authentication tokens +================================================= + +## SYNOPSIS + + npm token list [--json|--parseable] + npm token create [--read-only] [--cidr=1.1.1.1/24,2.2.2.2/16] + npm token delete + +## DESCRIPTION + +This list you list, create and delete authentication tokens. + +* `npm token list`: + Shows a table of all active authentication tokens. You can request this as + JSON with `--json` or tab-separated values with `--parseable`. +``` ++--------+---------+------------+----------+----------------+ +| id | token | created | read-only | CIDR whitelist | ++--------+---------+------------+----------+----------------+ +| 7f3134 | 1fa9ba… | 2017-10-02 | yes | | ++--------+---------+------------+----------+----------------+ +| c03241 | af7aef… | 2017-10-02 | no | 192.168.0.1/24 | ++--------+---------+------------+----------+----------------+ +| e0cf92 | 3a436a… | 2017-10-02 | no | | ++--------+---------+------------+----------+----------------+ +| 63eb9d | 74ef35… | 2017-09-28 | no | | ++--------+---------+------------+----------+----------------+ +| 2daaa8 | cbad5f… | 2017-09-26 | no | | ++--------+---------+------------+----------+----------------+ +| 68c2fe | 127e51… | 2017-09-23 | no | | ++--------+---------+------------+----------+----------------+ +| 6334e1 | 1dadd1… | 2017-09-23 | no | | ++--------+---------+------------+----------+----------------+ +``` + +* `npm token create [--read-only] [--cidr=]`: + Create a new authentication token. It can be `--read-only` or accept a list of + [CIDR](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) ranges to + limit use of this token to. This will prompt you for your password, and, if you have + two-factor authentication enabled, an otp. + +``` ++----------------+--------------------------------------+ +| token | a73c9572-f1b9-8983-983d-ba3ac3cc913d | ++----------------+--------------------------------------+ +| cidr_whitelist | | ++----------------+--------------------------------------+ +| readonly | false | ++----------------+--------------------------------------+ +| created | 2017-10-02T07:52:24.838Z | ++----------------+--------------------------------------+ +``` + +* `npm token delete `: + This removes an authentication token, making it immediately unusable. This can accept + both complete tokens (as you get back from `npm token create` and will + find in your `.npmrc`) and ids as seen in the `npm token list` output. + This will NOT accept the truncated token found in `npm token list` output. diff --git a/deps/npm/doc/cli/npm-version.md b/deps/npm/doc/cli/npm-version.md index e8602f453acff8..1381b8be4bc4e2 100644 --- a/deps/npm/doc/cli/npm-version.md +++ b/deps/npm/doc/cli/npm-version.md @@ -93,6 +93,13 @@ to the same value as the current version. Commit and tag the version change. +### commit-hooks + +* Default: true +* Type: Boolean + +Run git commit hooks when committing the version change. + ### sign-git-tag * Default: false diff --git a/deps/npm/doc/files/npm-package-locks.md b/deps/npm/doc/files/npm-package-locks.md index 73786dc91a3156..c57fc85658e729 100644 --- a/deps/npm/doc/files/npm-package-locks.md +++ b/deps/npm/doc/files/npm-package-locks.md @@ -92,7 +92,7 @@ which will look something like this: } This file describes an *exact*, and more importantly *reproducible* -`node_modules` tree. Once it's present, and future installation will base its +`node_modules` tree. Once it's present, any future installation will base its work off this file, instead of recalculating dependency versions off package.json(5). diff --git a/deps/npm/doc/files/package.json.md b/deps/npm/doc/files/package.json.md index 1b2b04fe2f97c6..071d23a4159e7c 100644 --- a/deps/npm/doc/files/package.json.md +++ b/deps/npm/doc/files/package.json.md @@ -168,14 +168,23 @@ npm also sets a top-level "maintainers" field with your npm user info. ## files -The "files" field is an array of files to include in your project. If -you name a folder in the array, then it will also include the files -inside that folder. (Unless they would be ignored by another rule.) - -You can also provide a ".npmignore" file in the root of your package or -in subdirectories, which will keep files from being included, even -if they would be picked up by the files array. The `.npmignore` file -works just like a `.gitignore`. +The optional "files" field is an array of file patterns that describes +the entries to be included when your package is installed as a +dependency. If the files array is omitted, everything except +automatically-excluded files will be included in your publish. If you +name a folder in the array, then it will also include the files inside +that folder (unless they would be ignored by another rule in this +section.). + +You can also provide a `.npmignore` file in the root of your package or +in subdirectories, which will keep files from being included. At the +root of your package it will not override the "files" field, but in +subdirectories it will. The `.npmignore` file works just like a +`.gitignore`. If there is a `.gitignore` file, and `.npmignore` is +missing, `.gitignore`'s contents will be used instead. + +Files included with the "package.json#files" field _cannot_ be excluded +through `.npmignore` or `.gitignore`. Certain files are always included, regardless of settings: diff --git a/deps/npm/doc/misc/npm-config.md b/deps/npm/doc/misc/npm-config.md index dd0993d6bb7958..3c9ec38817754e 100644 --- a/deps/npm/doc/misc/npm-config.md +++ b/deps/npm/doc/misc/npm-config.md @@ -31,6 +31,9 @@ npm will set its own environment variables and Node will prefer those lowercase versions over any uppercase ones that you might set. For details see [this issue](https://github.com/npm/npm/issues/14528). +Notice that you need to use underscores instead of dashes, so `--allow-same-version` +would become `npm_config_allow_same_version=true`. + ### npmrc Files The four relevant files are: @@ -184,7 +187,7 @@ The browser that is called by the `npm docs` command to open websites. * Type: String, Array or null The Certificate Authority signing certificate that is trusted for SSL -connections to the registry. Values should be in PEM format with newlines +connections to the registry. Values should be in PEM format (Windows calls it "Base-64 encoded X.509 (.CER)") with newlines replaced by the string "\n". For example: ca="-----BEGIN CERTIFICATE-----\nXXXX\nXXXX\n-----END CERTIFICATE-----" @@ -260,12 +263,19 @@ Number of ms to wait for cache lock files to expire. * Type: String A client certificate to pass when accessing the registry. Values should be in -PEM format with newlines replaced by the string "\n". For example: +PEM format (Windows calls it "Base-64 encoded X.509 (.CER)") with newlines replaced by the string "\n". For example: cert="-----BEGIN CERTIFICATE-----\nXXXX\nXXXX\n-----END CERTIFICATE-----" It is _not_ the path to a certificate file (and there is no "certfile" option). +### cidr + +* Default: `null` +* Type: String, Array, null + +This is a list of CIDR address to be used when configuring limited access tokens with the `npm token create` command. + ### color * Default: true @@ -389,6 +399,13 @@ the git binary. Tag the commit when using the `npm version` command. +### commit-hooks + +* Default: `true` +* Type: Boolean + +Run git commit hooks when using the `npm version` command. + ### global * Default: false @@ -576,15 +593,15 @@ to the npm registry. Must be IPv4 in versions of Node prior to 0.12. ### loglevel -* Default: "warn" +* Default: "notice" * Type: String -* Values: "silent", "error", "warn", "http", "info", "verbose", "silly" +* Values: "silent", "error", "warn", "notice", "http", "timing", "info", + "verbose", "silly" What level of logs to report. On failure, *all* logs are written to `npm-debug.log` in the current working directory. -Any logs of a higher level than the setting are shown. -The default is "warn", which shows warn and error output. +Any logs of a higher level than the setting are shown. The default is "notice". ### logstream @@ -689,6 +706,14 @@ Attempt to install packages in the `optionalDependencies` object. Note that if these packages fail to install, the overall installation process is not aborted. +### otp + +* Default: null +* Type: Number + +This is a one-time password from a two-factor authenticator. It's needed +when publishing or changing package permissions with `npm access`. + ### package-lock * Default: true @@ -754,18 +779,6 @@ operations, if `process.stderr` is a TTY. Set to `false` to suppress the progress bar. -### proprietary-attribs - -* Default: true -* Type: Boolean - -Whether or not to include proprietary extended attributes in the -tarballs created by npm. - -Unless you are expecting to unpack package tarballs with something other -than npm -- particularly a very outdated tar implementation -- leave -this as true. - ### proxy * Default: null @@ -775,6 +788,13 @@ A proxy to use for outgoing http requests. If the `HTTP_PROXY` or `http_proxy` environment variables are set, proxy settings will be honored by the underlying `request` library. +### read-only + +* Default: false +* Type: Boolean + +This is used to mark a token as unable to publish when configuring limited access tokens with the `npm token create` command. + ### rebuild-bundle * Default: true diff --git a/deps/npm/doc/misc/npm-developers.md b/deps/npm/doc/misc/npm-developers.md index e8df1ed7b9c82a..2f54b98fb9e817 100644 --- a/deps/npm/doc/misc/npm-developers.md +++ b/deps/npm/doc/misc/npm-developers.md @@ -140,6 +140,19 @@ The following paths and files are never ignored, so adding them to * `CHANGELOG` (and its variants) * `LICENSE` / `LICENCE` +If, given the structure of your project, you find `.npmignore` to be a +maintenance headache, you might instead try populating the `files` +property of `package.json`, which is an array of file or directory names +that should be included in your package. Sometimes a whitelist is easier +to manage than a blacklist. + +### Testing whether your `.npmignore` or `files` config works + +If you want to double check that your package will include only the files +you intend it to when published, you can run the `npm pack` command locally +which will generate a tarball in the working directory, the same way it +does for publishing. + ## Link Packages `npm link` is designed to install a development package and see the diff --git a/deps/npm/doc/misc/npm-index.md b/deps/npm/doc/misc/npm-index.md index ed478d84ad9119..64fb25de2e284e 100644 --- a/deps/npm/doc/misc/npm-index.md +++ b/deps/npm/doc/misc/npm-index.md @@ -129,6 +129,10 @@ Ping npm registry Display prefix +### npm-profile(1) + +Change settings on your registry profile + ### npm-prune(1) Remove extraneous packages @@ -189,6 +193,10 @@ Manage organization teams and team memberships Test a package +### npm-token(1) + +Manage your authentication tokens + ### npm-uninstall(1) Remove a package diff --git a/deps/npm/doc/misc/npm-scripts.md b/deps/npm/doc/misc/npm-scripts.md index 9cdf588397c3ed..259bf28a6b7ea2 100644 --- a/deps/npm/doc/misc/npm-scripts.md +++ b/deps/npm/doc/misc/npm-scripts.md @@ -3,7 +3,7 @@ npm-scripts(7) -- How npm handles the "scripts" field ## DESCRIPTION -npm supports the "scripts" property of the package.json script, for the +npm supports the "scripts" property of the package.json file, for the following scripts: * prepublish: diff --git a/deps/npm/doc/misc/semver.md b/deps/npm/doc/misc/semver.md index 508d54403d0d15..993621a6fd46c8 100644 --- a/deps/npm/doc/misc/semver.md +++ b/deps/npm/doc/misc/semver.md @@ -1,55 +1,65 @@ semver(7) -- The semantic versioner for npm =========================================== +## Install + +```bash +npm install --save semver +```` + ## Usage - $ npm install semver - $ node - var semver = require('semver') +As a node module: - semver.valid('1.2.3') // '1.2.3' - semver.valid('a.b.c') // null - semver.clean(' =v1.2.3 ') // '1.2.3' - semver.satisfies('1.2.3', '1.x || >=2.5.0 || 5.0.0 - 7.2.3') // true - semver.gt('1.2.3', '9.8.7') // false - semver.lt('1.2.3', '9.8.7') // true +```js +const semver = require('semver') + +semver.valid('1.2.3') // '1.2.3' +semver.valid('a.b.c') // null +semver.clean(' =v1.2.3 ') // '1.2.3' +semver.satisfies('1.2.3', '1.x || >=2.5.0 || 5.0.0 - 7.2.3') // true +semver.gt('1.2.3', '9.8.7') // false +semver.lt('1.2.3', '9.8.7') // true +``` As a command-line utility: - $ semver -h +``` +$ semver -h - SemVer 5.1.0 +SemVer 5.3.0 - A JavaScript implementation of the http://semver.org/ specification - Copyright Isaac Z. Schlueter +A JavaScript implementation of the http://semver.org/ specification +Copyright Isaac Z. Schlueter - Usage: semver [options] [ [...]] - Prints valid versions sorted by SemVer precedence +Usage: semver [options] [ [...]] +Prints valid versions sorted by SemVer precedence - Options: - -r --range - Print versions that match the specified range. +Options: +-r --range + Print versions that match the specified range. - -i --increment [] - Increment a version by the specified level. Level can - be one of: major, minor, patch, premajor, preminor, - prepatch, or prerelease. Default level is 'patch'. - Only one version may be specified. +-i --increment [] + Increment a version by the specified level. Level can + be one of: major, minor, patch, premajor, preminor, + prepatch, or prerelease. Default level is 'patch'. + Only one version may be specified. - --preid - Identifier to be used to prefix premajor, preminor, - prepatch or prerelease version increments. +--preid + Identifier to be used to prefix premajor, preminor, + prepatch or prerelease version increments. - -l --loose - Interpret versions and ranges loosely +-l --loose + Interpret versions and ranges loosely - Program exits successfully if any valid version satisfies - all supplied ranges, and prints all satisfying versions. +Program exits successfully if any valid version satisfies +all supplied ranges, and prints all satisfying versions. - If no satisfying versions are found, then exits failure. +If no satisfying versions are found, then exits failure. - Versions are printed in ascending order, so supplying - multiple versions to the utility will just sort them. +Versions are printed in ascending order, so supplying +multiple versions to the utility will just sort them. +``` ## Versions @@ -126,20 +136,20 @@ The method `.inc` takes an additional `identifier` string argument that will append the value of the string as a prerelease identifier: ```javascript -> semver.inc('1.2.3', 'prerelease', 'beta') -'1.2.4-beta.0' +semver.inc('1.2.3', 'prerelease', 'beta') +// '1.2.4-beta.0' ``` command-line example: -```shell +```bash $ semver 1.2.3 -i prerelease --preid beta 1.2.4-beta.0 ``` Which then can be used to increment further: -```shell +```bash $ semver 1.2.4-beta.0 -i prerelease 1.2.4-beta.1 ``` @@ -296,6 +306,8 @@ strings that they parse. * `major(v)`: Return the major version number. * `minor(v)`: Return the minor version number. * `patch(v)`: Return the patch version number. +* `intersects(r1, r2, loose)`: Return true if the two supplied ranges + or comparators intersect. ### Comparison @@ -319,6 +331,9 @@ strings that they parse. (`major`, `premajor`, `minor`, `preminor`, `patch`, `prepatch`, or `prerelease`), or null if the versions are the same. +### Comparators + +* `intersects(comparator)`: Return true if the comparators intersect ### Ranges @@ -337,6 +352,7 @@ strings that they parse. the bounds of the range in either the high or low direction. The `hilo` argument must be either the string `'>'` or `'<'`. (This is the function called by `gtr` and `ltr`.) +* `intersects(range)`: Return true if any of the ranges comparators intersect Note that, since ranges may be non-contiguous, a version might not be greater than a range, less than a range, *or* satisfy a range! For diff --git a/deps/npm/html/doc/README.html b/deps/npm/html/doc/README.html index 437c78dc8ecaeb..296bbb0697e58d 100644 --- a/deps/npm/html/doc/README.html +++ b/deps/npm/html/doc/README.html @@ -94,10 +94,10 @@

More Severe Uninstalling

this means that future npm installs will not remember the settings that you have chosen.

More Docs

-

Check out the docs,

+

Check out the docs.

You can use the npm help command to read any of them.

If you're a developer, and you want to use npm to publish your program, -you should read this

+you should read this.

BUGS

When you find issues, please report them:

    @@ -127,5 +127,5 @@

    SEE ALSO

  
   
- + diff --git a/deps/npm/html/doc/cli/npm-access.html b/deps/npm/html/doc/cli/npm-access.html index 4824196bf5932b..ab140aade0c82a 100644 --- a/deps/npm/html/doc/cli/npm-access.html +++ b/deps/npm/html/doc/cli/npm-access.html @@ -61,6 +61,8 @@

DETAILS

  • You have been given read-write privileges for a package, either as a member of a team or directly as an owner.
  • +

    If you have two-factor authentication enabled then you'll have to pass in an +otp with --otp when making access changes.

    If your account is not paid, then attempts to publish scoped packages will fail with an HTTP 402 status code (logically enough), unless you use --access=public.

    @@ -84,5 +86,5 @@

    SEE ALSO

           - + diff --git a/deps/npm/html/doc/cli/npm-adduser.html b/deps/npm/html/doc/cli/npm-adduser.html index 8297188343be97..282d6268b78b3c 100644 --- a/deps/npm/html/doc/cli/npm-adduser.html +++ b/deps/npm/html/doc/cli/npm-adduser.html @@ -81,5 +81,5 @@

    SEE ALSO

           - + diff --git a/deps/npm/html/doc/cli/npm-bin.html b/deps/npm/html/doc/cli/npm-bin.html index 5baf48529c5114..9af0c17e26af55 100644 --- a/deps/npm/html/doc/cli/npm-bin.html +++ b/deps/npm/html/doc/cli/npm-bin.html @@ -35,5 +35,5 @@

    SEE ALSO

           - + diff --git a/deps/npm/html/doc/cli/npm-bugs.html b/deps/npm/html/doc/cli/npm-bugs.html index 65001a407e21f5..069bcf2938bfc6 100644 --- a/deps/npm/html/doc/cli/npm-bugs.html +++ b/deps/npm/html/doc/cli/npm-bugs.html @@ -55,5 +55,5 @@

    SEE ALSO

           - + diff --git a/deps/npm/html/doc/cli/npm-build.html b/deps/npm/html/doc/cli/npm-build.html index 33d0c896c245b4..091b28bb172a3f 100644 --- a/deps/npm/html/doc/cli/npm-build.html +++ b/deps/npm/html/doc/cli/npm-build.html @@ -40,5 +40,5 @@

    DESCRIPTION

           - + diff --git a/deps/npm/html/doc/cli/npm-bundle.html b/deps/npm/html/doc/cli/npm-bundle.html index 1860157fb8c786..7b4e0c71936ab5 100644 --- a/deps/npm/html/doc/cli/npm-bundle.html +++ b/deps/npm/html/doc/cli/npm-bundle.html @@ -31,5 +31,5 @@

    SEE ALSO

           - + diff --git a/deps/npm/html/doc/cli/npm-cache.html b/deps/npm/html/doc/cli/npm-cache.html index de1e4ce51cfc63..d2394086d4faea 100644 --- a/deps/npm/html/doc/cli/npm-cache.html +++ b/deps/npm/html/doc/cli/npm-cache.html @@ -89,5 +89,5 @@

    SEE ALSO

           - + diff --git a/deps/npm/html/doc/cli/npm-completion.html b/deps/npm/html/doc/cli/npm-completion.html index da720731c49a5b..d94785492335cf 100644 --- a/deps/npm/html/doc/cli/npm-completion.html +++ b/deps/npm/html/doc/cli/npm-completion.html @@ -43,5 +43,5 @@

    SEE ALSO

           - + diff --git a/deps/npm/html/doc/cli/npm-config.html b/deps/npm/html/doc/cli/npm-config.html index 5eb01b9e7c7aaf..9dfa27aa5463a2 100644 --- a/deps/npm/html/doc/cli/npm-config.html +++ b/deps/npm/html/doc/cli/npm-config.html @@ -14,7 +14,7 @@

    SYNOPSIS

    npm config set <key> <value> [-g|--global]
     npm config get <key>
     npm config delete <key>
    -npm config list [-l]
    +npm config list [-l] [--json]
     npm config edit
     npm get <key>
     npm set <key> <value> [-g|--global]
    @@ -39,7 +39,8 @@ 

    get

    Echo the config value to stdout.

    list

    npm config list
    -

    Show all the config settings. Use -l to also show defaults.

    +

    Show all the config settings. Use -l to also show defaults. Use --json +to show the settings in json format.

    delete

    npm config delete key
     

    Deletes the key from all configuration files.

    @@ -67,5 +68,5 @@

    SEE ALSO

           - + diff --git a/deps/npm/html/doc/cli/npm-dedupe.html b/deps/npm/html/doc/cli/npm-dedupe.html index 169c47cb43c693..1349617d0dab44 100644 --- a/deps/npm/html/doc/cli/npm-dedupe.html +++ b/deps/npm/html/doc/cli/npm-dedupe.html @@ -61,5 +61,5 @@

    SEE ALSO

           - + diff --git a/deps/npm/html/doc/cli/npm-deprecate.html b/deps/npm/html/doc/cli/npm-deprecate.html index c8c0e450649a7b..32433db75a0f50 100644 --- a/deps/npm/html/doc/cli/npm-deprecate.html +++ b/deps/npm/html/doc/cli/npm-deprecate.html @@ -38,5 +38,5 @@

    SEE ALSO

           - + diff --git a/deps/npm/html/doc/cli/npm-dist-tag.html b/deps/npm/html/doc/cli/npm-dist-tag.html index ec1697d29bb8e9..230013c3e2f7cb 100644 --- a/deps/npm/html/doc/cli/npm-dist-tag.html +++ b/deps/npm/html/doc/cli/npm-dist-tag.html @@ -21,7 +21,9 @@

    SYNOPSIS

    Commit and tag the version change.

    +

    commit-hooks

    + +

    Run git commit hooks when committing the version change.

    sign-git-tag