The data contained in this repository can be downloaded to your computer using one of several clients.
Please see the documentation of your version control software client for more information.

Please select the desired protocol below to get the URL.

This URL has Read-Only access.

Statistics
| Branch: | Revision:

main_repo / ChangeLog @ 1e0de9c4

History | View | Annotate | Download (115 KB)

1
2013.03.28, Version 0.10.2 (Stable)
2

    
3
* npm: Upgrade to 1.2.15
4

    
5
* uv: Upgrade to 0.10.3
6

    
7
* tls: handle SSL_ERROR_ZERO_RETURN (Fedor Indutny)
8

    
9
* tls: handle errors before calling C++ methods (Fedor Indutny)
10

    
11
* tls: remove harmful unnecessary bounds checking (Marcel Laverdet)
12

    
13
* crypto: make getCiphers() return non-SSL ciphers (Ben Noordhuis)
14

    
15
* crypto: check randomBytes() size argument (Ben Noordhuis)
16

    
17
* timers: do not calculate Timeout._when property (Alexey Kupershtokh)
18

    
19
* timers: fix off-by-one ms error (Alexey Kupershtokh)
20

    
21
* timers: handle signed int32 overflow in enroll() (Fedor Indutny)
22

    
23
* stream: Fix stall in Transform under very specific conditions (Gil Pedersen)
24

    
25
* stream: Handle late 'readable' event listeners (isaacs)
26

    
27
* stream: Fix early end in Writables on zero-length writes (isaacs)
28

    
29
* domain: fix domain callback from MakeCallback (Trevor Norris)
30

    
31
* child_process: don't emit same handle twice (Ben Noordhuis)
32

    
33
* child_process: fix sending utf-8 to child process (Ben Noordhuis)
34

    
35

    
36
2013.03.21, Version 0.10.1 (Stable), c274d1643589bf104122674a8c3fd147527a667d
37

    
38
* npm: upgrade to 1.2.15
39

    
40
* crypto: Improve performance of non-stream APIs (Fedor Indutny)
41

    
42
* tls: always reset this.ssl.error after handling (Fedor Indutny)
43

    
44
* tls: Prevent mid-stream hangs (Fedor Indutny, isaacs)
45

    
46
* net: improve arbitrary tcp socket support (Ben Noordhuis)
47

    
48
* net: handle 'finish' event only after 'connect' (Fedor Indutny)
49

    
50
* http: Don't hot-path end() for large buffers (isaacs)
51

    
52
* fs: Missing cb errors are deprecated, not a throw (isaacs)
53

    
54
* fs: make write/appendFileSync correctly set file mode (Raymond Feng)
55

    
56
* stream: Return self from readable.wrap (isaacs)
57

    
58
* stream: Never call decoder.end() multiple times (Gil Pedersen)
59

    
60
* windows: enable watching signals with process.on('SIGXYZ') (Bert Belder)
61

    
62
* node: revert removal of MakeCallback (Trevor Norris)
63

    
64
* node: Unwrap without aborting in handle fd getter (isaacs)
65

    
66

    
67
2013.03.11, Version 0.10.0 (Stable), 163ca274230fce536afe76c64676c332693ad7c1
68

    
69
* npm: Upgrade to 1.2.14
70

    
71
* core: Append filename properly in dlopen on windows (isaacs)
72

    
73
* zlib: Manage flush flags appropriately (isaacs)
74

    
75
* domains: Handle errors thrown in nested error handlers (isaacs)
76

    
77
* buffer: Strip high bits when converting to ascii (Ben Noordhuis)
78

    
79
* win/msi: Enable modify and repair (Bert Belder)
80

    
81
* win/msi: Add feature selection for various node parts (Bert Belder)
82

    
83
* win/msi: use consistent registry key paths (Bert Belder)
84

    
85
* child_process: support sending dgram socket (Andreas Madsen)
86

    
87
* fs: Raise EISDIR on Windows when calling fs.read/write on a dir (isaacs)
88

    
89
* unix: fix strict aliasing warnings, macro-ify functions (Ben Noordhuis)
90

    
91
* unix: honor UV_THREADPOOL_SIZE environment var (Ben Noordhuis)
92

    
93
* win/tty: fix typo in color attributes enumeration (Bert Belder)
94

    
95
* win/tty: don't touch insert mode or quick edit mode (Bert Belder)
96

    
97

    
98
2013.03.06, Version 0.9.12 (Unstable), 0debf5a82934da805592b6496756cdf27c993abc
99

    
100
* stream: Allow strings in Readable.push/unshift (isaacs)
101

    
102
* stream: Remove bufferSize option (isaacs)
103

    
104
* stream: Increase highWaterMark on large reads (isaacs)
105

    
106
* stream: _write: takes an encoding argument (isaacs)
107

    
108
* stream: _transform: remove output() method, provide encoding (isaacs)
109

    
110
* stream: Don't require read(0) to emit 'readable' event (isaacs)
111

    
112
* node: Add --throw-deprecation (isaacs)
113

    
114
* http: fix multiple timeout events (Eugene Girshov)
115

    
116
* http: More useful setTimeout API on server (isaacs)
117

    
118
* net: use close callback, not process.nextTick (Ben Noordhuis)
119

    
120
* net: Provide better error when writing after FIN (isaacs)
121

    
122
* dns: Support NAPTR queries (Pavel Lang)
123

    
124
* dns: fix ReferenceError in resolve() error path (Xidorn Quan)
125

    
126
* child_process: handle ENOENT correctly on Windows (Scott Blomquist)
127

    
128
* cluster: Rename destroy() to kill(signal=SIGTERM) (isaacs)
129

    
130
* build: define nightly tag external to build system (Timothy J Fontaine)
131

    
132
* build: make msi build work when spaces are present in the path (Bert Belder)
133

    
134
* build: fix msi build issue with WiX 3.7/3.8 (Raymond Feng)
135

    
136
* repl: make compatible with domains (Dave Olszewski)
137

    
138
* events: Code cleanup and performance improvements (Trevor Norris)
139

    
140

    
141
2013.03.01, Version 0.9.11 (Unstable), 83392403b7a9b7782b37c17688938c75010f81ba
142

    
143
* V8: downgrade to 3.14.5
144

    
145
* openssl: update to 1.0.1e
146

    
147
* darwin: Make process.title work properly (Ben Noordhuis)
148

    
149
* fs: Support mode/flag options to read/append/writeFile (isaacs)
150

    
151
* stream: _read() no longer takes a callback (isaacs)
152

    
153
* stream: Add stream.unshift(chunk) (isaacs)
154

    
155
* stream: remove lowWaterMark feature (isaacs)
156

    
157
* net: omit superfluous 'connect' event (Ben Noordhuis)
158

    
159
* build, windows: disable SEH (Ben Noordhuis)
160

    
161
* core: remove errno global (Ben Noordhuis)
162

    
163
* core: Remove the nextTick for running the main file (isaacs)
164

    
165
* core: Mark exit() calls with status codes (isaacs)
166

    
167
* core: Fix debug signal handler race condition lock (isaacs)
168

    
169
* crypto: clear error stack (Ben Noordhuis)
170

    
171
* test: optionally set common.PORT via env variable (Timothy J Fontaine)
172

    
173
* path: Throw TypeError on non-string args to path.resolve/join (isaacs, Arianit Uka)
174

    
175
* crypto: fix uninitialized memory access in openssl (Ben Noordhuis)
176

    
177

    
178
2013.02.19, Version 0.9.10 (Unstable)
179

    
180
* V8: Upgrade to 3.15.11.15
181

    
182
* npm: Upgrade to 1.2.12
183

    
184
* fs: Change default WriteStream config, increase perf (isaacs)
185

    
186
* process: streamlining tick callback logic (Trevor Norris)
187

    
188
* stream_wrap, udp_wrap: add read-only fd property (Ben Noordhuis)
189

    
190
* buffer: accept negative indices in Buffer#slice() (Ben Noordhuis)
191

    
192
* tls: Cycle data when underlying socket drains (isaacs)
193

    
194
* stream: read(0) should not always trigger _read(n,cb) (isaacs)
195

    
196
* stream: Empty strings/buffers do not signal EOF any longer (isaacs)
197

    
198
* crypto: improve cipher/decipher error messages (Ben Noordhuis)
199

    
200
* net: Respect the 'readable' flag on sockets (isaacs)
201

    
202
* net: don't suppress ECONNRESET (Ben Noordhuis)
203

    
204
* typed arrays: copy Buffer in typed array constructor (Ben Noordhuis)
205

    
206
* typed arrays: make DataView throw on non-ArrayBuffer (Ben Noordhuis)
207

    
208
* windows: MSI installer enhancements (Scott Blomquist, Jim Schubert)
209

    
210

    
211
2013.02.07, Version 0.9.9 (Unstable), 4b9f0d190cd6b22853caeb0e07145a98ce1d1d7f
212

    
213
* tls: port CryptoStream to streams2 (Fedor Indutny)
214

    
215
* typed arrays: only share ArrayBuffer backing store (Ben Noordhuis)
216

    
217
* stream: make Writable#end() accept a callback function (Nathan Rajlich)
218

    
219
* buffer: optimize 'hex' handling (Ben Noordhuis)
220

    
221
* dns, cares: don't filter NOTIMP, REFUSED, SERVFAIL (Ben Noordhuis)
222

    
223
* readline: treat bare \r as a line ending (isaacs)
224

    
225
* readline: make \r\n emit one 'line' event (Ben Noordhuis)
226

    
227
* cluster: support datagram sockets (Bert Belder)
228

    
229
* stream: Correct Transform class backpressure (isaacs)
230

    
231
* addon: Pass module object to NODE_MODULE init function (isaacs, Rod Vagg)
232

    
233
* buffer: slow buffer copy compatibility fix (Trevor Norris)
234

    
235
* Add bytesWritten to tls.CryptoStream (Andy Burke)
236

    
237

    
238
2013.01.24, Version 0.9.8 (Unstable), 5f2f8400f665dc32c3e10e7d31d53d756ded9156
239

    
240
* npm: Upgrade to v1.2.3
241

    
242
* V8: Upgrade to 3.15.11.10
243

    
244
* streams: Support objects other than Buffers (Jake Verbaten)
245

    
246
* buffer: remove float write range checks (Trevor Norris)
247

    
248
* http: close connection on 304/204 responses with chunked encoding (Ben Noordhuis)
249

    
250
* build: fix build with dtrace support on FreeBSD (Fedor Indutny)
251

    
252
* console: Support formatting options in trace() (isaacs)
253

    
254
* domain: empty stack on all exceptions (Dave Olszewski)
255

    
256
* unix, windows: make uv_*_bind() error codes consistent (Andrius Bentkus)
257

    
258
* linux: add futimes() fallback (Ben Noordhuis)
259

    
260

    
261
2013.01.18, Version 0.9.7 (Unstable), 9e7bebeb8305edd55735a95955a98fdbe47572e5
262

    
263
* V8: Upgrade to 3.15.11.7
264

    
265
* npm: Upgrade to 1.2.2
266

    
267
* punycode: Upgrade to 1.2.0 (Mathias Bynens)
268

    
269
* repl: make built-in modules available by default (Felix Böhm)
270

    
271
* windows: add support for '_Total' perf counters (Scott Blomquist)
272

    
273
* cluster: make --prof work for workers (Ben Noordhuis)
274

    
275
* child_process: do not keep list of sent sockets (Fedor Indutny)
276

    
277
* tls: Follow RFC6125 more strictly (Fedor Indutny)
278

    
279
* buffer: floating point read/write improvements (Trevor Norris)
280

    
281
* TypedArrays: Improve dataview perf without endian param (Dean McNamee)
282

    
283
* module: assert require() called with a non-empty string (Felix Böhm, James Campos)
284

    
285
* stdio: Set readable/writable flags properly (isaacs)
286

    
287
* stream: Properly handle large reads from push-streams (isaacs)
288

    
289

    
290
2013.01.11, Version 0.9.6 (Unstable), 9313fdc71ca8335d5e3a391c103230ee6219b3e2
291

    
292
* V8: update to 3.15.11.5
293

    
294
* node: remove ev-emul.h (Ben Noordhuis)
295

    
296
* path: make basename and extname ignore trailing slashes (Bert Belder)
297

    
298
* typed arrays: fix sunos signed/unsigned char issue (Ben Noordhuis)
299

    
300
* child_process: Fix {stdio:'inherit'} regression (Ben Noordhuis)
301

    
302
* child_process: Fix pipe() from child stdio streams  (Maciej Małecki)
303

    
304
* child_process: make fork() execPath configurable (Bradley Meck)
305

    
306
* stream: Add readable.push(chunk) method (isaacs)
307

    
308
* dtrace: x64 ustack helper (Fedor Indutny)
309

    
310
* repl: fix floating point number parsing (Nirk Niggler)
311

    
312
* repl: allow overriding builtins (Ben Noordhuis)
313

    
314
* net: add localAddress and localPort to Socket (James Hight)
315

    
316
* fs: make pool size coincide with ReadStream bufferSize (Shigeki Ohtsu)
317

    
318
* typed arrays: implement load and store swizzling (Dean McNamee)
319

    
320
* windows: fix perfctr crash on XP and 2003 (Scott Blomquist)
321

    
322
* dgram: fix double implicit bind error (Ben Noordhuis)
323

    
324

    
325
2012.12.30, Version 0.9.5 (Unstable), 01994e8119c24f2284bac0779b32acb49c95bee7
326

    
327
* assert: improve support for new execution contexts (lukebayes)
328

    
329
* domain: use camelCase instead of snake_case (isaacs)
330

    
331
* domain: Do not use uncaughtException handler (isaacs)
332

    
333
* fs: make 'end' work with ReadStream without 'start' (Ben Noordhuis)
334

    
335
* https: optimize createConnection() (Ryunosuke SATO)
336

    
337
* buffer: speed up base64 encoding by 20% (Ben Noordhuis)
338

    
339
* doc: Colorize API stabilitity index headers in docs (Luke Arduini)
340

    
341
* net: socket.readyState corrections (bentaber)
342

    
343
* http: Performance enhancements for http under streams2 (isaacs)
344

    
345
* stream: fix to emit end event on http.ClientResponse (Shigeki Ohtsu)
346

    
347
* stream: fix event handler leak in readstream pipe and unpipe (Andreas Madsen)
348

    
349
* build: Support ./configure --tag switch (Maciej Małecki)
350

    
351
* repl: don't touch `require.cache` (Nathan Rajlich)
352

    
353
* node: Emit 'exit' event when exiting for an uncaught exception (isaacs)
354

    
355

    
356
2012.12.21, Version 0.9.4 (Unstable), d86d83c75f6343b5368bb7bd328b4466a035e1d4
357

    
358
* streams: Update all streaming interfaces to use new classes (isaacs)
359

    
360
* node: remove idle gc (Ben Noordhuis)
361

    
362
* http: protect against response splitting attacks (Bert Belder)
363

    
364
* fs: Raise error when null bytes detected in paths (isaacs)
365

    
366
* fs: fix 'object is not a function' callback errors (Ben Noordhuis)
367

    
368
* fs: add autoClose=true option to fs.createReadStream (Farid Neshat)
369

    
370
* process: add getgroups(), setgroups(), initgroups() (Ben Noordhuis)
371

    
372
* openssl: optimized asm code on x86 and x64 (Bert Belder)
373

    
374
* crypto: fix leak in GetPeerCertificate (Fedor Indutny)
375

    
376
* add systemtap support (Jan Wynholds)
377

    
378
* windows: add ETW and PerfCounters support (Scott Blomquist)
379

    
380
* windows: fix normalization of UNC paths (Bert Belder)
381

    
382
* crypto: fix ssl error handling (Sergey Kholodilov)
383

    
384
* node: remove eio-emul.h (Ben Noordhuis)
385

    
386
* os: add os.endianness() function (Nathan Rajlich)
387

    
388
* readline: don't emit "line" events with a trailing '\n' char (Nathan Rajlich)
389

    
390
* build: add configure option to generate xcode build files (Timothy J Fontaine)
391

    
392
* build: allow linking against system libuv, cares, http_parser (Stephen Gallagher)
393

    
394
* typed arrays: add slice() support to ArrayBuffer (Anthony Pesch)
395

    
396
* debugger: exit and kill child on SIGTERM or SIGHUP (Fedor Indutny)
397

    
398
* url: url.format escapes delimiters in path and query (J. Lee Coltrane)
399

    
400

    
401
2012.10.24, Version 0.9.3 (Unstable), 1ed4c6776e4f52956918b70565502e0f8869829d
402

    
403
* V8: Upgrade to 3.13.7.4
404

    
405
* crypto: Default to buffers instead of binary strings (isaacs, Fedor Indutny)
406

    
407
* crypto: add getHashes() and getCiphers() (Ben Noordhuis)
408

    
409
* unix: add custom thread pool, remove libeio (Ben Noordhuis)
410

    
411
* util: make `inspect()` accept an "options" argument (Nathan Rajlich)
412

    
413
* https: fix renegotation attack protection (Ben Noordhuis)
414

    
415
* cluster: make 'listening' handler see actual port (Aaditya Bhatia)
416

    
417
* windows: use USERPROFILE to get the user's home dir (Bert Belder)
418

    
419
* path: add platform specific path delimiter (Paul Serby)
420

    
421
* http: add response.headersSent property (Pavel Lang)
422

    
423
* child_process: make .fork()'d child auto-exit (Ben Noordhuis)
424

    
425
* events: add 'removeListener' event (Ben Noordhuis)
426

    
427
* string_decoder: Add 'end' method, do base64 properly (isaacs)
428

    
429
* buffer: include encoding value in exception when invalid (Ricky Ng-Adam)
430

    
431
* http: make http.ServerResponse no longer emit 'end' (isaacs)
432

    
433
* streams: fix pipe is destructed by 'end' from destination (koichik)
434

    
435

    
436
2012.09.17, Version 0.9.2 (Unstable), 6e2055889091a424fbb5c500bc3ab9c05d1c28b4
437

    
438
* http_parser: upgrade to ad3b631
439

    
440
* openssl: upgrade 1.0.1c
441

    
442
* darwin: use FSEvents to watch directory changes (Fedor Indutny)
443

    
444
* unix: support missing API on NetBSD (Shigeki Ohtsu)
445

    
446
* unix: fix EMFILE busy loop (Ben Noordhuis)
447

    
448
* windows: un-break writable tty handles (Bert Belder)
449

    
450
* windows: map WSAESHUTDOWN to UV_EPIPE (Bert Belder)
451

    
452
* windows: make spawn with custom environment work again (Bert Belder)
453

    
454
* windows: map ERROR_DIRECTORY to UV_ENOENT (Bert Belder)
455

    
456
* tls, https: validate server certificate by default (Ben Noordhuis)
457

    
458
* tls, https: throw exception on missing key/cert (Ben Noordhuis)
459

    
460
* tls: async session storage (Fedor Indutny)
461

    
462
* installer: don't install header files (Ben Noordhuis)
463

    
464
* buffer: implement Buffer.prototype.toJSON() (Nathan Rajlich)
465

    
466
* buffer: added support for writing NaN and Infinity (koichik)
467

    
468
* http: make http.ServerResponse emit 'end' (Ben Noordhuis)
469

    
470
* build: ./configure --ninja (Ben Noordhuis, Timothy J Fontaine)
471

    
472
* installer: fix --without-npm (Ben Noordhuis)
473

    
474
* cli: make -p equivalent to -pe (Ben Noordhuis)
475

    
476
* url: Go much faster by using Url class (isaacs)
477

    
478

    
479
2012.08.28, Version 0.9.1 (Unstable), e6ce259d2caf338fec991c2dd447de763ce99ab7
480

    
481
* buffer: Add Buffer.isEncoding(enc) to test for valid encoding values (isaacs)
482

    
483
* Raise UV_ECANCELED on premature close. (Ben Noordhuis)
484

    
485
* Remove c-ares from libuv, move to a top-level node dependency (Bert Belder)
486

    
487
* ref/unref for all HandleWraps, timers, servers, and sockets (Timothy J Fontaine)
488

    
489
* addon: remove node-waf, superseded by node-gyp (Ben Noordhuis)
490

    
491
* child_process: emit error on exec failure (Ben Noordhuis)
492

    
493
* cluster: do not use internal server API (Andreas Madsen)
494

    
495
* constants: add O_DIRECT (Ian Babrou)
496

    
497
* crypto: add sync interface to crypto.pbkdf2() (Ben Noordhuis)
498

    
499
* darwin: emulate fdatasync() (Fedor Indutny)
500

    
501
* dgram: make .bind() always asynchronous (Ben Noordhuis)
502

    
503
* events: Make emitter.listeners() side-effect free (isaacs, Joe Andaverde)
504

    
505
* fs: Throw early on invalid encoding args (isaacs)
506

    
507
* fs: fix naming of truncate/ftruncate functions (isaacs)
508

    
509
* http: bubble up parser errors to ClientRequest (Brian White)
510

    
511
* linux: improve cpuinfo parser on ARM and MIPS (Ben Noordhuis)
512

    
513
* net: add support for IPv6 addresses ending in :: (Josh Erickson)
514

    
515
* net: support Server.listen(Pipe) (Andreas Madsen)
516

    
517
* node: don't scan add-on for "init" symbol (Ben Noordhuis)
518

    
519
* remove process.uvCounters() (Ben Noordhuis)
520

    
521
* repl: console writes to repl rather than process stdio (Nathan Rajlich)
522

    
523
* timers: implement setImmediate (Timothy J Fontaine)
524

    
525
* tls: fix segfault in pummel/test-tls-ci-reneg-attack (Ben Noordhuis)
526

    
527
* tools: Move gyp addon tools to node-gyp (Nathan Rajlich)
528

    
529
* unix: preliminary signal handler support (Ben Noordhuis)
530

    
531
* unix: remove dependency on ev_child (Ben Noordhuis)
532

    
533
* unix: work around darwin bug, don't poll() on pipe (Fedor Indutny)
534

    
535
* util: Formally deprecate util.pump() (Ben Noordhuis)
536

    
537
* windows: make active and closing handle state independent (Bert Belder)
538

    
539
* windows: report spawn errors to the exit callback (Bert Belder)
540

    
541
* windows: signal handling support with uv_signal_t (Bert Belder)
542

    
543

    
544
2012.07.20, Version 0.9.0 (Unstable), f9b237f478c372fd55e4590d7399dcd8f25f3603
545

    
546
* punycode: update to v1.1.1 (Mathias Bynens)
547

    
548
* c-ares: upgrade to 1.9.0 (Saúl Ibarra Corretgé)
549

    
550
* dns: ignore rogue DNS servers reported by windows (Saúl Ibarra Corretgé)
551

    
552
* unix: speed up uv_async_send() (Ben Noordhuis)
553

    
554
* darwin: get cpu model correctly on mac (Xidorn Quan)
555

    
556
* nextTick: Handle tick callbacks before any other I/O (isaacs)
557

    
558
* Enable color customization of `util.inspect` (Pavel Lang)
559

    
560
* tls: Speed and memory improvements (Fedor Indutny)
561

    
562
* readline: Use one history item for reentered line (Vladimir Beloborodov)
563

    
564
* Fix #3521 Make process.env more like a regular Object (isaacs)
565

    
566

    
567
2013.03.07, Version 0.8.22 (Stable), 67a4cb4fe8c2346e30ffb83f7178e205cc2dab33
568

    
569
* npm: Update to 1.2.14
570

    
571
* cluster: propagate bind errors (Ben Noordhuis)
572

    
573
* crypto: don't assert when calling Cipher#final() twice (Ben Noordhuis)
574

    
575
* build, windows: disable SEH (Ben Noordhuis)
576

    
577

    
578
2013.02.25, Version 0.8.21 (Stable), 530d8c05d4c546146f18e5ba811d7eb3b7b7c0c5
579

    
580
* http: Do not free the wrong parser on socket close (isaacs)
581

    
582
* http: Handle hangup writes more gently (isaacs)
583

    
584
* zlib: fix assert on bad input (Ben Noordhuis)
585

    
586
* test: add TAP output to the test runner (Timothy J Fontaine)
587

    
588
* unix: Handle EINPROGRESS from domain sockets (Ben Noordhuis)
589

    
590

    
591
2013.02.15, Version 0.8.20 (Stable), e10c75579b536581ddd7ae4e2c3bf8a9d550d343
592

    
593
* npm: Upgrade to v1.2.11
594

    
595
* http: Do not let Agent hand out destroyed sockets (isaacs)
596

    
597
* http: Raise hangup error on destroyed socket write (isaacs)
598

    
599
* http: protect against response splitting attacks (Bert Belder)
600

    
601

    
602
2013.02.06, Version 0.8.19 (Stable), 53978bdf420622ff0121c63c0338c9e7c2e60869
603

    
604
* npm: Upgrade to v1.2.10
605

    
606
* zlib: pass object size hint to V8 (Ben Noordhuis)
607

    
608
* zlib: reduce memory consumption, release early (Ben Noordhuis)
609

    
610
* buffer: slow buffer copy compatibility fix (Trevor Norris)
611

    
612
* zlib: don't assert on malformed dictionary (Ben Noordhuis)
613

    
614
* zlib: don't assert on missing dictionary (Ben Noordhuis)
615

    
616
* windows: better ipv6 support (Bert Belder)
617

    
618
* windows: add error mappings related to unsupported protocols (Bert Belder)
619

    
620
* windows: map ERROR_DIRECTORY to UV_ENOENT (Bert Belder)
621

    
622

    
623
2013.01.18, Version 0.8.18 (Stable), 2c4eef0d972838c51999d32c0d251857a713dc18
624

    
625
* npm: Upgrade to v1.2.2
626

    
627
* dns: make error message match errno (Dan Milon)
628

    
629
* tls: follow RFC6125 more stricly (Fedor Indutny)
630

    
631
* buffer: reject negative SlowBuffer offsets (Ben Noordhuis)
632

    
633
* install: add simplejson fallback (Chris Dent)
634

    
635
* http: fix "Cannot call method 'emit' of null" (Ben Noordhuis)
636

    
637

    
638
2013.01.09, Version 0.8.17 (Stable), c50c33e9397d7a0a8717e8ce7530572907c054ad
639

    
640
* npm: Upgrade to v1.2.0
641
  - peerDependencies (Domenic Denicola)
