isaacs [Wed, 25 Jul 2012 17:28:03 +0000 (10:28 -0700)]
Now working on v0.8.5
isaacs [Wed, 25 Jul 2012 17:26:03 +0000 (10:26 -0700)]
Merge branch 'v0.8.4-release' into v0.8
isaacs [Tue, 24 Jul 2012 23:19:08 +0000 (16:19 -0700)]
Fix #3761 build: Default to V=1
isaacs [Tue, 24 Jul 2012 23:04:40 +0000 (16:04 -0700)]
2012.07.25, Version 0.8.4 (Stable)
* V8: Upgrade to 3.11.10.17
* npm: Upgrade to 1.1.45
* net: fix Socket({ fd: 42 }) api (Ben Noordhuis)
* readline: Remove event listeners on close (isaacs)
* windows: correctly prep long path for fs.exists(Sync) (Bert Belder)
* debugger: wake up the event loop when a debugger command is dispatched (Peter Rybin)
* tls: verify server's identity (Fedor Indutny)
* net: ignore socket.setTimeout(Infinity or NaN) (Fedor Indutny)
isaacs [Wed, 25 Jul 2012 00:06:50 +0000 (17:06 -0700)]
Build: add jslintfix
isaacs [Wed, 25 Jul 2012 00:05:22 +0000 (17:05 -0700)]
net.js: lint
Ben Noordhuis [Tue, 17 Jul 2012 13:16:23 +0000 (15:16 +0200)]
net: fix Socket({ fd: 42 }) api
Make the implementation match the documentation. This should work:
var s = new net.Socket({ fd: 42, allowHalfOpen: true };
And now it does.
isaacs [Tue, 24 Jul 2012 03:44:12 +0000 (20:44 -0700)]
readline: Remove event listeners on close
Fix #3756
isaacs [Tue, 24 Jul 2012 21:19:50 +0000 (14:19 -0700)]
v8: Reapply floating patches
isaacs [Tue, 24 Jul 2012 21:18:47 +0000 (14:18 -0700)]
V8: Upgrade to 3.11.10.17
isaacs [Tue, 24 Jul 2012 19:34:13 +0000 (12:34 -0700)]
npm: Upgrade to 1.1.45
This includes node-gyp 0.6.1
Bert Belder [Mon, 23 Jul 2012 09:26:03 +0000 (11:26 +0200)]
windows: correctly prep long path for fs.exists(Sync)
Closes GH-3739
Peter Rybin [Tue, 3 Jul 2012 19:21:37 +0000 (23:21 +0400)]
debugger: wake up the event loop when a debugger command is dispatched
When the event loop was blocked in epoll / kqueue or similar, debugger
commands wouldn't be processed. This patch fixes that by adding an
uv_async handle which is triggered when a debugger command is
dispatched. The async handle's callback makes sure that V8 is entered.
Closes GH-3626
Closes GH-3718
Brian White [Mon, 23 Jul 2012 02:08:13 +0000 (23:08 -0300)]
http: remove duplicate assignments
Closes GH-3754
koichik [Sat, 21 Jul 2012 17:33:06 +0000 (02:33 +0900)]
doc: remove duplicate section
Fixes #3750.
Fedor Indutny [Fri, 20 Jul 2012 18:07:16 +0000 (22:07 +0400)]
tls: pass linting
Fedor Indutny [Fri, 20 Jul 2012 17:43:12 +0000 (21:43 +0400)]
tls: fix 'hostless' tls connection verification
And fix last failing tests
Fedor Indutny [Fri, 20 Jul 2012 17:10:23 +0000 (21:10 +0400)]
tls: revert accidental API change
socket.authorizationError should always be string. Also make sni test
pass.
Fedor Indutny [Fri, 20 Jul 2012 16:47:05 +0000 (20:47 +0400)]
tls: localhost is valid against identity-check
Fedor Indutny [Fri, 20 Jul 2012 16:51:02 +0000 (20:51 +0400)]
Revert "http/https: pass request to .createConnection()"
This reverts commit
53716eb0b5338999761d115fad9d392077836e63.
Fedor Indutny [Wed, 11 Jul 2012 19:54:20 +0000 (23:54 +0400)]
tls: veryify server's identity
Fedor Indutny [Wed, 11 Jul 2012 19:53:27 +0000 (23:53 +0400)]
http/https: pass request to .createConnection()
It's useful for passing some additional options of request object to the
underlying API
Fedor Indutny [Mon, 16 Jul 2012 17:41:26 +0000 (21:41 +0400)]
net: ignore socket.setTimeout(Infinity) (and NaN)
isaacs [Thu, 19 Jul 2012 20:03:28 +0000 (13:03 -0700)]
npm: Upgrade to 1.1.44
isaacs [Thu, 19 Jul 2012 17:20:44 +0000 (10:20 -0700)]
Blog post about v0.8.3
isaacs [Thu, 19 Jul 2012 17:19:45 +0000 (10:19 -0700)]
Now working on 0.8.4
isaacs [Thu, 19 Jul 2012 17:19:04 +0000 (10:19 -0700)]
Merge branch 'v0.8.3-release' into v0.8
isaacs [Tue, 17 Jul 2012 19:02:57 +0000 (12:02 -0700)]
2012.07.19, Version 0.8.3 (Stable)
* V8: upgrade to 3.11.10.15
* npm: Upgrade to 1.1.43
* net: fix net.Server.listen({fd:x}) error reporting (Ben Noordhuis)
* net: fix bogus errno reporting (Ben Noordhuis)
* build: Move npm shebang logic into an npm script (isaacs)
* build: fix add-on loading on freebsd (Ben Noordhuis)
* build: disable unsafe optimizations (Ben Noordhuis)
* build: fix spurious mksnapshot crashes for good (Ben Noordhuis)
* build: speed up genv8constants (Dave Pacheco)
* fs: make unwatchFile() remove a specific listener (Ben Noordhuis)
* domain: Remove first arg from intercepted fn (Toshihiro Nakamura)
* domain: Fix memory leak on error (isaacs)
* events: Fix memory leak from removeAllListeners (Nathan Rajlich)
* zlib: Fix memory leak in Unzip class. (isaacs)
* crypto: Fix memory leak in DecipherUpdate() (Ben Noordhuis)
isaacs [Thu, 19 Jul 2012 16:29:29 +0000 (09:29 -0700)]
uv: Upgrade to 94355e4
isaacs [Thu, 19 Jul 2012 16:29:29 +0000 (09:29 -0700)]
uv: Upgrade to 94355e4
Ben Noordhuis [Thu, 19 Jul 2012 16:20:34 +0000 (18:20 +0200)]
build: unbreak ustack on smartos
I disabled the -ffunction-sections and -fdata-sections switches in 202df30
because they're horribly buggy with some gcc/binutils combos.
However, it turns out that the dtrace/ustack post-processing tool requires
that V8 is compiled with said switches and was broken because of it.
This commit turns them on again on SunOS systems. Let's hope for the best.
Ben Noordhuis [Wed, 18 Jul 2012 22:08:35 +0000 (00:08 +0200)]
build: link with -rdynamic, not -Wl,--export-dynamic
The system linker on SunOS doesn't understand --export-dynamic.
Ben Noordhuis [Wed, 18 Jul 2012 21:26:23 +0000 (21:26 +0000)]
build: fix mksnapshot crash on sunos
Unconditionally compile V8 with -fno-strict-aliasing on all platforms.
gcc 4.5.2 on sunos generates bad code when -fstrict-aliasing is enabled, which
undoubtedly means that there are more buggy versions of gcc out there.
-fstrict-aliasing does not give a significant performance boost so let's just
disable it.
Fixes #3736.
Ben Noordhuis [Wed, 18 Jul 2012 12:23:39 +0000 (14:23 +0200)]
doc: build requires GNU make 3.81+
Ben Noordhuis [Wed, 18 Jul 2012 11:32:26 +0000 (13:32 +0200)]
node: make ev-emul.h compile with -Wextra -Werror
Explicitly cast double to int64_t, it was making add-ons that compile with
`-Wall -Wextra -Werror` fail to build.
Don't use fully variadic macros, gcc in uber-strict mode rejects them.
Ben Noordhuis [Wed, 18 Jul 2012 00:13:55 +0000 (02:13 +0200)]
doc: advise *strongly* against uncaughtException
isaacs [Wed, 18 Jul 2012 00:09:34 +0000 (17:09 -0700)]
uv: Upgrade to b49d6f7
Dave Pacheco [Tue, 17 Jul 2012 22:25:11 +0000 (15:25 -0700)]
tools: speed up genv8constants
genv8constants was much slower than necessary due to lack of pipe buffering.
isaacs [Tue, 17 Jul 2012 18:44:01 +0000 (11:44 -0700)]
v8: Reapply floating patches
isaacs [Tue, 17 Jul 2012 18:43:02 +0000 (11:43 -0700)]
v8: upgrade to 3.11.10.15
isaacs [Tue, 17 Jul 2012 18:40:13 +0000 (11:40 -0700)]
uv: Upgrade to a9f6f06
isaacs [Tue, 17 Jul 2012 18:37:39 +0000 (11:37 -0700)]
npm: Upgrade to 1.1.43
isaacs [Mon, 16 Jul 2012 23:38:11 +0000 (16:38 -0700)]
domain: Fix stack leak on error
Mike Morearty [Fri, 13 Jul 2012 21:18:52 +0000 (14:18 -0700)]
doc: fix bug in child_process.spawn() sample code
Bert Belder [Fri, 13 Jul 2012 23:43:34 +0000 (01:43 +0200)]
benchmark: add single process tls connection benchmark
George Shank [Sun, 24 Jun 2012 02:03:00 +0000 (20:03 -0600)]
doc: update 'Fork me at Github' ribbon
Replace 'Fork me at Github' ribbon with a new one fitting the website's color
scheme.
isaacs [Fri, 13 Jul 2012 19:08:10 +0000 (12:08 -0700)]
build: Move npm shebang logic into an npm script
This allows us to run npm's scripts/relocate.sh script whenever
necessary, if for example node has been 'make install'ed into one
folder, and then you wish to move it into another one.
isaacs [Fri, 13 Jul 2012 18:40:38 +0000 (11:40 -0700)]
npm: upgrade to 1.1.41
Ben Noordhuis [Thu, 12 Jul 2012 23:43:14 +0000 (01:43 +0200)]
build: fix add-on loading on freebsd
Link with -Wl,--export-dynamic, makes symbols from the node binary visible to
binary add-ons.
Fixes "undefined symbol: _ZN2v811HandleScopeC1Ev" errors when loading add-ons
on FreeBSD and likely other BSDs.
Fixes #3623.
Nathan Rajlich [Thu, 12 Jul 2012 22:40:45 +0000 (15:40 -0700)]
Revert "events: don't delete the listeners array in removeListener()"
This reverts commit
928ea564d16da47e615ddac627e0b4d4a40d8196.
Keeping the original Array instance in-place essentially causes a memory leak
on EventEmitters that use an infinite number of event names (an incrementing
counter, for example), which isn't an unreasonable thing to want to do.
Fixes #3702.
Ben Noordhuis [Thu, 12 Jul 2012 16:16:57 +0000 (18:16 +0200)]
net: fix net.Server.listen({fd:x}) error reporting
* don't assert when fd isn't an open file descriptor
* don't die with a ReferenceError when fd isn't a file descriptor
you can listen() on
Fixes #3699.
Ben Noordhuis [Thu, 12 Jul 2012 14:56:42 +0000 (16:56 +0200)]
net: fix bogus errno reporting
_listen2() emits the error on the next tick. The errno value may have changed
by then.
Ben Noordhuis [Thu, 12 Jul 2012 14:29:43 +0000 (16:29 +0200)]
build: partially fix configure on ARM
V8 on ARM requires that armv7 is set. We don't have a good way to detect the
CPU model right now so we pick a default and hope that it works okay for the
majority of people.
Non-scientific sampling - the ARM hardware I have lying around the house -
suggests that ARMv5 and ARMv6 are still most common so armv7=0 it is.
This obviously needs to be revisited sometime in the future.
Ben Noordhuis [Thu, 12 Jul 2012 13:42:44 +0000 (15:42 +0200)]
build: disable unsafe optimizations
Compile at -O2 and disable optimizations that trigger gcc bugs.
Some people still reported mksnapshot crashes after commit b40f813 ("build: fix
spurious mksnapshot crashes for good" - so much for that).
Average performance of the -O2 binary is on par with the -O3 binary. Variance
on the http_simple bytes/8 benchmark appears to be slightly greater but small
enough that the possibly of it being noise cannot be excluded.
The new binary very slightly but consistently outperforms the -O3 binary (by
about 0.5%) on the mostly CPU-bound bytes/102400 benchmark. That could be an
artifact of the system I benchmarked it on, a Core 2 Duo with a puny 32 kB of
L1 instruction cache. The smaller binary seems to play nicer with the cache.
Bert Belder [Thu, 12 Jul 2012 01:30:04 +0000 (03:30 +0200)]
Merge branch 'v0.6' into v0.8
isaacs [Wed, 11 Jul 2012 17:15:03 +0000 (10:15 -0700)]
Now working on 0.6.21
Philipp Hagemeister [Tue, 10 Jul 2012 14:50:49 +0000 (16:50 +0200)]
tools: fix shebang in tools/doc/generate.js
Ben Noordhuis [Wed, 11 Jul 2012 01:19:12 +0000 (03:19 +0200)]
build: fix spurious mksnapshot crashes for good
A variety of gcc bugs made mksnapshot crash with either a segmentation fault
or a 'pure virtual method callled' run-time error.
After much wailing and gnashing of teeth I managed to deduce that the bugs
show up when:
1. gcc 4.5.2 for i386-pc-solaris2.11 is used and -fstrict-aliasing is
enabled, or
2. gcc version 4.4.6 for x86_64-redhat-linux is used and
-ffunction-sections -finline-functions at -O2 or higher is enabled
Therefore, disable -ffunction-sections and -fdata-sections unconditionally
and disable -fstrict-aliasing only on Solaris.
The -ffunction-sections and -fdata-sections switches were nonsense anyway
because we don't link with -Wl,--gc-sections.
isaacs [Wed, 11 Jul 2012 00:01:30 +0000 (17:01 -0700)]
Blog post for v0.6.20
isaacs [Tue, 10 Jul 2012 23:25:12 +0000 (16:25 -0700)]
2012.07.10 Version 0.6.20 (maintenance)
* npm: Upgrade to 1.1.37 (isaacs)
* benchmark: Backport improvements made in master (isaacs)
* build: always link with -lz (Trent Mick)
* core: use proper #include directives (Ben Noordhuis)
* cluster: don't silently drop messages when the write queue gets big (Bert Belder)
* windows: don't print error when GetConsoleTitleW returns an empty string (Bert Belder)
isaacs [Tue, 10 Jul 2012 23:16:43 +0000 (16:16 -0700)]
.gitignore: Don't ignore node_modules (breaks npm)
isaacs [Tue, 10 Jul 2012 23:16:25 +0000 (16:16 -0700)]
npm: Upgrade to 1.1.37
isaacs [Tue, 10 Jul 2012 00:43:02 +0000 (17:43 -0700)]
build: Regenerate docs for tarball and releases
Related: https://twitter.com/kapeli/status/
222477400880070658
Ivan Torres [Sat, 7 Jul 2012 04:36:53 +0000 (21:36 -0700)]
doc: clarify fs.symlink and fs.symlinkSync parameters
isaacs [Mon, 9 Jul 2012 17:25:17 +0000 (10:25 -0700)]
Now working on 0.8.3
isaacs [Mon, 9 Jul 2012 17:24:34 +0000 (10:24 -0700)]
v0.8.2 blog post
isaacs [Mon, 9 Jul 2012 17:23:49 +0000 (10:23 -0700)]
Merge branch 'v0.8.2-release' into v0.8
Conflicts:
AUTHORS
Toshihiro Nakamura [Sun, 8 Jul 2012 00:30:07 +0000 (09:30 +0900)]
domain: Remove first arg from intercepted fn
Fix to remove the first-arg, in case arguments length is more than 2
Add domain.intercept() test about first-arg removal
Bert Belder [Mon, 9 Jul 2012 15:28:30 +0000 (17:28 +0200)]
Update AUTHORS
Bert Belder [Mon, 9 Jul 2012 14:55:09 +0000 (16:55 +0200)]
Add a .mailmap file, and clean up AUTHORS somewhat
* A mailmap makes it easier to keep track of contributors.
* Changes to the AUTHORS file:
- fix misspellings
- add missing/incomplete names
- remove duplicate mentions
* No names were added to or removed from the AUTHORS list.
Justin Plock [Sun, 1 Jul 2012 15:35:51 +0000 (12:35 -0300)]
doc: cluster: worker.pid is now worker.process.pid
Ben Noordhuis [Sun, 8 Jul 2012 14:37:45 +0000 (16:37 +0200)]
test: make test-fs-watch-file write to tmp dir
Write temp files to test/tmp, not test/fixtures.
Ben Noordhuis [Sun, 8 Jul 2012 14:31:07 +0000 (16:31 +0200)]
fs: make unwatchFile() remove a specific listener
Before this commit, `fs.unwatchFile(path)` removed *all* listeners for `path`.
The function is overloaded now: `fs.unwatchFile(path)` still removes all
listeners, but `fs.unwatchFile(path, cb)` lets you remove a specific listener.
Fixes #3660.
isaacs [Mon, 9 Jul 2012 05:03:37 +0000 (22:03 -0700)]
zlib: Call inflateEnd for UNZIP. Fixes memory leak.
Fix #2595
Nathan Rajlich [Sun, 8 Jul 2012 02:57:02 +0000 (19:57 -0700)]
process: throw a TypeError when anything but an Array is passed to hrtime()
Fixes #3664.
Ben Noordhuis [Fri, 6 Jul 2012 14:37:03 +0000 (16:37 +0200)]
crypto: fix DecipherUpdate() memory leak
Fix a memory leak in the the code path that deals with partial hex strings.
isaacs [Sat, 7 Jul 2012 20:56:39 +0000 (13:56 -0700)]
2012.07.09, Version 0.8.2 (Stable)
* npm: Upgrade to 1.1.36
* readline: don't use Function#call() (Nathan Rajlich)
* Code cleanup to pass 'use strict' (Jonas Westerlund)
* module: add filename to require() json errors (TJ Holowaychuk)
* readline: fix for unicode prompts (Tim Macfarlane)
* timers: fix handling of large timeouts (Ben Noordhuis)
* repl: fix passing an empty line inserting "undefined" into the buffer (Nathan Rajlich)
* repl: fix crashes when buffering command (Maciej MaĆecki)
* build: rename strict_aliasing to node_no_strict_aliasing (Ben Noordhuis)
* build: disable -fstrict-aliasing for any gcc < 4.6.0 (Ben Noordhuis)
* build: detect cc version with -dumpversion (Ben Noordhuis)
* build: handle output of localized gcc or clang (Ben Noordhuis)
* unix: fix memory corruption in freebsd.c (Ben Noordhuis)
* unix: fix 'zero handles, one request' busy loop (Ben Noordhuis)
* unix: fix busy loop on unexpected tcp message (Ben Noordhuis)
* unix: fix EINPROGRESS busy loop (Ben Noordhuis)
isaacs [Sat, 7 Jul 2012 22:01:51 +0000 (15:01 -0700)]
Fix test-require-json on Windows
Bert Belder [Wed, 13 Jun 2012 13:37:15 +0000 (15:37 +0200)]
v8: reapply floating patches
isaacs [Sat, 7 Jul 2012 21:07:19 +0000 (14:07 -0700)]
v8: Upgrade to 3.11.10.14
Bert Belder [Sat, 7 Jul 2012 21:33:54 +0000 (23:33 +0200)]
Fix the Windows build
Bert Belder [Sat, 7 Jul 2012 21:19:12 +0000 (23:19 +0200)]
gitignore: ignore .svn directories
isaacs [Sat, 7 Jul 2012 20:42:25 +0000 (13:42 -0700)]
Now working on 0.8.2
isaacs [Sat, 7 Jul 2012 19:40:06 +0000 (12:40 -0700)]
npm: Upgrade to 1.1.36
isaacs [Sat, 7 Jul 2012 16:53:33 +0000 (09:53 -0700)]
doc: Formatting and grammar on stream api doc
Dominic Tarr [Sat, 7 Jul 2012 00:25:13 +0000 (12:25 +1200)]
correct documentation of Stream#destroy
Nathan Rajlich [Sat, 7 Jul 2012 02:41:01 +0000 (19:41 -0700)]
readline: don't use Function#call()
It wasn't necessary.
Jonas Westerlund [Thu, 5 Jul 2012 16:46:09 +0000 (18:46 +0200)]
Forgotten commit: add arguments to handleGroup
Jonas Westerlund [Wed, 4 Jul 2012 21:19:09 +0000 (23:19 +0200)]
Assign to property of global, instead of implicit global variable
Fixes crash in strict mode.
Jonas Westerlund [Wed, 4 Jul 2012 21:18:33 +0000 (23:18 +0200)]
Use unicode escape sequences instead of octal
The latter is illegal in strict mode.
Jonas Westerlund [Wed, 4 Jul 2012 21:17:14 +0000 (23:17 +0200)]
Inline timeout function, avoiding declaration in conditional
Moving it out would require an anonymous function, or bind(), anyway.
Luckily It's a tiny function. Fixes crash in strict mode.
Jonas Westerlund [Wed, 4 Jul 2012 21:14:27 +0000 (23:14 +0200)]
Move function declaration out of conditional
Also avoid using eval as identifier.
Fixes crashes in strict mode.
Jonas Westerlund [Wed, 4 Jul 2012 21:01:03 +0000 (23:01 +0200)]
Move function declaration to top-level
Gets rid of a strict mode error and a few levels of indentation.
Jonas Westerlund [Wed, 4 Jul 2012 20:59:23 +0000 (22:59 +0200)]
Do not assign to properties that only have getters
It is an error in strict mode, and silent failure otherwise.
Jonas Westerlund [Wed, 4 Jul 2012 20:57:48 +0000 (22:57 +0200)]
Avoid redeclaring variable
Capitalize the constructor to avoid redeclaration.
Fixes strict mode error.
Jonas Westerlund [Wed, 4 Jul 2012 20:55:54 +0000 (22:55 +0200)]
Remove octal escape sequences and avoid reserved keyword
Both are errors in strict mode.
TJ Holowaychuk [Fri, 6 Jul 2012 22:26:41 +0000 (15:26 -0700)]
module: add filename to require() json errors
Otherwise it can be quite difficult to figure out which file is busted.
Closes #3580.
Tim Macfarlane [Fri, 29 Jun 2012 09:33:58 +0000 (10:33 +0100)]
readline: fix for unicode prompts
prompt length is char length, not byte length
Ben Noordhuis [Sun, 1 Jul 2012 20:58:22 +0000 (22:58 +0200)]
timers: fix handling of large timeouts
Don't use the double-negate trick to coalesce the timeout argument into a
number, it produces the wrong result for very large timeouts.
Example:
setTimeout(cb, 1e10); // doesn't work, ~~1e10 ==
1410065408
Nathan Rajlich [Wed, 4 Jul 2012 18:51:24 +0000 (11:51 -0700)]
repl: fix passing an empty line inserting "undefined" into the buffer
There was a possiblity of insering the string "undefined" into the repl's
command buffer, which would cause interesting results while evaluating.