diff --git a/CHANGELOG.md b/CHANGELOG.md index 77e1b9113a7673..2d7dd9e55c3fec 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -26,7 +26,8 @@ release. -6.17.0
+6.17.1
+6.17.0
6.16.0
6.15.1
6.15.0
diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md index 5a935352a1f9f0..4c211405596cb4 100644 --- a/CODE_OF_CONDUCT.md +++ b/CODE_OF_CONDUCT.md @@ -1,8 +1,4 @@ # Code of Conduct -The Node.js Code of Conduct document has moved to -https://github.com/nodejs/admin/blob/master/CODE_OF_CONDUCT.md. Please update -links to this document accordingly. - -The Node.js Moderation policy can be found at -https://github.com/nodejs/admin/blob/master/Moderation-Policy.md +* [Node.js Code of Conduct](https://github.com/nodejs/admin/blob/master/CODE_OF_CONDUCT.md) +* [Node.js Moderation Policy](https://github.com/nodejs/admin/blob/master/Moderation-Policy.md) diff --git a/Makefile b/Makefile index 523a3d8c541ed8..eedbf758e72167 100644 --- a/Makefile +++ b/Makefile @@ -574,8 +574,7 @@ PKG=$(TARNAME).pkg MACOSOUTDIR=out/macos release-only: - @if [ "$(DISTTYPE)" != "nightly" ] && [ "$(DISTTYPE)" != "next-nightly" ] && \ - `grep -q REPLACEME doc/api/*.md`; then \ + @if [ "$(DISTTYPE)" = "release" ] && `grep -q REPLACEME doc/api/*.md`; then \ echo 'Please update REPLACEME in Added: tags in doc/api/*.md (See doc/releases.md)' ; \ exit 1 ; \ fi diff --git a/common.gypi b/common.gypi index a0c00fee528fe5..9dcaa050b08dbe 100644 --- a/common.gypi +++ b/common.gypi @@ -84,6 +84,19 @@ ['OS=="aix"', { 'cflags': [ '-gxcoff' ], 'ldflags': [ '-Wl,-bbigtoc' ], + 'conditions': [ + ['target_arch=="ppc64"', { + 'ldflags': [ + '-Wl,-blibpath:/usr/lib:/lib:' + '/opt/freeware/lib/pthread/ppc64' + ], + }], + ['target_arch=="ppc"', { + 'ldflags': [ + '-Wl,-blibpath:/usr/lib:/lib:/opt/freeware/lib/pthread' + ], + }], + ], }], ['OS == "android"', { 'cflags': [ '-fPIE' ], @@ -332,11 +345,18 @@ [ 'OS=="aix"', { 'conditions': [ [ 'target_arch=="ppc"', { - 'ldflags': [ '-Wl,-bmaxdata:0x60000000/dsa' ], + 'ldflags': [ + '-Wl,-bmaxdata:0x60000000/dsa', + '-Wl,-blibpath:/usr/lib:/lib:/opt/freeware/lib/pthread', + ], }], [ 'target_arch=="ppc64"', { 'cflags': [ '-maix64' ], - 'ldflags': [ '-maix64' ], + 'ldflags': [ + '-maix64', + '-Wl,-blibpath:/usr/lib:/lib:' + '/opt/freeware/lib/pthread/ppc64', + ], }], ], 'ldflags': [ '-Wl,-bbigtoc' ], diff --git a/doc/api/dgram.md b/doc/api/dgram.md index 93a1d186e7c620..6553c4a0323ced 100644 --- a/doc/api/dgram.md +++ b/doc/api/dgram.md @@ -95,6 +95,24 @@ Tells the kernel to join a multicast group at the given `multicastAddress` and one interface and will add membership to it. To add membership to every available interface, call `addMembership` multiple times, once per interface. +When sharing a UDP socket across multiple `cluster` workers, the +`socket.addMembership()` function must be called only once or an +`EADDRINUSE` error will occur: + +```js +const cluster = require('cluster'); +const dgram = require('dgram'); +if (cluster.isMaster) { + cluster.fork(); // Works ok. + cluster.fork(); // Fails with EADDRINUSE. +} else { + const s = dgram.createSocket('udp4'); + s.bind(1234, () => { + s.addMembership('224.0.0.114'); + }); +} +``` + ### socket.address()