642
  - node-gyp v0.8.2 (Nathan Rajlich)
643
  - Faster installs from github user/project shorthands (Nathan Zadoks)
644

    
645
* typed arrays: fix 32 bit size/index overflow (Ben Noordhuis)
646

    
647
* http: Improve performance of single-packet responses (Ben Noordhuis)
648

    
649
* install: fix openbsd man page location (Ben Noordhuis)
650

    
651
* http: bubble up parser errors to ClientRequest (Brian White)
652

    
653

    
654
2012.12.13, Version 0.8.16 (Stable), 1c9c6277d5cfcaaac8569c0c8f7daa64292048a9
655

    
656
* npm: Upgrade to 1.1.69
657

    
658
* fs: fix WriteStream/ReadStream fd leaks (Ben Noordhuis)
659

    
660
* crypto: fix leak in GetPeerCertificate (Fedor Indutny)
661

    
662
* buffer: Don't double-negate numeric buffer arg (Trevor Norris)
663

    
664
* net: More accurate IP address validation and IPv6 dotted notation. (Joshua Erickson)
665

    
666

    
667
2012.11.26, Version 0.8.15 (Stable), fdf91afb494a7a2fff2913d817f589c191a2c88f
668

    
669
* npm: Upgrade to 1.1.66 (isaacs)
670

    
671
* linux: use /proc/cpuinfo for CPU frequency (Ben Noordhuis)
672

    
673
* windows: map WSAESHUTDOWN to UV_EPIPE (Ben Noordhuis)
674

    
675
* windows: map ERROR_GEN_FAILURE to UV_EIO (Bert Belder)
676

    
677
* unix: do not set environ unless one is provided (Charlie McConnell)
678

    
679
* domains: don't crash if domain is set to null (Bert Belder)
680

    
681
* windows: fix the x64 debug build (Bert Belder)
682

    
683
* net, tls: fix connect() resource leak (Ben Noordhuis)
684

    
685

    
686
2012.10.25, Version 0.8.14 (Stable), b00527fcf05c3d9f/b5d5d790f9472906a59fe218
687

    
688
* events: Don't clobber pre-existing _events obj in EE ctor (isaacs)
689

    
690

    
691
2012.10.25, Version 0.8.13 (Stable), ff4c974873f9a7cc6a5b042eb9b6389bb8dde6d6
692

    
693
* V8: Upgrade to 3.11.10.25
694

    
695
* npm: Upgrade to 1.1.65
696

    
697
* url: parse hostnames that start with - or _ (Ben Noordhuis)
698

    
699
* repl: Fix Windows 8 terminal issue (Bert Belder)
700

    
701
* typed arrays: use signed char for signed int8s (Aaron Jacobs)
702

    
703
* crypto: fix bugs in DiffieHellman (Ben Noordhuis)
704

    
705
* configure: turn on VFPv3 on ARMv7 (Ben Noordhuis)
706

    
707
* Re-enable OpenSSL UI for entering passphrases via tty (Ben Noordhuis)
708

    
709
* repl: ensure each REPL instance gets its own "context" (Nathan Rajlich)
710

    
711

    
712
2012.10.12, Version 0.8.12 (Stable), 38c72d4e29574dec5205bcf23c2a85efe65331a4
713

    
714
* npm: Upgrade to 1.1.63
715

    
716
* crypto: Reduce stability index to 2-Unstable (isaacs)
717

    
718
* windows: fix handle leak in uv_fs_utime (Bert Belder)
719

    
720
* windows: fix application crashed popup in debug version (Bert Belder)
721

    
722
* buffer: report proper retained size in profiler (Ben Noordhuis)
723

    
724
* buffer: fix byteLength with UTF-16LE (koichik)
725

    
726
* repl: make "end of input" JSON.parse() errors throw in the REPL (Nathan Rajlich)
727

    
728
* repl: make invalid RegExp modifiers throw in the REPL (Nathan Rajlich)
729

    
730
* http: handle multiple Proxy-Authenticate values (Willi Eggeling)
731

    
732

    
733
2012.09.27, Version 0.8.11 (Stable), e1f39468fa580c1e4cb15fac621f87944ee625dc
734

    
735
* fs: Fix stat() size reporting for large files (Ben Noordhuis)
736

    
737

    
738
2012.09.25, Version 0.8.10 (Stable), 0bc273da4fcaa79b209ed755ad249a3e7be626a6
739

    
740
* npm: Upgrade to 1.1.62
741

    
742
* repl: make invalid RegExps throw in the REPL (Nathan Rajlich)
743

    
744
* v8: loosen artificial mmap constraint (Bryan Cantrill)
745

    
746
* process: fix setuid() and setgid() error reporting (Ben Noordhuis)
747

    
748
* domain: Properly exit() on domain disposal (isaacs)
749

    
750
* fs: fix watchFile() missing deletion events (Ben Noordhuis)
751

    
752
* fs: fix assert in fs.watch() (Ben Noordhuis)
753

    
754
* fs: don't segfault on deeply recursive stat() (Ben Noordhuis)
755

    
756
* http: Remove timeout handler when data arrives (Frédéric Germain)
757

    
758
* http: make the client "res" object gets the same domain as "req" (Nathan Rajlich)
759

    
760
* windows: don't blow up when an invalid FD is used (Bert Belder)
761

    
762
* unix: map EDQUOT to UV_ENOSPC (Charlie McConnell)
763

    
764
* linux: improve /proc/cpuinfo parser (Ben Noordhuis)
765

    
766
* win/tty: reset background brightness when color is set to default (Bert Belder)
767

    
768
* unix: put child process stdio fds in blocking mode (Ben Noordhuis)
769

    
770
* unix: fix EMFILE busy loop (Ben Noordhuis)
771

    
772
* sunos: don't set TCP_KEEPALIVE (Ben Noordhuis)
773

    
774
* tls: Use slab allocator for memory management (Fedor Indutny)
775

    
776
* openssl: Use optimized assembly code for x86 and x64 (Bert Belder)
777

    
778

    
779
2012.09.11, Version 0.8.9 (Stable), b88c3902b241cf934e75443b934f2033ad3915b1
780

    
781
* v8: upgrade to 3.11.10.22
782

    
783
* GYP: upgrade to r1477
784

    
785
* npm: Upgrade to 1.1.61
786

    
787
* npm: Don't create world-writable files (isaacs)
788

    
789
* windows: fix single-accept mode for shared server sockets (Bert Belder)
790

    
791
* windows: fix uninitialized memory access in uv_update_time() (Bert Belder)
792

    
793
* windows: don't throw when a signal handler is attached (Bert Belder)
794

    
795
* unix: fix memory leak in udp (Ben Noordhuis)
796

    
797
* unix: map errno ESPIPE (Ben Noordhuis)
798

    
799
* unix, windows: fix memory corruption in fs-poll.c (Ben Noordhuis)
800

    
801
* sunos: fix os.cpus() on x86_64 (Ben Noordhuis)
802

    
803
* child process: fix processes with IPC channel don't emit 'close' (Bert Belder)
804

    
805
* build: add a "--dest-os" option to force a gyp "flavor" (Nathan Rajlich)
806

    
807
* build: set `process.platform` to "sunos" on SunOS (Nathan Rajlich)
808

    
809
* build: fix `make -j` fails after `make clean` (Bearice Ren)
810

    
811
* build: fix openssl configuration for "arm" builds (Nathan Rajlich)
812

    
813
* tls: support unix domain socket/named pipe in tls.connect (Shigeki Ohtsu)
814

    
815
* https: make https.get() accept a URL (koichik)
816

    
817
* http: respect HTTP/1.0 TE header (Ben Noordhuis)
818

    
819
* crypto, tls: Domainify setSNICallback, pbkdf2, randomBytes (Ben Noordhuis)
820

    
821
* stream.pipe: Don't call destroy() unless it's a function (isaacs)
822

    
823

    
824
2012.08.22, Version 0.8.8 (Stable), a299c97bbc701f4d460e91214d7bfe7a9589d361
825

    
826
* V8: upgrade to 3.11.10.19
827

    
828
* npm: upgrade to 1.1.59
829

    
830
* windows: fix uninitialized memory access in uv_update_time() (Bert Belder)
831

    
832
* unix, windows: fix memory corruption in fs-poll.c (Ben Noordhuis)
833

    
834
* unix: fix integer overflow in uv_hrtime (Tim Holy)
835

    
836
* sunos: fix uv_cpu_info() on x86_64 (Ben Noordhuis)
837

    
838
* tls: update default cipher list (Ben Noordhuis)
839

    
840
* unix: Fix llvm and older gcc duplicate symbol warnings (Bert Belder)
841

    
842
* fs: fix use after free in stat watcher (Ben Noordhuis)
843

    
844
* build: Fix using manually compiled gcc on OS X (Nathan Rajlich)
845

    
846
* windows: make junctions work again (Bert Belder)
847

    
848

    
849
2012.08.15, Version 0.8.7 (Stable), f640c5d35cba96634cd8176a525a1d876e361a61
850

    
851
* npm: Upgrade to 1.1.49
852

    
853
* website: download page (Golo Roden)
854

    
855
* crypto: fix uninitialized memory access in openssl (Ben Noordhuis)
856

    
857
* buffer, crypto: fix buffer decoding (Ben Noordhuis)
858

    
859
* build: compile with -fno-tree-vrp when gcc >= 4.0 (Ben Noordhuis)
860

    
861
* tls: handle multiple CN fields when verifying cert (Ben Noordhuis)
862

    
863
* doc: remove unused util from child_process (Kyle Robinson Young)
864

    
865
* build: rework -fvisibility=hidden detection (Ben Noordhuis)
866

    
867
* windows: don't duplicate invalid stdio handles (Bert Belder)
868

    
869
* windows: fix typos in process-stdio.c (Bert Belder)
870

    
871

    
872
2012.08.07, Version 0.8.6 (Stable), 0544a586ca6b6b900a42e164033dbf350765700a
873

    
874
* npm: Upgrade to v1.1.48
875

    
876
* Add 'make binary' to build binary tarballs for all Unixes (Nathan Rajlich)
877

    
878
* zlib: Emit 'close' on destroy(). (Dominic Tarr)
879

    
880
* child_process: Fix stdout=null when stdio=['pipe'] (Tyler Neylon)
881

    
882
* installer: prevent ETXTBSY errors (Ben Noordhuis)
883

    
884
* installer: honor --without-npm, default install path (Ben Noordhuis)
885

    
886
* net: make pause work with connecting sockets (Bert Belder)
887

    
888
* installer: fix cross-compile installs (Ben Noordhuis)
889

    
890
* net: fix .listen({fd:0}) (Ben Noordhuis)
891

    
892
* windows: map WSANO_DATA to UV_ENOENT (Bert Belder)
893

    
894

    
895
2012.08.02, Version 0.8.5 (Stable), 9b86a4453f0c76f2707a75c0b2343aba33ec63bc
896

    
897
* node: tag Encode and friends NODE_EXTERN (Ben Noordhuis)
898

    
899
* fs: fix ReadStream / WriteStream missing callback (Gil Pedersen)
900

    
901
* fs: fix readFileSync("/proc/cpuinfo") regression (Ben Noordhuis)
902

    
903
* installer: don't assume bash is installed (Ben Noordhuis)
904

    
905
* Report errors properly from --eval and stdin (isaacs)
906

    
907
* assert: fix throws() throws an error without message property (koichik)
908

    
909
* cluster: fix libuv assert in net.listen() (Ben Noordhuis)
910

    
911
* build: always link sunos builds with libumem (Trent Mick)
912

    
913
* build: improve armv7 / hard-float detection (Adam Malcontenti-Wilson)
914

    
915
* https: Use host header as effective servername (isaacs)
916

    
917
* sunos: work around OS bug to prevent fs.watch() from spinning (Bryan Cantrill)
918

    
919
* linux: fix 'two watchers, one path' segfault (Ben Noordhuis)
920

    
921
* windows: fix memory leaks in many fs functions (Bert Belder)
922

    
923
* windows: don't allow directories to be opened for writing/appending (Bert Belder)
924

    
925
* windows: make fork() work even when not all stdio handles are valid (Bert Belder)
926

    
927
* windows: make unlink() not remove mount points, and improve performance (Bert Belder)
928

    
929
* build: Sign pkg installer for OS X (isaacs)
930

    
931

    
932
2012.07.25, Version 0.8.4 (Stable), f98562fcd7d1cab573ca4dc1612157d6999befd4
933

    
934
* V8: Upgrade to 3.11.10.17
935

    
936
* npm: Upgrade to 1.1.45
937

    
938
* net: fix Socket({ fd: 42 }) api (Ben Noordhuis)
939

    
940
* readline: Remove event listeners on close (isaacs)
941

    
942
* windows: correctly prep long path for fs.exists(Sync) (Bert Belder)
943

    
944
* debugger: wake up the event loop when a debugger command is dispatched (Peter Rybin)
945

    
946
* tls: verify server's identity (Fedor Indutny)
947

    
948
* net: ignore socket.setTimeout(Infinity or NaN) (Fedor Indutny)
949

    
950

    
951
2012.07.19, Version 0.8.3 (Stable), 60bf2d6cb33e4ce55604f73889ab840a9de8bdab
952

    
953
* V8: upgrade to 3.11.10.15
954

    
955
* npm: Upgrade to 1.1.43
956

    
957
* net: fix net.Server.listen({fd:x}) error reporting (Ben Noordhuis)
958

    
959
* net: fix bogus errno reporting (Ben Noordhuis)
960

    
961
* build: Move npm shebang logic into an npm script (isaacs)
962

    
963
* build: fix add-on loading on freebsd (Ben Noordhuis)
964

    
965
* build: disable unsafe optimizations (Ben Noordhuis)
966

    
967
* build: fix spurious mksnapshot crashes for good (Ben Noordhuis)
968

    
969
* build: speed up genv8constants (Dave Pacheco)
970

    
971
* fs: make unwatchFile() remove a specific listener (Ben Noordhuis)
972

    
973
* domain: Remove first arg from intercepted fn (Toshihiro Nakamura)
974

    
975
* domain: Fix memory leak on error (isaacs)
976

    
977
* events: Fix memory leak from removeAllListeners (Nathan Rajlich)
978

    
979
* zlib: Fix memory leak in Unzip class. (isaacs)
980

    
981
* crypto: Fix memory leak in DecipherUpdate() (Ben Noordhuis)
982

    
983

    
984
2012.07.09, Version 0.8.2 (Stable), cc6084b9ac5cf1d4fe5e7165b71e8fc05d11be1f
985

    
986
* npm: Upgrade to 1.1.36
987

    
988
* readline: don't use Function#call() (Nathan Rajlich)
989

    
990
* Code cleanup to pass 'use strict' (Jonas Westerlund)
991

    
992
* module: add filename to require() json errors (TJ Holowaychuk)
993

    
994
* readline: fix for unicode prompts (Tim Macfarlane)
995

    
996
* timers: fix handling of large timeouts (Ben Noordhuis)
997

    
998
* repl: fix passing an empty line inserting "undefined" into the buffer (Nathan Rajlich)
999

    
1000
* repl: fix crashes when buffering command (Maciej Małecki)
1001

    
1002
* build: rename strict_aliasing to node_no_strict_aliasing (Ben Noordhuis)
1003

    
1004
* build: disable -fstrict-aliasing for any gcc < 4.6.0 (Ben Noordhuis)
1005

    
1006
* build: detect cc version with -dumpversion (Ben Noordhuis)
1007

    
1008
* build: handle output of localized gcc or clang (Ben Noordhuis)
1009

    
1010
* unix: fix memory corruption in freebsd.c (Ben Noordhuis)
1011

    
1012
* unix: fix 'zero handles, one request' busy loop (Ben Noordhuis)
1013

    
1014
* unix: fix busy loop on unexpected tcp message (Ben Noordhuis)
1015

    
1016
* unix: fix EINPROGRESS busy loop (Ben Noordhuis)
1017

    
1018

    
1019
2012.06.29, Version 0.8.1 (stable), 2134aa3d5c622fc3c3b02ccb713fcde0e0df479a
1020

    
1021
* V8: upgrade to v3.11.10.12
1022

    
1023
* npm: upgrade to v1.1.33
1024
  - Support for parallel use of the cache folder
1025
  - Retry on registry timeouts or network failures (Trent Mick)
1026
  - Reduce 'engines' failures to a warning
1027
  - Use new zsh completion if aviailable (Jeremy Cantrell)
