isaacs [Thu, 12 Jul 2012 00:38:11 +0000 (17:38 -0700)]
Merge remote-tracking branch 'ry/v0.8' into v0.8-merge
Conflicts:
src/node_version.h
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
Shigeki Ohtsu [Tue, 10 Jul 2012 17:39:41 +0000 (02:39 +0900)]
timer: change new Date to Date.now for performance
Speeds up benchmark/settimeout.js by about 30%.
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
Fedor Indutny [Thu, 5 Jul 2012 19:50:21 +0000 (15:50 -0400)]
tls: use slab allocator
Fedor Indutny [Tue, 3 Jul 2012 22:30:53 +0000 (15:30 -0700)]
tls: make tls a little bit faster
Compile OpenSSL with inline assembly for big numbers
Vladimir Beloborodov [Wed, 13 Jun 2012 17:37:31 +0000 (21:37 +0400)]
readline: Use one history item for reentered line
If the command entered is exactly the same as the last history item,
don't dupe it in the history
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.
Maciej Małecki [Tue, 3 Jul 2012 02:13:24 +0000 (04:13 +0200)]
repl: fix crashes when buffering command
Wrong order of operands was causing problems while trying to use command
buffering:
> {
... a: 3,
...
repl.js:284
if (cmd.trim().match(/^npm /) && !self.bufferedCommand) {
^
TypeError: Cannot call method 'trim' of undefined
at finish (repl.js:284:17)
at REPLServer.self.eval (repl.js:118:5)
at rli.on.e (repl.js:260:20)
at REPLServer.self.eval (repl.js:118:5)
at Interface.<anonymous> (repl.js:250:12)
at Interface.EventEmitter.emit (events.js:88:17)
at Interface._onLine (readline.js:183:10)
at Interface._line (readline.js:502:8)
at Interface._ttyWrite (readline.js:720:14)
at ReadStream.<anonymous> (readline.js:105:12)
Test included.
Closes #3515.
Closes #3517.
Closes #3621.
Ben Noordhuis [Wed, 4 Jul 2012 12:08:07 +0000 (14:08 +0200)]
deps: upgrade libuv to be09be7
Mathias Bynens [Wed, 27 Jun 2012 15:47:07 +0000 (17:47 +0200)]
punycode: update to v1.1.1
Ben Noordhuis [Wed, 4 Jul 2012 11:41:56 +0000 (13:41 +0200)]
Merge remote-tracking branch 'origin/v0.8'
Conflicts:
configure
src/node_version.h
Ben Noordhuis [Tue, 3 Jul 2012 18:56:06 +0000 (20:56 +0200)]
tools: update gyp to r1426
Ben Noordhuis [Tue, 3 Jul 2012 18:54:19 +0000 (20:54 +0200)]
deps: upgrade libuv to 5031a5b
Ben Noordhuis [Tue, 3 Jul 2012 13:28:06 +0000 (15:28 +0200)]
build: rename strict_aliasing to node_no_strict_aliasing
Make the variable naming consistent with the other strict aliasing var,
v8_no_strict_aliasing.
Ben Noordhuis [Tue, 3 Jul 2012 13:19:08 +0000 (15:19 +0200)]
build: disable -fstrict-aliasing for any gcc < 4.6.0
It has been conclusively demonstrated that the -fstrict-aliasing bugs in gcc's
optimizer are not limited to the 4.5.x releases only.
Fixes #3601 among others.
Ben Noordhuis [Tue, 3 Jul 2012 13:14:33 +0000 (15:14 +0200)]
build: detect cc version with -dumpversion
The heuristic introduced in f78ce08 ("build: handle output of localized gcc or
clang") does not handle "branded" versions of gcc, i.e. a gcc whose output has
been customized by the distro vendor.
Fixes #3601.
Ben Noordhuis [Sun, 1 Jul 2012 22:07:11 +0000 (00:07 +0200)]
deps: upgrade libuv to cc1b3de
Ben Noordhuis [Sun, 1 Jul 2012 18:09:55 +0000 (20:09 +0200)]
doc: document setTimeout / setInterval behavior
Ben Noordhuis [Sat, 30 Jun 2012 15:49:31 +0000 (17:49 +0200)]
build: handle output of localized gcc or clang
Before this commit, we used to scan the output of `$CC -v` for strings like
"gcc version x.y.z".
It was pointed out that this approach fails with localized versions of gcc
because those print (for example) "gcc versión x.y.z".
Use the output of `$CC --version` instead and only look at the first line.
Ben Noordhuis [Sat, 30 Jun 2012 02:27:29 +0000 (04:27 +0200)]
build: rename openssl configure switches
For consistency's sake, rename:
--openssl-use-sys
--openssl-includes
--openssl-libpath
To:
--shared-openssl
--shared-openssl-includes
--shared-openssl-libpath
And add --shared-openssl-libname while we're at it.
The old switches still work but `./configure --help` won't print them.
Fixes #3591.
Ben Noordhuis [Sat, 30 Jun 2012 01:27:54 +0000 (03:27 +0200)]
deps: upgrade libuv to 3b8c0da
Ben Noordhuis [Sat, 30 Jun 2012 00:23:03 +0000 (02:23 +0200)]
doc: fs.lchmod() is only available on OS X
isaacs [Fri, 29 Jun 2012 17:15:40 +0000 (10:15 -0700)]
Blog post about 0.8.1
isaacs [Fri, 29 Jun 2012 17:14:58 +0000 (10:14 -0700)]
Merge branch 'v0.8.1-release' into v0.8
Ben Noordhuis [Fri, 29 Jun 2012 15:29:32 +0000 (17:29 +0200)]
Re-apply commit e307468.
The V8 assert got triggered by a missing HandleScope::Close().
Bert Belder [Fri, 29 Jun 2012 15:03:37 +0000 (17:03 +0200)]
Revert "Fix #3521 Use an object as the process.env proto"
The reverted commit caused a v8 assertion to trigger in debug mode.
This reverts commit
e3074689f501eea413c29b99defac29659a2b615.
isaacs [Fri, 29 Jun 2012 02:28:00 +0000 (19:28 -0700)]
2012.06.29, Version 0.8.1 (stable)
* V8: upgrade to v3.11.10.12
* npm: upgrade to v1.1.33
- Support for parallel use of the cache folder
- Retry on registry timeouts or network failures (Trent Mick)
- Reduce 'engines' failures to a warning
- Use new zsh completion if aviailable (Jeremy Cantrell)
* Fix #3577 Un-break require('sys')
* util: speed up formatting of large arrays/objects (Ben Noordhuis)
* windows: make fs.realpath(Sync) work with UNC paths (Bert Belder)
* build: fix --shared-v8 option (Ben Noordhuis)
* doc: `detached` is a boolean (Andreas Madsen)
* build: use proper python interpreter (Ben Noordhuis)
* build: expand ~ in `./configure --prefix=~/a/b/c` (Ben Noordhuis)
* build: handle CC env var with spaces (Gabriel de Perthuis)
* build: fix V8 build when compiling with gcc 4.5 (Ben Noordhuis)
* build: fix --shared-v8 option (Ben Noordhuis)
* windows msi: Fix icon issue which caused huge file size (Bert Belder)
* unix: assume that dlopen() may clobber dlerror() (Ben Noordhuis)
* sunos: fix memory corruption bugs (Ben Noordhuis)
* windows: better (f)utimes and (f)stat (Bert Belder)
isaacs [Fri, 29 Jun 2012 08:22:10 +0000 (01:22 -0700)]
blog: Require posts to have a date
isaacs [Fri, 29 Jun 2012 08:20:59 +0000 (01:20 -0700)]
blog: Direct bugs/feature feedback to issues
isaacs [Fri, 29 Jun 2012 08:20:13 +0000 (01:20 -0700)]
blog: Don't print 'undefined' for missing author/category
isaacs [Fri, 29 Jun 2012 07:45:55 +0000 (00:45 -0700)]
blog css: Styling of nested lists
isaacs [Fri, 29 Jun 2012 05:23:53 +0000 (22:23 -0700)]
homepage: Update Claudio's title/link
isaacs [Fri, 29 Jun 2012 05:06:53 +0000 (22:06 -0700)]
lint
isaacs [Fri, 29 Jun 2012 02:10:56 +0000 (19:10 -0700)]
uv: upgrade to 5b8a112
isaacs [Fri, 29 Jun 2012 02:08:32 +0000 (19:08 -0700)]
npm: Upgrade to 1.1.33
Support for parallel use of the cache folder
Retry on registry timeouts or network failures
Reduce 'engines' failures to a warning
Use new zsh completion if aviailable
Bert Belder [Fri, 29 Jun 2012 00:20:39 +0000 (02:20 +0200)]
Merge branch 'v0.8'
isaacs [Thu, 28 Jun 2012 17:13:28 +0000 (10:13 -0700)]
Fix #3577 Un-break require('sys')
Bert Belder [Thu, 28 Jun 2012 14:17:30 +0000 (16:17 +0200)]
uv: upgrade to 4a88b3b
isaacs [Thu, 28 Jun 2012 06:32:43 +0000 (23:32 -0700)]
blog: Show 0.8.0 even after 0.8.1 ships
The 0.(even).0 releases typically have benchmarks and other interesting
stuff, since that's a milestone.
Ben Noordhuis [Thu, 28 Jun 2012 02:14:24 +0000 (04:14 +0200)]
Revert "tools: update closure_linter to the latest(2.3.5)"
This reverts commit
6d98524609d5c0a1445f71b9930ff81c48c749be.
This reverts commit
60ff789618b5d61650609c7df27359ed3a609cc2.
closure_linter now depends on the gflags module and not everyone will have that
installed by default.
Ben Noordhuis [Wed, 27 Jun 2012 17:15:28 +0000 (19:15 +0200)]
util: speed up formatting of large arrays/objects
Don't .indexOf() into the keys array. V8 is smart but not so smart that it
knows how to turn the linear scan into a O(1) lookup.
Fixes #3562.
Ben Noordhuis [Thu, 28 Jun 2012 01:47:40 +0000 (03:47 +0200)]
doc: remove references to deprecated fs api
The string-based versions of fs.read() and fs.write() have been deprecated
since before v0.2.0.
Shigeki Ohtsu [Mon, 18 Jun 2012 05:16:16 +0000 (14:16 +0900)]
test: fix test-dgram-broadcast-multi-process
The test failed when a router replies IPADDR_BROADCAST.
Fixed it by specifying only one address to bind a socket.
Shigeki Ohtsu [Thu, 21 Jun 2012 01:02:49 +0000 (10:02 +0900)]
LICENSE: update Closure Linter to Apache 2.0
Shigeki Ohtsu [Thu, 21 Jun 2012 00:54:06 +0000 (09:54 +0900)]
tools: update closure_linter to the latest(2.3.5)
Ben Noordhuis [Wed, 27 Jun 2012 23:07:42 +0000 (01:07 +0200)]
build: use proper python interpreter
Make configure start gyp with the same python interpreter that is used to
run configure itself.
Fixes an issue where configure fails with a SyntaxError because the user
has multiple python binaries on his $PATH and the default one is too old.
Gabriel [Tue, 26 Jun 2012 17:45:13 +0000 (19:45 +0200)]
build: handle CC env var with spaces
For example:
CC='ccache gcc' ./configure
Bert Belder [Tue, 26 Jun 2012 23:59:25 +0000 (01:59 +0200)]
windows: make fs.realpath(Sync) work with UNC paths
Closes #3542
Ben Noordhuis [Tue, 26 Jun 2012 22:33:50 +0000 (00:33 +0200)]
build: fix --shared-v8 option
isaacs [Tue, 26 Jun 2012 22:20:26 +0000 (15:20 -0700)]
realpath: No sync cb() calling allowed.
Ben Noordhuis [Tue, 26 Jun 2012 21:38:35 +0000 (23:38 +0200)]
deps: upgrade libuv to 4d42af2
Tim Oxley [Mon, 25 Jun 2012 18:14:10 +0000 (04:14 +1000)]
Added % difference for perf benchmarks in 0.8 post
Bert Belder [Tue, 26 Jun 2012 17:23:24 +0000 (19:23 +0200)]
configure: don't fail if compiler_version() doesn't work
This fixes the Windows build.
isaacs [Tue, 26 Jun 2012 16:13:59 +0000 (09:13 -0700)]
Now working on 0.9.0
isaacs [Sun, 24 Jun 2012 02:31:21 +0000 (19:31 -0700)]
Fix #3521 Use an object as the process.env proto
For some reason, though, it looks like EnvGetter is not called for the
key `__proto__`, so I can't make the info->Data() accessible. However,
putting the Object.prototype keys there, in such a way that they are not
OwnProperties, and are supersceded by environs, makes process.env much
less weird.
Andreas Madsen [Mon, 25 Jun 2012 16:53:35 +0000 (18:53 +0200)]
doc: `detached` is a boolean
Ben Noordhuis [Tue, 26 Jun 2012 14:34:07 +0000 (16:34 +0200)]
build: expand ~ in `./configure --prefix=~/a/b/c`
Ben Noordhuis [Tue, 26 Jun 2012 01:39:32 +0000 (03:39 +0200)]
build: enable strict aliasing if gcc < 4.5.0
We already enable -fstrict-aliasing when gcc >= 4.6.0 but let's enable it for
gcc < 4.5.0 as well. The aliasing bugs that we ran into in the past are all
particular to the 4.5.x releases.
Ben Noordhuis [Tue, 26 Jun 2012 01:38:39 +0000 (03:38 +0200)]
Merge remote-tracking branch 'origin/v0.8'
Ben Noordhuis [Tue, 26 Jun 2012 00:54:11 +0000 (02:54 +0200)]
build: disable strict aliasing in v8 with gcc 4.5.x
The gcc 4.5.x have various bugs that make V8 crash in various and interesting
ways when -fstrict-aliasing is in effect.
Ben Noordhuis [Tue, 26 Jun 2012 00:54:11 +0000 (02:54 +0200)]
build: disable strict aliasing in v8 with gcc 4.5.x
The gcc 4.5.x have various bugs that make V8 crash in various and interesting
ways when -fstrict-aliasing is in effect.