Commit Graph

1449 Commits

Author SHA1 Message Date
Johannes Wüller
0803962860 fs: add file descriptor support to *File() funcs
These changes affect the following functions and their synchronous
counterparts:

 * fs.readFile()
 * fs.writeFile()
 * fs.appendFile()

If the first parameter is a uint32, it is treated as a file descriptor.
In all other cases, the original implementation is used to ensure
backwards compatibility. File descriptor ownership is never taken from
the user.

The documentation was adjusted to reflect these API changes. A note was
added to make the user aware of file descriptor ownership and the
conditions under which a file descriptor can be used by each of these
functions.

Tests were extended to test for file descriptor parameters under the
conditions noted in the relevant documentation.

PR-URL: https://github.com/nodejs/node/pull/3163
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
2015-10-16 17:14:21 -06:00
Michaël Zasso
8c043c1245 console: rename argument of time and timeEnd
Name it timerName instead of label. It is clearer that way and matches
the description in the doc. It is also how it's named in MDN.

PR-URL: https://github.com/nodejs/node/pull/3166
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Roman Reiss <me@silverwind.io>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
2015-10-16 21:03:44 +02:00
Michaël Zasso
fc72a578e6 doc: reword description of console.time
PR-URL: https://github.com/nodejs/node/pull/3166
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Roman Reiss <me@silverwind.io>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
2015-10-16 21:03:30 +02:00
Michaël Zasso
419f7d4726 console: sub-millisecond accuracy for console.time
This makes the output of console.timeEnd in line with major browsers.

PR-URL: https://github.com/nodejs/node/pull/3166
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Roman Reiss <me@silverwind.io>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
2015-10-16 21:00:51 +02:00
Shigeki Ohtsu
f72e178a78 tls: add minDHSize option to tls.connect()
Add a new option to specifiy a minimum size of an ephemeral DH
parameter to accept a tls connection. Default is 1024 bit.

PR-URL: https://github.com/nodejs/node/pull/1831
Reviewed-By: indutny - Fedor Indutny <fedor.indutny@gmail.com>
Reviewed-By: bnoordhuis - Ben Noordhuis <info@bnoordhuis.nl>
2015-10-16 11:39:54 +09:00
Shigeki Ohtsu
6d92ebac11 tls: add TLSSocket.getEphemeralKeyInfo()
Returns an object representing a type, name and size of an ephemeral
key exchange in a client connection. Currently only DHE and ECHE are
supported.

This api only works on on a client connection. When it is called on a
server connection, null is returned. When its key exchange is not
ephemeral, an empty object is returned.

PR-URL: https://github.com/nodejs/node/pull/1831
Reviewed-By: indutny - Fedor Indutny <fedor.indutny@gmail.com>
Reviewed-By: bnoordhuis - Ben Noordhuis <info@bnoordhuis.nl>
2015-10-16 11:39:45 +09:00
Roman Reiss
503f279527 doc: fix indent in tls resumption example
Markdown requires 4-space indent to correctly format code blocks. This
fixes the example so it's correctly presented as code.

PR-URL: https://github.com/nodejs/node/pull/3372
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
2015-10-15 11:30:44 +02:00
David Boivin
8e213096df doc: update the assert module summary
The current wording "This module is used for writing unit tests for your
applications, you can access it with require('assert')." implies that
this module should only be used in development while unit testing.