1028

    
1029
* Fix #3577 Un-break require('sys')
1030

    
1031
* util: speed up formatting of large arrays/objects (Ben Noordhuis)
1032

    
1033
* windows: make fs.realpath(Sync) work with UNC paths (Bert Belder)
1034

    
1035
* build: fix --shared-v8 option (Ben Noordhuis)
1036

    
1037
* doc: `detached` is a boolean (Andreas Madsen)
1038

    
1039
* build: use proper python interpreter (Ben Noordhuis)
1040

    
1041
* build: expand ~ in `./configure --prefix=~/a/b/c` (Ben Noordhuis)
1042

    
1043
* build: handle CC env var with spaces (Gabriel de Perthuis)
1044

    
1045
* build: fix V8 build when compiling with gcc 4.5 (Ben Noordhuis)
1046

    
1047
* build: fix --shared-v8 option (Ben Noordhuis)
1048

    
1049
* windows msi: Fix icon issue which caused huge file size (Bert Belder)
1050

    
1051
* unix: assume that dlopen() may clobber dlerror() (Ben Noordhuis)
1052

    
1053
* sunos: fix memory corruption bugs (Ben Noordhuis)
1054

    
1055
* windows: better (f)utimes and (f)stat (Bert Belder)
1056

    
1057

    
1058
2012.06.25, Version 0.8.0 (stable), 8b8a7a7f9b41e74e1e810d0330738ad06fc302ec
1059

    
1060
* V8: upgrade to v3.11.10.10
1061

    
1062
* npm: Upgrade to 1.1.32
1063

    
1064
* Deprecate iowatcher (Ben Noordhuis)
1065

    
1066
* windows: update icon (Bert Belder)
1067

    
1068
* http: Hush 'MUST NOT have a body' warnings to debug() (isaacs)
1069

    
1070
* Move blog.nodejs.org content into repository (isaacs)
1071

    
1072
* Fix #3503: stdin: resume() on pipe(dest) (isaacs)
1073

    
1074
* crypto: fix error reporting in SetKey() (Fedor Indutny)
1075

    
1076
* Add --no-deprecation and --trace-deprecation command-line flags (isaacs)
1077

    
1078
* fs: fix fs.watchFile() (Ben Noordhuis)
1079

    
1080
* fs: Fix fs.readfile() on pipes (isaacs)
1081

    
1082
* Rename GYP variable node_use_system_openssl to be consistent (Ryan Dahl)
1083

    
1084

    
1085
2012.06.19, Version 0.7.12 (unstable), a72120190a8ffdbcd3d6ad2a2e6ceecd2087111e
1086

    
1087
* npm: Upgrade to 1.1.30
1088
	- Improved 'npm init'
1089
	- Fix the 'cb never called' error from 'oudated' and 'update'
1090
	- Add --save-bundle|-B config
1091
	- Fix isaacs/npm#2465: Make npm script and windows shims cygwin-aware
1092
	- Fix isaacs/npm#2452 Use --save(-dev|-optional) in npm rm
1093
	- `logstream` option to replace removed `logfd` (Rod Vagg)
1094
	- Read default descriptions from README.md files
1095

    
1096
* Shims to support deprecated ev_* and eio_* methods (Ben Noordhuis)
1097

    
1098
* #3118 net.Socket: Delay pause/resume until after connect (isaacs)
1099

    
1100
* #3465 Add ./configure --no-ifaddrs flag (isaacs)
1101

    
1102
* child_process: add .stdin stream to forks (Fedor Indutny)
1103

    
1104
* build: fix `make install DESTDIR=/path` (Ben Noordhuis)
1105

    
1106
* tls: fix off-by-one error in renegotiation check (Ben Noordhuis)
1107

    
1108
* crypto: Fix diffie-hellman key generation UTF-8 errors (Fedor Indutny)
1109

    
1110
* node: change the constructor name of process from EventEmitter to process (Andreas Madsen)
1111

    
1112
* net: Prevent property access throws during close (Reid Burke)
1113

    
1114
* querystring: improved speed and code cleanup (Felix Böhm)
1115

    
1116
* sunos: fix assertion errors breaking fs.watch() (Fedor Indutny)
1117

    
1118
* unix: stat: detect sub-second changes (Ben Noordhuis)
1119

    
1120
* add stat() based file watcher (Ben Noordhuis)
1121

    
1122

    
1123
2012.06.15, Version 0.7.11 (unstable), 5cfe0b86d5be266ef51bbba369c39e412ee51944
1124

    
1125
* V8: Upgrade to v3.11.10
1126

    
1127
* npm: Upgrade to 1.1.26
1128

    
1129
* doc: Improve cross-linking in API docs markdown (Ben Kelly)
1130

    
1131
* Fix #3425: removeAllListeners should delete array (Reid Burke)
1132

    
1133
* cluster: don't silently drop messages when the write queue gets big (Bert Belder)
1134

    
1135
* Add Buffer.concat method (isaacs)
1136

    
1137
* windows: make symlinks tolerant to forward slashes (Bert Belder)
1138

    
1139
* build: Add node.d and node.1 to installer (isaacs)
1140

    
1141
* cluster: rename worker.unqiueID to worker.id (Andreas Madsen)
1142

    
1143
* Windows: Enable ETW events on Windows for existing DTrace probes. (Igor Zinkovsky)
1144

    
1145
* test: bundle node-weak in test/gc so that it doesn't need to be downloaded (Nathan Rajlich)
1146

    
1147
* Make many tests pass on Windows (Bert Belder)
1148

    
1149
* Fix #3388 Support listening on file descriptors (isaacs)
1150

    
1151
* Fix #3407 Add os.tmpDir() (isaacs)
1152

    
1153
* Unbreak the snapshotted build on Windows (Bert Belder)
1154

    
1155
* Clean up child_process.kill throws (Bert Belder)
1156

    
1157
* crypto: make cipher/decipher accept buffer args (Ben Noordhuis)
1158

    
1159

    
1160
2012.06.11, Version 0.7.10 (unstable), 12a32a48a30182621b3f8e9b9695d1946b53c131
1161

    
1162
* Roll V8 back to 3.9.24.31
1163

    
1164
* build: x64 target should always pass -m64 (Robert Mustacchi)
1165

    
1166
* add NODE_EXTERN to node::Start (Joel Brandt)
1167

    
1168
* repl: Warn about running npm commands (isaacs)
1169

    
1170
* slab_allocator: fix crash in dtor if V8 is dead (Ben Noordhuis)
1171

    
1172
* slab_allocator: fix leak of Persistent handles (Shigeki Ohtsu)
1173

    
1174
* windows/msi: add node.js prompt to startmenu (Jeroen Janssen)
1175

    
1176
* windows/msi: fix adding node to PATH (Jeroen Janssen)
1177

    
1178
* windows/msi: add start menu links when installing (Jeroen Janssen)
1179

    
1180
* windows: don't install x64 version into the 'program files (x86)' folder (Matt Gollob)
1181

    
1182
* domain: Fix #3379 domain.intercept no longer passes error arg to cb (Marc Harter)
1183

    
1184
* fs: make callbacks run in global context (Ben Noordhuis)
1185

    
1186
* fs: enable fs.realpath on windows (isaacs)
1187

    
1188
* child_process: expose UV_PROCESS_DETACHED as options.detached (Charlie McConnell)
1189

    
1190
* child_process: new stdio API for .spawn() method (Fedor Indutny)
1191

    
1192
* child_process: spawn().ref() and spawn().unref() (Fedor Indutny)
1193

    
1194
* Upgrade npm to 1.1.25
1195
	- Enable npm link on windows
1196
	- Properly remove sh-shim on Windows
1197
	- Abstract out registry client and logger
1198

    
1199

    
1200
2012.05.28, Version 0.7.9 (unstable), 782277f11a753ded831439ed826448c06fc0f356
1201

    
1202
* Upgrade V8 to 3.11.1
1203

    
1204
* Upgrade npm to 1.1.23
1205

    
1206
* uv: rework reference counting scheme (Ben Noordhuis)
1207

    
1208
* uv: add interface for joining external event loops (Bert Belder)
1209

    
1210
* repl, readline: Handle Ctrl+Z and SIGCONT better (Nathan Rajlich)
1211

    
1212
* fs: 64bit offsets for fs calls (Igor Zinkovsky)
1213

    
1214
* fs: add sync open flags 'rs' and 'rs+' (Kevin Bowman)
1215

    
1216
* windows: enable creating directory junctions with fs.symlink (Igor Zinkovsky, Bert Belder)
1217

    
1218
* windows: fix fs.lstat to properly detect symlinks. (Igor Zinkovsky)
1219

    
1220
* Fix #3270 Escape url.parse delims (isaacs)
1221

    
1222
* http: make http.get() accept a URL (Adam Malcontenti-Wilson)
1223

    
1224
* Cleanup vm module memory leakage (Marcel Laverdet)
1225

    
1226
* Optimize writing strings with Socket.write (Bert Belder)
1227

    
1228
* add support for CESU-8 and UTF-16LE encodings (koichik)
1229

    
1230
* path: add path.sep to get the path separator. (Yi, EungJun)
1231

    
1232
* net, http: add backlog parameter to .listen() (Erik Dubbelboer)
1233

    
1234
* debugger: support mirroring Date objects (Fedor Indutny)
1235

    
1236
* addon: add AtExit() function (Ben Noordhuis)
1237

    
1238
* net: signal localAddress bind failure in connect (Brian Schroeder)
1239

    
1240
* util: handle non-string return value in .inspect() (Alex Kocharin)
1241

    
1242

    
1243
2012.04.18, Version 0.7.8 (unstable), c2b47097c0b483552efc1947c6766fa1128600b6
1244

    
1245
* Upgrade V8 to 3.9.24.9
1246

    
1247
* Upgrade OpenSSL to 1.0.0f
1248

    
1249
* Upgrade npm to 1.1.18
1250

    
1251
* Show licenses in Binary installers
1252

    
1253
* Domains (isaacs)
1254

    
1255
* readline: rename "end" to "close" (Nathan Rajlich)
1256

    
1257
* tcp: make getsockname() return address family as string (Shigeki Ohtsu)
1258

    
1259
* http, https: fix .setTimeout() (ssuda)
1260

    
1261
* os: add cross platform EOL character (Mustansir Golawala)
1262

    
1263
* typed arrays: unexport SizeOfArrayElementForType() (Aaron Jacobs)
1264

    
1265
* net: honor 'enable' flag in .setNoDelay() (Ben Noordhuis)
1266

    
1267
* child_process: emit error when .kill fails (Andreas Madsen)
1268

    
1269
* gyp: fix 'argument list too long' build error (Ben Noordhuis)
1270

    
1271
* fs.WriteStream: Handle modifications to fs.open (isaacs)
1272

    
1273
* repl, readline: Handle newlines better (Nathan Rajlich, Nathan Friedly)
1274

    
1275
* build: target OSX 10.5 when building on darwin (Nathan Rajlich)
1276

    
1277
* Fix #3052 Handle errors properly in zlib (isaacs)
1278

    
1279
* build: add support for DTrace and postmortem (Dave Pacheco)
1280

    
1281
* core: add reusable Slab allocator (Ben Noordhuis)
1282

    
1283

    
1284
2012.03.30, Version 0.7.7 (unstable), 5cda2542fdb086f9fe5de889bea435a65e377dea
1285

    
1286
* Upgrade V8 to 3.9.24.7
1287

    
1288
* Upgrade npm to 1.1.15
1289

    
1290
* Handle Emoji characters properly (Erik Corry, Bert Belder)
1291

    
1292
* readline: migrate ansi/vt100 logic from tty to readline (Nathan Rajlich)
1293

    
1294
* readline: Fix multiline handling (Alex Kocharin)
1295

    
1296
* add a -i/--interactive flag to force the REPL (Nathan Rajlich)
1297

    
1298
* debugger: add breakOnException command (Fedor Indutny)
1299

    
1300
* cluster: kill workers when master dies (Andreas Madsen)
1301

    
1302
* cluster: add graceful disconnect support (Andreas Madsen)
1303

    
1304
* child_process: Separate 'close' event from 'exit' (Charlie McConnell)
1305

    
1306
* typed arrays: add Uint8ClampedArray (Mikael Bourges-Sevenier)
1307

    
1308
* buffer: Fix byte alignment issues (Ben Noordhuis, Erik Lundin)
1309

    
1310
* tls: fix CryptoStream.setKeepAlive() (Shigeki Ohtsu)
1311

    
1312
* Expose http parse error codes (Felix Geisendörfer)
1313

    
1314
* events: don't delete the listeners array (Ben Noordhuis, Nathan Rajlich)
1315

    
1316
* process: add process.config to view node's ./configure settings (Nathan Rajlich)
1317

    
1318
* process: process.execArgv to see node's arguments (Micheil Smith)
1319

    
1320
* process: fix process.title setter (Ben Noordhuis)
1321

    
1322
* timers: handle negative or non-numeric timeout values (Ben Noordhuis)
1323

    
1324

    
1325
2012.03.13, Version 0.7.6 (unstable), f06abda6f58e517349d1b63a2cbf5a8d04a03505
1326

    
1327
* Upgrade v8 to 3.9.17
1328

    
1329
* Upgrade npm to 1.1.8
1330
  - Add support for os/cpu fields in package.json (Adam Blackburn)
1331
  - Automatically node-gyp packages containing a binding.gyp
1332
  - Fix failures unpacking in UNC shares
1333
  - Never create un-listable directories
1334
  - Handle cases where an optionalDependency fails to build
1335

    
1336
* events: newListener emit correct fn when using 'once' (Roly Fentanes)
1337

    
1338
* url: Ignore empty port component (Łukasz Walukiewicz)
1339

    
1340
* module: replace 'children' array (isaacs)
1341

    
1342
* tls: parse multiple values of a key in ssl certificate (Sambasiva Suda)
1343

    
1344
* cluster: support passing of named pipes (Ben Noordhuis)
1345

    
1346
* Windows: include syscall in fs errors (Bert Belder)
1347

    
1348
* http: #2888 Emit end event only once (Igor Zinkovsky)
1349

    
1350
* readline: add multiline support (Rlidwka)
1351

    
1352
* process: add `process.hrtime()` (Nathan Rajlich)
1353

    
1354
* net, http, https: add localAddress option (Dmitry Nizovtsev)
1355

    
1356
* addon improvements (Nathan Rajlich)
1357

    
1358
* build improvements (Ben Noordhuis, Sadique Ali, T.C. Hollingsworth, Nathan Rajlich)
1359

    
1360
* add support for "SEARCH" request methods (Nathan Rajlich)
1361

    
1362
* expose the zlib and http_parser version in process.versions (Nathan Rajlich)
1363

    
1364

    
1365
2012.02.23, Version 0.7.5 (unstable), d384b8b0d2ab7f05465f0a3e15fe20b4e25b5f86
1366

    
1367
* startup speed improvements (Maciej Małecki)
1368

    
1369
* crypto: add function getDiffieHellman() (Tomasz Buchert)
1370

    
1371
* buffer: support decoding of URL-safe base64 (Ben Noordhuis)
1372

    
1373
* Make QueryString.parse() even faster (Brian White)
1374

    
1375
* url: decode url entities in auth section (Ben Noordhuis)
1376

    
1377
* http: support PURGE request method (Ben Noordhuis)
1378

    
1379
* http: Generate Date headers on responses (Mark Nottingham)
1380

    
1381
* Fix #2762: Add callback to close function. (Mikeal Rogers)
1382

    
1383
* dgram: fix out-of-bound memory read (Ben Noordhuis)
1384

    
1385
* repl: add automatic loading of built-in libs (Brandon Benvie)
1386

    
1387
* repl: remove double calls where possible (Fedor Indutny)
1388

    
1389
* Readline improvements. Related: #2737 #2756 (Colton Baker)
1390

    
1391
* build: disable -fomit-frame-pointer on solaris (Dave Pacheco)
1392

    
1393
* build: arch detection improvements (Nathan Rajlich)
1394

    
1395
* build: Make a fat binary for the OS X `make pkg`. (Nathan Rajlich)
1396

    
1397
* jslint src/ and lib/ on 'make test' (isaacs)
1398

    
1399

    
1400

    
1401
2012.02.14, Version 0.7.4 (unstable), de21de920cf93ec40736ada3792a7f85f3eadeda
1402

    
1403
* Upgrade V8 to 3.9.5
1404

    
1405
* Upgrade npm to 1.1.1
1406

    
1407
* build: Detect host_arch better (Karl Skomski)
1408

    
1409
* debugger: export `debug_port` to `process` (Fedor Indutny)
1410

    
1411
* api docs: CSS bug fixes (isaacs)
1412

    
1413
* build: use -fPIC for native addons on UNIX (Nathan Rajlich)
1414

    
1415
* Re-add top-level v8::Locker (Marcel Laverdet)
1416

    
1417
* Move images out of the dist tarballs (isaacs)
1418

    
1419
* libuv: Remove uv_export and uv_import (Ben Noordhuis)
1420

    
1421
* build: Support x64 build on Windows (Igor Zinkovsky)
1422

    
1423

    
1424
2012.02.07, Version 0.7.3 (unstable), 99059aad8d654acda4abcfaa68df182b50f2ec90
1425

    
1426
* Upgrade V8 to 3.9.2
1427

    
1428
* Revert support for isolates. (Ben Noordhuis)
1429

    
1430
* cluster: Cleanup docs, event handling, and process.disconnect (Andreas Madsen)
1431

    
1432
* gyp_addon: link with node.lib on Windows (Nathan Rajlich)
1433

    
1434
* http: fix case where http-parser is freed twice (koichik)
1435

    
1436
* Windows: disable RTTI and exceptions (Bert Belder)
1437

    
1438

    
1439
2012.02.01, Version 0.7.2 (unstable), ec79acb3a6166e30f0bf271fbbfda1fb575b3321
1440

    
1441
* Update V8 to 3.8.9
1442

    
1443
* Support for sharing streams across Isolates (Igor Zinkovsky)
1444

    
1445
* #2636 - Fix case where http_parsers are freed too early (koichik)
1446

    
1447
* url: Support for IPv6 addresses in URLs (Łukasz Walukiewicz)
1448

    
1449
* child_process: Add disconnect() method to child processes (Andreas Madsen)
1450

    
1451
* fs: add O_EXCL support, exclusive open file (Ben Noordhuis)
1452

    
1453
* fs: more specific error messages (Tj Holowaychuk)
1454

    
1455
* tty: emit 'unknown' key event if key sequence not found (Dan VerWeire, Nathan Rajlich)
1456

    
1457
* build: compile release build too if BUILDTYPE=Debug (Ben Noordhuis)
1458

    
1459
* module: fix --debug-brk on symlinked scripts (Fedor Indutny)
1460

    
1461
* zlib: fix `Failed to set dictionary` issue (Fedor Indutny)
1462

    
1463
* waf: predict target arch for OS X (Fedor Indutny)
1464

    
1465

    
1466
2012.01.23, Version 0.7.1 (unstable), a74354735ab5d5b0fa35a1e4ff7e653757d2069b
1467

    
1468
* Update V8 to 3.8.8
1469

    
1470
* Install node-waf by default (Fedor Indutny)
1471

    
1472
* crypto: Add ability to turn off PKCS padding (Ingmar Runge)
1473

    
1474
* v8: implement VirtualMemory class on SunOS (Ben Noordhuis)
1475

    
1476
* Add cluster.setupMaster (Andreas Madsen)
1477

    
1478
* move `path.exists*` to `fs.exists*` (Maciej Małecki)
1479

    
1480
* typed arrays: set class name (Ben Noordhuis)
1481

    
1482
* libuv bug fixes (Igor Zinkovsky, Ben Noordhuis, Dan VerWeire)
1483

    
1484

    
1485
2012.01.16, Version 0.7.0 (unstable), 9cc55dca6f67a6096c858b841c677b0593404321
1486

    
1487
* Upgrade V8 to 3.8.6
1488

    
1489
* Use GYP build system on unix (Ben Noordhuis)
1490

    
1491
* Experimenetal isolates support (Ben Noordhuis)
1492

    
1493
* Improvements to Cluster API (Andreas Madsen)
1494

    
1495
* Use isolates for internal debugger (Fedor Indutny)
1496

    
1497
* Bug fixes
1498

    
1499

    
1500
2012.07.10 Version 0.6.20 (maintenance), 952e513379169ec1b40909d1db056e9bf4294899
1501

    
1502
* npm: Upgrade to 1.1.37 (isaacs)
1503

    
1504
* benchmark: Backport improvements made in master (isaacs)
1505

    
1506
* build: always link with -lz (Trent Mick)
1507

    
1508
* core: use proper #include directives (Ben Noordhuis)
1509

    
1510
* cluster: don't silently drop messages when the write queue gets big (Bert Belder)
1511

    
1512
* windows: don't print error when GetConsoleTitleW returns an empty string (Bert Belder)
1513

    
1514

    
1515
2012.06.06 Version 0.6.19 (stable), debf552ed2d4a53957446e82ff3c52a8182d5ff4
1516

    
1517
* npm: upgrade to 1.1.24
1518

    
1519
* fs: no end emit after createReadStream.pause() (Andreas Madsen)
1520

    
1521
* vm: cleanup module memory leakage (Marcel Laverdet)
1522

    
1523
* unix: fix loop starvation under high network load (Ben Noordhuis)
1524

    
1525
* unix: remove abort() in ev_unref() (Ben Noordhuis)
1526

    
1527
* windows/tty: never report error after forcibly aborting line-buffered read (Bert Belder)
1528

    
1529
* windows: skip GetFileAttributes call when opening a file (Bert Belder)
1530

    
1531

    
1532
2012.05.15 Version 0.6.18 (stable), 4bc1d395de6abed2cf1e4d0b7b3a1480a21c368f
1533

    
1534
* windows: skip GetFileAttributes call when opening a file (Bert Belder)
1535

    
1536
* crypto: add PKCS12/PFX support (Sambasiva Suda)
1537

    
1538
* #3240: child_process: delete NODE_CHANNEL_FD from env in spawn (Ben Noordhuis)
1539

    
1540
* windows: add test for path.normalize with UNC paths (Bert Belder)
1541

    
1542
* windows: make path.normalize convert all slashes to backslashes (Bert Belder)
1543

    
1544
* fs: Automatically close FSWatcher on error (Bert Belder)
1545

    
1546
* #3258: fs.ReadStream.pause() emits duplicate data event (koichik)
1547

    
1548
* pipe_wrap: don't assert() on pipe accept errors (Ben Noordhuis)
1549

    
1550
* Better exception output for module load and process.nextTick (Felix Geisendörfer)
1551

    
1552
* zlib: fix error reporting (Ben Noordhuis)
1553

    
1554
* http: Don't destroy on timeout (isaacs)
1555

    
1556
* #3231: http: Don't try to emit error on a null'ed req object (isaacs)
1557

    
1558
* #3236: http: Refactor ClientRequest.onSocket (isaacs)
1559

    
1560

    
1561
2012.05.04 Version 0.6.17 (stable), 4ced23deaf36493f4303a18f6fdce768c58becc0
1562

    
1563
* Upgrade npm to 1.1.21
1564

    
1565
* uv: Add support for EROFS errors (Ben Noordhuis, Maciej Małecki)
1566

    
1567
* uv: Add support for EIO and ENOSPC errors (Fedor Indutny)
1568

    
1569
* windows: Add support for EXDEV errors (Bert Belder)
1570

    
1571
* http: Fix client memory leaks (isaacs, Vincent Voyer)
1572

    
1573
* fs: fix file descriptor leak in sync functions (Ben Noordhuis)
1574

    
1575
* fs: fix ReadStream / WriteStream double close bug (Ben Noordhuis)
1576

    
1577

    
1578
2012.04.30 Version 0.6.16 (stable), a1d193963ddc80a27da5da01b59751e14e33d1d6
1579

    
1580
* Upgrade V8 to 3.6.6.25
1581

    
1582
* Upgrade npm to 1.1.19
1583

    
1584
* Windows: add mappings for UV_ENOENT (Bert Belder)
1585

    
1586
* linux: add IN_MOVE_SELF to inotify event mask (Ben Noordhuis)
1587

    
1588
* unix: call pipe handle connection cb on accept() error (Ben Noordhuis)
1589

    
1590
* unix: handle EWOULDBLOCK (Ben Noordhuis)
1591

    
1592
* map EWOULDBLOCK to UV_EAGAIN (Ben Noordhuis)
1593

    
1594
* Map ENOMEM to UV_ENOMEM (isaacs)
1595

    
1596
* Child process: support the `gid` and `uid` options (Bert Belder)
1597

    
1598
* test: cluster: add worker death event test (Ben Noordhuis)
1599

    
1600
* typo in node_http_parser (isaacs)
1601

    
1602
* http_parser: Eat CRLF between requests, even on connection:close. (Ben Noordhuis)
1603

    
1604
* don't check return value of unsetenv (Ben Noordhuis)
1605

    
1606

    
1607
2012.04.09 Version 0.6.15 (stable), f160a45b254e591eb33716311c92be533c6d86c4
1608

    
1609
* Update npm to 1.1.16
1610

    
1611
* Show licenses in binary installers.
1612

    
1613
* unix: add uv_fs_read64, uv_fs_write64 and uv_fs_ftruncate64 (Ben Noordhuis)
1614

    
1615
* add 64bit offset fs functions (Igor Zinkovsky)
1616

    
1617
* windows: don't report ENOTSOCK when attempting to bind an udp handle twice (Bert Belder)
1618

    
1619
* windows: backport pipe-connect-to-file fixes from master (Bert Belder)
1620

    
1621
* windows: never call fs event callbacks after closing the watcher (Bert Belder)
1622

    
1623
* fs.readFile: don't make the callback before the fd is closed (Bert Belder)
1624

    
1625
* windows: use 64bit offsets for uv_fs apis (Igor Zinkovsky)
1626

    
1627
* Fix #2061: segmentation fault on OS X due to stat size mismatch (Ben Noordhuis)
1628

    
1629

    
1630
2012.03.22 Version 0.6.14 (stable), e513ffef7549a56a5af728e1f0c2c0c8f290518a
1631

    
1632
* net: don't crash when queued write fails (Igor Zinkovsky)
1633

    
1634
* sunos: fix EMFILE on process.memoryUsage() (Bryan Cantrill)
1635

    
1636
* crypto: fix compile-time error with openssl 0.9.7e (Ben Noordhuis)
1637

    
1638
* unix: ignore ECONNABORTED errors from accept() (Ben Noordhuis)
1639

    
1640
* Add UV_ENOSPC and mappings to it (Bert Belder)
1641

    
1642
* http-parser: Fix response body is not read (koichik)
1643

    
1644
* Upgrade npm to 1.1.12
1645
  - upgrade node-gyp to 0.3.7
