summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'upstream/v0.12'merge-reviewJulien Gilli2015-03-16305-980/+2304
|\
| * Merge remote-tracking branch 'upstream/v0.10' into v0.12Julien Gilli2015-03-166-33/+93
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: AUTHORS ChangeLog deps/uv/ChangeLog deps/uv/build.mk deps/uv/config-unix.mk deps/uv/include/uv-private/uv-win.h deps/uv/src/unix/async.c deps/uv/src/unix/process.c deps/uv/src/version.c deps/uv/src/win/poll.c deps/uv/test/test-list.h deps/uv/uv.gyp lib/http.js src/node.js src/node_version.h
| | * Now working on 0.10.38Julien Gilli2015-03-111-2/+2
| | |
| | * Merge branch 'v0.10.37-release' into v0.10Julien Gilli2015-03-113-2/+21
| | |\
| | | * 2015.03.11, Version 0.10.37 (Maintenance)v0.10.37v0.10.37-releaseJulien Gilli2015-03-113-2/+21
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * uv: update to 0.10.36 (CVE-2015-0278) * domains: fix stack clearing after error handled (Jonas Dohse) * buffer: reword Buffer.concat error message (Chris Dickinson) * console: allow Object.prototype fields as labels (Julien Gilli) * V8: log version in profiler log file (Ben Noordhuis) * http: fix performance regression for GET requests (Florin-Cristian Gavrila)
| | * build: allow custom PackageMaker pathJulien Gilli2015-03-111-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Make PACKAGEMAKER customizable because PackageMaker is not necessarily installed in /Developer on OSX anymore. PR: #9377 PR-URL: https://github.com/joyent/node/pull/9377 Reviewed-By: Timothy J Fontaine <tjfontaine@gmail.com>
| | * domains: fix stack clearing after error handledJonas Dohse2015-03-102-7/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | caeb67735baa8e069902e23f21d01033907c4f33 introduced a regression where the domains stack would not be cleared after an error had been handled by the top-level domain. This change clears the domains stack regardless of the position of the active domain in the stack. PR: #9364 PR-URL: https://github.com/joyent/node/pull/9364 Reviewed-By: Trevor Norris <trev.norris@gmail.com> Reviewed-By: Julien Gilli <julien.gilli@joyent.com>
| | * docs: add return value for sync fs functionsTyler Anton2015-03-101-22/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clarify that synchronous functions in fs with no return value return undefined. Specify that fs.openSync() returns an integer and fs.existsSync() returns true or false. Fixes #9313 PR: #9359 PR-URL: https://github.com/joyent/node/pull/9359 Reviewed-By: Julien Gilli <julien.gilli@joyent.com>
| | * url: revert reslove urls with . and ..Julien Gilli2015-03-062-10/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit ad0684807c474db5cda7d28592e34e19910eb7ab. Initially, this bug fix targeted master, and I pushed to have it included in v0.10. In retrospect, I'm not sure it should have made into v0.10 as it seems it could break a lot of existing working code. In my opinion, this change is still a bug fix, and it is not backward incompatible per se. However, I'm not sure that taking the risk to break a lot of users with a new 0.10.x release that would include this fix is reasonable, especially now that 0.10.x releases are entering maintenance mode. PR-URL: https://github.com/joyent/node/pull/9257 Reviewed-by: Trevor Norris <trev.norris@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
| | * deps: update libuv to 0.10.36Saúl Ibarra Corretgé2015-03-0626-105/+595
| | | | | | | | | | | | | | | | | | PR: #9274 PR-URL: https://github.com/joyent/node/pull/9274 Reviewed-By: Julien Gilli <julien.gilli@joyent.com>
| | * http: fix performance regression for GET requestsFlorin-Cristian Gavrila2015-03-051-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A significant performance regressions has been introduced in 1fddc1f for GET requests which send data through response.end(). The number of requests per second dropped to somewhere around 6% of their previous level. The fix consists of removing a part of the lines added by 1fddc1f, lines which were supposed to affect only HEAD requests, but interfered with GET requests instead. The lines removed would not have affected the behaviour in the case of a HEAD request as this._hasBody would always be false. Therefore, they were not required to fix the issue reported in #8361. Fixes #8940. PR: #9026 PR-URL: https://github.com/joyent/node/pull/9026 Reviewed-By: Julien Gilli <julien.gilli@joyent.com>
| * | make: remove node_dtrace from cpplint excludesJulien Gilli2015-03-132-8/+5
| | | | | | | | | | | | | | | Reviewed-By: Fedor Indutny <fedor@indutny.com> PR-URL: https://github.com/joyent/node/pull/8741
| * | test: update flaky test definitionsAlexis Campailla2015-03-131-0/+1
| | | | | | | | | | | | test-fs-watch is flaky on OSX.
| * | buffer: align chunks on 8-byte boundaryFedor Indutny2015-03-111-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When slicing global pool - ensure that the underlying buffer's data ptr is 8-byte alignment to do not ruin expectations of 3rd party C++ addons. NOTE: 0.10 node.js always returned aligned pointers and v0.12 should do this too for compatibility. PR-URL: https://github.com/joyent/node/pull/9375 Reviewed-By: Trevor Norris <trev.norris@gmail.com>
| * | deps: upgrade npm to 2.7.0Forrest L Norvell2015-03-06291-906/+2102
| | | | | | | | | | | | | | | | | | PR: #9347 PR-URL: https://github.com/joyent/node/pull/9347 Reviewed-By: Julien Gilli <julien.gilli@joyent.com>
| * | net: allow port 0 in connect()cjihrig2015-03-054-33/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The added validation allows non-negative numbers and numeric strings. All other values result in a thrown exception. Fixes: https://github.com/joyent/node/issues/9194 PR-URL: https://github.com/joyent/node/pull/9268 Reviewed-By: Julien Gilli <julien.gilli@joyent.com> Reviewed-By: Trevor Norris <trev.norris@gmail.com> Reviewed-By: James M Snell <jasnell@users.noreply.github.com>
* | | doc: fix '\\' typos on WindowsSteven Vercruysse2015-03-161-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | This commit changes the Windows examples in path.markdown to correctly display '\\'. PR-URL: https://github.com/joyent/node/pull/9412 Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
* | | net: use cached peername to resolve remote fieldsJames Hartig2015-03-162-3/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | Allows socket.remote* properties to still be accessed even after the socket is closed. Fixes: https://github.com/joyent/node/issues/9287 PR-URL: https://github.com/joyent/node/pull/9366 Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
* | | Merge remote-tracking branch 'upstream/v0.12'Julien Gilli2015-03-04199-307/+1578
|\ \ \ | |/ /
| * | Merge remote-tracking branch 'upstream/v0.10' into v0.12Julien Gilli2015-03-041-1/+1
| |\ \ | | |/ | | | | | | | | | Conflicts: lib/buffer.js
| | * buffer: reword Buffer.concat error messageChris Dickinson2015-03-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this brings the error messaging in line with other node TypeError messages. fixes joyent/node#7766. PR: #8723 PR-URL: https://github.com/joyent/node/pull/8723 Reviewed-By: James M Snell <jasnell@users.noreply.github.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
| * | deps: upgrade npm to 2.6.1Forrest L Norvell2015-03-03197-305/+1573
| | | | | | | | | | | | | | | | | | | | | | | | PR: #9297 PR-URL: https://github.com/joyent/node/pull/9297 Reviewed-By: Julien Gilli <julien.gilli@joyent.com> Reviewed-By: Trevor Norris <trev.norris@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
| * | tests: fix race in test-http-curl-chunk-problemJulien Gilli2015-03-031-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This test setups two event listeners: one on a child process' exit event , another for the same child process' stdandard output's 'data' event. The data even listener writes to a stream, and the exit event listener ends it. Because the exit event can be emitted before the data event, there is a chance that something will be written to the stream after it's ended, and that an error is thrown. This change makes the test end the stream in the listener for the child process' standard output's end event, which is guaranteed to be emitted after the last data event, thus avoiding the race. PR: #9301 PR-URL: https://github.com/joyent/node/pull/9301 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com> Reviewed-By: James M Snell <jasnell@users.noreply.github.com> Reviewed-By: Bert Belder <bertbelder@gmail.com>
* | | src: enable strict mode in all builtin modulesJulien Gilli2015-03-0351-0/+103
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a follow-up commit for b233131901dea47132b0748d8e4d6bfcbba28abe. It enables strict mode in all built-in modules. PR: #9302 PR-URL: https://github.com/joyent/node/pull/9302 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Trevor Norris <trev.norris@gmail.com>
* | | Merge remote-tracking branch 'upstream/v0.12'Julien Gilli2015-02-2716-46/+290
|\ \ \ | |/ /
| * | Merge remote-tracking branch 'upstream/v0.10' into v0.12Julien Gilli2015-02-270-0/+0
| |\ \ | | |/ | | | | | | | | | | | | Conflicts: lib/console.js test/simple/test-console.js
| | * console: allow Object.prototype fields as labelsJulien Gilli2015-02-172-15/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a backport of 6c3647c38d73f729ce85633a0440cd939d93dea2 from v0.12 to v0.10. Console.prototype.timeEnd() returns NaN if the timer label corresponds to a property on Object.prototype. In v0.12, this was fixed by using Object.create(null) to construct the _times object However, the version of V8 in the v0.10 branch makes this fix not work as expected. In v0.10, this commit changes the _times object into a array of objects of the form: { label: someLabel, time: staringWallClockTime } someLabel can thus be any string, including any string that represents any Object.prototype field. Fixes #9116. PR: #9215 PR-URL: https://github.com/joyent/node/pull/9215 Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
| * | src: fix builtin modules failing with --use-strictJulien Gilli2015-02-274-21/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, lib/_tls_legacy.js and lib/crypto.js cannot be loaded when --use-strict is passed to node. In addition to that, console.trace throws because it uses arguments.callee. This change fixes these issues and adds a test that makes sure every external built-in module can be loaded with require when --use-strict is enabled. Please note that this change does not fix all issues with built-in modules' code running with --use-strict. It is very likely that some code in the built-in modules still fails when passing this flag. However, fixing all code would require us to enable strict mode by default in all builtins modules, which would certainly break existing applications. Fixes #9187. PR: #9237 PR-URL: https://github.com/joyent/node/pull/9237 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Trevor Norris <trev.norris@gmail.com>
| * | test: make destroyed-socket-write2.js more robustMichael Dawson2015-02-271-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | test/simple/test-http-destroyed-socket-write2.js validates that you get an appropriate error when trying to write to a request when the response on the other side has been destroyed. The test uses http.request to get a request and then keeps writing to it until either it hits 128 writes or gets the expected error. Since the writes are asynchronous we see that the writes just end up adding events to the event loop, which then later get processed once the connection supporting the request is fully ready. The test is timing dependent and if takes too long for the connection to be made the limit of 128 writes is exceeded and the test fails. The fact that the test allows a number of writes is probably to allow some delay for the connection to be ready for writing. On AIX, in the default configuration using the loopback interface is slower and the test fails because the delay is such that many more writes can be queued up before the connection takes place. If we use the host ip instead of defaulting to the loopback then the test passes. The test needs to be made more robust to delays. Since each write simply enqueues an additional write to the event queue there is probably no point in doing the second write until the first has completed. This patch schedules the next write when the first one completes and allows the test to pass even if it takes longer for the connection to be ready for writing PR-URL: https://github.com/joyent/node/pull/9270 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Timothy J Fontaine <tjfontaine@gmail.com>
| * | doc: add explanations for querystringRobert Kowalski2015-02-251-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | - add an article: `decode a non-utf8 string` - explain default and fallback behaviour of `querystring.unescape` PR-URL: https://github.com/joyent/node/pull/9259 Reviewed-by: Julien Gilli <julien.gilli@joyent.com>
| * | doc: fix default value of opts.decodeURIComponenth7lin2015-02-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the documentation for querystring.parse, the documentation mentions that the default value for options.decodeURIComponent is the decodeURIComponent function, but it's actually the querystring.unescape function. PR-URL: https://github.com/joyent/node/pull/9259 Reviewed-by: Julien Gilli <julien.gilli@joyent.com>
| * | doc: remove broken link to tracing apiRobert Kowalski2015-02-241-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | closes joyent/node-website#77 PR: #9172 PR-URL: https://github.com/joyent/node/pull/9172 Reviewed-By: Julien Gilli <julien.gilli@joyent.com>
| * | deps: backport a02d97e from v8 upstreamAndrei Sedoi2015-02-201-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message: Fix --max_old_space_size=4096 integer overflow. BUG=v8:3857 LOG=N Review URL: https://codereview.chromium.org/897543002 Cr-Commit-Position: refs/heads/master@{#26510} PR-URL: https://github.com/joyent/node/pull/9200 Reviewed-by: Trevor Norris <trev.norris@gmail.com> Reviewed-by: Julien Gilli <julien.gilli@joyent.com>
| * | smalloc: extend user APITrevor Norris2015-02-205-7/+137
| | | | | | | | | | | | | | | | | | | | | | | | | | | node::Environment isn't accessible to user APIs, so extend smalloc to also accept v8::Isolate. Fixes: 75adde07 "src: remove `node_isolate` from source" PR-URL: https://github.com/iojs/io.js/pull/905 Reviewed-by: Fedor Indutny <fedor@indutny.com>
| * | net: unref timer in parent socketsFedor Indutny2015-02-193-9/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `TLSSocket` wraps the original `net.Socket`, but writes/reads to/from `TLSSocket` do not touch the timers of original `net.Socket`. Introduce `socket._parent` property, and iterate through all parents to unref timers and prevent timeout event on original `net.Socket`. Fix: https://github.com/joyent/node/issues/9242 PR-URL: https://github.com/iojs/io.js/pull/891 Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
| * | fs: properly handle fd passed to truncate()Bruno Jouhier2015-02-173-4/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, fs.truncate() silently fails when a file descriptor is passed as the first argument. This commit changes this behavior to properly call fs.ftruncate(). PR-URL: https://github.com/joyent/node/pull/9161 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Timothy J Fontaine <tjfontaine@gmail.com>
* | | dgram: implicit binds should be exclusiveSam Roberts2015-02-173-1/+106
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Server sockets should be shared by default, and client sockets should be exclusive by default. For net/TCP, this is how it is, for dgram/UDP, its a little less clear what a client socket is, but a socket that is auto-bound during a dgram.send() is not usefully shared among cluster workers, any more than an outgoing TCP connection would be usefully shared. Since implicit binds become exclusive, implicit/client dgram sockets can now be used with cluster on Windows. Before, neither explicit nor implicitly bound sockets could be used, causing dgram to be completely unsupported with cluster on Windows. After this change, they become half supported. PR: https://github.com/joyent/node/pull/8643 Reviewed-by: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-by: Bert Belder <bertbelder@gmail.com> Reviewed-by: Julien Gilli <julien.gilli@joyent.com>
* | | fs: properly handle fd passed to truncate()Bruno Jouhier2015-02-173-5/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, fs.truncate() silently fails when a file descriptor is passed as the first argument. This commit changes this behavior to properly call fs.ftruncate(). This commit also adds proper type checking to the callback provided to makeCallback(). PR-URL: https://github.com/joyent/node/pull/9161 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Timothy J Fontaine <tjfontaine@gmail.com>
* | | src: update AUTHORS after merge of v0.12 in masterJulien Gilli2015-02-161-0/+1
| | |
* | | Merge remote-tracking branch 'upstream/v0.12'Julien Gilli2015-02-16546-13315/+17366
|\ \ \ | |/ / | | | | | | | | | Conflicts: src/node_version.h
| * | src: update AUTHORS after mergeJulien Gilli2015-02-161-0/+4
| | |
| * | deps: do not add extra newline in log fileJulien Gilli2015-02-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The commit in v0.10 (431eb172f97434a3b0868a610bc14d8ff7d9efd9) that backported the original change (https://codereview.chromium.org/806143002) did add an extra newline because the logging facilities in v0.10's V8 do not add one. When merging this commit in v0.12, V8's logging facilities now automatically add the newline character, and the debug builds assert if one is already present.
| * | deps: add test for V8 version in profiler's logJulien Gilli2015-02-161-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 431eb172f97434a3b0868a610bc14d8ff7d9efd9 had integrated the addition of V8's version in V8's profiler log files, without backporting the test that was included in the original change (https://codereview.chromium.org/806143002). This commit backports this test. The newly added test was tested with https://github.com/joyent/node/pull/9208.
| * | Merge remote-tracking branch 'upstream/v0.10' into v0.12Julien Gilli2015-02-163-2/+19
| |\ \ | | |/ | | | | | | | | | Conflicts: deps/v8/src/log-utils.cc
| | * url: reslove urls with . and ..Amir Saboury2015-02-092-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | '.' and '..' are directory specs and resolving urls with or without the hostname with '.' and '..' should add a trailing slash to the end of the url. Fixes: https://github.com/joyent/node/issues/8992 PR-URL: https://github.com/joyent/node/pull/9010 Reviewed-by: Trevor Norris <trev.norris@gmail.com>
| | * deps: log V8 version in profiler log fileBen Noordhuis2015-02-041-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Patch from issue 800293002 authored by ben@strongloop.com Review URL: https://codereview.chromium.org/806143002 PR-URL: https://github.com/joyent/node/pull/9043 Reviewed-by: Trevor Norris <trev.norris@gmail.com> Reviewed-By: Timothy J Fontaine <tjfontaine@gmail.com>
| * | buffer: fix pool offset adjustmentTrevor Norris2015-02-161-1/+3
| | | | | | | | | | | | | | | | | | | | | If the Buffer allocation isn't a slice then there's no need to adjust the pool offset after realloc'ing the space available. Fixes: 6462519 "buffer, doc: misc. fix and cleanup"
| * | console: allow Object.prototype fields as labelscjihrig2015-02-132-10/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Console.prototype.timeEnd() returns NaN if the timer label corresponds to a property on Object.prototype. This commit uses Object.create(null) to construct the _times object. Fixes: https://github.com/joyent/node/issues/9069 PR-URL: https://github.com/joyent/node/pull/9116 Reviewed-By: Trevor Norris <trev.norris@gmail.com>
| * | module: replace NativeModule.requireHerbert Vojčík2015-02-121-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The NativeModule system passes NativeModule.require transparently and so is unnecessary to call explicitly. The only one which should have the prefix is the in line 295, where actually implements a big fs-based module system and actually requires a native module. That is left unchanged. PR-URL: https://github.com/joyent/node/pull/9201 Ref: https://github.com/joyent/node/issues/2009 Reviewed-by: Trevor Norris <trev.norris@gmail.com>
| * | doc: fix code syntaxDan Dascalescu2015-02-121-1/+1
| | | | | | | | | | | | | | | | | | | | | Add a ';' to the end of a function call in documentation. PR-URL: https://github.com/joyent/node/pull/9198 Reviewed-by: Trevor Norris <trev.norris@gmail.com>