0
0
mirror of https://github.com/nodejs/node.git synced 2024-12-01 16:10:02 +01:00
Cross-platform JavaScript runtime environment https://nodejs.org/
Go to file
Fedor Indutny f2b297cc7c http: do not emit EOF non-readable socket
Socket may become not `readable`, but http should not rely on this
property and should not think that it means that no data will ever
arrive from it. In fact, it may arrive in a next tick and, since
`this.push(null)` was already called, it will result in a error like
this:

    Error: stream.push() after EOF
        at readableAddChunk (_stream_readable.js:143:15)
        at IncomingMessage.Readable.push (_stream_readable.js:123:10)
        at HTTPParser.parserOnBody (_http_common.js:132:22)
        at Socket.socketOnData (_http_client.js:277:20)
        at Socket.EventEmitter.emit (events.js:101:17)
        at Socket.Readable.read (_stream_readable.js:367:10)
        at Socket.socketCloseListener (_http_client.js:196:10)
        at Socket.EventEmitter.emit (events.js:123:20)
        at TCP.close (net.js:479:12)

fix #6784
2014-04-08 00:40:22 +04:00
benchmark benchmark: Fix execArgv handling 2013-08-31 17:58:17 -07:00
deps npm: upgrade to 1.4.6 2014-03-25 17:42:22 -07:00
doc doc: add missing space 2014-04-07 17:45:04 +04:00
lib http: do not emit EOF non-readable socket 2014-04-08 00:40:22 +04:00
src src: ensure that openssl's PRNG is fully seeded 2014-03-26 11:31:32 +04:00
test http: do not emit EOF non-readable socket 2014-04-08 00:40:22 +04:00
tools installer: copy node.d only with node_use_dtrace 2014-02-21 01:03:03 +04:00
.gitattributes
.gitignore tools: script release steps after jenkins build 2013-08-21 16:59:15 -07:00
.mailmap Update .mailmap and AUTHORS 2013-03-19 20:07:38 +01:00
.travis.yml test: add .travis.yml for testing on Travis CI 2011-12-05 16:50:55 -08:00
AUTHORS 2014.02.18, Version 0.10.26 (Stable) 2014-02-18 14:55:58 -08:00
BSDmakefile
ChangeLog 2014.02.18, Version 0.10.26 (Stable) 2014-02-18 14:55:58 -08:00
common.gypi build: fix g++ 4.8 build, disable -Werror 2014-03-23 16:11:08 -07:00
configure configure: allow --with-dtrace on freebsd 2014-02-21 00:46:26 +04:00
CONTRIBUTING.md doc: clarify subsystems in CONTRIBUTING.md 2013-05-14 12:31:38 +02:00
LICENSE doc: Update LICENSE for npm's Artistic 2.0 2013-08-05 13:56:05 -07:00
Makefile website: move website to joyent/node-website 2014-02-13 15:54:07 -08:00
node.gyp build: fix g++ 4.8 build, disable -Werror 2014-03-23 16:11:08 -07:00
README.md doc: link to pre-built binaries, add install note 2013-10-01 08:37:32 +02:00
vcbuild.bat build: windows signing should include timestamps 2014-03-27 11:54:13 -07:00

Evented I/O for V8 javascript. Build Status

To build:

Prerequisites (Unix only):

* GCC 4.2 or newer
* Python 2.6 or 2.7
* GNU Make 3.81 or newer
* libexecinfo (FreeBSD and OpenBSD only)

Unix/Macintosh:

./configure
make
make install

If your python binary is in a non-standard location or has a non-standard name, run the following instead:

export PYTHON=/path/to/python
$PYTHON ./configure
make
make install

Windows:

vcbuild.bat

You can download pre-built binaries for various operating systems from http://nodejs.org/download/. The Windows and OS X installers will prompt you for the location to install to. The tarballs are self-contained; you can extract them to a local directory with:

tar xzf /path/to/node-<version>-<platform>-<arch>.tar.gz

Or system-wide with:

cd /usr/local && tar --strip-components 1 -xzf \
                     /path/to/node-<version>-<platform>-<arch>.tar.gz

To run the tests:

Unix/Macintosh:

make test

Windows:

vcbuild.bat test

To build the documentation:

make doc

To read the documentation:

man doc/node.1

Resources for Newcomers