1646
  - work around AV-locked directories on Windows
1647
  - Fix isaacs/npm#2293 Don't try to 'uninstall' /
1648
  - Exclude symbolic links from packages.
1649
  - Fix isaacs/npm#2275 Spurious 'unresolvable cycle' error.
1650
  - Exclude/include dot files as if they were normal files
1651

    
1652

    
1653
2012.03.15 Version 0.6.13 (stable), 9f7f86b534f8556290eb8cad915984ff4ca54996
1654

    
1655
* Windows: Many libuv test fixes (Bert Belder)
1656

    
1657
* Windows: avoid uv_guess_handle crash in when fd < 0 (Bert Belder)
1658

    
1659
* Map EBUSY and ENOTEMPTY errors (Bert Belder)
1660

    
1661
* Windows: include syscall in fs errors (Bert Belder)
1662

    
1663
* Fix fs.watch ENOSYS on Linux kernel version mismatch (Ben Noordhuis)
1664

    
1665
* Update npm to 1.1.9
1666
  - upgrade node-gyp to 0.3.5 (Nathan Rajlich)
1667
  - Fix isaacs/npm#2249 Add cache-max and cache-min configs
1668
  - Properly redirect across https/http registry requests
1669
  - log config usage if undefined key in set function (Kris Windham)
1670
  - Add support for os/cpu fields in package.json (Adam Blackburn)
1671
  - Automatically node-gyp packages containing a binding.gyp
1672
  - Fix failures unpacking in UNC shares
1673
  - Never create un-listable directories
1674
  - Handle cases where an optionalDependency fails to build
1675

    
1676

    
1677
2012.03.02 Version 0.6.12 (stable), 48a2d34cfe6b7e1c9d15202a4ef5e3c82d1fba35
1678

    
1679
* Upgrade V8 to 3.6.6.24
1680

    
1681
* dtrace ustack helper improvements (Dave Pacheco)
1682

    
1683
* API Documentation refactor (isaacs)
1684

    
1685
* #2827 net: fix race write() before and after connect() (koichik)
1686

    
1687
* #2554 #2567 throw if fs args for 'start' or 'end' are strings (AJ ONeal)
1688

    
1689
* punycode: Update to v1.0.0 (Mathias Bynens)
1690

    
1691
* Make a fat binary for the OS X pkg (isaacs)
1692

    
1693
* Fix hang on accessing process.stdin (isaacs)
1694

    
1695
* repl: make tab completion work on non-objects (Nathan Rajlich)
1696

    
1697
* Fix fs.watch on OS X (Ben Noordhuis)
1698

    
1699
* Fix #2515 nested setTimeouts cause premature process exit (Ben Noordhuis)
1700

    
1701
* windows: fix time conversion in stat (Igor Zinkovsky)
1702

    
1703
* windows: fs: handle EOF in read (Brandon Philips)
1704

    
1705
* windows: avoid IOCP short-circuit on non-ifs lsps (Igor Zinkovsky)
1706

    
1707
* Upgrade npm to 1.1.4 (isaacs)
1708
  - windows fixes
1709
  - Bundle nested bundleDependencies properly
1710
  - install: support --save with url install targets
1711
  - shrinkwrap: behave properly with url-installed modules
1712
  - support installing uncompressed tars or single file modules from urls etc.
1713
  - don't run make clean on rebuild
1714
  - support HTTPS-over-HTTP proxy tunneling
1715

    
1716

    
1717
2012.02.17 Version 0.6.11 (stable), 1eb1fe32250fc88cb5b0a97cddf3e02be02e3f4a
1718

    
1719
* http: allow multiple WebSocket RFC6455 headers (Einar Otto Stangvik)
1720

    
1721
* http: allow multiple WWW-Authenticate headers (Ben Noordhuis)
1722

    
1723
* windows: support unicode argv and environment variables (Bert Belder)
1724

    
1725
* tls: mitigate session renegotiation attacks (Ben Noordhuis)
1726

    
1727
* tcp, pipe: don't assert on uv_accept() errors (Ben Noordhuis)
1728

    
1729
* tls: Allow establishing secure connection on the existing socket (koichik)
1730

    
1731
* dgram: handle close of dgram socket before DNS lookup completes (Seth Fitzsimmons)
1732

    
1733
* windows: Support half-duplex pipes (Igor Zinkovsky)
1734

    
1735
* build: disable omit-frame-pointer on solaris systems (Dave Pacheco)
1736

    
1737
* debugger: fix --debug-brk (Ben Noordhuis)
1738

    
1739
* net: fix large file downloads failing (koichik)
1740

    
1741
* fs: fix ReadStream failure to read from existing fd (Christopher Jeffrey)
1742

    
1743
* net: destroy socket on DNS error (Stefan Rusu)
1744

    
1745
* dtrace: add missing translator (Dave Pacheco)
1746

    
1747
* unix: don't flush tty on switch to raw mode (Ben Noordhuis)
1748

    
1749
* windows: reset brightness when reverting to default text color (Bert Belder)
1750

    
1751
* npm: update to 1.1.1
1752
  - Update which, fstream, mkdirp, request, and rimraf
1753
  - Fix #2123 Set path properly for lifecycle scripts on windows
1754
  - Mark the root as seen, so we don't recurse into it. Fixes #1838. (Martin Cooper)
1755

    
1756

    
1757
2012.02.02, Version 0.6.10 (stable), 051908e023f87894fa68f5b64d0b99a19a7db01e
1758

    
1759
* Update V8 to 3.6.6.20
1760

    
1761
* Add npm msysgit bash shim to msi installer (isaacs)
1762

    
1763
* buffers: fix intermittent out of bounds error (Ben Noordhuis)
1764

    
1765
* buffers: honor length argument in base64 decoder (Ben Noordhuis)
1766

    
1767
* windows: Fix path.exists regression (Bert Belder)
1768

    
1769
* Make QueryString.parse run faster (Philip Tellis)
1770

    
1771
* http: avoid freeing http-parser objects too early (koichik)
1772

    
1773
* timers: add v0.4 compatibility hack (Ben Noordhuis)
1774

    
1775
* Proper EPERM error code support (Igor Zinkovsky, Brandon Philips)
1776

    
1777
* dgram: Implement udp multicast methods on windows (Bert Belder)
1778

    
1779

    
1780
2012.01.27, Version 0.6.9 (stable), f19e20d33f57c4d2853aaea7d2724d44f3b0012f
1781

    
1782
* dgram: Bring back missing functionality for Unix (Dan VerWeire, Roman Shtylman, Ben Noordhuis)
1783
  - Note: Windows UDP support not yet complete.
1784

    
1785
* http: Fix parser memory leak (koichik)
1786

    
1787
* zlib: Fix #2365 crashes on invalid input (Nicolas LaCasse)
1788

    
1789
* module: fix --debug-brk on symlinked scripts (Fedor Indutny)
1790

    
1791
* Documentation Restyling (Matthew Fitzsimmons)
1792

    
1793
* Update npm to 1.1.0-3 (isaacs)
1794

    
1795
* Windows: fix regression in stat() calls to C:\ (Bert Belder)
1796

    
1797

    
1798
2012.01.19, Version 0.6.8 (stable), d18cebaf8a7ac701dabd71a3aa4eb0571db6a645
1799

    
1800
* Update V8 to 3.6.6.19
1801

    
1802
* Numeric key hash collision fix for V8 (Erik Corry, Fedor Indutny)
1803

    
1804
* Add missing TTY key translations for F1-F5 on Windows (Brandon Benvie)
1805

    
1806
* path.extname bugfix with . and .. paths (Bert Belder)
1807

    
1808
* cluster: don't always kill the master on uncaughtException (Ben Noordhuis)
1809

    
1810
* Update npm to 1.1.0-2 (isaacs)
1811

    
1812
* typed arrays: set class name (Ben Noordhuis)
1813

    
1814
* zlib binding cleanup (isaacs, Bert Belder)
1815

    
1816
* dgram: use slab memory allocator (Michael Bernstein)
1817

    
1818
* fix segfault #2473
1819

    
1820
* #2521 60% improvement in fs.stat on Windows (Igor Zinkovsky)
1821

    
1822

    
1823
2012.01.06, Version 0.6.7 (stable), d5a189acef14a851287ee555f7a39431fe276e1c
1824

    
1825
* V8 hash collision fix (Breaks MIPS) (Bert Belder, Erik Corry)
1826

    
1827
* Upgrade V8 to 3.6.6.15
1828

    
1829
* Upgrade npm to 1.1.0-beta-10 (isaacs)
1830

    
1831
* many doc updates (Ben Noordhuis, Jeremy Martin, koichik, Dave Irvine,
1832
  Seong-Rak Choi, Shannen, Adam Malcontenti-Wilson, koichik)
1833

    
1834
* Fix segfault in node_http_parser.cc
1835

    
1836
* dgram, timers: fix memory leaks (Ben Noordhuis, Yoshihiro Kikuchi)
1837

    
1838
* repl: fix repl.start not passing the `ignoreUndefined` arg (Damon Oehlman)
1839

    
1840
* #1980: Socket.pause null reference when called on a closed Stream (koichik)
1841

    
1842
* #2263: XMLHttpRequest piped in a writable file stream hang (koichik)
1843

    
1844
* #2069: http resource leak (koichik)
1845

    
1846
* buffer.readInt global pollution fix (Phil Sung)
1847

    
1848
* timers: fix performance regression (Ben Noordhuis)
1849

    
1850
* #2308, #2246: node swallows openssl error on request (koichik)
1851

    
1852
* #2114: timers: remove _idleTimeout from item in .unenroll() (James Hartig)
1853

    
1854
* #2379: debugger: Request backtrace w/o refs (Fedor Indutny)
1855

    
1856
* simple DTrace ustack helper (Dave Pacheco)
1857

    
1858
* crypto: rewrite HexDecode without snprintf (Roman Shtylman)
1859

    
1860
* crypto: don't ignore DH init errors (Ben Noordhuis)
1861

    
1862

    
1863
2011.12.14, Version 0.6.6 (stable), 9a059ea69e1f6ebd8899246682d8ca257610b8ab
1864

    
1865
* npm update to 1.1.0-beta-4 (Isaac Z. Schlueter)
1866

    
1867
* cli: fix output of --help (Ben Noordhuis)
1868

    
1869
* new website
1870

    
1871
* pause/resume semantics for stdin (Isaac Z. Schlueter)
1872

    
1873
* Travis CI integration (Maciej Małecki)
1874

    
1875
* child_process: Fix bug regarding closed stdin (Ben Noordhuis)
1876

    
1877
* Enable upgrades in MSI. (Igor Zinkovsky)
1878

    
1879
* net: Fixes memory leak (Ben Noordhuis)
1880

    
1881
* fs: handle fractional or NaN ReadStream buffer size (Ben Noordhuis)
1882

    
1883
* crypto: fix memory leaks in PBKDF2 error path (Ben Noordhuis)
1884

    
1885

    
1886
2011.12.04, Version 0.6.5 (stable), 6cc94db653a2739ab28e33b2d6a63c51bd986a9f
1887

    
1888
* npm workaround Windows antivirus software (isaacs)
1889

    
1890
* Upgrade V8 to 3.6.6.11
1891

    
1892

    
1893
2011.12.02, Version 0.6.4 (stable), 9170077f13e5e5475b23d1d3c2e7f69bfe139727
1894

    
1895
* doc improvements (Kyle Young, Tim Oxley, Roman Shtylman, Mathias Bynens)
1896

    
1897
* upgrade bundled npm (Isaac Schlueter)
1898

    
1899
* polish Windows installer (Igor Zinkovsky, Isaac Schlueter)
1900

    
1901
* punycode: upgrade to v0.2.1 (Mathias Bynens)
1902

    
1903
* build: add –without-npm flag to configure script
1904

    
1905
* sys: deprecate module some more, print stack trace if NODE_DEBUG=sys
1906

    
1907
* cli: add -p switch, prints result of –eval
1908

    
1909
* #1997: fix Blowfish ECB encryption and decryption (Ingmar Runge)
1910

    
1911
* #2223: fix socket ‘close’ event being emitted twice
1912

    
1913
* #2224: fix RSS memory usage > 4 GB reporting (Russ Bradberry)
1914

    
1915
* #2225: fix util.inspect() object stringification bug (Nathan Rajlich)
1916

    
1917

    
1918
2011.11.25, Version 0.6.3 (stable), b159c6d62e5756d3f8847419d29c6959ea288b56
1919

    
1920
* #2083 Land NPM in Node. It is included in packages/installers and installed
1921
  on `make install`.
1922

    
1923
* #2076 Add logos to windows installer.
1924

    
1925
* #1711 Correctly handle http requests without headers. (Ben Noordhuis,
1926
  Felix Geisendörfer)
1927

    
1928
* TLS: expose more openssl SSL context options and constants. (Ben Noordhuis)
1929

    
1930
* #2177 Windows: don't kill UDP socket when a packet fails to reach its
1931
  destination. (Bert Belder)
1932

    
1933
* Windows: support paths longer than 260 characters. (Igor Zinkovsky)
1934

    
1935
* Windows: correctly resolve drive-relative paths. (Bert Belder)
1936

    
1937
* #2166 Don't leave file descriptor open after lchmod. (Isaac Schlueter)
1938

    
1939
* #2084 Add OS X .pkg build script to make file.
1940

    
1941
* #2160 Documentation improvements. (Ben Noordhuis)
1942

    
1943

    
1944
2011.11.18, Version 0.6.2 (stable), a4402f0b2e410b19375a1d5c5fb7fe7f66f3c7f8
1945

    
1946
* doc improvements (Artur Adib, Trevor Burnham, Ryan Emery, Trent Mick)
1947

    
1948
* timers: remember extra setTimeout() arguments when timeout==0
1949

    
1950
* punycode: use Mathias Bynens's punycode library, it's more compliant
1951

    
1952
* repl: improved tab completion (Ryan Emery)
1953

    
1954
* buffer: fix range checks in .writeInt() functions (Lukasz Walukiewicz)
1955

    
1956
* tls: make cipher list configurable
1957

    
1958
* addons: make Buffer and ObjectWrap visible to Windows add-ons (Bert Belder)
1959

    
1960
* crypto: add PKCS#1 a.k.a RSA public key verification support
1961

    
1962
* windows: fix stdout writes when redirected to nul
1963

    
1964
* sunos: fix build on Solaris and Illumos
1965

    
1966
* Upgrade V8 to 3.6.6.8
1967

    
1968

    
1969
2011.11.11, Version 0.6.1 (stable), 170f2addb2dd0c625bc4a6d461e89a31ad68b79b
1970

    
1971
* doc improvements (Eric Lovett, Ben Noordhuis, Scott Anderson, Yoji SHIDARA)
1972

    
1973
* crypto: make thread-safe (Ben Noordhuis)
1974

    
1975
* fix process.kill error object
1976

    
1977
* debugger: correctly handle source with multi-byte characters (Shigeki Ohtsu)
1978

    
1979
* make stdout and stderr non-destroyable (Igor Zinkovsky)
1980

    
1981
* fs: don't close uninitialized fs.watch handle (Ben Noordhuis)
1982

    
1983
* #2026 fix man page install on BSDs (Ben Noordhuis)
1984

    
1985
* #2040 fix unrecognized errno assert in uv_err_name
1986

    
1987
* #2043 fs: mkdir() should call callback if mode is omitted
1988

    
1989
* #2045 fs: fix fs.realpath on windows to return on error (Benjamin Pasero)
1990

    
1991
* #2047 minor cluster improvements
1992

    
1993
* #2052 readline get window columns correctly
1994

    
1995
* Upgrade V8 to 3.6.6.7
1996

    
1997

    
1998
2011.11.04, Version 0.6.0 (stable), 865b077819a9271a29f982faaef99dc635b57fbc
1999

    
2000
* print undefined on undefined values in REPL (Nathan Rajlich)
2001

    
2002
* doc improvements (koichik, seebees, bnoordhuis,
2003
  Maciej Małecki, Jacob Kragh)
