isaacs [Wed, 19 Mar 2014 16:25:40 +0000 (09:25 -0700)]
npm: upgrade to 1.4.6
* Documentation upgrades
* Fix glob bug which prevents proper README publishing
* node-gyp upgrade to 0.13
* Documentation updates
* Add --save-exact to save an exact dep (instead of a range)
* alias 't' to 'test'
Ben Noordhuis [Thu, 6 Mar 2014 04:11:07 +0000 (05:11 +0100)]
build: fix g++ 4.8 build, disable -Werror
Turn off -Werror when building V8, it hits -Werror=unused-local-typedefs
with g++ 4.8. The warning itself is harmless so don't abort the build.
This was originally implemented in commit
d2ab314e back in 2011 but the
build process has gone through a few iterations since then, that change
no longer works.
Shuhei Kagawa [Sun, 9 Mar 2014 11:16:39 +0000 (20:16 +0900)]
doc: remove an unused arg in process.stdin.
The argument of process.stdin's readable event handler is not used.
Fedor Indutny [Mon, 10 Mar 2014 10:59:18 +0000 (14:59 +0400)]
crypto: do not lowercase cipher/hash names
`crypto.getCiphers()` and `crypto.getHashes()` should prefer lower-case
variants of names, but should not introduce them.
fix #7282
Ben Noordhuis [Thu, 6 Mar 2014 21:59:56 +0000 (22:59 +0100)]
deps: fix v8 valgrind warning
Fix the following valgrind warning:
Conditional jump or move depends on uninitialised value(s)
at 0x7D64E7: v8::internal::GlobalHandles::IterateAllRootsWithClassIds(v8::internal::ObjectVisitor*) (global-handles.cc:613)
by 0x94DCDC: v8::internal::NativeObjectsExplorer::FillRetainedObjects() (profile-generator.cc:2849)
# etc.
This was fixed upstream in r12903 and released in 3.15.2 but that commit
was never back-ported to the 3.14 branch that node.js v0.10 uses.
The code itself works okay; this commit simply shuffles the clauses in
an `if` statement to check that the node is in use before checking its
class id (which is uninitialized if the node is not in use.)
Fedor Indutny [Wed, 26 Feb 2014 10:37:13 +0000 (14:37 +0400)]
child_process: fix sending handle twice
When sending a socket to a child process via IPC pipe,
`child_process.js` picks a raw UV handle from `_handle` property, sends
it, and assigns `null` to the property. Sending the same socket twice
was resulting in a runtime error, since we weren't handling the empty
`_handle` case.
In case of `null` `_handle` we should send just a plain text message
as passed it was passed to `.send()` and ignore the handle, letting
users handle such cases themselves instead of throwing the error at
runtime.
fix #5469
Benoit Vallée [Tue, 14 May 2013 03:10:07 +0000 (11:10 +0800)]
test: test sending a handle twice
Added test-cluster-send-handle-twice.js testing to send a handle
twice to the parent process.
Ben Noordhuis [Tue, 4 Mar 2014 13:10:05 +0000 (14:10 +0100)]
src: add default visibility to NODE_MODULE
It's currently not really possible to compile native add-ons with
-fvisibility=hidden because that also hides the struct containing
the module definition.
The NODE_MODULE() and NODE_MODULE_DECL() macros are structured in
a way that makes it impossible to add a visibility attribute manually
so there is no escape hatch there.
That's why this commit adds an explicit visibility attribute to
the module definition. It doesn't help with node.js releases that
are already out there but at least it improves the situation going
forward.
Greg Brail [Wed, 29 Jan 2014 01:36:22 +0000 (17:36 -0800)]
timer: don't reschedule timer bucket in a domain
If two timers run on the same tick, and the first timer uses a domain,
and then catches an exception and disposes of the domain, then the
second timer never runs. (And even if the first timer does not dispose
of the domain, the second timer could run under the wrong domain.)
This happens because timer.js uses "process.nextTick()" to schedule
continued processing of the timers for that tick. However, there was
an exception inside a domain, then "process.nextTick()" runs under
the domain of the first timer function, and will do nothing if
the domain has been disposed.
To avoid this, we temporarily save the value of "process.domain"
before calling nextTick so that it does not run inside any domain.
Timothy J Fontaine [Tue, 4 Mar 2014 00:27:58 +0000 (16:27 -0800)]
src: domain should not replace nextTick function
Previously if you cached process.nextTick and then require('domain')
subsequent nextTick() calls would not be caught because enqueued
functions were taking the wrong path. This keeps nextTick to a single
function reference and changes the implementation details after domain
has been required.
Nathan Rajlich [Wed, 26 Feb 2014 19:39:53 +0000 (11:39 -0800)]
test: add `agent: null` http client request test
This is just the test portion from #7012 / #7189,
but targetted for the v0.10 branch.
Nathan Rajlich [Wed, 26 Feb 2014 02:17:35 +0000 (18:17 -0800)]
http: invoke createConnection when no agent
This makes it so that the user may pass in a
`createConnection()` option, and they don't have
to pass `agent: false` at the same time.
Also adding a test for the `createConnection` option,
since none was in place before.
See #7014.
Mike Pennisi [Mon, 24 Feb 2014 19:16:40 +0000 (14:16 -0500)]
assert: Ensure reflexivity of deepEqual
Ensure that the behavior of `assert.deepEqual` does not depend on
argument ordering when comparing an `arguments` object with a
non-`arguments` object.
Brian White [Sun, 23 Feb 2014 19:00:28 +0000 (14:00 -0500)]
stream: remove useless check
Nicolas Talle [Sat, 22 Feb 2014 15:02:10 +0000 (16:02 +0100)]
doc: update assert.markdown
Update assert.throws() and assert.doesNotThrow() docs
Fedor Indutny [Thu, 20 Feb 2014 21:03:03 +0000 (01:03 +0400)]
installer: copy `node.d` only with node_use_dtrace
Fedor Indutny [Thu, 20 Feb 2014 20:56:17 +0000 (00:56 +0400)]
dtrace: workaround linker bug on FreeBSD
Fedor Indutny [Thu, 20 Feb 2014 17:00:29 +0000 (21:00 +0400)]
configure: allow --with-dtrace on freebsd
Fedor Indutny [Thu, 20 Feb 2014 16:52:26 +0000 (20:52 +0400)]
gyp: specialize node.d for freebsd
`node.d` should use `psinfo.d` instead of `procfs.d` and have statically
defined architecture on FreeBSD.
Timothy J Fontaine [Wed, 19 Feb 2014 02:57:45 +0000 (18:57 -0800)]
tools: update to support separate website repo
Timothy J Fontaine [Wed, 19 Feb 2014 00:43:12 +0000 (16:43 -0800)]
Now working on v0.10.27
Timothy J Fontaine [Wed, 19 Feb 2014 00:40:23 +0000 (16:40 -0800)]
Merge branch 'v0.10.26-release' into v0.10
Timothy J Fontaine [Tue, 18 Feb 2014 23:34:29 +0000 (15:34 -0800)]
build: readd missing installer resources
This were accidentally moved during the website refactor
Timothy J Fontaine [Tue, 18 Feb 2014 22:55:58 +0000 (14:55 -0800)]
2014.02.18, Version 0.10.26 (Stable)
* uv: Upgrade to v0.10.25 (Timothy J Fontaine)
* npm: upgrade to 1.4.3 (isaacs)
* v8: support compiling with VS2013 (Fedor Indutny)
* cares: backport TXT parsing fix (Fedor Indutny)
* crypto: throw on SignFinal failure (Fedor Indutny)
* crypto: update root certificates (Ben Noordhuis)
* debugger: Fix breakpoint not showing after restart (Farid Neshat)
* fs: make unwatchFile() insensitive to path (iamdoron)
* net: do not re-emit stream errors (Fedor Indutny)
* net: make Socket destroy() re-entrance safe (Jun Ma)
* net: reset `endEmitted` on reconnect (Fedor Indutny)
* node: do not close stdio implicitly (Fedor Indutny)
* zlib: avoid assertion in close (Fedor Indutny)
Anton Khlynovskiy [Mon, 8 Jul 2013 17:09:44 +0000 (21:09 +0400)]
docs: clarify process.stdin and old mode
Pedro Ballesteros [Mon, 17 Feb 2014 15:22:05 +0000 (16:22 +0100)]
doc: stdout blocking or non-blocking behaviour
Makes clear that the behaviour of stdout is blocking
in Linux/Unix even when they refer to pipes.
Timothy J Fontaine [Tue, 18 Feb 2014 21:09:41 +0000 (13:09 -0800)]
test: make test-net-error-twice less racey
Timothy J Fontaine [Tue, 18 Feb 2014 21:04:29 +0000 (13:04 -0800)]
uv: Upgrade to v0.10.25
Raynos [Tue, 21 May 2013 21:10:34 +0000 (15:10 -0600)]
doc: mention objectMode for Writable streams
Farid Neshat [Sat, 15 Feb 2014 03:30:30 +0000 (11:30 +0800)]
debugger: Fix breakpoint not showing after restart
The reason this wasn't working was because after restart, when restoring
breakpoints the scripts wasn't loaded, so the breakpoint.script was
undefined. As a fix I added another check to use breakpoint.scriptReq
instead of breakpoint.script, which is the same except when the
breakpoint is a function.
fixes #7027
isaacs [Mon, 17 Feb 2014 04:43:16 +0000 (20:43 -0800)]
npm: upgrade to 1.4.3
Fedor Indutny [Thu, 13 Feb 2014 13:17:59 +0000 (17:17 +0400)]
zlib: introduce pending close state
zlib should not crash in `close()` if the write is still in progress.
fix #7101
Timothy J Fontaine [Fri, 14 Feb 2014 19:01:49 +0000 (11:01 -0800)]
doc: re-add node.1 man page
The man page was accidentally removed in 37376de for the website
refactor, bring it back.
Fixes #7117
isaacs [Thu, 13 Feb 2014 02:16:32 +0000 (18:16 -0800)]
npm: Upgrade to v1.4.0
- Removes 'npm publish -f'
- Documentation
- Bug-fixes
- Update license etc to refer to npm, Inc. rather than @isaacs personally
Timothy J Fontaine [Thu, 13 Feb 2014 23:52:01 +0000 (15:52 -0800)]
website: move website to joyent/node-website
The website will no longer be living in the source repository instead
it can be found at http://github.com/joyent/node-website
Christian [Sun, 9 Feb 2014 09:37:55 +0000 (10:37 +0100)]
doc: changed timer id to object
fix #7074
Fedor Indutny [Sun, 9 Feb 2014 10:59:31 +0000 (14:59 +0400)]
net: do not re-emit stream errors
fix #7015
Timothy J Fontaine [Wed, 5 Feb 2014 16:50:40 +0000 (08:50 -0800)]
src: refactor buffer bounds checking
Consolidate buffer bounds checking logic into Buffer namespace and use
it consistently throughout the source.
isaacs [Mon, 3 Feb 2014 04:24:09 +0000 (20:24 -0800)]
npm: upgrade to 1.3.26
Brian White [Sat, 8 Feb 2014 18:19:04 +0000 (13:19 -0500)]
doc: fix diffieHellman.getGenerator() description
Fedor Indutny [Fri, 7 Feb 2014 22:15:33 +0000 (02:15 +0400)]
Revert "dns: validate arguments in resolve"
This reverts commit
56e80a37e0df0d131d3a3ad6426d52f887ef8e94.
Fedor Indutny [Fri, 7 Feb 2014 22:15:29 +0000 (02:15 +0400)]
Revert "dns: verify argument is valid function in resolve"
This reverts commit
2ee86c624ecd6b9dbaad10989143325fc64778cd.
Kenan Sulayman [Fri, 7 Feb 2014 17:18:27 +0000 (18:18 +0100)]
dns: verify argument is valid function in resolve
Don't use argument as callback if it's not a valid callback function.
Throw a valid exception instead explaining the issue. Adds to #7070
("DNS — Throw meaningful error(s)").
Kenan Sulayman [Fri, 7 Feb 2014 17:50:29 +0000 (18:50 +0100)]
dns: validate arguments in resolve
Mitigat C++-land assertion error, add test accordingly.
fix #7070
Timothy J Fontaine [Fri, 7 Feb 2014 19:17:23 +0000 (11:17 -0800)]
website: update cla email address
iamdoron [Thu, 6 Feb 2014 06:29:58 +0000 (08:29 +0200)]
fs: make unwatchFile() insensitive to path
Benjamin Waters [Tue, 4 Feb 2014 01:56:21 +0000 (20:56 -0500)]
doc: fix references to error keyword
References for err.signal and err.code should be error.signal and
error.code.
Fixes joyent/node#6862
Ben Noordhuis [Sat, 9 Nov 2013 22:46:05 +0000 (23:46 +0100)]
crypto: update root certificates
Update the list of root certificates in src/node_root_certs.h with
tools/mk-ca-bundle.pl and update src/node_crypto.cc to make use of
the new format.
Fixes #6013.
Maxime Quandalle [Sat, 1 Feb 2014 15:10:25 +0000 (16:10 +0100)]
doc: add an example about multiple extensions
`path.extname` returns only the last extension
Fedor Indutny [Fri, 31 Jan 2014 20:12:42 +0000 (00:12 +0400)]
dtrace: fix arguments warning
Add enough arguments to `NODE_NET_SOCKET_READ()` and
`NODE_NET_SOCKET_WRITE()` stubs.
Fedor Indutny [Thu, 30 Jan 2014 11:25:20 +0000 (15:25 +0400)]
deps: backport
883637bd from latest v8
Original commit message:
VS2013 contains a number of improvements, most notably the addition
of all C99 math functions.
I'm a little bit concerned about the change I had to make in
cpu-profiler.cc, but I spent quite a bit of time looking at it and was
unable to figure out any rational explanation for the warning. It's
possible it's spurious. Since it seems like a useful warning in
general though, I chose not to disable globally at the gyp level.
I do think someone with expertise here should probably try to
determine if this is a legitimate warning.
BUG=288948
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
23449035
NOTE: Path applied without `cpu-profiler.cc` changes because in our
version it was looking totally different.
Fedor Indutny [Thu, 23 Jan 2014 09:35:18 +0000 (13:35 +0400)]
node: do not ever close stdio
Even if stdio streams are opened as file streams, we should not ever try
to close them. This could be accomplished by passing `autoClose: false`
in options on their creation.
Timothy J Fontaine [Wed, 29 Jan 2014 03:48:54 +0000 (19:48 -0800)]
blog: Post for v0.11.11
Wyatt Preul [Wed, 12 Jun 2013 04:02:51 +0000 (23:02 -0500)]
docs: clarify origin in agent.maxSockets section
Jun Ma [Sat, 25 Jan 2014 17:50:17 +0000 (01:50 +0800)]
net: make Socket destroy() re-entrance safe
So that we are free to call socket.destroy() in error event handler.
fix #6769
Fedor Indutny [Sun, 26 Jan 2014 16:09:14 +0000 (20:09 +0400)]
crypto: throw on SignFinal failure
fix #6963
Fedor Indutny [Wed, 22 Jan 2014 21:15:04 +0000 (01:15 +0400)]
net: reset `endEmitted` on reconnect
fix #6908
Fedor Indutny [Thu, 23 Jan 2014 10:27:36 +0000 (14:27 +0400)]
deps: backport
b5135bbc from c-ares repo
Original commit message:
ares_parse_txt_reply: return a ares_txt_reply node for each sub-string
Previously, the function would wrongly return all substrings merged into
one.
fix #6931
Fedor Indutny [Thu, 23 Jan 2014 11:35:50 +0000 (15:35 +0400)]
doc: readline document TTY utils
fix #6933
Scott González [Thu, 23 Jan 2014 14:59:21 +0000 (09:59 -0500)]
doc: fix typo in readline
isaacs [Thu, 23 Jan 2014 21:04:49 +0000 (13:04 -0800)]
npm: Upgrade to v1.3.25
Alexis Campailla [Wed, 22 Jan 2014 16:28:24 +0000 (08:28 -0800)]
test: fix http-incoming-pipelined-socket-destroy
The test was calling server.close() after write on the socket
had completed. However the fact that the write had completed was
not valid indication that the server had received the data.
This would result in a premutaure closing of the server and
an ECONNRESET event on the client.
Alexis Campailla [Thu, 23 Jan 2014 15:10:24 +0000 (07:10 -0800)]
test: fix http-many-ended-pipelines server close
The test was calling server.close() without waiting for the server
to have received all the requests. This would cause an ECONNRESET.
Timothy J Fontaine [Thu, 23 Jan 2014 19:44:32 +0000 (11:44 -0800)]
blog: Post for v0.10.25
Timothy J Fontaine [Thu, 23 Jan 2014 19:44:32 +0000 (11:44 -0800)]
Now working on 0.10.26
Timothy J Fontaine [Thu, 23 Jan 2014 19:44:14 +0000 (11:44 -0800)]
Merge branch 'v0.10.25-release' into v0.10
Timothy J Fontaine [Thu, 23 Jan 2014 05:05:51 +0000 (21:05 -0800)]
src: lint lib/net.js
Timothy J Fontaine [Thu, 23 Jan 2014 05:03:08 +0000 (21:03 -0800)]
2014.01.23, Version 0.10.25 (Stable)
* uv: Upgrade to v0.10.23
* npm: Upgrade to v1.3.24
* v8: Fix enumeration for objects with lots of properties
* child_process: fix spawn() optional arguments (Sam Roberts)
* cluster: report more errors to workers (Fedor Indutny)
* domains: exit() only affects active domains (Ryan Graham)
* src: OnFatalError handler must abort() (Timothy J Fontaine)
* stream: writes may return false but forget to emit drain (Yang Tianyang)
Timothy J Fontaine [Thu, 23 Jan 2014 04:47:12 +0000 (20:47 -0800)]
uv: Upgrade to v0.10.23
Fedor Indutny [Mon, 20 Jan 2014 14:39:05 +0000 (18:39 +0400)]
gyp: fix non-ninja build
isaacs [Mon, 20 Jan 2014 05:13:20 +0000 (21:13 -0800)]
npm: Upgrade to v1.3.24
Timothy J Fontaine [Thu, 16 Jan 2014 22:43:29 +0000 (14:43 -0800)]
blog: nodejs v0.12 roadmap update
Fedor Indutny [Thu, 16 Jan 2014 16:39:12 +0000 (16:39 +0000)]
gyp: fix `ninja` build on linux
fix #6679
Sam Roberts [Wed, 15 Jan 2014 22:40:58 +0000 (14:40 -0800)]
doc: clarify Windows signal sending emulation
Sam Roberts [Thu, 16 Jan 2014 01:16:22 +0000 (17:16 -0800)]
child_process: fix spawn() optional arguments
Spawn's arguments were documented to be optional, as they are for the
other similar child_process APIs, but the code was missing. Result was
`child_process.spawn('node', {})` errored when calling slice() on an
Object, now it behaves as the documentation said it would.
Sam Roberts [Thu, 16 Jan 2014 01:13:32 +0000 (17:13 -0800)]
doc: describe child_process.fork() silent option
Sam Roberts [Thu, 16 Jan 2014 01:12:20 +0000 (17:12 -0800)]
doc: child_process.execFile arguments are optional
Ryan Graham [Thu, 9 Jan 2014 05:19:31 +0000 (21:19 -0800)]
domains: exit() only affects active domains
domain.create().exit() should not clear the domain stack if the domain
instance does not exist within the stack.
Signed-off-by: Trevor Norris <trev.norris@gmail.com>
isaacs [Wed, 15 Jan 2014 17:03:45 +0000 (09:03 -0800)]
blog: TJ is the new node core project lead
Fedor Indutny [Mon, 13 Jan 2014 16:51:57 +0000 (16:51 +0000)]
gyp: fix build with python 2.6
fix #6859
Fedor Indutny [Mon, 13 Jan 2014 16:50:37 +0000 (16:50 +0000)]
deps: update gyp to
1eae492b
Sam Roberts [Thu, 9 Jan 2014 01:16:17 +0000 (17:16 -0800)]
doc: streams must be open to be passed to child
spawn stdio options can be a 'stream', but the following code
fails with "Incorrect value for stdio stream: [object Object]",
despite being a stream. The problem is the test isn't really
for a stream, its for an object with a numeric `.fd` property,
and streams do not have an fd until their async 'open' event
has occurred. This is reasonable, but was not documented.
child_process.spawn('date', [], {stdio: [
'ignore',
fs.createWriteStream('out.txt',{flags:'a'}),
'ignore']})
Alexis Campailla [Mon, 13 Jan 2014 21:16:25 +0000 (13:16 -0800)]
test: close debug client in test-debugger-client
Killing the debuggee without first closing the socket can result
in an ECONNRESET error.
Timothy J Fontaine [Sun, 12 Jan 2014 18:04:21 +0000 (10:04 -0800)]
src: return empty set on ENOSYS for interfaces
If node was compiled with --no-ifaddrs to support older operating
systems, don't throw instead simply return an empty object
Fixes #6846
svenpanne@chromium.org [Fri, 9 Nov 2012 11:30:05 +0000 (11:30 +0000)]
v8: backport codereview.chromium.org/
11362182
Keep the number of descriptors below
DescriptorArray::kMaxNumberOfDescriptors even for accessors
Review URL: https://codereview.chromium.org/
11362182
gluxon [Wed, 1 Jan 2014 21:26:14 +0000 (16:26 -0500)]
doc: Fix argument typo in SimpleProtocol example
Timothy J Fontaine [Thu, 9 Jan 2014 21:33:51 +0000 (13:33 -0800)]
src: OnFatalError handler must abort()
We are in an unrecoverable state if v8 throws a FatalError, actually
ask the operating system to dump core in this case.
Fixes #6836
Lorenz Leutgeb [Mon, 6 Jan 2014 14:29:24 +0000 (15:29 +0100)]
doc: fix typo in cluster page
Timothy J Fontaine [Tue, 7 Jan 2014 22:05:24 +0000 (14:05 -0800)]
uv: Upgrade to v0.10.22
isaacs [Tue, 7 Jan 2014 01:02:07 +0000 (17:02 -0800)]
npm: Upgrade to 1.3.23
ayanamist [Fri, 3 Jan 2014 11:37:16 +0000 (19:37 +0800)]
stream: writes may return false but forget to emit drain
If a write is above the highWaterMark, _write still manages to
fully send it synchronously, _writableState.length will be adjusted down
to 0 synchronously with the write returning false, but 'drain' will
not be emitted until process.nextTick.
If another small write which is below highWaterMark is issued before
process.nextTick happens, _writableState.needDrain will be reset to false,
and the drain event will never be fired.
So we should check needDrain before setting it up, which prevents it
from inproperly resetting to false.
Timothy J Fontaine [Wed, 1 Jan 2014 00:24:58 +0000 (16:24 -0800)]
blog: Post for v0.11.10
Maciej Małecki [Tue, 12 Nov 2013 10:28:44 +0000 (11:28 +0100)]
doc: document that `process.send` is synchronous
Ref #2598
Timothy J Fontaine [Tue, 31 Dec 2013 22:48:20 +0000 (14:48 -0800)]
doc: clarify process on exit safe usage
Ron Korving [Wed, 6 Nov 2013 03:23:35 +0000 (12:23 +0900)]
docs: process.on('exit') receives exit code
The fact that the "exit" event passes the exit code as an argument
as omitted from the documentation. This adds the explanation and
augments the example code to show that.
Timothy J Fontaine [Tue, 31 Dec 2013 19:57:13 +0000 (11:57 -0800)]
test: fix test-cluster-eaccess to work on windows
Fedor Indutny [Fri, 27 Dec 2013 17:20:52 +0000 (21:20 +0400)]
cluster: report more errors to workers
Some errors for listening and binding to a socket were not properly
delivered to workers.
fix #6767
Fedor Indutny [Wed, 18 Dec 2013 14:58:47 +0000 (18:58 +0400)]
deps: update gyp to 828ce09
Dav Glass [Wed, 24 Jul 2013 18:17:28 +0000 (13:17 -0500)]
doc: Fix missing backtick in debugger doc
Lev Gimelfarb [Fri, 27 Dec 2013 19:39:55 +0000 (14:39 -0500)]
build: add settings for VS 2013 to vcbuild.bat
Search for VS2013 compiler 1st, before falling back to older ones. This
allows compiling using the latest VS2013.