node: rename from io.js to node
This commit replaces instances of io.js with Node.js, based on the recent convergence. There are some remaining instances of io.js, related to build and the installer. Fixes: https://github.com/nodejs/node/issues/2361 PR-URL: https://github.com/nodejs/node/pull/2367 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: João Reis <reis@janeasystems.com>
This commit is contained in:
parent
ae8d436623
commit
a69ab27ab4
2
.gitignore
vendored
2
.gitignore
vendored
@ -12,6 +12,8 @@ tmp/
|
||||
test/tmp*/
|
||||
iojs
|
||||
iojs_g
|
||||
node
|
||||
node_g
|
||||
*.swp
|
||||
.benchmark_reports
|
||||
/.project
|
||||
|
@ -4,7 +4,7 @@ FLAGS=${.MAKEFLAGS:C/\-J ([0-9]+,?)+//W}
|
||||
all: .DEFAULT
|
||||
.DEFAULT:
|
||||
@which gmake > /dev/null 2>&1 ||\
|
||||
(echo "GMake is required for io.js to build.\
|
||||
(echo "GMake is required for node.js to build.\
|
||||
Install and try again" && exit 1)
|
||||
@gmake ${.FLAGS} ${.TARGETS}
|
||||
|
||||
|
3168
CHANGELOG.md
3168
CHANGELOG.md
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
# io.js Collaborator Guide
|
||||
# Node.js Collaborator Guide
|
||||
|
||||
**Contents**
|
||||
|
||||
@ -9,7 +9,7 @@
|
||||
- [Technical HOWTO](#technical-howto)
|
||||
- [I Just Made a Mistake](#i-just-made-a-mistake)
|
||||
|
||||
This document contains information for Collaborators of the io.js
|
||||
This document contains information for Collaborators of the Node.js
|
||||
project regarding maintaining the code, documentation and issues.
|
||||
|
||||
Collaborators should be familiar with the guidelines for new
|
||||
@ -20,7 +20,7 @@ understand the project governance model as outlined in
|
||||
## Issues and Pull Requests
|
||||
|
||||
Courtesy should always be shown to individuals submitting issues and
|
||||
pull requests to the io.js project.
|
||||
pull requests to the Node.js project.
|
||||
|
||||
Collaborators should feel free to take full responsibility for
|
||||
managing issues and pull requests they feel qualified to handle, as
|
||||
@ -28,16 +28,16 @@ long as this is done while being mindful of these guidelines, the
|
||||
opinions of other Collaborators and guidance of the TC.
|
||||
|
||||
Collaborators may **close** any issue or pull request they believe is
|
||||
not relevant for the future of the io.js project. Where this is
|
||||
not relevant for the future of the Node.js project. Where this is
|
||||
unclear, the issue should be left open for several days to allow for
|
||||
additional discussion. Where this does not yield input from io.js
|
||||
additional discussion. Where this does not yield input from Node.js
|
||||
Collaborators or additional evidence that the issue has relevance, the
|
||||
issue may be closed. Remember that issues can always be re-opened if
|
||||
necessary.
|
||||
|
||||
## Accepting Modifications
|
||||
|
||||
All modifications to the io.js code and documentation should be
|
||||
All modifications to the Node.js code and documentation should be
|
||||
performed via GitHub pull requests, including modifications by
|
||||
Collaborators and TC members.
|
||||
|
||||
@ -101,7 +101,7 @@ information regarding the change process:
|
||||
appropriate.
|
||||
|
||||
See the commit log for examples such as
|
||||
[this one](https://github.com/nodejs/io.js/commit/b636ba8186) if unsure
|
||||
[this one](https://github.com/nodejs/node/commit/b636ba8186) if unsure
|
||||
exactly how to format your commit messages.
|
||||
|
||||
Additionally:
|
||||
@ -137,7 +137,7 @@ $ git merge --ff-only origin/master
|
||||
Apply external patches
|
||||
|
||||
```text
|
||||
$ curl -L https://github.com/nodejs/io.js/pull/xxx.patch | git am --whitespace=fix
|
||||
$ curl -L https://github.com/nodejs/node/pull/xxx.patch | git am --whitespace=fix
|
||||
```
|
||||
|
||||
Check and re-review the changes
|
||||
@ -223,7 +223,7 @@ With `git`, there's a way to override remote trees by force pushing
|
||||
(`git push -f`). This should generally be seen as forbidden (since
|
||||
you're rewriting history on a repository other people are working
|
||||
against) but is allowed for simpler slip-ups such as typos in commit
|
||||
messages. However, you are only allowed to force push to any io.js
|
||||
messages. However, you are only allowed to force push to any Node.js
|
||||
branch within 10 minutes from your original push. If someone else
|
||||
pushes to the branch or the 10 minute period passes, consider the
|
||||
commit final.
|
||||
|
@ -1,10 +1,10 @@
|
||||
# Contributing to io.js
|
||||
# Contributing to Node.js
|
||||
|
||||
## Issue Contributions
|
||||
|
||||
When opening new issues or commenting on existing issues on this repository
|
||||
please make sure discussions are related to concrete technical issues with the
|
||||
io.js software.
|
||||
Node.js software.
|
||||
|
||||
Discussion of non-technical topics including subjects like intellectual
|
||||
property, trademark and high level project questions should move to the
|
||||
@ -13,7 +13,7 @@ instead.
|
||||
|
||||
## Code Contributions
|
||||
|
||||
The io.js project has an open governance model and welcomes new contributors.
|
||||
The Node.js project has an open governance model and welcomes new contributors.
|
||||
Individuals making significant and valuable contributions are made
|
||||
_Collaborators_ and given commit-access to the project. See the
|
||||
[GOVERNANCE.md](./GOVERNANCE.md) document for more information about how this
|
||||
@ -23,13 +23,13 @@ This document will guide you through the contribution process.
|
||||
|
||||
### Step 1: Fork
|
||||
|
||||
Fork the project [on GitHub](https://github.com/nodejs/io.js) and check out your
|
||||
Fork the project [on GitHub](https://github.com/nodejs/node) and check out your
|
||||
copy locally.
|
||||
|
||||
```text
|
||||
$ git clone git@github.com:username/io.js.git
|
||||
$ cd io.js
|
||||
$ git remote add upstream git://github.com/nodejs/io.js.git
|
||||
$ git clone git@github.com:username/node.git
|
||||
$ cd node
|
||||
$ git remote add upstream git://github.com/nodejs/node.git
|
||||
```
|
||||
|
||||
#### Which branch?
|
||||
@ -48,14 +48,14 @@ always welcome but API or behavioral changes to modules at stability level 3
|
||||
|
||||
#### Dependencies
|
||||
|
||||
io.js has several bundled dependencies in the *deps/* and the *tools/*
|
||||
Node.js has several bundled dependencies in the *deps/* and the *tools/*
|
||||
directories that are not part of the project proper. Any changes to files
|
||||
in those directories or its subdirectories should be sent to their respective
|
||||
projects. Do not send your patch to us, we cannot accept it.
|
||||
|
||||
In case of doubt, open an issue in the
|
||||
[issue tracker](https://github.com/nodejs/io.js/issues/) or contact one of the
|
||||
[project Collaborators](https://github.com/nodejs/io.js/#current-project-team-members).
|
||||
[issue tracker](https://github.com/nodejs/node/issues/) or contact one of the
|
||||
[project Collaborators](https://github.com/nodejs/node/#current-project-team-members).
|
||||
([IRC](http://webchat.freenode.net/?channels=io.js) is often the best medium.) Especially do so if you plan to work on something big. Nothing is more
|
||||
frustrating than seeing your hard work go to waste because your vision
|
||||
does not align with the project team.
|
||||
@ -139,10 +139,10 @@ can use this syntax to run it exactly as the test harness would:
|
||||
$ python tools/test.py -v --mode=release parallel/test-stream2-transform
|
||||
```
|
||||
|
||||
You can run tests directly with iojs:
|
||||
You can run tests directly with node:
|
||||
|
||||
```text
|
||||
$ ./iojs ./test/parallel/test-stream2-transform.js
|
||||
$ ./node ./test/parallel/test-stream2-transform.js
|
||||
```
|
||||
|
||||
Remember to recompile with `make -j8` in between test runs if you change
|
||||
@ -154,7 +154,7 @@ core modules.
|
||||
$ git push origin my-feature-branch
|
||||
```
|
||||
|
||||
Go to https://github.com/yourusername/io.js and select your feature branch.
|
||||
Go to https://github.com/yourusername/node and select your feature branch.
|
||||
Click the 'Pull Request' button and fill out the form.
|
||||
|
||||
Pull requests are usually reviewed within a few days. If there are comments
|
||||
|
@ -1,11 +1,11 @@
|
||||
# io.js Project Governance
|
||||
# Node.js Project Governance
|
||||
|
||||
## Technical Committee
|
||||
|
||||
The io.js project is jointly governed by a Technical Committee (TC)
|
||||
The Node.js project is jointly governed by a Technical Steering Committee (TSC)
|
||||
which is responsible for high-level guidance of the project.
|
||||
|
||||
The TC has final authority over this project including:
|
||||
The TSC has final authority over this project including:
|
||||
|
||||
* Technical direction
|
||||
* Project governance and process (including this policy)
|
||||
@ -14,17 +14,17 @@ The TC has final authority over this project including:
|
||||
* Conduct guidelines
|
||||
* Maintaining the list of additional Collaborators
|
||||
|
||||
Initial membership invitations to the TC were given to individuals who
|
||||
had been active contributors to io.js, and who have significant
|
||||
experience with the management of the io.js project. Membership is
|
||||
Initial membership invitations to the TSC were given to individuals who
|
||||
had been active contributors to Node.js, and who have significant
|
||||
experience with the management of the Node.js project. Membership is
|
||||
expected to evolve over time according to the needs of the project.
|
||||
|
||||
For the current list of TC members, see the project
|
||||
For the current list of TSC members, see the project
|
||||
[README.md](./README.md#current-project-team-members).
|
||||
|
||||
## Collaborators
|
||||
|
||||
The [iojs/io.js](https://github.com/nodejs/io.js) GitHub repository is
|
||||
The [nodejs/node](https://github.com/nodejs/node) GitHub repository is
|
||||
maintained by the TC and additional Collaborators who are added by the
|
||||
TC on an ongoing basis.
|
||||
|
||||
@ -37,7 +37,7 @@ _Note:_ If you make a significant contribution and are not considered
|
||||
for commit-access, log an issue or contact a TC member directly and it
|
||||
will be brought up in the next TC meeting.
|
||||
|
||||
Modifications of the contents of the iojs/io.js repository are made on
|
||||
Modifications of the contents of the nodejs/node repository are made on
|
||||
a collaborative basis. Anybody with a GitHub account may propose a
|
||||
modification via pull request and it will be considered by the project
|
||||
Collaborators. All pull requests must be reviewed and accepted by a
|
||||
|
12
LICENSE
12
LICENSE
@ -1,7 +1,7 @@
|
||||
io.js is licensed for use as follows:
|
||||
Node.js is licensed for use as follows:
|
||||
|
||||
"""
|
||||
Copyright io.js contributors. All rights reserved.
|
||||
Copyright Node.js contributors. All rights reserved.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to
|
||||
@ -22,7 +22,7 @@ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||
IN THE SOFTWARE.
|
||||
"""
|
||||
|
||||
This license applies to parts of io.js originating from the
|
||||
This license applies to parts of Node.js originating from the
|
||||
https://github.com/joyent/node repository:
|
||||
|
||||
"""
|
||||
@ -46,10 +46,10 @@ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||
IN THE SOFTWARE.
|
||||
"""
|
||||
|
||||
The io.js license applies to all parts of io.js that are not externally
|
||||
The Node.js license applies to all parts of Node.js that are not externally
|
||||
maintained libraries.
|
||||
|
||||
The externally maintained libraries used by io.js are:
|
||||
The externally maintained libraries used by Node.js are:
|
||||
|
||||
- V8, located at deps/v8. V8's license follows:
|
||||
"""
|
||||
@ -612,7 +612,7 @@ The externally maintained libraries used by io.js are:
|
||||
included for use in the npm website and documentation,
|
||||
used with permission.
|
||||
|
||||
This program uses several io.js modules contained in the node_modules/
|
||||
This program uses several Node.js modules contained in the node_modules/
|
||||
subdirectory, according to the terms of their respective licenses.
|
||||
"""
|
||||
|
||||
|
36
Makefile
36
Makefile
@ -5,7 +5,7 @@ PYTHON ?= python
|
||||
DESTDIR ?=
|
||||
SIGN ?=
|
||||
PREFIX ?= /usr/local
|
||||
STAGINGSERVER ?= iojs-www
|
||||
STAGINGSERVER ?= node-www
|
||||
|
||||
OSTYPE := $(shell uname -s | tr '[A-Z]' '[a-z]')
|
||||
|
||||
@ -13,9 +13,9 @@ OSTYPE := $(shell uname -s | tr '[A-Z]' '[a-z]')
|
||||
EXEEXT := $(shell $(PYTHON) -c \
|
||||
"import sys; print('.exe' if sys.platform == 'win32' else '')")
|
||||
|
||||
NODE ?= ./iojs$(EXEEXT)
|
||||
NODE_EXE = iojs$(EXEEXT)
|
||||
NODE_G_EXE = iojs_g$(EXEEXT)
|
||||
NODE ?= ./node$(EXEEXT)
|
||||
NODE_EXE = node$(EXEEXT)
|
||||
NODE_G_EXE = node_g$(EXEEXT)
|
||||
|
||||
# Flags for packaging.
|
||||
BUILD_DOWNLOAD_FLAGS ?= --download=all
|
||||
@ -267,7 +267,7 @@ ifeq ($(DESTCPU),ia32)
|
||||
override DESTCPU=x86
|
||||
endif
|
||||
|
||||
TARNAME=iojs-$(FULLVERSION)
|
||||
TARNAME=node-$(FULLVERSION)
|
||||
TARBALL=$(TARNAME).tar
|
||||
BINARYNAME=$(TARNAME)-$(PLATFORM)-$(ARCH)
|
||||
BINARYTAR=$(BINARYNAME).tar
|
||||
@ -311,11 +311,11 @@ $(PKG): release-only
|
||||
$(MAKE) install V=$(V) DESTDIR=$(PKGDIR)
|
||||
SIGN="$(CODESIGN_CERT)" PKGDIR="$(PKGDIR)" bash tools/osx-codesign.sh
|
||||
cat tools/osx-pkg.pmdoc/index.xml.tmpl \
|
||||
| sed -E "s/\\{iojsversion\\}/$(FULLVERSION)/g" \
|
||||
| sed -E "s/\\{nodeversion\\}/$(FULLVERSION)/g" \
|
||||
| sed -E "s/\\{npmversion\\}/$(NPMVERSION)/g" \
|
||||
> tools/osx-pkg.pmdoc/index.xml
|
||||
$(PACKAGEMAKER) \
|
||||
--id "org.iojs.pkg" \
|
||||
--id "org.node.pkg" \
|
||||
--doc tools/osx-pkg.pmdoc \
|
||||
--out $(PKG)
|
||||
SIGN="$(PRODUCTSIGN_CERT)" PKG="$(PKG)" bash tools/osx-productsign.sh
|
||||
@ -324,13 +324,13 @@ pkg: $(PKG)
|
||||
|
||||
pkg-upload: pkg
|
||||
ssh $(STAGINGSERVER) "mkdir -p staging/$(DISTTYPEDIR)/$(FULLVERSION)"
|
||||
scp -p iojs-$(FULLVERSION).pkg $(STAGINGSERVER):staging/$(DISTTYPEDIR)/$(FULLVERSION)/iojs-$(FULLVERSION).pkg
|
||||
ssh $(STAGINGSERVER) "touch staging/$(DISTTYPEDIR)/$(FULLVERSION)/iojs-$(FULLVERSION).pkg.done"
|
||||
scp -p node-$(FULLVERSION).pkg $(STAGINGSERVER):staging/$(DISTTYPEDIR)/$(FULLVERSION)/node-$(FULLVERSION).pkg
|
||||
ssh $(STAGINGSERVER) "touch staging/$(DISTTYPEDIR)/$(FULLVERSION)/node-$(FULLVERSION).pkg.done"
|
||||
|
||||
$(TARBALL): release-only $(NODE_EXE) doc
|
||||
git checkout-index -a -f --prefix=$(TARNAME)/
|
||||
mkdir -p $(TARNAME)/doc/api
|
||||
cp doc/iojs.1 $(TARNAME)/doc/iojs.1
|
||||
cp doc/node.1 $(TARNAME)/doc/node.1
|
||||
cp -r out/doc/api/* $(TARNAME)/doc/api/
|
||||
rm -rf $(TARNAME)/deps/v8/{test,samples,tools/profviz} # too big
|
||||
rm -rf $(TARNAME)/doc/images # too big
|
||||
@ -350,11 +350,11 @@ tar: $(TARBALL)
|
||||
|
||||
tar-upload: tar
|
||||
ssh $(STAGINGSERVER) "mkdir -p staging/$(DISTTYPEDIR)/$(FULLVERSION)"
|
||||
scp -p iojs-$(FULLVERSION).tar.gz $(STAGINGSERVER):staging/$(DISTTYPEDIR)/$(FULLVERSION)/iojs-$(FULLVERSION).tar.gz
|
||||
ssh $(STAGINGSERVER) "touch staging/$(DISTTYPEDIR)/$(FULLVERSION)/iojs-$(FULLVERSION).tar.gz.done"
|
||||
scp -p node-$(FULLVERSION).tar.gz $(STAGINGSERVER):staging/$(DISTTYPEDIR)/$(FULLVERSION)/node-$(FULLVERSION).tar.gz
|
||||
ssh $(STAGINGSERVER) "touch staging/$(DISTTYPEDIR)/$(FULLVERSION)/node-$(FULLVERSION).tar.gz.done"
|
||||
ifeq ($(XZ), 0)
|
||||
scp -p iojs-$(FULLVERSION).tar.xz $(STAGINGSERVER):staging/$(DISTTYPEDIR)/$(FULLVERSION)/iojs-$(FULLVERSION).tar.xz
|
||||
ssh $(STAGINGSERVER) "touch staging/$(DISTTYPEDIR)/$(FULLVERSION)/iojs-$(FULLVERSION).tar.xz.done"
|
||||
scp -p node-$(FULLVERSION).tar.xz $(STAGINGSERVER):staging/$(DISTTYPEDIR)/$(FULLVERSION)/node-$(FULLVERSION).tar.xz
|
||||
ssh $(STAGINGSERVER) "touch staging/$(DISTTYPEDIR)/$(FULLVERSION)/node-$(FULLVERSION).tar.xz.done"
|
||||
endif
|
||||
|
||||
doc-upload: tar
|
||||
@ -415,11 +415,11 @@ binary: $(BINARYTAR)
|
||||
|
||||
binary-upload: binary
|
||||
ssh $(STAGINGSERVER) "mkdir -p staging/$(DISTTYPEDIR)/$(FULLVERSION)"
|
||||
scp -p iojs-$(FULLVERSION)-$(OSTYPE)-$(ARCH).tar.gz $(STAGINGSERVER):staging/$(DISTTYPEDIR)/$(FULLVERSION)/iojs-$(FULLVERSION)-$(OSTYPE)-$(ARCH).tar.gz
|
||||
ssh $(STAGINGSERVER) "touch staging/$(DISTTYPEDIR)/$(FULLVERSION)/iojs-$(FULLVERSION)-$(OSTYPE)-$(ARCH).tar.gz.done"
|
||||
scp -p node-$(FULLVERSION)-$(OSTYPE)-$(ARCH).tar.gz $(STAGINGSERVER):staging/$(DISTTYPEDIR)/$(FULLVERSION)/node-$(FULLVERSION)-$(OSTYPE)-$(ARCH).tar.gz
|
||||
ssh $(STAGINGSERVER) "touch staging/$(DISTTYPEDIR)/$(FULLVERSION)/node-$(FULLVERSION)-$(OSTYPE)-$(ARCH).tar.gz.done"
|
||||
ifeq ($(XZ), 0)
|
||||
scp -p iojs-$(FULLVERSION)-$(OSTYPE)-$(ARCH).tar.xz $(STAGINGSERVER):staging/$(DISTTYPEDIR)/$(FULLVERSION)/iojs-$(FULLVERSION)-$(OSTYPE)-$(ARCH).tar.xz
|
||||
ssh $(STAGINGSERVER) "touch staging/$(DISTTYPEDIR)/$(FULLVERSION)/iojs-$(FULLVERSION)-$(OSTYPE)-$(ARCH).tar.xz.done"
|
||||
scp -p node-$(FULLVERSION)-$(OSTYPE)-$(ARCH).tar.xz $(STAGINGSERVER):staging/$(DISTTYPEDIR)/$(FULLVERSION)/node-$(FULLVERSION)-$(OSTYPE)-$(ARCH).tar.xz
|
||||
ssh $(STAGINGSERVER) "touch staging/$(DISTTYPEDIR)/$(FULLVERSION)/node-$(FULLVERSION)-$(OSTYPE)-$(ARCH).tar.xz.done"
|
||||
endif
|
||||
|
||||
haswrk=$(shell which wrk > /dev/null 2>&1; echo $$?)
|
||||
|
60
README.md
60
README.md
@ -1,41 +1,34 @@
|
||||
|
||||
io.js
|
||||
Node.js
|
||||
=====
|
||||
|
||||
[](https://gitter.im/nodejs/io.js?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
||||
[](https://gitter.im/nodejs/node?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
||||
|
||||
This repository began as a GitHub fork of
|
||||
[joyent/node](https://github.com/joyent/node).
|
||||
|
||||
io.js contributions, releases, and contributorship are under an
|
||||
Node.js contributions, releases, and contributorship are under an
|
||||
[open governance model](./GOVERNANCE.md).
|
||||
We intend to land, with increasing regularity, releases which are
|
||||
compatible with the npm ecosystem that has been built to date for
|
||||
Node.js.
|
||||
|
||||
## Is it io.js or IO.js or iojs or IOjs or iOjS?
|
||||
|
||||
The official name is **io.js**, which should never be capitalized,
|
||||
especially not at the start of a sentence, unless it is being
|
||||
displayed in a location that is customarily all-caps (such as
|
||||
the title of man pages).
|
||||
|
||||
## Download
|
||||
|
||||
Binaries, installers, and source tarballs are available at
|
||||
<https://iojs.org>.
|
||||
<https://nodejs.org>.
|
||||
|
||||
**Releases** are available at <https://iojs.org/dist/>, listed under
|
||||
their version string. The <https://iojs.org/dist/latest/> symlink
|
||||
**Releases** are available at <https://nodejs.org/dist/>, listed under
|
||||
their version string. The <https://nodejs.org/dist/latest/> symlink
|
||||
will point to the latest release directory.
|
||||
|
||||
**Nightly** builds are available at
|
||||
<https://iojs.org/download/nightly/>, listed under their version
|
||||
<https://nodejs.org/download/nightly/>, listed under their version
|
||||
string which includes their date (in UTC time) and the commit SHA at
|
||||
the HEAD of the release.
|
||||
|
||||
**API documentation** is available in each release and nightly
|
||||
directory under _docs_. <https://iojs.org/api/> points to the latest version.
|
||||
directory under _docs_. <https://nodejs.org/api/> points to the latest version.
|
||||
|
||||
### Verifying Binaries
|
||||
|
||||
@ -45,10 +38,10 @@ download. To check that a downloaded file matches the checksum, run
|
||||
it through `sha256sum` with a command such as:
|
||||
|
||||
```
|
||||
$ grep iojs-vx.y.z.tar.gz SHASUMS256.txt | sha256sum -c -
|
||||
$ grep node-vx.y.z.tar.gz SHASUMS256.txt | sha256sum -c -
|
||||
```
|
||||
|
||||
_(Where "iojs-vx.y.z.tar.gz" is the name of the file you have
|
||||
_(Where "node-vx.y.z.tar.gz" is the name of the file you have
|
||||
downloaded)_
|
||||
|
||||
Additionally, releases (not nightlies) have GPG signed copies of
|
||||
@ -68,7 +61,7 @@ $ gpg --keyserver pool.sks-keyservers.net \
|
||||
_(Include each of the key fingerprints at the end of this command.)_
|
||||
|
||||
You can then use `gpg --verify SHASUMS256.txt.asc` to verify that the
|
||||
file has been signed by an authorized member of the io.js team.
|
||||
file has been signed by an authorized member of the Node.js team.
|
||||
|
||||
Once verified, use the SHASUMS256.txt.asc file to get the checksum for
|
||||
the binary verification command above.
|
||||
@ -116,13 +109,13 @@ $ make doc
|
||||
To read the documentation:
|
||||
|
||||
```text
|
||||
$ man doc/iojs.1
|
||||
$ man doc/node.1
|
||||
```
|
||||
|
||||
To test if io.js was built correctly:
|
||||
To test if Node.js was built correctly:
|
||||
|
||||
```
|
||||
$ iojs -e "console.log('Hello from io.js ' + process.version)"
|
||||
$ node -e "console.log('Hello from node.js ' + process.version)"
|
||||
```
|
||||
|
||||
### Windows
|
||||
@ -146,10 +139,10 @@ To run the tests:
|
||||
> vcbuild test
|
||||
```
|
||||
|
||||
To test if io.js was built correctly:
|
||||
To test if Node.js was built correctly:
|
||||
|
||||
```
|
||||
$ iojs -e "console.log('Hello from io.js ' + process.version)"
|
||||
$ node -e "console.log('Hello from node.js ' + process.version)"
|
||||
```
|
||||
|
||||
### Android / Android based devices, aka. Firefox OS
|
||||
@ -262,11 +255,11 @@ as `deps/icu` (You'll have: `deps/icu/source/...`)
|
||||
> vcbuild full-icu
|
||||
```
|
||||
|
||||
# Building io.js with FIPS-compliant OpenSSL
|
||||
# Building Node.js with FIPS-compliant OpenSSL
|
||||
|
||||
NOTE: Windows is not yet supported
|
||||
|
||||
It is possible to build io.js with
|
||||
It is possible to build Node.js with
|
||||
[OpenSSL FIPS module](https://www.openssl.org/docs/fips/fipsnotes.html).
|
||||
|
||||
**Note** that building in this way does **not** allow you to
|
||||
@ -302,26 +295,25 @@ Instructions:
|
||||
(http://csrc.nist.gov/groups/STM/cmvp/documents/140-1/140sp/140sp1747.pdf).
|
||||
The only exception is that `./config no-asm` can be
|
||||
used in place of `./config` )
|
||||
6. Get into io.js checkout folder
|
||||
6. Get into Node.js checkout folder
|
||||
7. `./configure --openssl-fips=/path/to/openssl-fips/installdir`
|
||||
For example on ubuntu 12 the installation directory was
|
||||
/usr/local/ssl/fips-2.0
|
||||
8. Build io.js with `make -j`
|
||||
8. Build Node.js with `make -j`
|
||||
9. Verify with `node -p "process.versions.openssl"` (`1.0.2a-fips`)
|
||||
|
||||
|
||||
## Resources for Newcomers
|
||||
|
||||
* [CONTRIBUTING.md](./CONTRIBUTING.md)
|
||||
* [GOVERNANCE.md](./GOVERNANCE.md)
|
||||
* IRC:
|
||||
[#io.js on Freenode.net](http://webchat.freenode.net?channels=io.js&uio=d4)
|
||||
* [iojs/io.js on Gitter](https://gitter.im/nodejs/io.js)
|
||||
* [nodejs/node on Gitter](https://gitter.im/nodejs/node)
|
||||
|
||||
## Security
|
||||
|
||||
All security bugs in io.js are taken seriously and should be reported by
|
||||
emailing security@iojs.org. This will be delivered to a subset of the project
|
||||
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
|
||||
public until they have been handled by the security team.
|
||||
|
||||
@ -331,9 +323,9 @@ handling your report.
|
||||
|
||||
## Current Project Team Members
|
||||
|
||||
The io.js project team comprises a group of core collaborators and a sub-group
|
||||
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 io.js project, see
|
||||
information about the governance of the Node.js project, see
|
||||
[GOVERNANCE.md](./GOVERNANCE.md).
|
||||
|
||||
=======
|
||||
@ -392,4 +384,4 @@ information about the governance of the io.js project, see
|
||||
* **João Reis** <reis@janeasystems.com> ([@joaocgreis](https://github.com/joaocgreis))
|
||||
|
||||
Collaborators & TSC members follow the [COLLABORATOR_GUIDE.md](./COLLABORATOR_GUIDE.md) in
|
||||
maintaining the io.js project.
|
||||
maintaining the Node.js project.
|
||||
|
30
ROADMAP.md
30
ROADMAP.md
@ -1,4 +1,4 @@
|
||||
# io.js Roadmap
|
||||
# Node.js Roadmap
|
||||
|
||||
***This is a living document, it describes the policy and priorities as they exist today but can evolve over time.***
|
||||
|
||||
@ -6,15 +6,15 @@
|
||||
|
||||
The most important consideration in every code change is the impact it will have, positive or negative, on the ecosystem (modules and applications).
|
||||
|
||||
io.js does not remove stdlib JS API.
|
||||
Node.js does not remove stdlib JS API.
|
||||
|
||||
Shipping with current and well supported dependencies is the best way to ensure long term stability of the platform. When those dependencies are no longer maintained io.js will take on their continued maintenance as part of our [Long Term Support policy](#long-term-support).
|
||||
Shipping with current and well supported dependencies is the best way to ensure long term stability of the platform. When those dependencies are no longer maintained Node.js will take on their continued maintenance as part of our [Long Term Support policy](#long-term-support).
|
||||
|
||||
io.js will continue to adopt new V8 releases.
|
||||
Node.js will continue to adopt new V8 releases.
|
||||
* When V8 ships a breaking change to their C++ API that can be handled by [`nan`](https://github.com/rvagg/nan)
|
||||
the *minor* version of io.js will be increased.
|
||||
the *minor* version of Node.js will be increased.
|
||||
* When V8 ships a breaking change to their C++ API that can NOT be handled by [`nan`](https://github.com/rvagg/nan)
|
||||
the *major* version of io.js will be increased.
|
||||
the *major* version of Node.js will be increased.
|
||||
* When new features in the JavaScript language are introduced by V8 the
|
||||
*minor* version number will be increased. TC39 has stated clearly that no
|
||||
backwards incompatible changes will be made to the language so it is
|
||||
@ -26,23 +26,23 @@ Any API addition will cause an increase in the *minor* version.
|
||||
|
||||
### Long Term Support
|
||||
|
||||
io.js supports old versions for as long as community members are fixing bugs in them.
|
||||
Node.js supports old versions for as long as community members are fixing bugs in them.
|
||||
|
||||
As long as there is a community back porting bug fixes we will push patch releases for those versions of io.js.
|
||||
As long as there is a community back porting bug fixes we will push patch releases for those versions of Node.js.
|
||||
|
||||
When old versions of dependencies like V8 are no longer supported by their project io.js will take on the responsibility of maintenance to ensure continued long term support in io.js patch releases.
|
||||
When old versions of dependencies like V8 are no longer supported by their project Node.js will take on the responsibility of maintenance to ensure continued long term support in Node.js patch releases.
|
||||
|
||||
## Channels
|
||||
|
||||
Channels are points of collaboration with the broader community and are not strictly scoped to a repository or branch.
|
||||
|
||||
* Release - Stable production ready builds. Unique version numbers following semver.
|
||||
* Canary - Nightly builds w/ V8 version in Chrome Canary + changes landing to io.js. No version designation.
|
||||
* Canary - Nightly builds w/ V8 version in Chrome Canary + changes landing to Node.js. No version designation.
|
||||
* NG - "Next Generation." No version designation.
|
||||
|
||||
## NG (Next Generation)
|
||||
|
||||
In order for io.js to stay competitive we need to work on the next generation of the platform which will more accurately integrate and reflect the advancements in the language and the ecosystem.
|
||||
In order for Node.js to stay competitive we need to work on the next generation of the platform which will more accurately integrate and reflect the advancements in the language and the ecosystem.
|
||||
|
||||
While this constitutes a great leap forward for the platform we will be making this leap without breaking backwards compatibility with the existing ecosystem of modules.
|
||||
|
||||
@ -50,9 +50,9 @@ While this constitutes a great leap forward for the platform we will be making t
|
||||
|
||||
## Debugging and Tracing
|
||||
|
||||
Debugging is one of the first things from everyone's mouth, both developer and enterprise, when describing trouble they've had with node.js/io.js.
|
||||
Debugging is one of the first things from everyone's mouth, both developer and enterprise, when describing trouble they've had with Node.js.
|
||||
|
||||
The goal of io.js' effort is to build a healthy debugging and tracing ecosystem and not to try and build any "silver bullet" features for core (like the domains debacle).
|
||||
The goal of Node.js' effort is to build a healthy debugging and tracing ecosystem and not to try and build any "silver bullet" features for core (like the domains debacle).
|
||||
|
||||
The [Tracing WG](https://github.com/nodejs/tracing-wg) is driving this effort:
|
||||
|
||||
@ -60,8 +60,8 @@ The [Tracing WG](https://github.com/nodejs/tracing-wg) is driving this effort:
|
||||
* async-listener - userland module that will dogfood AsyncWrap as well as provide many often requested debugging features.
|
||||
* Tracing
|
||||
* Add tracing support for more platforms (LTTng, etc).
|
||||
* [Unify the Tracing endpoint](https://github.com/nodejs/io.js/issues/729).
|
||||
* New Chrome Debugger - Google is working on a version of Chrome's debugger that is without Chrome and can be used with io.js.
|
||||
* [Unify the Tracing endpoint](https://github.com/nodejs/node/issues/729).
|
||||
* New Chrome Debugger - Google is working on a version of Chrome's debugger that is without Chrome and can be used with Node.js.
|
||||
|
||||
## Ecosystem Automation
|
||||
|
||||
|
@ -1,11 +1,11 @@
|
||||
# io.js Working Groups
|
||||
# Node.js Working Groups
|
||||
|
||||
io.js Working Groups are autonomous projects created by the
|
||||
[Technical Committee (TC)](https://github.com/nodejs/io.js/blob/master/GOVERNANCE.md#technical-committee).
|
||||
Node.js Working Groups are autonomous projects created by the
|
||||
[Technical Steering Committee (TSC)](https://github.com/nodejs/node/blob/master/GOVERNANCE.md#technical-committee).
|
||||
|
||||
Working Groups can be formed at any time but must be ratified by the TC.
|
||||
Working Groups can be formed at any time but must be ratified by the TSC.
|
||||
Once formed the work defined in the Working Group charter is the
|
||||
responsibility of the WG rather than the TC.
|
||||
responsibility of the WG rather than the TSC.
|
||||
|
||||
It is important that Working Groups are not formed pre-maturely. Working
|
||||
Groups are not formed to *begin* a set of tasks but instead are formed
|
||||
@ -14,7 +14,7 @@ think it would benefit from being done as an autonomous project.
|
||||
|
||||
If the work defined in a Working Group charter is completed the Working
|
||||
Group should be dissolved and the responsibility for governance absorbed
|
||||
back in to the TC.
|
||||
back in to the TSC.
|
||||
|
||||
## Current Working Groups
|
||||
|
||||
@ -33,30 +33,30 @@ back in to the TC.
|
||||
### [Website](https://github.com/nodejs/website)
|
||||
|
||||
The website working group's purpose is to build and maintain a public
|
||||
website for the `io.js` project.
|
||||
website for the `Node.js` project.
|
||||
|
||||
Its responsibilities are:
|
||||
* Develop and maintain a build and automation system for `iojs.org`.
|
||||
* Ensure the site is regularly updated with changes made to `io.js` like
|
||||
* Develop and maintain a build and automation system for `nodejs.org`.
|
||||
* Ensure the site is regularly updated with changes made to `Node.js` like
|
||||
releases and features.
|
||||
* Foster and enable a community of translators.
|
||||
|
||||
### [Streams](https://github.com/nodejs/readable-stream)
|
||||
|
||||
The Streams WG is dedicated to the support and improvement of the Streams API
|
||||
as used in io.js and the npm ecosystem. We seek to create a composable API that
|
||||
as used in Node.js and the npm ecosystem. We seek to create a composable API that
|
||||
solves the problem of representing multiple occurrences of an event over time
|
||||
in a humane, low-overhead fashion. Improvements to the API will be driven by
|
||||
the needs of the ecosystem; interoperability and backwards compatibility with
|
||||
other solutions and prior versions are paramount in importance. Our
|
||||
responsibilities include:
|
||||
|
||||
* Addressing stream issues on the io.js issue tracker.
|
||||
* Authoring and editing stream documentation within the io.js project.
|
||||
* Reviewing changes to stream subclasses within the io.js project.
|
||||
* Redirecting changes to streams from the io.js project to this project.
|
||||
* Assisting in the implementation of stream providers within io.js.
|
||||
* Recommending versions of readable-stream to be included in io.js.
|
||||
* Addressing stream issues on the Node.js issue tracker.
|
||||
* Authoring and editing stream documentation within the Node.js project.
|
||||
* Reviewing changes to stream subclasses within the Node.js project.
|
||||
* Redirecting changes to streams from the Node.js project to this project.
|
||||
* Assisting in the implementation of stream providers within Node.js.
|
||||
* Recommending versions of readable-stream to be included in Node.js.
|
||||
* Messaging about the future of streams to give the community advance notice of changes.
|
||||
|
||||
|
||||
@ -75,7 +75,7 @@ Its responsibilities are:
|
||||
### [Tracing](https://github.com/nodejs/tracing-wg)
|
||||
|
||||
The tracing working group's purpose is to increase the
|
||||
transparency of software written in io.js.
|
||||
transparency of software written in Node.js.
|
||||
|
||||
Its responsibilities are:
|
||||
* Collaboration with V8 to integrate with `trace_event`.
|
||||
@ -95,12 +95,12 @@ language community might then produce multiple localizations for
|
||||
various project resources.
|
||||
|
||||
Their responsibilities are:
|
||||
* Translations of any io.js materials they believe are relevant to their
|
||||
* Translations of any Node.js materials they believe are relevant to their
|
||||
community.
|
||||
* Review processes for keeping translations up
|
||||
to date and of high quality.
|
||||
* Social media channels in their language.
|
||||
* Promotion of io.js speakers for meetups and conferences in their
|
||||
* Promotion of Node.js speakers for meetups and conferences in their
|
||||
language.
|
||||
|
||||
Each language community maintains its own membership.
|
||||
@ -144,7 +144,7 @@ Each language community maintains its own membership.
|
||||
### [Evangelism](https://github.com/nodejs/evangelism)
|
||||
|
||||
The evangelism working group promotes the accomplishments
|
||||
of io.js and lets the community know how they can get involved.
|
||||
of Node.js and lets the community know how they can get involved.
|
||||
|
||||
Their responsibilities are:
|
||||
* Project messaging.
|
||||
@ -158,7 +158,7 @@ content.
|
||||
### [Roadmap](https://github.com/nodejs/roadmap)
|
||||
|
||||
The roadmap working group is responsible for user community outreach
|
||||
and the translation of their concerns into a plan of action for io.js.
|
||||
and the translation of their concerns into a plan of action for Node.js.
|
||||
|
||||
The final [ROADMAP](./ROADMAP.md) document is still owned by the TC and requires
|
||||
the same approval for changes as any other project asset.
|
||||
@ -172,10 +172,10 @@ Their responsibilities are:
|
||||
### [Docker](https://github.com/nodejs/docker-iojs)
|
||||
|
||||
The Docker working group's purpose is to build, maintain, and improve official
|
||||
Docker images for the `io.js` project.
|
||||
Docker images for the `Node.js` project.
|
||||
|
||||
Their responsibilities are:
|
||||
* Keep the official Docker images updated in line with new `io.js` releases.
|
||||
* Keep the official Docker images updated in line with new `Node.js` releases.
|
||||
* Decide and implement image improvements and/or fixes.
|
||||
* Maintain and improve the images' documentation.
|
||||
|
||||
@ -184,9 +184,9 @@ Their responsibilities are:
|
||||
|
||||
The Addon API Working Group is responsible for maintaining the NAN project and
|
||||
corresponding _nan_ package in npm. The NAN project makes available an
|
||||
abstraction layer for native add-on authors for both Node.js and io.js,
|
||||
abstraction layer for native add-on authors for both Node.js and Node.js,
|
||||
assisting in the writing of code that is compatible with many actively used
|
||||
versions of Node.js, io.js, V8 and libuv.
|
||||
versions of Node.js, Node.js, V8 and libuv.
|
||||
|
||||
Their responsibilities are:
|
||||
|
||||
@ -194,12 +194,12 @@ Their responsibilities are:
|
||||
including code, issues and documentation.
|
||||
* Maintaining the [addon-examples](https://github.com/nodejs/node-addon-examples)
|
||||
GitHub repository, including code, issues and documentation.
|
||||
* Maintaining the C++ Addon API within the io.js project, in subordination to
|
||||
the io.js TC.
|
||||
* Maintaining the Addon documentation within the io.js project, in
|
||||
subordination to the io.js TC.
|
||||
* Maintaining the C++ Addon API within the Node.js project, in subordination to
|
||||
the Node.js TSC.
|
||||
* Maintaining the Addon documentation within the Node.js project, in
|
||||
subordination to the Node.js TSC.
|
||||
* Maintaining the _nan_ package in npm, releasing new versions as appropriate.
|
||||
* Messaging about the future of the io.js and NAN interface to give the
|
||||
* Messaging about the future of the Node.js and NAN interface to give the
|
||||
community advance notice of changes.
|
||||
|
||||
The current members can be found in their
|
||||
@ -239,7 +239,7 @@ governance process, hence the term "bootstrap."
|
||||
|
||||
### *[insert WG name]* Working Group
|
||||
|
||||
The io.js *[insert WG name]* is jointly governed by a Working Group (WG)
|
||||
The Node.js *[insert WG name]* is jointly governed by a Working Group (WG)
|
||||
that is responsible for high-level guidance of the project.
|
||||
|
||||
The WG has final authority over this project including:
|
||||
|
@ -1,7 +1,7 @@
|
||||
# io.js core benchmark tests
|
||||
# Node.js core benchmark tests
|
||||
|
||||
This folder contains benchmark tests to measure the performance for certain
|
||||
io.js APIs.
|
||||
Node.js APIs.
|
||||
|
||||
## Prerequisites
|
||||
|
||||
|
@ -19,7 +19,7 @@ if (module === require.main) {
|
||||
var type = process.argv[2];
|
||||
var testFilter = process.argv[3];
|
||||
if (!type) {
|
||||
console.error('usage:\n ./iojs benchmark/common.js <type> [testFilter]');
|
||||
console.error('usage:\n ./node benchmark/common.js <type> [testFilter]');
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/bin/bash
|
||||
cd "$(dirname "$(dirname $0)")"
|
||||
|
||||
node=${NODE:-./iojs}
|
||||
node=${NODE:-./node}
|
||||
|
||||
name=${NAME:-stacks}
|
||||
|
||||
@ -22,7 +22,7 @@ fi
|
||||
ulimit -n 100000
|
||||
$node benchmark/http_simple.js &
|
||||
nodepid=$!
|
||||
echo "iojs pid = $nodepid"
|
||||
echo "node pid = $nodepid"
|
||||
sleep 1
|
||||
|
||||
# has to stay alive until dtrace exits
|
||||
@ -62,7 +62,7 @@ echo 'Turn the stacks into a svg'
|
||||
stackvis dtrace flamegraph-svg < "$name".src > "$name".raw.svg
|
||||
|
||||
echo 'Prune tiny stacks out of the graph'
|
||||
iojs -e '
|
||||
node -e '
|
||||
var infile = process.argv[1];
|
||||
var outfile = process.argv[2];
|
||||
var output = "";
|
||||
|
@ -24,7 +24,7 @@ if [ "$k" = "no" ]; then
|
||||
else
|
||||
k="-k"
|
||||
fi
|
||||
node=${NODE:-./iojs}
|
||||
node=${NODE:-./node}
|
||||
|
||||
$node benchmark/http_simple.js &
|
||||
npid=$!
|
||||
|
@ -4,7 +4,7 @@ SERVER=127.0.0.1
|
||||
PORT=${PORT:=8000}
|
||||
|
||||
# You may want to configure your TCP settings to make many ports available
|
||||
# to node and ab. On macintosh use:
|
||||
# to node and ab. On macintosh use:
|
||||
# sudo sysctl -w net.inet.ip.portrange.first=32768
|
||||
# sudo sysctl -w net.inet.tcp.msl=1000
|
||||
|
||||
@ -14,7 +14,7 @@ if [ ! -d benchmark/ ]; then
|
||||
fi
|
||||
|
||||
if [ $SERVER == "127.0.0.1" ]; then
|
||||
./iojs benchmark/http_simple.js &
|
||||
./node benchmark/http_simple.js &
|
||||
node_pid=$!
|
||||
sleep 1
|
||||
fi
|
||||
@ -24,7 +24,7 @@ date=`date "+%Y%m%d%H%M%S"`
|
||||
ab_hello_world() {
|
||||
local type="$1"
|
||||
local ressize="$2"
|
||||
if [ $type == "string" ]; then
|
||||
if [ $type == "string" ]; then
|
||||
local uri="bytes/$ressize"
|
||||
else
|
||||
local uri="buffer/$ressize"
|
||||
@ -54,7 +54,7 @@ ab_hello_world() {
|
||||
echo "webserver-rev: $rev" >> $summary_fn
|
||||
echo "webserver-uname: $uname" >> $summary_fn
|
||||
|
||||
grep Req $summary_fn
|
||||
grep Req $summary_fn
|
||||
|
||||
echo "Summary: $summary_fn"
|
||||
echo
|
||||
@ -64,7 +64,7 @@ ab_hello_world() {
|
||||
ab_hello_world 'string' '1024'
|
||||
ab_hello_world 'buffer' '1024'
|
||||
|
||||
# 100k
|
||||
# 100k
|
||||
ab_hello_world 'string' '102400'
|
||||
ab_hello_world 'buffer' '102400'
|
||||
|
||||
|
@ -1,14 +1,14 @@
|
||||
#!/usr/bin/env Rscript
|
||||
|
||||
# To use this script you'll need to install R: http://www.r-project.org/
|
||||
# and a library for R called ggplot2
|
||||
# and a library for R called ggplot2
|
||||
# Which can be done by starting R and typing install.packages("ggplot2")
|
||||
# like this:
|
||||
#
|
||||
# shell% R
|
||||
# R version 2.11.0 beta (2010-04-12 r51689)
|
||||
# > install.packages("ggplot2")
|
||||
# (follow prompt)
|
||||
# (follow prompt)
|
||||
#
|
||||
# Then you can try this script by providing a full path to .data file
|
||||
# outputed from 'make bench'
|
||||
@ -17,7 +17,7 @@
|
||||
# > make bench
|
||||
# ...
|
||||
# > ./benchmark/plot.R .benchmark_reports/ab-hello-world-buffer-1024/ff456b38862de3fd0118c6ac6b3f46edb1fbb87f/20101013162056.data
|
||||
#
|
||||
#
|
||||
# This will generate a PNG file which you can view
|
||||
#
|
||||
#
|
||||
@ -39,20 +39,20 @@ ab.load <- function (filename, name) {
|
||||
#ab.tsPoint <- function (d) {
|
||||
# qplot(time_s, ttime, data=d, facets=server~.,
|
||||
# geom="point", alpha=I(1/15), ylab="response time (ms)",
|
||||
# xlab="time (s)", main="c=30, res=26kb",
|
||||
# xlab="time (s)", main="c=30, res=26kb",
|
||||
# ylim=c(0,100))
|
||||
#}
|
||||
#
|
||||
#ab.tsLine <- function (d) {
|
||||
# qplot(time_s, ttime, data=d, facets=server~.,
|
||||
# geom="line", ylab="response time (ms)",
|
||||
# xlab="time (s)", main="c=30, res=26kb",
|
||||
# xlab="time (s)", main="c=30, res=26kb",
|
||||
# ylim=c(0,100))
|
||||
#}
|
||||
|
||||
|
||||
filename <- args[0:1]
|
||||
data <- ab.load(filename, "iojs")
|
||||
data <- ab.load(filename, "node")
|
||||
|
||||
|
||||
# histogram
|
||||
|
@ -5,7 +5,7 @@
|
||||
#
|
||||
# Once installed, you can generate some CSV output with a command like this:
|
||||
#
|
||||
# $ OUTPUT_FORMAT=csv iojs benchmark/http/client-request-body.js > data.csv
|
||||
# $ OUTPUT_FORMAT=csv node benchmark/http/client-request-body.js > data.csv
|
||||
# $ ./benchmark/plot_csv.R data.csv data.png bytes type
|
||||
#
|
||||
# Where the 3rd argument to this script is the graph's X coordinate, the 4th is
|
||||
|
8
configure
vendored
8
configure
vendored
@ -40,7 +40,7 @@ shared_optgroup = optparse.OptionGroup(parser, "Shared libraries",
|
||||
"built-in dependencies or its shared representations. If necessary, "
|
||||
"provide multiple libraries with comma.")
|
||||
intl_optgroup = optparse.OptionGroup(parser, "Internationalization",
|
||||
"Flags that lets you enable i18n features in io.js as well as which "
|
||||
"Flags that lets you enable i18n features in Node.js as well as which "
|
||||
"library you want to build against.")
|
||||
|
||||
# Options should be in alphabetical order but keep --prefix at the top,
|
||||
@ -406,7 +406,7 @@ def get_llvm_version(cc):
|
||||
proc = subprocess.Popen(shlex.split(cc) + ['-v'], stdin=subprocess.PIPE,
|
||||
stderr=subprocess.PIPE, stdout=subprocess.PIPE)
|
||||
except OSError:
|
||||
print '''io.js configure error: No acceptable C compiler found!
|
||||
print '''Node.js configure error: No acceptable C compiler found!
|
||||
|
||||
Please make sure you have a C compiler installed on your system and/or
|
||||
consider adjusting the CC environment variable if you installed
|
||||
@ -431,7 +431,7 @@ def get_gas_version(cc):
|
||||
stdin=subprocess.PIPE, stderr=subprocess.PIPE,
|
||||
stdout=subprocess.PIPE)
|
||||
except OSError:
|
||||
print '''io.js configure error: No acceptable C compiler found!
|
||||
print '''Node.js configure error: No acceptable C compiler found!
|
||||
|
||||
Please make sure you have a C compiler installed on your system and/or
|
||||
consider adjusting the CC environment variable if you installed
|
||||
@ -489,7 +489,7 @@ def cc_macros():
|
||||
stdout=subprocess.PIPE,
|
||||
stderr=subprocess.PIPE)
|
||||
except OSError:
|
||||
print '''io.js configure error: No acceptable C compiler found!
|
||||
print '''Node.js configure error: No acceptable C compiler found!
|
||||
|
||||
Please make sure you have a C compiler installed on your system and/or
|
||||
consider adjusting the CC environment variable if you installed
|
||||
|
4
deps/openssl/config/Makefile
vendored
4
deps/openssl/config/Makefile
vendored
@ -10,7 +10,7 @@ solaris64-x86_64-gcc
|
||||
CFG = opensslconf.h
|
||||
SRC_CFG = ../openssl/crypto/$(CFG)
|
||||
BACKUP_FILES = ../openssl/Makefile ../openssl/Makefile.bak $(SRC_CFG)
|
||||
BACKUP_EXT = iojsbackup
|
||||
BACKUP_EXT = nodebackup
|
||||
|
||||
# OPENSSL_CPUID_OBJ is defined in openssl.gypi for use --openssl-no-asm
|
||||
CPUIDFIX = 's/\#define OPENSSL_CPUID_OBJ$$//;'
|
||||
@ -29,7 +29,7 @@ $(ARCHS):
|
||||
# The current openssl release does not use RC4 asm since it explicitly
|
||||
# specified as `$asm=~s/rc4\-[^:]+//;` in
|
||||
# https://github.com/openssl/openssl/blob/OpenSSL_1_0_1-stable/Configure#L584
|
||||
# But iojs has used RC4 asm on MacOS for long time. Fix type of RC4_INT
|
||||
# But node has used RC4 asm on MacOS for long time. Fix type of RC4_INT
|
||||
# into `unsigned int` in opensslconf.h of darwin64-x86_64-cc to work on
|
||||
# the RC4 asm.
|
||||
fixdarwin64:
|
||||
|
6
deps/openssl/config/opensslconf.h
vendored
6
deps/openssl/config/opensslconf.h
vendored
@ -3,7 +3,7 @@
|
||||
specifying a target argument, where it includes several defines that
|
||||
depend on OS and architecture platform.
|
||||
|
||||
In iojs, we statically mapped --dest-os and --dest-cpu options in
|
||||
In node, we statically mapped --dest-os and --dest-cpu options in
|
||||
configure to the target of Configure in OpenSSL and make
|
||||
`deps/openssl/conf/openssconf.h` so as to include each file
|
||||
according to its target by checking pre-defined compiler macros.
|
||||
@ -11,9 +11,9 @@
|
||||
Included opnesslconf.h files for supported target architectures can
|
||||
be generated by `Makefile` and stored under
|
||||
`archs/{target}/opensslconf.h`. The Makefile also fixes several
|
||||
defines to meet iojs build requirements.
|
||||
defines to meet node build requirements.
|
||||
|
||||
Here is a map table of configure options in iojs, target arch of
|
||||
Here is a map table of configure options in node, target arch of
|
||||
Configure in OpenSSL and CI support.
|
||||
|
||||
| --dest-os | --dest-cpu | OpenSSL target arch | CI |
|
||||
|
16
deps/openssl/doc/UPGRADING.md
vendored
16
deps/openssl/doc/UPGRADING.md
vendored
@ -1,7 +1,7 @@
|
||||
## How to upgrade openssl library in io.js
|
||||
## How to upgrade openssl library in Node.js
|
||||
|
||||
This document describes the procedure to upgrade openssl from 1.0.2a
|
||||
to 1.0.2c in io.js.
|
||||
to 1.0.2c in Node.js.
|
||||
|
||||
|
||||
### Build System and Upgrading Overview
|
||||
@ -17,16 +17,16 @@ hardware performance according to the type of cpus.
|
||||
`Configure TABLE` shows various build parameters that depend on each
|
||||
os and arch.
|
||||
|
||||
In io.js, build target is defined as `--dest-os` and `--dest-cpu` in
|
||||
In Node.js, build target is defined as `--dest-os` and `--dest-cpu` in
|
||||
configure options which are different from the one that is defined in
|
||||
openssl and it's build system is gyp that is based on python,
|
||||
therefore we cannot use the openssl build system directly.
|
||||
|
||||
In order to build openssl with gyp in iojs, files of opensslconf.h and
|
||||
In order to build openssl with gyp in node, files of opensslconf.h and
|
||||
asm are generated in advance for several supported platforms.
|
||||
|
||||
Here is a map table to show conf(opensslconf.h) and asm between
|
||||
the openssl target and configuration parameters of os and cpu in iojs.
|
||||
the openssl target and configuration parameters of os and cpu in node.
|
||||
The tested platform in CI are also listed.
|
||||
|
||||
| --dest-os | --dest-cpu | conf | asm | openssl target | CI |
|
||||
@ -74,7 +74,7 @@ build. Furthermore, these perl scripts check the version of assembler
|
||||
and generate asm files according to the supported instructions in each
|
||||
compiler.
|
||||
|
||||
Since perl is not a build requirement in iojs, they all should be
|
||||
Since perl is not a build requirement in node, they all should be
|
||||
generated in advance and statically stored in the repository. We
|
||||
provide two sets of asm files, one is asm_latest(avx2 and addx
|
||||
supported) in `deps/openssl/asm` and the other asm_obsolete(without
|
||||
@ -91,7 +91,7 @@ https://github.com/openssl/openssl/blob/OpenSSL_1_0_2-stable/crypto/sha/asm/sha5
|
||||
otherwise asm_obsolete are used.
|
||||
|
||||
The following is the detail instruction steps how to upgrade openssl
|
||||
version from 1.0.2a to 1.0.2c in iojs.
|
||||
version from 1.0.2a to 1.0.2c in node.
|
||||
|
||||
### 1. Replace openssl source in `deps/openssl/openssl`
|
||||
Remove old openssl sources in `deps/openssl/openssl` .
|
||||
@ -104,7 +104,7 @@ There are three kinds of private patches to be applied in openssl-1.0.2c.
|
||||
|
||||
- The two fixes of assembly error on ia32 win32. masm is no longer
|
||||
supported in openssl. We should move to use nasm or yasm in future
|
||||
version of iojs.
|
||||
version of node.
|
||||
|
||||
- The fix of openssl-cli built on win. Key press requirement of
|
||||
openssl-cli in win causes timeout failures of several tests.
|
||||
|
@ -6,7 +6,7 @@ knowledge of several libraries:
|
||||
|
||||
- V8 JavaScript, a C++ library. Used for interfacing with JavaScript:
|
||||
creating objects, calling functions, etc. Documented mostly in the
|
||||
`v8.h` header file (`deps/v8/include/v8.h` in the io.js source
|
||||
`v8.h` header file (`deps/v8/include/v8.h` in the Node.js source
|
||||
tree), which is also available
|
||||
[online](https://v8docs.nodesource.com/).
|
||||
|
||||
@ -16,12 +16,12 @@ knowledge of several libraries:
|
||||
to interface with libuv. That is, if you perform any I/O, libuv will
|
||||
need to be used.
|
||||
|
||||
- Internal io.js libraries. Most importantly is the `node::ObjectWrap`
|
||||
- Internal Node.js libraries. Most importantly is the `node::ObjectWrap`
|
||||
class which you will likely want to derive from.
|
||||
|
||||
- Others. Look in `deps/` for what else is available.
|
||||
|
||||
io.js statically compiles all its dependencies into the executable.
|
||||
Node.js statically compiles all its dependencies into the executable.
|
||||
When compiling your module, you don't need to worry about linking to
|
||||
any of these libraries.
|
||||
|
||||
@ -64,7 +64,7 @@ First we create a file `hello.cc`:
|
||||
|
||||
} // namespace demo
|
||||
|
||||
Note that all io.js addons must export an initialization function:
|
||||
Note that all Node.js addons must export an initialization function:
|
||||
|
||||
void Initialize(Local<Object> exports);
|
||||
NODE_MODULE(module_name, Initialize)
|
||||
@ -99,7 +99,7 @@ command.
|
||||
Now you have your compiled `.node` bindings file! The compiled bindings end up
|
||||
in `build/Release/`.
|
||||
|
||||
You can now use the binary addon in an io.js project `hello.js` by pointing
|
||||
You can now use the binary addon in an Node.js project `hello.js` by pointing
|
||||
`require` to the recently built `hello.node` module:
|
||||
|
||||
// hello.js
|
||||
@ -656,7 +656,7 @@ Test it with:
|
||||
### Passing wrapped objects around
|
||||
|
||||
In addition to wrapping and returning C++ objects, you can pass them around
|
||||
by unwrapping them with io.js's `node::ObjectWrap::Unwrap` helper function.
|
||||
by unwrapping them with Node.js's `node::ObjectWrap::Unwrap` helper function.
|
||||
In the following `addon.cc` we introduce a function `add()` that can take on two
|
||||
`MyObject` objects:
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
Pure JavaScript is Unicode friendly but not nice to binary data. When
|
||||
dealing with TCP streams or the file system, it's necessary to handle octet
|
||||
streams. io.js has several strategies for manipulating, creating, and
|
||||
streams. Node.js has several strategies for manipulating, creating, and
|
||||
consuming octet streams.
|
||||
|
||||
Raw data is stored in instances of the `Buffer` class. A `Buffer` is similar
|
||||
@ -33,7 +33,7 @@ encoding method. Here are the different string encodings.
|
||||
* `'binary'` - A way of encoding raw binary data into strings by using only
|
||||
the first 8 bits of each character. This encoding method is deprecated and
|
||||
should be avoided in favor of `Buffer` objects where possible. This encoding
|
||||
will be removed in future versions of io.js.
|
||||
will be removed in future versions of Node.js.
|
||||
|
||||
* `'hex'` - Encode each byte as two hexadecimal characters.
|
||||
|
||||
@ -295,7 +295,7 @@ so the legal range is between `0x00` and `0xFF` hex or `0` and `255`.
|
||||
|
||||
Example: copy an ASCII string into a buffer, one byte at a time:
|
||||
|
||||
str = "io.js";
|
||||
str = "Node.js";
|
||||
buf = new Buffer(str.length);
|
||||
|
||||
for (var i = 0; i < str.length ; i++) {
|
||||
@ -304,7 +304,7 @@ Example: copy an ASCII string into a buffer, one byte at a time:
|
||||
|
||||
console.log(buf);
|
||||
|
||||
// io.js
|
||||
// Node.js
|
||||
|
||||
### buf.equals(otherBuffer)
|
||||
|
||||
|
@ -2,12 +2,12 @@
|
||||
|
||||
Stability: 2 - Stable
|
||||
|
||||
io.js provides a tri-directional `popen(3)` facility through the
|
||||
Node.js provides a tri-directional `popen(3)` facility through the
|
||||
`child_process` module.
|
||||
|
||||
It is possible to stream data through a child's `stdin`, `stdout`, and
|
||||
`stderr` in a fully non-blocking way. (Note that some programs use
|
||||
line-buffered I/O internally. That doesn't affect io.js but it means
|
||||
line-buffered I/O internally. That doesn't affect Node.js but it means
|
||||
data you send to the child process may not be immediately consumed.)
|
||||
|
||||
To create a child process use `require('child_process').spawn()` or
|
||||
@ -61,7 +61,7 @@ of the signal, otherwise `null`.
|
||||
|
||||
Note that the child process stdio streams might still be open.
|
||||
|
||||
Also, note that io.js establishes signal handlers for `'SIGINT'` and
|
||||
Also, note that Node.js establishes signal handlers for `'SIGINT'` and
|
||||
`'SIGTERM`', so it will not terminate due to receipt of those signals,
|
||||
it will exit.
|
||||
|
||||
@ -253,7 +253,7 @@ instead, see
|
||||
|
||||
There is a special case when sending a `{cmd: 'NODE_foo'}` message. All messages
|
||||
containing a `NODE_` prefix in its `cmd` property will not be emitted in
|
||||
the `message` event, since they are internal messages used by io.js core.
|
||||
the `message` event, since they are internal messages used by Node.js core.
|
||||
Messages containing the prefix are emitted in the `internalMessage` event.
|
||||
Avoid using this feature; it is subject to change without notice.
|
||||
|
||||
@ -300,7 +300,8 @@ a `message` event instead of `connection` and use `server.bind` instead of
|
||||
|
||||
Here is an example of sending a socket. It will spawn two children and handle
|
||||
connections with the remote address `74.125.127.100` as VIP by sending the
|
||||
socket to a "special" child process. Other sockets will go to a "normal" process.
|
||||
socket to a "special" child process. Other sockets will go to a "normal"
|
||||
process.
|
||||
|
||||
var normal = require('child_process').fork('child.js', ['normal']);
|
||||
var special = require('child_process').fork('child.js', ['special']);
|
||||
@ -365,8 +366,8 @@ callback or returning an EventEmitter).
|
||||
* `gid` {Number} Sets the group identity of the process. (See setgid(2).)
|
||||
* return: {ChildProcess object}
|
||||
|
||||
Launches a new process with the given `command`, with command line arguments in `args`.
|
||||
If omitted, `args` defaults to an empty Array.
|
||||
Launches a new process with the given `command`, with command line arguments in
|
||||
`args`. If omitted, `args` defaults to an empty Array.
|
||||
|
||||
The third argument is used to specify additional options, with these defaults:
|
||||
|
||||
@ -463,19 +464,19 @@ index corresponds to a fd in the child. The value is one of the following:
|
||||
between parent and child. A ChildProcess may have at most *one* IPC stdio
|
||||
file descriptor. Setting this option enables the ChildProcess.send() method.
|
||||
If the child writes JSON messages to this file descriptor, then this will
|
||||
trigger ChildProcess.on('message'). If the child is an io.js program, then
|
||||
trigger ChildProcess.on('message'). If the child is an Node.js program, then
|
||||
the presence of an IPC channel will enable process.send() and
|
||||
process.on('message').
|
||||
3. `'ignore'` - Do not set this file descriptor in the child. Note that io.js
|
||||
3. `'ignore'` - Do not set this file descriptor in the child. Note that Node.js
|
||||
will always open fd 0 - 2 for the processes it spawns. When any of these is
|
||||
ignored io.js will open `/dev/null` and attach it to the child's fd.
|
||||
ignored Node.js will open `/dev/null` and attach it to the child's fd.
|
||||
4. `Stream` object - Share a readable or writable stream that refers to a tty,
|
||||
file, socket, or a pipe with the child process. The stream's underlying
|
||||
file descriptor is duplicated in the child process to the fd that
|
||||
file descriptor is duplicated in the child process to the fd that
|
||||
corresponds to the index in the `stdio` array. Note that the stream must
|
||||
have an underlying descriptor (file streams do not until the `'open'`
|
||||
event has occurred).
|
||||
5. Positive integer - The integer value is interpreted as a file descriptor
|
||||
5. Positive integer - The integer value is interpreted as a file descriptor
|
||||
that is is currently open in the parent process. It is shared with the child
|
||||
process, similar to how `Stream` objects can be shared.
|
||||
6. `null`, `undefined` - Use default value. For stdio fds 0, 1 and 2 (in other
|
||||
@ -499,7 +500,7 @@ Example:
|
||||
#### options.detached
|
||||
|
||||
If the `detached` option is set, the child process will be made the leader of a
|
||||
new process group. This makes it possible for the child to continue running
|
||||
new process group. This makes it possible for the child to continue running
|
||||
after the parent exits.
|
||||
|
||||
By default, the parent will wait for the detached child to exit. To prevent
|
||||
@ -632,17 +633,17 @@ leaner than `child_process.exec`. It has the same options.
|
||||
* `gid` {Number} Sets the group identity of the process. (See setgid(2).)
|
||||
* Return: ChildProcess object
|
||||
|
||||
This is a special case of the `spawn()` functionality for spawning io.js
|
||||
This is a special case of the `spawn()` functionality for spawning Node.js
|
||||
processes. In addition to having all the methods in a normal ChildProcess
|
||||
instance, the returned object has a communication channel built-in. See
|
||||
`child.send(message, [sendHandle])` for details.
|
||||
|
||||
These child io.js processes are still whole new instances of V8. Assume at
|
||||
least 30ms startup and 10mb memory for each new io.js. That is, you cannot
|
||||
These child Node.js processes are still whole new instances of V8. Assume at
|
||||
least 30ms startup and 10mb memory for each new Node.js. That is, you cannot
|
||||
create many thousands of them.
|
||||
|
||||
The `execPath` property in the `options` object allows for a process to be
|
||||
created for the child rather than the current `iojs` executable. This should be
|
||||
created for the child rather than the current `node` executable. This should be
|
||||
done with care and by default will talk over the fd represented an
|
||||
environmental variable `NODE_CHANNEL_FD` on the child process. The input and
|
||||
output on this fd is expected to be line delimited JSON objects.
|
||||
|
@ -2,8 +2,8 @@
|
||||
|
||||
Stability: 2 - Stable
|
||||
|
||||
A single instance of io.js runs in a single thread. To take advantage of
|
||||
multi-core systems the user will sometimes want to launch a cluster of io.js
|
||||
A single instance of Node.js runs in a single thread. To take advantage of
|
||||
multi-core systems the user will sometimes want to launch a cluster of Node.js
|
||||
processes to handle the load.
|
||||
|
||||
The cluster module allows you to easily create child processes that
|
||||
@ -31,9 +31,9 @@ all share server ports.
|
||||
}).listen(8000);
|
||||
}
|
||||
|
||||
Running io.js will now share port 8000 between the workers:
|
||||
Running Node.js will now share port 8000 between the workers:
|
||||
|
||||
% NODE_DEBUG=cluster iojs server.js
|
||||
% NODE_DEBUG=cluster node server.js
|
||||
23521,Master Worker 23524 online
|
||||
23521,Master Worker 23526 online
|
||||
23521,Master Worker 23523 online
|
||||
@ -74,7 +74,7 @@ out of a total of eight.
|
||||
|
||||
Because `server.listen()` hands off most of the work to the master
|
||||
process, there are three cases where the behavior between a normal
|
||||
io.js process and a cluster worker differs:
|
||||
Node.js process and a cluster worker differs:
|
||||
|
||||
1. `server.listen({fd: 7})` Because the message is passed to the master,
|
||||
file descriptor 7 **in the parent** will be listened on, and the
|
||||
@ -91,7 +91,7 @@ io.js process and a cluster worker differs:
|
||||
want to listen on a unique port, generate a port number based on the
|
||||
cluster worker ID.
|
||||
|
||||
There is no routing logic in io.js, or in your program, and no shared
|
||||
There is no routing logic in Node.js, or in your program, and no shared
|
||||
state between the workers. Therefore, it is important to design your
|
||||
program such that it does not rely too heavily on in-memory data objects
|
||||
for things like sessions and login.
|
||||
@ -99,7 +99,7 @@ for things like sessions and login.
|
||||
Because workers are all separate processes, they can be killed or
|
||||
re-spawned depending on your program's needs, without affecting other
|
||||
workers. As long as there are some workers still alive, the server will
|
||||
continue to accept connections. io.js does not automatically manage the
|
||||
continue to accept connections. Node.js does not automatically manage the
|
||||
number of workers for you, however. It is your responsibility to manage
|
||||
the worker pool for your application's needs.
|
||||
|
||||
@ -121,8 +121,8 @@ values are `"rr"` and `"none"`.
|
||||
## cluster.settings
|
||||
|
||||
* {Object}
|
||||
* `execArgv` {Array} list of string arguments passed to the io.js executable.
|
||||
(Default=`process.execArgv`)
|
||||
* `execArgv` {Array} list of string arguments passed to the Node.js
|
||||
executable. (Default=`process.execArgv`)
|
||||
* `exec` {String} file path to worker file. (Default=`process.argv[1]`)
|
||||
* `args` {Array} string arguments passed to worker.
|
||||
(Default=`process.argv.slice(2)`)
|
||||
|
@ -86,7 +86,7 @@ dictionary with keys:
|
||||
<http://www.openssl.org/docs/apps/ciphers.html#CIPHER_LIST_FORMAT>
|
||||
for details on the format.
|
||||
|
||||
If no 'ca' details are given, then io.js will use the default
|
||||
If no 'ca' details are given, then Node.js will use the default
|
||||
publicly trusted list of CAs as given in
|
||||
<http://mxr.mozilla.org/mozilla/source/security/nss/lib/ckfw/builtins/certdata.txt>.
|
||||
|
||||
@ -750,7 +750,7 @@ unified Stream API, and before there were Buffer objects for handling
|
||||
binary data.
|
||||
|
||||
As such, the streaming classes don't have the typical methods found on
|
||||
other io.js classes, and many methods accepted and returned
|
||||
other Node.js classes, and many methods accepted and returned
|
||||
Binary-encoded strings by default rather than Buffers. This was
|
||||
changed to use Buffers by default instead.
|
||||
|
||||
|
@ -6,10 +6,10 @@
|
||||
|
||||
V8 comes with an extensive debugger which is accessible out-of-process via a
|
||||
simple [TCP protocol](http://code.google.com/p/v8/wiki/DebuggerProtocol).
|
||||
io.js has a built-in client for this debugger. To use this, start io.js with the
|
||||
`debug` argument; a prompt will appear:
|
||||
Node.js has a built-in client for this debugger. To use this, start Node.js with
|
||||
the `debug` argument; a prompt will appear:
|
||||
|
||||
% iojs debug myscript.js
|
||||
% node debug myscript.js
|
||||
< debugger listening on port 5858
|
||||
connecting... ok
|
||||
break in /home/indutny/Code/git/indutny/myscript.js:1
|
||||
@ -18,7 +18,7 @@ io.js has a built-in client for this debugger. To use this, start io.js with the
|
||||
3 debugger;
|
||||
debug>
|
||||
|
||||
io.js's debugger client doesn't support the full range of commands, but
|
||||
Node.js's debugger client doesn't support the full range of commands, but
|
||||
simple step and inspection is possible. By putting the statement `debugger;`
|
||||
into the source code of your script, you will enable a breakpoint.
|
||||
|
||||
@ -34,7 +34,7 @@ For example, suppose `myscript.js` looked like this:
|
||||
|
||||
Then once the debugger is run, it will break on line 4.
|
||||
|
||||
% iojs debug myscript.js
|
||||
% node debug myscript.js
|
||||
< debugger listening on port 5858
|
||||
connecting... ok
|
||||
break in /home/indutny/Code/git/indutny/myscript.js:1
|
||||
@ -113,7 +113,7 @@ on line 1
|
||||
It is also possible to set a breakpoint in a file (module) that
|
||||
isn't loaded yet:
|
||||
|
||||
% ./iojs debug test/fixtures/break-in-module/main.js
|
||||
% ./node debug test/fixtures/break-in-module/main.js
|
||||
< debugger listening on port 5858
|
||||
connecting to port 5858... ok
|
||||
break in test/fixtures/break-in-module/main.js:1
|
||||
@ -158,13 +158,13 @@ breakpoint)
|
||||
|
||||
## Advanced Usage
|
||||
|
||||
The V8 debugger can be enabled and accessed either by starting io.js with
|
||||
the `--debug` command-line flag or by signaling an existing io.js process
|
||||
The V8 debugger can be enabled and accessed either by starting Node.js with
|
||||
the `--debug` command-line flag or by signaling an existing Node.js process
|
||||
with `SIGUSR1`.
|
||||
|
||||
Once a process has been set in debug mode with this it can be connected to
|
||||
with the io.js debugger. Either connect to the `pid` or the URI to the debugger.
|
||||
The syntax is:
|
||||
with the Node.js debugger. Either connect to the `pid` or the URI to the
|
||||
debugger. The syntax is:
|
||||
|
||||
* `iojs debug -p <pid>` - Connects to the process via the `pid`
|
||||
* `iojs debug <URI>` - Connects to the process via the URI such as localhost:5858
|
||||
* `node debug -p <pid>` - Connects to the process via the `pid`
|
||||
* `node debug <URI>` - Connects to the process via the URI such as localhost:5858
|
||||
|
@ -172,7 +172,7 @@ and the `callback`(if specified) is called. Specifying both a
|
||||
"listening" event listener and `callback` is not harmful but not very
|
||||
useful.
|
||||
|
||||
A bound datagram socket keeps the io.js process running to receive
|
||||
A bound datagram socket keeps the Node.js process running to receive
|
||||
datagrams.
|
||||
|
||||
If binding fails, an "error" event is generated. In rare case (e.g.
|
||||
|
@ -103,7 +103,7 @@ It's only an operating system facility that can associate name with addresses,
|
||||
and vice versa.
|
||||
|
||||
Its implementation can have subtle but important consequences on the behavior
|
||||
of any io.js program. Please take some time to consult the [Implementation
|
||||
of any Node.js program. Please take some time to consult the [Implementation
|
||||
considerations section](#dns_implementation_considerations) before using it.
|
||||
|
||||
## dns.lookupService(address, port, callback)
|
||||
@ -276,7 +276,7 @@ on some operating systems (e.g FreeBSD 10.1).
|
||||
Although `dns.lookup` and `dns.resolve*/dns.reverse` functions have the same
|
||||
goal of associating a network name with a network address (or vice versa),
|
||||
their behavior is quite different. These differences can have subtle but
|
||||
significant consequences on the behavior of io.js programs.
|
||||
significant consequences on the behavior of Node.js programs.
|
||||
|
||||
### dns.lookup
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
<!-- type=misc -->
|
||||
|
||||
The goal of this documentation is to comprehensively explain the io.js
|
||||
The goal of this documentation is to comprehensively explain the Node.js
|
||||
API, both from a reference as well as a conceptual point of view. Each
|
||||
section describes a built-in module or high-level concept.
|
||||
|
||||
@ -16,7 +16,7 @@ experimental, and added for the benefit of IDEs and other utilities that
|
||||
wish to do programmatic things with the documentation.
|
||||
|
||||
Every `.html` and `.json` file is generated based on the corresponding
|
||||
`.markdown` file in the `doc/api/` folder in io.js's source tree. The
|
||||
`.markdown` file in the `doc/api/` folder in Node.js's source tree. The
|
||||
documentation is generated using the `tools/doc/generate.js` program.
|
||||
The HTML template is located at `doc/template.html`.
|
||||
|
||||
@ -25,7 +25,7 @@ The HTML template is located at `doc/template.html`.
|
||||
<!--type=misc-->
|
||||
|
||||
Throughout the documentation, you will see indications of a section's
|
||||
stability. The io.js API is still somewhat changing, and as it
|
||||
stability. The Node.js API is still somewhat changing, and as it
|
||||
matures, certain parts are more reliable than others. Some are so
|
||||
proven, and so relied upon, that they are unlikely to ever change at
|
||||
all. Others are brand new and experimental, or known to be hazardous
|
||||
|
@ -38,7 +38,7 @@ time, and stop listening for new requests in that worker.
|
||||
|
||||
In this way, `domain` usage goes hand-in-hand with the cluster module,
|
||||
since the master process can fork a new worker when a worker
|
||||
encounters an error. For io.js programs that scale to multiple
|
||||
encounters an error. For Node.js programs that scale to multiple
|
||||
machines, the terminating proxy or service registry can take note of
|
||||
the failure, and react accordingly.
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
<!--type=misc-->
|
||||
|
||||
Errors generated by io.js fall into two categories: JavaScript errors and system
|
||||
Errors generated by Node.js fall into two categories: JavaScript errors and system
|
||||
errors. All errors inherit from or are instances of JavaScript's [Error](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error)
|
||||
class and are guaranteed to provide *at least* the attributes available on that
|
||||
class.
|
||||
@ -34,14 +34,14 @@ denote any specific circumstance of why the error occurred. Errors capture a
|
||||
"stack trace" detailing the point in the program at which they were
|
||||
instantiated, and may provide a description of the error.
|
||||
|
||||
**Note**: io.js will generate this class of error to encapsulate system
|
||||
**Note**: Node.js will generate this class of error to encapsulate system
|
||||
errors as well as plain JavaScript errors.
|
||||
|
||||
#### new Error(message)
|
||||
|
||||
Instantiates a new Error object and sets its `.message` property to the provided
|
||||
message. Its `.stack` will represent the point in the program at which `new Error`
|
||||
was called. Stack traces are subject to [V8's stack trace API](https://code.google.com/p/v8-wiki/wiki/JavaScriptStackTraceApi).
|
||||
was called. Stack traces are subject to [V8's stack trace API](https://code.google.com/p/v8-wiki/wiki/JavaScriptStackTraceApi).
|
||||
Stack traces only extend to the beginning of synchronous code execution, *or* a number of frames given by
|
||||
`Error.stackTraceLimit`, whichever is smaller.
|
||||
|
||||
@ -65,15 +65,15 @@ at which this error was instantiated. An example stacktrace follows:
|
||||
The first line is formatted as `<error class name>: <error message>`, and it is followed
|
||||
by a series of stack frames (each line beginning with "at "). Each frame describes
|
||||
a call site in the program that lead to the error being generated. V8 attempts to
|
||||
display a name for each function (by variable name, function name, or object
|
||||
display a name for each function (by variable name, function name, or object
|
||||
method name), but occasionally it will not be able to find a suitable name. If
|
||||
V8 cannot determine a name for the function, only location information will be
|
||||
displayed for that frame. Otherwise, the determined function name will be displayed
|
||||
with location information appended in parentheses.
|
||||
with location information appended in parentheses.
|
||||
|
||||
Frames are **only** generated for JavaScript functions. If, for example, execution
|
||||
synchronously passes through a C++ addon function called `cheetahify`, which itself
|
||||
calls a JavaScript function, the frame representing the `cheetahify` call will **not**
|
||||
Frames are **only** generated for JavaScript functions. If, for example, execution
|
||||
synchronously passes through a C++ addon function called `cheetahify`, which itself
|
||||
calls a JavaScript function, the frame representing the `cheetahify` call will **not**
|
||||
be present in stacktraces:
|
||||
|
||||
```javascript
|
||||
@ -103,14 +103,14 @@ makeFaster(); // will throw:
|
||||
// at node.js:906:3
|
||||
```
|
||||
|
||||
The location information will be one of:
|
||||
The location information will be one of:
|
||||
|
||||
* `native`, if the frame represents a call internal to V8 (as in `[].forEach`).
|
||||
* `plain-filename.js:line:column`, if the frame represents a call internal to io.js.
|
||||
* `plain-filename.js:line:column`, if the frame represents a call internal to Node.js.
|
||||
* `/absolute/path/to/file.js:line:column`, if the frame represents a call in a user program, or its dependencies.
|
||||
|
||||
It is important to note that the string representing the stacktrace is only
|
||||
generated on **access**: it is lazily generated.
|
||||
generated on **access**: it is lazily generated.
|
||||
|
||||
The number of frames captured by the stack trace is bounded by the smaller of
|
||||
`Error.stackTraceLimit` or the number of available frames on the current event
|
||||
@ -138,7 +138,7 @@ message`, will be the result of `targetObject.toString()`.
|
||||
|
||||
`constructorOpt` optionally accepts a function. If given, all frames above
|
||||
`constructorOpt`, including `constructorOpt`, will be omitted from the generated
|
||||
stack trace.
|
||||
stack trace.
|
||||
|
||||
This is useful for hiding implementation details of error generation from the
|
||||
end user. A common way of using this parameter is to pass the current Error
|
||||
@ -177,8 +177,8 @@ range, or outside the set of options for a given function parameter. An example:
|
||||
require('net').connect(-1); // throws RangeError, port should be > 0 && < 65536
|
||||
```
|
||||
|
||||
io.js will generate and throw RangeError instances *immediately* -- they are a form
|
||||
of argument validation.
|
||||
Node.js will generate and throw RangeError instances *immediately* -- they are a form
|
||||
of argument validation.
|
||||
|
||||
### Class: TypeError
|
||||
|
||||
@ -190,7 +190,7 @@ be considered a TypeError.
|
||||
require('url').parse(function() { }); // throws TypeError, since it expected a string
|
||||
```
|
||||
|
||||
io.js will generate and throw TypeError instances *immediately* -- they are a form
|
||||
Node.js will generate and throw TypeError instances *immediately* -- they are a form
|
||||
of argument validation.
|
||||
|
||||
### Class: ReferenceError
|
||||
@ -219,7 +219,7 @@ Unless the userland program is dynamically generating and running code,
|
||||
ReferenceErrors should always be considered a bug in the program, or its
|
||||
dependencies.
|
||||
|
||||
### Class: SyntaxError
|
||||
### Class: SyntaxError
|
||||
|
||||
A subclass of Error that indicates that a program is not valid JavaScript.
|
||||
These errors may only be generated and propagated as a result of code
|
||||
@ -244,9 +244,9 @@ by other contexts.
|
||||
|
||||
A JavaScript "exception" is a value that is thrown as a result of an invalid operation or
|
||||
as the target of a `throw` statement. While it is not required that these values inherit from
|
||||
`Error`, all exceptions thrown by io.js or the JavaScript runtime *will* be instances of Error.
|
||||
`Error`, all exceptions thrown by Node.js or the JavaScript runtime *will* be instances of Error.
|
||||
|
||||
Some exceptions are *unrecoverable* at the JavaScript layer. These exceptions will always bring
|
||||
Some exceptions are *unrecoverable* at the JavaScript layer. These exceptions will always bring
|
||||
down the process. These are usually failed `assert()` checks or `abort()` calls in the C++ layer.
|
||||
|
||||
## System Errors
|
||||
@ -257,7 +257,7 @@ react to. They are generated at the syscall level: an exhaustive list of error
|
||||
codes and their meanings is available by running `man 2 intro` or `man 3 errno`
|
||||
on most Unices; or [online](http://man7.org/linux/man-pages/man3/errno.3.html).
|
||||
|
||||
In io.js, system errors are represented as augmented Error objects -- not full
|
||||
In Node.js, system errors are represented as augmented Error objects -- not full
|
||||
subclasses, but instead an error instance with added members.
|
||||
|
||||
### Class: System Error
|
||||
@ -275,7 +275,7 @@ letters, and may be referenced in `man 2 intro`.
|
||||
### Common System Errors
|
||||
|
||||
This list is **not exhaustive**, but enumerates many of the common system errors when
|
||||
writing a io.js program. An exhaustive list may be found [here](http://man7.org/linux/man-pages/man3/errno.3.html).
|
||||
writing a Node.js program. An exhaustive list may be found [here](http://man7.org/linux/man-pages/man3/errno.3.html).
|
||||
|
||||
#### EPERM: Operation not permitted
|
||||
|
||||
@ -289,7 +289,7 @@ does not exist -- no entity (file or directory) could be found by the given path
|
||||
|
||||
#### EACCES: Permission denied
|
||||
|
||||
An attempt was made to access a file in a way forbidden by its file access
|
||||
An attempt was made to access a file in a way forbidden by its file access
|
||||
permissions.
|
||||
|
||||
#### EEXIST: File exists
|
||||
@ -300,7 +300,7 @@ not exist.
|
||||
#### ENOTDIR: Not a directory
|
||||
|
||||
A component of the given pathname existed, but was not a directory as expected.
|
||||
Commonly raised by [fs.readdir](fs.html#fs_fs_readdir_path_callback).
|
||||
Commonly raised by [fs.readdir](fs.html#fs_fs_readdir_path_callback).
|
||||
|
||||
#### EISDIR: Is a directory
|
||||
|
||||
@ -315,7 +315,7 @@ at least one has been closed.
|
||||
Commonly encountered when opening many files at once in parallel, especially
|
||||
on systems (in particular, OS X) where there is a low file descriptor limit
|
||||
for processes. To remedy a low limit, run `ulimit -n 2048` in the same shell
|
||||
that will run the io.js process.
|
||||
that will run the Node.js process.
|
||||
|
||||
#### EPIPE: Broken pipe
|
||||
|
||||
@ -356,7 +356,7 @@ often a sign that a connected socket was not `.end()`'d appropriately.
|
||||
|
||||
<!--type=misc-->
|
||||
|
||||
All io.js APIs will treat invalid arguments as exceptional -- that is, if passed
|
||||
All Node.js APIs will treat invalid arguments as exceptional -- that is, if passed
|
||||
invalid arguments, they will *immediately* generate and throw the error as an
|
||||
exception, even if they are an otherwise asynchronous API.
|
||||
|
||||
@ -364,7 +364,7 @@ Synchronous APIs (like
|
||||
[fs.readFileSync](fs.html#fs_fs_readfilesync_filename_options)) will throw the
|
||||
error. The act of *throwing* a value (in this case, the error) turns the value
|
||||
into an **exception**. Exceptions may be caught using the `try { } catch(err)
|
||||
{ }` construct.
|
||||
{ }` construct.
|
||||
|
||||
Asynchronous APIs have **two** mechanisms for error propagation; one mechanism
|
||||
for APIs that represent a single operation, and one for APIs that represent
|
||||
@ -450,7 +450,7 @@ connection.pipe(process.stdout);
|
||||
```
|
||||
|
||||
The "throw when no error handlers are attached behavior" is not limited to APIs
|
||||
provided by io.js -- even user created event emitters and streams will throw
|
||||
provided by Node.js -- even user created event emitters and streams will throw
|
||||
errors when no error handlers are attached. An example:
|
||||
|
||||
```javascript
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
<!--type=module-->
|
||||
|
||||
Many objects in io.js emit events: a `net.Server` emits an event each time
|
||||
Many objects in Node.js emit events: a `net.Server` emits an event each time
|
||||
a peer connects to it, a `fs.readStream` emits an event when the file is
|
||||
opened. All objects which emit events are instances of `events.EventEmitter`.
|
||||
You can access this module by doing: `require("events");`
|
||||
@ -28,7 +28,7 @@ var EventEmitter = require('events');
|
||||
|
||||
When an `EventEmitter` instance experiences an error, the typical action is
|
||||
to emit an `'error'` event. Error events are treated as a special case in
|
||||
io.js. If there is no listener for it, then the default action is to print
|
||||
Node.js. If there is no listener for it, then the default action is to print
|
||||
a stack trace and exit the program.
|
||||
|
||||
All EventEmitters emit the event `'newListener'` when new listeners are
|
||||
|
@ -72,7 +72,7 @@ site, set the NODE_DEBUG environment variable:
|
||||
}
|
||||
bad();
|
||||
|
||||
$ env NODE_DEBUG=fs iojs script.js
|
||||
$ env NODE_DEBUG=fs node script.js
|
||||
fs.js:66
|
||||
throw err;
|
||||
^
|
||||
@ -511,14 +511,14 @@ to `'utf8'`.
|
||||
|
||||
Example:
|
||||
|
||||
fs.writeFile('message.txt', 'Hello io.js', function (err) {
|
||||
fs.writeFile('message.txt', 'Hello Node.js', function (err) {
|
||||
if (err) throw err;
|
||||
console.log('It\'s saved!');
|
||||
});
|
||||
|
||||
If `options` is a string, then it specifies the encoding. Example:
|
||||
|
||||
fs.writeFile('message.txt', 'Hello io.js', 'utf8', callback);
|
||||
fs.writeFile('message.txt', 'Hello Node.js', 'utf8', callback);
|
||||
|
||||
## fs.writeFileSync(filename, data[, options])
|
||||
|
||||
@ -794,7 +794,7 @@ The times in the stat object have the following semantics:
|
||||
an earlier value than the current `birthtime` using the `utimes(2)`
|
||||
system call.
|
||||
|
||||
Prior to io.js v1.0 and Node v0.12, the `ctime` held the `birthtime` on Windows
|
||||
Prior to Node v0.12, the `ctime` held the `birthtime` on Windows
|
||||
systems. Note that as of v0.12, `ctime` is not "creation time", and
|
||||
on Unix systems, it never was.
|
||||
|
||||
|
@ -13,8 +13,8 @@ actually in the global scope but in the module scope - this will be noted.
|
||||
|
||||
In browsers, the top-level scope is the global scope. That means that in
|
||||
browsers if you're in the global scope `var something` will define a global
|
||||
variable. In io.js this is different. The top-level scope is not the global
|
||||
scope; `var something` inside an io.js module will be local to that module.
|
||||
variable. In Node.js this is different. The top-level scope is not the global
|
||||
scope; `var something` inside an Node.js module will be local to that module.
|
||||
|
||||
## process
|
||||
|
||||
@ -74,9 +74,9 @@ Process files with the extension `.sjs` as `.js`:
|
||||
require.extensions['.sjs'] = require.extensions['.js'];
|
||||
|
||||
**Deprecated** In the past, this list has been used to load
|
||||
non-JavaScript modules into io.js by compiling them on-demand.
|
||||
non-JavaScript modules into Node.js by compiling them on-demand.
|
||||
However, in practice, there are much better ways to do this, such as
|
||||
loading modules via some other io.js program, or compiling them to
|
||||
loading modules via some other Node.js program, or compiling them to
|
||||
JavaScript ahead of time.
|
||||
|
||||
Since the Module system is locked, this feature will probably never go
|
||||
@ -94,7 +94,7 @@ of this code file. For a main program this is not necessarily the same
|
||||
filename used in the command line. The value inside a module is the path
|
||||
to that module file.
|
||||
|
||||
Example: running `iojs example.js` from `/Users/mjr`
|
||||
Example: running `node example.js` from `/Users/mjr`
|
||||
|
||||
console.log(__filename);
|
||||
// /Users/mjr/example.js
|
||||
@ -109,7 +109,7 @@ Example: running `iojs example.js` from `/Users/mjr`
|
||||
|
||||
The name of the directory that the currently executing script resides in.
|
||||
|
||||
Example: running `iojs example.js` from `/Users/mjr`
|
||||
Example: running `node example.js` from `/Users/mjr`
|
||||
|
||||
console.log(__dirname);
|
||||
// /Users/mjr
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
To use the HTTP server and client one must `require('http')`.
|
||||
|
||||
The HTTP interfaces in io.js are designed to support many features
|
||||
The HTTP interfaces in Node.js are designed to support many features
|
||||
of the protocol which have been traditionally difficult to use.
|
||||
In particular, large, possibly chunk-encoded, messages. The interface is
|
||||
careful to never buffer entire requests or responses--the
|
||||
@ -20,7 +20,7 @@ HTTP message headers are represented by an object like this:
|
||||
|
||||
Keys are lowercased. Values are not modified.
|
||||
|
||||
In order to support the full spectrum of possible HTTP applications, io.js's
|
||||
In order to support the full spectrum of possible HTTP applications, Node.js's
|
||||
HTTP API is very low-level. It deals with stream handling and message
|
||||
parsing only. It parses a message into headers and body but it does not
|
||||
parse the actual headers or the body.
|
||||
@ -302,7 +302,7 @@ Note that Content-Length is given in bytes not characters. The above example
|
||||
works because the string `'hello world'` contains only single byte characters.
|
||||
If the body contains higher coded characters then `Buffer.byteLength()`
|
||||
should be used to determine the number of bytes in a given encoding.
|
||||
And io.js does not check whether Content-Length and the length of the body
|
||||
And Node.js does not check whether Content-Length and the length of the body
|
||||
which has been transmitted are equal or not.
|
||||
|
||||
### response.setTimeout(msecs, callback)
|
||||
@ -412,7 +412,7 @@ higher-level multi-part body encodings that may be used.
|
||||
|
||||
The first time `response.write()` is called, it will send the buffered
|
||||
header information and the first body to the client. The second time
|
||||
`response.write()` is called, io.js assumes you're going to be streaming
|
||||
`response.write()` is called, Node.js assumes you're going to be streaming
|
||||
data, and sends that separately. That is, the response is buffered up to the
|
||||
first chunk of body.
|
||||
|
||||
@ -459,7 +459,7 @@ as `false`. After `response.end()` executes, the value will be `true`.
|
||||
|
||||
## http.request(options[, callback])
|
||||
|
||||
io.js maintains several connections per server to make HTTP requests.
|
||||
Node.js maintains several connections per server to make HTTP requests.
|
||||
This function allows one to transparently issue requests.
|
||||
|
||||
`options` can be an object or a string. If `options` is a string, it is
|
||||
@ -547,7 +547,7 @@ on the returned request object.
|
||||
|
||||
There are a few special headers that should be noted.
|
||||
|
||||
* Sending a 'Connection: keep-alive' will notify io.js that the connection to
|
||||
* Sending a 'Connection: keep-alive' will notify Node.js that the connection to
|
||||
the server should be persisted until the next request.
|
||||
|
||||
* Sending a 'Content-length' header will disable the default chunked encoding.
|
||||
@ -562,7 +562,7 @@ There are a few special headers that should be noted.
|
||||
|
||||
## http.get(options[, callback])
|
||||
|
||||
Since most requests are GET requests without bodies, io.js provides this
|
||||
Since most requests are GET requests without bodies, Node.js provides this
|
||||
convenience method. The only difference between this method and `http.request()`
|
||||
is that it sets the method to GET and calls `req.end()` automatically.
|
||||
|
||||
@ -582,7 +582,7 @@ requests.
|
||||
|
||||
The HTTP Agent also defaults client requests to using
|
||||
Connection:keep-alive. If no pending HTTP requests are waiting on a
|
||||
socket to become free the socket is closed. This means that io.js's
|
||||
socket to become free the socket is closed. This means that Node.js's
|
||||
pool has the benefit of keep-alive when under load but still does not
|
||||
require developers to manually close the HTTP clients using
|
||||
KeepAlive.
|
||||
@ -591,7 +591,7 @@ If you opt into using HTTP KeepAlive, you can create an Agent object
|
||||
with that flag set to `true`. (See the [constructor
|
||||
options](#http_new_agent_options) below.) Then, the Agent will keep
|
||||
unused sockets in a pool for later use. They will be explicitly
|
||||
marked so as to not keep the io.js process running. However, it is
|
||||
marked so as to not keep the Node.js process running. However, it is
|
||||
still a good idea to explicitly [`destroy()`](#http_agent_destroy)
|
||||
KeepAlive agents when they are no longer in use, so that the Sockets
|
||||
will be shut down.
|
||||
@ -723,7 +723,7 @@ Until the data is consumed, the `'end'` event will not fire. Also, until
|
||||
the data is read it will consume memory that can eventually lead to a
|
||||
'process out of memory' error.
|
||||
|
||||
Note: io.js does not check whether Content-Length and the length of the body
|
||||
Note: Node.js does not check whether Content-Length and the length of the body
|
||||
which has been transmitted are equal or not.
|
||||
|
||||
The request implements the [Writable Stream][] interface. This is an
|
||||
@ -772,7 +772,7 @@ A client server pair that show you how to listen for the `connect` event.
|
||||
var srvUrl = url.parse('http://' + req.url);
|
||||
var srvSocket = net.connect(srvUrl.port, srvUrl.hostname, function() {
|
||||
cltSocket.write('HTTP/1.1 200 Connection Established\r\n' +
|
||||
'Proxy-agent: io.js-Proxy\r\n' +
|
||||
'Proxy-agent: Node.js-Proxy\r\n' +
|
||||
'\r\n');
|
||||
srvSocket.write(head);
|
||||
srvSocket.pipe(cltSocket);
|
||||
@ -879,7 +879,7 @@ emitted on the first call to `abort()`.
|
||||
|
||||
Flush the request headers.
|
||||
|
||||
For efficiency reasons, io.js normally buffers the request headers until you
|
||||
For efficiency reasons, Node.js normally buffers the request headers until you
|
||||
call `request.end()` or write the first chunk of request data. It then tries
|
||||
hard to pack the request headers and data into a single TCP packet.
|
||||
|
||||
@ -1043,7 +1043,7 @@ Then `request.url` will be:
|
||||
If you would like to parse the URL into its parts, you can use
|
||||
`require('url').parse(request.url)`. Example:
|
||||
|
||||
iojs> require('url').parse('/status?name=ryan')
|
||||
node> require('url').parse('/status?name=ryan')
|
||||
{ href: '/status?name=ryan',
|
||||
search: '?name=ryan',
|
||||
query: 'name=ryan',
|
||||
@ -1053,7 +1053,7 @@ If you would like to extract the params from the query string,
|
||||
you can use the `require('querystring').parse` function, or pass
|
||||
`true` as the second argument to `require('url').parse`. Example:
|
||||
|
||||
iojs> require('url').parse('/status?name=ryan', true)
|
||||
node> require('url').parse('/status?name=ryan', true)
|
||||
{ href: '/status?name=ryan',
|
||||
search: '?name=ryan',
|
||||
query: { name: 'ryan' },
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
Stability: 2 - Stable
|
||||
|
||||
HTTPS is the HTTP protocol over TLS/SSL. In io.js this is implemented as a
|
||||
HTTPS is the HTTP protocol over TLS/SSL. In Node.js this is implemented as a
|
||||
separate module.
|
||||
|
||||
## Class: https.Server
|
||||
|
@ -4,8 +4,8 @@
|
||||
|
||||
<!--name=module-->
|
||||
|
||||
io.js has a simple module loading system. In io.js, files and modules are in
|
||||
one-to-one correspondence. As an example, `foo.js` loads the module
|
||||
Node.js has a simple module loading system. In Node.js, files and modules are
|
||||
in one-to-one correspondence. As an example, `foo.js` loads the module
|
||||
`circle.js` in the same directory.
|
||||
|
||||
The contents of `foo.js`:
|
||||
@ -100,7 +100,7 @@ provided to the `a.js` module.
|
||||
By the time `main.js` has loaded both modules, they're both finished.
|
||||
The output of this program would thus be:
|
||||
|
||||
$ iojs main.js
|
||||
$ node main.js
|
||||
main starting
|
||||
a starting
|
||||
b starting
|
||||
@ -117,10 +117,10 @@ plan accordingly.
|
||||
|
||||
<!--type=misc-->
|
||||
|
||||
io.js has several modules compiled into the binary. These modules are
|
||||
Node.js has several modules compiled into the binary. These modules are
|
||||
described in greater detail elsewhere in this documentation.
|
||||
|
||||
The core modules are defined in io.js's source in the `lib/` folder.
|
||||
The core modules are defined in Node.js's source in the `lib/` folder.
|
||||
|
||||
Core modules are always preferentially loaded if their identifier is
|
||||
passed to `require()`. For instance, `require('http')` will always
|
||||
@ -130,7 +130,7 @@ return the built in HTTP module, even if there is a file by that name.
|
||||
|
||||
<!--type=misc-->
|
||||
|
||||
If the exact filename is not found, then io.js will attempt to load the
|
||||
If the exact filename is not found, then Node.js will attempt to load the
|
||||
required filename with the added extension of `.js`, `.json`, and then `.node`.
|
||||
|
||||
`.js` files are interpreted as JavaScript text files, and `.json` files are
|
||||
@ -156,7 +156,7 @@ If the given path does not exist, `require()` will throw an Error with its
|
||||
<!--type=misc-->
|
||||
|
||||
If the module identifier passed to `require()` is not a native module,
|
||||
and does not begin with `'/'`, `'../'`, or `'./'`, then io.js starts at the
|
||||
and does not begin with `'/'`, `'../'`, or `'./'`, then Node.js starts at the
|
||||
parent directory of the current module, and adds `/node_modules`, and
|
||||
attempts to load the module from that location.
|
||||
|
||||
@ -164,7 +164,7 @@ If it is not found there, then it moves to the parent directory, and so
|
||||
on, until the root of the file system is reached.
|
||||
|
||||
For example, if the file at `'/home/ry/projects/foo.js'` called
|
||||
`require('bar.js')`, then io.js would look in the following locations, in
|
||||
`require('bar.js')`, then Node.js would look in the following locations, in
|
||||
this order:
|
||||
|
||||
* `/home/ry/projects/node_modules/bar.js`
|
||||
@ -201,9 +201,9 @@ If this was in a folder at `./some-library`, then
|
||||
`require('./some-library')` would attempt to load
|
||||
`./some-library/lib/some-library.js`.
|
||||
|
||||
This is the extent of io.js's awareness of package.json files.
|
||||
This is the extent of Node.js's awareness of package.json files.
|
||||
|
||||
If there is no package.json file present in the directory, then io.js
|
||||
If there is no package.json file present in the directory, then Node.js
|
||||
will attempt to load an `index.js` or `index.node` file out of that
|
||||
directory. For example, if there was no package.json file in the above
|
||||
example, then `require('./some-library')` would attempt to load:
|
||||
@ -253,10 +253,10 @@ a global but rather local to each module.
|
||||
|
||||
* {Object}
|
||||
|
||||
The `module.exports` object is created by the Module system. Sometimes this is not
|
||||
acceptable; many want their module to be an instance of some class. To do this,
|
||||
assign the desired export object to `module.exports`. Note that assigning the
|
||||
desired object to `exports` will simply rebind the local `exports` variable,
|
||||
The `module.exports` object is created by the Module system. Sometimes this is
|
||||
not acceptable; many want their module to be an instance of some class. To do
|
||||
this, assign the desired export object to `module.exports`. Note that assigning
|
||||
the desired object to `exports` will simply rebind the local `exports` variable,
|
||||
which is probably not what you want to do.
|
||||
|
||||
For example suppose we were making a module called `a.js`
|
||||
@ -425,29 +425,29 @@ in pseudocode of what require.resolve does:
|
||||
<!-- type=misc -->
|
||||
|
||||
If the `NODE_PATH` environment variable is set to a colon-delimited list
|
||||
of absolute paths, then io.js will search those paths for modules if they
|
||||
of absolute paths, then Node.js will search those paths for modules if they
|
||||
are not found elsewhere. (Note: On Windows, `NODE_PATH` is delimited by
|
||||
semicolons instead of colons.)
|
||||
|
||||
`NODE_PATH` was originally created to support loading modules from
|
||||
varying paths before the current
|
||||
[module resolution](https://iojs.org/api/modules.html#modules_all_together)
|
||||
[module resolution](https://nodejs.org/api/modules.html#modules_all_together)
|
||||
algorithm was frozen.
|
||||
|
||||
`NODE_PATH` is still supported, but is less necessary now that the io.js
|
||||
`NODE_PATH` is still supported, but is less necessary now that the Node.js
|
||||
ecosystem has settled on a convention for locating dependent modules.
|
||||
Sometimes deployments that rely on `NODE_PATH` show surprising behavior
|
||||
when people are unaware that `NODE_PATH` must be set. Sometimes a
|
||||
module's dependencies change, causing a different version (or even a
|
||||
different module) to be loaded as the `NODE_PATH` is searched.
|
||||
|
||||
Additionally, io.js will search in the following locations:
|
||||
Additionally, Node.js will search in the following locations:
|
||||
|
||||
* 1: `$HOME/.node_modules`
|
||||
* 2: `$HOME/.node_libraries`
|
||||
* 3: `$PREFIX/lib/node`
|
||||
|
||||
Where `$HOME` is the user's home directory, and `$PREFIX` is io.js's
|
||||
Where `$HOME` is the user's home directory, and `$PREFIX` is Node.js's
|
||||
configured `node_prefix`.
|
||||
|
||||
These are mostly for historic reasons. **You are highly encouraged
|
||||
@ -458,13 +458,13 @@ will be loaded faster, and more reliably.
|
||||
|
||||
<!-- type=misc -->
|
||||
|
||||
When a file is run directly from io.js, `require.main` is set to its
|
||||
When a file is run directly from Node.js, `require.main` is set to its
|
||||
`module`. That means that you can determine whether a file has been run
|
||||
directly by testing
|
||||
|
||||
require.main === module
|
||||
|
||||
For a file `foo.js`, this will be `true` if run via `iojs foo.js`, but
|
||||
For a file `foo.js`, this will be `true` if run via `node foo.js`, but
|
||||
`false` if run by `require('./foo')`.
|
||||
|
||||
Because `module` provides a `filename` property (normally equivalent to
|
||||
@ -475,10 +475,10 @@ by checking `require.main.filename`.
|
||||
|
||||
<!-- type=misc -->
|
||||
|
||||
The semantics of io.js's `require()` function were designed to be general
|
||||
The semantics of Node.js's `require()` function were designed to be general
|
||||
enough to support a number of sane directory structures. Package manager
|
||||
programs such as `dpkg`, `rpm`, and `npm` will hopefully find it possible to
|
||||
build native packages from io.js modules without modification.
|
||||
build native packages from Node.js modules without modification.
|
||||
|
||||
Below we give a suggested directory structure that could work:
|
||||
|
||||
@ -491,7 +491,7 @@ may have to install a specific version of package `bar`. The `bar` package
|
||||
may itself have dependencies, and in some cases, these dependencies may even
|
||||
collide or form cycles.
|
||||
|
||||
Since io.js looks up the `realpath` of any modules it loads (that is,
|
||||
Since Node.js looks up the `realpath` of any modules it loads (that is,
|
||||
resolves symlinks), and then looks for their dependencies in the
|
||||
`node_modules` folders as described above, this situation is very simple to
|
||||
resolve with the following architecture:
|
||||
@ -516,10 +516,10 @@ the version that is symlinked into
|
||||
|
||||
Furthermore, to make the module lookup process even more optimal, rather
|
||||
than putting packages directly in `/usr/lib/node`, we could put them in
|
||||
`/usr/lib/node_modules/<name>/<version>`. Then io.js will not bother
|
||||
`/usr/lib/node_modules/<name>/<version>`. Then Node.js will not bother
|
||||
looking for missing dependencies in `/usr/node_modules` or `/node_modules`.
|
||||
|
||||
In order to make modules available to the io.js REPL, it might be useful to
|
||||
In order to make modules available to the Node.js REPL, it might be useful to
|
||||
also add the `/usr/lib/node_modules` folder to the `$NODE_PATH` environment
|
||||
variable. Since the module lookups using `node_modules` folders are all
|
||||
relative, and based on the real path of the files making the calls to
|
||||
|
@ -147,7 +147,7 @@ would be to wait a second and then try again. This can be done with
|
||||
}
|
||||
});
|
||||
|
||||
(Note: All sockets in io.js set `SO_REUSEADDR` already)
|
||||
(Note: All sockets in Node.js set `SO_REUSEADDR` already)
|
||||
|
||||
|
||||
### server.listen(path[, callback])
|
||||
@ -324,7 +324,7 @@ following this event. See example in discussion of `server.listen`.
|
||||
|
||||
This object is an abstraction of a TCP or local socket. `net.Socket`
|
||||
instances implement a duplex Stream interface. They can be created by the
|
||||
user and used as a client (with `connect()`) or they can be created by io.js
|
||||
user and used as a client (with `connect()`) or they can be created by Node.js
|
||||
and passed to the user through the `'connection'` event of a server.
|
||||
|
||||
### new net.Socket([options])
|
||||
@ -388,7 +388,7 @@ with options either as either `{port: port, host: host}` or `{path: path}`.
|
||||
`net.Socket` has the property that `socket.write()` always works. This is to
|
||||
help users get up and running quickly. The computer cannot always keep up
|
||||
with the amount of data that is written to a socket - the network connection
|
||||
simply might be too slow. io.js will internally queue up the data written to a
|
||||
simply might be too slow. Node.js will internally queue up the data written to a
|
||||
socket and send it out over the wire when it is possible. (Internally it is
|
||||
polling on the socket's file descriptor for being writable).
|
||||
|
||||
|
@ -83,8 +83,8 @@ Examples:
|
||||
'/tmp/file'
|
||||
|
||||
path.resolve('wwwroot', 'static_files/png/', '../gif/image.gif')
|
||||
// if currently in /home/myself/iojs, it returns
|
||||
'/home/myself/iojs/wwwroot/static_files/gif/image.gif'
|
||||
// if currently in /home/myself/node, it returns
|
||||
'/home/myself/node/wwwroot/static_files/gif/image.gif'
|
||||
|
||||
*Note:* If the arguments to `resolve` have zero-length strings then the current
|
||||
working directory will be used instead of them.
|
||||
@ -215,11 +215,11 @@ An example on *nix:
|
||||
An example on Windows:
|
||||
|
||||
console.log(process.env.PATH)
|
||||
// 'C:\Windows\system32;C:\Windows;C:\Program Files\iojs\'
|
||||
// 'C:\Windows\system32;C:\Windows;C:\Program Files\node\'
|
||||
|
||||
process.env.PATH.split(path.delimiter)
|
||||
// returns
|
||||
['C:\\Windows\\system32', 'C:\\Windows', 'C:\\Program Files\\iojs\\']
|
||||
['C:\\Windows\\system32', 'C:\\Windows', 'C:\\Program Files\\node\\']
|
||||
|
||||
## path.parse(pathString)
|
||||
|
||||
|
@ -7,7 +7,7 @@ It is an instance of [EventEmitter][].
|
||||
|
||||
## Exit Codes
|
||||
|
||||
io.js will normally exit with a `0` status code when no more async
|
||||
Node.js will normally exit with a `0` status code when no more async
|
||||
operations are pending. The following status codes are used in other
|
||||
cases:
|
||||
|
||||
@ -16,13 +16,13 @@ cases:
|
||||
handler.
|
||||
* `2` - Unused (reserved by Bash for builtin misuse)
|
||||
* `3` **Internal JavaScript Parse Error** - The JavaScript source code
|
||||
internal in io.js's bootstrapping process caused a parse error. This
|
||||
internal in Node.js's bootstrapping process caused a parse error. This
|
||||
is extremely rare, and generally can only happen during development
|
||||
of io.js itself.
|
||||
of Node.js itself.
|
||||
* `4` **Internal JavaScript Evaluation Failure** - The JavaScript
|
||||
source code internal in io.js's bootstrapping process failed to
|
||||
source code internal in Node.js's bootstrapping process failed to
|
||||
return a function value when evaluated. This is extremely rare, and
|
||||
generally can only happen during development of io.js itself.
|
||||
generally can only happen during development of Node.js itself.
|
||||
* `5` **Fatal Error** - There was a fatal unrecoverable error in V8.
|
||||
Typically a message will be printed to stderr with the prefix `FATAL
|
||||
ERROR`.
|
||||
@ -34,17 +34,17 @@ cases:
|
||||
function itself threw an error while attempting to handle it. This
|
||||
can happen, for example, if a `process.on('uncaughtException')` or
|
||||
`domain.on('error')` handler throws an error.
|
||||
* `8` - Unused. In previous versions of io.js, exit code 8 sometimes
|
||||
* `8` - Unused. In previous versions of Node.js, exit code 8 sometimes
|
||||
indicated an uncaught exception.
|
||||
* `9` - **Invalid Argument** - Either an unknown option was specified,
|
||||
or an option requiring a value was provided without a value.
|
||||
* `10` **Internal JavaScript Run-Time Failure** - The JavaScript
|
||||
source code internal in io.js's bootstrapping process threw an error
|
||||
source code internal in Node.js's bootstrapping process threw an error
|
||||
when the bootstrapping function was called. This is extremely rare,
|
||||
and generally can only happen during development of io.js itself.
|
||||
and generally can only happen during development of Node.js itself.
|
||||
* `12` **Invalid Debug Argument** - The `--debug` and/or `--debug-brk`
|
||||
options were set, but an invalid port number was chosen.
|
||||
* `>128` **Signal Exits** - If io.js receives a fatal signal such as
|
||||
* `>128` **Signal Exits** - If Node.js receives a fatal signal such as
|
||||
`SIGKILL` or `SIGHUP`, then its exit code will be `128` plus the
|
||||
value of the signal code. This is a standard Unix practice, since
|
||||
exit codes are defined to be 7-bit integers, and signal exits set
|
||||
@ -72,9 +72,9 @@ Example of listening for `exit`:
|
||||
|
||||
## Event: 'beforeExit'
|
||||
|
||||
This event is emitted when io.js empties its event loop and has nothing else to
|
||||
schedule. Normally, io.js exits when there is no work scheduled, but a listener
|
||||
for 'beforeExit' can make asynchronous calls, and cause io.js to continue.
|
||||
This event is emitted when Node.js empties its event loop and has nothing else to
|
||||
schedule. Normally, Node.js exits when there is no work scheduled, but a listener
|
||||
for 'beforeExit' can make asynchronous calls, and cause Node.js to continue.
|
||||
|
||||
'beforeExit' is not emitted for conditions causing explicit termination, such as
|
||||
`process.exit()` or uncaught exceptions, and should not be used as an
|
||||
@ -104,8 +104,8 @@ Example of listening for `uncaughtException`:
|
||||
Note that `uncaughtException` is a very crude mechanism for exception
|
||||
handling.
|
||||
|
||||
Do *not* use it as the io.js equivalent of `On Error Resume Next`. An
|
||||
unhandled exception means your application - and by extension io.js itself -
|
||||
Do *not* use it as the Node.js equivalent of `On Error Resume Next`. An
|
||||
unhandled exception means your application - and by extension Node.js itself -
|
||||
is in an undefined state. Blindly resuming means *anything* could happen.
|
||||
|
||||
Think of resuming as pulling the power cord when you are upgrading your system.
|
||||
@ -202,18 +202,18 @@ programs.
|
||||
|
||||
Note:
|
||||
|
||||
- `SIGUSR1` is reserved by io.js to start the debugger. It's possible to
|
||||
- `SIGUSR1` is reserved by Node.js to start the debugger. It's possible to
|
||||
install a listener but that won't stop the debugger from starting.
|
||||
- `SIGTERM` and `SIGINT` have default handlers on non-Windows platforms that resets
|
||||
the terminal mode before exiting with code `128 + signal number`. If one of
|
||||
these signals has a listener installed, its default behaviour will be removed
|
||||
(io.js will no longer exit).
|
||||
(Node.js will no longer exit).
|
||||
- `SIGPIPE` is ignored by default, it can have a listener installed.
|
||||
- `SIGHUP` is generated on Windows when the console window is closed, and on other
|
||||
platforms under various similar conditions, see signal(7). It can have a
|
||||
listener installed, however io.js will be unconditionally terminated by
|
||||
listener installed, however Node.js will be unconditionally terminated by
|
||||
Windows about 10 seconds later. On non-Windows platforms, the default
|
||||
behaviour of `SIGHUP` is to terminate io.js, but once a listener has been
|
||||
behaviour of `SIGHUP` is to terminate Node.js, but once a listener has been
|
||||
installed its default behaviour will be removed.
|
||||
- `SIGTERM` is not supported on Windows, it can be listened on.
|
||||
- `SIGINT` from the terminal is supported on all platforms, and can usually be
|
||||
@ -225,10 +225,10 @@ Note:
|
||||
only happen on write to the console when the cursor is being moved, or when a
|
||||
readable tty is used in raw mode.
|
||||
- `SIGKILL` cannot have a listener installed, it will unconditionally terminate
|
||||
io.js on all platforms.
|
||||
Node.js on all platforms.
|
||||
- `SIGSTOP` cannot have a listener installed.
|
||||
|
||||
Note that Windows does not support sending Signals, but io.js offers some
|
||||
Note that Windows does not support sending Signals, but Node.js offers some
|
||||
emulation with `process.kill()`, and `child_process.kill()`:
|
||||
- Sending signal `0` can be used to search for the existence of a process
|
||||
- Sending `SIGINT`, `SIGTERM`, and `SIGKILL` cause the unconditional exit of the
|
||||
@ -244,7 +244,7 @@ For example, a `console.log` equivalent could look like this:
|
||||
process.stdout.write(msg + '\n');
|
||||
};
|
||||
|
||||
`process.stderr` and `process.stdout` are unlike other streams in io.js in
|
||||
`process.stderr` and `process.stdout` are unlike other streams in Node.js in
|
||||
that they cannot be closed (`end()` will throw), they never emit the `finish`
|
||||
event and that writes are usually blocking.
|
||||
|
||||
@ -254,17 +254,17 @@ event and that writes are usually blocking.
|
||||
- They are blocking in Linux/Unix.
|
||||
- They are non-blocking like other streams in Windows.
|
||||
|
||||
To check if io.js is being run in a TTY context, read the `isTTY` property
|
||||
To check if Node.js is being run in a TTY context, read the `isTTY` property
|
||||
on `process.stderr`, `process.stdout`, or `process.stdin`:
|
||||
|
||||
$ iojs -p "Boolean(process.stdin.isTTY)"
|
||||
$ node -p "Boolean(process.stdin.isTTY)"
|
||||
true
|
||||
$ echo "foo" | iojs -p "Boolean(process.stdin.isTTY)"
|
||||
$ echo "foo" | node -p "Boolean(process.stdin.isTTY)"
|
||||
false
|
||||
|
||||
$ iojs -p "Boolean(process.stdout.isTTY)"
|
||||
$ node -p "Boolean(process.stdout.isTTY)"
|
||||
true
|
||||
$ iojs -p "Boolean(process.stdout.isTTY)" | cat
|
||||
$ node -p "Boolean(process.stdout.isTTY)" | cat
|
||||
false
|
||||
|
||||
See [the tty docs](tty.html#tty_tty) for more information.
|
||||
@ -273,7 +273,7 @@ See [the tty docs](tty.html#tty_tty) for more information.
|
||||
|
||||
A writable stream to stderr (on fd `2`).
|
||||
|
||||
`process.stderr` and `process.stdout` are unlike other streams in io.js in
|
||||
`process.stderr` and `process.stdout` are unlike other streams in Node.js in
|
||||
that they cannot be closed (`end()` will throw), they never emit the `finish`
|
||||
event and that writes are usually blocking.
|
||||
|
||||
@ -318,7 +318,7 @@ mode over "old" one.
|
||||
## process.argv
|
||||
|
||||
An array containing the command line arguments. The first element will be
|
||||
'iojs', the second element will be the name of the JavaScript file. The
|
||||
'node', the second element will be the name of the JavaScript file. The
|
||||
next elements will be any additional command line arguments.
|
||||
|
||||
// print process.argv
|
||||
@ -328,9 +328,9 @@ next elements will be any additional command line arguments.
|
||||
|
||||
This will generate:
|
||||
|
||||
$ iojs process-2.js one two=three four
|
||||
0: iojs
|
||||
1: /Users/mjr/work/iojs/process-2.js
|
||||
$ node process-2.js one two=three four
|
||||
0: node
|
||||
1: /Users/mjr/work/node/process-2.js
|
||||
2: one
|
||||
3: two=three
|
||||
4: four
|
||||
@ -342,21 +342,21 @@ This is the absolute pathname of the executable that started the process.
|
||||
|
||||
Example:
|
||||
|
||||
/usr/local/bin/iojs
|
||||
/usr/local/bin/node
|
||||
|
||||
|
||||
## process.execArgv
|
||||
|
||||
This is the set of io.js-specific command line options from the
|
||||
This is the set of Node.js-specific command line options from the
|
||||
executable that started the process. These options do not show up in
|
||||
`process.argv`, and do not include the io.js executable, the name of
|
||||
`process.argv`, and do not include the Node.js executable, the name of
|
||||
the script, or any options following the script name. These options
|
||||
are useful in order to spawn child processes with the same execution
|
||||
environment as the parent.
|
||||
|
||||
Example:
|
||||
|
||||
$ iojs --harmony script.js --version
|
||||
$ node --harmony script.js --version
|
||||
|
||||
results in process.execArgv:
|
||||
|
||||
@ -364,12 +364,12 @@ results in process.execArgv:
|
||||
|
||||
and process.argv:
|
||||
|
||||
['/usr/local/bin/iojs', 'script.js', '--version']
|
||||
['/usr/local/bin/node', 'script.js', '--version']
|
||||
|
||||
|
||||
## process.abort()
|
||||
|
||||
This causes io.js to emit an abort. This will cause io.js to exit and
|
||||
This causes Node.js to emit an abort. This will cause Node.js to exit and
|
||||
generate a core file.
|
||||
|
||||
## process.chdir(directory)
|
||||
@ -409,12 +409,12 @@ An example of this object looks like:
|
||||
SHLVL: '1',
|
||||
HOME: '/Users/maciej',
|
||||
LOGNAME: 'maciej',
|
||||
_: '/usr/local/bin/iojs' }
|
||||
_: '/usr/local/bin/node' }
|
||||
|
||||
You can write to this object, but changes won't be reflected outside of your
|
||||
process. That means that the following won't work:
|
||||
|
||||
$ iojs -e 'process.env.foo = "bar"' && echo $foo
|
||||
$ node -e 'process.env.foo = "bar"' && echo $foo
|
||||
|
||||
But this will:
|
||||
|
||||
@ -431,7 +431,7 @@ To exit with a 'failure' code:
|
||||
|
||||
process.exit(1);
|
||||
|
||||
The shell that executed io.js should see the exit code as 1.
|
||||
The shell that executed Node.js should see the exit code as 1.
|
||||
|
||||
|
||||
## process.exitCode
|
||||
@ -586,7 +586,7 @@ Note: this function is only available on POSIX platforms (i.e. not Windows,
|
||||
Android)
|
||||
|
||||
Returns an array with the supplementary group IDs. POSIX leaves it unspecified
|
||||
if the effective group ID is included but io.js ensures it always is.
|
||||
if the effective group ID is included but Node.js ensures it always is.
|
||||
|
||||
|
||||
## process.setgroups(groups)
|
||||
@ -628,7 +628,7 @@ A compiled-in property that exposes `NODE_VERSION`.
|
||||
|
||||
## process.versions
|
||||
|
||||
A property exposing version strings of io.js and its dependencies.
|
||||
A property exposing version strings of Node.js and its dependencies.
|
||||
|
||||
console.log(process.versions);
|
||||
|
||||
@ -646,7 +646,7 @@ Will print something like:
|
||||
## process.config
|
||||
|
||||
An Object containing the JavaScript representation of the configure options
|
||||
that were used to compile the current io.js executable. This is the same as
|
||||
that were used to compile the current Node.js executable. This is the same as
|
||||
the "config.gypi" file that was produced when running the `./configure` script.
|
||||
|
||||
An example of the possible output looks like:
|
||||
@ -679,24 +679,24 @@ for the source tarball and headers-only tarball.
|
||||
|
||||
`process.release` contains the following properties:
|
||||
|
||||
* `name`: a string with a value that will always be `"io.js"` for io.js.
|
||||
* `name`: a string with a value that will always be `"node.js"` for Node.js.
|
||||
* `sourceUrl`: a complete URL pointing to a _.tar.gz_ file containing the
|
||||
source of the current release.
|
||||
* `headersUrl`: a complete URL pointing to a _.tar.gz_ file containing only
|
||||
the header files for the current release. This file is significantly smaller
|
||||
than the full source file and can be used for compiling add-ons against
|
||||
io.js.
|
||||
* `libUrl`: a complete URL pointing to an _iojs.lib_ file matching the
|
||||
Node.js.
|
||||
* `libUrl`: a complete URL pointing to an _node.lib_ file matching the
|
||||
architecture and version of the current release. This file is used for
|
||||
compiling add-ons against io.js. _This property is only present on Windows
|
||||
builds of io.js and will be missing on all other platforms._
|
||||
compiling add-ons against Node.js. _This property is only present on Windows
|
||||
builds of Node.js and will be missing on all other platforms._
|
||||
|
||||
e.g.
|
||||
|
||||
{ name: 'io.js',
|
||||
sourceUrl: 'https://iojs.org/download/release/v2.3.5/iojs-v2.3.5.tar.gz',
|
||||
headersUrl: 'https://iojs.org/download/release/v2.3.5/iojs-v2.3.5-headers.tar.gz',
|
||||
libUrl: 'https://iojs.org/download/release/v2.3.5/win-x64/iojs.lib' }
|
||||
{ name: 'node.js',
|
||||
sourceUrl: 'https://nodejs.org/download/release/v4.0.0/node-v4.0.0.tar.gz',
|
||||
headersUrl: 'https://nodejs.org/download/release/v4.0.0/node-v4.0.0-headers.tar.gz',
|
||||
libUrl: 'https://nodejs.org/download/release/v4.0.0/win-x64/node.lib' }
|
||||
|
||||
In custom builds from non-release versions of the source tree, only the
|
||||
`name` property may be present. The additional properties should not be
|
||||
@ -729,7 +729,7 @@ Example of sending a signal to yourself:
|
||||
|
||||
process.kill(process.pid, 'SIGHUP');
|
||||
|
||||
Note: When SIGUSR1 is received by io.js it starts the debugger, see
|
||||
Note: When SIGUSR1 is received by Node.js it starts the debugger, see
|
||||
[Signal Events](#process_signal_events).
|
||||
|
||||
## process.pid
|
||||
@ -771,7 +771,7 @@ What platform you're running on:
|
||||
|
||||
## process.memoryUsage()
|
||||
|
||||
Returns an object describing the memory usage of the io.js process
|
||||
Returns an object describing the memory usage of the Node.js process
|
||||
measured in bytes.
|
||||
|
||||
var util = require('util');
|
||||
@ -878,7 +878,7 @@ given, otherwise returns the current mask.
|
||||
|
||||
## process.uptime()
|
||||
|
||||
Number of seconds io.js has been running.
|
||||
Number of seconds Node.js has been running.
|
||||
|
||||
|
||||
## process.hrtime()
|
||||
|
@ -2,9 +2,9 @@
|
||||
|
||||
Stability: 2 - Stable
|
||||
|
||||
[Punycode.js](https://mths.be/punycode) is bundled with io.js v1.0.0+ and
|
||||
Node.js v0.6.2+. Use `require('punycode')` to access it. (To use it with
|
||||
other io.js versions, use npm to install the `punycode` module first.)
|
||||
[Punycode.js](https://mths.be/punycode) is bundled with Node.js v0.6.2+. Use
|
||||
`require('punycode')` to access it. (To use it with other Node.js versions, use
|
||||
npm to install the `punycode` module first.)
|
||||
|
||||
## punycode.decode(string)
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
To use this module, do `require('readline')`. Readline allows reading of a
|
||||
stream (such as `process.stdin`) on a line-by-line basis.
|
||||
|
||||
Note that once you've invoked this module, your io.js program will not
|
||||
Note that once you've invoked this module, your Node.js program will not
|
||||
terminate until you've closed the interface. Here's how to allow your
|
||||
program to gracefully exit:
|
||||
|
||||
@ -16,7 +16,7 @@ program to gracefully exit:
|
||||
output: process.stdout
|
||||
});
|
||||
|
||||
rl.question("What do you think of io.js? ", function(answer) {
|
||||
rl.question("What do you think of Node.js? ", function(answer) {
|
||||
// TODO: Log the answer in a database
|
||||
console.log("Thank you for your valuable feedback:", answer);
|
||||
|
||||
@ -90,8 +90,8 @@ stream.
|
||||
|
||||
### rl.setPrompt(prompt)
|
||||
|
||||
Sets the prompt, for example when you run `iojs` on the command line, you see
|
||||
`> `, which is io.js's prompt.
|
||||
Sets the prompt, for example when you run `node` on the command line, you see
|
||||
`> `, which is node.js's prompt.
|
||||
|
||||
### rl.prompt([preserveCursor])
|
||||
|
||||
|
@ -7,10 +7,10 @@ easily includable in other programs. The REPL provides a way to interactively
|
||||
run JavaScript and see the results. It can be used for debugging, testing, or
|
||||
just trying things out.
|
||||
|
||||
By executing `iojs` without any arguments from the command-line you will be
|
||||
By executing `node` without any arguments from the command-line you will be
|
||||
dropped into the REPL. It has simplistic emacs line-editing.
|
||||
|
||||
mjr:~$ iojs
|
||||
mjr:~$ node
|
||||
Type '.help' for options.
|
||||
> a = [ 1, 2, 3];
|
||||
[ 1, 2, 3 ]
|
||||
@ -21,21 +21,21 @@ dropped into the REPL. It has simplistic emacs line-editing.
|
||||
2
|
||||
3
|
||||
|
||||
For advanced line-editors, start io.js with the environmental variable
|
||||
For advanced line-editors, start Node.js with the environmental variable
|
||||
`NODE_NO_READLINE=1`. This will start the main and debugger REPL in canonical
|
||||
terminal settings which will allow you to use with `rlwrap`.
|
||||
|
||||
For example, you could add this to your bashrc file:
|
||||
|
||||
alias iojs="env NODE_NO_READLINE=1 rlwrap iojs"
|
||||
alias node="env NODE_NO_READLINE=1 rlwrap node"
|
||||
|
||||
## Persistent History
|
||||
|
||||
By default, the REPL will persist history between `iojs` REPL sessions by saving
|
||||
By default, the REPL will persist history between `node` REPL sessions by saving
|
||||
to a `.node_repl_history` file in the user's home directory. This can be
|
||||
disabled by setting the environment variable `NODE_REPL_HISTORY=""`.
|
||||
|
||||
Previously in io.js v2.x, REPL history was controlled by using a
|
||||
Previously in Node.js/io.js v2.x, REPL history was controlled by using a
|
||||
`NODE_REPL_HISTORY_FILE` environment variable, and the history was saved in JSON
|
||||
format. This variable has now been deprecated, and your REPL history will
|
||||
automatically be converted to using plain text. The new file will be saved to
|
||||
@ -44,7 +44,7 @@ variable, as documented below.
|
||||
|
||||
## Environment Variable Options
|
||||
|
||||
The built-in repl (invoked by running `iojs` or `iojs -i`) may be controlled
|
||||
The built-in repl (invoked by running `node` or `node -i`) may be controlled
|
||||
via the following environment variables:
|
||||
|
||||
- `NODE_REPL_HISTORY` - When a valid path is given, persistent REPL history
|
||||
@ -108,7 +108,7 @@ You can use your own `eval` function if it has following signature:
|
||||
On tab completion - `eval` will be called with `.scope` as an input string. It
|
||||
is expected to return an array of scope names to be used for the auto-completion.
|
||||
|
||||
Multiple REPLs may be started against the same running instance of io.js. Each
|
||||
Multiple REPLs may be started against the same running instance of Node.js. Each
|
||||
will share the same global object but will have unique I/O.
|
||||
|
||||
Here is an example that starts a REPL on stdin, a Unix socket, and a TCP socket:
|
||||
@ -119,7 +119,7 @@ Here is an example that starts a REPL on stdin, a Unix socket, and a TCP socket:
|
||||
connections = 0;
|
||||
|
||||
repl.start({
|
||||
prompt: "io.js via stdin> ",
|
||||
prompt: "Node.js via stdin> ",
|
||||
input: process.stdin,
|
||||
output: process.stdout
|
||||
});
|
||||
@ -127,18 +127,18 @@ Here is an example that starts a REPL on stdin, a Unix socket, and a TCP socket:
|
||||
net.createServer(function (socket) {
|
||||
connections += 1;
|
||||
repl.start({
|
||||
prompt: "io.js via Unix socket> ",
|
||||
prompt: "Node.js via Unix socket> ",
|
||||
input: socket,
|
||||
output: socket
|
||||
}).on('exit', function() {
|
||||
socket.end();
|
||||
})
|
||||
}).listen("/tmp/iojs-repl-sock");
|
||||
}).listen("/tmp/node-repl-sock");
|
||||
|
||||
net.createServer(function (socket) {
|
||||
connections += 1;
|
||||
repl.start({
|
||||
prompt: "io.js via TCP socket> ",
|
||||
prompt: "Node.js via TCP socket> ",
|
||||
input: socket,
|
||||
output: socket
|
||||
}).on('exit', function() {
|
||||
@ -152,7 +152,7 @@ for connecting to TCP sockets, and `socat` can be used to connect to both Unix a
|
||||
TCP sockets.
|
||||
|
||||
By starting a REPL from a Unix socket-based server instead of stdin, you can
|
||||
connect to a long-running io.js process without restarting it.
|
||||
connect to a long-running Node.js process without restarting it.
|
||||
|
||||
For an example of running a "full-featured" (`terminal`) REPL over
|
||||
a `net.Server` and `net.Socket` instance, see: https://gist.github.com/2209310
|
||||
@ -228,7 +228,7 @@ associated with each `REPLServer`. For example:
|
||||
|
||||
Things in the `context` object appear as local within the REPL:
|
||||
|
||||
mjr:~$ iojs repl_test.js
|
||||
mjr:~$ node repl_test.js
|
||||
> m
|
||||
'message'
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
Stability: 2 - Stable
|
||||
|
||||
A stream is an abstract interface implemented by various objects in
|
||||
io.js. For example a [request to an HTTP
|
||||
Node.js. For example a [request to an HTTP
|
||||
server](http.html#http_http_incomingmessage) is a stream, as is
|
||||
[stdout][]. Streams are readable, writable, or both. All streams are
|
||||
instances of [EventEmitter][]
|
||||
@ -47,8 +47,8 @@ streams in your programs. If you **are** implementing streaming
|
||||
interfaces in your own program, please also refer to
|
||||
[API for Stream Implementors][] below.
|
||||
|
||||
Almost all io.js programs, no matter how simple, use Streams in some
|
||||
way. Here is an example of using Streams in an io.js program:
|
||||
Almost all Node.js programs, no matter how simple, use Streams in some
|
||||
way. Here is an example of using Streams in an Node.js program:
|
||||
|
||||
```javascript
|
||||
var http = require('http');
|
||||
@ -504,13 +504,13 @@ Versions of Node.js prior to v0.10 had streams that did not implement the
|
||||
entire Streams API as it is today. (See "Compatibility" below for
|
||||
more information.)
|
||||
|
||||
If you are using an older io.js library that emits `'data'` events and
|
||||
If you are using an older Node.js library that emits `'data'` events and
|
||||
has a [`pause()`][] method that is advisory only, then you can use the
|
||||
`wrap()` method to create a [Readable][] stream that uses the old stream
|
||||
as its data source.
|
||||
|
||||
You will very rarely ever need to call this function, but it exists
|
||||
as a convenience for interacting with old io.js programs and libraries.
|
||||
as a convenience for interacting with old Node.js programs and libraries.
|
||||
|
||||
For example:
|
||||
|
||||
@ -1277,7 +1277,7 @@ simply by using the higher level [Transform][] stream class, similar to
|
||||
the `parseHeader` and `SimpleProtocol v1` examples above.
|
||||
|
||||
In this example, rather than providing the input as an argument, it
|
||||
would be piped into the parser, which is a more idiomatic io.js stream
|
||||
would be piped into the parser, which is a more idiomatic Node.js stream
|
||||
approach.
|
||||
|
||||
```javascript
|
||||
@ -1466,8 +1466,8 @@ If the internal read buffer is below the `highWaterMark`, and the
|
||||
stream is not currently reading, then calling `read(0)` will trigger
|
||||
a low-level `_read` call.
|
||||
|
||||
There is almost never a need to do this. However, you will see some
|
||||
cases in io.js's internals where this is done, particularly in the
|
||||
There is almost never a need to do this. However, you will see some
|
||||
cases in Node.js's internals where this is done, particularly in the
|
||||
Readable stream class internals.
|
||||
|
||||
### `stream.push('')`
|
||||
@ -1484,7 +1484,7 @@ code) will know when to check again, by calling `stream.read(0)`. In
|
||||
those cases, you *may* call `stream.push('')`.
|
||||
|
||||
So far, the only use case for this functionality is in the
|
||||
[tls.CryptoStream][] class, which is deprecated in io.js v1.0. If you
|
||||
[tls.CryptoStream][] class, which is deprecated in Node.js/io.js v1.0. If you
|
||||
find that you have to use `stream.push('')`, please consider another
|
||||
approach, because it almost certainly indicates that something is
|
||||
horribly wrong.
|
||||
@ -1504,7 +1504,7 @@ simpler, but also less powerful and less useful.
|
||||
meant that you still had to be prepared to receive `'data'` events
|
||||
even when the stream was in a paused state.
|
||||
|
||||
In io.js v1.0 and Node.js v0.10, the Readable class described below was added.
|
||||
In Node.js v0.10, the Readable class described below was added.
|
||||
For backwards compatibility with older Node.js programs, Readable streams
|
||||
switch into "flowing mode" when a `'data'` event handler is added, or
|
||||
when the [`resume()`][] method is called. The effect is that, even if
|
||||
@ -1534,7 +1534,7 @@ net.createServer(function(socket) {
|
||||
```
|
||||
|
||||
In versions of Node.js prior to v0.10, the incoming message data would be
|
||||
simply discarded. However, in io.js v1.0 and Node.js v0.10 and beyond,
|
||||
simply discarded. However, in Node.js v0.10 and beyond,
|
||||
the socket will remain paused forever.
|
||||
|
||||
The workaround in this situation is to call the `resume()` method to
|
||||
@ -1581,7 +1581,7 @@ return value from `stream.read()` indicates that there is no more
|
||||
data, and [`stream.push(null)`][] will signal the end of stream data
|
||||
(`EOF`).
|
||||
|
||||
No streams in io.js core are object mode streams. This pattern is only
|
||||
No streams in Node.js core are object mode streams. This pattern is only
|
||||
used by userland streaming libraries.
|
||||
|
||||
You should set `objectMode` in your stream child class constructor on
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
<!--type=misc-->
|
||||
|
||||
An example of a [web server](http.html) written with io.js which responds with
|
||||
An example of a [web server](http.html) written with node.js which responds with
|
||||
'Hello World':
|
||||
|
||||
var http = require('http');
|
||||
@ -15,9 +15,9 @@ An example of a [web server](http.html) written with io.js which responds with
|
||||
console.log('Server running at http://127.0.0.1:8124/');
|
||||
|
||||
To run the server, put the code into a file called `example.js` and execute
|
||||
it with the iojs program
|
||||
it with the node program
|
||||
|
||||
> iojs example.js
|
||||
> node example.js
|
||||
Server running at http://127.0.0.1:8124/
|
||||
|
||||
All of the examples in the documentation can be run similarly.
|
||||
|
@ -12,7 +12,7 @@ To schedule execution of a one-time `callback` after `delay` milliseconds. Retur
|
||||
also pass arguments to the callback.
|
||||
|
||||
It is important to note that your callback will probably not be called in exactly
|
||||
`delay` milliseconds - io.js makes no guarantees about the exact timing of when
|
||||
`delay` milliseconds - node.js makes no guarantees about the exact timing of when
|
||||
the callback will fire, nor of the ordering things will fire in. The callback will
|
||||
be called as close as possible to the time specified.
|
||||
|
||||
|
@ -501,7 +501,7 @@ dictionary with keys:
|
||||
instead of the client preferences. For further details see `tls` module
|
||||
documentation.
|
||||
|
||||
If no 'ca' details are given, then io.js will use the default
|
||||
If no 'ca' details are given, then node.js will use the default
|
||||
publicly trusted list of CAs as given in
|
||||
<http://mxr.mozilla.org/mozilla/source/security/nss/lib/ckfw/builtins/certdata.txt>.
|
||||
|
||||
@ -767,14 +767,14 @@ Example:
|
||||
{ C: 'UK',
|
||||
ST: 'Acknack Ltd',
|
||||
L: 'Rhys Jones',
|
||||
O: 'io.js',
|
||||
O: 'node.js',
|
||||
OU: 'Test TLS Certificate',
|
||||
CN: 'localhost' },
|
||||
issuerInfo:
|
||||
{ C: 'UK',
|
||||
ST: 'Acknack Ltd',
|
||||
L: 'Rhys Jones',
|
||||
O: 'io.js',
|
||||
O: 'node.js',
|
||||
OU: 'Test TLS Certificate',
|
||||
CN: 'localhost' },
|
||||
issuer:
|
||||
|
@ -5,14 +5,14 @@
|
||||
The `tty` module houses the `tty.ReadStream` and `tty.WriteStream` classes. In
|
||||
most cases, you will not need to use this module directly.
|
||||
|
||||
When io.js detects that it is being run inside a TTY context, then `process.stdin`
|
||||
When node.js detects that it is being run inside a TTY context, then `process.stdin`
|
||||
will be a `tty.ReadStream` instance and `process.stdout` will be
|
||||
a `tty.WriteStream` instance. The preferred way to check if io.js is being run
|
||||
a `tty.WriteStream` instance. The preferred way to check if node.js is being run
|
||||
in a TTY context is to check `process.stdout.isTTY`:
|
||||
|
||||
$ iojs -p -e "Boolean(process.stdout.isTTY)"
|
||||
$ node -p -e "Boolean(process.stdout.isTTY)"
|
||||
true
|
||||
$ iojs -p -e "Boolean(process.stdout.isTTY)" | cat
|
||||
$ node -p -e "Boolean(process.stdout.isTTY)" | cat
|
||||
false
|
||||
|
||||
|
||||
@ -32,7 +32,7 @@ Deprecated. Use `tty.ReadStream#setRawMode()`
|
||||
|
||||
A `net.Socket` subclass that represents the readable portion of a tty. In normal
|
||||
circumstances, `process.stdin` will be the only `tty.ReadStream` instance in any
|
||||
io.js program (only when `isatty(0)` is true).
|
||||
node.js program (only when `isatty(0)` is true).
|
||||
|
||||
### rs.isRaw
|
||||
|
||||
|
@ -5,12 +5,12 @@
|
||||
These functions are in the module `'util'`. Use `require('util')` to
|
||||
access them.
|
||||
|
||||
The `util` module is primarily designed to support the needs of io.js's
|
||||
The `util` module is primarily designed to support the needs of node.js's
|
||||
internal APIs. Many of these utilities are useful for your own
|
||||
programs. If you find that these functions are lacking for your
|
||||
purposes, however, you are encouraged to write your own utilities. We
|
||||
are not interested in any future additions to the `util` module that
|
||||
are unnecessary for io.js's internal functionality.
|
||||
are unnecessary for node.js's internal functionality.
|
||||
|
||||
## util.debuglog(section)
|
||||
|
||||
@ -131,7 +131,7 @@ Highlighted styles and their default values are:
|
||||
* `special` - only function at this time (cyan)
|
||||
* `name` (intentionally no styling)
|
||||
|
||||
Predefined color codes are: `white`, `grey`, `black`, `blue`, `cyan`,
|
||||
Predefined color codes are: `white`, `grey`, `black`, `blue`, `cyan`,
|
||||
`green`, `magenta`, `red` and `yellow`.
|
||||
There are also `bold`, `italic`, `underline` and `inverse` codes.
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
Stability: 2 - Stable
|
||||
|
||||
This module exposes events and interfaces specific to the version of [V8][]
|
||||
built with io.js. These interfaces are subject to change by upstream and are
|
||||
built with node.js. These interfaces are subject to change by upstream and are
|
||||
therefore not covered under the stability index.
|
||||
|
||||
## getHeapStatistics()
|
||||
@ -27,8 +27,8 @@ Set additional V8 command line flags. Use with care; changing settings
|
||||
after the VM has started may result in unpredictable behavior, including
|
||||
crashes and data loss. Or it may simply do nothing.
|
||||
|
||||
The V8 options available for a version of io.js may be determined by running
|
||||
`iojs --v8-options`. An unofficial, community-maintained list of options
|
||||
The V8 options available for a version of node.js may be determined by running
|
||||
`node --v8-options`. An unofficial, community-maintained list of options
|
||||
and their effects is available
|
||||
[here](https://github.com/thlorenz/v8-flags/blob/master/flags-0.11.md).
|
||||
|
||||
|
@ -260,7 +260,7 @@ See the description of `deflateInit2` and `inflateInit2` at
|
||||
|
||||
<!--type=misc-->
|
||||
|
||||
From `zlib/zconf.h`, modified to io.js's usage:
|
||||
From `zlib/zconf.h`, modified to node.js's usage:
|
||||
|
||||
The memory requirements for deflate are (in bytes):
|
||||
|
||||
@ -291,7 +291,7 @@ The speed of zlib compression is affected most dramatically by the
|
||||
will take longer to complete. A lower level will result in less
|
||||
compression, but will be much faster.
|
||||
|
||||
In general, greater memory usage options will mean that io.js has to make
|
||||
In general, greater memory usage options will mean that node.js has to make
|
||||
fewer calls to zlib, since it'll be able to process more data in a
|
||||
single `write` operation. So, this is another factor that affects the
|
||||
speed, at the cost of memory usage.
|
||||
|
@ -1,13 +1,13 @@
|
||||
.TH IO.JS "1" "2010" "" ""
|
||||
.TH NODE.JS "1" "2010" "" ""
|
||||
|
||||
|
||||
.SH "NAME"
|
||||
iojs \- Server-side JavaScript
|
||||
node \- Server-side JavaScript
|
||||
|
||||
.SH SYNOPSIS
|
||||
|
||||
|
||||
.B iojs
|
||||
.B node
|
||||
[
|
||||
.B \-v
|
||||
]
|
||||
@ -35,7 +35,7 @@ Execute without arguments to start the REPL.
|
||||
|
||||
.SH DESCRIPTION
|
||||
|
||||
io.js is a set of libraries for javascript which allows
|
||||
Node.js is a set of libraries for javascript which allows
|
||||
it to be used outside of the browser. It is primarily
|
||||
focused on creating simple, easy to build network clients
|
||||
and servers.
|
||||
@ -43,7 +43,7 @@ and servers.
|
||||
|
||||
.SH OPTIONS
|
||||
|
||||
-v, --version print iojs's version
|
||||
-v, --version print node's version
|
||||
|
||||
-e, --eval script evaluate script
|
||||
|
||||
@ -761,7 +761,7 @@ If set to 1 then colors will not be used in the REPL.
|
||||
|
||||
.SH RESOURCES AND DOCUMENTATION
|
||||
|
||||
See the website for documentation http://iojs.org/
|
||||
See the website for documentation http://nodejs.org/
|
||||
|
||||
Mailing list: http://groups.google.com/group/nodejs
|
||||
|
@ -1,11 +1,11 @@
|
||||
io.js Release Process
|
||||
Node.js Release Process
|
||||
=====================
|
||||
|
||||
This document describes the technical aspects of the io.js release process. The intended audience is those who have been authorized by the Node.js Foundation Technical Steering Committee (TSC) to create, promote and sign official release builds for io.js, hosted on <https://iojs.org>.
|
||||
This document describes the technical aspects of the node.js release process. The intended audience is those who have been authorized by the Node.js Foundation Technical Steering Committee (TSC) to create, promote and sign official release builds for node.js, hosted on <https://nodejs.org>.
|
||||
|
||||
## Who can make a release?
|
||||
|
||||
Release authorization is given by the io.js TC. Once authorized, an individual must be have the following:
|
||||
Release authorization is given by the node.js TSC. Once authorized, an individual must be have the following:
|
||||
|
||||
### 1. Jenkins Release Access
|
||||
|
||||
@ -13,21 +13,21 @@ There are three relevant Jenkins jobs that should be used for a release flow:
|
||||
|
||||
**a.** **Test runs:** **[iojs+any-pr+multi](https://jenkins-iojs.nodesource.com/job/iojs+any-pr+multi/)** is used for a final full-test run to ensure that the current *HEAD* is stable.
|
||||
|
||||
**b.** **Nightly builds:** (optional) **[iojs+release](https://jenkins-iojs.nodesource.com/job/iojs+release/)** can be used to create a nightly release for the current *HEAD* if public test releases are required. Builds triggered with this job are published straight to <http://iojs.org/download/nightly/> and are available for public download.
|
||||
**b.** **Nightly builds:** (optional) **[iojs+release](https://jenkins-iojs.nodesource.com/job/iojs+release/)** can be used to create a nightly release for the current *HEAD* if public test releases are required. Builds triggered with this job are published straight to <http://nodejs.org/download/nightly/> and are available for public download.
|
||||
|
||||
**c.** **Release builds:** **[iojs+release](https://jenkins-iojs.nodesource.com/job/iojs+release/)** does all of the work to build all required release assets. Promotion of the release files is a manual step once they are ready (see below).
|
||||
|
||||
The [io.js build team](https://github.com/nodejs/build) is able to provide this access to individuals authorized by the TC.
|
||||
|
||||
### 2. <iojs.org> Access
|
||||
The [Node.js build team](https://github.com/nodejs/build) is able to provide this access to individuals authorized by the TC.
|
||||
|
||||
The _dist_ user on iojs.org controls the assets available in <http://iojs.org/download/> (note that <http://iojs.org/dist/> is an alias for <https://iojs.org/download/release/>).
|
||||
### 2. <nodejs.org> Access
|
||||
|
||||
The _dist_ user on nodejs.org controls the assets available in <http://nodejs.org/download/> (note that <http://nodejs.org/dist/> is an alias for <https://nodejs.org/download/release/>).
|
||||
|
||||
The Jenkins release build slaves upload their artifacts to the web server as the _staging_ user, the _dist_ user has access to move these assets to public access (the _staging_ user does not, for security purposes).
|
||||
|
||||
Nightly builds are promoted automatically on the server by a cron task for the _dist_ user.
|
||||
|
||||
Release builds require manual promotion by an individual with SSH access to the server as the _dist_ user. The [io.js build team](https://github.com/nodejs/build) is able to provide this access to individuals authorized by the TC.
|
||||
Release builds require manual promotion by an individual with SSH access to the server as the _dist_ user. The [Node.js build team](https://github.com/nodejs/build) is able to provide this access to individuals authorized by the TC.
|
||||
|
||||
### 3. A Publicly Listed GPG Key
|
||||
|
||||
@ -41,7 +41,7 @@ gpg --keyserver pool.sks-keyservers.net --recv-keys <FINGERPRINT>
|
||||
|
||||
The key you use may be a child/subkey of an existing key.
|
||||
|
||||
Additionally, full GPG key fingerprints for individuals authorized to release should be listed in the io.js GitHub README.md file.
|
||||
Additionally, full GPG key fingerprints for individuals authorized to release should be listed in the Node.js GitHub README.md file.
|
||||
|
||||
## How to create a release
|
||||
|
||||
@ -56,7 +56,7 @@ Run a **[iojs+any-pr+multi](https://jenkins-iojs.nodesource.com/job/iojs+any-pr+
|
||||
|
||||
### 2. Produce a Nightly Build _(optional)_
|
||||
|
||||
If there is a reason to produce a test release for the purpose of having others try out installers or specifics of builds, produce a nightly build using **[iojs+release](https://jenkins-iojs.nodesource.com/job/iojs+release/)** and wait for it to drop in <http://iojs.org/download/nightly/>. Follow the directions and enter a proper length commit sha, a date string and select "nightly" for "disttype".
|
||||
If there is a reason to produce a test release for the purpose of having others try out installers or specifics of builds, produce a nightly build using **[iojs+release](https://jenkins-iojs.nodesource.com/job/iojs+release/)** and wait for it to drop in <http://nodejs.org/download/nightly/>. Follow the directions and enter a proper length commit sha, a date string and select "nightly" for "disttype".
|
||||
|
||||
This is particularly recommended if there has been recent work relating to the OS X or Windows installers as they are not tested in any way by CI.
|
||||
|
||||
@ -88,7 +88,7 @@ The _CHANGELOG.md_ entry should take the following form:
|
||||
|
||||
### Known issues
|
||||
|
||||
See https://github.com/nodejs/io.js/labels/confirmed-bug for complete and current list of known issues.
|
||||
See https://github.com/nodejs/node/labels/confirmed-bug for complete and current list of known issues.
|
||||
|
||||
* Include this section if there are any known problems with this release
|
||||
* Scan GitHub for unresolved problems that users may need to be aware of
|
||||
@ -132,7 +132,7 @@ The _CHANGELOG.md_ and _src/node_version.h_ changes should be the final commit t
|
||||
When committing these to git, use the following message format:
|
||||
|
||||
```
|
||||
YYYY-MM-DD io.js vx.y.z Release
|
||||
YYYY-MM-DD node.js vx.y.z Release
|
||||
|
||||
Notable changes:
|
||||
|
||||
@ -141,7 +141,7 @@ Notable changes:
|
||||
|
||||
### 6. Push to GitHub
|
||||
|
||||
Note that it is not essential that the release builds be created from the io.js repository, they may be created from your own fork if you desire. It is preferable, but not essential that the commits remain the same between that used to build and the tagged commit in the io.js repository.
|
||||
Note that it is not essential that the release builds be created from the Node.js repository, they may be created from your own fork if you desire. It is preferable, but not essential that the commits remain the same between that used to build and the tagged commit in the Node.js repository.
|
||||
|
||||
### 7. Produce Release Builds
|
||||
|
||||
@ -160,7 +160,7 @@ Note that you do not have to wait for the ARM builds if they are take longer tha
|
||||
Tag the release as <b><code>vx.y.z</code></b> and sign **using the same GPG key that will be used to sign SHASUMS256.txt**.
|
||||
|
||||
```
|
||||
$ git tag <vx.y.z> <commit-sha> -sm 'YYYY-MM-DD io.js vz.y.x Release'
|
||||
$ git tag <vx.y.z> <commit-sha> -sm 'YYYY-MM-DD node.js vz.y.x Release'
|
||||
```
|
||||
|
||||
Push the tag to GitHub.
|
||||
@ -210,13 +210,13 @@ If you didn't wait for ARM builds in the previous step before promoting the rele
|
||||
|
||||
### 11. Check the Release
|
||||
|
||||
Your release should be available at <https://iojs.org/dist/vx.y.z/> and also <https://iojs.org/dist/latest/>. Check that the appropriate files are in place, you may also want to check that the binaries are working as appropriate and have the right internal version strings. Check that the API docs are available at <https://iojs.org/api/>. Check that the release catalog files are correct at <https://iojs.org/dist/index.tab> and <https://iojs.org/dist/index.json>.
|
||||
Your release should be available at <https://nodejs.org/dist/vx.y.z/> and also <https://nodejs.org/dist/latest/>. Check that the appropriate files are in place, you may also want to check that the binaries are working as appropriate and have the right internal version strings. Check that the API docs are available at <https://nodejs.org/api/>. Check that the release catalog files are correct at <https://nodejs.org/dist/index.tab> and <https://nodejs.org/dist/index.json>.
|
||||
|
||||
### 12. Announce
|
||||
|
||||
The iojs.org website will automatically rebuild and include the new version. You simply need to announce the build, preferably via twitter with a message such as:
|
||||
The nodejs.org website will automatically rebuild and include the new version. You simply need to announce the build, preferably via twitter with a message such as:
|
||||
|
||||
> v2.3.2 of @official_iojs is out @ https://iojs.org/dist/latest/ changelog @ https://github.com/nodejs/io.js/blob/master/CHANGELOG.md#2015-07-01-version-232-rvagg … something here about notable changes
|
||||
> v2.3.2 of @official_iojs is out @ https://nodejs.org/dist/latest/ changelog @ https://github.com/nodejs/node/blob/master/CHANGELOG.md#2015-07-01-version-232-rvagg … something here about notable changes
|
||||
|
||||
### 13. Celebrate
|
||||
|
||||
|
@ -2,18 +2,18 @@
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>__SECTION__ io.js __VERSION__ Manual & Documentation</title>
|
||||
<title>__SECTION__ Node.js __VERSION__ Manual & Documentation</title>
|
||||
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Lato:400,700,400italic">
|
||||
<link rel="stylesheet" href="assets/style.css">
|
||||
<link rel="stylesheet" href="assets/sh.css">
|
||||
<link rel="canonical" href="https://iojs.org/api/__FILENAME__.html">
|
||||
<link rel="canonical" href="https://nodejs.org/api/__FILENAME__.html">
|
||||
</head>
|
||||
<body class="alt apidoc" id="api-section-__FILENAME__">
|
||||
<div id="content" class="clearfix">
|
||||
<div id="column2" class="interior">
|
||||
<div id="intro" class="interior">
|
||||
<a href="/" title="Go back to the home page">
|
||||
io.js (1)
|
||||
Node.js (1)
|
||||
</a>
|
||||
</div>
|
||||
__GTOC__
|
||||
@ -21,7 +21,7 @@
|
||||
|
||||
<div id="column1" data-id="__ID__" class="interior">
|
||||
<header>
|
||||
<h1>io.js __VERSION__ Documentation</h1>
|
||||
<h1>Node.js __VERSION__ Documentation</h1>
|
||||
<div id="gtoc">
|
||||
<p>
|
||||
<a href="index.html" name="toc">Index</a> |
|
||||
|
@ -15,9 +15,9 @@ exports.start = function(argv, stdin, stdout) {
|
||||
argv || (argv = process.argv.slice(2));
|
||||
|
||||
if (argv.length < 1) {
|
||||
console.error('Usage: iojs debug script.js');
|
||||
console.error(' iojs debug <host>:<port>');
|
||||
console.error(' iojs debug -p <pid>');
|
||||
console.error('Usage: node debug script.js');
|
||||
console.error(' node debug <host>:<port>');
|
||||
console.error(' node debug -p <pid>');
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
|
@ -747,7 +747,7 @@ REPLServer.prototype.complete = function(line, callback) {
|
||||
// Probably a Proxy object without `getOwnPropertyNames` trap.
|
||||
// We simply ignore it here, as we don't want to break the
|
||||
// autocompletion. Fixes the bug
|
||||
// https://github.com/nodejs/io.js/issues/2119
|
||||
// https://github.com/nodejs/node/issues/2119
|
||||
}
|
||||
}
|
||||
// works for non-objects
|
||||
|
8
node.gyp
8
node.gyp
@ -78,7 +78,7 @@
|
||||
|
||||
'targets': [
|
||||
{
|
||||
'target_name': 'iojs',
|
||||
'target_name': 'node',
|
||||
'type': '<(node_target_type)',
|
||||
|
||||
'dependencies': [
|
||||
@ -531,10 +531,10 @@
|
||||
{
|
||||
'action_name': 'node_dtrace_provider_o',
|
||||
'inputs': [
|
||||
'<(OBJ_DIR)/iojs/src/node_dtrace.o',
|
||||
'<(OBJ_DIR)/node/src/node_dtrace.o',
|
||||
],
|
||||
'outputs': [
|
||||
'<(OBJ_DIR)/iojs/src/node_dtrace_provider.o'
|
||||
'<(OBJ_DIR)/node/src/node_dtrace_provider.o'
|
||||
],
|
||||
'action': [ 'dtrace', '-G', '-xnolibs', '-s', 'src/node_provider.d',
|
||||
'<@(_inputs)', '-o', '<@(_outputs)' ]
|
||||
@ -584,7 +584,7 @@
|
||||
'<(SHARED_INTERMEDIATE_DIR)/v8constants.h'
|
||||
],
|
||||
'outputs': [
|
||||
'<(OBJ_DIR)/iojs/src/node_dtrace_ustack.o'
|
||||
'<(OBJ_DIR)/node/src/node_dtrace_ustack.o'
|
||||
],
|
||||
'conditions': [
|
||||
[ 'target_arch=="ia32"', {
|
||||
|
20
src/node.cc
20
src/node.cc
@ -2768,19 +2768,19 @@ void SetupProcessObject(Environment* env,
|
||||
// process.release
|
||||
Local<Object> release = Object::New(env->isolate());
|
||||
READONLY_PROPERTY(process, "release", release);
|
||||
READONLY_PROPERTY(release, "name", OneByteString(env->isolate(), "io.js"));
|
||||
READONLY_PROPERTY(release, "name", OneByteString(env->isolate(), "node.js"));
|
||||
|
||||
// if this is a release build and no explicit base has been set
|
||||
// substitute the standard release download URL
|
||||
#ifndef NODE_RELEASE_URLBASE
|
||||
# if NODE_VERSION_IS_RELEASE
|
||||
# define NODE_RELEASE_URLBASE "https://iojs.org/download/release/"
|
||||
# define NODE_RELEASE_URLBASE "https://nodejs.org/download/release/"
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#if defined(NODE_RELEASE_URLBASE)
|
||||
# define _RELEASE_URLPFX NODE_RELEASE_URLBASE "v" NODE_VERSION_STRING "/"
|
||||
# define _RELEASE_URLFPFX _RELEASE_URLPFX "iojs-v" NODE_VERSION_STRING
|
||||
# define _RELEASE_URLFPFX _RELEASE_URLPFX "node-v" NODE_VERSION_STRING
|
||||
|
||||
READONLY_PROPERTY(release,
|
||||
"sourceUrl",
|
||||
@ -2794,7 +2794,7 @@ void SetupProcessObject(Environment* env,
|
||||
READONLY_PROPERTY(release,
|
||||
"libUrl",
|
||||
OneByteString(env->isolate(),
|
||||
_RELEASE_URLPFX "win-" NODE_ARCH "/iojs.lib"));
|
||||
_RELEASE_URLPFX "win-" NODE_ARCH "/node.lib"));
|
||||
# endif
|
||||
#endif
|
||||
|
||||
@ -3092,11 +3092,11 @@ static bool ParseDebugOpt(const char* arg) {
|
||||
}
|
||||
|
||||
static void PrintHelp() {
|
||||
printf("Usage: iojs [options] [ -e script | script.js ] [arguments] \n"
|
||||
" iojs debug script.js [arguments] \n"
|
||||
printf("Usage: node [options] [ -e script | script.js ] [arguments] \n"
|
||||
" node debug script.js [arguments] \n"
|
||||
"\n"
|
||||
"Options:\n"
|
||||
" -v, --version print io.js version\n"
|
||||
" -v, --version print Node.js version\n"
|
||||
" -e, --eval script evaluate script\n"
|
||||
" -p, --print evaluate script and print result\n"
|
||||
" -i, --interactive always enter the REPL even if stdin\n"
|
||||
@ -3138,7 +3138,7 @@ static void PrintHelp() {
|
||||
#endif
|
||||
#endif
|
||||
"\n"
|
||||
"Documentation can be found at https://iojs.org/\n");
|
||||
"Documentation can be found at https://nodejs.org/\n");
|
||||
}
|
||||
|
||||
|
||||
@ -3664,12 +3664,12 @@ void Init(int* argc,
|
||||
defined(__ARM_ARCH_6T2__) || \
|
||||
defined(__ARM_ARCH_6ZK__) || \
|
||||
defined(__ARM_ARCH_6Z__)
|
||||
// See https://github.com/nodejs/io.js/issues/1376
|
||||
// See https://github.com/nodejs/node/issues/1376
|
||||
// and https://code.google.com/p/v8/issues/detail?id=4019
|
||||
// TODO(bnoordhuis): Remove test/parallel/test-arm-math-exp-regress-1376.js
|
||||
// and this workaround when v8:4019 has been fixed and the patch back-ported.
|
||||
V8::SetFlagsFromString("--nofast_math", sizeof("--nofast_math") - 1);
|
||||
// See https://github.com/nodejs/io.js/pull/2220#issuecomment-126200059
|
||||
// See https://github.com/nodejs/node/pull/2220#issuecomment-126200059
|
||||
// and https://code.google.com/p/v8/issues/detail?id=4338
|
||||
// TODO(targos): Remove this workaround when v8:4338 has been fixed and the
|
||||
// patch back-ported.
|
||||
|
20
src/node.h
20
src/node.h
@ -42,26 +42,26 @@
|
||||
#include "v8.h" // NOLINT(build/include_order)
|
||||
#include "node_version.h" // NODE_MODULE_VERSION
|
||||
|
||||
#define IOJS_MAKE_VERSION(major, minor, patch) \
|
||||
#define NODE_MAKE_VERSION(major, minor, patch) \
|
||||
((major) * 0x1000 + (minor) * 0x100 + (patch))
|
||||
|
||||
#ifdef __clang__
|
||||
# define IOJS_CLANG_AT_LEAST(major, minor, patch) \
|
||||
(IOJS_MAKE_VERSION(major, minor, patch) <= \
|
||||
IOJS_MAKE_VERSION(__clang_major__, __clang_minor__, __clang_patchlevel__))
|
||||
# define NODE_CLANG_AT_LEAST(major, minor, patch) \
|
||||
(NODE_MAKE_VERSION(major, minor, patch) <= \
|
||||
NODE_MAKE_VERSION(__clang_major__, __clang_minor__, __clang_patchlevel__))
|
||||
#else
|
||||
# define IOJS_CLANG_AT_LEAST(major, minor, patch) (0)
|
||||
# define NODE_CLANG_AT_LEAST(major, minor, patch) (0)
|
||||
#endif
|
||||
|
||||
#ifdef __GNUC__
|
||||
# define IOJS_GNUC_AT_LEAST(major, minor, patch) \
|
||||
(IOJS_MAKE_VERSION(major, minor, patch) <= \
|
||||
IOJS_MAKE_VERSION(__GNUC__, __GNUC_MINOR__, __GNUC_PATCHLEVEL__))
|
||||
# define NODE_GNUC_AT_LEAST(major, minor, patch) \
|
||||
(NODE_MAKE_VERSION(major, minor, patch) <= \
|
||||
NODE_MAKE_VERSION(__GNUC__, __GNUC_MINOR__, __GNUC_PATCHLEVEL__))
|
||||
#else
|
||||
# define IOJS_GNUC_AT_LEAST(major, minor, patch) (0)
|
||||
# define NODE_GNUC_AT_LEAST(major, minor, patch) (0)
|
||||
#endif
|
||||
|
||||
#if IOJS_CLANG_AT_LEAST(2, 9, 0) || IOJS_GNUC_AT_LEAST(4, 5, 0)
|
||||
#if NODE_CLANG_AT_LEAST(2, 9, 0) || NODE_GNUC_AT_LEAST(4, 5, 0)
|
||||
# define NODE_DEPRECATED(message, declarator) \
|
||||
__attribute__((deprecated(message))) declarator
|
||||
#elif defined(_MSC_VER)
|
||||
|
@ -561,7 +561,7 @@
|
||||
JSON.stringify(name) + ' });\n';
|
||||
// Defer evaluation for a tick. This is a workaround for deferred
|
||||
// events not firing when evaluating scripts from the command line,
|
||||
// see https://github.com/nodejs/io.js/issues/1600.
|
||||
// see https://github.com/nodejs/node/issues/1600.
|
||||
process.nextTick(function() {
|
||||
var result = module._compile(script, name + '-wrapper');
|
||||
if (process._print_eval) console.log(result);
|
||||
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB |
@ -3,7 +3,7 @@
|
||||
|
||||
|
||||
// Application icon
|
||||
1 ICON iojs.ico
|
||||
1 ICON node.ico
|
||||
|
||||
|
||||
// Version resource
|
||||
@ -29,14 +29,14 @@ BEGIN
|
||||
BEGIN
|
||||
BLOCK "040904b0"
|
||||
BEGIN
|
||||
VALUE "CompanyName", "io.js"
|
||||
VALUE "ProductName", "io.js"
|
||||
VALUE "FileDescription", "io.js: Server-side JavaScript"
|
||||
VALUE "CompanyName", "Node.js"
|
||||
VALUE "ProductName", "Node.js"
|
||||
VALUE "FileDescription", "Node.js: Server-side JavaScript"
|
||||
VALUE "FileVersion", "NODE_VERSION_STRING"
|
||||
VALUE "ProductVersion", "NODE_VERSION_STRING"
|
||||
VALUE "OriginalFilename", "iojs.exe"
|
||||
VALUE "InternalName", "iojs"
|
||||
VALUE "LegalCopyright", "Copyright io.js contributors. MIT license."
|
||||
VALUE "OriginalFilename", "node.exe"
|
||||
VALUE "InternalName", "node"
|
||||
VALUE "LegalCopyright", "Copyright Node.js contributors. MIT license."
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
|
@ -7,8 +7,8 @@
|
||||
<provider name="NodeJS-ETW-provider"
|
||||
guid="{77754E9B-264B-4D8D-B981-E4135C1ECB0C}"
|
||||
symbol="NODE_ETW_PROVIDER"
|
||||
resourceFileName="iojs.exe"
|
||||
messageFileName="iojs.exe">
|
||||
resourceFileName="node.exe"
|
||||
messageFileName="node.exe">
|
||||
|
||||
<tasks>
|
||||
<task name="MethodRuntime" value="1"
|
||||
|
@ -6,7 +6,7 @@
|
||||
<counters xmlns="http://schemas.microsoft.com/win/2005/12/counters"
|
||||
schemaVersion="1.1">
|
||||
<provider symbol="NodeCounterProvider"
|
||||
applicationIdentity="iojs.exe"
|
||||
applicationIdentity="node.exe"
|
||||
providerType="userMode"
|
||||
providerGuid="{793C9B44-3D6B-4F57-B5D7-4FF80ADCF9A2}">
|
||||
<counterSet symbol="NodeCounterSet"
|
||||
|
@ -432,7 +432,7 @@ void TLSWrap::ClearOut() {
|
||||
|
||||
// We need to check whether an error occurred or the connection was
|
||||
// shutdown cleanly (SSL_ERROR_ZERO_RETURN) even when read == 0.
|
||||
// See iojs#1642 and SSL_read(3SSL) for details.
|
||||
// See node#1642 and SSL_read(3SSL) for details.
|
||||
if (read <= 0) {
|
||||
int err;
|
||||
Local<Value> arg = GetSSLError(read, &err, nullptr);
|
||||
|
@ -115,7 +115,7 @@ Object.defineProperty(exports, 'opensslCli', {get: function() {
|
||||
// use external command
|
||||
opensslCli = 'openssl';
|
||||
} else {
|
||||
// use command built from sources included in io.js repository
|
||||
// use command built from sources included in Node.js repository
|
||||
opensslCli = path.join(path.dirname(process.execPath), 'openssl-cli');
|
||||
}
|
||||
|
||||
|
2
test/fixtures/cluster-preload.js
vendored
2
test/fixtures/cluster-preload.js
vendored
@ -1,6 +1,6 @@
|
||||
var assert = require('assert');
|
||||
|
||||
// https://github.com/nodejs/io.js/issues/1803
|
||||
// https://github.com/nodejs/node/issues/1803
|
||||
// this module is used as a preload module. It should have a parent with the
|
||||
// module search paths initialized from the current working directory
|
||||
assert.ok(module.parent);
|
||||
|
@ -1,5 +1,5 @@
|
||||
'use strict';
|
||||
// See https://github.com/nodejs/io.js/issues/1376
|
||||
// See https://github.com/nodejs/node/issues/1376
|
||||
// and https://code.google.com/p/v8/issues/detail?id=4019
|
||||
|
||||
Math.abs(-0.5);
|
||||
|
@ -1169,7 +1169,7 @@ assert.throws(function() {
|
||||
b.equals('abc');
|
||||
});
|
||||
|
||||
// Regression test for https://github.com/nodejs/io.js/issues/649.
|
||||
// Regression test for https://github.com/nodejs/node/issues/649.
|
||||
assert.throws(function() { Buffer(1422561062959).toString('utf8'); });
|
||||
|
||||
var ps = Buffer.poolSize;
|
||||
|
@ -13,7 +13,7 @@ assert.strictEqual(emitter.getMaxListeners(), 0);
|
||||
emitter.setMaxListeners(3);
|
||||
assert.strictEqual(emitter.getMaxListeners(), 3);
|
||||
|
||||
// https://github.com/nodejs/io.js/issues/523 - second call should not throw.
|
||||
// https://github.com/nodejs/node/issues/523 - second call should not throw.
|
||||
var recv = {};
|
||||
EventEmitter.prototype.on.call(recv, 'event', function() {});
|
||||
EventEmitter.prototype.on.call(recv, 'event', function() {});
|
||||
|
@ -1,24 +1,4 @@
|
||||
'use strict';
|
||||
// Copyright io.js contributors.
|
||||
//
|
||||
// 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.
|
||||
|
||||
var common = require('../common');
|
||||
var assert = require('assert');
|
||||
|
@ -3,7 +3,7 @@
|
||||
// These testcases are specific to one uncommon behaviour in path module. Few
|
||||
// of the functions in path module, treat '' strings as current working
|
||||
// directory. This test makes sure that the behaviour is intact between commits.
|
||||
// See: https://github.com/nodejs/io.js/pull/2106
|
||||
// See: https://github.com/nodejs/node/pull/2106
|
||||
|
||||
const common = require('../common');
|
||||
const assert = require('assert');
|
||||
|
@ -81,7 +81,7 @@ child_process.exec(nodeBinary + ' '
|
||||
assert.ok(/worker terminated with code 43/.test(stdout));
|
||||
});
|
||||
|
||||
// https://github.com/nodejs/io.js/issues/1691
|
||||
// https://github.com/nodejs/node/issues/1691
|
||||
var originalCwd = process.cwd();
|
||||
process.chdir(path.join(__dirname, '../fixtures/'));
|
||||
child_process.exec(nodeBinary + ' '
|
||||
|
@ -237,7 +237,7 @@ testMe.complete('cus', common.mustCall(function(error, data) {
|
||||
}));
|
||||
|
||||
// Make sure tab completion doesn't crash REPL with half-baked proxy objects.
|
||||
// See: https://github.com/nodejs/io.js/issues/2119
|
||||
// See: https://github.com/nodejs/node/issues/2119
|
||||
putIn.run(['.clear']);
|
||||
|
||||
putIn.run([
|
||||
|
@ -232,7 +232,7 @@ function error_test() {
|
||||
{ client: client_unix, send: '\'the\\\n\\\nfourtheye\'\n',
|
||||
expect: prompt_multiline + prompt_multiline +
|
||||
'\'thefourtheye\'\n' + prompt_unix },
|
||||
// Regression test for https://github.com/nodejs/io.js/issues/597
|
||||
// Regression test for https://github.com/nodejs/node/issues/597
|
||||
{ client: client_unix,
|
||||
send: '/(.)(.)(.)(.)(.)(.)(.)(.)(.)/.test(\'123456789\')\n',
|
||||
expect: `true\n${prompt_unix}` },
|
||||
|
@ -107,7 +107,7 @@ var PRE_3OF4_APEX = Math.ceil((EXTERN_APEX / 4) * 3) - RADIOS;
|
||||
}
|
||||
})();
|
||||
|
||||
// https://github.com/nodejs/io.js/issues/1024
|
||||
// https://github.com/nodejs/node/issues/1024
|
||||
(function() {
|
||||
var a = Array(1 << 20).join('x');
|
||||
var b = Buffer(a, 'ucs2').toString('ucs2');
|
||||
|
@ -37,7 +37,7 @@ var testCases = [
|
||||
},
|
||||
errorCode: 'CERT_REVOKED'
|
||||
},
|
||||
// Test 1: for the fix of iojs#2061
|
||||
// Test 1: for the fix of node#2061
|
||||
// agent6-cert.pem is signed by intermidate cert of ca3.
|
||||
// The server has a cert chain of agent6->ca3->ca1(root) but
|
||||
// tls.connect should be failed with an error of
|
||||
|
@ -14,7 +14,7 @@ var path = require('path');
|
||||
var cert = fs.readFileSync(path.join(common.fixturesDir, 'test_cert.pem'));
|
||||
var key = fs.readFileSync(path.join(common.fixturesDir, 'test_key.pem'));
|
||||
|
||||
// https://github.com/nodejs/io.js/issues/1489
|
||||
// https://github.com/nodejs/node/issues/1489
|
||||
// tls.connect(options) with no options.host should accept a cert with
|
||||
// CN:'localhost'
|
||||
tls.createServer({
|
||||
|
@ -1562,7 +1562,7 @@ relativeTests2.forEach(function(relativeTest) {
|
||||
});
|
||||
|
||||
|
||||
// https://github.com/nodejs/io.js/pull/1036
|
||||
// https://github.com/nodejs/node/pull/1036
|
||||
var throws = [
|
||||
undefined,
|
||||
null,
|
||||
|
@ -29,7 +29,7 @@ assert.strictEqual(vm.runInDebugContext(0), 0);
|
||||
assert.strictEqual(vm.runInDebugContext(null), null);
|
||||
assert.strictEqual(vm.runInDebugContext(undefined), undefined);
|
||||
|
||||
// See https://github.com/nodejs/io.js/issues/1190, accessing named interceptors
|
||||
// See https://github.com/nodejs/node/issues/1190, accessing named interceptors
|
||||
// and accessors inside a debug event listener should not crash.
|
||||
(function() {
|
||||
var Debug = vm.runInDebugContext('Debug');
|
||||
@ -53,7 +53,7 @@ assert.strictEqual(vm.runInDebugContext(undefined), undefined);
|
||||
assert.equal(breaks, 1);
|
||||
})();
|
||||
|
||||
// See https://github.com/nodejs/io.js/issues/1190, fatal errors should not
|
||||
// See https://github.com/nodejs/node/issues/1190, fatal errors should not
|
||||
// crash the process.
|
||||
var script = common.fixturesDir + '/vm-run-in-debug-context.js';
|
||||
var proc = spawn(process.execPath, [script]);
|
||||
|
@ -108,12 +108,12 @@ def npm_files(action):
|
||||
if os.environ.get('PORTABLE'):
|
||||
# This crazy hack is necessary to make the shebang execute the copy
|
||||
# of node relative to the same directory as the npm script. The precompiled
|
||||
# binary tarballs use a prefix of "/" which gets translated to "/bin/iojs"
|
||||
# binary tarballs use a prefix of "/" which gets translated to "/bin/node"
|
||||
# in the regular shebang modifying logic, which is incorrect since the
|
||||
# precompiled bundle should be able to be extracted anywhere and "just work"
|
||||
shebang = '/bin/sh\n// 2>/dev/null; exec "`dirname "$0"`/iojs" "$0" "$@"'
|
||||
shebang = '/bin/sh\n// 2>/dev/null; exec "`dirname "$0"`/node" "$0" "$@"'
|
||||
else:
|
||||
shebang = os.path.join(node_prefix or '/', 'bin/iojs')
|
||||
shebang = os.path.join(node_prefix or '/', 'bin/node')
|
||||
update_shebang(link_path, shebang)
|
||||
else:
|
||||
assert(0) # unhandled action type
|
||||
@ -130,7 +130,7 @@ def files(action):
|
||||
is_windows = sys.platform == 'win32'
|
||||
|
||||
exeext = '.exe' if is_windows else ''
|
||||
action(['out/Release/iojs' + exeext], 'bin/iojs' + exeext)
|
||||
action(['out/Release/node' + exeext], 'bin/node' + exeext)
|
||||
|
||||
if not is_windows:
|
||||
# Install iojs -> node compatibility symlink.
|
||||
@ -152,9 +152,9 @@ def files(action):
|
||||
action(['deps/v8/tools/gdbinit'], 'share/doc/node/')
|
||||
|
||||
if 'freebsd' in sys.platform or 'openbsd' in sys.platform:
|
||||
action(['doc/iojs.1'], 'man/man1/')
|
||||
action(['doc/node.1'], 'man/man1/')
|
||||
else:
|
||||
action(['doc/iojs.1'], 'share/man/man1/')
|
||||
action(['doc/node.1'], 'share/man/man1/')
|
||||
|
||||
if 'true' == variables.get('node_install_npm'): npm_files(action)
|
||||
|
||||
|
@ -3,14 +3,14 @@
|
||||
<!-- See https://msdn.microsoft.com/en-us/goglobal/bb964664.aspx -->
|
||||
<String Id="LocaleId">1031</String>
|
||||
|
||||
<String Id="WelcomeDlgDescription">Dieser Installationsassistent wird [ProductName] auf Ihrem Computer installieren.

WARNUNG: Wenn Sie von [ProductName] v1.0.0 oder v1.0.1 aus updaten wollen, müssen Sie diese Versionen zuerst manuell deinstallieren.</String>
|
||||
<String Id="WelcomeDlgDescription">Dieser Installationsassistent wird [ProductName] auf Ihrem Computer installieren.

WARNUNG: Wenn Sie von io.js v1.0.0 oder v1.0.1 aus updaten wollen, müssen Sie diese Versionen zuerst manuell deinstallieren.</String>
|
||||
<String Id="InstallDirDlgDescription">Wählen Sie einen anderen Installationsort oder klicken Sie auf Weiter zum installieren.</String>
|
||||
|
||||
<String Id="MajorUpgrade_DowngradeErrorMessage">Eine neuere Version von [ProductName] ist bereits installiert. Der Installationsassistent wird jetzt geschlossen.</String>
|
||||
|
||||
<!-- References like [ProductName] or $(var.ProductName) don't seem to work in Title attributes -->
|
||||
<String Id="NodeRuntime_Title">io.js-Laufzeitumgebung</String>
|
||||
<String Id="NodeRuntime_Description">Installation der [ProductName]-Laufzeitumgebung (iojs.exe).</String>
|
||||
<String Id="NodeRuntime_Title">Node.js-Laufzeitumgebung</String>
|
||||
<String Id="NodeRuntime_Description">Installation der [ProductName]-Laufzeitumgebung (node.exe).</String>
|
||||
|
||||
<String Id="NodeAlias_Title">Verweis von node auf iojs</String>
|
||||
<String Id="NodeAlias_Description">Erstelle node.exe als Verweis für iojs.exe.</String>
|
||||
@ -30,12 +30,12 @@
|
||||
<String Id="EnvironmentPath_Title">Hinzufügen zu PATH</String>
|
||||
<String Id="EnvironmentPath_Description">Fügt [ProductName], npm und globale durch npm installierte Module zur PATH-Umgebungsvariable hinzu.</String>
|
||||
|
||||
<String Id="EnvironmentPathNode_Title">io.js und npm</String>
|
||||
<String Id="EnvironmentPathNode_Title">Node.js und npm</String>
|
||||
<String Id="EnvironmentPathNode_Description">Fügt [ProductName] und npm (falls installiert) zur PATH-Umgebungsvariable hinzu.</String>
|
||||
|
||||
<String Id="EnvironmentPathNpmModules_Title">npm-Module</String>
|
||||
<String Id="EnvironmentPathNpmModules_Description">Fügt globale durch npm installierte Module zur PATH-Umgebungsvariable hinzu. Diese Option funktioniert nur für den aktuellen Benutzer, andere Benutzer müssen ihre PATH-Umgebungsvariable selbst manuell aktualisieren.</String>
|
||||
|
||||
<!-- References like [ProductName] are not resolved for Property tags -->
|
||||
<String Id="WIXUI_EXITDIALOGOPTIONALTEXT">io.js wurde erfolgreich installiert.</String>
|
||||
<String Id="WIXUI_EXITDIALOGOPTIONALTEXT">Node.js wurde erfolgreich installiert.</String>
|
||||
</WixLocalization>
|
||||
|
@ -3,14 +3,14 @@
|
||||
<!-- See https://msdn.microsoft.com/en-us/goglobal/bb964664.aspx -->
|
||||
<String Id="LocaleId">1033</String>
|
||||
|
||||
<String Id="WelcomeDlgDescription">The Setup Wizard will install [ProductName] on your computer.

WARNING: if you're upgrading from [ProductName] v1.0.0 or v1.0.1, you must first uninstall these versions manually.</String>
|
||||
<String Id="WelcomeDlgDescription">The Setup Wizard will install [ProductName] on your computer.

WARNING: if you're upgrading from io.js v1.0.0 or v1.0.1, you must first uninstall these versions manually.</String>
|
||||
<String Id="InstallDirDlgDescription">Choose a custom location or click Next to install.</String>
|
||||
|
||||
<String Id="MajorUpgrade_DowngradeErrorMessage">A later version of [ProductName] is already installed. Setup will now exit.</String>
|
||||
|
||||
<!-- References like [ProductName] or $(var.ProductName) don't seem to work in Title attributes -->
|
||||
<String Id="NodeRuntime_Title">io.js runtime</String>
|
||||
<String Id="NodeRuntime_Description">Install the core [ProductName] runtime (iojs.exe).</String>
|
||||
<String Id="NodeRuntime_Title">Node.js runtime</String>
|
||||
<String Id="NodeRuntime_Description">Install the core [ProductName] runtime (node.exe).</String>
|
||||
|
||||
<String Id="NodeAlias_Title">Alias node to iojs</String>
|
||||
<String Id="NodeAlias_Description">Create node.exe as an alias for iojs.exe.</String>
|
||||
@ -30,12 +30,12 @@
|
||||
<String Id="EnvironmentPath_Title">Add to PATH</String>
|
||||
<String Id="EnvironmentPath_Description">Add [ProductName], npm, and modules that were globally installed by npm to the PATH environment variable.</String>
|
||||
|
||||
<String Id="EnvironmentPathNode_Title">io.js and npm</String>
|
||||
<String Id="EnvironmentPathNode_Title">Node.js and npm</String>
|
||||
<String Id="EnvironmentPathNode_Description">Add [ProductName] and npm (if installed) to the PATH environment variable.</String>
|
||||
|
||||
<String Id="EnvironmentPathNpmModules_Title">npm modules</String>
|
||||
<String Id="EnvironmentPathNpmModules_Description">Add modules that are installed globally by npm to the PATH environment variable. This option works for the current user only; other users need to update their PATH manually.</String>
|
||||
|
||||
<!-- References like [ProductName] are not resolved for Property tags -->
|
||||
<String Id="WIXUI_EXITDIALOGOPTIONALTEXT">io.js has been successfully installed.</String>
|
||||
<String Id="WIXUI_EXITDIALOGOPTIONALTEXT">Node.js has been successfully installed.</String>
|
||||
</WixLocalization>
|
||||
|
@ -6,7 +6,7 @@
|
||||
<ProductVersion>3.5</ProductVersion>
|
||||
<ProjectGuid>{1d808ff0-b5a9-4be9-859d-b334b6f48be2}</ProjectGuid>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<OutputName>iojs-v$(FullVersion)-$(Platform)</OutputName>
|
||||
<OutputName>node-v$(FullVersion)-$(Platform)</OutputName>
|
||||
<OutputType>Package</OutputType>
|
||||
<EnableProjectHarvesting>True</EnableProjectHarvesting>
|
||||
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' AND '$(MSBuildExtensionsPath32)' != '' ">$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
|
||||
|
@ -2,11 +2,11 @@
|
||||
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
|
||||
xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
|
||||
|
||||
<?define ProductName = "io.js" ?>
|
||||
<?define ProductDescription = "io.js" ?>
|
||||
<?define ProductAuthor = "io.js contributors" ?>
|
||||
<?define ProductName = "Node.js" ?>
|
||||
<?define ProductDescription = "Node.js" ?>
|
||||
<?define ProductAuthor = "Node.js Foundation" ?>
|
||||
|
||||
<?define RegistryKeyPath = "SOFTWARE\io.js" ?>
|
||||
<?define RegistryKeyPath = "SOFTWARE\Node.js" ?>
|
||||
|
||||
<?define RepoDir="$(var.ProjectDir)..\..\..\" ?>
|
||||
<?define SourceDir="$(var.RepoDir)\$(var.Configuration)\" ?>
|
||||
@ -25,9 +25,9 @@
|
||||
<MajorUpgrade AllowSameVersionUpgrades="yes"
|
||||
DowngradeErrorMessage="!(loc.MajorUpgrade_DowngradeErrorMessage)"/>
|
||||
|
||||
<Icon Id="NodeIcon" SourceFile="$(var.RepoDir)\src\res\iojs.ico"/>
|
||||
<Icon Id="NodeIcon" SourceFile="$(var.RepoDir)\src\res\node.ico"/>
|
||||
<Property Id="ARPPRODUCTICON" Value="NodeIcon"/>
|
||||
<Property Id="ApplicationFolderName" Value="iojs"/>
|
||||
<Property Id="ApplicationFolderName" Value="node"/>
|
||||
<Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR"/>
|
||||
|
||||
<Property Id="INSTALLDIR">
|
||||
@ -110,18 +110,18 @@
|
||||
|
||||
<Directory Id="TARGETDIR" Name="SourceDir">
|
||||
<Directory Id="ProgramMenuFolder">
|
||||
<Directory Id="ApplicationProgramsFolder" Name="io.js"/>
|
||||
<Directory Id="ApplicationProgramsFolder" Name="Node.js"/>
|
||||
</Directory>
|
||||
|
||||
<Directory Id="$(var.ProgramFilesFolderId)">
|
||||
<Directory Id="INSTALLDIR" Name="iojs">
|
||||
<Directory Id="INSTALLDIR" Name="nodejs">
|
||||
</Directory>
|
||||
</Directory>
|
||||
</Directory>
|
||||
|
||||
<DirectoryRef Id="INSTALLDIR">
|
||||
<Component Id="NodeExecutable">
|
||||
<File Id="iojs.exe" KeyPath="yes" Source="$(var.SourceDir)\iojs.exe"/>
|
||||
<File Id="node.exe" KeyPath="yes" Source="$(var.SourceDir)\node.exe"/>
|
||||
</Component>
|
||||
|
||||
<Component Id="NodeAlias" Guid="fde09cce-a503-4409-a3c4-61ae2a5a5906">
|
||||
@ -145,7 +145,7 @@
|
||||
<?if $(var.NoETW) != 1 ?>
|
||||
<Component Id="NodeEtwSupport">
|
||||
<File Id="node_etw_provider.man" Source="$(var.RepoDir)\src\res\node_etw_provider.man">
|
||||
<util:EventManifest MessageFile="[INSTALLDIR]iojs.exe" ResourceFile="[INSTALLDIR]iojs.exe"/>
|
||||
<util:EventManifest MessageFile="[INSTALLDIR]node.exe" ResourceFile="[INSTALLDIR]node.exe"/>
|
||||
</File>
|
||||
</Component>
|
||||
<?endif?>
|
||||
@ -165,17 +165,17 @@
|
||||
Type="string"
|
||||
Value="$(var.ProductVersion)"/>
|
||||
<Shortcut Id="NodeVarsScriptShortcut"
|
||||
Name="io.js command prompt"
|
||||
Name="Node.js command prompt"
|
||||
Target="[%ComSpec]"
|
||||
Arguments='/k "[INSTALLDIR]nodevars.bat"'
|
||||
Show="normal"
|
||||
WorkingDirectory="INSTALLDIR"/>
|
||||
<Shortcut Id="NodeExecutableShortcut"
|
||||
Name="io.js"
|
||||
Target="[INSTALLDIR]iojs.exe"
|
||||
Name="Node.js"
|
||||
Target="[INSTALLDIR]node.exe"
|
||||
WorkingDirectory="INSTALLDIR"/>
|
||||
<Shortcut Id="UninstallProduct"
|
||||
Name="Uninstall io.js"
|
||||
Name="Uninstall Node.js"
|
||||
Target="[SystemFolder]msiexec.exe"
|
||||
Arguments="/x [ProductCode]"/>
|
||||
<RemoveFolder Id="RemoveApplicationProgramsFolder"
|
||||
@ -220,12 +220,12 @@
|
||||
Value="1"
|
||||
KeyPath="yes"/>
|
||||
<util:InternetShortcut Id="WebsiteShortcut"
|
||||
Name="io.js website"
|
||||
Target="http://iojs.org"
|
||||
Name="Node.js website"
|
||||
Target="http://nodejs.org"
|
||||
Type="url"/>
|
||||
<util:InternetShortcut Id="DocsShortcut"
|
||||
Name="io.js documentation"
|
||||
Target="https://iojs.org/download/$(var.DistTypeDir)/v$(var.FullVersion)/doc/api/"
|
||||
Name="Node.js documentation"
|
||||
Target="https://nodejs.org/download/$(var.DistTypeDir)/v$(var.FullVersion)/doc/api/"
|
||||
Type="url"/>
|
||||
</Component>
|
||||
</DirectoryRef>
|
||||
|
@ -1,24 +1,24 @@
|
||||
@echo off
|
||||
|
||||
rem Ensure this io.js and npm are first in the PATH
|
||||
rem Ensure this Node.js and npm are first in the PATH
|
||||
set PATH=%APPDATA%\npm;%~dp0;%PATH%
|
||||
|
||||
setlocal enabledelayedexpansion
|
||||
pushd "%~dp0"
|
||||
|
||||
rem Figure out the io.js version.
|
||||
set print_version=.\iojs.exe -p -e "process.versions.node + ' (' + process.arch + ')'"
|
||||
rem Figure out the Node.js version.
|
||||
set print_version=.\node.exe -p -e "process.versions.node + ' (' + process.arch + ')'"
|
||||
for /F "usebackq delims=" %%v in (`%print_version%`) do set version=%%v
|
||||
|
||||
rem Print message.
|
||||
if exist npm.cmd (
|
||||
echo Your environment has been set up for using io.js !version! and npm.
|
||||
echo Your environment has been set up for using Node.js !version! and npm.
|
||||
) else (
|
||||
echo Your environment has been set up for using io.js !version!.
|
||||
echo Your environment has been set up for using Node.js !version!.
|
||||
)
|
||||
|
||||
popd
|
||||
endlocal
|
||||
|
||||
rem If we're in the io.js directory, change to the user's home dir.
|
||||
rem If we're in the Node.js directory, change to the user's home dir.
|
||||
if "%CD%\"=="%~dp0" cd /d "%HOMEDRIVE%%HOMEPATH%"
|
||||
|
@ -1,6 +1,6 @@
|
||||
<pkgref spec="1.12" uuid="DF0233A3-6B5D-4FBF-8048-8FC57F42278F">
|
||||
<config>
|
||||
<identifier>org.iojs.npm.pkg</identifier>
|
||||
<identifier>org.node.npm.pkg</identifier>
|
||||
<version>1.0</version>
|
||||
<description></description>
|
||||
<post-install type="none"/>
|
||||
|
@ -1,6 +1,6 @@
|
||||
<pkmkdoc spec="1.12">
|
||||
<properties>
|
||||
<title>io.js</title>
|
||||
<title>Node.js</title>
|
||||
<build>/Users/iojs/Desktop/iojs.pkg</build>
|
||||
<organization>org.iojs</organization>
|
||||
<userSees ui="both"/>
|
||||
@ -12,7 +12,7 @@
|
||||
<scripts></scripts>
|
||||
</distribution>
|
||||
<contents>
|
||||
<choice title="io.js" id="choice1" starts_selected="true" starts_enabled="true" starts_hidden="false">
|
||||
<choice title="Node.js" id="choice1" starts_selected="true" starts_enabled="true" starts_hidden="false">
|
||||
<pkgref id="org.iojs.iojs.pkg"/>
|
||||
</choice>
|
||||
<choice title="npm" id="choice2" starts_selected="true" starts_enabled="true" starts_hidden="false">
|
||||
@ -28,13 +28,13 @@
|
||||
{\colortbl;\red255\green255\blue255;}
|
||||
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
|
||||
|
||||
\f0\fs26 \cf0 This package will install io.js {iojsversion} and npm {npmversion} into /usr/local/. The binary /usr/local/bin/iojs will also be symlinked as /usr/local/bin/node.}]]></resource>
|
||||
\f0\fs26 \cf0 This package will install Node.js {iojsversion} and npm {npmversion} into /usr/local/. The binary /usr/local/bin/iojs will also be symlinked as /usr/local/bin/node.}]]></resource>
|
||||
<resource mime-type="text/rtf" kind="embedded" type="conclusion"><![CDATA[{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf360
|
||||
{\fonttbl\f0\fnil\fcharset0 LucidaGrande;}
|
||||
{\colortbl;\red255\green255\blue255;}
|
||||
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
|
||||
|
||||
\f0\fs26 \cf0 io.js was installed at\
|
||||
\f0\fs26 \cf0 Node.js was installed at\
|
||||
\
|
||||
/usr/local/bin/iojs\
|
||||
and symlinked at\
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
set -e
|
||||
|
||||
webhost=iojs.org
|
||||
webhost=nodejs.org
|
||||
webuser=dist
|
||||
promotablecmd=dist-promotable
|
||||
promotecmd=dist-promote
|
||||
@ -91,7 +91,7 @@ function sign {
|
||||
|
||||
shafile=$(basename $shapath)
|
||||
shadir=$(dirname $shapath)
|
||||
tmpdir="/tmp/_iojs_release.$$"
|
||||
tmpdir="/tmp/_node_release.$$"
|
||||
|
||||
mkdir -p $tmpdir
|
||||
|
||||
|
@ -15,14 +15,14 @@
|
||||
# This is updated by rpmbuild.sh.
|
||||
%define _version 0.10.12
|
||||
|
||||
Name: iojs
|
||||
Name: node
|
||||
Version: %{_version}
|
||||
Release: 1
|
||||
Summary: io.js is a platform for building fast, scalable network applications.
|
||||
Summary: Node.js is a platform for building fast, scalable network applications.
|
||||
Group: Development/Languages
|
||||
License: MIT
|
||||
URL: http://iojs.org/
|
||||
Source0: http://iojs.org/dist/v%{_version}/iojs-v%{_version}.tar.gz
|
||||
URL: http://nodejs.org/
|
||||
Source0: http://nodejs.org/dist/v%{_version}/node-v%{_version}.tar.gz
|
||||
BuildRequires: gcc
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: glibc-devel
|
||||
@ -37,10 +37,10 @@ Conflicts: nodejs
|
||||
|
||||
|
||||
%description
|
||||
io.js is a platform built on Chrome's JavaScript runtime for easily
|
||||
Node.js is a platform built on Chrome's JavaScript runtime for easily
|
||||
building fast, scalable network applications.
|
||||
|
||||
io.js uses an event-driven, non-blocking I/O model that makes it
|
||||
Node.js uses an event-driven, non-blocking I/O model that makes it
|
||||
lightweight and efficient, perfect for data-intensive real-time
|
||||
applications that run across distributed devices.
|
||||
|
||||
@ -94,7 +94,7 @@ done
|
||||
/usr/include/*
|
||||
/usr/lib/node_modules/
|
||||
/usr/share/doc/node/gdbinit
|
||||
/usr/share/man/man1/iojs.1.gz
|
||||
/usr/share/man/man1/node.1.gz
|
||||
/usr/share/systemtap/tapset/node.stp
|
||||
%{_datadir}/%{name}/
|
||||
%doc CHANGELOG.md LICENSE README.md
|
@ -38,7 +38,7 @@ fi
|
||||
set -x
|
||||
|
||||
sed -re "s/%define _version .+/%define _version ${VERSION}/" \
|
||||
"$TOOLSDIR/iojs.spec" > $RPMBUILD_PATH/SPECS/iojs.spec
|
||||
tar --exclude-vcs --transform="s|^|iojs-${VERSION}/|" \
|
||||
-czf $RPMBUILD_PATH/SOURCES/iojs-v${VERSION}.tar.gz .
|
||||
rpmbuild $* -ba $RPMBUILD_PATH/SPECS/iojs.spec
|
||||
"$TOOLSDIR/node.spec" > $RPMBUILD_PATH/SPECS/node.spec
|
||||
tar --exclude-vcs --transform="s|^|node-${VERSION}/|" \
|
||||
-czf $RPMBUILD_PATH/SOURCES/node-v${VERSION}.tar.gz .
|
||||
rpmbuild $* -ba $RPMBUILD_PATH/SPECS/node.spec
|
||||
|
@ -6,7 +6,7 @@ set -e
|
||||
cd $(dirname $0)/..
|
||||
|
||||
# pass a $NODE environment variable from something like Makefile
|
||||
# it should point to either ./iojs or ./iojs.exe, depending on the platform
|
||||
# it should point to either ./node or ./node.exe, depending on the platform
|
||||
if [ -z $NODE ]; then
|
||||
echo "No node executable provided. Bailing." >&2
|
||||
exit 0
|
||||
|
@ -755,20 +755,20 @@ class Context(object):
|
||||
|
||||
def GetVm(self, arch, mode):
|
||||
if arch == 'none':
|
||||
name = 'out/Debug/iojs' if mode == 'debug' else 'out/Release/iojs'
|
||||
name = 'out/Debug/node' if mode == 'debug' else 'out/Release/node'
|
||||
else:
|
||||
name = 'out/%s.%s/iojs' % (arch, mode)
|
||||
name = 'out/%s.%s/node' % (arch, mode)
|
||||
|
||||
# Currently GYP does not support output_dir for MSVS.
|
||||
# http://code.google.com/p/gyp/issues/detail?id=40
|
||||
# It will put the builds into Release/iojs.exe or Debug/iojs.exe
|
||||
# It will put the builds into Release/node.exe or Debug/node.exe
|
||||
if utils.IsWindows():
|
||||
out_dir = os.path.join(dirname(__file__), "..", "out")
|
||||
if not exists(out_dir):
|
||||
if mode == 'debug':
|
||||
name = os.path.abspath('Debug/iojs.exe')
|
||||
name = os.path.abspath('Debug/node.exe')
|
||||
else:
|
||||
name = os.path.abspath('Release/iojs.exe')
|
||||
name = os.path.abspath('Release/node.exe')
|
||||
else:
|
||||
name = os.path.abspath(name + '.exe')
|
||||
|
||||
|
24
vcbuild.bat
24
vcbuild.bat
@ -154,14 +154,14 @@ if "%target%" == "Clean" goto exit
|
||||
@rem Skip signing if the `nosign` option was specified.
|
||||
if defined nosign goto licensertf
|
||||
|
||||
signtool sign /a /d "io.js" /t http://timestamp.globalsign.com/scripts/timestamp.dll Release\iojs.exe
|
||||
signtool sign /a /d "node" /t http://timestamp.globalsign.com/scripts/timestamp.dll Release\node.exe
|
||||
if errorlevel 1 echo Failed to sign exe&goto exit
|
||||
|
||||
:licensertf
|
||||
@rem Skip license.rtf generation if not requested.
|
||||
if not defined licensertf goto msi
|
||||
|
||||
%config%\iojs tools\license2rtf.js < LICENSE > %config%\license.rtf
|
||||
%config%\node tools\license2rtf.js < LICENSE > %config%\license.rtf
|
||||
if errorlevel 1 echo Failed to generate license.rtf&goto exit
|
||||
|
||||
:msi
|
||||
@ -169,12 +169,12 @@ if errorlevel 1 echo Failed to generate license.rtf&goto exit
|
||||
if not defined msi goto run
|
||||
|
||||
:msibuild
|
||||
echo Building iojs-v%FULLVERSION%-%target_arch%.msi
|
||||
echo Building node-v%FULLVERSION%-%target_arch%.msi
|
||||
msbuild "%~dp0tools\msvs\msi\nodemsi.sln" /m /t:Clean,Build /p:Configuration=%config% /p:Platform=%target_arch% /p:NodeVersion=%NODE_VERSION% /p:FullVersion=%FULLVERSION% /p:DistTypeDir=%DISTTYPEDIR% %noetw_msi_arg% %noperfctr_msi_arg% /clp:NoSummary;NoItemAndPropertyList;Verbosity=minimal /nologo
|
||||
if errorlevel 1 goto exit
|
||||
|
||||
if defined nosign goto upload
|
||||
signtool sign /a /d "io.js" /t http://timestamp.globalsign.com/scripts/timestamp.dll iojs-v%FULLVERSION%-%target_arch%.msi
|
||||
signtool sign /a /d "node" /t http://timestamp.globalsign.com/scripts/timestamp.dll node-v%FULLVERSION%-%target_arch%.msi
|
||||
if errorlevel 1 echo Failed to sign msi&goto exit
|
||||
|
||||
:upload
|
||||
@ -185,12 +185,12 @@ if not defined SSHCONFIG (
|
||||
echo SSHCONFIG is not set for upload
|
||||
exit /b 1
|
||||
)
|
||||
if not defined STAGINGSERVER set STAGINGSERVER=iojs-www
|
||||
if not defined STAGINGSERVER set STAGINGSERVER=node-www
|
||||
ssh -F %SSHCONFIG% %STAGINGSERVER% "mkdir -p staging/%DISTTYPEDIR%/v%FULLVERSION%/win-%target_arch%"
|
||||
scp -F %SSHCONFIG% Release\iojs.exe %STAGINGSERVER%:staging/%DISTTYPEDIR%/v%FULLVERSION%/win-%target_arch%/iojs.exe
|
||||
scp -F %SSHCONFIG% Release\iojs.lib %STAGINGSERVER%:staging/%DISTTYPEDIR%/v%FULLVERSION%/win-%target_arch%/iojs.lib
|
||||
scp -F %SSHCONFIG% iojs-v%FULLVERSION%-%target_arch%.msi %STAGINGSERVER%:staging/%DISTTYPEDIR%/v%FULLVERSION%/
|
||||
ssh -F %SSHCONFIG% %STAGINGSERVER% "touch staging/%DISTTYPEDIR%/v%FULLVERSION%/iojs-v%FULLVERSION%-%target_arch%.msi.done staging/%DISTTYPEDIR%/v%FULLVERSION%/win-%target_arch%.done"
|
||||
scp -F %SSHCONFIG% Release\node.exe %STAGINGSERVER%:staging/%DISTTYPEDIR%/v%FULLVERSION%/win-%target_arch%/node.exe
|
||||
scp -F %SSHCONFIG% Release\node.lib %STAGINGSERVER%:staging/%DISTTYPEDIR%/v%FULLVERSION%/win-%target_arch%/node.lib
|
||||
scp -F %SSHCONFIG% node-v%FULLVERSION%-%target_arch%.msi %STAGINGSERVER%:staging/%DISTTYPEDIR%/v%FULLVERSION%/
|
||||
ssh -F %SSHCONFIG% %STAGINGSERVER% "touch staging/%DISTTYPEDIR%/v%FULLVERSION%/node-v%FULLVERSION%-%target_arch%.msi.done staging/%DISTTYPEDIR%/v%FULLVERSION%/win-%target_arch%.done"
|
||||
|
||||
:run
|
||||
@rem Run tests if requested.
|
||||
@ -198,7 +198,7 @@ ssh -F %SSHCONFIG% %STAGINGSERVER% "touch staging/%DISTTYPEDIR%/v%FULLVERSION%/i
|
||||
:build-node-weak
|
||||
@rem Build node-weak if required
|
||||
if "%buildnodeweak%"=="" goto run-tests
|
||||
"%config%\iojs" deps\npm\node_modules\node-gyp\bin\node-gyp rebuild --directory="%~dp0test\gc\node_modules\weak" --nodedir="%~dp0."
|
||||
"%config%\node" deps\npm\node_modules\node-gyp\bin\node-gyp rebuild --directory="%~dp0test\gc\node_modules\weak" --nodedir="%~dp0."
|
||||
if errorlevel 1 goto build-node-weak-failed
|
||||
goto run-tests
|
||||
|
||||
@ -219,7 +219,7 @@ goto jslint
|
||||
:jslint
|
||||
if not defined jslint goto exit
|
||||
echo running jslint
|
||||
%config%\iojs tools\eslint\bin\eslint.js src lib test --rulesdir tools\eslint-rules --reset --quiet
|
||||
%config%\node tools\eslint\bin\eslint.js src lib test --rulesdir tools\eslint-rules --reset --quiet
|
||||
goto exit
|
||||
|
||||
:create-msvs-files-failed
|
||||
@ -250,7 +250,7 @@ set FULLVERSION=
|
||||
|
||||
for /F "usebackq tokens=*" %%i in (`python "%~dp0tools\getnodeversion.py"`) do set NODE_VERSION=%%i
|
||||
if not defined NODE_VERSION (
|
||||
echo Cannot determine current version of io.js
|
||||
echo Cannot determine current version of Node.js
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user