2004

    
2005
* support native addon loading in windows (Bert Belder)
2006

    
2007
* rename getNetworkInterfaces() to networkInterfaces() (bnoordhuis)
2008

    
2009
* add pending accepts knob for windows (igorzi)
2010

    
2011
* http.request(url.parse(x)) (seebees)
2012

    
2013
* #1929 zlib Respond to 'resume' events properly (isaacs)
2014

    
2015
* stream.pipe: Remove resume and pause events
2016

    
2017
* test fixes for windows (igorzi)
2018

    
2019
* build system improvements (bnoordhuis)
2020

    
2021
* #1936 tls: does not emit 'end' from EncryptedStream (koichik)
2022

    
2023
* #758 tls: add address(), remoteAddress/remotePort
2024

    
2025
* #1399 http: emit Error object after .abort() (bnoordhuis)
2026

    
2027
* #1999 fs: make mkdir() default to 0777 permissions (bnoordhuis)
2028

    
2029
* #2001 fix pipe error codes
2030

    
2031
* #2002 Socket.write should reset timeout timer
2032

    
2033
* stdout and stderr are blocking when associated with file too.
2034

    
2035
* remote debugger support on windows (Bert Belder)
2036

    
2037
* convenience methods for zlib (Matt Robenolt)
2038

    
2039
* process.kill support on windows (igorzi)
2040

    
2041
* process.uptime() support on windows (igorzi)
2042

    
2043
* Return IPv4 addresses before IPv6 addresses from getaddrinfo
2044

    
2045
* util.inspect improvements (Nathan Rajlich)
2046

    
2047
* cluster module api changes
2048

    
2049
* Downgrade V8 to 3.6.6.6
2050

    
2051

    
2052
2011.10.21, Version 0.5.10 (unstable), 220e61c1f65bf4db09699fcf6399c0809c0bc446
2053

    
2054
* Remove cmake build system, support for Cygwin, legacy code base,
2055
	process.ENV, process.ARGV, process.memoryUsage().vsize, os.openOSHandle
2056

    
2057
* Documentation improvments (Igor Zinkovsky, Bert Belder, Ilya Dmitrichenko,
2058
koichik, Maciej Małecki, Guglielmo Ferri, isaacs)
2059

    
2060
* Performance improvements (Daniel Ennis, Bert Belder, Ben Noordhuis)
2061

    
2062
* Long process.title support (Ben Noordhuis)
2063

    
2064
* net: register net.Server callback only once (Simen Brekken)
2065

    
2066
* net: fix connect queue bugs (Ben Noordhuis)
2067

    
2068
* debugger: fix backtrace err handling (Fedor Indutny)
2069

    
2070
* Use getaddrinfo instead of c-ares for dns.lookup
2071

    
2072
* Emit 'end' from crypto streams on close
2073

    
2074
* #1902 buffer: use NO_NULL_TERMINATION flag (koichik)
2075

    
2076
* #1907 http: Added support for HTTP PATCH verb (Thomas Parslow)
2077

    
2078
* #1644 add GetCPUInfo on windows (Karl Skomski)
2079

    
2080
* #1484, #1834, #1482, #771 Don't use a separate context for the repl.
2081
  (isaacs)
2082

    
2083
* #1882 zlib Update 'availOutBefore' value, and test (isaacs)
2084

    
2085
* #1888 child_process.fork: don't modify args (koichik)
2086

    
2087
* #1516 tls: requestCert unusable with Firefox and Chrome (koichik)
2088

    
2089
* #1467 tls: The TLS API is inconsistent with the TCP API (koichik)
2090

    
2091
* #1894 net: fix error handling in listen() (koichik)
2092

    
2093
* #1860 console.error now goes through uv_tty_t
2094

    
2095
* Upgrade V8 to 3.7.0
2096

    
2097
* Upgrade GYP to r1081
2098

    
2099

    
2100
2011.10.10, Version 0.5.9 (unstable), 3bd9b08fb125b606f97a4079b147accfdeebb07d
2101

    
2102
* fs.watch interface backed by kqueue, inotify, and ReadDirectoryChangesW
2103
  (Igor Zinkovsky, Ben Noordhuis)
2104

    
2105
* add dns.resolveTxt (Christian Tellnes)
2106

    
2107
* Remove legacy http library (Ben Noordhuis)
2108

    
2109
* child_process.fork returns and works on Windows. Allows passing handles.
2110
  (Igor Zinkovsky, Bert Belder)
2111

    
2112
* #1774 Lint and clean up for --harmony_block_scoping (Tyler Larson, Colton
2113
  Baker)
2114

    
2115
* #1813 Fix ctrl+c on Windows (Bert Belder)
2116

    
2117
* #1844 unbreak --use-legacy (Ben Noordhuis)
2118

    
2119
* process.stderr now goes through libuv. Both process.stdout and
2120
  process.stderr are blocking when referencing a TTY.
2121

    
2122
* net_uv performance improvements (Ben Noordhuis, Bert Belder)
2123

    
2124

    
2125
2011.09.30, Version 0.5.8 (unstable), 7cc17a0cea1d25188c103745a7d0c24375e3a609
2126

    
2127
* zlib bindings (isaacs)
2128

    
2129
* Windows supports TTY ANSI escape codes (Bert Belder)
2130

    
2131
* Debugger improvements (Fedor Indutny)
2132

    
2133
* crypto: look up SSL errors with ERR_print_errors() (Ben Noordhuis)
2134

    
2135
* dns callbacks go through MakeCallback now
2136

    
2137
* Raise an error when a malformed package.json file is found. (Ben Leslie)
2138

    
2139
* buffers: handle bad length argument in constructor (Ben Noordhuis)
2140

    
2141
* #1726, unref process.stdout
2142

    
2143
* Doc improvements (Ben Noordhuis, Fedor Indutny, koichik)
2144

    
2145
* Upgrade libuv to fe18438
2146

    
2147

    
2148
2011.09.16, Version 0.5.7 (unstable), 558241166c4f3c516e5a448e676db0b57119212f
2149

    
2150
* Upgrade V8 to 3.6.4
2151

    
2152
* Improve Windows compatibility
2153

    
2154
* Documentation improvements
2155

    
2156
* Debugger and REPL improvements (Fedor Indutny)
2157

    
2158
* Add legacy API support: net.Stream(fd), process.stdout.writable,
2159
  process.stdout.fd
2160

    
2161
* Fix mkdir EEXIST handling (isaacs)
2162

    
2163
* Use net_uv instead of net_legacy for stdio
2164

    
2165
* Do not load readline from util.inspect
2166

    
2167
* #1673 Fix bug related to V8 context with accessors (Fedor Indutny)
2168

    
2169
* #1634 util: Fix inspection for Error (koichik)
2170

    
2171
* #1645 fs: Add positioned file writing feature to fs.WriteStream (Thomas
2172
  Shinnick)
2173

    
2174
* #1637 fs: Unguarded fs.watchFile cache statWatchers checking fixed (Thomas
2175
  Shinnick)
2176

    
2177
* #1695 Forward customFds to ChildProcess.spawn
2178

    
2179
* #1707 Fix hasOwnProperty security problem in querystring (isaacs)
2180

    
2181
* #1719 Drain OpenSSL error queue
2182

    
2183

    
2184
2011.09.08, Version 0.5.6 (unstable), b49bec55806574a47403771bce1ee379c2b09ca2
2185

    
2186
* #345, #1635, #1648 Documentation improvements (Thomas Shinnick,
2187
  Abimanyu Raja, AJ ONeal, Koichi Kobayashi, Michael Jackson, Logan Smyth,
2188
  Ben Noordhuis)
2189

    
2190
* #650 Improve path parsing on windows (Bert Belder)
2191

    
2192
* #752 Remove headers sent check in OutgoingMessage.getHeader()
2193
  (Peter Lyons)
2194

    
2195
* #1236, #1438, #1506, #1513, #1621, #1640, #1647 Libuv-related bugs fixed
2196
  (Jorge Chamorro Bieling, Peter Bright, Luis Lavena, Igor Zinkovsky)
2197

    
2198
* #1296, #1612 crypto: Fix BIO's usage. (Koichi Kobayashi)
2199

    
2200
* #1345 Correctly set socket.remoteAddress with libuv backend (Bert Belder)
2201

    
2202
* #1429 Don't clobber quick edit mode on windows (Peter Bright)
2203

    
2204
* #1503 Make libuv backend default on unix, override with `node --use-legacy`
2205

    
2206
* #1565 Fix fs.stat for paths ending with \ on windows (Igor Zinkovsky)
2207

    
2208
* #1568 Fix x509 certificate subject parsing (Koichi Kobayashi)
2209

    
2210
* #1586 Make socket write encoding case-insensitive (Koichi Kobayashi)
2211

    
2212
* #1591, #1656, #1657 Implement fs in libuv, remove libeio and pthread-win32
2213
  dependency on windows (Igor Zinkovsky, Ben Noordhuis, Ryan Dahl,
2214
  Isaac Schlueter)
2215

    
2216
* #1592 Don't load-time link against CreateSymbolicLink on windows
2217
  (Peter Bright)
2218

    
2219
* #1601 Improve API consistency when dealing with the socket underlying a HTTP
2220
  client request (Mikeal Rogers)
2221

    
2222
* #1610 Remove DigiNotar CA from trusted list (Isaac Schlueter)
2223

    
2224
* #1617 Added some win32 os functions (Karl Skomski)
2225

    
2226
* #1624 avoid buffer overrun with 'binary' encoding (Koichi Kobayashi)
2227

    
2228
* #1633 make Buffer.write() always set _charsWritten (Koichi Kobayashi)
2229

    
2230
* #1644 Windows: set executables to be console programs (Peter Bright)
2231

    
2232
* #1651 improve inspection for sparse array (Koichi Kobayashi)
2233

    
2234
* #1672 set .code='ECONNRESET' on socket hang up errors (Ben Noordhuis)
2235

    
2236
* Add test case for foaf+ssl client certificate (Niclas Hoyer)
2237

    
2238
* Added RPATH environment variable to override run-time library paths
2239
  (Ashok Mudukutore)
2240

    
2241
* Added TLS client-side session resumption support (Sean Cunningham)
2242

    
2243
* Added additional properties to getPeerCertificate (Nathan Rixham,
2244
  Niclas Hoyer)
2245

    
2246
* Don't eval repl command twice when an error is thrown (Nathan Rajlich)
2247

    
2248
* Improve util.isDate() (Nathan Rajlich)
2249

    
2250
* Improvements in libuv backend and bindings, upgrade libuv to
2251
  bd6066cb349a9b3a1b0d87b146ddaee06db31d10
2252

    
2253
* Show warning when using lib/sys.js (Maciej Malecki)
2254

    
2255
* Support plus sign in url protocol (Maciej Malecki)
2256

    
2257
* Upgrade V8 to 3.6.2
2258

    
2259

    
2260
2011.08.26, Version 0.5.5 (unstable), d2d53d4bb262f517a227cc178a1648094ba54c20
2261

    
2262
* typed arrays, implementation from Plesk
2263

    
2264
* fix IP multicast on SunOS
2265

    
2266
* fix DNS lookup order: IPv4 first, IPv6 second (--use-uv only)
2267

    
2268
* remove support for UNIX datagram sockets (--use-uv only)
2269

    
2270
* UDP support for Windows (Bert Belder)
2271

    
2272
* #1572 improve tab completion for objects in the REPL (Nathan Rajlich)
2273

    
2274
* #1563 fix buffer overflow in child_process module (reported by Dean McNamee)
2275

    
2276
* #1546 fix performance regression in http module (reported by Brian Geffon)
2277

    
2278
* #1491 add PBKDF2 crypto support (Glen Low)
2279

    
2280
* #1447 remove deprecated http.cat() function (Mikeal Rogers)
2281

    
2282
* #1140 fix incorrect dispatch of vm.runInContext's filename argument
2283
  (Antranig Basman)
2284

    
2285
* #1140 document vm.runInContext() and vm.createContext() (Antranig Basman)
2286

    
2287
* #1428 fix os.freemem() on 64 bits freebsd (Artem Zaytsev)
2288

    
2289
* #1164 make all DNS lookups async, fixes uncatchable exceptions
2290
  (Koichi Kobayashi)
2291

    
2292
* fix incorrect ssl shutdown check (Tom Hughes)
2293

    
2294
* various cmake fixes (Tom Hughes)
2295

    
2296
* improved documentation (Koichi Kobayashi, Logan Smyth, Fedor Indutny,
2297
  Mikeal Rogers, Maciej Małecki, Antranig Basman, Mickaël Delahaye)
2298

    
2299
* upgrade libuv to commit 835782a
2300

    
2301
* upgrade V8 to 3.5.8
2302

    
2303

    
2304
2011.08.12, Version 0.5.4 (unstable), cfba1f59224ff8602c3fe9145181cad4c6df89a9
2305

    
2306
* libuv/Windows compatibility improvements
2307

    
2308
* Build on Microsoft Visual Studio via GYP. Use generate-projects.bat in the
2309
  to build sln files. (Peter Bright, Igor Zinkovsky)
2310

    
2311
* Make Mikeal's HTTP agent client the default. Use old HTTP client with
2312
  --use-http1
2313

    
2314
* Fixes https host header default port handling. (Mikeal Rogers)
2315

    
2316
* #1440 strip byte order marker when loading *.js and *.json files
2317
  (Ben Noordhuis)
2318

    
2319
* #1434 Improve util.format() compatibility with browser. (Koichi Kobayashi)
2320

    
2321
* Provide unchecked uint entry points for integer Buffer.read/writeInt
2322
  methods. (Robert Mustacchi)
2323

    
2324
* CMake improvements (Tom Huges)
2325

    
2326
* Upgrade V8 to 3.5.4.
2327

    
2328

    
2329
2011.08.01, Version 0.5.3 (unstable), 4585330afef44ddfb6a4054bd9b0f190b352628b
2330

    
2331
* Fix crypto encryption/decryption with Base64. (SAWADA Tadashi)
2332

    
2333
* #243 Add an optional length argument to Buffer.write() (koichik)
2334

    
2335
* #657 convert nonbuffer data to string in fs.writeFile/Sync
2336
  (Daniel Pihlström)
2337

    
2338
* Add process.features, remove process.useUV (Ben Noordhuis)
2339

    
2340
* #324 Fix crypto hmac to accept binary keys + add test cases from rfc 2202
2341
  and 4231 (Stefan Bühler)
2342

    
2343
* Add Socket::bytesRead, Socket::bytesWritten (Alexander Uvarov)
2344

    
2345
* #572 Don't print result of --eval in CLI (Ben Noordhuis)
2346

    
2347
* #1223 Fix http.ClientRequest crashes if end() was called twice (koichik)
2348

    
2349
* #1383 Emit 'close' after all connections have closed (Felix Geisendörfer)
2350

    
2351
* Add sprintf-like util.format() function (Ben Noordhuis)
2352

    
2353
* Add support for TLS SNI (Fedor Indutny)
2354

    
2355
* New http agent implementation. Off by default the command line flag
2356
  --use-http2 will enable it. "make test-http2" will run the tests
2357
	for the new implementation. (Mikeal Rogers)
2358

    
2359
* Revert AMD compatibility. (isaacs)
2360

    
2361
* Windows: improvements, child_process support.
2362

    
2363
* Remove pkg-config file.
2364

    
2365
* Fix startup time regressions.
2366

    
2367
* doc improvements
2368

    
2369

    
2370
2011.07.22, Version 0.5.2 (unstable), 08ffce1a00dde1199174b390a64a90b60768ddf5
2371

    
2372
* libuv improvements; named pipe support
2373

    
2374
* #1242 check for SSL_COMP_get_compression_methods() (Ben Noordhuis)
2375

    
2376
* #1348 remove require.paths (isaacs)
2377

    
2378
* #1349 Delimit NODE_PATH with ; on Windows (isaacs)
2379

    
2380
* #1335 Remove EventEmitter from C++
2381

    
2382
* #1357 Load json files with require() (isaacs)
2383

    
2384
* #1374 fix setting ServerResponse.statusCode in writeHead (Trent Mick)
2385

    
2386
* Fixed: GC was being run too often.
2387

    
2388
* Upgrade V8 to 3.4.14
2389

    
2390
* doc improvements
2391

    
2392

    
2393
2011.07.14, Version 0.5.1 (unstable), f8bfa54d0fa509f9242637bef2869a1b1e842ec8
2394

    
2395
* #1233 Fix os.totalmem on FreeBSD amd64 (Artem Zaytsev)
2396

    
2397
* #1149 IDNA and Punycode support in url.parse
2398
  (Jeremy Selier, Ben Noordhuis, isaacs)
2399

    
2400
* Export $CC and $CXX to uv and V8's build systems
2401

    
2402
* Include pthread-win32 static libraries in build (Igor Zinkovsky)
2403

    
2404
* #1199, #1094 Fix fs can't handle large file on 64bit platform (koichik)
2405

    
2406
* #1281 Make require a public member of module (isaacs)
2407

    
2408
* #1303 Stream.pipe returns the destination (Elijah Insua)
2409

    
2410
* #1229 Addons should not -DEV_MULTIPLICITY=0 (Brian White)
2411

    
2412
* libuv backend improvements
2413

    
2414
* Upgrade V8 to 3.4.10
2415

    
2416

    
2417
2011.07.05, Version 0.5.0 (unstable), ae7ed8482ea7e53c59acbdf3cf0e0a0ae9d792cd
2418

    
2419
* New non-default libuv backend to support IOCP on Windows.
2420
  Use --use-uv to enable.
2421

    
2422
* deprecate http.cat
2423

    
2424
* docs improved.
2425

    
2426
* add child_process.fork
2427

    
2428
* add fs.utimes() and fs.futimes() support (Ben Noordhuis)
2429

    
2430
* add process.uptime() (Tom Huges)
2431

    
2432
* add path.relative (Tony Huang)
2433

    
2434
* add os.getNetworkInterfaces()
2435

    
2436
* add remoteAddress and remotePort for client TCP connections
2437
  (Brian White)
2438

    
2439
* add secureOptions flag, setting ciphers,
2440
  SSL_OP_CRYPTOPRO_TLSEXT_BUG to TLS (Theo Schlossnagle)
2441

    
2442
* add process.arch (Nathan Rajlich)
2443

    
2444
* add reading/writing of floats and doubles from/to buffers (Brian White)
2445

    
2446
* Allow script to be read from stdin
2447

    
2448
* #477 add Buffer::fill method to do memset (Konstantin Käfer)
2449

    
2450
* #573 Diffie-Hellman support to crypto module (Håvard Stranden)
2451

    
2452
* #695 add 'hex' encoding to buffer (isaacs)
2453

    
2454
* #851 Update how REPLServer uses contexts (Ben Weaver)
2455

    
2456
* #853 add fs.lchow, fs.lchmod, fs.fchmod, fs.fchown (isaacs)
2457

    
2458
* #889 Allow to remove all EventEmitter listeners at once
2459
  (Felix Geisendörfer)
2460

    
2461
* #926 OpenSSL NPN support (Fedor Indutny)
2462

    
2463
* #955 Change ^C handling in REPL (isaacs)
2464

    
2465
* #979 add support for Unix Domain Sockets to HTTP (Mark Cavage)
2466

    
2467
* #1173 #1170 add AMD, asynchronous module definition (isaacs)
2468

    
2469
* DTrace probes: support X-Forwarded-For (Dave Pacheco)
2470

    
2471

    
2472
2011.09.15, Version 0.4.12 (stable), 771ba34ca7b839add2ef96879e1ffc684813cf7c
2473

    
2474
* Improve docs
2475

    
2476
* #1563 overflow in ChildProcess custom_fd.
2477

    
2478
* #1569, parse error on multi-line HTTP headers. (Ben Noordhuis)
2479

    
2480
* #1586 net: Socket write encoding case sensitivity (koichik)
2481

    
2482
* #1610 Remove DigiNotar CA from trusted list (isaacs)
2483

    
2484
* #1624 buffer: Avoid overrun with 'binary' encoding. (koichik)
2485

    
2486
* #1633 buffer: write() should always set _charsWritten. (koichik)
2487

    
2488
* #1707 hasOwnProperty usage security hole in querystring (isaacs)
2489

    
2490
* #1719 Drain OpenSSL error queue
2491

    
2492
* Fix error reporting in net.Server.listen
2493

    
2494

    
2495
2011.08.17, Version 0.4.11 (stable), a745d19ce7d1c0e3778371af4f0346be70cf2c8e
2496

    
2497
* #738 Fix crypto encryption/decryption with Base64. (SAWADA Tadashi)
2498

    
2499
* #1202 net.createConnection defer DNS lookup error events to next tick
2500
  (Ben Noordhuis)
2501

    
2502
* #1374 fix setting ServerResponse.statusCode in writeHead (Trent Mick)
2503

    
2504
* #1417 Fix http.ClientRequest crashes if end() was called twice
2505

    
2506
* #1497 querystring: Replace 'in' test with 'hasOwnProperty' (isaacs)
2507

    
2508
* #1546 http perf improvement
2509

    
2510
* fix memleak in libeio (Tom Hughes)
2511

    
2512
* cmake improvements (Tom Hughes)
2513

    
2514
* node_net.cc: fix incorrect sizeof() (Tom Hughes)
2515

    
2516
* Windows/cygwin: no more GetConsoleTitleW errors on XP (Bert Belder)
2517

    
2518
* Doc improvments (koichik, Logan Smyth, Ben Noordhuis, Arnout Kazemier)
2519

    
2520

    
2521
2011.07.19, Version 0.4.10 (stable), 1b8dd65d6e3b82b6863ef38835cc436c5d30c1d5
2522

    
2523
* #394 Fix Buffer drops last null character in UTF-8
2524

    
2525
* #829 Backport r8577 from V8 (Ben Noordhuis)
2526

    
2527
* #877 Don't wait for HTTP Agent socket pool to establish connections.
2528

    
2529
* #915 Find kqueue on FreeBSD correctly (Brett Kiefer)
2530

    
2531
* #1085 HTTP: Fix race in abort/dispatch code (Stefan Rusu)
2532

    
2533
* #1274 debugger improvement (Yoshihiro Kikuchi)
2534

    
2535
* #1291 Properly respond to HEAD during end(body) hot path (Reid Burke)
2536

    
2537
* #1304 TLS: Fix race in abort/connection code (Stefan Rusu)
2538

    
2539
* #1360 Allow _ in url hostnames.
2540

    
2541
* Revert 37d529f8 - unbreaks debugger command parsing.
2542

    
2543
* Bring back global execScript
2544

    
2545
* Doc improvements
2546

    
2547

    
2548
2011.06.29, Version 0.4.9 (stable), de44eafd7854d06cd85006f509b7051e8540589b
2549

    
2550
* Improve documentation
2551

    
2552
* #1095 error handling bug in stream.pipe() (Felix Geisendörfer)
2553

    
2554
* #1097 Fix a few leaks in node_crypto.cc (Ben Noordhuis)
2555

    
2556
* #562 #1078 Parse file:// urls properly (Ryan Petrello)
2557

    
2558
* #880 Option to disable SSLv2 (Jérémy Lal)
2559

    
2560
* #1087 Disabling SSL compression disabled with early OpenSSLs.
2561

    
2562
* #1144 debugger: don't allow users to input non-valid commands
2563
  (Siddharth Mahendraker)
