Commit Graph

8861 Commits (b8c04b921b626edd4201f805d0feb384c8e91ea7)

Author SHA1 Message Date
Ben Noordhuis 41fc46e52f v8: add setVariableValue debugger command
Issue 2399 part 1: In debugger allow modifying local variable values
Issue 2399 part 2: In debugger allow modifying local variable values

Review URL: https://codereview.chromium.org/11415042
Review URL: https://codereview.chromium.org/11412310

This is a back-port of upstream svn commits r13122 and r13202.
2013-06-17 15:24:45 +02:00
Fedor Indutny 212e9cd8c9 tls: session API returns 2013-06-17 14:00:26 +02:00
isaacs 3c7945bda1 net: Do not destroy socket mid-write
The fix in e0519ace31 is overly zealous,
and can destroy a socket while there are still outstanding writes in
progress.

Closes GH-5688
2013-06-16 19:06:27 -07:00
isaacs 0a4260c8c0 doc: Correct TLS deprecation notices 2013-06-16 18:56:00 -07:00
Ben Noordhuis 0581f5cb60 stream_wrap: fix signed/unsigned comparison warning 2013-06-17 01:23:57 +02:00
Ben Noordhuis 70a75cd41e cares: fix uninitialized variable warning
Suppress the following warning:

  ../../src/cares_wrap.cc: In function ‘v8::Handle<v8::Value>
  node::cares_wrap::SetServers(const v8::Arguments&)’:
  ../../src/cares_wrap.cc:1017:5: warning: ‘uv_ret.uv_err_s::code’
  may be used uninitialized in this function [-Wuninitialized]
2013-06-17 01:22:41 +02:00
Fedor Indutny dc50f27d52 tls: share socket._hadError with http_client 2013-06-16 09:30:15 +02:00
Fedor Indutny af80e7bc6e tls: introduce TLSSocket based on tls_wrap binding
Split `tls.js` into `_tls_legacy.js`, containing legacy
`createSecurePair` API, and `_tls_wrap.js` containing new code based on
`tls_wrap` binding.

Remove tests that are no longer useful/valid.
2013-06-16 09:30:15 +02:00
Fedor Indutny 03e008ddb8 tls_wrap: embed TLS encryption into streamwrap 2013-06-16 09:30:14 +02:00
Fedor Indutny 4c48a39c65 stream_wrap: introduce StreamWrapCallbacks
StreamWrapCallbacks is a helper class for incepting into uv_stream_t*
management process.
2013-06-15 21:44:51 +02:00
Fedor Indutny 6978e998ee process: abstract out HandleToStream
Originally contributed by @tjfontaine, but modified to be faster and
more generic.
2013-06-15 21:44:50 +02:00
Fedor Indutny 0495b7031c crypto: clear error on return in AddCRL 2013-06-15 21:44:50 +02:00
Fedor Indutny 5dd155a3bb crypto: ensure that read head is always non-empty 2013-06-15 21:43:24 +02:00
Ben Noordhuis 10133aaa46 test: add https tls session reuse test
Check that TLS session resumptions work with HTTPS servers.

Regression test for #3901.
2013-06-15 20:35:59 +02:00
isaacs 5613803f8d blog: Add favicon to blog site 2013-06-14 10:26:50 -07:00
isaacs fc71a63baf doc: Remove unnecessary sh script tags 2013-06-14 10:26:50 -07:00
Andrei Sedoi cc517497e6 v8: fix build for mips32r2 architecture
This is a floating patch as a backport from v8 3.15.0
Committed: https://code.google.com/p/v8/source/detail?r=12833
2013-06-14 17:48:33 +02:00
Fedor Indutny 4536b27ac1 crypto: do not deallocate embedded buffer 2013-06-14 17:10:04 +02:00
Fedor Indutny 56d9c48573 crypto: fix excessive buffer allocation
Allocate buffer only if the next one isn't free.
2013-06-14 17:10:04 +02:00
Andrei Sedoi acbdabb74b configure: fix cross-compilation host_arch_cc()
In case of cross-compilation host_arch_cc() function could return
target arch if CC was set to target arch compiler. Host arch
compiler should always be used in this case. This was broken
by commit 707863c.
2013-06-14 16:10:51 +02:00
isaacs 4bca631c1a doc: v0.8.25 changelog entry 2013-06-13 13:22:46 -07:00
isaacs 8765436025 blog: Release v0.8.25 2013-06-13 13:22:07 -07:00
isaacs fc4b4059ff blog: Release 0.10.11 2013-06-13 11:37:18 -07:00
isaacs 17d00f1657 Now working on 0.10.12 2013-06-13 11:37:04 -07:00
isaacs b45489af73 Merge branch 'v0.10.11-release' into v0.10 2013-06-13 11:36:41 -07:00
isaacs d9d5bc4654 2013.06.13, Version 0.10.11 (Stable)
* uv: upgrade to 0.10.11

* npm: Upgrade to 1.2.30

* openssl: add missing configuration pieces for MIPS (Andrei Sedoi)

* Revert "http: remove bodyHead from 'upgrade' events" (isaacs)

* v8: fix pointer arithmetic undefined behavior (Trevor Norris)

* crypto: fix utf8/utf-8 encoding check (Ben Noordhuis)

* net: Fix busy loop on POLLERR|POLLHUP on older linux kernels (Ben Noordhuis, isaacs)
2013-06-13 10:35:30 -07:00
Veres Lajos 9a4e5937ee test: minor typo fixes 2013-06-13 13:33:06 +02:00
Andrei Sedoi 884b25356f openssl: add missing configuration pieces for MIPS 2013-06-13 13:27:58 +02:00
isaacs e8500274e0 Revert "http: remove bodyHead from 'upgrade' events"
This reverts commit a40133d10c.

