dcaf95c5f9ae87d8292dac980f404fdf7ee35c17
[platform/upstream/nodejs.git] / ChangeLog
1 2013.01.18, Version 0.9.7 (Unstable)
2
3 * V8: Upgrade to 3.15.11.7
4
5 * npm: Upgrade to 1.2.2
6
7 * punycode: Upgrade to 1.2.0 (Mathias Bynens)
8
9 * repl: make built-in modules available by default (Felix Böhm)
10
11 * windows: add support for '_Total' perf counters (Scott Blomquist)
12
13 * cluster: make --prof work for workers (Ben Noordhuis)
14
15 * child_process: do not keep list of sent sockets (Fedor Indutny)
16
17 * tls: Follow RFC6125 more strictly (Fedor Indutny)
18
19 * buffer: floating point read/write improvements (Trevor Norris)
20
21 * TypedArrays: Improve dataview perf without endian param (Dean McNamee)
22
23 * module: assert require() called with a non-empty string (Felix Böhm, James Campos)
24
25 * stdio: Set readable/writable flags properly (isaacs)
26
27 * stream: Properly handle large reads from push-streams (isaacs)
28
29
30 2013.01.11, Version 0.9.6 (Unstable), 9313fdc71ca8335d5e3a391c103230ee6219b3e2
31
32 * V8: update to 3.15.11.5
33
34 * node: remove ev-emul.h (Ben Noordhuis)
35
36 * path: make basename and extname ignore trailing slashes (Bert Belder)
37
38 * typed arrays: fix sunos signed/unsigned char issue (Ben Noordhuis)
39
40 * child_process: Fix {stdio:'inherit'} regression (Ben Noordhuis)
41
42 * child_process: Fix pipe() from child stdio streams  (Maciej Małecki)
43
44 * child_process: make fork() execPath configurable (Bradley Meck)
45
46 * stream: Add readable.push(chunk) method (isaacs)
47
48 * dtrace: x64 ustack helper (Fedor Indutny)
49
50 * repl: fix floating point number parsing (Nirk Niggler)
51
52 * repl: allow overriding builtins (Ben Noordhuis)
53
54 * net: add localAddress and localPort to Socket (James Hight)
55
56 * fs: make pool size coincide with ReadStream bufferSize (Shigeki Ohtsu)
57
58 * typed arrays: implement load and store swizzling (Dean McNamee)
59
60 * windows: fix perfctr crash on XP and 2003 (Scott Blomquist)
61
62 * dgram: fix double implicit bind error (Ben Noordhuis)
63
64
65 2012.12.30, Version 0.9.5 (Unstable), 01994e8119c24f2284bac0779b32acb49c95bee7
66
67 * assert: improve support for new execution contexts (lukebayes)
68
69 * domain: use camelCase instead of snake_case (isaacs)
70
71 * domain: Do not use uncaughtException handler (isaacs)
72
73 * fs: make 'end' work with ReadStream without 'start' (Ben Noordhuis)
74
75 * https: optimize createConnection() (Ryunosuke SATO)
76
77 * buffer: speed up base64 encoding by 20% (Ben Noordhuis)
78
79 * doc: Colorize API stabilitity index headers in docs (Luke Arduini)
80
81 * net: socket.readyState corrections (bentaber)
82
83 * http: Performance enhancements for http under streams2 (isaacs)
84
85 * stream: fix to emit end event on http.ClientResponse (Shigeki Ohtsu)
86
87 * stream: fix event handler leak in readstream pipe and unpipe (Andreas Madsen)
88
89 * build: Support ./configure --tag switch (Maciej Małecki)
90
91 * repl: don't touch `require.cache` (Nathan Rajlich)
92
93 * node: Emit 'exit' event when exiting for an uncaught exception (isaacs)
94
95
96 2012.12.21, Version 0.9.4 (Unstable), d86d83c75f6343b5368bb7bd328b4466a035e1d4
97
98 * streams: Update all streaming interfaces to use new classes (isaacs)
99
100 * node: remove idle gc (Ben Noordhuis)
101
102 * http: protect against response splitting attacks (Bert Belder)
103
104 * fs: Raise error when null bytes detected in paths (isaacs)
105
106 * fs: fix 'object is not a function' callback errors (Ben Noordhuis)
107
108 * fs: add autoClose=true option to fs.createReadStream (Farid Neshat)
109
110 * process: add getgroups(), setgroups(), initgroups() (Ben Noordhuis)
111
112 * openssl: optimized asm code on x86 and x64 (Bert Belder)
113
114 * crypto: fix leak in GetPeerCertificate (Fedor Indutny)
115
116 * add systemtap support (Jan Wynholds)
117
118 * windows: add ETW and PerfCounters support (Scott Blomquist)
119
120 * windows: fix normalization of UNC paths (Bert Belder)
121
122 * crypto: fix ssl error handling (Sergey Kholodilov)
123
124 * node: remove eio-emul.h (Ben Noordhuis)
125
126 * os: add os.endianness() function (Nathan Rajlich)
127
128 * readline: don't emit "line" events with a trailing '\n' char (Nathan Rajlich)
129
130 * build: add configure option to generate xcode build files (Timothy J Fontaine)
131
132 * build: allow linking against system libuv, cares, http_parser (Stephen Gallagher)
133
134 * typed arrays: add slice() support to ArrayBuffer (Anthony Pesch)
135
136 * debugger: exit and kill child on SIGTERM or SIGHUP (Fedor Indutny)
137
138 * url: url.format escapes delimiters in path and query (J. Lee Coltrane)
139
140
141 2012.10.24, Version 0.9.3 (Unstable), 1ed4c6776e4f52956918b70565502e0f8869829d
142
143 * V8: Upgrade to 3.13.7.4
144
145 * crypto: Default to buffers instead of binary strings (isaacs, Fedor Indutny)
146
147 * crypto: add getHashes() and getCiphers() (Ben Noordhuis)
148
149 * unix: add custom thread pool, remove libeio (Ben Noordhuis)
150
151 * util: make `inspect()` accept an "options" argument (Nathan Rajlich)
152
153 * https: fix renegotation attack protection (Ben Noordhuis)
154
155 * cluster: make 'listening' handler see actual port (Aaditya Bhatia)
156
157 * windows: use USERPROFILE to get the user's home dir (Bert Belder)
158
159 * path: add platform specific path delimiter (Paul Serby)
160
161 * http: add response.headersSent property (Pavel Lang)
162
163 * child_process: make .fork()'d child auto-exit (Ben Noordhuis)
164
165 * events: add 'removeListener' event (Ben Noordhuis)
166
167 * string_decoder: Add 'end' method, do base64 properly (isaacs)
168
169 * buffer: include encoding value in exception when invalid (Ricky Ng-Adam)
170
171 * http: make http.ServerResponse no longer emit 'end' (isaacs)
172
173 * streams: fix pipe is destructed by 'end' from destination (koichik)
174
175
176 2012.09.17, Version 0.9.2 (Unstable), 6e2055889091a424fbb5c500bc3ab9c05d1c28b4
177
178 * http_parser: upgrade to ad3b631
179
180 * openssl: upgrade 1.0.1c
181
182 * darwin: use FSEvents to watch directory changes (Fedor Indutny)
183
184 * unix: support missing API on NetBSD (Shigeki Ohtsu)
185
186 * unix: fix EMFILE busy loop (Ben Noordhuis)
187
188 * windows: un-break writable tty handles (Bert Belder)
189
190 * windows: map WSAESHUTDOWN to UV_EPIPE (Bert Belder)
191
192 * windows: make spawn with custom environment work again (Bert Belder)
193
194 * windows: map ERROR_DIRECTORY to UV_ENOENT (Bert Belder)
195
196 * tls, https: validate server certificate by default (Ben Noordhuis)
197
198 * tls, https: throw exception on missing key/cert (Ben Noordhuis)
199
200 * tls: async session storage (Fedor Indutny)
201
202 * installer: don't install header files (Ben Noordhuis)
203
204 * buffer: implement Buffer.prototype.toJSON() (Nathan Rajlich)
205
206 * buffer: added support for writing NaN and Infinity (koichik)
207
208 * http: make http.ServerResponse emit 'end' (Ben Noordhuis)
209
210 * build: ./configure --ninja (Ben Noordhuis, Timothy J Fontaine)
211
212 * installer: fix --without-npm (Ben Noordhuis)
213
214 * cli: make -p equivalent to -pe (Ben Noordhuis)
215
216 * url: Go much faster by using Url class (isaacs)
217
218
219 2012.08.28, Version 0.9.1 (Unstable), e6ce259d2caf338fec991c2dd447de763ce99ab7
220
221 * buffer: Add Buffer.isEncoding(enc) to test for valid encoding values (isaacs)
222
223 * Raise UV_ECANCELED on premature close. (Ben Noordhuis)
224
225 * Remove c-ares from libuv, move to a top-level node dependency (Bert Belder)
226
227 * ref/unref for all HandleWraps, timers, servers, and sockets (Timothy J Fontaine)
228
229 * addon: remove node-waf, superseded by node-gyp (Ben Noordhuis)
230
231 * child_process: emit error on exec failure (Ben Noordhuis)
232
233 * cluster: do not use internal server API (Andreas Madsen)
234
235 * constants: add O_DIRECT (Ian Babrou)
236
237 * crypto: add sync interface to crypto.pbkdf2() (Ben Noordhuis)
238
239 * darwin: emulate fdatasync() (Fedor Indutny)
240
241 * dgram: make .bind() always asynchronous (Ben Noordhuis)
242
243 * events: Make emitter.listeners() side-effect free (isaacs, Joe Andaverde)
244
245 * fs: Throw early on invalid encoding args (isaacs)
246
247 * fs: fix naming of truncate/ftruncate functions (isaacs)
248
249 * http: bubble up parser errors to ClientRequest (Brian White)
250
251 * linux: improve cpuinfo parser on ARM and MIPS (Ben Noordhuis)
252
253 * net: add support for IPv6 addresses ending in :: (Josh Erickson)
254
255 * net: support Server.listen(Pipe) (Andreas Madsen)
256
257 * node: don't scan add-on for "init" symbol (Ben Noordhuis)
258
259 * remove process.uvCounters() (Ben Noordhuis)
260
261 * repl: console writes to repl rather than process stdio (Nathan Rajlich)
262
263 * timers: implement setImmediate (Timothy J Fontaine)
264
265 * tls: fix segfault in pummel/test-tls-ci-reneg-attack (Ben Noordhuis)
266
267 * tools: Move gyp addon tools to node-gyp (Nathan Rajlich)
268
269 * unix: preliminary signal handler support (Ben Noordhuis)
270
271 * unix: remove dependency on ev_child (Ben Noordhuis)
272
273 * unix: work around darwin bug, don't poll() on pipe (Fedor Indutny)
274
275 * util: Formally deprecate util.pump() (Ben Noordhuis)
276
277 * windows: make active and closing handle state independent (Bert Belder)
278
279 * windows: report spawn errors to the exit callback (Bert Belder)
280
281 * windows: signal handling support with uv_signal_t (Bert Belder)
282
283
284 2012.07.20, Version 0.9.0 (Unstable), f9b237f478c372fd55e4590d7399dcd8f25f3603
285
286 * punycode: update to v1.1.1 (Mathias Bynens)
287
288 * c-ares: upgrade to 1.9.0 (Saúl Ibarra Corretgé)
289
290 * dns: ignore rogue DNS servers reported by windows (Saúl Ibarra Corretgé)
291
292 * unix: speed up uv_async_send() (Ben Noordhuis)
293
294 * darwin: get cpu model correctly on mac (Xidorn Quan)
295
296 * nextTick: Handle tick callbacks before any other I/O (isaacs)
297
298 * Enable color customization of `util.inspect` (Pavel Lang)
299
300 * tls: Speed and memory improvements (Fedor Indutny)
301
302 * readline: Use one history item for reentered line (Vladimir Beloborodov)
303
304 * Fix #3521 Make process.env more like a regular Object (isaacs)
305
306
307 2013.01.18, Version 0.8.18 (Stable), 2c4eef0d972838c51999d32c0d251857a713dc18
308
309 * npm: Upgrade to v1.2.2
310
311 * dns: make error message match errno (Dan Milon)
312
313 * tls: follow RFC6125 more stricly (Fedor Indutny)
314
315 * buffer: reject negative SlowBuffer offsets (Ben Noordhuis)
316
317 * install: add simplejson fallback (Chris Dent)
318
319 * http: fix "Cannot call method 'emit' of null" (Ben Noordhuis)
320
321
322 2013.01.09, Version 0.8.17 (Stable), c50c33e9397d7a0a8717e8ce7530572907c054ad
323
324 * npm: Upgrade to v1.2.0
325   - peerDependencies (Domenic Denicola)
326   - node-gyp v0.8.2 (Nathan Rajlich)
327   - Faster installs from github user/project shorthands (Nathan Zadoks)
328
329 * typed arrays: fix 32 bit size/index overflow (Ben Noordhuis)
330
331 * http: Improve performance of single-packet responses (Ben Noordhuis)
332
333 * install: fix openbsd man page location (Ben Noordhuis)
334
335 * http: bubble up parser errors to ClientRequest (Brian White)
336
337
338 2012.12.13, Version 0.8.16 (Stable), 1c9c6277d5cfcaaac8569c0c8f7daa64292048a9
339
340 * npm: Upgrade to 1.1.69
341
342 * fs: fix WriteStream/ReadStream fd leaks (Ben Noordhuis)
343
344 * crypto: fix leak in GetPeerCertificate (Fedor Indutny)
345
346 * buffer: Don't double-negate numeric buffer arg (Trevor Norris)
347
348 * net: More accurate IP address validation and IPv6 dotted notation. (Joshua Erickson)
349
350
351 2012.11.26, Version 0.8.15 (Stable), fdf91afb494a7a2fff2913d817f589c191a2c88f
352
353 * npm: Upgrade to 1.1.66 (isaacs)
354
355 * linux: use /proc/cpuinfo for CPU frequency (Ben Noordhuis)
356
357 * windows: map WSAESHUTDOWN to UV_EPIPE (Ben Noordhuis)
358
359 * windows: map ERROR_GEN_FAILURE to UV_EIO (Bert Belder)
360
361 * unix: do not set environ unless one is provided (Charlie McConnell)
362
363 * domains: don't crash if domain is set to null (Bert Belder)
364
365 * windows: fix the x64 debug build (Bert Belder)
366
367 * net, tls: fix connect() resource leak (Ben Noordhuis)
368
369
370 2012.10.25, Version 0.8.14 (Stable), b00527fcf05c3d9f/b5d5d790f9472906a59fe218
371
372 * events: Don't clobber pre-existing _events obj in EE ctor (isaacs)
373
374
375 2012.10.25, Version 0.8.13 (Stable), ff4c974873f9a7cc6a5b042eb9b6389bb8dde6d6
376
377 * V8: Upgrade to 3.11.10.25
378
379 * npm: Upgrade to 1.1.65
380
381 * url: parse hostnames that start with - or _ (Ben Noordhuis)
382
383 * repl: Fix Windows 8 terminal issue (Bert Belder)
384
385 * typed arrays: use signed char for signed int8s (Aaron Jacobs)
386
387 * crypto: fix bugs in DiffieHellman (Ben Noordhuis)
388
389 * configure: turn on VFPv3 on ARMv7 (Ben Noordhuis)
390
391 * Re-enable OpenSSL UI for entering passphrases via tty (Ben Noordhuis)
392
393 * repl: ensure each REPL instance gets its own "context" (Nathan Rajlich)
394
395
396 2012.10.12, Version 0.8.12 (Stable), 38c72d4e29574dec5205bcf23c2a85efe65331a4
397
398 * npm: Upgrade to 1.1.63
399
400 * crypto: Reduce stability index to 2-Unstable (isaacs)
401
402 * windows: fix handle leak in uv_fs_utime (Bert Belder)
403
404 * windows: fix application crashed popup in debug version (Bert Belder)
405
406 * buffer: report proper retained size in profiler (Ben Noordhuis)
407
408 * buffer: fix byteLength with UTF-16LE (koichik)
409
410 * repl: make "end of input" JSON.parse() errors throw in the REPL (Nathan Rajlich)
411
412 * repl: make invalid RegExp modifiers throw in the REPL (Nathan Rajlich)
413
414 * http: handle multiple Proxy-Authenticate values (Willi Eggeling)
415
416
417 2012.09.27, Version 0.8.11 (Stable), e1f39468fa580c1e4cb15fac621f87944ee625dc
418
419 * fs: Fix stat() size reporting for large files (Ben Noordhuis)
420
421
422 2012.09.25, Version 0.8.10 (Stable), 0bc273da4fcaa79b209ed755ad249a3e7be626a6
423
424 * npm: Upgrade to 1.1.62
425
426 * repl: make invalid RegExps throw in the REPL (Nathan Rajlich)
427
428 * v8: loosen artificial mmap constraint (Bryan Cantrill)
429
430 * process: fix setuid() and setgid() error reporting (Ben Noordhuis)
431
432 * domain: Properly exit() on domain disposal (isaacs)
433
434 * fs: fix watchFile() missing deletion events (Ben Noordhuis)
435
436 * fs: fix assert in fs.watch() (Ben Noordhuis)
437
438 * fs: don't segfault on deeply recursive stat() (Ben Noordhuis)
439
440 * http: Remove timeout handler when data arrives (Frédéric Germain)
441
442 * http: make the client "res" object gets the same domain as "req" (Nathan Rajlich)
443
444 * windows: don't blow up when an invalid FD is used (Bert Belder)
445
446 * unix: map EDQUOT to UV_ENOSPC (Charlie McConnell)
447
448 * linux: improve /proc/cpuinfo parser (Ben Noordhuis)
449
450 * win/tty: reset background brightness when color is set to default (Bert Belder)
451
452 * unix: put child process stdio fds in blocking mode (Ben Noordhuis)
453
454 * unix: fix EMFILE busy loop (Ben Noordhuis)
455
456 * sunos: don't set TCP_KEEPALIVE (Ben Noordhuis)
457
458 * tls: Use slab allocator for memory management (Fedor Indutny)
459
460 * openssl: Use optimized assembly code for x86 and x64 (Bert Belder)
461
462
463 2012.09.11, Version 0.8.9 (Stable), b88c3902b241cf934e75443b934f2033ad3915b1
464
465 * v8: upgrade to 3.11.10.22
466
467 * GYP: upgrade to r1477
468
469 * npm: Upgrade to 1.1.61
470
471 * npm: Don't create world-writable files (isaacs)
472
473 * windows: fix single-accept mode for shared server sockets (Bert Belder)
474
475 * windows: fix uninitialized memory access in uv_update_time() (Bert Belder)
476
477 * windows: don't throw when a signal handler is attached (Bert Belder)
478
479 * unix: fix memory leak in udp (Ben Noordhuis)
480
481 * unix: map errno ESPIPE (Ben Noordhuis)
482
483 * unix, windows: fix memory corruption in fs-poll.c (Ben Noordhuis)
484
485 * sunos: fix os.cpus() on x86_64 (Ben Noordhuis)
486
487 * child process: fix processes with IPC channel don't emit 'close' (Bert Belder)
488
489 * build: add a "--dest-os" option to force a gyp "flavor" (Nathan Rajlich)
490
491 * build: set `process.platform` to "sunos" on SunOS (Nathan Rajlich)
492
493 * build: fix `make -j` fails after `make clean` (Bearice Ren)
494
495 * build: fix openssl configuration for "arm" builds (Nathan Rajlich)
496
497 * tls: support unix domain socket/named pipe in tls.connect (Shigeki Ohtsu)
498
499 * https: make https.get() accept a URL (koichik)
500
501 * http: respect HTTP/1.0 TE header (Ben Noordhuis)
502
503 * crypto, tls: Domainify setSNICallback, pbkdf2, randomBytes (Ben Noordhuis)
504
505 * stream.pipe: Don't call destroy() unless it's a function (isaacs)
506
507
508 2012.08.22, Version 0.8.8 (Stable), a299c97bbc701f4d460e91214d7bfe7a9589d361
509
510 * V8: upgrade to 3.11.10.19
511
512 * npm: upgrade to 1.1.59
513
514 * windows: fix uninitialized memory access in uv_update_time() (Bert Belder)
515
516 * unix, windows: fix memory corruption in fs-poll.c (Ben Noordhuis)
517
518 * unix: fix integer overflow in uv_hrtime (Tim Holy)
519
520 * sunos: fix uv_cpu_info() on x86_64 (Ben Noordhuis)
521
522 * tls: update default cipher list (Ben Noordhuis)
523
524 * unix: Fix llvm and older gcc duplicate symbol warnings (Bert Belder)
525
526 * fs: fix use after free in stat watcher (Ben Noordhuis)
527
528 * build: Fix using manually compiled gcc on OS X (Nathan Rajlich)
529
530 * windows: make junctions work again (Bert Belder)
531
532
533 2012.08.15, Version 0.8.7 (Stable), f640c5d35cba96634cd8176a525a1d876e361a61
534
535 * npm: Upgrade to 1.1.49
536
537 * website: download page (Golo Roden)
538
539 * crypto: fix uninitialized memory access in openssl (Ben Noordhuis)
540
541 * buffer, crypto: fix buffer decoding (Ben Noordhuis)
542
543 * build: compile with -fno-tree-vrp when gcc >= 4.0 (Ben Noordhuis)
544
545 * tls: handle multiple CN fields when verifying cert (Ben Noordhuis)
546
547 * doc: remove unused util from child_process (Kyle Robinson Young)
548
549 * build: rework -fvisibility=hidden detection (Ben Noordhuis)
550
551 * windows: don't duplicate invalid stdio handles (Bert Belder)
552
553 * windows: fix typos in process-stdio.c (Bert Belder)
554
555
556 2012.08.07, Version 0.8.6 (Stable), 0544a586ca6b6b900a42e164033dbf350765700a
557
558 * npm: Upgrade to v1.1.48
559
560 * Add 'make binary' to build binary tarballs for all Unixes (Nathan Rajlich)
561
562 * zlib: Emit 'close' on destroy(). (Dominic Tarr)
563
564 * child_process: Fix stdout=null when stdio=['pipe'] (Tyler Neylon)
565
566 * installer: prevent ETXTBSY errors (Ben Noordhuis)
567
568 * installer: honor --without-npm, default install path (Ben Noordhuis)
569
570 * net: make pause work with connecting sockets (Bert Belder)
571
572 * installer: fix cross-compile installs (Ben Noordhuis)
573
574 * net: fix .listen({fd:0}) (Ben Noordhuis)
575
576 * windows: map WSANO_DATA to UV_ENOENT (Bert Belder)
577
578
579 2012.08.02, Version 0.8.5 (Stable), 9b86a4453f0c76f2707a75c0b2343aba33ec63bc
580
581 * node: tag Encode and friends NODE_EXTERN (Ben Noordhuis)
582
583 * fs: fix ReadStream / WriteStream missing callback (Gil Pedersen)
584
585 * fs: fix readFileSync("/proc/cpuinfo") regression (Ben Noordhuis)
586
587 * installer: don't assume bash is installed (Ben Noordhuis)
588
589 * Report errors properly from --eval and stdin (isaacs)
590
591 * assert: fix throws() throws an error without message property (koichik)
592
593 * cluster: fix libuv assert in net.listen() (Ben Noordhuis)
594
595 * build: always link sunos builds with libumem (Trent Mick)
596
597 * build: improve armv7 / hard-float detection (Adam Malcontenti-Wilson)
598
599 * https: Use host header as effective servername (isaacs)
600
601 * sunos: work around OS bug to prevent fs.watch() from spinning (Bryan Cantrill)
602
603 * linux: fix 'two watchers, one path' segfault (Ben Noordhuis)
604
605 * windows: fix memory leaks in many fs functions (Bert Belder)
606
607 * windows: don't allow directories to be opened for writing/appending (Bert Belder)
608
609 * windows: make fork() work even when not all stdio handles are valid (Bert Belder)
610
611 * windows: make unlink() not remove mount points, and improve performance (Bert Belder)
612
613 * build: Sign pkg installer for OS X (isaacs)
614
615
616 2012.07.25, Version 0.8.4 (Stable), f98562fcd7d1cab573ca4dc1612157d6999befd4
617
618 * V8: Upgrade to 3.11.10.17
619
620 * npm: Upgrade to 1.1.45
621
622 * net: fix Socket({ fd: 42 }) api (Ben Noordhuis)
623
624 * readline: Remove event listeners on close (isaacs)
625
626 * windows: correctly prep long path for fs.exists(Sync) (Bert Belder)
627
628 * debugger: wake up the event loop when a debugger command is dispatched (Peter Rybin)
629
630 * tls: verify server's identity (Fedor Indutny)
631
632 * net: ignore socket.setTimeout(Infinity or NaN) (Fedor Indutny)
633
634
635 2012.07.19, Version 0.8.3 (Stable), 60bf2d6cb33e4ce55604f73889ab840a9de8bdab
636
637 * V8: upgrade to 3.11.10.15
638
639 * npm: Upgrade to 1.1.43
640
641 * net: fix net.Server.listen({fd:x}) error reporting (Ben Noordhuis)
642
643 * net: fix bogus errno reporting (Ben Noordhuis)
644
645 * build: Move npm shebang logic into an npm script (isaacs)
646
647 * build: fix add-on loading on freebsd (Ben Noordhuis)
648
649 * build: disable unsafe optimizations (Ben Noordhuis)
650
651 * build: fix spurious mksnapshot crashes for good (Ben Noordhuis)
652
653 * build: speed up genv8constants (Dave Pacheco)
654
655 * fs: make unwatchFile() remove a specific listener (Ben Noordhuis)
656
657 * domain: Remove first arg from intercepted fn (Toshihiro Nakamura)
658
659 * domain: Fix memory leak on error (isaacs)
660
661 * events: Fix memory leak from removeAllListeners (Nathan Rajlich)
662
663 * zlib: Fix memory leak in Unzip class. (isaacs)
664
665 * crypto: Fix memory leak in DecipherUpdate() (Ben Noordhuis)
666
667
668 2012.07.09, Version 0.8.2 (Stable), cc6084b9ac5cf1d4fe5e7165b71e8fc05d11be1f
669
670 * npm: Upgrade to 1.1.36
671
672 * readline: don't use Function#call() (Nathan Rajlich)
673
674 * Code cleanup to pass 'use strict' (Jonas Westerlund)
675
676 * module: add filename to require() json errors (TJ Holowaychuk)
677
678 * readline: fix for unicode prompts (Tim Macfarlane)
679
680 * timers: fix handling of large timeouts (Ben Noordhuis)
681
682 * repl: fix passing an empty line inserting "undefined" into the buffer (Nathan Rajlich)
683
684 * repl: fix crashes when buffering command (Maciej Małecki)
685
686 * build: rename strict_aliasing to node_no_strict_aliasing (Ben Noordhuis)
687
688 * build: disable -fstrict-aliasing for any gcc < 4.6.0 (Ben Noordhuis)
689
690 * build: detect cc version with -dumpversion (Ben Noordhuis)
691
692 * build: handle output of localized gcc or clang (Ben Noordhuis)
693
694 * unix: fix memory corruption in freebsd.c (Ben Noordhuis)
695
696 * unix: fix 'zero handles, one request' busy loop (Ben Noordhuis)
697
698 * unix: fix busy loop on unexpected tcp message (Ben Noordhuis)
699
700 * unix: fix EINPROGRESS busy loop (Ben Noordhuis)
701
702
703 2012.06.29, Version 0.8.1 (stable), 2134aa3d5c622fc3c3b02ccb713fcde0e0df479a
704
705 * V8: upgrade to v3.11.10.12
706
707 * npm: upgrade to v1.1.33
708   - Support for parallel use of the cache folder
709   - Retry on registry timeouts or network failures (Trent Mick)
710   - Reduce 'engines' failures to a warning
711   - Use new zsh completion if aviailable (Jeremy Cantrell)
712
713 * Fix #3577 Un-break require('sys')
714
715 * util: speed up formatting of large arrays/objects (Ben Noordhuis)
716
717 * windows: make fs.realpath(Sync) work with UNC paths (Bert Belder)
718
719 * build: fix --shared-v8 option (Ben Noordhuis)
720
721 * doc: `detached` is a boolean (Andreas Madsen)
722
723 * build: use proper python interpreter (Ben Noordhuis)
724
725 * build: expand ~ in `./configure --prefix=~/a/b/c` (Ben Noordhuis)
726
727 * build: handle CC env var with spaces (Gabriel de Perthuis)
728
729 * build: fix V8 build when compiling with gcc 4.5 (Ben Noordhuis)
730
731 * build: fix --shared-v8 option (Ben Noordhuis)
732
733 * windows msi: Fix icon issue which caused huge file size (Bert Belder)
734
735 * unix: assume that dlopen() may clobber dlerror() (Ben Noordhuis)
736
737 * sunos: fix memory corruption bugs (Ben Noordhuis)
738
739 * windows: better (f)utimes and (f)stat (Bert Belder)
740
741
742 2012.06.25, Version 0.8.0 (stable), 8b8a7a7f9b41e74e1e810d0330738ad06fc302ec
743
744 * V8: upgrade to v3.11.10.10
745
746 * npm: Upgrade to 1.1.32
747
748 * Deprecate iowatcher (Ben Noordhuis)
749
750 * windows: update icon (Bert Belder)
751
752 * http: Hush 'MUST NOT have a body' warnings to debug() (isaacs)
753
754 * Move blog.nodejs.org content into repository (isaacs)
755
756 * Fix #3503: stdin: resume() on pipe(dest) (isaacs)
757
758 * crypto: fix error reporting in SetKey() (Fedor Indutny)
759
760 * Add --no-deprecation and --trace-deprecation command-line flags (isaacs)
761
762 * fs: fix fs.watchFile() (Ben Noordhuis)
763
764 * fs: Fix fs.readfile() on pipes (isaacs)
765
766 * Rename GYP variable node_use_system_openssl to be consistent (Ryan Dahl)
767
768
769 2012.06.19, Version 0.7.12 (unstable), a72120190a8ffdbcd3d6ad2a2e6ceecd2087111e
770
771 * npm: Upgrade to 1.1.30
772         - Improved 'npm init'
773         - Fix the 'cb never called' error from 'oudated' and 'update'
774         - Add --save-bundle|-B config
775         - Fix isaacs/npm#2465: Make npm script and windows shims cygwin-aware
776         - Fix isaacs/npm#2452 Use --save(-dev|-optional) in npm rm
777         - `logstream` option to replace removed `logfd` (Rod Vagg)
778         - Read default descriptions from README.md files
779
780 * Shims to support deprecated ev_* and eio_* methods (Ben Noordhuis)
781
782 * #3118 net.Socket: Delay pause/resume until after connect (isaacs)
783
784 * #3465 Add ./configure --no-ifaddrs flag (isaacs)
785
786 * child_process: add .stdin stream to forks (Fedor Indutny)
787
788 * build: fix `make install DESTDIR=/path` (Ben Noordhuis)
789
790 * tls: fix off-by-one error in renegotiation check (Ben Noordhuis)
791
792 * crypto: Fix diffie-hellman key generation UTF-8 errors (Fedor Indutny)
793
794 * node: change the constructor name of process from EventEmitter to process (Andreas Madsen)
795
796 * net: Prevent property access throws during close (Reid Burke)
797
798 * querystring: improved speed and code cleanup (Felix Böhm)
799
800 * sunos: fix assertion errors breaking fs.watch() (Fedor Indutny)
801
802 * unix: stat: detect sub-second changes (Ben Noordhuis)
803
804 * add stat() based file watcher (Ben Noordhuis)
805
806
807 2012.06.15, Version 0.7.11 (unstable), 5cfe0b86d5be266ef51bbba369c39e412ee51944
808
809 * V8: Upgrade to v3.11.10
810
811 * npm: Upgrade to 1.1.26
812
813 * doc: Improve cross-linking in API docs markdown (Ben Kelly)
814
815 * Fix #3425: removeAllListeners should delete array (Reid Burke)
816
817 * cluster: don't silently drop messages when the write queue gets big (Bert Belder)
818
819 * Add Buffer.concat method (isaacs)
820
821 * windows: make symlinks tolerant to forward slashes (Bert Belder)
822
823 * build: Add node.d and node.1 to installer (isaacs)
824
825 * cluster: rename worker.unqiueID to worker.id (Andreas Madsen)
826
827 * Windows: Enable ETW events on Windows for existing DTrace probes. (Igor Zinkovsky)
828
829 * test: bundle node-weak in test/gc so that it doesn't need to be downloaded (Nathan Rajlich)
830
831 * Make many tests pass on Windows (Bert Belder)
832
833 * Fix #3388 Support listening on file descriptors (isaacs)
834
835 * Fix #3407 Add os.tmpDir() (isaacs)
836
837 * Unbreak the snapshotted build on Windows (Bert Belder)
838
839 * Clean up child_process.kill throws (Bert Belder)
840
841 * crypto: make cipher/decipher accept buffer args (Ben Noordhuis)
842
843
844 2012.06.11, Version 0.7.10 (unstable), 12a32a48a30182621b3f8e9b9695d1946b53c131
845
846 * Roll V8 back to 3.9.24.31
847
848 * build: x64 target should always pass -m64 (Robert Mustacchi)
849
850 * add NODE_EXTERN to node::Start (Joel Brandt)
851
852 * repl: Warn about running npm commands (isaacs)
853
854 * slab_allocator: fix crash in dtor if V8 is dead (Ben Noordhuis)
855
856 * slab_allocator: fix leak of Persistent handles (Shigeki Ohtsu)
857
858 * windows/msi: add node.js prompt to startmenu (Jeroen Janssen)
859
860 * windows/msi: fix adding node to PATH (Jeroen Janssen)
861
862 * windows/msi: add start menu links when installing (Jeroen Janssen)
863
864 * windows: don't install x64 version into the 'program files (x86)' folder (Matt Gollob)
865
866 * domain: Fix #3379 domain.intercept no longer passes error arg to cb (Marc Harter)
867
868 * fs: make callbacks run in global context (Ben Noordhuis)
869
870 * fs: enable fs.realpath on windows (isaacs)
871
872 * child_process: expose UV_PROCESS_DETACHED as options.detached (Charlie McConnell)
873
874 * child_process: new stdio API for .spawn() method (Fedor Indutny)
875
876 * child_process: spawn().ref() and spawn().unref() (Fedor Indutny)
877
878 * Upgrade npm to 1.1.25
879         - Enable npm link on windows
880         - Properly remove sh-shim on Windows
881         - Abstract out registry client and logger
882
883
884 2012.05.28, Version 0.7.9 (unstable), 782277f11a753ded831439ed826448c06fc0f356
885
886 * Upgrade V8 to 3.11.1
887
888 * Upgrade npm to 1.1.23
889
890 * uv: rework reference counting scheme (Ben Noordhuis)
891
892 * uv: add interface for joining external event loops (Bert Belder)
893
894 * repl, readline: Handle Ctrl+Z and SIGCONT better (Nathan Rajlich)
895
896 * fs: 64bit offsets for fs calls (Igor Zinkovsky)
897
898 * fs: add sync open flags 'rs' and 'rs+' (Kevin Bowman)
899
900 * windows: enable creating directory junctions with fs.symlink (Igor Zinkovsky, Bert Belder)
901
902 * windows: fix fs.lstat to properly detect symlinks. (Igor Zinkovsky)
903
904 * Fix #3270 Escape url.parse delims (isaacs)
905
906 * http: make http.get() accept a URL (Adam Malcontenti-Wilson)
907
908 * Cleanup vm module memory leakage (Marcel Laverdet)
909
910 * Optimize writing strings with Socket.write (Bert Belder)
911
912 * add support for CESU-8 and UTF-16LE encodings (koichik)
913
914 * path: add path.sep to get the path separator. (Yi, EungJun)
915
916 * net, http: add backlog parameter to .listen() (Erik Dubbelboer)
917
918 * debugger: support mirroring Date objects (Fedor Indutny)
919
920 * addon: add AtExit() function (Ben Noordhuis)
921
922 * net: signal localAddress bind failure in connect (Brian Schroeder)
923
924 * util: handle non-string return value in .inspect() (Alex Kocharin)
925
926
927 2012.04.18, Version 0.7.8 (unstable), c2b47097c0b483552efc1947c6766fa1128600b6
928
929 * Upgrade V8 to 3.9.24.9
930
931 * Upgrade OpenSSL to 1.0.0f
932
933 * Upgrade npm to 1.1.18
934
935 * Show licenses in Binary installers
936
937 * Domains (isaacs)
938
939 * readline: rename "end" to "close" (Nathan Rajlich)
940
941 * tcp: make getsockname() return address family as string (Shigeki Ohtsu)
942
943 * http, https: fix .setTimeout() (ssuda)
944
945 * os: add cross platform EOL character (Mustansir Golawala)
946
947 * typed arrays: unexport SizeOfArrayElementForType() (Aaron Jacobs)
948
949 * net: honor 'enable' flag in .setNoDelay() (Ben Noordhuis)
950
951 * child_process: emit error when .kill fails (Andreas Madsen)
952
953 * gyp: fix 'argument list too long' build error (Ben Noordhuis)
954
955 * fs.WriteStream: Handle modifications to fs.open (isaacs)
956
957 * repl, readline: Handle newlines better (Nathan Rajlich, Nathan Friedly)
958
959 * build: target OSX 10.5 when building on darwin (Nathan Rajlich)
960
961 * Fix #3052 Handle errors properly in zlib (isaacs)
962
963 * build: add support for DTrace and postmortem (Dave Pacheco)
964
965 * core: add reusable Slab allocator (Ben Noordhuis)
966
967
968 2012.03.30, Version 0.7.7 (unstable), 5cda2542fdb086f9fe5de889bea435a65e377dea
969
970 * Upgrade V8 to 3.9.24.7
971
972 * Upgrade npm to 1.1.15
973
974 * Handle Emoji characters properly (Erik Corry, Bert Belder)
975
976 * readline: migrate ansi/vt100 logic from tty to readline (Nathan Rajlich)
977
978 * readline: Fix multiline handling (Alex Kocharin)
979
980 * add a -i/--interactive flag to force the REPL (Nathan Rajlich)
981
982 * debugger: add breakOnException command (Fedor Indutny)
983
984 * cluster: kill workers when master dies (Andreas Madsen)
985
986 * cluster: add graceful disconnect support (Andreas Madsen)
987
988 * child_process: Separate 'close' event from 'exit' (Charlie McConnell)
989
990 * typed arrays: add Uint8ClampedArray (Mikael Bourges-Sevenier)
991
992 * buffer: Fix byte alignment issues (Ben Noordhuis, Erik Lundin)
993
994 * tls: fix CryptoStream.setKeepAlive() (Shigeki Ohtsu)
995
996 * Expose http parse error codes (Felix Geisendörfer)
997
998 * events: don't delete the listeners array (Ben Noordhuis, Nathan Rajlich)
999
1000 * process: add process.config to view node's ./configure settings (Nathan Rajlich)
1001
1002 * process: process.execArgv to see node's arguments (Micheil Smith)
1003
1004 * process: fix process.title setter (Ben Noordhuis)
1005
1006 * timers: handle negative or non-numeric timeout values (Ben Noordhuis)
1007
1008
1009 2012.03.13, Version 0.7.6 (unstable), f06abda6f58e517349d1b63a2cbf5a8d04a03505
1010
1011 * Upgrade v8 to 3.9.17
1012
1013 * Upgrade npm to 1.1.8
1014   - Add support for os/cpu fields in package.json (Adam Blackburn)
1015   - Automatically node-gyp packages containing a binding.gyp
1016   - Fix failures unpacking in UNC shares
1017   - Never create un-listable directories
1018   - Handle cases where an optionalDependency fails to build
1019
1020 * events: newListener emit correct fn when using 'once' (Roly Fentanes)
1021
1022 * url: Ignore empty port component (Łukasz Walukiewicz)
1023
1024 * module: replace 'children' array (isaacs)
1025
1026 * tls: parse multiple values of a key in ssl certificate (Sambasiva Suda)
1027
1028 * cluster: support passing of named pipes (Ben Noordhuis)
1029
1030 * Windows: include syscall in fs errors (Bert Belder)
1031
1032 * http: #2888 Emit end event only once (Igor Zinkovsky)
1033
1034 * readline: add multiline support (Rlidwka)
1035
1036 * process: add `process.hrtime()` (Nathan Rajlich)
1037
1038 * net, http, https: add localAddress option (Dmitry Nizovtsev)
1039
1040 * addon improvements (Nathan Rajlich)
1041
1042 * build improvements (Ben Noordhuis, Sadique Ali, T.C. Hollingsworth, Nathan Rajlich)
1043
1044 * add support for "SEARCH" request methods (Nathan Rajlich)
1045
1046 * expose the zlib and http_parser version in process.versions (Nathan Rajlich)
1047
1048
1049 2012.02.23, Version 0.7.5 (unstable), d384b8b0d2ab7f05465f0a3e15fe20b4e25b5f86
1050
1051 * startup speed improvements (Maciej Małecki)
1052
1053 * crypto: add function getDiffieHellman() (Tomasz Buchert)
1054
1055 * buffer: support decoding of URL-safe base64 (Ben Noordhuis)
1056
1057 * Make QueryString.parse() even faster (Brian White)
1058
1059 * url: decode url entities in auth section (Ben Noordhuis)
1060
1061 * http: support PURGE request method (Ben Noordhuis)
1062
1063 * http: Generate Date headers on responses (Mark Nottingham)
1064
1065 * Fix #2762: Add callback to close function. (Mikeal Rogers)
1066
1067 * dgram: fix out-of-bound memory read (Ben Noordhuis)
1068
1069 * repl: add automatic loading of built-in libs (Brandon Benvie)
1070
1071 * repl: remove double calls where possible (Fedor Indutny)
1072
1073 * Readline improvements. Related: #2737 #2756 (Colton Baker)
1074
1075 * build: disable -fomit-frame-pointer on solaris (Dave Pacheco)
1076
1077 * build: arch detection improvements (Nathan Rajlich)
1078
1079 * build: Make a fat binary for the OS X `make pkg`. (Nathan Rajlich)
1080
1081 * jslint src/ and lib/ on 'make test' (isaacs)
1082
1083
1084
1085 2012.02.14, Version 0.7.4 (unstable), de21de920cf93ec40736ada3792a7f85f3eadeda
1086
1087 * Upgrade V8 to 3.9.5
1088
1089 * Upgrade npm to 1.1.1
1090
1091 * build: Detect host_arch better (Karl Skomski)
1092
1093 * debugger: export `debug_port` to `process` (Fedor Indutny)
1094
1095 * api docs: CSS bug fixes (isaacs)
1096
1097 * build: use -fPIC for native addons on UNIX (Nathan Rajlich)
1098
1099 * Re-add top-level v8::Locker (Marcel Laverdet)
1100
1101 * Move images out of the dist tarballs (isaacs)
1102
1103 * libuv: Remove uv_export and uv_import (Ben Noordhuis)
1104
1105 * build: Support x64 build on Windows (Igor Zinkovsky)
1106
1107
1108 2012.02.07, Version 0.7.3 (unstable), 99059aad8d654acda4abcfaa68df182b50f2ec90
1109
1110 * Upgrade V8 to 3.9.2
1111
1112 * Revert support for isolates. (Ben Noordhuis)
1113
1114 * cluster: Cleanup docs, event handling, and process.disconnect (Andreas Madsen)
1115
1116 * gyp_addon: link with node.lib on Windows (Nathan Rajlich)
1117
1118 * http: fix case where http-parser is freed twice (koichik)
1119
1120 * Windows: disable RTTI and exceptions (Bert Belder)
1121
1122
1123 2012.02.01, Version 0.7.2 (unstable), ec79acb3a6166e30f0bf271fbbfda1fb575b3321
1124
1125 * Update V8 to 3.8.9
1126
1127 * Support for sharing streams across Isolates (Igor Zinkovsky)
1128
1129 * #2636 - Fix case where http_parsers are freed too early (koichik)
1130
1131 * url: Support for IPv6 addresses in URLs (Łukasz Walukiewicz)
1132
1133 * child_process: Add disconnect() method to child processes (Andreas Madsen)
1134
1135 * fs: add O_EXCL support, exclusive open file (Ben Noordhuis)
1136
1137 * fs: more specific error messages (Tj Holowaychuk)
1138
1139 * tty: emit 'unknown' key event if key sequence not found (Dan VerWeire, Nathan Rajlich)
1140
1141 * build: compile release build too if BUILDTYPE=Debug (Ben Noordhuis)
1142
1143 * module: fix --debug-brk on symlinked scripts (Fedor Indutny)
1144
1145 * zlib: fix `Failed to set dictionary` issue (Fedor Indutny)
1146
1147 * waf: predict target arch for OS X (Fedor Indutny)
1148
1149
1150 2012.01.23, Version 0.7.1 (unstable), a74354735ab5d5b0fa35a1e4ff7e653757d2069b
1151
1152 * Update V8 to 3.8.8
1153
1154 * Install node-waf by default (Fedor Indutny)
1155
1156 * crypto: Add ability to turn off PKCS padding (Ingmar Runge)
1157
1158 * v8: implement VirtualMemory class on SunOS (Ben Noordhuis)
1159
1160 * Add cluster.setupMaster (Andreas Madsen)
1161
1162 * move `path.exists*` to `fs.exists*` (Maciej Małecki)
1163
1164 * typed arrays: set class name (Ben Noordhuis)
1165
1166 * libuv bug fixes (Igor Zinkovsky, Ben Noordhuis, Dan VerWeire)
1167
1168
1169 2012.01.16, Version 0.7.0 (unstable), 9cc55dca6f67a6096c858b841c677b0593404321
1170
1171 * Upgrade V8 to 3.8.6
1172
1173 * Use GYP build system on unix (Ben Noordhuis)
1174
1175 * Experimenetal isolates support (Ben Noordhuis)
1176
1177 * Improvements to Cluster API (Andreas Madsen)
1178
1179 * Use isolates for internal debugger (Fedor Indutny)
1180
1181 * Bug fixes
1182
1183
1184 2012.07.10 Version 0.6.20 (maintenance), 952e513379169ec1b40909d1db056e9bf4294899
1185
1186 * npm: Upgrade to 1.1.37 (isaacs)
1187
1188 * benchmark: Backport improvements made in master (isaacs)
1189
1190 * build: always link with -lz (Trent Mick)
1191
1192 * core: use proper #include directives (Ben Noordhuis)
1193
1194 * cluster: don't silently drop messages when the write queue gets big (Bert Belder)
1195
1196 * windows: don't print error when GetConsoleTitleW returns an empty string (Bert Belder)
1197
1198
1199 2012.06.06 Version 0.6.19 (stable), debf552ed2d4a53957446e82ff3c52a8182d5ff4
1200
1201 * npm: upgrade to 1.1.24
1202
1203 * fs: no end emit after createReadStream.pause() (Andreas Madsen)
1204
1205 * vm: cleanup module memory leakage (Marcel Laverdet)
1206
1207 * unix: fix loop starvation under high network load (Ben Noordhuis)
1208
1209 * unix: remove abort() in ev_unref() (Ben Noordhuis)
1210
1211 * windows/tty: never report error after forcibly aborting line-buffered read (Bert Belder)
1212
1213 * windows: skip GetFileAttributes call when opening a file (Bert Belder)
1214
1215
1216 2012.05.15 Version 0.6.18 (stable), 4bc1d395de6abed2cf1e4d0b7b3a1480a21c368f
1217
1218 * windows: skip GetFileAttributes call when opening a file (Bert Belder)
1219
1220 * crypto: add PKCS12/PFX support (Sambasiva Suda)
1221
1222 * #3240: child_process: delete NODE_CHANNEL_FD from env in spawn (Ben Noordhuis)
1223
1224 * windows: add test for path.normalize with UNC paths (Bert Belder)
1225
1226 * windows: make path.normalize convert all slashes to backslashes (Bert Belder)
1227
1228 * fs: Automatically close FSWatcher on error (Bert Belder)
1229
1230 * #3258: fs.ReadStream.pause() emits duplicate data event (koichik)
1231
1232 * pipe_wrap: don't assert() on pipe accept errors (Ben Noordhuis)
1233
1234 * Better exception output for module load and process.nextTick (Felix Geisendörfer)
1235
1236 * zlib: fix error reporting (Ben Noordhuis)
1237
1238 * http: Don't destroy on timeout (isaacs)
1239
1240 * #3231: http: Don't try to emit error on a null'ed req object (isaacs)
1241
1242 * #3236: http: Refactor ClientRequest.onSocket (isaacs)
1243
1244
1245 2012.05.04 Version 0.6.17 (stable), 4ced23deaf36493f4303a18f6fdce768c58becc0
1246
1247 * Upgrade npm to 1.1.21
1248
1249 * uv: Add support for EROFS errors (Ben Noordhuis, Maciej Małecki)
1250
1251 * uv: Add support for EIO and ENOSPC errors (Fedor Indutny)
1252
1253 * windows: Add support for EXDEV errors (Bert Belder)
1254
1255 * http: Fix client memory leaks (isaacs, Vincent Voyer)
1256
1257 * fs: fix file descriptor leak in sync functions (Ben Noordhuis)
1258
1259 * fs: fix ReadStream / WriteStream double close bug (Ben Noordhuis)
1260
1261
1262 2012.04.30 Version 0.6.16 (stable), a1d193963ddc80a27da5da01b59751e14e33d1d6
1263
1264 * Upgrade V8 to 3.6.6.25
1265
1266 * Upgrade npm to 1.1.19
1267
1268 * Windows: add mappings for UV_ENOENT (Bert Belder)
1269
1270 * linux: add IN_MOVE_SELF to inotify event mask (Ben Noordhuis)
1271
1272 * unix: call pipe handle connection cb on accept() error (Ben Noordhuis)
1273
1274 * unix: handle EWOULDBLOCK (Ben Noordhuis)
1275
1276 * map EWOULDBLOCK to UV_EAGAIN (Ben Noordhuis)
1277
1278 * Map ENOMEM to UV_ENOMEM (isaacs)
1279
1280 * Child process: support the `gid` and `uid` options (Bert Belder)
1281
1282 * test: cluster: add worker death event test (Ben Noordhuis)
1283
1284 * typo in node_http_parser (isaacs)
1285
1286 * http_parser: Eat CRLF between requests, even on connection:close. (Ben Noordhuis)
1287
1288 * don't check return value of unsetenv (Ben Noordhuis)
1289
1290
1291 2012.04.09 Version 0.6.15 (stable), f160a45b254e591eb33716311c92be533c6d86c4
1292
1293 * Update npm to 1.1.16
1294
1295 * Show licenses in binary installers.
1296
1297 * unix: add uv_fs_read64, uv_fs_write64 and uv_fs_ftruncate64 (Ben Noordhuis)
1298
1299 * add 64bit offset fs functions (Igor Zinkovsky)
1300
1301 * windows: don't report ENOTSOCK when attempting to bind an udp handle twice (Bert Belder)
1302
1303 * windows: backport pipe-connect-to-file fixes from master (Bert Belder)
1304
1305 * windows: never call fs event callbacks after closing the watcher (Bert Belder)
1306
1307 * fs.readFile: don't make the callback before the fd is closed (Bert Belder)
1308
1309 * windows: use 64bit offsets for uv_fs apis (Igor Zinkovsky)
1310
1311 * Fix #2061: segmentation fault on OS X due to stat size mismatch (Ben Noordhuis)
1312
1313
1314 2012.03.22 Version 0.6.14 (stable), e513ffef7549a56a5af728e1f0c2c0c8f290518a
1315
1316 * net: don't crash when queued write fails (Igor Zinkovsky)
1317
1318 * sunos: fix EMFILE on process.memoryUsage() (Bryan Cantrill)
1319
1320 * crypto: fix compile-time error with openssl 0.9.7e (Ben Noordhuis)
1321
1322 * unix: ignore ECONNABORTED errors from accept() (Ben Noordhuis)
1323
1324 * Add UV_ENOSPC and mappings to it (Bert Belder)
1325
1326 * http-parser: Fix response body is not read (koichik)
1327
1328 * Upgrade npm to 1.1.12
1329   - upgrade node-gyp to 0.3.7
1330   - work around AV-locked directories on Windows
1331   - Fix isaacs/npm#2293 Don't try to 'uninstall' /
1332   - Exclude symbolic links from packages.
1333   - Fix isaacs/npm#2275 Spurious 'unresolvable cycle' error.
1334   - Exclude/include dot files as if they were normal files
1335
1336
1337 2012.03.15 Version 0.6.13 (stable), 9f7f86b534f8556290eb8cad915984ff4ca54996
1338
1339 * Windows: Many libuv test fixes (Bert Belder)
1340
1341 * Windows: avoid uv_guess_handle crash in when fd < 0 (Bert Belder)
1342
1343 * Map EBUSY and ENOTEMPTY errors (Bert Belder)
1344
1345 * Windows: include syscall in fs errors (Bert Belder)
1346
1347 * Fix fs.watch ENOSYS on Linux kernel version mismatch (Ben Noordhuis)
1348
1349 * Update npm to 1.1.9
1350   - upgrade node-gyp to 0.3.5 (Nathan Rajlich)
1351   - Fix isaacs/npm#2249 Add cache-max and cache-min configs
1352   - Properly redirect across https/http registry requests
1353   - log config usage if undefined key in set function (Kris Windham)
1354   - Add support for os/cpu fields in package.json (Adam Blackburn)
1355   - Automatically node-gyp packages containing a binding.gyp
1356   - Fix failures unpacking in UNC shares
1357   - Never create un-listable directories
1358   - Handle cases where an optionalDependency fails to build
1359
1360
1361 2012.03.02 Version 0.6.12 (stable), 48a2d34cfe6b7e1c9d15202a4ef5e3c82d1fba35
1362
1363 * Upgrade V8 to 3.6.6.24
1364
1365 * dtrace ustack helper improvements (Dave Pacheco)
1366
1367 * API Documentation refactor (isaacs)
1368
1369 * #2827 net: fix race write() before and after connect() (koichik)
1370
1371 * #2554 #2567 throw if fs args for 'start' or 'end' are strings (AJ ONeal)
1372
1373 * punycode: Update to v1.0.0 (Mathias Bynens)
1374
1375 * Make a fat binary for the OS X pkg (isaacs)
1376
1377 * Fix hang on accessing process.stdin (isaacs)
1378
1379 * repl: make tab completion work on non-objects (Nathan Rajlich)
1380
1381 * Fix fs.watch on OS X (Ben Noordhuis)
1382
1383 * Fix #2515 nested setTimeouts cause premature process exit (Ben Noordhuis)
1384
1385 * windows: fix time conversion in stat (Igor Zinkovsky)
1386
1387 * windows: fs: handle EOF in read (Brandon Philips)
1388
1389 * windows: avoid IOCP short-circuit on non-ifs lsps (Igor Zinkovsky)
1390
1391 * Upgrade npm to 1.1.4 (isaacs)
1392   - windows fixes
1393   - Bundle nested bundleDependencies properly
1394   - install: support --save with url install targets
1395   - shrinkwrap: behave properly with url-installed modules
1396   - support installing uncompressed tars or single file modules from urls etc.
1397   - don't run make clean on rebuild
1398   - support HTTPS-over-HTTP proxy tunneling
1399
1400
1401 2012.02.17 Version 0.6.11 (stable), 1eb1fe32250fc88cb5b0a97cddf3e02be02e3f4a
1402
1403 * http: allow multiple WebSocket RFC6455 headers (Einar Otto Stangvik)
1404
1405 * http: allow multiple WWW-Authenticate headers (Ben Noordhuis)
1406
1407 * windows: support unicode argv and environment variables (Bert Belder)
1408
1409 * tls: mitigate session renegotiation attacks (Ben Noordhuis)
1410
1411 * tcp, pipe: don't assert on uv_accept() errors (Ben Noordhuis)
1412
1413 * tls: Allow establishing secure connection on the existing socket (koichik)
1414
1415 * dgram: handle close of dgram socket before DNS lookup completes (Seth Fitzsimmons)
1416
1417 * windows: Support half-duplex pipes (Igor Zinkovsky)
1418
1419 * build: disable omit-frame-pointer on solaris systems (Dave Pacheco)
1420
1421 * debugger: fix --debug-brk (Ben Noordhuis)
1422
1423 * net: fix large file downloads failing (koichik)
1424
1425 * fs: fix ReadStream failure to read from existing fd (Christopher Jeffrey)
1426
1427 * net: destroy socket on DNS error (Stefan Rusu)
1428
1429 * dtrace: add missing translator (Dave Pacheco)
1430
1431 * unix: don't flush tty on switch to raw mode (Ben Noordhuis)
1432
1433 * windows: reset brightness when reverting to default text color (Bert Belder)
1434
1435 * npm: update to 1.1.1
1436   - Update which, fstream, mkdirp, request, and rimraf
1437   - Fix #2123 Set path properly for lifecycle scripts on windows
1438   - Mark the root as seen, so we don't recurse into it. Fixes #1838. (Martin Cooper)
1439
1440
1441 2012.02.02, Version 0.6.10 (stable), 051908e023f87894fa68f5b64d0b99a19a7db01e
1442
1443 * Update V8 to 3.6.6.20
1444
1445 * Add npm msysgit bash shim to msi installer (isaacs)
1446
1447 * buffers: fix intermittent out of bounds error (Ben Noordhuis)
1448
1449 * buffers: honor length argument in base64 decoder (Ben Noordhuis)
1450
1451 * windows: Fix path.exists regression (Bert Belder)
1452
1453 * Make QueryString.parse run faster (Philip Tellis)
1454
1455 * http: avoid freeing http-parser objects too early (koichik)
1456
1457 * timers: add v0.4 compatibility hack (Ben Noordhuis)
1458
1459 * Proper EPERM error code support (Igor Zinkovsky, Brandon Philips)
1460
1461 * dgram: Implement udp multicast methods on windows (Bert Belder)
1462
1463
1464 2012.01.27, Version 0.6.9 (stable), f19e20d33f57c4d2853aaea7d2724d44f3b0012f
1465
1466 * dgram: Bring back missing functionality for Unix (Dan VerWeire, Roman Shtylman, Ben Noordhuis)
1467   - Note: Windows UDP support not yet complete.
1468
1469 * http: Fix parser memory leak (koichik)
1470
1471 * zlib: Fix #2365 crashes on invalid input (Nicolas LaCasse)
1472
1473 * module: fix --debug-brk on symlinked scripts (Fedor Indutny)
1474
1475 * Documentation Restyling (Matthew Fitzsimmons)
1476
1477 * Update npm to 1.1.0-3 (isaacs)
1478
1479 * Windows: fix regression in stat() calls to C:\ (Bert Belder)
1480
1481
1482 2012.01.19, Version 0.6.8 (stable), d18cebaf8a7ac701dabd71a3aa4eb0571db6a645
1483
1484 * Update V8 to 3.6.6.19
1485
1486 * Numeric key hash collision fix for V8 (Erik Corry, Fedor Indutny)
1487
1488 * Add missing TTY key translations for F1-F5 on Windows (Brandon Benvie)
1489
1490 * path.extname bugfix with . and .. paths (Bert Belder)
1491
1492 * cluster: don't always kill the master on uncaughtException (Ben Noordhuis)
1493
1494 * Update npm to 1.1.0-2 (isaacs)
1495
1496 * typed arrays: set class name (Ben Noordhuis)
1497
1498 * zlib binding cleanup (isaacs, Bert Belder)
1499
1500 * dgram: use slab memory allocator (Michael Bernstein)
1501
1502 * fix segfault #2473
1503
1504 * #2521 60% improvement in fs.stat on Windows (Igor Zinkovsky)
1505
1506
1507 2012.01.06, Version 0.6.7 (stable), d5a189acef14a851287ee555f7a39431fe276e1c
1508
1509 * V8 hash collision fix (Breaks MIPS) (Bert Belder, Erik Corry)
1510
1511 * Upgrade V8 to 3.6.6.15
1512
1513 * Upgrade npm to 1.1.0-beta-10 (isaacs)
1514
1515 * many doc updates (Ben Noordhuis, Jeremy Martin, koichik, Dave Irvine,
1516   Seong-Rak Choi, Shannen, Adam Malcontenti-Wilson, koichik)
1517
1518 * Fix segfault in node_http_parser.cc
1519
1520 * dgram, timers: fix memory leaks (Ben Noordhuis, Yoshihiro Kikuchi)
1521
1522 * repl: fix repl.start not passing the `ignoreUndefined` arg (Damon Oehlman)
1523
1524 * #1980: Socket.pause null reference when called on a closed Stream (koichik)
1525
1526 * #2263: XMLHttpRequest piped in a writable file stream hang (koichik)
1527
1528 * #2069: http resource leak (koichik)
1529
1530 * buffer.readInt global pollution fix (Phil Sung)
1531
1532 * timers: fix performance regression (Ben Noordhuis)
1533
1534 * #2308, #2246: node swallows openssl error on request (koichik)
1535
1536 * #2114: timers: remove _idleTimeout from item in .unenroll() (James Hartig)
1537
1538 * #2379: debugger: Request backtrace w/o refs (Fedor Indutny)
1539
1540 * simple DTrace ustack helper (Dave Pacheco)
1541
1542 * crypto: rewrite HexDecode without snprintf (Roman Shtylman)
1543
1544 * crypto: don't ignore DH init errors (Ben Noordhuis)
1545
1546
1547 2011.12.14, Version 0.6.6 (stable), 9a059ea69e1f6ebd8899246682d8ca257610b8ab
1548
1549 * npm update to 1.1.0-beta-4 (Isaac Z. Schlueter)
1550
1551 * cli: fix output of --help (Ben Noordhuis)
1552
1553 * new website
1554
1555 * pause/resume semantics for stdin (Isaac Z. Schlueter)
1556
1557 * Travis CI integration (Maciej Małecki)
1558
1559 * child_process: Fix bug regarding closed stdin (Ben Noordhuis)
1560
1561 * Enable upgrades in MSI. (Igor Zinkovsky)
1562
1563 * net: Fixes memory leak (Ben Noordhuis)
1564
1565 * fs: handle fractional or NaN ReadStream buffer size (Ben Noordhuis)
1566
1567 * crypto: fix memory leaks in PBKDF2 error path (Ben Noordhuis)
1568
1569
1570 2011.12.04, Version 0.6.5 (stable), 6cc94db653a2739ab28e33b2d6a63c51bd986a9f
1571
1572 * npm workaround Windows antivirus software (isaacs)
1573
1574 * Upgrade V8 to 3.6.6.11
1575
1576
1577 2011.12.02, Version 0.6.4 (stable), 9170077f13e5e5475b23d1d3c2e7f69bfe139727
1578
1579 * doc improvements (Kyle Young, Tim Oxley, Roman Shtylman, Mathias Bynens)
1580
1581 * upgrade bundled npm (Isaac Schlueter)
1582
1583 * polish Windows installer (Igor Zinkovsky, Isaac Schlueter)
1584
1585 * punycode: upgrade to v0.2.1 (Mathias Bynens)
1586
1587 * build: add –without-npm flag to configure script
1588
1589 * sys: deprecate module some more, print stack trace if NODE_DEBUG=sys
1590
1591 * cli: add -p switch, prints result of –eval
1592
1593 * #1997: fix Blowfish ECB encryption and decryption (Ingmar Runge)
1594
1595 * #2223: fix socket ‘close’ event being emitted twice
1596
1597 * #2224: fix RSS memory usage > 4 GB reporting (Russ Bradberry)
1598
1599 * #2225: fix util.inspect() object stringification bug (Nathan Rajlich)
1600
1601
1602 2011.11.25, Version 0.6.3 (stable), b159c6d62e5756d3f8847419d29c6959ea288b56
1603
1604 * #2083 Land NPM in Node. It is included in packages/installers and installed
1605   on `make install`.
1606
1607 * #2076 Add logos to windows installer.
1608
1609 * #1711 Correctly handle http requests without headers. (Ben Noordhuis,
1610   Felix Geisendörfer)
1611
1612 * TLS: expose more openssl SSL context options and constants. (Ben Noordhuis)
1613
1614 * #2177 Windows: don't kill UDP socket when a packet fails to reach its
1615   destination. (Bert Belder)
1616
1617 * Windows: support paths longer than 260 characters. (Igor Zinkovsky)
1618
1619 * Windows: correctly resolve drive-relative paths. (Bert Belder)
1620
1621 * #2166 Don't leave file descriptor open after lchmod. (Isaac Schlueter)
1622
1623 * #2084 Add OS X .pkg build script to make file.
1624
1625 * #2160 Documentation improvements. (Ben Noordhuis)
1626
1627
1628 2011.11.18, Version 0.6.2 (stable), a4402f0b2e410b19375a1d5c5fb7fe7f66f3c7f8
1629
1630 * doc improvements (Artur Adib, Trevor Burnham, Ryan Emery, Trent Mick)
1631
1632 * timers: remember extra setTimeout() arguments when timeout==0
1633
1634 * punycode: use Mathias Bynens's punycode library, it's more compliant
1635
1636 * repl: improved tab completion (Ryan Emery)
1637
1638 * buffer: fix range checks in .writeInt() functions (Lukasz Walukiewicz)
1639
1640 * tls: make cipher list configurable
1641
1642 * addons: make Buffer and ObjectWrap visible to Windows add-ons (Bert Belder)
1643
1644 * crypto: add PKCS#1 a.k.a RSA public key verification support
1645
1646 * windows: fix stdout writes when redirected to nul
1647
1648 * sunos: fix build on Solaris and Illumos
1649
1650 * Upgrade V8 to 3.6.6.8
1651
1652
1653 2011.11.11, Version 0.6.1 (stable), 170f2addb2dd0c625bc4a6d461e89a31ad68b79b
1654
1655 * doc improvements (Eric Lovett, Ben Noordhuis, Scott Anderson, Yoji SHIDARA)
1656
1657 * crypto: make thread-safe (Ben Noordhuis)
1658
1659 * fix process.kill error object
1660
1661 * debugger: correctly handle source with multi-byte characters (Shigeki Ohtsu)
1662
1663 * make stdout and stderr non-destroyable (Igor Zinkovsky)
1664
1665 * fs: don't close uninitialized fs.watch handle (Ben Noordhuis)
1666
1667 * #2026 fix man page install on BSDs (Ben Noordhuis)
1668
1669 * #2040 fix unrecognized errno assert in uv_err_name
1670
1671 * #2043 fs: mkdir() should call callback if mode is omitted
1672
1673 * #2045 fs: fix fs.realpath on windows to return on error (Benjamin Pasero)
1674
1675 * #2047 minor cluster improvements
1676
1677 * #2052 readline get window columns correctly
1678
1679 * Upgrade V8 to 3.6.6.7
1680
1681
1682 2011.11.04, Version 0.6.0 (stable), 865b077819a9271a29f982faaef99dc635b57fbc
1683
1684 * print undefined on undefined values in REPL (Nathan Rajlich)
1685
1686 * doc improvements (koichik, seebees, bnoordhuis,
1687   Maciej Małecki, Jacob Kragh)
1688
1689 * support native addon loading in windows (Bert Belder)
1690
1691 * rename getNetworkInterfaces() to networkInterfaces() (bnoordhuis)
1692
1693 * add pending accepts knob for windows (igorzi)
1694
1695 * http.request(url.parse(x)) (seebees)
1696
1697 * #1929 zlib Respond to 'resume' events properly (isaacs)
1698
1699 * stream.pipe: Remove resume and pause events
1700
1701 * test fixes for windows (igorzi)
1702
1703 * build system improvements (bnoordhuis)
1704
1705 * #1936 tls: does not emit 'end' from EncryptedStream (koichik)
1706
1707 * #758 tls: add address(), remoteAddress/remotePort
1708
1709 * #1399 http: emit Error object after .abort() (bnoordhuis)
1710
1711 * #1999 fs: make mkdir() default to 0777 permissions (bnoordhuis)
1712
1713 * #2001 fix pipe error codes
1714
1715 * #2002 Socket.write should reset timeout timer
1716
1717 * stdout and stderr are blocking when associated with file too.
1718
1719 * remote debugger support on windows (Bert Belder)
1720
1721 * convenience methods for zlib (Matt Robenolt)
1722
1723 * process.kill support on windows (igorzi)
1724
1725 * process.uptime() support on windows (igorzi)
1726
1727 * Return IPv4 addresses before IPv6 addresses from getaddrinfo
1728
1729 * util.inspect improvements (Nathan Rajlich)
1730
1731 * cluster module api changes
1732
1733 * Downgrade V8 to 3.6.6.6
1734
1735
1736 2011.10.21, Version 0.5.10 (unstable), 220e61c1f65bf4db09699fcf6399c0809c0bc446
1737
1738 * Remove cmake build system, support for Cygwin, legacy code base,
1739         process.ENV, process.ARGV, process.memoryUsage().vsize, os.openOSHandle
1740
1741 * Documentation improvments (Igor Zinkovsky, Bert Belder, Ilya Dmitrichenko,
1742 koichik, Maciej Małecki, Guglielmo Ferri, isaacs)
1743
1744 * Performance improvements (Daniel Ennis, Bert Belder, Ben Noordhuis)
1745
1746 * Long process.title support (Ben Noordhuis)
1747
1748 * net: register net.Server callback only once (Simen Brekken)
1749
1750 * net: fix connect queue bugs (Ben Noordhuis)
1751
1752 * debugger: fix backtrace err handling (Fedor Indutny)
1753
1754 * Use getaddrinfo instead of c-ares for dns.lookup
1755
1756 * Emit 'end' from crypto streams on close
1757
1758 * #1902 buffer: use NO_NULL_TERMINATION flag (koichik)
1759
1760 * #1907 http: Added support for HTTP PATCH verb (Thomas Parslow)
1761
1762 * #1644 add GetCPUInfo on windows (Karl Skomski)
1763
1764 * #1484, #1834, #1482, #771 Don't use a separate context for the repl.
1765   (isaacs)
1766
1767 * #1882 zlib Update 'availOutBefore' value, and test (isaacs)
1768
1769 * #1888 child_process.fork: don't modify args (koichik)
1770
1771 * #1516 tls: requestCert unusable with Firefox and Chrome (koichik)
1772
1773 * #1467 tls: The TLS API is inconsistent with the TCP API (koichik)
1774
1775 * #1894 net: fix error handling in listen() (koichik)
1776
1777 * #1860 console.error now goes through uv_tty_t
1778
1779 * Upgrade V8 to 3.7.0
1780
1781 * Upgrade GYP to r1081
1782
1783
1784 2011.10.10, Version 0.5.9 (unstable), 3bd9b08fb125b606f97a4079b147accfdeebb07d
1785
1786 * fs.watch interface backed by kqueue, inotify, and ReadDirectoryChangesW
1787   (Igor Zinkovsky, Ben Noordhuis)
1788
1789 * add dns.resolveTxt (Christian Tellnes)
1790
1791 * Remove legacy http library (Ben Noordhuis)
1792
1793 * child_process.fork returns and works on Windows. Allows passing handles.
1794   (Igor Zinkovsky, Bert Belder)
1795
1796 * #1774 Lint and clean up for --harmony_block_scoping (Tyler Larson, Colton
1797   Baker)
1798
1799 * #1813 Fix ctrl+c on Windows (Bert Belder)
1800
1801 * #1844 unbreak --use-legacy (Ben Noordhuis)
1802
1803 * process.stderr now goes through libuv. Both process.stdout and
1804   process.stderr are blocking when referencing a TTY.
1805
1806 * net_uv performance improvements (Ben Noordhuis, Bert Belder)
1807
1808
1809 2011.09.30, Version 0.5.8 (unstable), 7cc17a0cea1d25188c103745a7d0c24375e3a609
1810
1811 * zlib bindings (isaacs)
1812
1813 * Windows supports TTY ANSI escape codes (Bert Belder)
1814
1815 * Debugger improvements (Fedor Indutny)
1816
1817 * crypto: look up SSL errors with ERR_print_errors() (Ben Noordhuis)
1818
1819 * dns callbacks go through MakeCallback now
1820
1821 * Raise an error when a malformed package.json file is found. (Ben Leslie)
1822
1823 * buffers: handle bad length argument in constructor (Ben Noordhuis)
1824
1825 * #1726, unref process.stdout
1826
1827 * Doc improvements (Ben Noordhuis, Fedor Indutny, koichik)
1828
1829 * Upgrade libuv to fe18438
1830
1831
1832 2011.09.16, Version 0.5.7 (unstable), 558241166c4f3c516e5a448e676db0b57119212f
1833
1834 * Upgrade V8 to 3.6.4
1835
1836 * Improve Windows compatibility
1837
1838 * Documentation improvements
1839
1840 * Debugger and REPL improvements (Fedor Indutny)
1841
1842 * Add legacy API support: net.Stream(fd), process.stdout.writable,
1843   process.stdout.fd
1844
1845 * Fix mkdir EEXIST handling (isaacs)
1846
1847 * Use net_uv instead of net_legacy for stdio
1848
1849 * Do not load readline from util.inspect
1850
1851 * #1673 Fix bug related to V8 context with accessors (Fedor Indutny)
1852
1853 * #1634 util: Fix inspection for Error (koichik)
1854
1855 * #1645 fs: Add positioned file writing feature to fs.WriteStream (Thomas
1856   Shinnick)
1857
1858 * #1637 fs: Unguarded fs.watchFile cache statWatchers checking fixed (Thomas
1859   Shinnick)
1860
1861 * #1695 Forward customFds to ChildProcess.spawn
1862
1863 * #1707 Fix hasOwnProperty security problem in querystring (isaacs)
1864
1865 * #1719 Drain OpenSSL error queue
1866
1867
1868 2011.09.08, Version 0.5.6 (unstable), b49bec55806574a47403771bce1ee379c2b09ca2
1869
1870 * #345, #1635, #1648 Documentation improvements (Thomas Shinnick,
1871   Abimanyu Raja, AJ ONeal, Koichi Kobayashi, Michael Jackson, Logan Smyth,
1872   Ben Noordhuis)
1873
1874 * #650 Improve path parsing on windows (Bert Belder)
1875
1876 * #752 Remove headers sent check in OutgoingMessage.getHeader()
1877   (Peter Lyons)
1878
1879 * #1236, #1438, #1506, #1513, #1621, #1640, #1647 Libuv-related bugs fixed
1880   (Jorge Chamorro Bieling, Peter Bright, Luis Lavena, Igor Zinkovsky)
1881
1882 * #1296, #1612 crypto: Fix BIO's usage. (Koichi Kobayashi)
1883
1884 * #1345 Correctly set socket.remoteAddress with libuv backend (Bert Belder)
1885
1886 * #1429 Don't clobber quick edit mode on windows (Peter Bright)
1887
1888 * #1503 Make libuv backend default on unix, override with `node --use-legacy`
1889
1890 * #1565 Fix fs.stat for paths ending with \ on windows (Igor Zinkovsky)
1891
1892 * #1568 Fix x509 certificate subject parsing (Koichi Kobayashi)
1893
1894 * #1586 Make socket write encoding case-insensitive (Koichi Kobayashi)
1895
1896 * #1591, #1656, #1657 Implement fs in libuv, remove libeio and pthread-win32
1897   dependency on windows (Igor Zinkovsky, Ben Noordhuis, Ryan Dahl,
1898   Isaac Schlueter)
1899
1900 * #1592 Don't load-time link against CreateSymbolicLink on windows
1901   (Peter Bright)
1902
1903 * #1601 Improve API consistency when dealing with the socket underlying a HTTP
1904   client request (Mikeal Rogers)
1905
1906 * #1610 Remove DigiNotar CA from trusted list (Isaac Schlueter)
1907
1908 * #1617 Added some win32 os functions (Karl Skomski)
1909
1910 * #1624 avoid buffer overrun with 'binary' encoding (Koichi Kobayashi)
1911
1912 * #1633 make Buffer.write() always set _charsWritten (Koichi Kobayashi)
1913
1914 * #1644 Windows: set executables to be console programs (Peter Bright)
1915
1916 * #1651 improve inspection for sparse array (Koichi Kobayashi)
1917
1918 * #1672 set .code='ECONNRESET' on socket hang up errors (Ben Noordhuis)
1919
1920 * Add test case for foaf+ssl client certificate (Niclas Hoyer)
1921
1922 * Added RPATH environment variable to override run-time library paths
1923   (Ashok Mudukutore)
1924
1925 * Added TLS client-side session resumption support (Sean Cunningham)
1926
1927 * Added additional properties to getPeerCertificate (Nathan Rixham,
1928   Niclas Hoyer)
1929
1930 * Don't eval repl command twice when an error is thrown (Nathan Rajlich)
1931
1932 * Improve util.isDate() (Nathan Rajlich)
1933
1934 * Improvements in libuv backend and bindings, upgrade libuv to
1935   bd6066cb349a9b3a1b0d87b146ddaee06db31d10
1936
1937 * Show warning when using lib/sys.js (Maciej Malecki)
1938
1939 * Support plus sign in url protocol (Maciej Malecki)
1940
1941 * Upgrade V8 to 3.6.2
1942
1943
1944 2011.08.26, Version 0.5.5 (unstable), d2d53d4bb262f517a227cc178a1648094ba54c20
1945
1946 * typed arrays, implementation from Plesk
1947
1948 * fix IP multicast on SunOS
1949
1950 * fix DNS lookup order: IPv4 first, IPv6 second (--use-uv only)
1951
1952 * remove support for UNIX datagram sockets (--use-uv only)
1953
1954 * UDP support for Windows (Bert Belder)
1955
1956 * #1572 improve tab completion for objects in the REPL (Nathan Rajlich)
1957
1958 * #1563 fix buffer overflow in child_process module (reported by Dean McNamee)
1959
1960 * #1546 fix performance regression in http module (reported by Brian Geffon)
1961
1962 * #1491 add PBKDF2 crypto support (Glen Low)
1963
1964 * #1447 remove deprecated http.cat() function (Mikeal Rogers)
1965
1966 * #1140 fix incorrect dispatch of vm.runInContext's filename argument
1967   (Antranig Basman)
1968
1969 * #1140 document vm.runInContext() and vm.createContext() (Antranig Basman)
1970
1971 * #1428 fix os.freemem() on 64 bits freebsd (Artem Zaytsev)
1972
1973 * #1164 make all DNS lookups async, fixes uncatchable exceptions
1974   (Koichi Kobayashi)
1975
1976 * fix incorrect ssl shutdown check (Tom Hughes)
1977
1978 * various cmake fixes (Tom Hughes)
1979
1980 * improved documentation (Koichi Kobayashi, Logan Smyth, Fedor Indutny,
1981   Mikeal Rogers, Maciej Małecki, Antranig Basman, Mickaël Delahaye)
1982
1983 * upgrade libuv to commit 835782a
1984
1985 * upgrade V8 to 3.5.8
1986
1987
1988 2011.08.12, Version 0.5.4 (unstable), cfba1f59224ff8602c3fe9145181cad4c6df89a9
1989
1990 * libuv/Windows compatibility improvements
1991
1992 * Build on Microsoft Visual Studio via GYP. Use generate-projects.bat in the
1993   to build sln files. (Peter Bright, Igor Zinkovsky)
1994
1995 * Make Mikeal's HTTP agent client the default. Use old HTTP client with
1996   --use-http1
1997
1998 * Fixes https host header default port handling. (Mikeal Rogers)
1999
2000 * #1440 strip byte order marker when loading *.js and *.json files
2001   (Ben Noordhuis)
2002
2003 * #1434 Improve util.format() compatibility with browser. (Koichi Kobayashi)
2004
2005 * Provide unchecked uint entry points for integer Buffer.read/writeInt
2006   methods. (Robert Mustacchi)
2007
2008 * CMake improvements (Tom Huges)
2009
2010 * Upgrade V8 to 3.5.4.
2011
2012
2013 2011.08.01, Version 0.5.3 (unstable), 4585330afef44ddfb6a4054bd9b0f190b352628b
2014
2015 * Fix crypto encryption/decryption with Base64. (SAWADA Tadashi)
2016
2017 * #243 Add an optional length argument to Buffer.write() (koichik)
2018
2019 * #657 convert nonbuffer data to string in fs.writeFile/Sync
2020   (Daniel Pihlström)
2021
2022 * Add process.features, remove process.useUV (Ben Noordhuis)
2023
2024 * #324 Fix crypto hmac to accept binary keys + add test cases from rfc 2202
2025   and 4231 (Stefan Bühler)
2026
2027 * Add Socket::bytesRead, Socket::bytesWritten (Alexander Uvarov)
2028
2029 * #572 Don't print result of --eval in CLI (Ben Noordhuis)
2030
2031 * #1223 Fix http.ClientRequest crashes if end() was called twice (koichik)
2032
2033 * #1383 Emit 'close' after all connections have closed (Felix Geisendörfer)
2034
2035 * Add sprintf-like util.format() function (Ben Noordhuis)
2036
2037 * Add support for TLS SNI (Fedor Indutny)
2038
2039 * New http agent implementation. Off by default the command line flag
2040   --use-http2 will enable it. "make test-http2" will run the tests
2041         for the new implementation. (Mikeal Rogers)
2042
2043 * Revert AMD compatibility. (isaacs)
2044
2045 * Windows: improvements, child_process support.
2046
2047 * Remove pkg-config file.
2048
2049 * Fix startup time regressions.
2050
2051 * doc improvements
2052
2053
2054 2011.07.22, Version 0.5.2 (unstable), 08ffce1a00dde1199174b390a64a90b60768ddf5
2055
2056 * libuv improvements; named pipe support
2057
2058 * #1242 check for SSL_COMP_get_compression_methods() (Ben Noordhuis)
2059
2060 * #1348 remove require.paths (isaacs)
2061
2062 * #1349 Delimit NODE_PATH with ; on Windows (isaacs)
2063
2064 * #1335 Remove EventEmitter from C++
2065
2066 * #1357 Load json files with require() (isaacs)
2067
2068 * #1374 fix setting ServerResponse.statusCode in writeHead (Trent Mick)
2069
2070 * Fixed: GC was being run too often.
2071
2072 * Upgrade V8 to 3.4.14
2073
2074 * doc improvements
2075
2076
2077 2011.07.14, Version 0.5.1 (unstable), f8bfa54d0fa509f9242637bef2869a1b1e842ec8
2078
2079 * #1233 Fix os.totalmem on FreeBSD amd64 (Artem Zaytsev)
2080
2081 * #1149 IDNA and Punycode support in url.parse
2082   (Jeremy Selier, Ben Noordhuis, isaacs)
2083
2084 * Export $CC and $CXX to uv and V8's build systems
2085
2086 * Include pthread-win32 static libraries in build (Igor Zinkovsky)
2087
2088 * #1199, #1094 Fix fs can't handle large file on 64bit platform (koichik)
2089
2090 * #1281 Make require a public member of module (isaacs)
2091
2092 * #1303 Stream.pipe returns the destination (Elijah Insua)
2093
2094 * #1229 Addons should not -DEV_MULTIPLICITY=0 (Brian White)
2095
2096 * libuv backend improvements
2097
2098 * Upgrade V8 to 3.4.10
2099
2100
2101 2011.07.05, Version 0.5.0 (unstable), ae7ed8482ea7e53c59acbdf3cf0e0a0ae9d792cd
2102
2103 * New non-default libuv backend to support IOCP on Windows.
2104   Use --use-uv to enable.
2105
2106 * deprecate http.cat
2107
2108 * docs improved.
2109
2110 * add child_process.fork
2111
2112 * add fs.utimes() and fs.futimes() support (Ben Noordhuis)
2113
2114 * add process.uptime() (Tom Huges)
2115
2116 * add path.relative (Tony Huang)
2117
2118 * add os.getNetworkInterfaces()
2119
2120 * add remoteAddress and remotePort for client TCP connections
2121   (Brian White)
2122
2123 * add secureOptions flag, setting ciphers,
2124   SSL_OP_CRYPTOPRO_TLSEXT_BUG to TLS (Theo Schlossnagle)
2125
2126 * add process.arch (Nathan Rajlich)
2127
2128 * add reading/writing of floats and doubles from/to buffers (Brian White)
2129
2130 * Allow script to be read from stdin
2131
2132 * #477 add Buffer::fill method to do memset (Konstantin Käfer)
2133
2134 * #573 Diffie-Hellman support to crypto module (Håvard Stranden)
2135
2136 * #695 add 'hex' encoding to buffer (isaacs)
2137
2138 * #851 Update how REPLServer uses contexts (Ben Weaver)
2139
2140 * #853 add fs.lchow, fs.lchmod, fs.fchmod, fs.fchown (isaacs)
2141
2142 * #889 Allow to remove all EventEmitter listeners at once
2143   (Felix Geisendörfer)
2144
2145 * #926 OpenSSL NPN support (Fedor Indutny)
2146
2147 * #955 Change ^C handling in REPL (isaacs)
2148
2149 * #979 add support for Unix Domain Sockets to HTTP (Mark Cavage)
2150
2151 * #1173 #1170 add AMD, asynchronous module definition (isaacs)
2152
2153 * DTrace probes: support X-Forwarded-For (Dave Pacheco)
2154
2155
2156 2011.09.15, Version 0.4.12 (stable), 771ba34ca7b839add2ef96879e1ffc684813cf7c
2157
2158 * Improve docs
2159
2160 * #1563 overflow in ChildProcess custom_fd.
2161
2162 * #1569, parse error on multi-line HTTP headers. (Ben Noordhuis)
2163
2164 * #1586 net: Socket write encoding case sensitivity (koichik)
2165
2166 * #1610 Remove DigiNotar CA from trusted list (isaacs)
2167
2168 * #1624 buffer: Avoid overrun with 'binary' encoding. (koichik)
2169
2170 * #1633 buffer: write() should always set _charsWritten. (koichik)
2171
2172 * #1707 hasOwnProperty usage security hole in querystring (isaacs)
2173
2174 * #1719 Drain OpenSSL error queue
2175
2176 * Fix error reporting in net.Server.listen
2177
2178
2179 2011.08.17, Version 0.4.11 (stable), a745d19ce7d1c0e3778371af4f0346be70cf2c8e
2180
2181 * #738 Fix crypto encryption/decryption with Base64. (SAWADA Tadashi)
2182
2183 * #1202 net.createConnection defer DNS lookup error events to next tick
2184   (Ben Noordhuis)
2185
2186 * #1374 fix setting ServerResponse.statusCode in writeHead (Trent Mick)
2187
2188 * #1417 Fix http.ClientRequest crashes if end() was called twice
2189
2190 * #1497 querystring: Replace 'in' test with 'hasOwnProperty' (isaacs)
2191
2192 * #1546 http perf improvement
2193
2194 * fix memleak in libeio (Tom Hughes)
2195
2196 * cmake improvements (Tom Hughes)
2197
2198 * node_net.cc: fix incorrect sizeof() (Tom Hughes)
2199
2200 * Windows/cygwin: no more GetConsoleTitleW errors on XP (Bert Belder)
2201
2202 * Doc improvments (koichik, Logan Smyth, Ben Noordhuis, Arnout Kazemier)
2203
2204
2205 2011.07.19, Version 0.4.10 (stable), 1b8dd65d6e3b82b6863ef38835cc436c5d30c1d5
2206
2207 * #394 Fix Buffer drops last null character in UTF-8
2208
2209 * #829 Backport r8577 from V8 (Ben Noordhuis)
2210
2211 * #877 Don't wait for HTTP Agent socket pool to establish connections.
2212
2213 * #915 Find kqueue on FreeBSD correctly (Brett Kiefer)
2214
2215 * #1085 HTTP: Fix race in abort/dispatch code (Stefan Rusu)
2216
2217 * #1274 debugger improvement (Yoshihiro Kikuchi)
2218
2219 * #1291 Properly respond to HEAD during end(body) hot path (Reid Burke)
2220
2221 * #1304 TLS: Fix race in abort/connection code (Stefan Rusu)
2222
2223 * #1360 Allow _ in url hostnames.
2224
2225 * Revert 37d529f8 - unbreaks debugger command parsing.
2226
2227 * Bring back global execScript
2228
2229 * Doc improvements
2230
2231
2232 2011.06.29, Version 0.4.9 (stable), de44eafd7854d06cd85006f509b7051e8540589b
2233
2234 * Improve documentation
2235
2236 * #1095 error handling bug in stream.pipe() (Felix Geisendörfer)
2237
2238 * #1097 Fix a few leaks in node_crypto.cc (Ben Noordhuis)
2239
2240 * #562 #1078 Parse file:// urls properly (Ryan Petrello)
2241
2242 * #880 Option to disable SSLv2 (Jérémy Lal)
2243
2244 * #1087 Disabling SSL compression disabled with early OpenSSLs.
2245
2246 * #1144 debugger: don't allow users to input non-valid commands
2247   (Siddharth Mahendraker)
2248
2249 * Perf improvement for util.inherits
2250
2251 * #1166 Support for signature verification with RSA/DSA public keys
2252   (Mark Cavage)
2253
2254 * #1177 Remove node_modules lookup optimization to better support
2255   nested project structures (Mathias Buus)
2256
2257 * #1203 Add missing scope.Close to fs.sendfileSync
2258
2259 * #1187 Support multiple 'link' headers
2260
2261 * #1196 Fix -e/--eval can't load module from node_modules (Koichi Kobayashi)
2262
2263 * Upgrade V8 to 3.1.8.25, upgrade http-parser.
2264
2265
2266 2011.05.20, Version 0.4.8 (stable), 7dd22c26e4365698dc3efddf138c4d399cb912c8
2267
2268 * #974 Properly report traceless errors (isaacs)
2269
2270 * #983 Better JSON.parse error detection in REPL (isaacs)
2271
2272 * #836 Agent socket errors bubble up to req only if req exists
2273
2274 * #1041 Fix event listener leak check timing (koichik)
2275
2276 *       #1038 Fix dns.resolve() with 'PTR' throws Error: Unknown type "PTR"
2277   (koichik)
2278
2279 * #1073 Share SSL context between server connections (Fedor Indutny)
2280
2281 * Disable compression with OpenSSL. Improves memory perf.
2282
2283 * Implement os.totalmem() and os.freemem() for SunOS (Alexandre Marangone)
2284
2285 * Fix a special characters in URL regression (isaacs)
2286
2287 * Fix idle timeouts in HTTPS (Felix Geisendörfer)
2288
2289 * SlowBuffer.write() with 'ucs2' throws ReferenceError. (koichik)
2290
2291 * http.ServerRequest 'close' sometimes gets an error argument
2292   (Felix Geisendörfer)
2293
2294 * Doc improvements
2295
2296 * cleartextstream.destroy() should close(2) the socket. Previously was being
2297         mapped to a shutdown(2) syscall.
2298
2299 * No longer compile out asserts and debug statements in normal build.
2300
2301 * Debugger improvements.
2302
2303 * Upgrade V8 to 3.1.8.16.
2304
2305
2306 2011.04.22, Version 0.4.7 (stable), c85455a954411b38232e79752d4abb61bb75031b
2307
2308 * Don't emit error on ECONNRESET from read() #670
2309
2310 * Fix: Multiple pipes to the same stream were broken #929
2311   (Felix Geisendörfer)
2312
2313 * URL parsing/formatting corrections #954 (isaacs)
2314
2315 * make it possible to do repl.start('', stream) (Wade Simmons)
2316
2317 * Add os.loadavg for SunOS (Robert Mustacchi)
2318
2319 * Fix timeouts with floating point numbers #897 (Jorge Chamorro Bieling)
2320
2321 * Improve docs.
2322
2323
2324 2011.04.13, Version 0.4.6 (stable), 58002d56bc79410c5ff397fc0e1ffec0665db38a
2325
2326 * Don't error on ENOTCONN from shutdown() #670
2327
2328 * Auto completion of built-in debugger suggests prefix match rather than
2329         partial match. (koichik)
2330
2331 * circular reference in vm modules. #822 (Jakub Lekstan)
2332
2333 * http response.readable should be false after 'end' #867 (Abe Fettig)
2334
2335 * Implement os.cpus() and os.uptime() on Solaris (Scott McWhirter)
2336
2337 * fs.ReadStream: Allow omission of end option for range reads #801
2338         (Felix Geisendörfer)
2339
2340 * Buffer.write() with UCS-2 should not be write partial char
2341         #916 (koichik)
2342
2343 * Pass secureProtocol through on tls.Server creation (Theo Schlossnagle)
2344
2345 * TLS use RC4-SHA by default
2346
2347 * Don't strangely drop out of event loop on HTTPS client uploads #892
2348
2349 * Doc improvements
2350
2351 * Upgrade v8 to 3.1.8.10
2352
2353
2354 2011.04.01, Version 0.4.5 (stable), 787a343b588de26784fef97f953420b53a6e1d73
2355
2356 * Fix listener leak in stream.pipe() (Mikeal Rogers)
2357
2358 * Retain buffers in fs.read/write() GH-814 (Jorge Chamorro Bieling)
2359
2360 * TLS performance improvements
2361
2362 * SlowBuffer.prototype.slice bug GH-843
2363
2364 * process.stderr.write should return true
2365
2366 * Immediate pause/resume race condition GH-535 (isaacs)
2367
2368 * Set default host header properly GH-721 (isaacs)
2369
2370 * Upgrade V8 to 3.1.8.8
2371
2372
2373 2011.03.26, Version 0.4.4 (stable), 25122b986a90ba0982697b7abcb0158c302a1019
2374
2375 * CryptoStream.end shouldn't throw if not writable GH-820
2376
2377 * Drop out if connection destroyed before connect() GH-819
2378
2379 * expose https.Agent
2380
2381 * Correctly setsid in tty.open GH-815
2382
2383 * Bug fix for failed buffer construction
2384
2385 * Added support for removing .once listeners (GH-806)
2386
2387 * Upgrade V8 to 3.1.8.5
2388
2389
2390 2011.03.18, Version 0.4.3 (stable), c095ce1a1b41ca015758a713283bf1f0bd41e4c4
2391
2392 * Don't decrease server connection counter again if destroy() is called more
2393         than once GH-431 (Andreas Reich, Anders Conbere)
2394
2395 * Documentation improvements (koichik)
2396
2397 * Fix bug with setMaxListeners GH-682
2398
2399 * Start up memory footprint improvement. (Tom Hughes)
2400
2401 * Solaris improvements.
2402
2403 * Buffer::Length(Buffer*) should not invoke itself recursively GH-759 (Ben
2404   Noordhuis)
2405
2406 * TLS: Advertise support for client certs GH-774 (Theo Schlossnagle)
2407
2408 * HTTP Agent bugs: GH-787, GH-784, GH-803.
2409
2410 * Don't call GetMemoryUsage every 5 seconds.
2411
2412 * Upgrade V8 to 3.1.8.3
2413
2414
2415 2011.03.02, Version 0.4.2 (stable), 39280e1b5731f3fcd8cc42ad41b86cdfdcb6d58b
2416
2417 * Improve docs.
2418
2419 * Fix process.on edge case with signal event (Alexis Sellier)
2420
2421 * Pragma HTTP header comma separation
2422
2423 * In addition to 'aborted' emit 'close' from incoming requests
2424   (Felix Geisendörfer)
2425
2426 * Fix memleak in vm.runInNewContext
2427
2428 * Do not cache modules that throw exceptions (Felix Geisendörfer)
2429
2430 * Build system changes for libnode (Aria Stewart)
2431
2432 * Read up the prototype of the 'env' object. (Nathan Rajlich)
2433
2434 * Add 'close' and 'aborted' events to Agent responses
2435
2436 * http: fix missing 'drain' events (Russell Haering)
2437
2438 * Fix process.stdout.end() throws ENOTSOCK error. (Koichi Kobayashi)
2439
2440 * REPL bug fixes (isaacs)
2441
2442 * node_modules folders should be highest priority (isaacs)
2443
2444 * URL parse more safely (isaacs)
2445
2446 * Expose errno with a string for dns/cares (Felix Geisendörfer)
2447
2448 * Fix tty.setWindowSize
2449
2450 * spawn: setuid after chdir (isaacs)
2451
2452 * SIGUSR1 should break the VM without delay
2453
2454 * Upgrade V8 to 3.1.8.
2455
2456
2457 2011.02.19, Version 0.4.1 (stable), e8aef84191bc2c1ba2bcaa54f30aabde7f03769b
2458
2459 * Fixed field merging with progressive fields on writeHead()
2460   (TJ Holowaychuk)
2461
2462 * Make the repl respect node_modules folders (isaacs)
2463
2464 * Fix for DNS fail in HTTP request (Richard Rodger)
2465
2466 * Default to port 80 for http.request and http.get.
2467
2468 * Improve V8 support for Cygwin (Bert Belder)
2469
2470 * Fix fs.open param parsing. (Felix Geisendörfer)
2471
2472 * Fixed null signal.
2473
2474 * Fix various HTTP and HTTPS bugs
2475
2476 * cmake improvements (Tom Hughes)
2477
2478 * Fix: TLS sockets should not be writable after 'end'
2479
2480 * Fix os.cpus() on cygwin (Brian White)
2481
2482 * MinGW: OpenSSL support (Bert Belder)
2483
2484 * Upgrade V8 to 3.1.5, libev to 4.4.
2485
2486
2487 2011.02.10, Version 0.4.0 (stable), eb155ea6f6a6aa341aa8c731dca8da545c6a4008
2488
2489 * require() improvements (isaacs)
2490   - understand package.json (isaacs)
2491   - look for 'node_modules' dir
2492
2493 * cmake fixes (Daniel Gröber)
2494
2495 * http: fix buffer writes to outgoing messages (Russell Haering)
2496
2497 * Expose UCS-2 Encoding (Konstantin Käfer)
2498
2499 * Support strings for octal modes (isaacs)
2500
2501 * Support array-ish args to Buffer ctor (isaacs)
2502
2503 * cygwin and mingw improvements (Bert Belder)
2504
2505 * TLS improvements
2506
2507 * Fewer syscalls during require (Bert Belder, isaacs)
2508
2509 * More DTrace probes (Bryan Cantrill,  Robert Mustacchi)
2510
2511 * 'pipe' event on pipe() (Mikeal Rogers)
2512
2513 * CRL support in TLS (Theo Schlossnagle)
2514
2515 * HTTP header manipulation methods (Tim Caswell, Charlie Robbins)
2516
2517 * Upgrade V8 to 3.1.2
2518
2519
2520 2011.02.04, Version 0.3.8 (unstable), 9493b7563bff31525b4080df5aeef09747782d5e
2521
2522 * Add req.abort() for client side requests.
2523
2524 * Add exception.code for easy testing:
2525   Example: if (err.code == 'EADDRINUSE');
2526
2527 * Add process.stderr.
2528
2529 * require.main is the main module. (Isaac Schlueter)
2530
2531 * dgram: setMulticastTTL, setMulticastLoopback and addMembership.
2532   (Joe Walnes)
2533
2534 * Fix throttling in TLS connections
2535
2536 * Add socket.bufferSize
2537
2538 * MinGW improvements (Bert Belder)
2539
2540 * Upgrade V8 to 3.1.1
2541
2542 2011.01.27, Version 0.3.7 (unstable), d8579c6afdbe868de6dffa8db78bbe4ba2d03e0e
2543
2544 * Expose agent in http and https client. (Mikeal Rogers)
2545
2546 * Fix bug in http request's end method. (Ali Farhadi)
2547
2548 * MinGW: better net support (Bert Belder)
2549
2550 * fs.open should set FD_CLOEXEC
2551
2552 * DTrace probes (Bryan Cantrill)
2553
2554 * REPL fixes and improvements (isaacs, Bert Belder)
2555
2556 * Fix many bugs with legacy http.Client interface
2557
2558 * Deprecate process.assert. Use require('assert').ok
2559
2560 * Add callback parameter to socket.setTimeout(). (Ali Farhadi)
2561
2562 * Fixing bug in http request default encoding (Ali Farhadi)
2563
2564 * require: A module ID with a trailing slash must be a dir.
2565   (isaacs)
2566
2567 * Add ext_key_usage to getPeerCertificate (Greg Hughes)
2568
2569 * Error when child_process.exec hits maxBuffer.
2570
2571 * Fix option parsing in tls.connect()
2572
2573 * Upgrade to V8 3.0.10
2574
2575
2576 2011.01.21, Version 0.3.6 (unstable), bb3e71466e5240626d9d21cf791fe43e87d90011
2577
2578 * REPL and other improvements on MinGW (Bert Belder)
2579
2580 * listen/bind errors should close net.Server
2581
2582 * New HTTP and HTTPS client APIs
2583
2584 * Upgrade V8 to 3.0.9
2585
2586
2587 2011.01.16, Version 0.3.5 (unstable), b622bc6305e3c675e0edfcdbaa387d849ad0bba0
2588
2589 * Built-in debugger improvements.
2590
2591 * Add setsid, setuid, setgid options to child_process.spawn
2592   (Isaac Schlueter)
2593
2594 * tty module improvements.
2595
2596 * Upgrade libev to 4.3, libeio to latest, c-ares to 1.7.4
2597
2598 * Allow third party hooks before main module load.
2599   (See 496be457b6a2bc5b01ec13644b9c9783976159b2)
2600
2601 * Don't stat() on cached modules. (Felix Geisendörfer)
2602
2603
2604 2011.01.08, Version 0.3.4 (unstable), 73f53e12e4a5b9ef7dbb4792bd5f8ad403094441
2605
2606 * Primordial mingw build (Bert Belder)
2607
2608 * HTTPS server
2609
2610 * Built in debugger 'node debug script.js'
2611
2612 * realpath files during module load (Mihai Călin Bazon)
2613
2614 * Rename net.Stream to net.Socket (existing name will continue to be
2615   supported)
2616
2617 * Fix process.platform
2618
2619
2620 2011.01.02, Version 0.3.3 (unstable), 57544ba1c54c7d0da890317deeb73076350c5647
2621
2622 * TLS improvements.
2623
2624 * url.parse(url, true) defaults query field to {} (Jeremy Martin)
2625
2626 * Upgrade V8 to 3.0.4
2627
2628 * Handle ECONNABORT properly (Theo Schlossnagle)
2629
2630 * Fix memory leaks (Tom Hughes)
2631
2632 * Add os.cpus(), os.freemem(), os.totalmem(), os.loadavg() and other
2633   functions for OSX, Linux, and Cygwin. (Brian White)
2634
2635 * Fix REPL syntax error bug (GH-543), improve how REPL commands are
2636   evaluated.
2637
2638 * Use process.stdin instead of process.openStdin().
2639
2640 * Disable TLS tests when node doesn't have OpenSSL.
2641
2642
2643 2010.12.16, Version 0.3.2 (unstable), 4bb914bde9f3c2d6de00853353b6b8fc9c66143a
2644
2645 * Rip out the old (broken) TLS implementation introduce new tested
2646   implementation and API. See docs. HTTPS not supported in this release.
2647
2648 * Introduce 'os' and 'tty' modules.
2649
2650 * Callback parameters for socket.write() and socket.connect().
2651
2652 * Support CNAME lookups in DNS module. (Ben Noordhuis)
2653
2654 * cmake support (Tom Hughes)
2655
2656 * 'make lint'
2657
2658 * oprofile support (./configure --oprofile)
2659
2660 * Lots of bug fixes, including:
2661   - Memory leak in ChildProcess:Spawn(). (Tom Hughes)
2662   - buffer.slice(0, 0)
2663   - Global variable leaks
2664   - clearTimeouts calling multiple times (Michael W)
2665   - utils.inspect's detection of circular structures (Tim Cooijmans)
2666   - Apple's threaded write()s bug (Jorge Chamorro Bieling)
2667   - Make sure raw mode is disabled when exiting a terminal-based REPL.
2668     (Brian White)
2669
2670 * Deprecate process.compile, process.ENV
2671
2672 * Upgrade V8 to 3.0.3, upgrade http-parser.
2673
2674
2675 2010.11.16, Version 0.3.1 (unstable), ce9a54aa1fbf709dd30316af8a2f14d83150e947
2676
2677 * TLS improvements (Paul Querna)
2678   - Centralize error handling in SecureStream
2679   - Add SecurePair for handling of a ssl/tls stream.
2680
2681 * New documentation organization (Micheil Smith)
2682
2683 * allowHalfOpen TCP connections disabled by default.
2684
2685 * Add C++ API for constructing fast buffer from string
2686
2687 * Move idle timers into its own module
2688
2689 * Gracefully handle EMFILE and server.maxConnections
2690
2691 * make "node --eval" eval in the global scope.
2692   (Jorge Chamorro Bieling)
2693
2694 * Let exit listeners know the exit code (isaacs)
2695
2696 * Handle cyclic links smarter in fs.realpath (isaacs)
2697
2698 * Remove node-repl (just use 'node' without args)
2699
2700 * Rewrite libeio After callback to use req->result instead of req->errorno
2701   for error checking (Micheil Smith)
2702
2703 * Remove warning about deprecating 'sys' - too aggressive
2704
2705 * Make writes to process.env update the real environment. (Ben Noordhuis)
2706
2707 * Set FD_CLOEXEC flag on stdio FDs before spawning. (Guillaume Tuton)
2708
2709 * Move ev_loop out of javascript
2710
2711 * Switch \n with \r\n for all strings printed out.
2712
2713 * Added support for cross compilation (Rasmus Andersson)
2714
2715 * Add --profile flag to configure script, enables gprof profiling.
2716   (Ben Noordhuis)
2717
2718 * writeFileSync could exhibit pathological behavior when a buffer
2719   could not be written to the file in a single write() call.
2720
2721 * new path.join behavior (isaacs)
2722   - Express desired path.join behavior in tests.
2723   - Update fs.realpath to reflect new path.join behavior
2724   - Update url.resolve() to use new path.join behavior.
2725
2726 * API: Move process.binding('evals') to require('vm')
2727
2728 * Fix V8 build on Cygwin (Bert Belder)
2729
2730 * Add ref to buffer during fs.write and fs.read
2731
2732 * Fix segfault on test-crypto
2733
2734 * Upgrade http-parser to latest and V8 to 2.5.3
2735
2736
2737 2010.10.23, Version 0.3.0 (unstable) 1582cfebd6719b2d2373547994b3dca5c8c569c0
2738
2739 * Bugfix: Do not spin on accept() with EMFILE
2740
2741 * Improvements to readline.js (Trent Mick, Johan Euphrosine, Brian White)
2742
2743 * Safe constructors (missing 'new' doesn't segfault)
2744
2745 * Fix process.nextTick so thrown errors don't confuse it.
2746   (Benjamin Thomas)
2747
2748 * Allow Strings for ports on net.Server.listen (Bradley Meck)
2749
2750 * fs bugfixes (Tj Holowaychuk, Tobie Langel, Marco Rogers, isaacs)
2751
2752 * http bug fixes (Fedor Indutny, Mikeal Rogers)
2753
2754 * Faster buffers; breaks C++ API (Tim-Smart, Stéphan Kochen)
2755
2756 * crypto, tls improvements (Paul Querna)
2757
2758 * Add lfs flags to node addon script
2759
2760 * Simpler querystring parsing; breaks API (Peter Griess)
2761
2762 * HTTP trailers (Mark Nottingham)
2763
2764 * http 100-continue support (Mark Nottingham)
2765
2766 * Module system simplifications (Herbert Vojčík, isaacs, Tim-Smart)
2767   - remove require.async
2768   - remove registerExtension, add .extensions
2769   - expose require.resolve
2770   - expose require.cache
2771   - require looks in  node_modules folders
2772
2773 * Add --eval command line option (TJ Holowaychuk)
2774
2775 * Commas last in sys.inspect
2776
2777 * Constants moved from process object to require('constants')
2778
2779 * Fix parsing of linux memory (Vitali Lovich)
2780
2781 * inspect shows function names (Jorge Chamorro Bieling)
2782
2783 * uncaughtException corner cases (Felix Geisendörfer)
2784
2785 * TCP clients now buffer writes before connection
2786
2787 * Rename sys module to 'util' (Micheil Smith)
2788
2789 * Properly set stdio handlers to blocking on SIGTERM and SIGINT
2790   (Tom Hughes)
2791
2792 * Add destroy methods to HTTP messages
2793
2794 * base64 improvements (isaacs, Jorge Chamorro Bieling)
2795
2796 * API for defining REPL commands (Sami Samhuri)
2797
2798 * child_process.exec timeout fix (Aaron Heckmann)
2799
2800 * Upgrade V8 to 2.5.1, Libev to 4.00, libeio, http-parser
2801
2802
2803 2010.08.20, Version 0.2.0, 9283e134e558900ba89d9a33c18a9bdedab07cb9
2804
2805 * process.title support for FreeBSD, Macintosh, Linux
2806
2807 * Fix OpenSSL 100% CPU usage on error (Illarionov Oleg)
2808
2809 * Implement net.Server.maxConnections.
2810
2811 * Fix process.platform, add process.version.
2812
2813 * Add --without-snapshot configure option.
2814
2815 * Readline REPL improvements (Trent Mick)
2816
2817 * Bug fixes.
2818
2819 * Upgrade V8 to 2.3.8
2820
2821
2822 2010.08.13, Version 0.1.104, b14dd49222687c12f3e8eac597cff4f2674f84e8
2823
2824 * Various bug fixes (console, querystring, require)
2825
2826 * Set cwd for child processes (Bert Belder)
2827
2828 * Tab completion for readline (Trent Mick)
2829
2830 * process.title getter/setter for OSX, Linux, Cygwin.
2831         (Rasmus Andersson, Bert Belder)
2832
2833 * Upgrade V8 to 2.3.6
2834
2835
2836 2010.08.04, Version 0.1.103, 0b925d075d359d03426f0b32bb58a5e05825b4ea
2837
2838 * Implement keep-alive for http.Client (Mikeal Rogers)
2839
2840 * base64 fixes. (Ben Noordhuis)
2841
2842 * Fix --debug-brk (Danny Coates)
2843
2844 * Don't let path.normalize get above the root. (Isaac Schlueter)
2845
2846 * Allow signals to be used with process.on in addition to
2847   process.addListener. (Brian White)
2848
2849 * Globalize the Buffer object
2850
2851 * Use kqueue on recent macintosh builds
2852
2853 * Fix addrlen for unix_dgram sockets (Benjamin Kramer)
2854
2855 * Fix stats.isDirectory() and friends (Benjamin Kramer)
2856
2857 * Upgrade http-parser, V8 to 2.3.5
2858
2859
2860 2010.07.25, Version 0.1.102, 2a4568c85f33869c75ff43ccd30f0ec188b43eab
2861
2862 * base64 encoding for Buffers.
2863
2864 * Buffer support for Cipher, Decipher, Hmac, Sign and Verify
2865   (Andrew Naylor)
2866
2867 * Support for reading byte ranges from files using fs.createReadStream.
2868   (Chandra Sekar)
2869
2870 * Fix Buffer.toString() on 0-length slices. (Peter Griess)
2871
2872 * Cache modules based on filename rather than ID (Isaac Schlueter)
2873
2874 * querystring improvments (Jan Kassens, Micheil Smith)
2875
2876 * Support DEL in the REPL. (Jérémy Lal)
2877
2878 * Upgrade http-parser, upgrade V8 to 2.3.2
2879
2880
2881 2010.07.16, Version 0.1.101, 0174ceb6b24caa0bdfc523934c56af9600fa9b58
2882
2883 * Added env to child_process.exec (Сергей Крыжановский)
2884
2885 * Allow modules to optionally be loaded in separate contexts
2886   with env var NODE_MODULE_CONTEXTS=1.
2887
2888 * setTTL and setBroadcast for dgram (Matt Ranney)
2889
2890 * Use execPath for default NODE_PATH, not installPrefix
2891   (Isaac Schlueter)
2892
2893 * Support of console.dir + console.assert (Jerome Etienne)
2894
2895 * on() as alias to addListener()
2896
2897 * Use javascript port of Ronn to build docs (Jérémy Lal)
2898
2899 * Upgrade V8 to 2.3.0
2900
2901
2902 2010.07.03, Version 0.1.100, a6b8586e947f9c3ced180fe68c233d0c252add8b
2903
2904 * process.execPath (Marshall Culpepper)
2905
2906 * sys.pump (Mikeal Rogers)
2907
2908 * Remove ini and mjsunit libraries.
2909
2910 * Introduce console.log() and friends.
2911
2912 * Switch order of arguments for Buffer.write (Blake Mizerany)
2913
2914 * On overlapping buffers use memmove (Matt Ranney)
2915
2916 * Resolve .local domains with getaddrinfo()
2917
2918 * Upgrade http-parser, V8 to 2.2.21
2919
2920
2921 2010.06.21, Version 0.1.99, a620b7298f68f68a855306437a3b60b650d61d78
2922
2923 * Datagram sockets (Paul Querna)
2924
2925 * fs.writeFile could not handle utf8 (Felix Geisendörfer)
2926   and now accepts Buffers (Aaron Heckmann)
2927
2928 * Fix crypto memory leaks.
2929
2930 * A replacement for decodeURIComponent that doesn't throw.
2931   (Isaac Schlueter)
2932
2933 * Only concatenate some incoming HTTP headers. (Peter Griess)
2934
2935 * Upgrade V8 to 2.2.18
2936
2937
2938 2010.06.11, Version 0.1.98, 10d8adb08933d1d4cea60192c2a31c56d896733d
2939
2940 * Port to Windows/Cygwin (Raffaele Sena)
2941
2942 * File descriptor passing on unix sockets. (Peter Griess)
2943
2944 * Simple, builtin readline library. REPL is now entered by
2945   executing "node" without arguments.
2946
2947 * Add a parameter to spawn() that sets the child's stdio file
2948   descriptors. (Orlando Vazquez)
2949
2950 * Upgrade V8 to 2.2.16, http-parser fixes, upgrade c-ares to 1.7.3.
2951
2952
2953 2010.05.29, Version 0.1.97, 0c1aa36835fa6a3557843dcbc6ed6714d353a783
2954
2955 * HTTP throttling: outgoing messages emit 'drain' and write() returns false
2956   when send buffer is full.
2957
2958 * API: readFileSync without encoding argument now returns a Buffer
2959
2960 * Improve Buffer C++ API; addons now compile with debugging symbols.
2961
2962 * Improvements to  path.extname() and REPL; add fs.chown().
2963
2964 * fs.ReadStream now emits buffers, fs.readFileSync returns buffers.
2965
2966 * Bugfix: parsing HTTP responses to HEAD requests.
2967
2968 * Port to OpenBSD.
2969
2970 * Upgrade V8 to 2.2.12, libeio, http-parser.
2971
2972
2973 2010.05.21, Version 0.1.96, 9514a4d5476225e8c8310ce5acae2857033bcaaa
2974
2975 * Thrown errors in http and socket call back get bubbled up.
2976
2977 * Add fs.fsync (Andrew Johnston)
2978
2979 * Bugfix: signal unregistering (Jonas Pfenniger)
2980
2981 * Added better error messages for async and sync fs calls with paths
2982   (TJ Holowaychuk)
2983
2984 * Support arrays and strings in buffer constructor.
2985   (Felix Geisendörfer)
2986
2987 * Fix errno reporting in DNS exceptions.
2988
2989 * Support buffers in fs.WriteStream.write.
2990
2991 * Bugfix: Safely decode a utf8 streams that are broken on a multbyte
2992   character (http and net). (Felix Geisendörfer)
2993
2994 * Make Buffer's C++ constructor public.
2995
2996 * Deprecate sys.p()
2997
2998 * FIX path.dirname('/tmp') => '/'. (Jonathan Rentzsch)
2999
3000
3001 2010.05.13, Version 0.1.95, 0914d33842976c2c870df06573b68f9192a1fb7a
3002
3003 * Change GC idle notify so that it runs alongside setInterval
3004
3005 * Install node_buffer.h on make install
3006
3007 * fs.readFile returns Buffer by default (Tim Caswell)
3008
3009 * Fix error reporting in child_process callbacks
3010
3011 * Better logic for testing if an argument is a port
3012
3013 * Improve error reporting (single line "node.js:176:9" errors)
3014
3015 * Bugfix: Some http responses being truncated (appeared in 0.1.94)
3016
3017 * Fix long standing net idle timeout bugs. Enable 2 minute timeout
3018   by default in HTTP servers.
3019
3020 * Add fs.fstat (Ben Noordhuis)
3021
3022 * Upgrade to V8 2.2.9
3023
3024
3025 2010.05.06, Version 0.1.94, f711d5343b29d1e72e87107315708e40951a7826
3026
3027 * Look in /usr/local/lib/node for modules, so that there's a way
3028   to install modules globally (Issac Schlueter)
3029
3030 * SSL improvements (Rhys Jones, Paulo Matias)
3031
3032 * Added c-ares headers for linux-arm (Jonathan Knezek)
3033
3034 * Add symbols to release build
3035
3036 * HTTP upgrade improvements, docs (Micheil Smith)
3037
3038 * HTTP server emits 'clientError' instead of printing message
3039
3040 * Bugfix: Don't emit 'error' twice from http.Client
3041
3042 * Bugfix: Ignore SIGPIPE
3043
3044 * Bugfix: destroy() instead of end() http connection at end of
3045   pipeline
3046
3047 * Bugfix: http.Client may be prematurely released back to the
3048   free pool.  (Thomas Lee)
3049
3050 * Upgrade V8 to 2.2.8
3051
3052
3053 2010.04.29, Version 0.1.93, 557ba6bd97bad3afe0f9bd3ac07efac0a39978c1
3054
3055   * Fixed no 'end' event on long chunked HTTP messages
3056     https://github.com/joyent/node/issues/77
3057
3058   * Remove legacy modules http_old and tcp_old
3059
3060   * Support DNS MX queries (Jérémy Lal)
3061
3062   * Fix large socket write (tlb@tlb.org)
3063
3064   * Fix child process exit codes (Felix Geisendörfer)
3065
3066   * Allow callers to disable PHP/Rails style parameter munging in
3067     querystring.stringify (Thomas Lee)
3068
3069   * Upgrade V8 to 2.2.6
3070
3071
3072 2010.04.23, Version 0.1.92, caa828a242f39b6158084ef4376355161c14fe34
3073
3074   * OpenSSL support. Still undocumented (see tests). (Rhys Jones)
3075
3076   * API: Unhandled 'error' events throw.
3077
3078   * Script class with eval-function-family in binding('evals') plus tests.
3079     (Herbert Vojcik)
3080
3081   * stream.setKeepAlive (Julian Lamb)
3082
3083   * Bugfix: Force no body on http 204 and 304
3084
3085   * Upgrade Waf to 1.5.16, V8 to 2.2.4.2
3086
3087
3088 2010.04.15, Version 0.1.91, 311d7dee19034ff1c6bc9098c36973b8d687eaba
3089
3090   * Add incoming.httpVersion
3091
3092   * Object.prototype problem with C-Ares binding
3093
3094   * REPL can be run from multiple different streams. (Matt Ranney)
3095
3096   * After V8 heap is compact, don't use a timer every 2 seconds.
3097
3098   * Improve nextTick implementation.
3099
3100   * Add primative support for Upgrading HTTP connections.
3101     (See commit log for docs 760bba5)
3102
3103   * Add timeout and maxBuffer options to child_process.exec
3104
3105   * Fix bugs.
3106
3107   * Upgrade V8 to 2.2.3.1
3108
3109
3110 2010.04.09, Version 0.1.90, 07e64d45ffa1856e824c4fa6afd0442ba61d6fd8
3111
3112   * Merge writing of networking system (net2)
3113    - New Buffer object for binary data.
3114    - Support UNIX sockets, Pipes
3115    - Uniform stream API
3116    - Currently no SSL
3117    - Legacy modules can be accessed at 'http_old' and 'tcp_old'
3118
3119   * Replace udns with c-ares. (Krishna Rajendran)
3120
3121   * New documentation system using Markdown and Ronn
3122     (Tim Caswell, Micheil Smith)
3123
3124   * Better idle-time GC
3125
3126   * Countless small bug fixes.
3127
3128   * Upgrade V8 to 2.2.X, WAF 1.5.15
3129
3130
3131 2010.03.19, Version 0.1.33, 618296ef571e873976f608d91a3d6b9e65fe8284
3132
3133   * Include lib/ directory in node executable. Compile on demand.
3134
3135   * evalcx clean ups (Isaac Z. Schlueter, Tim-Smart)
3136
3137   * Various fixes, clean ups
3138
3139   * V8 upgraded to 2.1.5
3140
3141
3142 2010.03.12, Version 0.1.32, 61c801413544a50000faa7f58376e9b33ba6254f
3143
3144   * Optimize event emitter for single listener
3145
3146   * Add process.evalcx, require.registerExtension (Tim Smart)
3147
3148   * Replace --cflags with --vars
3149
3150   * Fix bugs in fs.create*Stream (Felix Geisendörfer)
3151
3152   * Deprecate process.mixin, process.unloop
3153
3154   * Remove the 'Error: (no message)' exceptions, print stack
3155     trace instead
3156
3157   * INI parser bug fixes (Isaac Schlueter)
3158
3159   * FreeBSD fixes (Vanilla Hsu)
3160
3161   * Upgrade to V8 2.1.3, WAF 1.5.14a, libev
3162
3163
3164 2010.03.05, Version 0.1.31, 39b63dfe1737d46a8c8818c92773ef181fd174b3
3165
3166   * API: - Move process.watchFile into fs module
3167          - Move process.inherits to sys
3168
3169   * Improve Solaris port
3170
3171   * tcp.Connection.prototype.write now returns boolean to indicate if
3172     argument was flushed to the kernel buffer.
3173
3174   * Added fs.link, fs.symlink, fs.readlink, fs.realpath
3175     (Rasmus Andersson)
3176
3177   * Add setgid,getgid (James Duncan)
3178
3179   * Improve sys.inspect (Benjamin Thomas)
3180
3181   * Allow passing env to child process (Isaac Schlueter)
3182
3183   * fs.createWriteStream, fs.createReadStream (Felix Geisendörfer)
3184
3185   * Add INI parser (Rob Ellis)
3186
3187   * Bugfix: fs.readFile handling encoding (Jacek Becela)
3188
3189   * Upgrade V8 to 2.1.2
3190
3191
3192 2010.02.22, Version 0.1.30, bb0d1e65e1671aaeb21fac186b066701da0bc33b
3193
3194   * Major API Changes
3195
3196     - Promises removed. See
3197       http://groups.google.com/group/nodejs/msg/426f3071f3eec16b
3198       http://groups.google.com/group/nodejs/msg/df199d233ff17efa
3199       The API for fs was
3200
3201          fs.readdir("/usr").addCallback(function (files) {
3202            puts("/usr files: " + files);
3203          });
3204
3205       It is now
3206
3207          fs.readdir("/usr", function (err, files) {
3208            if (err) throw err;
3209            puts("/usr files: " + files);
3210          });
3211
3212     - Synchronous fs operations exposed, use with care.
3213
3214     - tcp.Connection.prototype.readPause() and readResume()
3215       renamed to pause() and resume()
3216
3217     - http.ServerResponse.prototype.sendHeader() renamed to
3218       writeHeader(). Now accepts reasonPhrase.
3219
3220   * Compact garbage on idle.
3221
3222   * Configurable debug ports, and --debug-brk (Zoran Tomicic)
3223
3224   * Better command line option parsing (Jeremy Ashkenas)
3225
3226   * Add fs.chmod (Micheil Smith), fs.lstat (Isaac Z. Schlueter)
3227
3228   * Fixes to process.mixin (Rasmus Andersson, Benjamin Thomas)
3229
3230   * Upgrade V8 to 2.1.1
3231
3232
3233 2010.02.17, Version 0.1.29, 87d5e5b316a4276bcf881f176971c1a237dcdc7a
3234
3235   * Major API Changes
3236     - Remove 'file' module
3237     - require('posix') -----------------> require('fs')
3238     - fs.cat ---------------------------> fs.readFile
3239     - file.write -----------------------> fs.writeFile
3240     - TCP 'receive' event --------------> 'data'
3241     - TCP 'eof' event ------------------> 'end'
3242     - TCP send() -----------------------> write()
3243     - HTTP sendBody() ------------------> write()
3244     - HTTP finish() --------------------> close()
3245     - HTTP 'body' event ----------------> 'data'
3246     - HTTP 'complete' event ------------> 'end'
3247     - http.Client.prototype.close() (formerly finish()) no longer
3248       takes an argument. Add the 'response' listener manually.
3249     - Allow strings for the flag argument to fs.open
3250       ("r", "r+", "w", "w+", "a", "a+")
3251
3252   * Added multiple arg support for sys.puts(), print(), etc.
3253     (tj@vision-media.ca)
3254
3255   * sys.inspect(Date) now shows the date value (Mark Hansen)
3256
3257   * Calculate page size with getpagesize for armel (Jérémy Lal)
3258
3259   * Bugfix: stderr flushing.
3260
3261   * Bugfix: Promise late chain (Yuichiro MASUI)
3262
3263   * Bugfix: wait() on fired promises
3264     (Felix Geisendörfer, Jonas Pfenniger)
3265
3266   * Bugfix: Use InstanceTemplate() instead of PrototypeTemplate() for
3267     accessor methods. Was causing a crash with Eclipse debugger.
3268     (Zoran Tomicic)
3269
3270   * Bugfix: Throw from connection.connect if resolving.
3271     (Reported by James Golick)
3272
3273
3274 2010.02.09, Version 0.1.28, 49de41ef463292988ddacfb01a20543b963d9669
3275
3276   * Use Google's jsmin.py which can be used for evil.
3277
3278   * Add posix.truncate()
3279
3280   * Throw errors from server.listen()
3281
3282   * stdio bugfix (test by Mikeal Rogers)
3283
3284   * Module system refactor (Felix Geisendörfer, Blaine Cook)
3285
3286   * Add process.setuid(), getuid() (Michael Carter)
3287
3288   * sys.inspect refactor (Tim Caswell)
3289
3290   * Multipart library rewrite (isaacs)
3291
3292
3293 2010.02.03, Version 0.1.27, 0cfa789cc530848725a8cb5595224e78ae7b9dd0
3294
3295   * Implemented __dirname (Felix Geisendörfer)
3296
3297   * Downcase process.ARGV, process.ENV, GLOBAL
3298     (now process.argv, process.env, global)
3299
3300   * Bug Fix: Late promise promise callbacks firing
3301     (Felix Geisendörfer, Jonas Pfenniger)
3302
3303   * Make assert.AssertionError instance of Error
3304
3305   * Removed inline require call for querystring
3306     (self@cloudhead.net)
3307
3308   * Add support for MX, TXT, and SRV records in DNS module.
3309     (Blaine Cook)
3310
3311   * Bugfix: HTTP client automatically reconnecting
3312
3313   * Adding OS X .dmg build scripts. (Standa Opichal)
3314
3315   * Bugfix: ObjectWrap memory leak
3316
3317   * Bugfix: Multipart handle Content-Type headers with charset
3318     (Felix Geisendörfer)
3319
3320   * Upgrade http-parser to fix header overflow attack.
3321
3322   * Upgrade V8 to 2.1.0
3323
3324   * Various other bug fixes, performance improvements.
3325
3326
3327 2010.01.20, Version 0.1.26, da00413196e432247346d9e587f8c78ce5ceb087
3328
3329   * Bugfix, HTTP eof causing crash (Ben Williamson)
3330
3331   * Better error message on SyntaxError
3332
3333   * API: Move Promise and EventEmitter into 'events' module
3334
3335   * API: Add process.nextTick()
3336
3337   * Allow optional params to setTimeout, setInterval
3338     (Micheil Smith)
3339
3340   * API: change some Promise behavior (Felix Geisendörfer)
3341     - Removed Promise.cancel()
3342     - Support late callback binding
3343     - Make unhandled Promise errors throw an exception
3344
3345   * Upgrade V8 to 2.0.6.1
3346
3347   * Solaris port (Erich Ocean)
3348
3349
3350 2010.01.09, Version 0.1.25, 39ca93549af91575ca9d4cbafd1e170fbcef3dfa
3351
3352   * sys.inspect() improvements (Tim Caswell)
3353
3354   * path module improvements (isaacs, Benjamin Thomas)
3355
3356   * API: request.uri -> request.url
3357     It is no longer an object, but a string. The 'url' module
3358     was addded to parse that string. That is, node no longer
3359     parses the request URL automatically.
3360
3361        require('url').parse(request.url)
3362
3363     is roughly equivlent to the old request.uri object.
3364     (isaacs)
3365
3366   * Bugfix: Several libeio related race conditions.
3367
3368   * Better errors for multipart library (Felix Geisendörfer)
3369
3370   * Bugfix: Update node-waf version to 1.5.10
3371
3372   * getmem for freebsd (Vanilla Hsu)
3373
3374
3375 2009.12.31, Version 0.1.24, 642c2773a7eb2034f597af1cd404b9e086b59632
3376
3377   * Bugfix: don't chunk responses to HTTP/1.0 clients, even if
3378     they send Connection: Keep-Alive (e.g. wget)
3379
3380   * Bugfix: libeio race condition
3381
3382   * Bugfix: Don't segfault on unknown http method
3383
3384   * Simplify exception reporting
3385
3386   * Upgrade V8 to 2.0.5.4
3387
3388
3389 2009.12.22, Version 0.1.23, f91e347eeeeac1a8bd6a7b462df0321b60f3affc
3390
3391   * Bugfix: require("../blah") issues (isaacs)
3392
3393   * Bugfix: posix.cat (Jonas Pfenniger)
3394
3395   * Do not pause request for multipart parsing (Felix Geisendörfer)
3396
3397
3398 2009.12.19, Version 0.1.22, a2d809fe902f6c4102dba8f2e3e9551aad137c0f
3399
3400   * Bugfix: child modules get wrong id with "index.js" (isaacs)
3401
3402   * Bugfix: require("../foo") cycles (isaacs)
3403
3404   * Bugfix: require() should throw error if module does.
3405
3406   * New URI parser stolen from Narwhal (isaacs)
3407
3408   * Bugfix: correctly check kqueue and epoll. (Rasmus Andersson)
3409
3410   * Upgrade WAF to 1.5.10
3411
3412   * Bugfix: posix.statSync() was crashing
3413
3414   * Statically define string symbols for performance improvement
3415
3416   * Bugfix: ARGV[0] weirdness
3417
3418   * Added superCtor to ctor.super_ instead superCtor.prototype.
3419     (Johan Dahlberg)
3420
3421   * http-parser supports webdav methods
3422
3423   * API: http.Client.prototype.request() (Christopher Lenz)
3424
3425
3426 2009.12.06, Version 0.1.21, c6affb64f96a403a14d20035e7fbd6d0ce089db5
3427
3428   * Feature: Add HTTP client TLS support (Rhys Jones)
3429
3430   * Bugfix: use --jobs=1 with WAF
3431
3432   * Bugfix: Don't use chunked encoding for 1.0 requests
3433
3434   * Bugfix: Duplicated header weren't handled correctly
3435
3436   * Improve sys.inspect (Xavier Shay)
3437
3438   * Upgrade v8 to 2.0.3
3439
3440   * Use CommonJS assert API (Felix Geisendörfer, Karl Guertin)
3441
3442
3443 2009.11.28, Version 0.1.20, aa42c6790da8ed2cd2b72051c07f6251fe1724d8
3444
3445   * Add gnutls version to configure script
3446
3447   * Add V8 heap info to process.memoryUsage()
3448
3449   * process.watchFile callback has 2 arguments with the stat object
3450     (choonkeat@gmail.com)
3451
3452
3453 2009.11.28, Version 0.1.19, 633d6be328708055897b72327b88ac88e158935f
3454
3455   * Feature: Initial TLS support for TCP servers and clients.
3456     (Rhys Jones)
3457
3458   * Add options to process.watchFile()
3459
3460   * Add process.umask() (Friedemann Altrock)
3461
3462   * Bugfix: only detach timers when active.
3463
3464   * Bugfix: lib/file.js write(), shouldn't always emit errors or success
3465     (onne@onnlucky.com)
3466
3467   * Bugfix: Memory leak in fs.write
3468     (Reported by onne@onnlucky.com)
3469
3470   * Bugfix: Fix regular expressions detecting outgoing message headers.
3471     (Reported by Elliott Cable)
3472
3473   * Improvements to Multipart parser (Felix Geisendörfer)
3474
3475   * New HTTP parser
3476
3477   * Upgrade v8 to 2.0.2
3478
3479
3480 2009.11.17, Version 0.1.18, 027829d2853a14490e6de9fc5f7094652d045ab8
3481
3482   * Feature: process.watchFile() process.unwatchFile()
3483
3484   * Feature: "uncaughtException" event on process
3485     (Felix Geisendörfer)
3486
3487   * Feature: 'drain' event to tcp.Connection
3488
3489   * Bugfix: Promise.timeout() blocked the event loop
3490     (Felix Geisendörfer)
3491
3492   * Bugfix: sendBody() and chunked utf8 strings
3493     (Felix Geisendörfer)
3494
3495   * Supply the strerror as a second arg to the tcp.Connection close
3496     event (Johan Sørensen)
3497
3498   * Add EventEmitter.removeListener (frodenius@gmail.com)
3499
3500   * Format JSON for inspecting objects (Felix Geisendörfer)
3501
3502   * Upgrade libev to latest CVS
3503
3504
3505 2009.11.07, Version 0.1.17, d1f69ef35dac810530df8249d523add168e09f03
3506
3507   * Feature: process.chdir() (Brandon Beacher)
3508
3509   * Revert http parser upgrade. (b893859c34f05db5c45f416949ebc0eee665cca6)
3510     Broke keep-alive.
3511
3512   * API: rename process.inherits to sys.inherits
3513
3514
3515 2009.11.03, Version 0.1.16, 726865af7bbafe58435986f4a193ff11c84e4bfe
3516
3517   * API: Use CommonJS-style module requiring
3518     - require("/sys.js") becomes require("sys")
3519     - require("circle.js") becomes require("./circle")
3520     - process.path.join() becomes require("path").join()
3521     - __module becomes module
3522
3523   * API: Many namespacing changes
3524     - Move node.* into process.*
3525     - Move node.dns into module "dns"
3526     - Move node.fs into module "posix"
3527     - process is no longer the global object. GLOBAL is.
3528
3529   For more information on the API changes see:
3530     http://thread.gmane.org/gmane.comp.lang.javascript.nodejs/6
3531     http://thread.gmane.org/gmane.comp.lang.javascript.nodejs/14
3532
3533   * Feature: process.platform, process.memoryUsage()
3534
3535   * Feature: promise.cancel() (Felix Geisendörfer)
3536
3537   * Upgrade V8 to 1.3.18
3538
3539
3540 2009.10.28, Version 0.1.15, eca2de73ed786b935507fd1c6faccd8df9938fd3
3541
3542   * Many build system fixes (esp. for OSX users)
3543
3544   * Feature: promise.timeout() (Felix Geisendörfer)
3545
3546   * Feature: Added external interface for signal handlers, process.pid, and
3547     process.kill() (Brandon Beacher)
3548
3549   * API: Rename node.libraryPaths to require.paths
3550
3551   * Bugfix: 'data' event for stdio should emit a string
3552
3553   * Large file support
3554
3555   * Upgrade http_parser
3556
3557   * Upgrade v8 to 1.3.16
3558
3559
3560 2009.10.09, Version 0.1.14, b12c809bb84d1265b6a4d970a5b54ee8a4890513
3561
3562   * Feature: Improved addon builds with node-waf
3563
3564   * Feature: node.SignalHandler (Brandon Beacher)
3565
3566   * Feature: Enable V8 debugging (but still need to make a debugger)
3567
3568   * API: Rename library /utils.js to /sys.js
3569
3570   * Clean up Node's build system
3571
3572   * Don't use parseUri for HTTP server
3573
3574   * Remove node.pc
3575
3576   * Don't use /bin/sh to create child process except with exec()
3577
3578   * API: Add __module to reference current module
3579
3580   * API: Remove include() add node.mixin()
3581
3582   * Normalize http headers; "Content-Length" becomes "content-length"
3583
3584   * Upgrade V8 to 1.3.15
3585
3586
3587 2009.09.30, Version 0.1.13, 58493bb05b3da3dc8051fabc0bdea9e575c1a107
3588
3589   * Feature: Multipart stream parser (Felix Geisendörfer)
3590
3591   * API: Move node.puts(), node.exec() and others to /utils.js
3592
3593   * API: Move http, tcp libraries to /http.js and /tcp.js
3594
3595   * API: Rename node.exit() to process.exit()
3596
3597   * Bugfix: require() and include() should work in callbacks.
3598
3599   * Pass the Host header in http.cat calls
3600
3601   * Add warning when coroutine stack size grows too large.
3602
3603   * Enhance repl library (Ray Morgan)
3604
3605   * Bugfix: build script for
3606       GCC 4.4 (removed -Werror in V8),
3607       on Linux 2.4,
3608       and with Python 2.4.4.
3609
3610   * Add read() and write() to /file.js to read and write
3611     whole files at once.
3612
3613
3614 2009.09.24, Version 0.1.12, 2f56ccb45e87510de712f56705598b3b4e3548ec
3615
3616   * Feature: System modules, node.libraryPaths
3617
3618   * API: Remove "raw" encoding, rename "raws" to "binary".
3619
3620   * API: Added connection.setNoDElay() to disable Nagle algo.
3621
3622   * Decrease default TCP server backlog to 128
3623
3624   * Bugfix: memory leak involving node.fs.* methods.
3625
3626   * Upgrade v8 to 1.3.13
3627
3628
3629 2009.09.18, Version 0.1.11, 5ddc4f5d0c002bac0ae3d62fc0dc58f0d2d83ec4
3630
3631   * API: default to utf8 encoding for node.fs.cat()
3632
3633   * API: add node.exec()
3634
3635   * API: node.fs.read() takes a normal encoding parameter.
3636
3637   * API: Change arguments of emit(), emitSuccess(), emitError()
3638
3639   * Bugfix: node.fs.write() was stack allocating buffer.
3640
3641   * Bugfix: ReportException shouldn't forget the top frame.
3642
3643   * Improve buffering for HTTP outgoing messages
3644
3645   * Fix and reenable x64 macintosh build.
3646
3647   * Upgrade v8 to 1.3.11
3648
3649
3650 2009.09.11, Version 0.1.10, 12bb0d46ce761e3d00a27170e63b40408c15b558
3651
3652   * Feature: raw string encoding "raws"
3653
3654   * Feature: access to environ through "ENV"
3655
3656   * Feature: add isDirectory, isFile, isSocket, ... methods
3657     to stats object.
3658
3659   * Bugfix: Internally use full paths when loading modules
3660     this fixes a shebang loading problem.
3661
3662   * Bugfix: Add '--' command line argument for seperating v8
3663     args from program args.
3664
3665   * Add man page.
3666
3667   * Add node-repl
3668
3669   * Upgrade v8 to 1.3.10
3670
3671 2009.09.05, Version 0.1.9, d029764bb32058389ecb31ed54a5d24d2915ad4c
3672
3673   * Bugfix: Compile on Snow Leopard.
3674
3675   * Bugfix: Malformed URIs raising exceptions.
3676
3677 2009.09.04, Version 0.1.8, e6d712a937b61567e81b15085edba863be16ba96
3678
3679   * Feature: External modules
3680
3681   * Feature: setTimeout() for node.tcp.Connection
3682
3683   * Feature: add node.cwd(), node.fs.readdir(), node.fs.mkdir()
3684
3685   * Bugfix: promise.wait() releasing out of order.
3686
3687   * Bugfix: Asyncly do getaddrinfo() on Apple.
3688
3689   * Disable useless evcom error messages.
3690
3691   * Better stack traces.
3692
3693   * Built natively on x64.
3694
3695   * Upgrade v8 to 1.3.9
3696
3697 2009.08.27, Version 0.1.7, f7acef9acf8ba8433d697ad5ed99d2e857387e4b
3698
3699   * Feature: global 'process' object. Emits "exit".
3700
3701   * Feature: promise.wait()
3702
3703   * Feature: node.stdio
3704
3705   * Feature: EventEmitters emit "newListener" when listeners are
3706     added
3707
3708   * API:  Use flat object instead of array-of-arrays for HTTP
3709     headers.
3710
3711   * API: Remove buffered file object (node.File)
3712
3713   * API: require(), include() are synchronous. (Uses
3714     continuations.)
3715
3716   * API: Deprecate onLoad and onExit.
3717
3718   * API: Rename node.Process to node.ChildProcess
3719
3720   * Refactor node.Process to take advantage of evcom_reader/writer.
3721
3722   * Upgrade v8 to 1.3.7
3723
3724 2009.08.22, Version 0.1.6, 9c97b1db3099d61cd292aa59ec2227a619f3a7ab
3725
3726   * Bugfix: Ignore SIGPIPE.
3727
3728 2009.08.21, Version 0.1.5, b0fd3e281cb5f7cd8d3a26bd2b89e1b59998e5ed
3729
3730   * Bugfix: Buggy connections could crash node.js. Now check
3731     connection before sending data every time (Kevin van Zonneveld)
3732
3733   * Bugfix: stdin fd (0) being ignored by node.File. (Abe Fettig)
3734
3735   * API: Remove connnection.fullClose()
3736
3737   * API: Return the EventEmitter from addListener for chaining.
3738
3739   * API: tcp.Connection "disconnect" event renamed to "close"
3740
3741   * Upgrade evcom
3742     Upgrade v8 to 1.3.6
3743
3744 2009.08.13, Version 0.1.4, 0f888ed6de153f68c17005211d7e0f960a5e34f3
3745
3746   * Major refactor to evcom.
3747
3748   * Enable test-tcp-many-clients.
3749
3750   * Add -m32 gcc flag to udns.
3751
3752   * Add connection.readPause() and connection.readResume()
3753     Add IncomingMessage.prototype.pause() and resume().
3754
3755   * Fix http benchmark. Wasn't correctly dispatching.
3756
3757   * Bugfix: response.setBodyEncoding("ascii") not working.
3758
3759   * Bugfix: Negative ints in HTTP's on_body and node.fs.read()
3760
3761   * Upgrade v8 to 1.3.4
3762     Upgrade libev to 3.8
3763     Upgrade http_parser to v0.2
3764
3765 2009.08.06, Version 0.1.3, 695f0296e35b30cf8322fd1bd934810403cca9f3
3766
3767   * Upgrade v8 to 1.3.2
3768
3769   * Bugfix: node.http.ServerRequest.setBodyEncoding('ascii') not
3770     working
3771
3772   * Bugfix: node.encodeUtf8 was broken. (Connor Dunn)
3773
3774   * Add ranlib to udns Makefile.
3775
3776   * Upgrade evcom - fix accepting too many connections issue.
3777
3778   * Initial support for shebang
3779
3780   * Add simple command line switches
3781
3782   * Add node.version API
3783
3784
3785 2009.08.01, Version 0.1.2, 025a34244d1cea94d6d40ad7bf92671cb909a96c
3786
3787   * Add DNS API
3788
3789   * node.tcp.Server's backlog option is now an argument to listen()
3790
3791   * Upgrade V8 to 1.3.1
3792
3793   * Bugfix: Default to chunked for client requests without
3794     Content-Length.
3795
3796   * Bugfix: Line numbers in stack traces.
3797
3798   * Bugfix: negative integers in raw encoding stream
3799
3800   * Bugfix: node.fs.File was not passing args to promise callbacks.
3801
3802
3803 2009.07.27, Version 0.1.1, 77d407df2826b20e9177c26c0d2bb4481e497937
3804
3805   * Simplify and clean up ObjectWrap.
3806
3807   * Upgrade liboi (which is now called evcom)
3808     Upgrade libev to 3.7
3809     Upgrade V8 to 1.2.14
3810
3811   * Array.prototype.encodeUtf8 renamed to node.encodeUtf8(array)
3812
3813   * Move EventEmitter.prototype.emit() completely into C++.
3814
3815   * Bugfix: Fix memory leak in event emitters.
3816     http://groups.google.com/group/nodejs/browse_thread/thread/a8d1dfc2fd57a6d1
3817
3818   * Bugfix: Had problems reading scripts with non-ascii characters.
3819
3820   * Bugfix: Fix Detach() in node::Server
3821
3822   * Bugfix: Sockets not properly reattached if reconnected during
3823     disconnect event.
3824
3825   * Bugfix: Server-side clients not attached between creation and
3826     on_connect.
3827
3828   * Add 'close' event to node.tcp.Server
3829
3830   * Simplify and clean up http.js. (Takes more advantage of event
3831     infrastructure.)
3832
3833   * Add benchmark scripts. Run with "make benchmark".
3834
3835
3836 2009.06.30, Version 0.1.0, 0fe44d52fe75f151bceb59534394658aae6ac328
3837
3838   * Update documentation, use asciidoc.
3839
3840   * EventEmitter and Promise interfaces. (Breaks previous API.)
3841
3842   * Remove node.Process constructor in favor of node.createProcess
3843
3844   * Add -m32 flags for compiling on x64 platforms.
3845     (Thanks to András Bártházi)
3846
3847   * Upgrade v8 to 1.2.10 and libev to 3.6
3848
3849   * Bugfix: Timer::RepeatSetter wasn't working.
3850
3851   * Bugfix: Spawning many processes in a loop
3852     (reported by Felix Geisendörfer)
3853
3854
3855 2009.06.24, Version 0.0.6, fbe0be19ebfb422d8fa20ea5204c1713e9214d5f
3856
3857   * Load modules via HTTP URLs (Urban Hafner)
3858
3859   * Bugfix: Add HTTPConnection->size() and HTTPServer->size()
3860
3861   * New node.Process API
3862
3863   * Clean up build tools, use v8's test runner.
3864
3865   * Use ev_unref() instead of starting/stopping the eio thread
3866     pool watcher.
3867
3868
3869 2009.06.18, Version 0.0.5, 3a2b41de74b6c343b8464a68eff04c4bfd9aebea
3870
3871   * Support for IPv6
3872
3873   * Remove namespace node.constants
3874
3875   * Upgrade v8 to 1.2.8.1
3876
3877   * Accept ports as strings in the TCP client and server.
3878
3879   * Bugfix: HTTP Client race
3880
3881   * Bugfix: freeaddrinfo() wasn't getting called after
3882     getaddrinfo() for TCP servers
3883
3884   * Add "opening" to TCP client readyState
3885
3886   * Add remoteAddress to TCP client
3887
3888   * Add global print() function.
3889
3890
3891 2009.06.13, Version 0.0.4, 916b9ca715b229b0703f0ed6c2fc065410fb189c
3892
3893  * Add interrupt() method to server-side HTTP requests.
3894
3895  * Bugfix: onBodyComplete was not getting called on server-side
3896    HTTP
3897
3898
3899 2009.06.11, Version 0.0.3, 6e0dfe50006ae4f5dac987f055e0c9338662f40a
3900
3901  * Many bug fixes including the problem with http.Client on
3902    macintosh
3903
3904  * Upgrades v8 to 1.2.7
3905
3906  * Adds onExit hook
3907
3908  * Guard against buffer overflow in http parser
3909
3910  * require() and include() now need the ".js" extension
3911
3912  * http.Client uses identity transfer encoding by default.