2564

    
2565
* Perf improvement for util.inherits
2566

    
2567
* #1166 Support for signature verification with RSA/DSA public keys
2568
  (Mark Cavage)
2569

    
2570
* #1177 Remove node_modules lookup optimization to better support
2571
  nested project structures (Mathias Buus)
2572

    
2573
* #1203 Add missing scope.Close to fs.sendfileSync
2574

    
2575
* #1187 Support multiple 'link' headers
2576

    
2577
* #1196 Fix -e/--eval can't load module from node_modules (Koichi Kobayashi)
2578

    
2579
* Upgrade V8 to 3.1.8.25, upgrade http-parser.
2580

    
2581

    
2582
2011.05.20, Version 0.4.8 (stable), 7dd22c26e4365698dc3efddf138c4d399cb912c8
2583

    
2584
* #974 Properly report traceless errors (isaacs)
2585

    
2586
* #983 Better JSON.parse error detection in REPL (isaacs)
2587

    
2588
* #836 Agent socket errors bubble up to req only if req exists
2589

    
2590
* #1041 Fix event listener leak check timing (koichik)
2591

    
2592
*	#1038 Fix dns.resolve() with 'PTR' throws Error: Unknown type "PTR"
2593
  (koichik)
2594

    
2595
* #1073 Share SSL context between server connections (Fedor Indutny)
2596

    
2597
* Disable compression with OpenSSL. Improves memory perf.
2598

    
2599
* Implement os.totalmem() and os.freemem() for SunOS (Alexandre Marangone)
2600

    
2601
* Fix a special characters in URL regression (isaacs)
2602

    
2603
* Fix idle timeouts in HTTPS (Felix Geisendörfer)
2604

    
2605
* SlowBuffer.write() with 'ucs2' throws ReferenceError. (koichik)
2606

    
2607
* http.ServerRequest 'close' sometimes gets an error argument
2608
  (Felix Geisendörfer)
2609

    
2610
* Doc improvements
2611

    
2612
* cleartextstream.destroy() should close(2) the socket. Previously was being
2613
	mapped to a shutdown(2) syscall.
2614

    
2615
* No longer compile out asserts and debug statements in normal build.
2616

    
2617
* Debugger improvements.
2618

    
2619
* Upgrade V8 to 3.1.8.16.
2620

    
2621

    
2622
2011.04.22, Version 0.4.7 (stable), c85455a954411b38232e79752d4abb61bb75031b
2623

    
2624
* Don't emit error on ECONNRESET from read() #670
2625

    
2626
* Fix: Multiple pipes to the same stream were broken #929
2627
  (Felix Geisendörfer)
2628

    
2629
* URL parsing/formatting corrections #954 (isaacs)
2630

    
2631
* make it possible to do repl.start('', stream) (Wade Simmons)
2632

    
2633
* Add os.loadavg for SunOS (Robert Mustacchi)
2634

    
2635
* Fix timeouts with floating point numbers #897 (Jorge Chamorro Bieling)
2636

    
2637
* Improve docs.
2638

    
2639

    
2640
2011.04.13, Version 0.4.6 (stable), 58002d56bc79410c5ff397fc0e1ffec0665db38a
2641

    
2642
* Don't error on ENOTCONN from shutdown() #670
2643

    
2644
* Auto completion of built-in debugger suggests prefix match rather than
2645
	partial match. (koichik)
2646

    
2647
* circular reference in vm modules. #822 (Jakub Lekstan)
2648

    
2649
* http response.readable should be false after 'end' #867 (Abe Fettig)
2650

    
2651
* Implement os.cpus() and os.uptime() on Solaris (Scott McWhirter)
2652

    
2653
* fs.ReadStream: Allow omission of end option for range reads #801
2654
	(Felix Geisendörfer)
2655

    
2656
* Buffer.write() with UCS-2 should not be write partial char
2657
	#916 (koichik)
2658

    
2659
* Pass secureProtocol through on tls.Server creation (Theo Schlossnagle)
2660

    
2661
* TLS use RC4-SHA by default
2662

    
2663
* Don't strangely drop out of event loop on HTTPS client uploads #892
2664

    
2665
* Doc improvements
2666

    
2667
* Upgrade v8 to 3.1.8.10
2668

    
2669

    
2670
2011.04.01, Version 0.4.5 (stable), 787a343b588de26784fef97f953420b53a6e1d73
2671

    
2672
* Fix listener leak in stream.pipe() (Mikeal Rogers)
2673

    
2674
* Retain buffers in fs.read/write() GH-814 (Jorge Chamorro Bieling)
2675

    
2676
* TLS performance improvements
2677

    
2678
* SlowBuffer.prototype.slice bug GH-843
2679

    
2680
* process.stderr.write should return true
2681

    
2682
* Immediate pause/resume race condition GH-535 (isaacs)
2683

    
2684
* Set default host header properly GH-721 (isaacs)
2685

    
2686
* Upgrade V8 to 3.1.8.8
2687

    
2688

    
2689
2011.03.26, Version 0.4.4 (stable), 25122b986a90ba0982697b7abcb0158c302a1019
2690

    
2691
* CryptoStream.end shouldn't throw if not writable GH-820
2692

    
2693
* Drop out if connection destroyed before connect() GH-819
2694

    
2695
* expose https.Agent
2696

    
2697
* Correctly setsid in tty.open GH-815
2698

    
2699
* Bug fix for failed buffer construction
2700

    
2701
* Added support for removing .once listeners (GH-806)
2702

    
2703
* Upgrade V8 to 3.1.8.5
2704

    
2705

    
2706
2011.03.18, Version 0.4.3 (stable), c095ce1a1b41ca015758a713283bf1f0bd41e4c4
2707

    
2708
* Don't decrease server connection counter again if destroy() is called more
2709
	than once GH-431 (Andreas Reich, Anders Conbere)
2710

    
2711
* Documentation improvements (koichik)
2712

    
2713
* Fix bug with setMaxListeners GH-682
2714

    
2715
* Start up memory footprint improvement. (Tom Hughes)
2716

    
2717
* Solaris improvements.
2718

    
2719
* Buffer::Length(Buffer*) should not invoke itself recursively GH-759 (Ben
2720
  Noordhuis)
2721

    
2722
* TLS: Advertise support for client certs GH-774 (Theo Schlossnagle)
2723

    
2724
* HTTP Agent bugs: GH-787, GH-784, GH-803.
2725

    
2726
* Don't call GetMemoryUsage every 5 seconds.
2727

    
2728
* Upgrade V8 to 3.1.8.3
2729

    
2730

    
2731
2011.03.02, Version 0.4.2 (stable), 39280e1b5731f3fcd8cc42ad41b86cdfdcb6d58b
2732

    
2733
* Improve docs.
2734

    
2735
* Fix process.on edge case with signal event (Alexis Sellier)
2736

    
2737
* Pragma HTTP header comma separation
2738

    
2739
* In addition to 'aborted' emit 'close' from incoming requests
2740
  (Felix Geisendörfer)
2741

    
2742
* Fix memleak in vm.runInNewContext
2743

    
2744
* Do not cache modules that throw exceptions (Felix Geisendörfer)
2745

    
2746
* Build system changes for libnode (Aria Stewart)
2747

    
2748
* Read up the prototype of the 'env' object. (Nathan Rajlich)
2749

    
2750
* Add 'close' and 'aborted' events to Agent responses
2751

    
2752
* http: fix missing 'drain' events (Russell Haering)
2753

    
2754
* Fix process.stdout.end() throws ENOTSOCK error. (Koichi Kobayashi)
2755

    
2756
* REPL bug fixes (isaacs)
2757

    
2758
* node_modules folders should be highest priority (isaacs)
2759

    
2760
* URL parse more safely (isaacs)
2761

    
2762
* Expose errno with a string for dns/cares (Felix Geisendörfer)
2763

    
2764
* Fix tty.setWindowSize
2765

    
2766
* spawn: setuid after chdir (isaacs)
2767

    
2768
* SIGUSR1 should break the VM without delay
2769

    
2770
* Upgrade V8 to 3.1.8.
2771

    
2772

    
2773
2011.02.19, Version 0.4.1 (stable), e8aef84191bc2c1ba2bcaa54f30aabde7f03769b
2774

    
2775
* Fixed field merging with progressive fields on writeHead()
2776
  (TJ Holowaychuk)
2777

    
2778
* Make the repl respect node_modules folders (isaacs)
2779

    
2780
* Fix for DNS fail in HTTP request (Richard Rodger)
2781

    
2782
* Default to port 80 for http.request and http.get.
2783

    
2784
* Improve V8 support for Cygwin (Bert Belder)
2785

    
2786
* Fix fs.open param parsing. (Felix Geisendörfer)
2787

    
2788
* Fixed null signal.
2789

    
2790
* Fix various HTTP and HTTPS bugs
2791

    
2792
* cmake improvements (Tom Hughes)
2793

    
2794
* Fix: TLS sockets should not be writable after 'end'
2795

    
2796
* Fix os.cpus() on cygwin (Brian White)
2797

    
2798
* MinGW: OpenSSL support (Bert Belder)
2799

    
2800
* Upgrade V8 to 3.1.5, libev to 4.4.
2801

    
2802

    
2803
2011.02.10, Version 0.4.0 (stable), eb155ea6f6a6aa341aa8c731dca8da545c6a4008
2804

    
2805
* require() improvements (isaacs)
2806
  - understand package.json (isaacs)
2807
  - look for 'node_modules' dir
2808

    
2809
* cmake fixes (Daniel Gröber)
2810

    
2811
* http: fix buffer writes to outgoing messages (Russell Haering)
2812

    
2813
* Expose UCS-2 Encoding (Konstantin Käfer)
2814

    
2815
* Support strings for octal modes (isaacs)
2816

    
2817
* Support array-ish args to Buffer ctor (isaacs)
2818

    
2819
* cygwin and mingw improvements (Bert Belder)
2820

    
2821
* TLS improvements
2822

    
2823
* Fewer syscalls during require (Bert Belder, isaacs)
2824

    
2825
* More DTrace probes (Bryan Cantrill,  Robert Mustacchi)
2826

    
2827
* 'pipe' event on pipe() (Mikeal Rogers)
2828

    
2829
* CRL support in TLS (Theo Schlossnagle)
2830

    
2831
* HTTP header manipulation methods (Tim Caswell, Charlie Robbins)
2832

    
2833
* Upgrade V8 to 3.1.2
2834

    
2835

    
2836
2011.02.04, Version 0.3.8 (unstable), 9493b7563bff31525b4080df5aeef09747782d5e
2837

    
2838
* Add req.abort() for client side requests.
2839

    
2840
* Add exception.code for easy testing:
2841
  Example: if (err.code == 'EADDRINUSE');
2842

    
2843
* Add process.stderr.
2844

    
2845
* require.main is the main module. (Isaac Schlueter)
2846

    
2847
* dgram: setMulticastTTL, setMulticastLoopback and addMembership.
2848
  (Joe Walnes)
2849

    
2850
* Fix throttling in TLS connections
2851

    
2852
* Add socket.bufferSize
2853

    
2854
* MinGW improvements (Bert Belder)
2855

    
2856
* Upgrade V8 to 3.1.1
2857

    
2858
2011.01.27, Version 0.3.7 (unstable), d8579c6afdbe868de6dffa8db78bbe4ba2d03e0e
2859

    
2860
* Expose agent in http and https client. (Mikeal Rogers)
2861

    
2862
* Fix bug in http request's end method. (Ali Farhadi)
2863

    
2864
* MinGW: better net support (Bert Belder)
2865

    
2866
* fs.open should set FD_CLOEXEC
2867

    
2868
* DTrace probes (Bryan Cantrill)
2869

    
2870
* REPL fixes and improvements (isaacs, Bert Belder)
2871

    
2872
* Fix many bugs with legacy http.Client interface
2873

    
2874
* Deprecate process.assert. Use require('assert').ok
2875

    
2876
* Add callback parameter to socket.setTimeout(). (Ali Farhadi)
2877

    
2878
* Fixing bug in http request default encoding (Ali Farhadi)
2879

    
2880
* require: A module ID with a trailing slash must be a dir.
2881
  (isaacs)
2882

    
2883
* Add ext_key_usage to getPeerCertificate (Greg Hughes)
2884

    
2885
* Error when child_process.exec hits maxBuffer.
2886

    
2887
* Fix option parsing in tls.connect()
2888

    
2889
* Upgrade to V8 3.0.10
2890

    
2891

    
2892
2011.01.21, Version 0.3.6 (unstable), bb3e71466e5240626d9d21cf791fe43e87d90011
2893

    
2894
* REPL and other improvements on MinGW (Bert Belder)
2895

    
2896
* listen/bind errors should close net.Server
2897

    
2898
* New HTTP and HTTPS client APIs
2899

    
2900
* Upgrade V8 to 3.0.9
2901

    
2902

    
2903
2011.01.16, Version 0.3.5 (unstable), b622bc6305e3c675e0edfcdbaa387d849ad0bba0
2904

    
2905
* Built-in debugger improvements.
2906

    
2907
* Add setsid, setuid, setgid options to child_process.spawn
2908
  (Isaac Schlueter)
2909

    
2910
* tty module improvements.
2911

    
2912
* Upgrade libev to 4.3, libeio to latest, c-ares to 1.7.4
2913

    
2914
* Allow third party hooks before main module load.
2915
  (See 496be457b6a2bc5b01ec13644b9c9783976159b2)
2916

    
2917
* Don't stat() on cached modules. (Felix Geisendörfer)
2918

    
2919

    
2920
2011.01.08, Version 0.3.4 (unstable), 73f53e12e4a5b9ef7dbb4792bd5f8ad403094441
2921

    
2922
* Primordial mingw build (Bert Belder)
2923

    
2924
* HTTPS server
2925

    
2926
* Built in debugger 'node debug script.js'
2927

    
2928
* realpath files during module load (Mihai Călin Bazon)
2929

    
2930
* Rename net.Stream to net.Socket (existing name will continue to be
2931
  supported)
2932

    
2933
* Fix process.platform
2934

    
2935

    
2936
2011.01.02, Version 0.3.3 (unstable), 57544ba1c54c7d0da890317deeb73076350c5647
2937

    
2938
* TLS improvements.
2939

    
2940
* url.parse(url, true) defaults query field to {} (Jeremy Martin)
2941

    
2942
* Upgrade V8 to 3.0.4
2943

    
2944
* Handle ECONNABORT properly (Theo Schlossnagle)
2945

    
2946
* Fix memory leaks (Tom Hughes)
2947

    
2948
* Add os.cpus(), os.freemem(), os.totalmem(), os.loadavg() and other
2949
  functions for OSX, Linux, and Cygwin. (Brian White)
2950

    
2951
* Fix REPL syntax error bug (GH-543), improve how REPL commands are
2952
  evaluated.
2953

    
2954
* Use process.stdin instead of process.openStdin().
2955

    
2956
* Disable TLS tests when node doesn't have OpenSSL.
2957

    
2958

    
2959
2010.12.16, Version 0.3.2 (unstable), 4bb914bde9f3c2d6de00853353b6b8fc9c66143a
2960

    
2961
* Rip out the old (broken) TLS implementation introduce new tested
2962
  implementation and API. See docs. HTTPS not supported in this release.
2963

    
2964
* Introduce 'os' and 'tty' modules.
2965

    
2966
* Callback parameters for socket.write() and socket.connect().
2967

    
2968
* Support CNAME lookups in DNS module. (Ben Noordhuis)
2969

    
2970
* cmake support (Tom Hughes)
2971

    
2972
* 'make lint'
2973

    
2974
* oprofile support (./configure --oprofile)
2975

    
2976
* Lots of bug fixes, including:
2977
  - Memory leak in ChildProcess:Spawn(). (Tom Hughes)
2978
  - buffer.slice(0, 0)
2979
  - Global variable leaks
2980
  - clearTimeouts calling multiple times (Michael W)
2981
  - utils.inspect's detection of circular structures (Tim Cooijmans)
2982
  - Apple's threaded write()s bug (Jorge Chamorro Bieling)
2983
  - Make sure raw mode is disabled when exiting a terminal-based REPL.
2984
    (Brian White)
2985

    
2986
* Deprecate process.compile, process.ENV
2987

    
2988
* Upgrade V8 to 3.0.3, upgrade http-parser.
2989

    
2990

    
2991
2010.11.16, Version 0.3.1 (unstable), ce9a54aa1fbf709dd30316af8a2f14d83150e947
2992

    
2993
* TLS improvements (Paul Querna)
2994
  - Centralize error handling in SecureStream
2995
  - Add SecurePair for handling of a ssl/tls stream.
2996

    
2997
* New documentation organization (Micheil Smith)
2998

    
2999
* allowHalfOpen TCP connections disabled by default.
3000

    
3001
* Add C++ API for constructing fast buffer from string
3002

    
3003
* Move idle timers into its own module
3004

    
3005
* Gracefully handle EMFILE and server.maxConnections
3006

    
3007
* make "node --eval" eval in the global scope.
3008
  (Jorge Chamorro Bieling)
3009

    
3010
* Let exit listeners know the exit code (isaacs)
3011

    
3012
* Handle cyclic links smarter in fs.realpath (isaacs)
3013

    
3014
* Remove node-repl (just use 'node' without args)
3015

    
3016
* Rewrite libeio After callback to use req->result instead of req->errorno
3017
  for error checking (Micheil Smith)
3018

    
3019
* Remove warning about deprecating 'sys' - too aggressive
3020

    
3021
* Make writes to process.env update the real environment. (Ben Noordhuis)
3022

    
3023
* Set FD_CLOEXEC flag on stdio FDs before spawning. (Guillaume Tuton)
3024

    
3025
* Move ev_loop out of javascript
3026

    
3027
* Switch \n with \r\n for all strings printed out.
3028

    
3029
* Added support for cross compilation (Rasmus Andersson)
3030

    
3031
* Add --profile flag to configure script, enables gprof profiling.
3032
  (Ben Noordhuis)
3033

    
3034
* writeFileSync could exhibit pathological behavior when a buffer
3035
  could not be written to the file in a single write() call.
3036

    
3037
* new path.join behavior (isaacs)
3038
  - Express desired path.join behavior in tests.
3039
  - Update fs.realpath to reflect new path.join behavior
3040
  - Update url.resolve() to use new path.join behavior.