Unfortunately, this breaks socket.io.  Even though it's not strictly an
API change, it is too subtle and in too brittle an area of node, to be
done in a stable branch.

Conflicts:
	doc/api/http.markdown
2013-06-12 17:45:30 -07:00
Trevor Norris e92f4879eb string_bytes: write strings using new API
StringBytes::Write now uses new v8 API and also does preliminary check
if the string is external, then will use external memory instead.
2013-06-12 14:43:37 -07:00
Trevor Norris 642ea2b668 string_bytes: use external for large strings
When large strings are used they cause v8's GC to spend a lot more time
cleaning up. In these cases it's much faster to use external string
resources.

UTF8 strings do not use external string resources because only one and
two byte external strings are supported.

EXTERN_APEX is the value at which v8's GC overtakes performance.

The following table has the type and buffer size that use to encode the
strings as rough estimates of the percentage of performance gain from
this patch (UTF8 is missing because they cannot be externalized).

encoding  128KB    1MB    5MB
-----------------------------
ASCII       58%   208%   250%
HEX         15%    74%    86%
BASE64      11%    74%    71%
UCS2         2%   225%   398%
BINARY    2234%  1728%  2305%

BINARY is so much faster across the board because of using the new v8
WriteOneByte API.
2013-06-12 14:43:24 -07:00
Ben Noordhuis 48476273eb uv: upgrade to 0.10.11 2013-06-12 22:10:39 +02:00
isaacs 49d9ad9d81 npm: Upgrade to 1.2.30 2013-06-12 10:59:44 -07:00
Trevor Norris 87624ab911 string_bytes: implement new v8 API
v8 has a new API to write out strings to memory. This has been
implemented.

One other change of note is BINARY encoded strings have a new
implementation. This has improved performance substantially.
2013-06-11 15:42:50 -07:00
Trevor Norris 45a08cb216 lint: add mising isolates and minor style fixes 2013-06-11 15:42:49 -07:00
Ben Noordhuis 3b0a759b6b test: fix up weakref.cc after v8 api change 2013-06-12 00:24:41 +02:00
Ben Noordhuis 393d33e7ea src: upgrade after v8 api change
The prototype of v8::Persistent<T>::MakeWeak() has changed. Update the
code in src/ to follow suit.
2013-06-12 00:07:28 +02:00
Ben Noordhuis 2dbc5ea1b4 v8: reapply floating patches 2013-06-11 23:46:13 +02:00
Ben Noordhuis 6dd78074a3 v8: upgrade to v3.19.13 2013-06-11 23:46:00 +02:00
Trevor Norris 5d4ac272c7 v8: fix pointer arithmetic undefined behavior
Clang branch release_33 would optimize out a != NULL check because of
some undefined behavior. This is a floating patch as a backport of that
fix.

Committed: http://code.google.com/p/v8/source/detail?r=13570
2013-06-11 14:39:25 -07:00
Ben Noordhuis 82b3524bce crypto: fix utf8/utf-8 encoding check
Normalize the encoding in getEncoding() before using it. Fixes a
"AssertionError: Cannot change encoding" exception when the caller
mixes "utf8" and "utf-8".

Fixes #5655.
2013-06-11 13:07:24 +02:00
Fedor Indutny 9ae1d182ba crypto: free excessive memory in NodeBIO
Before this commit NodeBIO never shrank, possibly consuming a lot of
memory (depending on reader's haste).

All buffers between write_head's child and read_head should be
deallocated on read, leaving only space left in write_head and in the
next buffer.
2013-06-08 15:40:57 +04:00
Ben Noordhuis 4bb4f734b3 src: unexport node_isolate
Commit 0bba5902 accidentally (or maybe erroneously) added node_isolate
to src/node.h and src/node_object_wrap.h.

Undo that, said variable is not for public consumption. Add-on authors
should use v8::Isolate::GetCurrent() instead.

I missed that while reviewing. Mea culpa.

Fixes #5639.
2013-06-07 17:01:16 +02:00
Timothy J Fontaine f1b878cafa build: add pkgsrc rule 2013-06-06 15:35:59 -07:00
isaacs 4d13fcf481 npm: Upgrade to 1.2.27 2013-06-06 14:44:48 -07:00
isaacs 0882a75063 Merge remote-tracking branch 'ry/v0.10'
Conflicts:
	ChangeLog
	deps/uv/AUTHORS
	deps/uv/ChangeLog
	deps/uv/src/unix/linux-core.c
	deps/uv/src/version.c
	deps/uv/src/win/timer.c
	lib/url.js
	src/node_version.h
	test/simple/test-url.js
2013-06-05 13:38:38 -07:00
isaacs e0519ace31 net: Destroy when not readable and not writable
This is only relevant for CentOS 6.3 using kernel version 2.6.32.

On other linuxes and darwin, the `read` call gets an ECONNRESET in that
case.  On sunos, the `write` call fails with EPIPE.

However, old CentOS will occasionally send an EOF instead of a
ECONNRESET or EPIPE when the client has been destroyed abruptly.

Make sure we don't keep trying to write or read more in that case.

Fixes #5504

However, there is still the question of what libuv should do when it
gets an EOF.  Apparently in this case, it will continue trying to read,
which is almost certainly the wrong thing to do.

That should be fixed in libuv, even though this works around the issue.
2013-06-05 08:06:35 -07:00
isaacs 6ada73383c Now working on v0.10.11 2013-06-04 14:38:41 -07:00
isaacs 59c8f59171 blog: Release v0.10.10 2013-06-04 14:38:29 -07:00
isaacs fe0434ce1e Merge branch 'v0.10.10-release' into v0.10 2013-06-04 14:38:10 -07:00