-
Notifications
You must be signed in to change notification settings - Fork 24
ChangeLog
-
fs.watch interface backed by kqueue, inotify, and ReadDirectoryChangesW (Igor Zinkovsky, Ben Noordhuis)
-
add dns.resolveTxt (Christian Tellnes)
-
Remove legacy http library (Ben Noordhuis)
-
child_process.fork returns and works on Windows. Allows passing handles. (Igor Zinkovsky, Bert Belder)
-
#1774 Lint and clean up for --harmony_block_scoping (Tyler Larson, Colton Baker)
-
#1813 Fix ctrl+c on Windows (Bert Belder)
-
#1844 unbreak --use-legacy (Ben Noordhuis)
-
process.stderr now goes through libuv. Both process.stdout and process.stderr are blocking when referencing a TTY.
-
net_uv performance improvements (Ben Noordhuis, Bert Belder)
-
zlib bindings (isaacs)
-
Windows supports TTY ANSI escape codes (Bert Belder)
-
Debugger improvements (Fedor Indutny)
-
crypto: look up SSL errors with ERR_print_errors() (Ben Noordhuis)
-
dns callbacks go through MakeCallback now
-
Raise an error when a malformed package.json file is found. (Ben Leslie)
-
buffers: handle bad length argument in constructor (Ben Noordhuis)
-
#1726, unref process.stdout
-
Doc improvements (Ben Noordhuis, Fedor Indutny, koichik)
-
Upgrade libuv to fe18438
-
Upgrade V8 to 3.6.4
-
Improve Windows compatibility
-
Documentation improvements
-
Debugger and REPL improvements (Fedor Indutny)
-
Add legacy API support: net.Stream(fd), process.stdout.writable, process.stdout.fd
-
Fix mkdir EEXIST handling (isaacs)
-
Use net_uv instead of net_legacy for stdio
-
Do not load readline from util.inspect
-
#1673 Fix bug related to V8 context with accessors (Fedor Indutny)
-
#1634 util: Fix inspection for Error (koichik)
-
#1645 fs: Add positioned file writing feature to fs.WriteStream (Thomas Shinnick)
-
#1637 fs: Unguarded fs.watchFile cache statWatchers checking fixed (Thomas Shinnick)
-
#1695 Forward customFds to ChildProcess.spawn
-
#1707 Fix hasOwnProperty security problem in querystring (isaacs)
-
#1719 Drain OpenSSL error queue
-
#345, #1635, #1648 Documentation improvements (Thomas Shinnick, Abimanyu Raja, AJ ONeal, Koichi Kobayashi, Michael Jackson, Logan Smyth, Ben Noordhuis)
-
#650 Improve path parsing on windows (Bert Belder)
-
#752 Remove headers sent check in OutgoingMessage.getHeader() (Peter Lyons)
-
#1236, #1438, #1506, #1513, #1621, #1640, #1647 Libuv-related bugs fixed (Jorge Chamorro Bieling, Peter Bright, Luis Lavena, Igor Zinkovsky)
-
#1296, #1612 crypto: Fix BIO's usage. (Koichi Kobayashi)
-
#1345 Correctly set socket.remoteAddress with libuv backend (Bert Belder)
-
#1429 Don't clobber quick edit mode on windows (Peter Bright)
-
#1503 Make libuv backend default on unix, override with
node --use-legacy
-
#1565 Fix fs.stat for paths ending with \ on windows (Igor Zinkovsky)
-
#1568 Fix x509 certificate subject parsing (Koichi Kobayashi)
-
#1586 Make socket write encoding case-insensitive (Koichi Kobayashi)
-
#1591, #1656, #1657 Implement fs in libuv, remove libeio and pthread-win32 dependency on windows (Igor Zinkovsky, Ben Noordhuis, Ryan Dahl, Isaac Schlueter)
-
#1592 Don't load-time link against CreateSymbolicLink on windows (Peter Bright)
-
#1601 Improve API consistency when dealing with the socket underlying a HTTP client request (Mikeal Rogers)
-
#1610 Remove DigiNotar CA from trusted list (Isaac Schlueter)
-
#1617 Added some win32 os functions (Karl Skomski)
-
#1624 avoid buffer overrun with 'binary' encoding (Koichi Kobayashi)
-
#1633 make Buffer.write() always set _charsWritten (Koichi Kobayashi)
-
#1644 Windows: set executables to be console programs (Peter Bright)
-
#1651 improve inspection for sparse array (Koichi Kobayashi)
-
#1672 set .code='ECONNRESET' on socket hang up errors (Ben Noordhuis)
-
Add test case for foaf+ssl client certificate (Niclas Hoyer)
-
Added RPATH environment variable to override run-time library paths (Ashok Mudukutore)
-
Added TLS client-side session resumption support (Sean Cunningham)
-
Added additional properties to getPeerCertificate (Nathan Rixham, Niclas Hoyer)
-
Don't eval repl command twice when an error is thrown (Nathan Rajlich)
-
Improve util.isDate() (Nathan Rajlich)
-
Improvements in libuv backend and bindings, upgrade libuv to bd6066cb349a9b3a1b0d87b146ddaee06db31d10
-
Show warning when using lib/sys.js (Maciej Malecki)
-
Support plus sign in url protocol (Maciej Malecki)
-
Upgrade V8 to 3.6.2
##2011.08.26, Version 0.5.5 (unstable), d2d53d4bb262f517a227cc178a1648094ba54c20
-
typed arrays, implementation from Plesk
-
fix IP multicast on SunOS
-
fix DNS lookup order: IPv4 first, IPv6 second (--use-uv only)
-
remove support for UNIX datagram sockets (--use-uv only)
-
UDP support for Windows (Bert Belder)
-
#1572 improve tab completion for objects in the REPL (Nathan Rajlich)
-
#1563 fix buffer overflow in child_process module (reported by Dean McNamee)
-
#1546 fix performance regression in http module (reported by Brian Geffon)
-
#1491 add PBKDF2 crypto support (Glen Low)
-
#1447 remove deprecated http.cat() function (Mikeal Rogers)
-
#1140 fix incorrect dispatch of vm.runInContext's filename argument (Antranig Basman)
-
#1140 document vm.runInContext() and vm.createContext() (Antranig Basman)
-
#1428 fix os.freemem() on 64 bits freebsd (Artem Zaytsev)
-
#1164 make all DNS lookups async, fixes uncatchable exceptions (Koichi Kobayashi)
-
fix incorrect ssl shutdown check (Tom Hughes)
-
various cmake fixes (Tom Hughes)
-
improved documentation (Koichi Kobayashi, Logan Smyth, Fedor Indutny, Mikeal Rogers, Maciej Małecki, Antranig Basman, Mickaël Delahaye)
-
upgrade libuv to commit 835782a
-
upgrade V8 to 3.5.8
-
libuv/Windows compatibility improvements
-
Build on Microsoft Visual Studio via GYP. Use generate-projects.bat in the to build sln files. (Peter Bright, Igor Zinkovsky)
-
Make Mikeal's HTTP agent client the default. Use old HTTP client with --use-http1
-
Fixes https host header default port handling. (Mikeal Rogers)
-
#1440 strip byte order marker when loading *.js and *.json files (Ben Noordhuis)
-
#1434 Improve util.format() compatibility with browser. (Koichi Kobayashi)
-
Provide unchecked uint entry points for integer Buffer.read/writeInt methods. (Robert Mustacchi)
-
CMake improvements (Tom Huges)
-
Upgrade V8 to 3.5.4.
-
Fix crypto encryption/decryption with Base64. (SAWADA Tadashi)
-
#243 Add an optional length argument to Buffer.write() (koichik)
-
#657 convert nonbuffer data to string in fs.writeFile/Sync (Daniel Pihlström)
-
Add process.features, remove process.useUV (Ben Noordhuis)
-
#324 Fix crypto hmac to accept binary keys + add test cases from rfc 2202 and 4231 (Stefan Bühler)
-
Add Socket::bytesRead, Socket::bytesWritten (Alexander Uvarov)
-
#572 Don't print result of --eval in CLI (Ben Noordhuis)
-
#1223 Fix http.ClientRequest crashes if end() was called twice (koichik)
-
#1383 Emit 'close' after all connections have closed (Felix Geisendörfer)
-
Add sprintf-like util.format() function (Ben Noordhuis)
-
Add support for TLS SNI (Fedor Indutny)
-
New http agent implementation. Off by default the command line flag --use-http2 will enable it. "make test-http2" will run the tests for the new implementation. (Mikeal Rogers)
-
Revert AMD compatibility. (isaacs)
-
Windows: improvements, child_process support.
-
Remove pkg-config file.
-
Fix startup time regressions.
-
doc improvements
-
libuv improvements; named pipe support
-
#1242 check for SSL_COMP_get_compression_methods() (Ben Noordhuis)
-
#1348 remove require.paths (isaacs)
-
#1349 Delimit NODE_PATH with ; on Windows (isaacs)
-
#1335 Remove EventEmitter from C++
-
#1357 Load json files with require() (isaacs)
-
#1374 fix setting ServerResponse.statusCode in writeHead (Trent Mick)
-
Fixed: GC was being run too often.
-
Upgrade V8 to 3.4.14
-
doc improvements
-
#1233 Fix os.totalmem on FreeBSD amd64 (Artem Zaytsev)
-
#1149 IDNA and Punycode support in url.parse (Jeremy Selier, Ben Noordhuis, isaacs)
-
Export $CC and $CXX to uv and V8's build systems
-
Include pthread-win32 static libraries in build (Igor Zinkovsky)
-
#1199, #1094 Fix fs can't handle large file on 64bit platform (koichik)
-
#1281 Make require a public member of module (isaacs)
-
#1303 Stream.pipe returns the destination (Elijah Insua)
-
#1229 Addons should not -DEV_MULTIPLICITY=0 (Brian White)
-
libuv backend improvements
-
Upgrade V8 to 3.4.10
-
New non-default libuv backend to support IOCP on Windows. Use --use-uv to enable.
-
deprecate http.cat
-
docs improved.
-
add child_process.fork
-
add fs.utimes() and fs.futimes() support (Ben Noordhuis)
-
add process.uptime() (Tom Huges)
-
add path.relative (Tony Huang)
-
add os.getNetworkInterfaces()
-
add remoteAddress and remotePort for client TCP connections (Brian White)
-
add secureOptions flag, setting ciphers, SSL_OP_CRYPTOPRO_TLSEXT_BUG to TLS (Theo Schlossnagle)
-
add process.arch (Nathan Rajlich)
-
add reading/writing of floats and doubles from/to buffers (Brian White)
-
Allow script to be read from stdin
-
#477 add Buffer::fill method to do memset (Konstantin Käfer)
-
#573 Diffie-Hellman support to crypto module (Håvard Stranden)
-
#695 add 'hex' encoding to buffer (isaacs)
-
#851 Update how REPLServer uses contexts (Ben Weaver)
-
#853 add fs.lchow, fs.lchmod, fs.fchmod, fs.fchown (isaacs)
-
#889 Allow to remove all EventEmitter listeners at once (Felix Geisendörfer)
-
#926 OpenSSL NPN support (Fedor Indutny)
-
#955 Change ^C handling in REPL (isaacs)
-
#979 add support for Unix Domain Sockets to HTTP (Mark Cavage)
-
#1173 #1170 add AMD, asynchronous module definition (isaacs)
-
DTrace probes: support X-Forwarded-For (Dave Pacheco)
-
Improve docs
-
#1563 overflow in ChildProcess custom_fd.
-
#1569, parse error on multi-line HTTP headers. (Ben Noordhuis)
-
#1586 net: Socket write encoding case sensitivity (koichik)
-
#1610 Remove DigiNotar CA from trusted list (isaacs)
-
#1624 buffer: Avoid overrun with 'binary' encoding. (koichik)
-
#1633 buffer: write() should always set _charsWritten. (koichik)
-
#1707 hasOwnProperty usage security hole in querystring (isaacs)
-
#1719 Drain OpenSSL error queue
-
Fix error reporting in net.Server.listen
-
#738 Fix crypto encryption/decryption with Base64. (SAWADA Tadashi)
-
#1202 net.createConnection defer DNS lookup error events to next tick (Ben Noordhuis)
-
#1374 fix setting ServerResponse.statusCode in writeHead (Trent Mick)
-
#1417 Fix http.ClientRequest crashes if end() was called twice
-
#1497 querystring: Replace 'in' test with 'hasOwnProperty' (isaacs)
-
#1546 http perf improvement
-
fix memleak in libeio (Tom Hughes)
-
cmake improvements (Tom Hughes)
-
node_net.cc: fix incorrect sizeof() (Tom Hughes)
-
Windows/cygwin: no more GetConsoleTitleW errors on XP (Bert Belder)
-
Doc improvments (koichik, Logan Smyth, Ben Noordhuis, Arnout Kazemier)
-
#394 Fix Buffer drops last null character in UTF-8
-
#829 Backport r8577 from V8 (Ben Noordhuis)
-
#877 Don't wait for HTTP Agent socket pool to establish connections.
-
#915 Find kqueue on FreeBSD correctly (Brett Kiefer)
-
#1085 HTTP: Fix race in abort/dispatch code (Stefan Rusu)
-
#1274 debugger improvement (Yoshihiro Kikuchi)
-
#1291 Properly respond to HEAD during end(body) hot path (Reid Burke)
-
#1304 TLS: Fix race in abort/connection code (Stefan Rusu)
-
#1360 Allow _ in url hostnames.
-
Revert 37d529f8 - unbreaks debugger command parsing.
-
Bring back global execScript
-
Doc improvements
-
Improve documentation
-
#1095 error handling bug in stream.pipe() (Felix Geisendörfer)
-
#1097 Fix a few leaks in node_crypto.cc (Ben Noordhuis)
-
#562 #1078 Parse file:// urls properly (Ryan Petrello)
-
#880 Option to disable SSLv2 (Jérémy Lal)
-
#1087 Disabling SSL compression disabled with early OpenSSLs.
-
#1144 debugger: don't allow users to input non-valid commands (Siddharth Mahendraker)
-
Perf improvement for util.inherits
-
#1166 Support for signature verification with RSA/DSA public keys (Mark Cavage)
-
#1177 Remove node_modules lookup optimization to better support nested project structures (Mathias Buus)
-
#1203 Add missing scope.Close to fs.sendfileSync
-
#1187 Support multiple 'link' headers
-
#1196 Fix -e/--eval can't load module from node_modules (Koichi Kobayashi)
-
Upgrade V8 to 3.1.8.25, upgrade http-parser.
-
#974 Properly report traceless errors (isaacs)
-
#983 Better JSON.parse error detection in REPL (isaacs)
-
#836 Agent socket errors bubble up to req only if req exists
-
#1041 Fix event listener leak check timing (koichik)
-
#1038 Fix dns.resolve() with 'PTR' throws Error: Unknown type "PTR" (koichik)
-
#1073 Share SSL context between server connections (Fedor Indutny)
-
Disable compression with OpenSSL. Improves memory perf.
-
Implement os.totalmem() and os.freemem() for SunOS (Alexandre Marangone)
-
Fix a special characters in URL regression (isaacs)
-
Fix idle timeouts in HTTPS (Felix Geisendörfer)
-
SlowBuffer.write() with 'ucs2' throws ReferenceError. (koichik)
-
http.ServerRequest 'close' sometimes gets an error argument (Felix Geisendörfer)
-
Doc improvements
-
cleartextstream.destroy() should close(2) the socket. Previously was being mapped to a shutdown(2) syscall.
-
No longer compile out asserts and debug statements in normal build.
-
Debugger improvements.
-
Don't emit error on ECONNRESET from read() #670
-
Fix: Multiple pipes to the same stream were broken #929 (Felix Geisendörfer)
-
URL parsing/formatting corrections #954 (isaacs)
-
make it possible to do repl.start('', stream) (Wade Simmons)
-
Add os.loadavg for SunOS (Robert Mustacchi)
-
Fix timeouts with floating point numbers #897 (Jorge Chamorro Bieling)
-
Improve docs.
-
Don't error on ENOTCONN from shutdown() #670
-
Auto completion of built-in debugger suggests prefix match rather than partial match. (koichik)
-
circular reference in vm modules. #822 (Jakub Lekstan)
-
http response.readable should be false after 'end' #867 (Abe Fettig)
-
Implement os.cpus() and os.uptime() on Solaris (Scott McWhirter)
-
fs.ReadStream: Allow omission of end option for range reads #801 (Felix Geisendörfer)
-
Buffer.write() with UCS-2 should not be write partial char #916 (koichik)
-
Pass secureProtocol through on tls.Server creation (Theo Schlossnagle)
-
TLS use RC4-SHA by default
-
Don't strangely drop out of event loop on HTTPS client uploads #892
-
Doc improvements
-
Upgrade v8 to 3.1.8.10
-
Fix listener leak in stream.pipe() (Mikeal Rogers)
-
Retain buffers in fs.read/write() GH-814 (Jorge Chamorro Bieling)
-
TLS performance improvements
-
SlowBuffer.prototype.slice bug GH-843
-
process.stderr.write should return true
-
Immediate pause/resume race condition GH-535 (isaacs)
-
Set default host header properly GH-721 (isaacs)
-
Upgrade V8 to 3.1.8.8
-
CryptoStream.end shouldn't throw if not writable GH-820
-
Drop out if connection destroyed before connect() GH-819
-
expose https.Agent
-
Correctly setsid in tty.open GH-815
-
Bug fix for failed buffer construction
-
Added support for removing .once listeners (GH-806)
-
Upgrade V8 to 3.1.8.5
-
Don't decrease server connection counter again if destroy() is called more than once GH-431 (Andreas Reich, Anders Conbere)
-
Documentation improvements (koichik)
-
Fix bug with setMaxListeners GH-682
-
Start up memory footprint improvement. (Tom Hughes)
-
Solaris improvements.
-
Buffer::Length(Buffer*) should not invoke itself recursively GH-759 (Ben Noordhuis)
-
TLS: Advertise support for client certs GH-774 (Theo Schlossnagle)
-
HTTP Agent bugs: GH-787, GH-784, GH-803.
-
Don't call GetMemoryUsage every 5 seconds.
-
Upgrade V8 to 3.1.8.3
-
Improve docs.
-
Fix process.on edge case with signal event (Alexis Sellier)
-
Pragma HTTP header comma separation
-
In addition to 'aborted' emit 'close' from incoming requests (Felix Geisendörfer)
-
Fix memleak in vm.runInNewContext
-
Do not cache modules that throw exceptions (Felix Geisendörfer)
-
Build system changes for libnode (Aria Stewart)
-
Read up the prototype of the 'env' object. (Nathan Rajlich)
-
Add 'close' and 'aborted' events to Agent responses
-
http: fix missing 'drain' events (Russell Haering)
-
Fix process.stdout.end() throws ENOTSOCK error. (Koichi Kobayashi)
-
REPL bug fixes (isaacs)
-
node_modules folders should be highest priority (isaacs)
-
URL parse more safely (isaacs)
-
Expose errno with a string for dns/cares (Felix Geisendörfer)
-
Fix tty.setWindowSize
-
spawn: setuid after chdir (isaacs)
-
SIGUSR1 should break the VM without delay
-
Upgrade V8 to 3.1.8.
-
Fixed field merging with progressive fields on writeHead() (TJ Holowaychuk)
-
Make the repl respect node_modules folders (isaacs)
-
Fix for DNS fail in HTTP request (Richard Rodger)
-
Default to port 80 for http.request and http.get.
-
Improve V8 support for Cygwin (Bert Belder)
-
Fix fs.open param parsing. (Felix Geisendörfer)
-
Fixed null signal.
-
Fix various HTTP and HTTPS bugs
-
cmake improvements (Tom Hughes)
-
Fix: TLS sockets should not be writable after 'end'
-
Fix os.cpus() on cygwin (Brian White)
-
MinGW: OpenSSL support (Bert Belder)
-
Upgrade V8 to 3.1.5, libev to 4.4.
-
require() improvements (isaacs)
- understand package.json (isaacs)
- look for 'node_modules' dir
-
cmake fixes (Daniel Gröber)
-
http: fix buffer writes to outgoing messages (Russell Haering)
-
Expose UCS-2 Encoding (Konstantin Käfer)
-
Support strings for octal modes (isaacs)
-
Support array-ish args to Buffer ctor (isaacs)
-
cygwin and mingw improvements (Bert Belder)
-
TLS improvements
-
Fewer syscalls during require (Bert Belder, isaacs)
-
More DTrace probes (Bryan Cantrill, Robert Mustacchi)
-
'pipe' event on pipe() (Mikeal Rogers)
-
CRL support in TLS (Theo Schlossnagle)
-
HTTP header manipulation methods (Tim Caswell, Charlie Robbins)
-
Upgrade V8 to 3.1.2
-
Add req.abort() for client side requests.
-
Add exception.code for easy testing: Example: if (err.code == 'EADDRINUSE');
-
Add process.stderr.
-
require.main is the main module. (Isaac Schlueter)
-
dgram: setMulticastTTL, setMulticastLoopback and addMembership. (Joe Walnes)
-
Fix throttling in TLS connections
-
Add socket.bufferSize
-
MinGW improvements (Bert Belder)
-
Upgrade V8 to 3.1.1
-
Expose agent in http and https client. (Mikeal Rogers)
-
Fix bug in http request's end method. (Ali Farhadi)
-
MinGW: better net support (Bert Belder)
-
fs.open should set FD_CLOEXEC
-
DTrace probes (Bryan Cantrill)
-
REPL fixes and improvements (isaacs, Bert Belder)
-
Fix many bugs with legacy http.Client interface
-
Deprecate process.assert. Use require('assert').ok
-
Add callback parameter to socket.setTimeout(). (Ali Farhadi)
-
Fixing bug in http request default encoding (Ali Farhadi)
-
require: A module ID with a trailing slash must be a dir. (isaacs)
-
Add ext_key_usage to getPeerCertificate (Greg Hughes)
-
Error when child_process.exec hits maxBuffer.
-
Fix option parsing in tls.connect()
-
Upgrade to V8 3.0.10
-
REPL and other improvements on MinGW (Bert Belder)
-
listen/bind errors should close net.Server
-
New HTTP and HTTPS client APIs
-
Upgrade V8 to 3.0.9
-
http.Client has new implementation and is missing many methods. It will be more complete in the next version.
-
large HTTPS responses appear to be broken
-
Built-in debugger improvements.
-
Add setsid, setuid, setgid options to child_process.spawn (Isaac Schlueter)
-
tty module improvements.
-
Upgrade libev to 4.3, libeio to latest, c-ares to 1.7.4
-
Allow third party hooks before main module load. (See 496be457b6a2bc5b01ec13644b9c9783976159b2)
-
Don't stat() on cached modules. (Felix Geisendörfer)
-
Primordial mingw build (Bert Belder)
-
HTTPS server
-
Built in debugger 'node debug script.js'
-
realpath files during module load (Mihai Călin Bazon)
-
Rename net.Stream to net.Socket (existing name will continue to be supported)
-
Fix process.platform
-
TLS improvements.
-
url.parse(url, true) defaults query field to {} (Jeremy Martin)
-
Upgrade V8 to 3.0.4
-
Handle ECONNABORT properly (Theo Schlossnagle)
-
Fix memory leaks (Tom Hughes)
-
Add os.cpus(), os.freemem(), os.totalmem(), os.loadavg() and other functions for OSX, Linux, and Cygwin. (Brian White)
-
Fix REPL syntax error bug (GH-543), improve how REPL commands are evaluated.
-
Use process.stdin instead of process.openStdin().
-
Disable TLS tests when node doesn't have OpenSSL.
-
Rip out the old (broken) TLS implementation introduce new tested implementation and API. See docs. HTTPS not supported in this release.
-
Introduce 'os' and 'tty' modules.
-
Callback parameters for socket.write() and socket.connect().
-
Support CNAME lookups in DNS module. (Ben Noordhuis)
-
cmake support (Tom Hughes)
-
'make lint'
-
oprofile support (./configure --oprofile)
-
Lots of bug fixes, including:
- Memory leak in ChildProcess:Spawn(). (Tom Hughes)
- buffer.slice(0, 0)
- Global variable leaks
- clearTimeouts calling multiple times (Michael W)
- utils.inspect's detection of circular structures (Tim Cooijmans)
- Apple's threaded write()s bug (Jorge Chamorro Bieling)
- Make sure raw mode is disabled when exiting a terminal-based REPL. (Brian White)
-
Deprecate process.compile, process.ENV
-
Upgrade V8 to 3.0.3, upgrade http-parser.
-
TLS improvements (Paul Querna)
- Centralize error handling in SecureStream
- Add SecurePair for handling of a ssl/tls stream.
-
New documentation organization (Micheil Smith)
-
allowHalfOpen TCP connections disabled by default.
-
Add C++ API for constructing fast buffer from string
-
Move idle timers into its own module
-
Gracefully handle EMFILE and server.maxConnections
-
make "node --eval" eval in the global scope. (Jorge Chamorro Bieling)
-
Let exit listeners know the exit code (isaacs)
-
Handle cyclic links smarter in fs.realpath (isaacs)
-
Remove node-repl (just use 'node' without args)
-
Rewrite libeio After callback to use req->result instead of req->errorno for error checking (Micheil Smith)
-
Remove warning about deprecating 'sys' - too aggressive
-
Make writes to process.env update the real environment. (Ben Noordhuis)
-
Set FD_CLOEXEC flag on stdio FDs before spawning. (Guillaume Tuton)
-
Move ev_loop out of javascript
-
Switch \n with \r\n for all strings printed out.
-
Added support for cross compilation (Rasmus Andersson)
-
Add --profile flag to configure script, enables gprof profiling. (Ben Noordhuis)
-
writeFileSync could exhibit pathological behavior when a buffer could not be written to the file in a single write() call.
-
new path.join behavior (isaacs)
- Express desired path.join behavior in tests.
- Update fs.realpath to reflect new path.join behavior
- Update url.resolve() to use new path.join behavior.
-
API: Move process.binding('evals') to require('vm')
-
Fix V8 build on Cygwin (Bert Belder)
-
Add ref to buffer during fs.write and fs.read
-
Fix segfault on test-crypto
-
Upgrade http-parser to latest and V8 to 2.5.3
-
Bugfix: Do not spin on accept() with EMFILE
-
Improvements to readline.js (Trent Mick, Johan Euphrosine, Brian White)
-
Safe constructors (missing 'new' doesn't segfault)
-
Fix process.nextTick so thrown errors don't confuse it. (Benjamin Thomas)
-
Allow Strings for ports on net.Server.listen (Bradley Meck)
-
fs bugfixes (Tj Holowaychuk, Tobie Langel, Marco Rogers, isaacs)
-
http bug fixes (Fedor Indutny, Mikeal Rogers)
-
Faster buffers; breaks C++ API (Tim-Smart, Stéphan Kochen)
-
crypto, tls improvements (Paul Querna)
-
Add lfs flags to node addon script
-
Simpler querystring parsing; breaks API (Peter Griess)
-
HTTP trailers (Mark Nottingham)
-
http 100-continue support (Mark Nottingham)
-
Module system simplifications (Herbert Vojčík, isaacs, Tim-Smart)
- remove require.async
- remove registerExtension, add .extensions
- expose require.resolve
- expose require.cache
- require looks in node_modules folders
-
Add --eval command line option (TJ Holowaychuk)
-
Commas last in sys.inspect
-
Constants moved from process object to require('constants')
-
Fix parsing of linux memory (Vitali Lovich)
-
inspect shows function names (Jorge Chamorro Bieling)
-
uncaughtException corner cases (Felix Geisendörfer)
-
TCP clients now buffer writes before connection
-
Rename sys module to 'util' (Micheil Smith)
-
Properly set stdio handlers to blocking on SIGTERM and SIGINT (Tom Hughes)
-
Add destroy methods to HTTP messages
-
base64 improvements (isaacs, Jorge Chamorro Bieling)
-
API for defining REPL commands (Sami Samhuri)
-
child_process.exec timeout fix (Aaron Heckmann)
-
Upgrade V8 to 2.5.1, Libev to 4.00, libeio, http-parser
-
Make sure raw mode is disabled when exiting a terminal-based REPL. (Brian White)
-
Fix OpenSSL SSL_library_init function check on OpenBSD. (Brian White)
-
Fix test-http-allow-req-after-204-res.js
-
Fix length of arguments emitted by EventEmitter (Jeremy Martin)
-
Fix unhandled ECONNABORTED (Theo Schlossnagle)
-
Default to gcc for V8 build on Solaris (Trent Mick)
-
Fix various memory leaks (Tom Hughes)
-
Apple's threaded write()s bug (Jorge Chamorro Bieling)
-
Add ref to buffer during fs.write and fs.read. Sometimes buffers would be GCed before making it to the thread pool.
-
Fix http buffer pushing bug: http://groups.google.com/group/nodejs/browse_thread/thread/f66cd3c960406919
-
Gracefully handle EMFILE and server.maxConnections
-
"node --eval" evals in the global scope. (Jorge Chamorro Bieling)
-
Handle cyclic links smarter in fs.realpath (isaacs, Issue #167)
-
Rewrite libeio After callback to use req->result instead of req->errorno for error checking (Micheil Smith)
-
Removed range read optimization as it doesn't work with libeio. (Chandra Sekar S)
-
Make writes to process.env update the real environment (Ben Noordhuis)
-
Set FD_CLOEXEC flag on stdio FDs before spawning. (Guillaume Tuton)
-
Upgrade http-parser
-
Readline: Switch \n with \r\n for all strings printed out. Simplify displayPrompt
-
Fix segfault on test-crypto
-
Add --profile flag to configure script, enables gprof profiling. (Ben Noordhuis)
-
writeFileSync could exhibit pathological behavior when a buffer could not be written to the file in a single write() call. (isaacs)
-
Fix OS::GetExecutablePath for platform_none shouldn't return garbage.
-
Add --eval to command line options (TJ Holowaychuk)
-
net fixes
- TCP clients buffer writes before connection
- Don't flush net writeQueue on end() if its still connecting (Joshua Peek)
- Do not spin on aceept() with EMFILE
-
Add --max-stack-size flag. (Tom Hughes)
-
Fixes to child_process.exec (timeouts and proper termination) Default to SIGTERM instead of SIGKILL.
-
Add signal handlers so we clean up before exiting. (Tom Hughes)
-
Fix parsing of linux memory (Vitali Lovich)
-
http-parser: Allow whitespace in the 'Content-Length' header. (Nathan Rajlich)
-
Add flag to disable colors in REPL
-
Fix require in REPL (bug introduced in v0.2.2)
-
Pass correct message in client HTTP upgrade event. (Fedor Indutny)
-
Show function names in sys.inspect (Jorge Chamorro Bieling)
-
In HTTP, close connection on the "connection:close" header. (Mikeal Rogers)
-
fs.ReadStream bug fixes (Tj Holowaychuk, Evan Larkin, Marco Rogers)
-
Fix zero length buffer bug for http res.end()
-
REPL improvements (Trent Mick)
-
Fix bug in fs.realpath (Isaac Schlueter)
-
sys.pump catches errors (Russell Haering)
-
REPL improvements (Johan Euphrosine, Brian White)
-
nextTick bug fixes (Benjamin Thomas, Felix Geisendörfer, Trent Mick)
-
fs module bug fixes (Russell Haering, Marco Rogers, Tobie Langel, Isaac Schlueter)
-
Build script change for OpenEmbedded.
-
Most constrctuors work without 'new' now.
-
Allow Strings for ports on net.Server.listen (Bradley Meck)
-
setInterval(cb, 0) loops infinitely
-
Fixes for NODE_MODULE_CONTEXTS=1 (Herbert Vojčík)
-
Expose fingerproint from getPeerCertificate (Paul Querna)
-
API: forceClose -> destroy for WriteStreams
-
process.title support for FreeBSD, Macintosh, Linux
-
Fix OpenSSL 100% CPU usage on error (Illarionov Oleg)
-
Implement net.Server.maxConnections.
-
Fix process.platform, add process.version.
-
Add --without-snapshot configure option.
-
Readline REPL improvements (Trent Mick)
-
Bug fixes.
-
Upgrade V8 to 2.3.8
-
Various bug fixes (console, querystring, require)
-
Set cwd for child processes (Bert Belder)
-
Tab completion for readline (Trent Mick)
-
process.title getter/setter for OSX, Linux, Cygwin. (Rasmus Andersson, Bert Belder)
-
Upgrade V8 to 2.3.6
-
Implement keep-alive for http.Client (Mikeal Rogers)
-
base64 fixes. (Ben Noordhuis)
-
Fix --debug-brk (Danny Coates)
-
Don't let path.normalize get above the root. (Isaac Schlueter)
-
Allow signals to be used with process.on in addition to process.addListener. (Brian White)
-
Globalize the Buffer object
-
Use kqueue on recent macintosh builds
-
Fix addrlen for unix_dgram sockets (Benjamin Kramer)
-
Fix stats.isDirectory() and friends (Benjamin Kramer)
-
Upgrade http-parser, V8 to 2.3.5
-
base64 encoding for Buffers.
-
Buffer support for Cipher, Decipher, Hmac, Sign and Verify (Andrew Naylor)
-
Support for reading byte ranges from files using fs.createReadStream. (Chandra Sekar)
-
Fix Buffer.toString() on 0-length slices. (Peter Griess)
-
Cache modules based on filename rather than ID (Isaac Schlueter)
-
querystring improvments (Jan Kassens, Micheil Smith)
-
Support DEL in the REPL. (Jérémy Lal)
-
Upgrade http-parser, upgrade V8 to 2.3.2
-
Added env to child_process.exec (Сергей Крыжановский)
-
Allow modules to optionally be loaded in separate contexts with env var NODE_MODULE_CONTEXTS=1.
-
setTTL and setBroadcast for dgram (Matt Ranney)
-
Use execPath for default NODE_PATH, not installPrefix (Isaac Schlueter)
-
Support of console.dir + console.assert (Jerome Etienne)
-
on() as alias to addListener()
-
Use javascript port of Ronn to build docs (Jérémy Lal)
-
Upgrade V8 to 2.3.0
-
process.execPath (Marshall Culpepper)
-
sys.pump (Mikeal Rogers)
-
Remove ini and mjsunit libraries.
-
Introduce console.log() and friends.
-
Switch order of arguments for Buffer.write (Blake Mizerany)
-
On overlapping buffers use memmove (Matt Ranney)
-
Resolve .local domains with getaddrinfo()
-
Upgrade http-parser, V8 to 2.2.21
-
Datagram sockets (Paul Querna)
-
fs.writeFile could not handle utf8 (Felix Geisendörfer) and now accepts Buffers (Aaron Heckmann)
-
Fix crypto memory leaks.
-
A replacement for decodeURIComponent that doesn't throw. (Isaac Schlueter)
-
Only concatenate some incoming HTTP headers. (Peter Griess)
-
Upgrade V8 to 2.2.18
-
Port to Windows/Cygwin (Raffaele Sena)
-
File descriptor passing on unix sockets. (Peter Griess)
-
Simple, builtin readline library. REPL is now entered by executing "node" without arguments.
-
Add a parameter to spawn() that sets the child's stdio file descriptors. (Orlando Vazquez)
-
Upgrade V8 to 2.2.16, http-parser fixes, upgrade c-ares to 1.7.3.
-
HTTP throttling: outgoing messages emit 'drain' and write() returns false when send buffer is full.
-
API: readFileSync without encoding argument now returns a Buffer
-
Improve Buffer C++ API; addons now compile with debugging symbols.
-
Improvements to path.extname() and REPL; add fs.chown().
-
fs.ReadStream now emits buffers, fs.readFileSync returns buffers.
-
Bugfix: parsing HTTP responses to HEAD requests.
-
Port to OpenBSD.
-
Upgrade V8 to 2.2.12, libeio, http-parser.
-
Thrown errors in http and socket call back get bubbled up.
-
Add fs.fsync (Andrew Johnston)
-
Bugfix: signal unregistering (Jonas Pfenniger)
-
Added better error messages for async and sync fs calls with paths (TJ Holowaychuk)
-
Support arrays and strings in buffer constructor. (Felix Geisendörfer)
-
Fix errno reporting in DNS exceptions.
-
Support buffers in fs.WriteStream.write.
-
Bugfix: Safely decode a utf8 streams that are broken on a multbyte character (http and net). (Felix Geisendörfer)
-
Make Buffer's C++ constructor public.
-
Deprecate sys.p()
-
FIX path.dirname('/tmp') => '/'. (Jonathan Rentzsch)
-
Change GC idle notify so that it runs alongside setInterval
-
Install node_buffer.h on make install
-
fs.readFile returns Buffer by default (Tim Caswell)
-
Fix error reporting in child_process callbacks
-
Better logic for testing if an argument is a port
-
Improve error reporting (single line "node.js:176:9" errors)
-
Bugfix: Some http responses being truncated (appeared in 0.1.94)
-
Fix long standing net idle timeout bugs. Enable 2 minute timeout by default in HTTP servers.
-
Add fs.fstat (Ben Noordhuis)
-
Upgrade to V8 2.2.9
-
Look in /usr/local/lib/node for modules, so that there's a way to install modules globally (Issac Schlueter)
-
SSL improvements (Rhys Jones, Paulo Matias)
-
Added c-ares headers for linux-arm (Jonathan Knezek)
-
Add symbols to release build
-
HTTP upgrade improvements, docs (Micheil Smith)
-
HTTP server emits 'clientError' instead of printing message
-
Bugfix: Don't emit 'error' twice from http.Client
-
Bugfix: Ignore SIGPIPE
-
Bugfix: destroy() instead of end() http connection at end of pipeline
-
Bugfix: http.Client may be prematurely released back to the free pool. (Thomas Lee)
-
Upgrade V8 to 2.2.8
-
Fixed no 'end' event on long chunked HTTP messages http://github.com/ry/node/issues/#issue/77
-
Remove legacy modules http_old and tcp_old
-
Support DNS MX queries (Jérémy Lal)
-
Fix large socket write ([email protected])
-
Fix child process exit codes (Felix Geisendörfer)
-
Allow callers to disable PHP/Rails style parameter munging in querystring.stringify (Thomas Lee)
-
Upgrade V8 to 2.2.6
-
OpenSSL support. Still undocumented (see tests). (Rhys Jones)
-
API: Unhandled 'error' events throw.
-
Script class with eval-function-family in binding('evals') plus tests. (Herbert Vojcik)
-
stream.setKeepAlive (Julian Lamb)
-
Bugfix: Force no body on http 204 and 304
-
Upgrade Waf to 1.5.16, V8 to 2.2.4.2
-
Add incoming.httpVersion
-
Object.prototype problem with C-Ares binding
-
REPL can be run from multiple different streams. (Matt Ranney)
-
After V8 heap is compact, don't use a timer every 2 seconds.
-
Improve nextTick implementation.
-
Add primative support for Upgrading HTTP connections. (See commit log for docs 760bba5)
-
Add timeout and maxBuffer options to child_process.exec
-
Fix bugs.
-
Upgrade V8 to 2.2.3.1
- Merge writing of networking system (net2)
- New Buffer object for binary data.
- Support UNIX sockets, Pipes
- Uniform stream API
- Currently no SSL
- Legacy modules can be accessed at 'http_old' and 'tcp_old'
-
Replace udns with c-ares. (Krishna Rajendran)
-
New documentation system using Markdown and Ronn (Tim Caswell, Micheil Smith)
-
Better idle-time GC
-
Countless small bug fixes.
-
Upgrade V8 to 2.2.X, WAF 1.5.15
-
Include lib/ directory in node executable. Compile on demand.
-
evalcx clean ups (Isaac Z. Schlueter, Tim-Smart)
-
Various fixes, clean ups
-
V8 upgraded to 2.1.5
-
Optimize event emitter for single listener
-
Add process.evalcx, require.registerExtension (Tim Smart)
-
Replace --cflags with --vars
-
Fix bugs in fs.create*Stream (Felix Geisendörfer)
-
Deprecate process.mixin, process.unloop
-
Remove the 'Error: (no message)' exceptions, print stack trace instead
-
INI parser bug fixes (Isaac Schlueter)
-
FreeBSD fixes (Vanilla Hsu)
-
Upgrade to V8 2.1.3, WAF 1.5.14a, libev
-
API: - Move process.watchFile into fs module - Move process.inherits to sys
-
Improve Solaris port
-
tcp.Connection.prototype.write now returns boolean to indicate if argument was flushed to the kernel buffer.
-
Added fs.link, fs.symlink, fs.readlink, fs.realpath (Rasmus Andersson)
-
Add setgid,getgid (James Duncan)
-
Improve sys.inspect (Benjamin Thomas)
-
Allow passing env to child process (Isaac Schlueter)
-
fs.createWriteStream, fs.createReadStream (Felix Geisendörfer)
-
Add INI parser (Rob Ellis)
-
Bugfix: fs.readFile handling encoding (Jacek Becela)
-
Upgrade V8 to 2.1.2
-
Major API Changes
-
Promises removed. See http://groups.google.com/group/nodejs/msg/426f3071f3eec16b http://groups.google.com/group/nodejs/msg/df199d233ff17efa The API for fs was
fs.readdir("/usr").addCallback(function (files) { puts("/usr files: " + files); });
It is now
fs.readdir("/usr", function (err, files) { if (err) throw err; puts("/usr files: " + files); });
-
Synchronous fs operations exposed, use with care.
-
tcp.Connection.prototype.readPause() and readResume() renamed to pause() and resume()
-
http.ServerResponse.prototype.sendHeader() renamed to writeHeader(). Now accepts reasonPhrase.
-
-
Compact garbage on idle.
-
Configurable debug ports, and --debug-brk (Zoran Tomicic)
-
Better command line option parsing (Jeremy Ashkenas)
-
Add fs.chmod (Micheil Smith), fs.lstat (Isaac Z. Schlueter)
-
Fixes to process.mixin (Rasmus Andersson, Benjamin Thomas)
-
Upgrade V8 to 2.1.1
-
Major API Changes
- Remove 'file' module
- require('posix') -----------------> require('fs')
- fs.cat ---------------------------> fs.readFile
- file.write -----------------------> fs.writeFile
- TCP 'receive' event --------------> 'data'
- TCP 'eof' event ------------------> 'end'
- TCP send() -----------------------> write()
- HTTP sendBody() ------------------> write()
- HTTP finish() --------------------> close()
- HTTP 'body' event ----------------> 'data'
- HTTP 'complete' event ------------> 'end'
- http.Client.prototype.close() (formerly finish()) no longer takes an argument. Add the 'response' listener manually.
- Allow strings for the flag argument to fs.open ("r", "r+", "w", "w+", "a", "a+")
-
Added multiple arg support for sys.puts(), print(), etc. ([email protected])
-
sys.inspect(Date) now shows the date value (Mark Hansen)
-
Calculate page size with getpagesize for armel (Jérémy Lal)
-
Bugfix: stderr flushing.
-
Bugfix: Promise late chain (Yuichiro MASUI)
-
Bugfix: wait() on fired promises (Felix Geisendörfer, Jonas Pfenniger)
-
Bugfix: Use InstanceTemplate() instead of PrototypeTemplate() for accessor methods. Was causing a crash with Eclipse debugger. (Zoran Tomicic)
-
Bugfix: Throw from connection.connect if resolving. (Reported by James Golick)
-
Use Google's jsmin.py which can be used for evil.
-
Add posix.truncate()
-
Throw errors from server.listen()
-
stdio bugfix (test by Mikeal Rogers)
-
Module system refactor (Felix Geisendörfer, Blaine Cook)
-
Add process.setuid(), getuid() (Michael Carter)
-
sys.inspect refactor (Tim Caswell)
-
Multipart library rewrite (isaacs)
-
Implemented __dirname (Felix Geisendörfer)
-
Downcase process.ARGV, process.ENV, GLOBAL (now process.argv, process.env, global)
-
Bug Fix: Late promise promise callbacks firing (Felix Geisendörfer, Jonas Pfenniger)
-
Make assert.AssertionError instance of Error
-
Removed inline require call for querystring ([email protected])
-
Add support for MX, TXT, and SRV records in DNS module. (Blaine Cook)
-
Bugfix: HTTP client automatically reconnecting
-
Adding OS X .dmg build scripts. (Standa Opichal)
-
Bugfix: ObjectWrap memory leak
-
Bugfix: Multipart handle Content-Type headers with charset (Felix Geisendörfer)
-
Upgrade http-parser to fix header overflow attack.
-
Upgrade V8 to 2.1.0
-
Various other bug fixes, performance improvements.
-
Bugfix, HTTP eof causing crash (Ben Williamson)
-
Better error message on SyntaxError
-
API: Move Promise and EventEmitter into 'events' module
-
API: Add process.nextTick()
-
Allow optional params to setTimeout, setInterval (Micheil Smith)
-
API: change some Promise behavior (Felix Geisendörfer)
- Removed Promise.cancel()
- Support late callback binding
- Make unhandled Promise errors throw an exception
-
Upgrade V8 to 2.0.6.1
-
Solaris port (Erich Ocean)
-
sys.inspect() improvements (Tim Caswell)
-
path module improvements (isaacs, Benjamin Thomas)
-
API: request.uri -> request.url It is no longer an object, but a string. The 'url' module was addded to parse that string. That is, node no longer parses the request URL automatically.
require('url').parse(request.url)
is roughly equivlent to the old request.uri object. (isaacs)
-
Bugfix: Several libeio related race conditions.
-
Better errors for multipart library (Felix Geisendörfer)
-
Bugfix: Update node-waf version to 1.5.10
-
getmem for freebsd (Vanilla Hsu)
-
Bugfix: don't chunk responses to HTTP/1.0 clients, even if they send Connection: Keep-Alive (e.g. wget)
-
Bugfix: libeio race condition
-
Bugfix: Don't segfault on unknown http method
-
Simplify exception reporting
-
Upgrade V8 to 2.0.5.4
-
Bugfix: require("../blah") issues (isaacs)
-
Bugfix: posix.cat (Jonas Pfenniger)
-
Do not pause request for multipart parsing (Felix Geisendörfer)
-
Bugfix: child modules get wrong id with "index.js" (isaacs)
-
Bugfix: require("../foo") cycles (isaacs)
-
Bugfix: require() should throw error if module does.
-
New URI parser stolen from Narwhal (isaacs)
-
Bugfix: correctly check kqueue and epoll. (Rasmus Andersson)
-
Upgrade WAF to 1.5.10
-
Bugfix: posix.statSync() was crashing
-
Statically define string symbols for performance improvement
-
Bugfix: ARGV[0] weirdness
-
Added superCtor to ctor.super_ instead superCtor.prototype. (Johan Dahlberg)
-
http-parser supports webdav methods
-
API: http.Client.prototype.request() (Christopher Lenz)
-
Feature: Add HTTP client TLS support (Rhys Jones)
-
Bugfix: use --jobs=1 with WAF
-
Bugfix: Don't use chunked encoding for 1.0 requests
-
Bugfix: Duplicated header weren't handled correctly
-
Improve sys.inspect (Xavier Shay)
-
Upgrade v8 to 2.0.3
-
Use CommonJS assert API (Felix Geisendörfer, Karl Guertin)
-
Add gnutls version to configure script
-
Add V8 heap info to process.memoryUsage()
-
process.watchFile callback has 2 arguments with the stat object ([email protected])
-
Feature: Initial TLS support for TCP servers and clients. (Rhys Jones)
-
Add options to process.watchFile()
-
Add process.umask() (Friedemann Altrock)
-
Bugfix: only detach timers when active.
-
Bugfix: lib/file.js write(), shouldn't always emit errors or success ([email protected])
-
Bugfix: Memory leak in fs.write (Reported by [email protected])
-
Bugfix: Fix regular expressions detecting outgoing message headers. (Reported by Elliott Cable)
-
Improvements to Multipart parser (Felix Geisendörfer)
-
New HTTP parser
-
Upgrade v8 to 2.0.2
-
Feature: process.watchFile() process.unwatchFile()
-
Feature: "uncaughtException" event on process (Felix Geisendörfer)
-
Feature: 'drain' event to tcp.Connection
-
Bugfix: Promise.timeout() blocked the event loop (Felix Geisendörfer)
-
Bugfix: sendBody() and chunked utf8 strings (Felix Geisendörfer)
-
Supply the strerror as a second arg to the tcp.Connection close event (Johan Sørensen)
-
Add EventEmitter.removeListener ([email protected])
-
Format JSON for inspecting objects (Felix Geisendörfer)
-
Upgrade libev to latest CVS
-
Feature: process.chdir() (Brandon Beacher)
-
Revert http parser upgrade. (b893859c34f05db5c45f416949ebc0eee665cca6) Broke keep-alive.
-
API: rename process.inherits to sys.inherits
-
API: Use CommonJS-style module requiring
- require("/sys.js") becomes require("sys")
- require("circle.js") becomes require("./circle")
- process.path.join() becomes require("path").join()
- __module becomes module
-
API: Many namespacing changes
- Move node.* into process.*
- Move node.dns into module "dns"
- Move node.fs into module "posix"
- process is no longer the global object. GLOBAL is.
For more information on the API changes see: http://thread.gmane.org/gmane.comp.lang.javascript.nodejs/6 http://thread.gmane.org/gmane.comp.lang.javascript.nodejs/14
-
Feature: process.platform, process.memoryUsage()
-
Feature: promise.cancel() (Felix Geisendörfer)
-
Upgrade V8 to 1.3.18
-
Many build system fixes (esp. for OSX users)
-
Feature: promise.timeout() (Felix Geisendörfer)
-
Feature: Added external interface for signal handlers, process.pid, and process.kill() (Brandon Beacher)
-
API: Rename node.libraryPaths to require.paths
-
Bugfix: 'data' event for stdio should emit a string
-
Large file support
-
Upgrade http_parser
-
Upgrade v8 to 1.3.16
-
Feature: Improved addon builds with node-waf
-
Feature: node.SignalHandler (Brandon Beacher)
-
Feature: Enable V8 debugging (but still need to make a debugger)
-
API: Rename library /utils.js to /sys.js
-
Clean up Node's build system
-
Don't use parseUri for HTTP server
-
Remove node.pc
-
Don't use /bin/sh to create child process except with exec()
-
API: Add __module to reference current module
-
API: Remove include() add node.mixin()
-
Normalize http headers; "Content-Length" becomes "content-length"
-
Upgrade V8 to 1.3.15
-
Feature: Multipart stream parser (Felix Geisendörfer)
-
API: Move node.puts(), node.exec() and others to /utils.js
-
API: Move http, tcp libraries to /http.js and /tcp.js
-
API: Rename node.exit() to process.exit()
-
Bugfix: require() and include() should work in callbacks.
-
Pass the Host header in http.cat calls
-
Add warning when coroutine stack size grows too large.
-
Enhance repl library (Ray Morgan)
-
Bugfix: build script for GCC 4.4 (removed -Werror in V8), on Linux 2.4, and with Python 2.4.4.
-
Add read() and write() to /file.js to read and write whole files at once.
-
Feature: System modules, node.libraryPaths
-
API: Remove "raw" encoding, rename "raws" to "binary".
-
API: Added connection.setNoDElay() to disable Nagle algo.
-
Decrease default TCP server backlog to 128
-
Bugfix: memory leak involving node.fs.* methods.
-
Upgrade v8 to 1.3.13
-
API: default to utf8 encoding for node.fs.cat()
-
API: add node.exec()
-
API: node.fs.read() takes a normal encoding parameter.
-
API: Change arguments of emit(), emitSuccess(), emitError()
-
Bugfix: node.fs.write() was stack allocating buffer.
-
Bugfix: ReportException shouldn't forget the top frame.
-
Improve buffering for HTTP outgoing messages
-
Fix and reenable x64 macintosh build.
-
Upgrade v8 to 1.3.11
-
Feature: raw string encoding "raws"
-
Feature: access to environ through "ENV"
-
Feature: add isDirectory, isFile, isSocket, ... methods to stats object.
-
Bugfix: Internally use full paths when loading modules this fixes a shebang loading problem.
-
Bugfix: Add '--' command line argument for seperating v8 args from program args.
-
Add man page.
-
Add node-repl
-
Upgrade v8 to 1.3.10
-
Bugfix: Compile on Snow Leopard.
-
Bugfix: Malformed URIs raising exceptions.
-
Feature: External modules
-
Feature: setTimeout() for node.tcp.Connection
-
Feature: add node.cwd(), node.fs.readdir(), node.fs.mkdir()
-
Bugfix: promise.wait() releasing out of order.
-
Bugfix: Asyncly do getaddrinfo() on Apple.
-
Disable useless evcom error messages.
-
Better stack traces.
-
Built natively on x64.
-
Upgrade v8 to 1.3.9
-
Feature: global 'process' object. Emits "exit".
-
Feature: promise.wait()
-
Feature: node.stdio
-
Feature: EventEmitters emit "newListener" when listeners are added
-
API: Use flat object instead of array-of-arrays for HTTP headers.
-
API: Remove buffered file object (node.File)
-
API: require(), include() are synchronous. (Uses continuations.)
-
API: Deprecate onLoad and onExit.
-
API: Rename node.Process to node.ChildProcess
-
Refactor node.Process to take advantage of evcom_reader/writer.
-
Upgrade v8 to 1.3.7
- Bugfix: Ignore SIGPIPE.
-
Bugfix: Buggy connections could crash node.js. Now check connection before sending data every time (Kevin van Zonneveld)
-
Bugfix: stdin fd (0) being ignored by node.File. (Abe Fettig)
-
API: Remove connnection.fullClose()
-
API: Return the EventEmitter from addListener for chaining.
-
API: tcp.Connection "disconnect" event renamed to "close"
-
Upgrade evcom Upgrade v8 to 1.3.6
-
Major refactor to evcom.
-
Enable test-tcp-many-clients.
-
Add -m32 gcc flag to udns.
-
Add connection.readPause() and connection.readResume() Add IncomingMessage.prototype.pause() and resume().
-
Fix http benchmark. Wasn't correctly dispatching.
-
Bugfix: response.setBodyEncoding("ascii") not working.
-
Bugfix: Negative ints in HTTP's on_body and node.fs.read()
-
Upgrade v8 to 1.3.4 Upgrade libev to 3.8 Upgrade http_parser to v0.2
-
Upgrade v8 to 1.3.2
-
Bugfix: node.http.ServerRequest.setBodyEncoding('ascii') not working
-
Bugfix: node.encodeUtf8 was broken. (Connor Dunn)
-
Add ranlib to udns Makefile.
-
Upgrade evcom - fix accepting too many connections issue.
-
Initial support for shebang
-
Add simple command line switches
-
Add node.version API
-
Add DNS API
-
node.tcp.Server's backlog option is now an argument to listen()
-
Upgrade V8 to 1.3.1
-
Bugfix: Default to chunked for client requests without Content-Length.
-
Bugfix: Line numbers in stack traces.
-
Bugfix: negative integers in raw encoding stream
-
Bugfix: node.fs.File was not passing args to promise callbacks.
-
Simplify and clean up ObjectWrap.
-
Upgrade liboi (which is now called evcom) Upgrade libev to 3.7 Upgrade V8 to 1.2.14
-
Array.prototype.encodeUtf8 renamed to node.encodeUtf8(array)
-
Move EventEmitter.prototype.emit() completely into C++.
-
Bugfix: Fix memory leak in event emitters. http://groups.google.com/group/nodejs/browse_thread/thread/a8d1dfc2fd57a6d1
-
Bugfix: Had problems reading scripts with non-ascii characters.
-
Bugfix: Fix Detach() in node::Server
-
Bugfix: Sockets not properly reattached if reconnected during disconnect event.
-
Bugfix: Server-side clients not attached between creation and on_connect.
-
Add 'close' event to node.tcp.Server
-
Simplify and clean up http.js. (Takes more advantage of event infrastructure.)
-
Add benchmark scripts. Run with "make benchmark".
-
Update documentation, use asciidoc.
-
EventEmitter and Promise interfaces. (Breaks previous API.)
-
Remove node.Process constructor in favor of node.createProcess
-
Add -m32 flags for compiling on x64 platforms. (Thanks to András Bártházi)
-
Upgrade v8 to 1.2.10 and libev to 3.6
-
Bugfix: Timer::RepeatSetter wasn't working.
-
Bugfix: Spawning many processes in a loop (reported by Felix Geisendörfer)
-
Load modules via HTTP URLs (Urban Hafner)
-
Bugfix: Add HTTPConnection->size() and HTTPServer->size()
-
New node.Process API
-
Clean up build tools, use v8's test runner.
-
Use ev_unref() instead of starting/stopping the eio thread pool watcher.
-
Support for IPv6
-
Remove namespace node.constants
-
Upgrade v8 to 1.2.8.1
-
Accept ports as strings in the TCP client and server.
-
Bugfix: HTTP Client race
-
Bugfix: freeaddrinfo() wasn't getting called after getaddrinfo() for TCP servers
-
Add "opening" to TCP client readyState
-
Add remoteAddress to TCP client
-
Add global print() function.
-
Add interrupt() method to server-side HTTP requests.
-
Bugfix: onBodyComplete was not getting called on server-side HTTP
-
Many bug fixes including the problem with http.Client on macintosh
-
Upgrades v8 to 1.2.7
-
Adds onExit hook
-
Guard against buffer overflow in http parser
-
require() and include() now need the ".js" extension
-
http.Client uses identity transfer encoding by default.