The article "Error Handling in Node.js" by Joyent
(https://www.joyent.com/developers/node/design/errors) uses the assert
module in an efficient way to validate required function arguments.

PR-URL: https://github.com/nodejs/node/pull/2799
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Roman Reiss <me@silverwind.io>
2015-10-11 19:24:39 +02:00
Roman Klauke
0474bf57d9 doc: replace node-gyp link with nodejs/node-gyp
The node-gyp is now in the nodejs/node-gyp. This commit replaces the
repository owner link with the new nodejs/node-gyp link.

PR-URL: https://github.com/nodejs/node/pull/3320
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
2015-10-11 17:03:30 +02:00
Balázs Galambosi
b9279aa193 doc: remove old note, 'cluster' is marked stable
Fixes: https://github.com/nodejs/node/issues/3313
PR-URL: https://github.com/nodejs/node/pull/3314
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
2015-10-10 13:37:15 -07:00
Jason Karns
775c01e3aa doc: recommend Infinity on emitter.setMaxListeners
Instead of recommending `0` as the magic value to set max listeners to
unlimited, recommend `Infinity`. This paves the way for `0` as a magic
value eventually being deprecated and finally removed.

PR-URL: https://github.com/nodejs/node/pull/2559
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: targos - Michaël Zasso <mic.besace@gmail.com>
Reviewed-By: Brendan Ashworth <brendan.ashworth@me.com>
Reviewed-By: Roman Reiss <me@silverwind.io>
2015-10-09 19:01:29 +02:00
Dave Hodder
048c8f2c4b doc: Amend capitalization of word JavaScript
PR-URL: https://github.com/nodejs/node/pull/3285
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
Reviewed-By: Evan Lucas <evanlucas@me.com>
Reviewed-By: Roman Reiss <me@silverwind.io>
2015-10-09 18:42:58 +02:00
Alejandro Oviedo
2146f62065 doc: add method links in child_process.markdown
Added links to referenced methods.

PR-URL: https://github.com/nodejs/node/pull/3186
Reviewed-By: Roman Reiss <me@silverwind.io>
2015-10-09 18:41:09 +02:00
Alejandro Oviedo
70c78c9469 doc: add method links in dns.markdown
Added links to referenced methods.

PR-URL: https://github.com/nodejs/node/pull/3196
Reviewed-By: Roman Reiss <me@silverwind.io>>
2015-10-09 18:39:11 +02:00
Roman Reiss
07a84191c0 doc: add TLS session resumption example
Using TLS session resumption correctly is not obvious. This added
example code should help new users understand how to use it correctly.

Related issue: https://github.com/nodejs/node/issues/3132
PR-URL: https://github.com/nodejs/node/pull/3147
Reviewed-By: Fedor Indutny <fedor.indutny@gmail.com>
2015-10-07 20:50:47 +02:00
Rod Machen
20b68e5b42 doc: fix spelling in Buffer documentation
Change b.writeUint16LE(0x90ab, 0) to b.writeUInt16LE(0x90ab, 0).

PR-URL: https://github.com/nodejs/node/pull/3226
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Evan Lucas <evanlucas@me.com>
2015-10-06 19:09:54 -05:00
Minwoo Jung
d32363ff20 doc: fix outdated 'try/catch' statement in sync
Fixes description about crypto.randomBytes.

Fixes: https://github.com/nodejs/node/issues/3081
PR-URL: https://github.com/nodejs/node/pull/3087
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Brendan Ashworth <brendan.ashworth@me.com>
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
2015-09-30 19:59:10 -07:00
Rich Trott
0e4b772d6c doc: copyedit fs.watch() information
Removed "Only FSEvents supports this type of file watching so it is
unlikely any additional platforms will be added soon."

Per @saghul, "FSEvents" refers to the OSX API, but since we added
Windows support it may not be  unlikely that we add more.

PR-URL: https://github.com/nodejs/node/pull/3097
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2015-09-29 23:32:23 -07:00
Evan Lucas
30b8bb0aab src: add process.versions.icu
If i18n support is present, add the icu version
to process.versions

Fixes: https://github.com/nodejs/node/issues/3089
PR-URL: https://github.com/nodejs/node/pull/3102
Reviewed-By: Steven R Loomis <srloomis@us.ibm.com>
Reviewed-By: Roman Reiss <me@silverwind.io>
Reviewed-By: Rod Vagg <rod@vagg.org>
2015-09-29 08:18:03 -05:00
James M Snell
6192c9892f http: add checkIsHttpToken check for header fields
Ref: https://github.com/nodejs/node-convergence-archive/issues/13

This adds a new check for header and trailer fields names and method
names to ensure that they conform to the HTTP token rule. If they do
not, a `TypeError` is thrown.

Previously this had an additional `strictMode` option that has been
removed in favor of making the strict check the default (and only)
behavior.

Doc and test case are included.

On the client-side
```javascript
var http = require('http');
var url = require('url');
var p = url.parse('http://localhost:8888');
p.headers = {'testing 123': 123};
http.client(p, function(res) { }); // throws
```

On the server-side
```javascript
var http = require('http');
var server = http.createServer(function(req,res) {
  res.setHeader('testing 123', 123); // throws
  res.end('...');
});
```

Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Reviewed-By: Trevor Norris <trevnorris@nodejs.org>
Reviewed-By: Сковорода Никита Андреевич <chalkerx@gmail.com>
Reviewed-By: Rod Vagg <rod@vagg.org>
PR-URL: https://github.com/nodejs/node/pull/2526
2015-09-25 08:37:57 -07:00
Fabio Oliveira
79ebeabd08 docs: Clarify assert.doesNotThrow behavior
The documentation for assert.doesNotThrow now reflects all the inputs
the function accepts, as well as the errors thrown for each combination
of parameter types.

PR-URL: https://github.com/nodejs/node/pull/2807
Reviewed-By: Rich Trott <rtrott@gmail.com>
2015-09-23 15:07:59 -07:00
Laurent Fortin
2d21092400 doc: rearrange execSync and execFileSync
Changed the ordering so it is in line with the async methods.

PR-URL: https://github.com/nodejs/node/pull/2940
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
Reviewed-By: Roman Reiss <me@silverwind.io>
2015-09-23 22:20:18 +02:00
Laurent Fortin
28da400d47 doc: make execFileSync in line with execFile
PR-URL: https://github.com/nodejs/node/pull/2940
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
Reviewed-By: Roman Reiss <me@silverwind.io>
2015-09-23 22:19:12 +02:00
reggi
ffdbe9d4f1 doc: fix typos in cluster & errors
PR-URL: https://github.com/nodejs/node/pull/3011
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
Reviewed-By: Roman Reiss <me@silverwind.io>
2015-09-23 22:06:43 +02:00
Sakthipriyan Vairamani
7953c83b85 doc: remove usage of events.EventEmitter
The `events` module already exports `EventEmitter` constructor function
So, we don't have to use `events.EventEmitter` to access it.

Refer: https://github.com/nodejs/node/pull/2896

PR-URL: https://github.com/nodejs/node/pull/2921
Reviewed-By: Roman Reiss <me@silverwind.io>
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
2015-09-23 00:22:11 +05:30
Christopher J. Brody
451acc7559 doc: remove extra using v8::HandleScope statement
v8::HandleScope does not seem to be required for addon functions.

PR-URL: https://github.com/nodejs/node/pull/2983
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2015-09-21 17:58:11 +02:00
Rich Trott
4fb4c14b61 doc: clarify description of assert.ifError()
This fixes a few typographical errors (comma splices and the like) and
clarifies the description of assert.ifError(). It also standardizes the
document on "inequality" rather than having both "inequality" and "non-
equality".

PR-URL: https://github.com/nodejs/node/pull/2941
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
2015-09-18 23:46:36 -07:00
Rich Trott
4dcf24cfab doc: refine process.kill() and exit explanations
Add corrections about when exit event fires and how .kill() works on
Windows.

PR-URL: https://github.com/nodejs/node/pull/2918
Reviewed-By: Sam Roberts <vieuxtech@gmail.com>
2015-09-17 15:03:04 -07:00
Rich Trott
43cb1ddb00 doc: process exit event is not guaranteed to fire
This change:

* notes that the exit event is not guaranteed to fire
* provides an example situation where the exit event may not fire
* makes a minor copyediting change
* enforces 80 character wrap in one place where it was not honored

Fixes: https://github.com/nodejs/node/issues/2853
PR-URL: https://github.com/nodejs/node/pull/2861
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2015-09-16 13:56:48 -07:00
Sam Roberts
6cb9e8a9c4 doc: remove incorrect reference to TCP in net docs
createServer() can create socket of types other than TCP.

PR-URL: https://github.com/nodejs/node/pull/2903
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2015-09-16 10:52:12 -07:00
Sam Roberts
e148dcce45 doc: correct buffer.slice arg syntax
PR-URL: https://github.com/nodejs/node/pull/2903
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2015-09-16 10:52:03 -07:00
Sam Roberts
a12628bd97 doc: describe spawn option.detached
PR-URL: https://github.com/nodejs/node/pull/2903
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2015-09-16 10:51:37 -07:00
Sam Roberts
94e663ac5f timer: ref/unref return self
Most calls to ref() and unref() are chainable, timers should be
chainable, too.

Typical use:

    var to = setTimeout(ontimeout, 123).unref();

PR-URL: https://github.com/nodejs/node/pull/2905
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Trevor Norris <trevnorris@nodejs.org>
2015-09-16 10:29:13 -07:00
Sven Slootweg
360d0faf44 doc: add missing backtick in buffer.markdown
Fixes: https://github.com/nodejs/node/issues/2880
PR-URL: https://github.com/nodejs/node/pull/2881
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
2015-09-15 13:59:45 -04:00
Yazhong Liu
1f842c2c61 fs: consider NaN/Infinity in toUnixTimestamp
PR-URL: https://github.com/nodejs/node/pull/2387
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
2015-09-14 16:55:15 -06:00
Danny Nemer
a85f4b5ce5 doc: fix broken link in repl.markdown
PR-URL: https://github.com/nodejs/node/pull/2827
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
2015-09-14 17:29:01 -04:00
Jeremiah Senkpiel
892bf65d9a doc: fix two doc errors in stream and process
`process.stdout` always blocks as of
20176a9841

`WritableState.buffer` is `getBuffer()` as of
91586661c9

PR-URL: https://github.com/nodejs/node/pull/2549
Reviewed-By: Alexis Campailla <orangemocha@nodejs.org>
Reviewed-By: Evan Lucas <evanlucas@me.com>
2015-09-14 09:39:59 -04:00
Tristian Flanagan
abb2a4b8fe doc: fixed io.js references in process.markdown
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: Sam Roberts <vieuxtech@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/2846
2015-09-13 13:42:26 -07:00
Minwoo Jung
958a94e19d doc: use "Calls" over "Executes" for consistency
"Calls" is used frequently throughout the docs except for this line.
Use "Calls" over "Executes" to make it consistent.

PR-URL: https://github.com/nodejs/node/pull/2800
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
2015-09-11 11:10:37 -04:00
Anne-Gaelle Colom
e1fb0e8289 doc: use US English for consistency
behaviour -> behavior

PR-URL: https://github.com/nodejs/node/pull/2784
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Brendan Ashworth <brendan.ashworth@me.com>
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
2015-09-10 14:39:16 -07:00
Anne-Gaelle Colom
d2f70fee13 doc: use 3rd person singular for consistency
PR-URL: https://github.com/nodejs/node/pull/2765
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
2015-09-10 06:03:54 -07:00
Sam Roberts
f442904a27 doc: describe process API for IPC
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
PR-URL: https://github.com/nodejs/node/pull/1978
2015-09-09 09:46:20 -07:00
Rich Trott
8f87169805 doc: fix comma splice in Assertion Testing doc
This fixes a minor typographical error in the Assertion Testing doc.

PR-URL: https://github.com/nodejs/node/pull/2728
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
Reviewed-By: Johan Bergström <bugs@bergstroem.nu>
2015-09-08 14:42:27 -07:00
Sakthipriyan Vairamani
f0a75ab2d3 doc,test: enable recursive file watching in Windows
Recursive file watching is supported by libuv since 1.7.0. Refer
https://github.com/nodejs/node/blob/master/deps/uv/ChangeLog#L126. This
patch notes that in the docs and enables testing this feature. It also
adds proper TAP plugin parsable message for other platforms.

PR-URL: https://github.com/nodejs/node/pull/2649
Fixes: https://github.com/nodejs/node/issues/375
Reviewed-By: rvagg - Rod Vagg <rod@vagg.org>
Reviewed-By: silverwind - Roman Reiss <me@silverwind.io>
2015-09-06 21:38:07 +10:00
Jeremiah Senkpiel
65844affe9 doc: update url doc to account for escaping
Fixes: https://github.com/nodejs/node/issues/2113
Ref: 17a379ec39
PR-URL: https://github.com/nodejs/node/pull/2605
Reviewed-By: jasnell - James M Snell <jasnell@gmail.com>
Reviewed-By: cjihrig - Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: mscdex - Brian White <mscdex@mscdex.net>
2015-09-06 21:37:59 +10:00
Ben Noordhuis
607aa3ac82 child_process: add callback parameter to .send()
Add an optional callback parameter to `ChildProcess.prototype.send()`
that is invoked when the message has been sent.

Juggle the control channel's reference count so that in-flight messages
keep the event loop (and therefore the process) alive until they have
been sent.

`ChildProcess.prototype.send()` and `process.send()` used to operate
synchronously but became asynchronous in commit libuv/libuv@393c1c5
("unix: set non-block mode in uv_{pipe,tcp,udp}_open"), which landed
in io.js in commit 07bd05b ("deps: update libuv to 1.2.1").

Fixes: https://github.com/nodejs/node/issues/760
PR-URL: https://github.com/nodejs/node/pull/2620
Reviewed-By: trevnorris - Trevor Norris <trev.norris@gmail.com>
Reviewed-By: jasnell - James M Snell <jasnell@gmail.com>
2015-09-06 21:37:58 +10:00
Jeremiah Senkpiel
4c5fc3b1d4 doc: clarify cluster behaviour with no workers
Fixes: https://github.com/nodejs/node/issues/1239
Ref: 41b75ca926
PR-URL: https://github.com/nodejs/node/pull/2606
Reviewed-By: bnoordhuis - Ben Noordhuis <info@bnoordhuis.nl>
2015-08-28 20:32:56 -04:00
Ben Noordhuis
de88255b0f Revert "lib,src: add unix socket getsockname/getpeername"
This reverts commit 6cd0e2664b.
This reverts commit 7a999a1376.
This reverts commit f337595441.

It turns out that on Windows, uv_pipe_getsockname() is a no-op for
client sockets.  It slipped through testing because of a CI snafu.

PR-URL: https://github.com/nodejs/node/pull/2584
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
2015-08-28 00:14:13 +02:00
Ben Noordhuis
6cd0e2664b doc: update io.js reference
Commit f337595 ("lib,src: add unix socket getsockname/getpeername")
accidentally left in a reference to io.js v1.5.0 in the documentation.
Update it to say "Node.js v4.0.0", the upcoming release.

PR-URL: https://github.com/nodejs/node/pull/2580
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
2015-08-27 18:00:55 +02:00
Ben Noordhuis
7a999a1376 lib: add net.Socket#localFamily property
Complements the existing net.Socket#remoteFamily property.

PR-URL: https://github.com/nodejs/node/pull/956
Reviewed-By: Sam Roberts <vieuxtech@gmail.com>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
2015-08-27 17:45:29 +02:00