- Mar 20, 2016
-
-
Rich Trott authored
Asynchronous functions in `zlib` should not emit the close event. This fixes an issue where asynchronous calls in a for loop could exhaust memory because the pending event prevents the objects from being garbage collected. Fixes: https://github.com/nodejs/node/issues/1668 PR-URL: https://github.com/nodejs/node/pull/5707 Reviewed-By:
jasnell - James M Snell <jasnell@gmail.com> Reviewed-By:
trevnorris - Trevor Norris <trev.norris@gmail.com> Reviewed-By:
Сковорода Никита Андреевич <chalkerx@gmail.com>
-
- Mar 19, 2016
-
-
Ali Ijaz Sheikh authored
When the previous set of changes (bfff07b4) it was possible to have the context get garbage collected while sandbox was still live. We need to tie the lifetime of the context to the lifetime of the sandbox. Fixes: https://github.com/nodejs/node/issues/5768 PR-URL: https://github.com/nodejs/node/pull/5786 Reviewed-By:
jasnell - James M Snell <jasnell@gmail.com> Reviewed-By:
cjihrig - Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
trevnorris - Trevor Norris <trev.norris@gmail.com> Reviewed-By:
bnoordhuis - Ben Noordhuis <info@bnoordhuis.nl>
-
Anna Henningsen authored
Buffers instances can have arbitrary alignment. `node-ffi` depends on this. Add some regression tests to ensure we don't break this in the future. PR-URL: https://github.com/nodejs/node/pull/5752 Reviewed-By:
trevnorris - Trevor Norris <trev.norris@gmail.com> Reviewed-By:
bnoordhuis - Ben Noordhuis <info@bnoordhuis.nl>
-
Ali Ijaz Sheikh authored
Recent phantom weakness API changes to buffer, ebbbc5a7, ending up introducing an alignment restriction on the native buffer pointers. It turns out that there are uses in the modules ecosystem that rely on the ability to create buffers with unaligned pointers (e.g. node-ffi). It turns out there is a simpler solution possible here. As a side effect this also removes the need to have to reserve the first internal field on buffers. PR-URL: https://github.com/nodejs/node/pull/5752 Reviewed-By:
trevnorris - Trevor Norris <trev.norris@gmail.com> Reviewed-By:
bnoordhuis - Ben Noordhuis <info@bnoordhuis.nl>
-
Jarrett Widman authored
The need for an overview of blocking vs non-blocking was identified in the docs WG Q1 roadmap. As there are several topics also pending creation, this one tries to hit the correct level of detail based on completion of the others. One which is referenced is https://github.com/nodejs/node/pull/4936/files and URLs within this PR need to change based on where that will land on the node website. PR-URL: https://github.com/nodejs/node/pull/5326 Reviewed-By:
Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Stephen Belanger <admin@stephenbelanger.com>
-
Matt Loring authored
test-repl-tab-complete includes tests that ensure that certain keys do not appear in tab completions or that completion does not crash the repl. It performed these tests by comparing completion output to a hardcoded list of expected keys. This list is made incorrect by any api changes that occur when new versions of V8 are introduced. With this change, we assert that the specific keys to be avoided are not present in the output instead. PR-URL: https://github.com/nodejs/node/pull/5772 Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com>
-
Prince J Wesley authored
Enable support for standalone block statements. ```js node
🙈 ₹ git:(upstream⚡ bare-block) ./node > { var x = 3; console.log(x); } 3 undefined > {} {} > { x:1, y:"why not", z: function() {} } { x: 1, y: 'why not', z: [Function] } > ``` For the ambiguous inputs like `{ x }`, the existing REPL behaviour (ES6 literal shorthand) is preserved (prefers expression over statement). Fixes: https://github.com/nodejs/node/issues/5576 PR-URL: https://github.com/nodejs/node/pull/5581 Reviewed-By:James M Snell <jasnell@gmail.com> Reviewed-By:
Evan Lucas <evanlucas@me.com>
-
James M Snell authored
Now that the Buffer.alloc, allocUnsafe, and from methods have landed, add a linting rule that requires their use within lib. Tests and benchmarks are explicitly excluded by the rule. PR-URL: https://github.com/nodejs/node/pull/5740 Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com>
-
Brian White authored
This commit improves setImmediate() performance by moving the try-finally block that wraps callback execution into a separate function because currently v8 never tries to optimize functions that contain try-finally blocks. With this change, there is a ~20-40% improvement in the included setImmediate() depth benchmarks. The breadth benchmarks show a slight improvement. PR-URL: https://github.com/nodejs/node/pull/4169 Reviewed-By:
Minwoo Jung <jmwsoft@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Jeremiah Senkpiel <fishrock123@rocketmail.com>
-
Lance Ball authored
This commit addresses https://github.com/nodejs/node/issues/5431 by changing the way that the repl handles assignment to the global _ variable. Prior to this commit, node sets the result of the last expression evaluated in the repl to `_`. This causes problems for users of underscore, lodash and other packages where it is common to assign `_` to the package, e.g. `_ = require('lodash');`. Changes in this commit now result in the following behavior. - If unassigned on the repl, `_` continues to refer to the last evaluated expression. - If assigned, the default behavior of assigning `_` to the last evaluated expression is disabled, and `_` now references whatever value was explicitly set. A warning is issued on the repl - 'expression assignment to _ now disabled'. - If `_` is assigned multiple times, the warning is only displayed once. - When `.clear` is executed in the repl, `_` continues to refer to its most recent value, whatever that is (this is per existing behavior). If `_` had been explicitly set prior to `.clear` it will not change again with the evaluation of the next expression. PR-URL: https://github.com/nodejs/node/pull/5535 Fixes: https://github.com/nodejs/node/issues/5431 Reviewed-By:
Roman Reiss <me@silverwind.io> Reviewed-By:
James M Snell <jasnell@gmail.com>
-
Sakthipriyan Vairamani authored
PR-URL: https://github.com/nodejs/node/pull/5765 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com>
-
Andrea Giammarchi authored
The string template was closed after `${buf.length}` causing a syntax error within the example. PR-URL: https://github.com/nodejs/node/pull/5781 Reviewed-By:Michaël Zasso <mic.besace@gmail.com> Reviewed-By:
Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com>
-
HUANG Wei authored
Previously, we emitted ip and addressType. This change includes the host as the last argument to the lookup event. PR-URL: https://github.com/nodejs/node/pull/5598 Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Evan Lucas <evanlucas@me.com>
-
- Mar 18, 2016
-
-
Brian White authored
This commit makes input type checking consistent across all path functions. PR-URL: https://github.com/nodejs/node/pull/5348 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Roman Reiss <me@silverwind.io>
-
Brian White authored
PR-URL: https://github.com/nodejs/node/pull/5500 Reviewed-By:
Shigeki Ohtsu <ohtsu@iij.ad.jp>
-
Alexis Campailla authored
Ref: https://github.com/nodejs/node/issues/3804 PR-URL: https://github.com/nodejs/node/pull/5167 Reviewed-By:
rvagg - Rod Vagg <rod@vagg.org> Reviewed-By:
joaocgreis - João Reis <reis@janeasystems.com>
-
Alexis Campailla authored
Ref: https://github.com/nodejs/node/issues/3804 PR-URL: https://github.com/nodejs/node/pull/5167 Reviewed-By:
rvagg - Rod Vagg <rod@vagg.org> Reviewed-By:
joaocgreis - João Reis <reis@janeasystems.com>
-
Claudio Rodriguez authored
Changes the multiline return example commments in querystring which have the example out-of-comment, into single comment lines to remain consistent with other docs. PR-URL: https://github.com/nodejs/node/pull/5705 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
-
- Mar 17, 2016
-
-
Alexander Penev authored
SSL sockets leak whenever keep alive is enabled, ca option is set in the global agent, and requests are sent without the ca property. In the following case at Agent.prototype.createSocket a socket will be created with a hashtag name that includes data from the global agents’ ca property. On subsequent requests at Agent.prototype.addRequest we do not find the free socket, because the hashtag name generated there does not take into account the global agents’ ca property, thus creating a new socket and leaving the first socket to timeout. closes: #5699 PR-URL: https://github.com/nodejs/node/pull/5713 Reviewed-By:
Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com>
-
Rich Trott authored
The format of certain code comments in the `path` documentation results in the code blocks being invalid. I also find it confusing at least as formatted on the website. This change is intended to improve those comments. PR-URL: https://github.com/nodejs/node/pull/5670 Reviewed-By:
Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Brian White <mscdex@mscdex.net>
-
Rich Trott authored
PR-URL: https://github.com/nodejs/node/pull/5688 Reviewed-By:
Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By:
Claudio Rodriguez <cjrodr@yahoo.com> Reviewed-By:
James M Snell <jasnell@gmail.com> Fixes: https://github.com/nodejs/node/issues/2305
-
Evan Lucas authored
Notable changes: * **contextify**: Fixed a memory consumption issue related to heavy use of `vm.createContext` and `vm.runInNewContext`. (Ali Ijaz Sheikh) https://github.com/nodejs/node/pull/5392 * **governance**: The following members have been added as collaborators: - Andreas Madsen (@AndreasMadsen) - Benjamin Gruenbaum (@benjamingr) - Claudio Rodriguez (@claudiorodriguez) - Glen Keane (@thekemkid) - Jeremy Whitlock (@whitlockjc) - Matt Loring (@matthewloring) - Phillip Johnsen (@phillipj) * **lib**: copy arguments object instead of leaking it (Nathan Woltman) https://github.com/nodejs/node/pull/4361 * **src**: allow combination of -i and -e cli flags (Rich Trott) https://github.com/nodejs/node/pull/5655 * **v8**: backport fb4ccae from v8 upstream (Vladimir Krivosheev) #4231 - breakout events from v8 to offer better support for external debuggers * **zlib**: add support for concatenated members (Kári Tristan Helgason) https://github.com/nodejs/node/pull/5120 PR-URL: https://github.com/nodejs/node/pull/5702
-
Mithun Patel authored
Do not call the linkManPages if the tok type is code Fixes: https://github.com/nodejs/node/issues/5686 PR-URL: https://github.com/nodejs/node/pull/5721 Reviewed-By:
James M Snell <jasnell@gmail.com>
-
Benjamin Gruenbaum authored
Document that util._extend was never intended to be used and should be considered deprecated. PR-URL: https://github.com/nodejs/node/pull/4903 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Roman Reiss <me@silverwind.io>
-
Felix Böhm authored
Fixes: https:github.com/nodejs/node/issues/5682 PR-URL: https://github.com/nodejs/node/pull/5736 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By:
Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
-
Jeremiah Senkpiel authored
Uses better troff formatting. Removes v8 options from the man page. Also edits `node -h` in node.cc slightly. PR-URL: https://github.com/nodejs/node/pull/5497 Reviewed-By:
James Snell <jasnell@gmail.com> Reviewed-By:
Benjamin Gruenbaum <benjamingr@gmail.com>
-
Rich Trott authored
PR-URL: https://github.com/nodejs/node/pull/5673 Reviewed-By:
Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By:
James Snell <jasnell@gmail.com> Reviewed-By:
Brian White <mscdex@mscdex.net>
-
- Mar 16, 2016
-
-
James M Snell authored
Several changes: * Soft-Deprecate Buffer() constructors * Add `Buffer.from()`, `Buffer.alloc()`, and `Buffer.allocUnsafe()` * Add `--zero-fill-buffers` command line option * Add byteOffset and length to `new Buffer(arrayBuffer)` constructor * buffer.fill('') previously had no effect, now zero-fills * Update the docs PR-URL: https://github.com/nodejs/node/pull/4682 Reviewed-By:Сковорода Никита Андреевич <chalkerx@gmail.com> Reviewed-By:
Stephen Belanger <admin@stephenbelanger.com>
-
Johan Bergström authored
This removes the ability to run linting from the source tarball, rationale being that developers should use a git clone instead. Also, fix the path of removing artifacts from the openssl dependency since it now lives in `deps/openssl/openssl/`. Tarballs shrink with ~10%. PR-URL: https://github.com/nodejs/node/pull/5695 Fixes: https://github.com/nodejs/node/issues/5618 Reviewed-By:
Rod Vagg <rod@vagg.org> Reviewed-By:
thefourtheye <thechargingvolcano@gmail.com> Reviewed-By:
James Snell <jasnell@gmail.com>
-
Rich Trott authored
If both -i and -e flags are specified, do not ignore the -i. Instead, launch the interactive REPL and start by evaluating the passed string. Fixes: https://github.com/nodejs/node/issues/1197 PR-URL: https://github.com/nodejs/node/pull/5655 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Jeremiah Senkpiel <fishrock123@rocketmail.com>
-
Rich Trott authored
`Console` constructor checks that `stdout.write()` is a function but does not do an equivalent check for `stderr.write()`. If `stderr` is not specified in the constructor, then `stderr` is set to be `stdout`. However, if `stderr` is specified, but `stderr.write()` is not a function, then an exception is not thrown until `console.error()` is called. This change adds the same check for 'stderr' in the constructor that is there for `stdout`. If `stderr` fails the check, then a `TypeError` is thrown. Took the opportunity to copyedit the `console` doc a little too. PR-URL: https://github.com/nodejs/node/pull/5635 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Rod Vagg <rod@vagg.org>
-
Rich Trott authored
Add the proposed Testing WG. WORKING_GROUPS.md indicates that opening a pull request to that file is the way to request that a charter be ratified by the TC. So, that's what this is. The charter document is currently: https://github.com/nodejs/testing/blob/master/Charter.md PR-URL: https://github.com/nodejs/node/pull/5461 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Alexis Campailla <orangemocha@nodejs.org> Reviewed-By:
Johan Bergström <bugs@bergstroem.nu>
-
Mithun Patel authored
process.send and child.send use JSON.stringify to serialize the message. Fixes: https://github.com/nodejs/node/issues/5453 PR-URL: https://github.com/nodejs/node/pull/5723 Reviewed-By:
Jeremy Whitlock <jwhitlock@apache.org> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com>
-
James M Snell authored
Per https://github.com/nodejs/node/issues/1817, there are many modules that currently abuse the private `_events` property on EventEmitter. One of the ways it is used is to determine if a particular event is being listened for. This adds a simple `eventNames()` method that returns an array of the events with currently registered listeners. PR-URL: https://github.com/nodejs/node/pull/5617 Reviewed-By:
Brian White <mscdex@mscdex.net> Reviewed-By:
Сковорода Никита Андреевич <chalkerx@gmail.com> Reviewed-By:
Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
-
- Mar 15, 2016
-
-
Kári Tristan Helgason authored
According to the spec gzipped archives can contain more than one compressed member. Previously Node's gzip implementation would only unzip the first member and throw away the rest of the compressed data. Issue #4306 is an example of this occurring in daily use. Fixes: https://github.com/nodejs/node/issues/4306 PR-URL: https://github.com/nodejs/node/pull/5120 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
James M Snell <jasnell@gmail.com>
-
Vladimir Kurchatkin authored
`isIPv4` and `isIPv6` are implemented on top of `isIP`, which in turn checks the sting for being both IPv4 and IPv6, which can be inefficient in some scenarios. This commit makes them use `uv_inet_pton` directly instead. PR-URL: https://github.com/nodejs/node/pull/5478 Reviewed-By:
Evan Lucas <evanlucas@me.com> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Roman Reiss <me@silverwind.io>
-
Kirill Fomichev authored
The current documentation for Convenience Methods specifies that the first argument can be either `string or buffer`, `string` or `raw Buffer`. This commit replaces all these instances with `Buffer or string`. PR-URL: https://github.com/nodejs/node/pull/5685 Reviewed-By:
Claudio Rodriguez <cjrodr@yahoo.com> Reviewed-By:
James M Snell <jasnell@gmail.com>
-
Shigeki Ohtsu authored
OPENSSL_NO_SSL2 and OPENSSL_NO_WEAK_SSL_CIPHERS are defined in opensslconf.h Fixes: https://github.com/nodejs/LTS/issues/85 PR-URL: https://github.com/nodejs/node/pull/5630 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Fedor Indutny <fedor@indutny.com>
-
Sam Roberts authored
net.createServer('aPipe') and net.createServer(8080) are mistakes, and now throw a TypeError instead of silently being treated as an object. PR-URL: https://github.com/nodejs/node/pull/2904 Reviewed-By:Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Evan Lucas <evanlucas@me.com> Reviewed-By:
Benjamin Gruenbaum <benjamingr@gmail.com>
-
Kevin Locke authored
The current documentation for writable.write only specifies that the callback is called "once the data has been fully handled". It is ambiguous whether this means "successfully handled" and, if so, whether the callback is called if the data can not be successfully handled (i.e. an error occurs). The ambiguity is not only in the documentation. The stream class implementations differ on this point. stream.Writable invokes the callback with any errors that occur during parameter checking or during calls to _write. However, not all classes return all errors to _write. zlib.Zlib does pass argument and state errors to the _write (_transform) callback, but does not pass data errors. http.OutgoingMessage passes argument type errors and some other types of errors, but not all. This inconsistency is behind issue #1746 and, I suspect, other issues in client code which passes a callback to write. This commit takes no position on whether the callback error behavior should changed, but simply attempts to document the current behavior in a way that is open to changes so that users are not caught by surprise. PR-URL: https://github.com/nodejs/node/pull/4810 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Jeremy Whitlock <jwhitlock@apache.org> Reviewed-By:
Benjamin Gruenbaum <benjamingr@gmail.com>
-