3041

    
3042
* API: Move process.binding('evals') to require('vm')
3043

    
3044
* Fix V8 build on Cygwin (Bert Belder)
3045

    
3046
* Add ref to buffer during fs.write and fs.read
3047

    
3048
* Fix segfault on test-crypto
3049

    
3050
* Upgrade http-parser to latest and V8 to 2.5.3
3051

    
3052

    
3053
2010.10.23, Version 0.3.0 (unstable) 1582cfebd6719b2d2373547994b3dca5c8c569c0
3054

    
3055
* Bugfix: Do not spin on accept() with EMFILE
3056

    
3057
* Improvements to readline.js (Trent Mick, Johan Euphrosine, Brian White)
3058

    
3059
* Safe constructors (missing 'new' doesn't segfault)
3060

    
3061
* Fix process.nextTick so thrown errors don't confuse it.
3062
  (Benjamin Thomas)
3063

    
3064
* Allow Strings for ports on net.Server.listen (Bradley Meck)
3065

    
3066
* fs bugfixes (Tj Holowaychuk, Tobie Langel, Marco Rogers, isaacs)
3067

    
3068
* http bug fixes (Fedor Indutny, Mikeal Rogers)
3069

    
3070
* Faster buffers; breaks C++ API (Tim-Smart, Stéphan Kochen)
3071

    
3072
* crypto, tls improvements (Paul Querna)
3073

    
3074
* Add lfs flags to node addon script
3075

    
3076
* Simpler querystring parsing; breaks API (Peter Griess)
3077

    
3078
* HTTP trailers (Mark Nottingham)
3079

    
3080
* http 100-continue support (Mark Nottingham)
3081

    
3082
* Module system simplifications (Herbert Vojčík, isaacs, Tim-Smart)
3083
  - remove require.async
3084
  - remove registerExtension, add .extensions
3085
  - expose require.resolve
3086
  - expose require.cache
3087
  - require looks in  node_modules folders
3088

    
3089
* Add --eval command line option (TJ Holowaychuk)
3090

    
3091
* Commas last in sys.inspect
3092

    
3093
* Constants moved from process object to require('constants')
3094

    
3095
* Fix parsing of linux memory (Vitali Lovich)
3096

    
3097
* inspect shows function names (Jorge Chamorro Bieling)
3098

    
3099
* uncaughtException corner cases (Felix Geisendörfer)
3100

    
3101
* TCP clients now buffer writes before connection
3102

    
3103
* Rename sys module to 'util' (Micheil Smith)
3104

    
3105
* Properly set stdio handlers to blocking on SIGTERM and SIGINT
3106
  (Tom Hughes)
3107

    
3108
* Add destroy methods to HTTP messages
3109

    
3110
* base64 improvements (isaacs, Jorge Chamorro Bieling)
3111

    
3112
* API for defining REPL commands (Sami Samhuri)
3113

    
3114
* child_process.exec timeout fix (Aaron Heckmann)
3115

    
3116
* Upgrade V8 to 2.5.1, Libev to 4.00, libeio, http-parser
3117

    
3118

    
3119
2010.08.20, Version 0.2.0, 9283e134e558900ba89d9a33c18a9bdedab07cb9
3120

    
3121
* process.title support for FreeBSD, Macintosh, Linux
3122

    
3123
* Fix OpenSSL 100% CPU usage on error (Illarionov Oleg)
3124

    
3125
* Implement net.Server.maxConnections.
3126

    
3127
* Fix process.platform, add process.version.
3128

    
3129
* Add --without-snapshot configure option.
3130

    
3131
* Readline REPL improvements (Trent Mick)
3132

    
3133
* Bug fixes.
3134

    
3135
* Upgrade V8 to 2.3.8
3136

    
3137

    
3138
2010.08.13, Version 0.1.104, b14dd49222687c12f3e8eac597cff4f2674f84e8
3139

    
3140
* Various bug fixes (console, querystring, require)
3141

    
3142
* Set cwd for child processes (Bert Belder)
3143

    
3144
* Tab completion for readline (Trent Mick)
3145

    
3146
* process.title getter/setter for OSX, Linux, Cygwin.
3147
	(Rasmus Andersson, Bert Belder)
3148

    
3149
* Upgrade V8 to 2.3.6
3150

    
3151

    
3152
2010.08.04, Version 0.1.103, 0b925d075d359d03426f0b32bb58a5e05825b4ea
3153

    
3154
* Implement keep-alive for http.Client (Mikeal Rogers)
3155

    
3156
* base64 fixes. (Ben Noordhuis)
3157

    
3158
* Fix --debug-brk (Danny Coates)
3159

    
3160
* Don't let path.normalize get above the root. (Isaac Schlueter)
3161

    
3162
* Allow signals to be used with process.on in addition to
3163
  process.addListener. (Brian White)
3164

    
3165
* Globalize the Buffer object
3166

    
3167
* Use kqueue on recent macintosh builds
3168

    
3169
* Fix addrlen for unix_dgram sockets (Benjamin Kramer)
3170

    
3171
* Fix stats.isDirectory() and friends (Benjamin Kramer)
3172

    
3173
* Upgrade http-parser, V8 to 2.3.5
3174

    
3175

    
3176
2010.07.25, Version 0.1.102, 2a4568c85f33869c75ff43ccd30f0ec188b43eab
3177

    
3178
* base64 encoding for Buffers.
3179

    
3180
* Buffer support for Cipher, Decipher, Hmac, Sign and Verify
3181
  (Andrew Naylor)
3182

    
3183
* Support for reading byte ranges from files using fs.createReadStream.
3184
  (Chandra Sekar)
3185

    
3186
* Fix Buffer.toString() on 0-length slices. (Peter Griess)
3187

    
3188
* Cache modules based on filename rather than ID (Isaac Schlueter)
3189

    
3190
* querystring improvments (Jan Kassens, Micheil Smith)
3191

    
3192
* Support DEL in the REPL. (Jérémy Lal)
3193

    
3194
* Upgrade http-parser, upgrade V8 to 2.3.2
3195

    
3196

    
3197
2010.07.16, Version 0.1.101, 0174ceb6b24caa0bdfc523934c56af9600fa9b58
3198

    
3199
* Added env to child_process.exec (Сергей Крыжановский)
3200

    
3201
* Allow modules to optionally be loaded in separate contexts
3202
  with env var NODE_MODULE_CONTEXTS=1.
3203

    
3204
* setTTL and setBroadcast for dgram (Matt Ranney)
3205

    
3206
* Use execPath for default NODE_PATH, not installPrefix
3207
  (Isaac Schlueter)
3208

    
3209
* Support of console.dir + console.assert (Jerome Etienne)
3210

    
3211
* on() as alias to addListener()
3212

    
3213
* Use javascript port of Ronn to build docs (Jérémy Lal)
3214

    
3215
* Upgrade V8 to 2.3.0
3216

    
3217

    
3218
2010.07.03, Version 0.1.100, a6b8586e947f9c3ced180fe68c233d0c252add8b
3219

    
3220
* process.execPath (Marshall Culpepper)
3221

    
3222
* sys.pump (Mikeal Rogers)
3223

    
3224
* Remove ini and mjsunit libraries.
3225

    
3226
* Introduce console.log() and friends.
3227

    
3228
* Switch order of arguments for Buffer.write (Blake Mizerany)
3229

    
3230
* On overlapping buffers use memmove (Matt Ranney)
3231

    
3232
* Resolve .local domains with getaddrinfo()
3233

    
3234
* Upgrade http-parser, V8 to 2.2.21
3235

    
3236

    
3237
2010.06.21, Version 0.1.99, a620b7298f68f68a855306437a3b60b650d61d78
3238

    
3239
* Datagram sockets (Paul Querna)
3240

    
3241
* fs.writeFile could not handle utf8 (Felix Geisendörfer)
3242
  and now accepts Buffers (Aaron Heckmann)
3243

    
3244
* Fix crypto memory leaks.
3245

    
3246
* A replacement for decodeURIComponent that doesn't throw.
3247
  (Isaac Schlueter)
3248

    
3249
* Only concatenate some incoming HTTP headers. (Peter Griess)
3250

    
3251
* Upgrade V8 to 2.2.18
3252

    
3253

    
3254
2010.06.11, Version 0.1.98, 10d8adb08933d1d4cea60192c2a31c56d896733d
3255

    
3256
* Port to Windows/Cygwin (Raffaele Sena)
3257

    
3258
* File descriptor passing on unix sockets. (Peter Griess)
3259

    
3260
* Simple, builtin readline library. REPL is now entered by
3261
  executing "node" without arguments.
3262

    
3263
* Add a parameter to spawn() that sets the child's stdio file
3264
  descriptors. (Orlando Vazquez)
3265

    
3266
* Upgrade V8 to 2.2.16, http-parser fixes, upgrade c-ares to 1.7.3.
3267

    
3268

    
3269
2010.05.29, Version 0.1.97, 0c1aa36835fa6a3557843dcbc6ed6714d353a783
3270

    
3271
* HTTP throttling: outgoing messages emit 'drain' and write() returns false
3272
  when send buffer is full.
3273

    
3274
* API: readFileSync without encoding argument now returns a Buffer
3275

    
3276
* Improve Buffer C++ API; addons now compile with debugging symbols.
3277

    
3278
* Improvements to  path.extname() and REPL; add fs.chown().
3279

    
3280
* fs.ReadStream now emits buffers, fs.readFileSync returns buffers.
3281

    
3282
* Bugfix: parsing HTTP responses to HEAD requests.
3283

    
3284
* Port to OpenBSD.
3285

    
3286
* Upgrade V8 to 2.2.12, libeio, http-parser.
3287

    
3288

    
3289
2010.05.21, Version 0.1.96, 9514a4d5476225e8c8310ce5acae2857033bcaaa
3290

    
3291
* Thrown errors in http and socket call back get bubbled up.
3292

    
3293
* Add fs.fsync (Andrew Johnston)
3294

    
3295
* Bugfix: signal unregistering (Jonas Pfenniger)
3296

    
3297
* Added better error messages for async and sync fs calls with paths
3298
  (TJ Holowaychuk)
3299

    
3300
* Support arrays and strings in buffer constructor.
3301
  (Felix Geisendörfer)
3302

    
3303
* Fix errno reporting in DNS exceptions.
3304

    
3305
* Support buffers in fs.WriteStream.write.
3306

    
3307
* Bugfix: Safely decode a utf8 streams that are broken on a multbyte
3308
  character (http and net). (Felix Geisendörfer)
3309

    
3310
* Make Buffer's C++ constructor public.
3311

    
3312
* Deprecate sys.p()
3313

    
3314
* FIX path.dirname('/tmp') => '/'. (Jonathan Rentzsch)
3315

    
3316

    
3317
2010.05.13, Version 0.1.95, 0914d33842976c2c870df06573b68f9192a1fb7a
3318

    
3319
* Change GC idle notify so that it runs alongside setInterval
3320

    
3321
* Install node_buffer.h on make install
3322

    
3323
* fs.readFile returns Buffer by default (Tim Caswell)
3324

    
3325
* Fix error reporting in child_process callbacks
3326

    
3327
* Better logic for testing if an argument is a port
3328

    
3329
* Improve error reporting (single line "node.js:176:9" errors)
3330

    
3331
* Bugfix: Some http responses being truncated (appeared in 0.1.94)
3332

    
3333
* Fix long standing net idle timeout bugs. Enable 2 minute timeout
3334
  by default in HTTP servers.
3335

    
3336
* Add fs.fstat (Ben Noordhuis)
3337

    
3338
* Upgrade to V8 2.2.9
3339

    
3340

    
3341
2010.05.06, Version 0.1.94, f711d5343b29d1e72e87107315708e40951a7826
3342

    
3343
* Look in /usr/local/lib/node for modules, so that there's a way
3344
  to install modules globally (Issac Schlueter)
3345

    
3346
* SSL improvements (Rhys Jones, Paulo Matias)
3347

    
3348
* Added c-ares headers for linux-arm (Jonathan Knezek)
3349

    
3350
* Add symbols to release build
3351

    
3352
* HTTP upgrade improvements, docs (Micheil Smith)
3353

    
3354
* HTTP server emits 'clientError' instead of printing message
3355

    
3356
* Bugfix: Don't emit 'error' twice from http.Client
3357

    
3358
* Bugfix: Ignore SIGPIPE
3359

    
3360
* Bugfix: destroy() instead of end() http connection at end of
3361
  pipeline
3362

    
3363
* Bugfix: http.Client may be prematurely released back to the
3364
  free pool.  (Thomas Lee)
3365

    
3366
* Upgrade V8 to 2.2.8
3367

    
3368

    
3369
2010.04.29, Version 0.1.93, 557ba6bd97bad3afe0f9bd3ac07efac0a39978c1
3370

    
3371
  * Fixed no 'end' event on long chunked HTTP messages
3372
    https://github.com/joyent/node/issues/77
3373

    
3374
  * Remove legacy modules http_old and tcp_old
3375

    
3376
  * Support DNS MX queries (Jérémy Lal)
3377

    
3378
  * Fix large socket write (tlb@tlb.org)
3379

    
3380
  * Fix child process exit codes (Felix Geisendörfer)
3381

    
3382
  * Allow callers to disable PHP/Rails style parameter munging in
3383
    querystring.stringify (Thomas Lee)
3384

    
3385
  * Upgrade V8 to 2.2.6
3386

    
3387

    
3388
2010.04.23, Version 0.1.92, caa828a242f39b6158084ef4376355161c14fe34
3389

    
3390
  * OpenSSL support. Still undocumented (see tests). (Rhys Jones)
3391

    
3392
  * API: Unhandled 'error' events throw.
3393

    
3394
  * Script class with eval-function-family in binding('evals') plus tests.
3395
    (Herbert Vojcik)
3396

    
3397
  * stream.setKeepAlive (Julian Lamb)
3398

    
3399
  * Bugfix: Force no body on http 204 and 304
3400

    
3401
  * Upgrade Waf to 1.5.16, V8 to 2.2.4.2
3402

    
3403

    
3404
2010.04.15, Version 0.1.91, 311d7dee19034ff1c6bc9098c36973b8d687eaba
3405

    
3406
  * Add incoming.httpVersion
3407

    
3408
  * Object.prototype problem with C-Ares binding
3409

    
3410
  * REPL can be run from multiple different streams. (Matt Ranney)
3411

    
3412
  * After V8 heap is compact, don't use a timer every 2 seconds.
3413

    
3414
  * Improve nextTick implementation.
3415

    
3416
  * Add primative support for Upgrading HTTP connections.
3417
    (See commit log for docs 760bba5)
3418

    
3419
  * Add timeout and maxBuffer options to child_process.exec
3420

    
3421
  * Fix bugs.
3422

    
3423
  * Upgrade V8 to 2.2.3.1
3424

    
3425

    
3426
2010.04.09, Version 0.1.90, 07e64d45ffa1856e824c4fa6afd0442ba61d6fd8
3427

    
3428
  * Merge writing of networking system (net2)
3429
   - New Buffer object for binary data.
3430
   - Support UNIX sockets, Pipes
3431
   - Uniform stream API
3432
   - Currently no SSL
3433
   - Legacy modules can be accessed at 'http_old' and 'tcp_old'
3434

    
3435
  * Replace udns with c-ares. (Krishna Rajendran)
3436

    
3437
  * New documentation system using Markdown and Ronn
3438
    (Tim Caswell, Micheil Smith)
3439

    
3440
  * Better idle-time GC
3441

    
3442
  * Countless small bug fixes.
3443

    
3444
  * Upgrade V8 to 2.2.X, WAF 1.5.15
3445

    
3446

    
3447
2010.03.19, Version 0.1.33, 618296ef571e873976f608d91a3d6b9e65fe8284
3448

    
3449
  * Include lib/ directory in node executable. Compile on demand.
3450

    
3451
  * evalcx clean ups (Isaac Z. Schlueter, Tim-Smart)
3452

    
3453
  * Various fixes, clean ups
3454

    
3455
  * V8 upgraded to 2.1.5
3456

    
3457

    
3458
2010.03.12, Version 0.1.32, 61c801413544a50000faa7f58376e9b33ba6254f
3459

    
3460
  * Optimize event emitter for single listener
3461

    
3462
  * Add process.evalcx, require.registerExtension (Tim Smart)
3463

    
3464
  * Replace --cflags with --vars
3465

    
3466
  * Fix bugs in fs.create*Stream (Felix Geisendörfer)
3467

    
3468
  * Deprecate process.mixin, process.unloop
3469

    
3470
  * Remove the 'Error: (no message)' exceptions, print stack
3471
    trace instead
3472

    
3473
  * INI parser bug fixes (Isaac Schlueter)
3474

    
3475
  * FreeBSD fixes (Vanilla Hsu)
3476

    
3477
  * Upgrade to V8 2.1.3, WAF 1.5.14a, libev
3478

    
3479

    
3480
2010.03.05, Version 0.1.31, 39b63dfe1737d46a8c8818c92773ef181fd174b3
3481

    
3482
  * API: - Move process.watchFile into fs module
3483
         - Move process.inherits to sys
3484

    
3485
  * Improve Solaris port
3486

    
3487
  * tcp.Connection.prototype.write now returns boolean to indicate if
3488
    argument was flushed to the kernel buffer.
3489

    
3490
  * Added fs.link, fs.symlink, fs.readlink, fs.realpath
3491
    (Rasmus Andersson)
3492

    
3493
  * Add setgid,getgid (James Duncan)
3494

    
3495
  * Improve sys.inspect (Benjamin Thomas)
3496

    
3497
  * Allow passing env to child process (Isaac Schlueter)
3498

    
3499
  * fs.createWriteStream, fs.createReadStream (Felix Geisendörfer)
3500

    
3501
  * Add INI parser (Rob Ellis)
3502

    
3503
  * Bugfix: fs.readFile handling encoding (Jacek Becela)
3504

    
3505
  * Upgrade V8 to 2.1.2
3506

    
3507

    
3508
2010.02.22, Version 0.1.30, bb0d1e65e1671aaeb21fac186b066701da0bc33b
3509

    
3510
  * Major API Changes
3511

    
3512
    - Promises removed. See
3513
      http://groups.google.com/group/nodejs/msg/426f3071f3eec16b
3514
      http://groups.google.com/group/nodejs/msg/df199d233ff17efa
3515
      The API for fs was
3516

    
3517
         fs.readdir("/usr").addCallback(function (files) {
3518
           puts("/usr files: " + files);
3519
         });
3520

    
3521
      It is now
3522

    
3523
         fs.readdir("/usr", function (err, files) {
3524
           if (err) throw err;
3525
           puts("/usr files: " + files);
3526
         });
3527

    
3528
    - Synchronous fs operations exposed, use with care.
3529

    
3530
    - tcp.Connection.prototype.readPause() and readResume()
3531
      renamed to pause() and resume()
3532

    
3533
    - http.ServerResponse.prototype.sendHeader() renamed to
3534
      writeHeader(). Now accepts reasonPhrase.
3535

    
3536
  * Compact garbage on idle.
3537

    
3538
  * Configurable debug ports, and --debug-brk (Zoran Tomicic)
3539

    
3540
  * Better command line option parsing (Jeremy Ashkenas)
3541

    
3542
  * Add fs.chmod (Micheil Smith), fs.lstat (Isaac Z. Schlueter)
3543

    
3544
  * Fixes to process.mixin (Rasmus Andersson, Benjamin Thomas)
3545

    
3546
  * Upgrade V8 to 2.1.1
3547

    
3548

    
3549
2010.02.17, Version 0.1.29, 87d5e5b316a4276bcf881f176971c1a237dcdc7a
3550

    
3551
  * Major API Changes
3552
    - Remove 'file' module
3553
    - require('posix') -----------------> require('fs')
3554
    - fs.cat ---------------------------> fs.readFile
3555
    - file.write -----------------------> fs.writeFile
3556
    - TCP 'receive' event --------------> 'data'
3557
    - TCP 'eof' event ------------------> 'end'
3558
    - TCP send() -----------------------> write()
3559
    - HTTP sendBody() ------------------> write()
3560
    - HTTP finish() --------------------> close()
3561
    - HTTP 'body' event ----------------> 'data'
3562
    - HTTP 'complete' event ------------> 'end'
3563
    - http.Client.prototype.close() (formerly finish()) no longer
3564
      takes an argument. Add the 'response' listener manually.
3565
    - Allow strings for the flag argument to fs.open
3566
      ("r", "r+", "w", "w+", "a", "a+")
3567

    
3568
  * Added multiple arg support for sys.puts(), print(), etc.
3569
    (tj@vision-media.ca)
3570

    
3571
  * sys.inspect(Date) now shows the date value (Mark Hansen)
3572

    
3573
  * Calculate page size with getpagesize for armel (Jérémy Lal)
3574

    
3575
  * Bugfix: stderr flushing.
3576

    
3577
  * Bugfix: Promise late chain (Yuichiro MASUI)
3578

    
3579
  * Bugfix: wait() on fired promises
3580
    (Felix Geisendörfer, Jonas Pfenniger)
3581

    
3582
  * Bugfix: Use InstanceTemplate() instead of PrototypeTemplate() for
3583
    accessor methods. Was causing a crash with Eclipse debugger.
3584
    (Zoran Tomicic)
3585

    
3586
  * Bugfix: Throw from connection.connect if resolving.
3587
    (Reported by James Golick)
3588

    
3589

    
3590
2010.02.09, Version 0.1.28, 49de41ef463292988ddacfb01a20543b963d9669
3591

    
3592
  * Use Google's jsmin.py which can be used for evil.
3593

    
3594
  * Add posix.truncate()
3595

    
3596
  * Throw errors from server.listen()
3597

    
3598
  * stdio bugfix (test by Mikeal Rogers)
3599

    
3600
  * Module system refactor (Felix Geisendörfer, Blaine Cook)
3601

    
3602
  * Add process.setuid(), getuid() (Michael Carter)
3603

    
3604
  * sys.inspect refactor (Tim Caswell)
3605

    
3606
  * Multipart library rewrite (isaacs)
3607

    
3608

    
3609
2010.02.03, Version 0.1.27, 0cfa789cc530848725a8cb5595224e78ae7b9dd0
3610

    
3611
  * Implemented __dirname (Felix Geisendörfer)
3612

    
3613
  * Downcase process.ARGV, process.ENV, GLOBAL
3614
    (now process.argv, process.env, global)
3615

    
3616
  * Bug Fix: Late promise promise callbacks firing
3617
    (Felix Geisendörfer, Jonas Pfenniger)
3618

    
3619
  * Make assert.AssertionError instance of Error
3620

    
3621
  * Removed inline require call for querystring
3622
    (self@cloudhead.net)
3623

    
3624
  * Add support for MX, TXT, and SRV records in DNS module.
3625
    (Blaine Cook)
3626

    
3627
  * Bugfix: HTTP client automatically reconnecting
3628

    
3629
  * Adding OS X .dmg build scripts. (Standa Opichal)
3630

    
3631
  * Bugfix: ObjectWrap memory leak
3632

    
3633
  * Bugfix: Multipart handle Content-Type headers with charset
3634
    (Felix Geisendörfer)
3635

    
3636
  * Upgrade http-parser to fix header overflow attack.
3637

    
3638
  * Upgrade V8 to 2.1.0
3639

    
3640
  * Various other bug fixes, performance improvements.
3641

    
3642

    
3643
2010.01.20, Version 0.1.26, da00413196e432247346d9e587f8c78ce5ceb087
3644

    
3645
  * Bugfix, HTTP eof causing crash (Ben Williamson)
3646

    
3647
  * Better error message on SyntaxError
3648

    
3649
  * API: Move Promise and EventEmitter into 'events' module
3650

    
3651
  * API: Add process.nextTick()
3652

    
3653
  * Allow optional params to setTimeout, setInterval
3654
    (Micheil Smith)
3655

    
3656
  * API: change some Promise behavior (Felix Geisendörfer)
3657
    - Removed Promise.cancel()
3658
    - Support late callback binding
3659
    - Make unhandled Promise errors throw an exception
3660

    
3661
  * Upgrade V8 to 2.0.6.1
3662

    
3663
  * Solaris port (Erich Ocean)
3664

    
3665

    
3666
2010.01.09, Version 0.1.25, 39ca93549af91575ca9d4cbafd1e170fbcef3dfa
3667

    
3668
  * sys.inspect() improvements (Tim Caswell)
3669

    
3670
  * path module improvements (isaacs, Benjamin Thomas)
3671

    
3672
  * API: request.uri -> request.url
3673
    It is no longer an object, but a string. The 'url' module
3674
    was addded to parse that string. That is, node no longer
3675
    parses the request URL automatically.
3676

    
3677
       require('url').parse(request.url)
3678

    
3679
    is roughly equivlent to the old request.uri object.
3680
    (isaacs)
3681

    
3682
  * Bugfix: Several libeio related race conditions.
3683

    
3684
  * Better errors for multipart library (Felix Geisendörfer)
3685

    
3686
  * Bugfix: Update node-waf version to 1.5.10
3687

    
3688
  * getmem for freebsd (Vanilla Hsu)
3689

    
3690

    
3691
2009.12.31, Version 0.1.24, 642c2773a7eb2034f597af1cd404b9e086b59632
3692

    
3693
  * Bugfix: don't chunk responses to HTTP/1.0 clients, even if
3694
    they send Connection: Keep-Alive (e.g. wget)
3695

    
3696
  * Bugfix: libeio race condition
3697

    
3698
  * Bugfix: Don't segfault on unknown http method
3699

    
3700
  * Simplify exception reporting
3701

    
3702
  * Upgrade V8 to 2.0.5.4
3703

    
3704

    
3705
2009.12.22, Version 0.1.23, f91e347eeeeac1a8bd6a7b462df0321b60f3affc
3706

    
3707
  * Bugfix: require("../blah") issues (isaacs)
3708

    
3709
  * Bugfix: posix.cat (Jonas Pfenniger)
3710

    
3711
  * Do not pause request for multipart parsing (Felix Geisendörfer)
3712

    
3713

    
3714
2009.12.19, Version 0.1.22, a2d809fe902f6c4102dba8f2e3e9551aad137c0f
3715

    
3716
  * Bugfix: child modules get wrong id with "index.js" (isaacs)
3717

    
3718
  * Bugfix: require("../foo") cycles (isaacs)
3719

    
3720
  * Bugfix: require() should throw error if module does.
3721

    
3722
  * New URI parser stolen from Narwhal (isaacs)
3723

    
3724
  * Bugfix: correctly check kqueue and epoll. (Rasmus Andersson)
3725

    
3726
  * Upgrade WAF to 1.5.10
3727

    
3728
  * Bugfix: posix.statSync() was crashing
3729

    
3730
  * Statically define string symbols for performance improvement
3731

    
3732
  * Bugfix: ARGV[0] weirdness
3733

    
3734
  * Added superCtor to ctor.super_ instead superCtor.prototype.
3735
    (Johan Dahlberg)
3736

    
3737
  * http-parser supports webdav methods
3738

    
3739
  * API: http.Client.prototype.request() (Christopher Lenz)
3740

    
3741

    
3742
2009.12.06, Version 0.1.21, c6affb64f96a403a14d20035e7fbd6d0ce089db5
3743

    
3744
  * Feature: Add HTTP client TLS support (Rhys Jones)
3745

    
3746
  * Bugfix: use --jobs=1 with WAF
3747

    
3748
  * Bugfix: Don't use chunked encoding for 1.0 requests
3749

    
3750
  * Bugfix: Duplicated header weren't handled correctly
3751

    
3752
  * Improve sys.inspect (Xavier Shay)
3753

    
3754
  * Upgrade v8 to 2.0.3
3755

    
3756
  * Use CommonJS assert API (Felix Geisendörfer, Karl Guertin)
3757

    
3758

    
3759
2009.11.28, Version 0.1.20, aa42c6790da8ed2cd2b72051c07f6251fe1724d8
3760

    
3761
  * Add gnutls version to configure script
3762

    
3763
  * Add V8 heap info to process.memoryUsage()
3764

    
3765
  * process.watchFile callback has 2 arguments with the stat object
3766
    (choonkeat@gmail.com)
3767

    
3768

    
3769
2009.11.28, Version 0.1.19, 633d6be328708055897b72327b88ac88e158935f
3770

    
3771
  * Feature: Initial TLS support for TCP servers and clients.
3772
    (Rhys Jones)
3773

    
3774
  * Add options to process.watchFile()
3775

    
3776
  * Add process.umask() (Friedemann Altrock)
3777

    
3778
  * Bugfix: only detach timers when active.
3779

    
3780
  * Bugfix: lib/file.js write(), shouldn't always emit errors or success
3781
    (onne@onnlucky.com)
3782

    
3783
  * Bugfix: Memory leak in fs.write
3784
    (Reported by onne@onnlucky.com)
3785

    
3786
  * Bugfix: Fix regular expressions detecting outgoing message headers.
3787
    (Reported by Elliott Cable)
3788

    
3789
  * Improvements to Multipart parser (Felix Geisendörfer)
3790

    
3791
  * New HTTP parser
3792

    
3793
  * Upgrade v8 to 2.0.2
3794

    
3795

    
3796
2009.11.17, Version 0.1.18, 027829d2853a14490e6de9fc5f7094652d045ab8
3797

    
3798
  * Feature: process.watchFile() process.unwatchFile()
3799

    
3800
  * Feature: "uncaughtException" event on process
3801
    (Felix Geisendörfer)
3802

    
3803
  * Feature: 'drain' event to tcp.Connection
3804

    
3805
  * Bugfix: Promise.timeout() blocked the event loop
3806
    (Felix Geisendörfer)
3807

    
3808
  * Bugfix: sendBody() and chunked utf8 strings
3809
    (Felix Geisendörfer)
3810

    
3811
  * Supply the strerror as a second arg to the tcp.Connection close
3812
    event (Johan Sørensen)
3813

    
3814
  * Add EventEmitter.removeListener (frodenius@gmail.com)
3815

    
3816
  * Format JSON for inspecting objects (Felix Geisendörfer)
3817

    
3818
  * Upgrade libev to latest CVS
3819

    
3820

    
3821
2009.11.07, Version 0.1.17, d1f69ef35dac810530df8249d523add168e09f03
3822

    
3823
  * Feature: process.chdir() (Brandon Beacher)
3824

    
3825
  * Revert http parser upgrade. (b893859c34f05db5c45f416949ebc0eee665cca6)
3826
    Broke keep-alive.
3827

    
3828
  * API: rename process.inherits to sys.inherits
3829

    
3830

    
3831
2009.11.03, Version 0.1.16, 726865af7bbafe58435986f4a193ff11c84e4bfe
3832

    
3833
  * API: Use CommonJS-style module requiring
3834
    - require("/sys.js") becomes require("sys")
3835
    - require("circle.js") becomes require("./circle")
3836
    - process.path.join() becomes require("path").join()
3837
    - __module becomes module
3838

    
3839
  * API: Many namespacing changes
3840
    - Move node.* into process.*
3841
    - Move node.dns into module "dns"
3842
    - Move node.fs into module "posix"
3843
    - process is no longer the global object. GLOBAL is.
3844

    
3845
  For more information on the API changes see:
3846
    http://thread.gmane.org/gmane.comp.lang.javascript.nodejs/6
3847
    http://thread.gmane.org/gmane.comp.lang.javascript.nodejs/14
3848

    
3849
  * Feature: process.platform, process.memoryUsage()
3850

    
3851
  * Feature: promise.cancel() (Felix Geisendörfer)
3852

    
3853
  * Upgrade V8 to 1.3.18
3854

    
3855

    
3856
2009.10.28, Version 0.1.15, eca2de73ed786b935507fd1c6faccd8df9938fd3
3857

    
3858
  * Many build system fixes (esp. for OSX users)
3859

    
3860
  * Feature: promise.timeout() (Felix Geisendörfer)
3861

    
3862
  * Feature: Added external interface for signal handlers, process.pid, and
3863
    process.kill() (Brandon Beacher)
3864

    
3865
  * API: Rename node.libraryPaths to require.paths
3866

    
3867
  * Bugfix: 'data' event for stdio should emit a string
3868

    
3869
  * Large file support
3870

    
3871
  * Upgrade http_parser
3872

    
3873
  * Upgrade v8 to 1.3.16
3874

    
3875

    
3876
2009.10.09, Version 0.1.14, b12c809bb84d1265b6a4d970a5b54ee8a4890513
3877

    
3878
  * Feature: Improved addon builds with node-waf
3879

    
3880
  * Feature: node.SignalHandler (Brandon Beacher)
3881

    
3882
  * Feature: Enable V8 debugging (but still need to make a debugger)
3883

    
3884
  * API: Rename library /utils.js to /sys.js
3885

    
3886
  * Clean up Node's build system
3887

    
3888
  * Don't use parseUri for HTTP server
3889

    
3890
  * Remove node.pc
3891

    
3892
  * Don't use /bin/sh to create child process except with exec()
3893

    
3894
  * API: Add __module to reference current module
3895

    
3896
  * API: Remove include() add node.mixin()
3897

    
3898
  * Normalize http headers; "Content-Length" becomes "content-length"
3899

    
3900
  * Upgrade V8 to 1.3.15
3901

    
3902

    
3903
2009.09.30, Version 0.1.13, 58493bb05b3da3dc8051fabc0bdea9e575c1a107
3904

    
3905
  * Feature: Multipart stream parser (Felix Geisendörfer)
3906

    
3907
  * API: Move node.puts(), node.exec() and others to /utils.js
3908

    
3909
  * API: Move http, tcp libraries to /http.js and /tcp.js
3910

    
3911
  * API: Rename node.exit() to process.exit()
3912

    
3913
  * Bugfix: require() and include() should work in callbacks.
3914

    
3915
  * Pass the Host header in http.cat calls
3916

    
3917
  * Add warning when coroutine stack size grows too large.
3918

    
3919
  * Enhance repl library (Ray Morgan)
3920

    
3921
  * Bugfix: build script for
3922
      GCC 4.4 (removed -Werror in V8),
3923
      on Linux 2.4,
3924
      and with Python 2.4.4.
3925

    
3926
  * Add read() and write() to /file.js to read and write
3927
    whole files at once.
3928

    
3929

    
3930
2009.09.24, Version 0.1.12, 2f56ccb45e87510de712f56705598b3b4e3548ec
3931

    
3932
  * Feature: System modules, node.libraryPaths
3933

    
3934
  * API: Remove "raw" encoding, rename "raws" to "binary".
3935

    
3936
  * API: Added connection.setNoDElay() to disable Nagle algo.
3937

    
3938
  * Decrease default TCP server backlog to 128
3939

    
3940
  * Bugfix: memory leak involving node.fs.* methods.
3941

    
3942
  * Upgrade v8 to 1.3.13
3943

    
3944

    
3945
2009.09.18, Version 0.1.11, 5ddc4f5d0c002bac0ae3d62fc0dc58f0d2d83ec4
3946

    
3947
  * API: default to utf8 encoding for node.fs.cat()
3948

    
3949
  * API: add node.exec()
3950

    
3951
  * API: node.fs.read() takes a normal encoding parameter.
3952

    
3953
  * API: Change arguments of emit(), emitSuccess(), emitError()
3954

    
3955
  * Bugfix: node.fs.write() was stack allocating buffer.
3956

    
3957
  * Bugfix: ReportException shouldn't forget the top frame.
3958

    
3959
  * Improve buffering for HTTP outgoing messages
3960

    
3961
  * Fix and reenable x64 macintosh build.
3962

    
3963
  * Upgrade v8 to 1.3.11
3964

    
3965

    
3966
2009.09.11, Version 0.1.10, 12bb0d46ce761e3d00a27170e63b40408c15b558
3967

    
3968
  * Feature: raw string encoding "raws"
3969

    
3970
  * Feature: access to environ through "ENV"
3971

    
3972
  * Feature: add isDirectory, isFile, isSocket, ... methods
3973
    to stats object.
3974

    
3975
  * Bugfix: Internally use full paths when loading modules
3976
    this fixes a shebang loading problem.
3977

    
3978
  * Bugfix: Add '--' command line argument for seperating v8
3979
    args from program args.
3980

    
3981
  * Add man page.
3982

    
3983
  * Add node-repl
3984

    
3985
  * Upgrade v8 to 1.3.10
3986

    
3987
2009.09.05, Version 0.1.9, d029764bb32058389ecb31ed54a5d24d2915ad4c
3988

    
3989
  * Bugfix: Compile on Snow Leopard.
3990

    
3991
  * Bugfix: Malformed URIs raising exceptions.
3992

    
3993
2009.09.04, Version 0.1.8, e6d712a937b61567e81b15085edba863be16ba96
3994

    
3995
  * Feature: External modules
3996

    
3997
  * Feature: setTimeout() for node.tcp.Connection
3998

    
3999
  * Feature: add node.cwd(), node.fs.readdir(), node.fs.mkdir()
4000

    
4001
  * Bugfix: promise.wait() releasing out of order.
4002

    
4003
  * Bugfix: Asyncly do getaddrinfo() on Apple.
4004

    
4005
  * Disable useless evcom error messages.
4006

    
4007
  * Better stack traces.
4008

    
4009
  * Built natively on x64.
4010

    
4011
  * Upgrade v8 to 1.3.9
4012

    
4013
2009.08.27, Version 0.1.7, f7acef9acf8ba8433d697ad5ed99d2e857387e4b
4014

    
4015
  * Feature: global 'process' object. Emits "exit".
4016

    
4017
  * Feature: promise.wait()
4018

    
4019
  * Feature: node.stdio
4020

    
4021
  * Feature: EventEmitters emit "newListener" when listeners are
4022
    added
4023

    
4024
  * API:  Use flat object instead of array-of-arrays for HTTP
4025
    headers.
4026

    
4027
  * API: Remove buffered file object (node.File)
4028

    
4029
  * API: require(), include() are synchronous. (Uses
4030
    continuations.)
4031

    
4032
  * API: Deprecate onLoad and onExit.
4033

    
4034
  * API: Rename node.Process to node.ChildProcess
4035

    
4036
  * Refactor node.Process to take advantage of evcom_reader/writer.
4037

    
4038
  * Upgrade v8 to 1.3.7
4039

    
4040
2009.08.22, Version 0.1.6, 9c97b1db3099d61cd292aa59ec2227a619f3a7ab
4041

    
4042
  * Bugfix: Ignore SIGPIPE.
4043

    
4044
2009.08.21, Version 0.1.5, b0fd3e281cb5f7cd8d3a26bd2b89e1b59998e5ed
4045

    
4046
  * Bugfix: Buggy connections could crash node.js. Now check
4047
    connection before sending data every time (Kevin van Zonneveld)
4048

    
4049
  * Bugfix: stdin fd (0) being ignored by node.File. (Abe Fettig)
4050

    
4051
  * API: Remove connnection.fullClose()
4052

    
4053
  * API: Return the EventEmitter from addListener for chaining.
4054

    
4055
  * API: tcp.Connection "disconnect" event renamed to "close"
4056

    
4057
  * Upgrade evcom
4058
    Upgrade v8 to 1.3.6
4059

    
4060
2009.08.13, Version 0.1.4, 0f888ed6de153f68c17005211d7e0f960a5e34f3
4061

    
4062
  * Major refactor to evcom.
4063

    
4064
  * Enable test-tcp-many-clients.
4065

    
4066
  * Add -m32 gcc flag to udns.
4067

    
4068
  * Add connection.readPause() and connection.readResume()
4069
    Add IncomingMessage.prototype.pause() and resume().
4070

    
4071
  * Fix http benchmark. Wasn't correctly dispatching.
4072

    
4073
  * Bugfix: response.setBodyEncoding("ascii") not working.
4074

    
4075
  * Bugfix: Negative ints in HTTP's on_body and node.fs.read()
4076

    
4077
  * Upgrade v8 to 1.3.4
4078
    Upgrade libev to 3.8
4079
    Upgrade http_parser to v0.2
4080

    
4081
2009.08.06, Version 0.1.3, 695f0296e35b30cf8322fd1bd934810403cca9f3
4082

    
4083
  * Upgrade v8 to 1.3.2
4084

    
4085
  * Bugfix: node.http.ServerRequest.setBodyEncoding('ascii') not
4086
    working
4087

    
4088
  * Bugfix: node.encodeUtf8 was broken. (Connor Dunn)
4089

    
4090
  * Add ranlib to udns Makefile.
4091

    
4092
  * Upgrade evcom - fix accepting too many connections issue.
4093

    
4094
  * Initial support for shebang
4095

    
4096
  * Add simple command line switches
4097

    
4098
  * Add node.version API
4099

    
4100

    
4101
2009.08.01, Version 0.1.2, 025a34244d1cea94d6d40ad7bf92671cb909a96c
4102

    
4103
  * Add DNS API
4104

    
4105
  * node.tcp.Server's backlog option is now an argument to listen()
4106

    
4107
  * Upgrade V8 to 1.3.1
4108

    
4109
  * Bugfix: Default to chunked for client requests without
4110
    Content-Length.
4111

    
4112
  * Bugfix: Line numbers in stack traces.
4113

    
4114
  * Bugfix: negative integers in raw encoding stream
4115

    
4116
  * Bugfix: node.fs.File was not passing args to promise callbacks.
4117

    
4118

    
4119
2009.07.27, Version 0.1.1, 77d407df2826b20e9177c26c0d2bb4481e497937
4120

    
4121
  * Simplify and clean up ObjectWrap.
4122

    
4123
  * Upgrade liboi (which is now called evcom)
4124
    Upgrade libev to 3.7
4125
    Upgrade V8 to 1.2.14
4126

    
4127
  * Array.prototype.encodeUtf8 renamed to node.encodeUtf8(array)
4128

    
4129
  * Move EventEmitter.prototype.emit() completely into C++.
4130

    
4131
  * Bugfix: Fix memory leak in event emitters.
4132
    http://groups.google.com/group/nodejs/browse_thread/thread/a8d1dfc2fd57a6d1
4133

    
4134
  * Bugfix: Had problems reading scripts with non-ascii characters.
4135

    
4136
  * Bugfix: Fix Detach() in node::Server
4137

    
4138
  * Bugfix: Sockets not properly reattached if reconnected during
4139
    disconnect event.
4140

    
4141
  * Bugfix: Server-side clients not attached between creation and
4142
    on_connect.
4143

    
4144
  * Add 'close' event to node.tcp.Server
4145

    
4146
  * Simplify and clean up http.js. (Takes more advantage of event
4147
    infrastructure.)
4148

    
4149
  * Add benchmark scripts. Run with "make benchmark".
4150

    
4151

    
4152
2009.06.30, Version 0.1.0, 0fe44d52fe75f151bceb59534394658aae6ac328
4153

    
4154
  * Update documentation, use asciidoc.
4155

    
4156
  * EventEmitter and Promise interfaces. (Breaks previous API.)
4157

    
4158
  * Remove node.Process constructor in favor of node.createProcess
4159

    
4160
  * Add -m32 flags for compiling on x64 platforms.
4161
    (Thanks to András Bártházi)
4162

    
4163
  * Upgrade v8 to 1.2.10 and libev to 3.6
4164

    
4165
  * Bugfix: Timer::RepeatSetter wasn't working.
4166

    
4167
  * Bugfix: Spawning many processes in a loop
4168
    (reported by Felix Geisendörfer)
4169

    
4170

    
4171
2009.06.24, Version 0.0.6, fbe0be19ebfb422d8fa20ea5204c1713e9214d5f
4172

    
4173
  * Load modules via HTTP URLs (Urban Hafner)
4174

    
4175
  * Bugfix: Add HTTPConnection->size() and HTTPServer->size()
4176

    
4177
  * New node.Process API
4178

    
4179
  * Clean up build tools, use v8's test runner.
4180

    
4181
  * Use ev_unref() instead of starting/stopping the eio thread
4182
    pool watcher.
4183

    
4184

    
4185
2009.06.18, Version 0.0.5, 3a2b41de74b6c343b8464a68eff04c4bfd9aebea
4186

    
4187
  * Support for IPv6
4188

    
4189
  * Remove namespace node.constants
4190

    
4191
  * Upgrade v8 to 1.2.8.1
4192

    
4193
  * Accept ports as strings in the TCP client and server.
4194

    
4195
  * Bugfix: HTTP Client race
4196

    
4197
  * Bugfix: freeaddrinfo() wasn't getting called after
4198
    getaddrinfo() for TCP servers
4199

    
4200
  * Add "opening" to TCP client readyState
4201

    
4202
  * Add remoteAddress to TCP client
4203

    
4204
  * Add global print() function.
4205

    
4206

    
4207
2009.06.13, Version 0.0.4, 916b9ca715b229b0703f0ed6c2fc065410fb189c
4208

    
4209
 * Add interrupt() method to server-side HTTP requests.
4210

    
4211
 * Bugfix: onBodyComplete was not getting called on server-side
4212
   HTTP
4213

    
4214

    
4215
2009.06.11, Version 0.0.3, 6e0dfe50006ae4f5dac987f055e0c9338662f40a
4216

    
4217
 * Many bug fixes including the problem with http.Client on
4218
   macintosh
4219

    
4220
 * Upgrades v8 to 1.2.7
4221

    
4222
 * Adds onExit hook
4223

    
4224
 * Guard against buffer overflow in http parser
4225

    
4226
 * require() and include() now need the ".js" extension
4227

    
4228
 * http.Client uses identity transfer encoding by default.