Commit Graph

6740 Commits (aa0650f4444c438d9538135a3707de3f2f313081)

Author SHA1 Message Date
Ben Noordhuis aa0650f444 cluster: fix libuv assert in net.listen()
Problem: calling `server.listen()` (no port) on a net.Server triggered the
following libuv assertion:

  node: ../deps/uv/src/unix/stream.c:406: uv__write: Assertion `fd_to_send >= 0'
  failed.

Cause: uv_tcp_t handles are lazily initialized. Omitting the port made the
handle get initialized even more lazily. Too lazily - it wasn't initialized
when the handle was sent over to the child process.

Solution: implicitly bind to a random port in listen() when the port number
is omitted, it forces the handle to initialize. This is not a change in
behavior, listen() has always been identical to listen(0).

Fixes #3325.
2012-07-29 02:07:16 +02:00
Ben Noordhuis 879d329a5a deps: upgrade libuv to 4fe1916 2012-07-28 16:50:55 +02:00
Ben Noordhuis d559bed0d5 node: use variadic functions in ev-emul.h
Fixes #3786.
2012-07-28 14:10:13 +02:00
Trent Mick f70b138fcb always link sunos builds with libumem 2012-07-27 11:03:26 -07:00
Adam Malcontenti-Wilson 90efdb3a5b build: improve armv7 / hard-float detection 2012-07-26 23:38:34 +02:00
isaacs b0c0111b04 https: Use host header as effective servername 2012-07-25 13:38:43 -07:00
Nathan Rajlich 9eddaebb79 assert: remove unnecessary use of __proto__
AssertionError already inherits from Error above using util.inherits(),
so this extra line was redundant.

test/simple/test-assert.js already tests for `instanceof`, and still passes.
2012-07-25 10:41:08 -07:00
isaacs b207e24bcd Blog post for 0.8.4 2012-07-25 10:38:41 -07:00
isaacs 3d34590fba Now working on v0.8.5 2012-07-25 10:28:03 -07:00
isaacs 32141844f1 Merge branch 'v0.8.4-release' into v0.8 2012-07-25 10:26:03 -07:00
isaacs 8656c2654e Fix #3761 build: Default to V=1 2012-07-25 10:25:37 -07:00
isaacs f98562fcd7 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)
2012-07-24 17:06:58 -07:00
isaacs 7fd3cb666b Build: add jslintfix 2012-07-24 17:06:57 -07:00
isaacs 5809426d75 net.js: lint 2012-07-24 17:05:31 -07:00
Ben Noordhuis 1513848f88 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.
2012-07-24 15:53:22 -07:00
isaacs e4c9c9f412 readline: Remove event listeners on close
Fix #3756
2012-07-24 15:36:53 -07:00
isaacs 2c487669f7 v8: Reapply floating patches 2012-07-24 14:19:50 -07:00
isaacs f4f0daa44d V8: Upgrade to 3.11.10.17 2012-07-24 14:18:47 -07:00
isaacs 0a0002b480 npm: Upgrade to 1.1.45
This includes node-gyp 0.6.1
2012-07-24 12:34:13 -07:00
Bert Belder 43a0c88116 windows: correctly prep long path for fs.exists(Sync)
Closes GH-3739
2012-07-23 13:55:42 +02:00
Peter Rybin 688859afc0 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
2012-07-23 13:15:51 +02:00
Brian White e06b5d7af7 http: remove duplicate assignments
Closes GH-3754
2012-07-23 11:35:52 +02:00
koichik bc30c90af6 doc: remove duplicate section
Fixes #3750.
2012-07-22 02:33:06 +09:00
Fedor Indutny 42c6952edb tls: pass linting 2012-07-20 22:07:39 +04:00
Fedor Indutny 50122fed8a tls: fix 'hostless' tls connection verification
And fix last failing tests
2012-07-20 21:43:12 +04:00
Fedor Indutny 5950db197c tls: revert accidental API change
socket.authorizationError should always be string. Also make sni test
pass.
2012-07-20 21:10:23 +04:00
Fedor Indutny 4aa09d1e0e tls: localhost is valid against identity-check 2012-07-20 20:51:38 +04:00
Fedor Indutny e43fe5c833 Revert "http/https: pass request to .createConnection()"
This reverts commit 53716eb0b5.
2012-07-20 20:51:02 +04:00
Fedor Indutny eb2ca10462 tls: veryify server's identity 2012-07-20 01:49:31 +04:00
Fedor Indutny 53716eb0b5 http/https: pass request to .createConnection()
It's useful for passing some additional options of request object to the
underlying API
2012-07-20 01:49:30 +04:00
Fedor Indutny 1fa0bca2ad net: ignore socket.setTimeout(Infinity) (and NaN) 2012-07-20 01:49:30 +04:00
isaacs d9057cc090 npm: Upgrade to 1.1.44 2012-07-19 13:03:28 -07:00
isaacs f6484842b3 Blog post about v0.8.3 2012-07-19 10:20:44 -07:00
isaacs 02ff9741cc Now working on 0.8.4 2012-07-19 10:19:45 -07:00
isaacs 4439f7b879 Merge branch 'v0.8.3-release' into v0.8 2012-07-19 10:19:04 -07:00
isaacs 60bf2d6cb3 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)
2012-07-19 10:01:56 -07:00
isaacs 0c91b0e48e uv: Upgrade to 94355e4 2012-07-19 09:33:02 -07:00
isaacs 845b9e92d8 uv: Upgrade to 94355e4 2012-07-19 09:32:46 -07:00
Ben Noordhuis b2648934f0 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.
2012-07-19 18:20:34 +02:00
Ben Noordhuis 5a5e128165 build: link with -rdynamic, not -Wl,--export-dynamic
The system linker on SunOS doesn't understand --export-dynamic.
2012-07-19 00:08:37 +02:00
Ben Noordhuis 98b1ce91f6 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.
2012-07-18 23:26:00 +02:00
Ben Noordhuis beb7425c18 doc: build requires GNU make 3.81+ 2012-07-18 14:23:39 +02:00
Ben Noordhuis f6f2d42ee9 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.
2012-07-18 13:56:09 +02:00
Ben Noordhuis e8af340557 doc: advise *strongly* against uncaughtException 2012-07-18 03:46:39 +02:00
isaacs e1fb7b76e9 uv: Upgrade to b49d6f7 2012-07-17 17:09:34 -07:00
Dave Pacheco 648fdc56a0 tools: speed up genv8constants
genv8constants was much slower than necessary due to lack of pipe buffering.
2012-07-18 00:56:02 +02:00
isaacs 868ffed77c v8: Reapply floating patches 2012-07-17 11:44:01 -07:00
isaacs a0a0062d61 v8: upgrade to 3.11.10.15 2012-07-17 11:43:02 -07:00
isaacs 7397ab2cf1 uv: Upgrade to a9f6f06 2012-07-17 11:40:13 -07:00
isaacs c383befd25 npm: Upgrade to 1.1.43 2012-07-17 11:37:39 -07:00