Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v4.7.0 proposal #9736

Merged
merged 109 commits into from
Dec 6, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
109 commits
Select commit Hold shift + click to select a range
9049c1f
tls: introduce `secureContext` for `tls.connect`
indutny Dec 11, 2015
9f0ef5a
doc: fix heading type for v4.6.2 changelog
Nov 8, 2016
1dfb5b5
v8: update make-v8.sh to use git
Nov 1, 2016
620cdc5
tools: fix release script on macOS 10.12
evanlucas Sep 28, 2016
8807981
doc: fix typo in http.md
anu0012 Oct 18, 2016
f472c09
doc: reference signal(7) for the list of signals
emadb Oct 27, 2016
f669a08
src: fix typo rval to value
maasencioh Oct 11, 2016
a7ae887
governance: expand use of CTC issue tracker
Trott Oct 6, 2016
af645a0
doc: explain why GitHub merge button is not used
jalafel Oct 12, 2016
4f8bf1b
doc: explains why Reviewed-By is added in PRs
jalafel Oct 12, 2016
695ee1e
doc: highlight deprecated API in ToC
ilfroloff Sep 2, 2016
4de7a6e
build: fix config.gypi target
danbev Oct 12, 2016
9a192a9
net: fix ambiguity in EOF handling
indutny Oct 12, 2016
132425a
doc: specify that errno is a number, not a string
Oct 10, 2016
f9b24f4
test: use npm sandbox in test-npm-install
joaocgreis Oct 13, 2016
68ccc7a
doc: update reference to list hash algorithms in crypto.md
sstern6 Oct 11, 2016
e564cb6
doc: add ctc-review label information
Trott Oct 13, 2016
3b839d1
doc: remove confusing reference in governance doc
Trott Oct 13, 2016
279e30c
doc: add CTC meeting minutes for 2016-10-12
mhdawson Oct 13, 2016
3cefd65
build: export openssl symbols on windows
bnoordhuis Apr 18, 2016
84849f1
build: export more openssl symbols on Windows
Jul 10, 2016
4238460
lib: remove let from for loops
Sep 30, 2016
9b9762c
streams: fix regression in `unpipe()`
addaleax Oct 18, 2016
d9c3364
test: add regression test for `unpipe()`
Oct 18, 2016
c8dccf2
tools: avoid let in for loops
jalafel Oct 12, 2016
4a6bd86
test: fix flaky test-child-process-fork-dgram
Trott Oct 14, 2016
c94482b
http: 451 status code "Unavailable For Legal Reasons"
mbarinov Dec 21, 2015
bd99b2d
test: checking if error constructor is assert.AssertionError
larissayvette Oct 12, 2016
a038fcc
test: add regression test for instanceof
fhinkel Oct 19, 2016
a64af39
test: remove duplicate required module
Trott Oct 18, 2016
c1e5e66
doc: improve header styling for API docs
Fishrock123 Sep 27, 2016
e9c6aff
doc: add 2016-10-19 CTC meeting minutes
joshgav Oct 19, 2016
1a701f1
doc: add 2016-09-28 CTC meeting minutes
joshgav Oct 27, 2016
8240092
doc: add 2016-10-05 CTC meeting minutes
joshgav Oct 27, 2016
9dad98b
doc: add 2016-10-26 CTC meeting minutes
Trott Oct 28, 2016
d1d207b
doc: add Sakthipriyan to the CTC
rvagg Nov 2, 2016
bf25994
tls: fix leak of WriteWrap+TLSWrap combination
indutny Nov 12, 2016
0f41058
doc: clarify relation between a file and a module
marzelin Oct 11, 2016
f9baa11
tools: remove dangling eslint symlink
sam-github Oct 26, 2016
80a26c7
test: writable stream finished state
italoacasas Sep 27, 2016
ba4a3ed
test: writable stream ending state
italoacasas Sep 22, 2016
40ef239
test: writable stream needDrain state
italoacasas Sep 27, 2016
2b2dde8
doc: add italoacasas to collaborators
Nov 18, 2016
00a1782
doc: update CONTRIBUTING.md to address editing PRs
gibfahn Oct 19, 2016
91fce10
deps: back port OpenBSD fix in c-ares/c-ares
qbit Oct 23, 2016
527db40
test: add coverage for execFileSync() errors
cjihrig Oct 20, 2016
bb2fdf5
build: cherry pick V8 change for windows DLL support
stefanmb Jul 20, 2016
f21c2b9
build: configure --shared
sxa Jul 4, 2016
0138b4d
build: windows sharedlib support
Nov 16, 2016
e97723b
build: abstract out shared library suffix
Jul 12, 2016
12da258
https: fix memory leak with https.request()
imyller Sep 18, 2016
03f7031
test: remove call to `net.Socket.resume()`
ALJCepeda Sep 21, 2016
b3fccc2
test: enable cyrillic punycode test case
bnoordhuis Sep 21, 2016
cec5e36
test: fix test-cluster-worker-init.js flakyness
imyller Sep 21, 2016
f0192ec
src: don't abort when c-ares initialization fails
bnoordhuis Sep 22, 2016
bdb6cf9
win,msi: mark INSTALLDIR property as secure
joaocgreis Sep 26, 2016
347547a
test: expand test coverage for url.js
jun-oka Sep 30, 2016
a3a184d
lib: fix TypeError in v8-polyfill
geek Sep 30, 2016
3919edb
build: don't build icu with -fno-rtti
bnoordhuis Sep 30, 2016
7904066
test: refactor test-net-server-max-connections
Trott Oct 4, 2016
c48c318
doc: change ./node to node in debugger.md
AnnaMag Oct 5, 2016
475fe96
doc: simplify process.memoryUsage() example code
watson Nov 12, 2016
9a02414
zlib: fix raw inflate with custom dictionary
thusoy Sep 20, 2016
748e424
debugger: make listen address configurable
bnoordhuis Oct 10, 2015
524ebfb
doc: child_process .stdio accepts a String type
skovhus Nov 19, 2016
66e26cd
doc: child_process.execSync .stdio default is pipe
skovhus Nov 20, 2016
4c47446
deps: make gtest output tap
bnoordhuis Aug 9, 2016
7c73105
build: run cctests as part of test-ci target
bnoordhuis Aug 10, 2016
eb34f68
deps: revert default gtest reporter change
mscdex Oct 17, 2016
747013b
test: output tap13 instead of almost-tap
jbergstroem Oct 12, 2016
36abbbe
gtest: output tap comments as yamlish
jbergstroem Oct 25, 2016
02e6c84
gitignore: ignore all tap files
jbergstroem Oct 25, 2016
4571c84
dgram: generalized send queue to handle close
mcollina May 30, 2016
a2621a2
test: remove FIXME pummel/test-tls-securepair-client
ALJCepeda Sep 24, 2016
3b448a7
lib: changed var to const in linkedlist
AdriVanHoudt Sep 17, 2016
fafffd4
test: fix test-child-process-fork-regr-gh-2847
santigimeno Oct 6, 2016
fc77cbb
doc: make node(1) more consistent with tradition
strugee Oct 8, 2016
b4353e9
src: fix typo in #endif comment
juanandresnyc Oct 9, 2016
e5d2a95
src: remove out-of-date TODO comment
danbev Oct 10, 2016
51b251d
test: add coverage for spawnSync() killSignal
cjihrig Oct 6, 2016
462c640
doc: fix typo in email address in README
Trott Oct 5, 2016
6d742b3
test: remove err timer from test-http-set-timeout
BethGriggs Oct 24, 2016
9d5e7f5
test: use strict assertions in module loader test
bnoordhuis Oct 24, 2016
533ce48
tools: make --repeat work with -j in test.py
Trott Oct 24, 2016
f18f3b6
util: use template strings
a0viedo Oct 17, 2016
ed31f9c
benchmark: add microbenchmarks for ES Map
rvagg Jul 7, 2016
59d821d
build: use wxneeded on openbsd
qbit Oct 21, 2016
bcd156f
test: refactor test-async-wrap-check-providers
Oct 26, 2016
b0476c5
test: fix flaky test-fs-watch-recursive on OS X
Trott Oct 26, 2016
e08173a
doc: fix outdate ninja link
lovexi Oct 25, 2016
d9955fb
test: add test for HTTP client "aborted" event
kemitchell Jun 22, 2016
5e820ae
doc: update Diagnostics WG info
joshgav Oct 27, 2016
2c75886
test: move timer-dependent test to sequential
Trott Nov 3, 2016
861b689
doc: update GOVERNANCE.md to use "meeting chair"
Trott Nov 3, 2016
d3c25c1
doc: update minute-taking procedure for CTC
Trott Nov 2, 2016
c5181ed
build: reduce noise from doc target
danbev Nov 4, 2016
96bdfae
test: improve test-debugger-util-regression
santigimeno Nov 6, 2016
f6f0b38
events: pass the original listener added by once
DavidCai1111 Apr 29, 2016
3b5cede
src: renaming ares_task struct to node_ares_task
danbev Jun 20, 2016
51e09d0
src: normalize malloc, realloc
mhdawson Sep 1, 2016
62e83b3
src: Malloc/Calloc size 0 returns non-null pointer
Trott Sep 17, 2016
9389572
crypto: fix faulty logic in iv size check
bnoordhuis Oct 11, 2016
50a4471
http: fix connection upgrade checks
mscdex Aug 23, 2016
54c38eb
tickprocessor: apply c++filt manually on mac
indutny Sep 10, 2016
b1bd1c4
tools: allow test.py to use full paths of tests
reconbot Nov 19, 2016
9144d37
test: cleanup test-dgram-error-message-address
Goyapa Oct 5, 2016
c1effb1
deps: fix build with libc++ 3.8.0
jbergstroem Nov 23, 2016
cc36a63
test: remove watchdog in test-debug-signal-cluster
Trott Nov 5, 2016
4e73e75
2016-12-06, Version 4.7.0 'Argon' (LTS)
Nov 22, 2016
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ deps/npm/node_modules/.bin/
# test artifacts
tools/faketime
icu_config.gypi
test.tap
*.tap

# Xcode workspaces and project folders
*.xcodeproj
Expand Down
139 changes: 137 additions & 2 deletions CHANGELOG.md

Large diffs are not rendered by default.

4 changes: 3 additions & 1 deletion COLLABORATOR_GUIDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ continuous integration tests on the
### Involving the CTC

Collaborators may opt to elevate pull requests or issues to the CTC for
discussion by assigning the ***ctc-agenda*** tag. This should be done
discussion by assigning the `ctc-review` label. This should be done
where a pull request:

- has a significant impact on the codebase,
Expand All @@ -101,6 +101,8 @@ information regarding the change process:

- A `Reviewed-By: Name <email>` line for yourself and any
other Collaborators who have reviewed the change.
- Useful for @mentions / contact list if something goes wrong in the PR.
- Protects against the assumption that GitHub will be around forever.
- A `PR-URL:` line that references the *full* GitHub URL of the original
pull request being merged so it's easy to trace a commit back to the
conversation that led up to that change.
Expand Down
65 changes: 61 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,13 @@ $ git config --global user.name "J. Random User"
$ git config --global user.email "j.random.user@example.com"
```

Add and commit:

```text
$ git add my/changed/files
$ git commit
```

Writing good commit logs is important. A commit log should describe what
changed and why. Follow these guidelines when writing one:

Expand Down Expand Up @@ -191,10 +198,60 @@ $ git push origin my-branch
Go to https://github.com/yourusername/node and select your branch.
Click the 'Pull Request' button and fill out the form.

Pull requests are usually reviewed within a few days. If there are comments
to address, apply your changes in a separate commit and push that to your
branch. Post a comment in the pull request afterwards; GitHub does
not send out notifications when you add commits.
Pull requests are usually reviewed within a few days.

### Step 7: Discuss and update

You will probably get feedback or requests for changes to your Pull Request.
This is a big part of the submission process, so don't be disheartened!

To make changes to an existing Pull Request, make the changes to your branch.
When you push that branch to your fork, GitHub will automatically update the
Pull Request.

You can push more commits to your branch:

```text
$ git add my/changed/files
$ git commit
$ git push origin my-branch
```

Or you can rebase against master:

```text
$ git fetch --all
$ git rebase origin/master
$ git push --force-with-lease origin my-branch
```

Or you can amend the last commit (for example if you want to change the commit
log).

```text
$ git add any/changed/files
$ git commit --amend
$ git push --force-with-lease origin my-branch
```

**Important:** The `git push --force-with-lease` command is one of the few ways
to delete history in git. Before you use it, make sure you understand the risks.
If in doubt, you can always ask for guidance in the Pull Request or on
[IRC in the #node-dev channel](https://webchat.freenode.net?channels=node-dev&uio=d4).

Feel free to post a comment in the Pull Request to ping reviewers if you are
awaiting an answer on something.


### Step 8: Landing

Once your Pull Request has been reviewed and approved by at least one Node.js
Collaborators (often by saying LGTM, or Looks Good To Me), and as long as
there is consensus (no objections from a Collaborator), a
Collaborator can merge the Pull Request . GitHub often shows the Pull Request as
`Closed` at this point, but don't worry. If you look at the branch you raised
your Pull Request against (probably `master`), you should see a commit with
your name on it. Congratulations and thanks for your contribution!

<a id="developers-certificate-of-origin"></a>
## Developer's Certificate of Origin 1.1
Expand Down
73 changes: 46 additions & 27 deletions GOVERNANCE.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,14 +23,11 @@ The [nodejs/node](https://github.com/nodejs/node) GitHub repository is
maintained by the CTC and additional Collaborators who are added by the
CTC on an ongoing basis.

Individuals making significant and valuable contributions are made
Collaborators and given commit-access to the project. These
individuals are identified by the CTC and their addition as
Collaborators is discussed during the weekly CTC meeting.
Individuals identified by the CTC as making significant and valuable
contributions are made Collaborators and given commit access to the project.

_Note:_ If you make a significant contribution and are not considered
for commit-access, log an issue or contact a CTC member directly and it
will be brought up in the next CTC meeting.
for commit access, log an issue or contact a CTC member directly.

Modifications of the contents of the nodejs/node repository are made on
a collaborative basis. Anybody with a GitHub account may propose a
Expand All @@ -39,16 +36,21 @@ Collaborators. All pull requests must be reviewed and accepted by a
Collaborator with sufficient expertise who is able to take full
responsibility for the change. In the case of pull requests proposed
by an existing Collaborator, an additional Collaborator is required
for sign-off. Consensus should be sought if additional Collaborators
participate and there is disagreement around a particular
modification. See [Consensus Seeking Process](#consensus-seeking-process) below
for further detail on the consensus model used for governance.
for sign-off.

Collaborators may opt to elevate significant or controversial
modifications, or modifications that have not found consensus to the
CTC for discussion by assigning the ***ctc-agenda*** tag to a pull
request or issue. The CTC should serve as the final arbiter where
required.
If one or more Collaborators oppose a proposed change, then the change can not
be accepted unless:

* Discussions and/or additional changes result in no Collaborators objecting to
the change. Previously-objecting Collaborators do not necessarily have to
sign-off on the change, but they should not be opposed to it.
* The change is escalated to the CTC and the CTC votes to approve the change.
This should be used only after other options (especially discussion among
the disagreeing Collaborators) have been exhausted.

Collaborators may opt to elevate significant or controversial modifications to
the CTC by assigning the `ctc-review` label to a pull request or issue. The
CTC should serve as the final arbiter where required.

For the current list of Collaborators, see the project
[README.md](./README.md#current-project-team-members).
Expand Down Expand Up @@ -103,7 +105,7 @@ members affiliated with the over-represented employer(s).
Typical activities of a CTC member include:

* attending the weekly meeting
* commenting on the weekly CTC meeting issue and issues labeled `ctc-agenda`
* commenting on the weekly CTC meeting issue and issues labeled `ctc-review`
* participating in CTC email threads
* volunteering for tasks that arise from CTC meetings and related discussions
* other activities (beyond those typical of Collaborators) that facilitate the
Expand All @@ -115,7 +117,8 @@ Collaborator activities as well.
### CTC Meetings

The CTC meets weekly in a voice conference call. The meeting is run by a
designated moderator approved by the CTC. Each meeting is streamed on YouTube.
designated meeting chair approved by the CTC. Each meeting is streamed on
YouTube.

Items are added to the CTC agenda which are considered contentious or
are modifications of governance, contribution policy, CTC membership,
Expand All @@ -125,30 +128,46 @@ The intention of the agenda is not to approve or review all patches.
That should happen continuously on GitHub and be handled by the larger
group of Collaborators.

Any community member or contributor can ask that something be added to
the next meeting's agenda by logging a GitHub issue. Any Collaborator,
CTC member or the moderator can add the item to the agenda by adding
the ***ctc-agenda*** tag to the issue.
Any community member or contributor can ask that something be reviewed
by the CTC by logging a GitHub issue. Any Collaborator, CTC member, or the
meeting chair can bring the issue to the CTC's attention by applying the
`ctc-review` label. If consensus-seeking among CTC members fails for a
particular issue, it may be added to the CTC meeting agenda by adding the
`ctc-agenda` label.

Prior to each CTC meeting, the moderator will share the agenda with
Prior to each CTC meeting, the meeting chair will share the agenda with
members of the CTC. CTC members can also add items to the agenda at the
beginning of each meeting. The moderator and the CTC cannot veto or remove
beginning of each meeting. The meeting chair and the CTC cannot veto or remove
items.

The CTC may invite persons or representatives from certain projects to
participate in a non-voting capacity.

The moderator is responsible for summarizing the discussion of each agenda item
and sending it as a pull request after the meeting.
The meeting chair is responsible for ensuring that minutes are taken and that a
pull request with the minutes is submitted after the meeting.

Due to the challenges of scheduling a global meeting with participants in
several timezones, the CTC will seek to resolve as many agenda items as possible
outside of meetings using
[the CTC issue tracker](https://github.com/nodejs/CTC/issues). The process in
the issue tracker is:

* A CTC member opens an issue explaining the proposal/issue and @-mentions
@nodejs/ctc.
* After 72 hours, if there are two or more `LGTM`s from other CTC members and no
explicit opposition from other CTC members, then the proposal is approved.
* If there are any CTC members objecting, then a conversation ensues until
either the proposal is dropped or the objecting members are persuaded. If
there is an extended impasse, a motion for a vote may be made.

## Consensus Seeking Process

The CTC follows a
[Consensus Seeking](http://en.wikipedia.org/wiki/Consensus-seeking_decision-making)
decision making model.

When an agenda item has appeared to reach a consensus, the moderator will ask
"Does anyone object?" as a final call for dissent from the consensus.
When an agenda item has appeared to reach a consensus, the meeting chair will
ask "Does anyone object?" as a final call for dissent from the consensus.

If an agenda item cannot reach a consensus, a CTC member can call for either a
closing vote or a vote to table the issue to the next meeting. All votes
Expand Down
13 changes: 5 additions & 8 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -71,11 +71,7 @@ out/Makefile: common.gypi deps/uv/uv.gyp deps/http_parser/http_parser.gyp deps/z
$(PYTHON) tools/gyp_node.py -f make

config.gypi: configure
if [ -f $@ ]; then
$(error Stale $@, please re-run ./configure)
else
$(error No $@, please run ./configure first)
fi
$(error Missing or stale $@, please run ./$<)

install: all
$(PYTHON) tools/install.py $@ '$(DESTDIR)' '$(PREFIX)'
Expand Down Expand Up @@ -109,7 +105,7 @@ cctest: all
@out/$(BUILDTYPE)/$@

v8:
tools/make-v8.sh v8
tools/make-v8.sh
$(MAKE) -C deps/v8 $(V8_ARCH).$(BUILDTYPE_LOWER) $(V8_BUILD_OPTIONS)

test: | cctest # Depends on 'all'.
Expand Down Expand Up @@ -196,6 +192,7 @@ test-ci-js:
$(TEST_CI_ARGS) $(CI_JS_SUITES)

test-ci: | build-addons
out/Release/cctest --gtest_output=tap:cctest.tap
$(PYTHON) tools/test.py -p tap --logfile test.tap --mode=release --flaky-tests=$(FLAKY_TESTS) \
$(TEST_CI_ARGS) $(CI_NATIVE_SUITES) $(CI_JS_SUITES)

Expand Down Expand Up @@ -287,7 +284,7 @@ out/doc/%: doc/%
# check if ./node is actually set, else use user pre-installed binary
gen-json = tools/doc/generate.js --format=json $< > $@
out/doc/api/%.json: doc/api/%.md
[ -e tools/doc/node_modules/js-yaml/package.json ] || \
@[ -e tools/doc/node_modules/js-yaml/package.json ] || \
[ -e tools/eslint/node_modules/js-yaml/package.json ] || \
if [ -x $(NODE) ]; then \
cd tools/doc && ../../$(NODE) ../../$(NPM) install; \
Expand All @@ -299,7 +296,7 @@ out/doc/api/%.json: doc/api/%.md
# check if ./node is actually set, else use user pre-installed binary
gen-html = tools/doc/generate.js --node-version=$(FULLVERSION) --format=html --template=doc/template.html $< > $@
out/doc/api/%.html: doc/api/%.md
[ -e tools/doc/node_modules/js-yaml/package.json ] || \
@[ -e tools/doc/node_modules/js-yaml/package.json ] || \
[ -e tools/eslint/node_modules/js-yaml/package.json ] || \
if [ -x $(NODE) ]; then \
cd tools/doc && ../../$(NODE) ../../$(NPM) install; \
Expand Down
8 changes: 5 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -186,6 +186,8 @@ more information about the governance of the Node.js project, see
**Shigeki Ohtsu** &lt;ohtsu@iij.ad.jp&gt;
* [TheAlphaNerd](https://github.com/TheAlphaNerd) -
**Myles Borins** &lt;myles.borins@gmail.com&gt;
* [thefourtheye](https://github.com/thefourtheye) -
**Sakthipriyan Vairamani** &lt;thechargingvolcano@gmail.com&gt;
* [trevnorris](https://github.com/trevnorris) -
**Trevor Norris** &lt;trev.norris@gmail.com&gt;
* [Trott](https://github.com/Trott) -
Expand Down Expand Up @@ -237,10 +239,12 @@ more information about the governance of the Node.js project, see
**Ilkka Myller** &lt;ilkka.myller@nodefield.com&gt;
* [isaacs](https://github.com/isaacs) -
**Isaac Z. Schlueter** &lt;i@izs.me&gt;
* [italoacasas](https://github.com/italoacasas)
**Italo A. Casas** &lt;me@italoacasas.com&gt;
* [iWuzHere](https://github.com/iWuzHere) -
**Imran Iqbal** &lt;imran@imraniqbal.org&gt;
* [JacksonTian](https://github.com/JacksonTian) -
**Jackson Tian** &lt;shvyo1987@gmail.com&gt;
**Jackson Tian** &lt;shyvo1987@gmail.com&gt;
* [jbergstroem](https://github.com/jbergstroem) -
**Johan Bergström** &lt;bugs@bergstroem.nu&gt;
* [jhamhader](https://github.com/jhamhader) -
Expand Down Expand Up @@ -319,8 +323,6 @@ more information about the governance of the Node.js project, see
**Michaël Zasso** &lt;targos@protonmail.com&gt;
* [tellnes](https://github.com/tellnes) -
**Christian Tellnes** &lt;christian@tellnes.no&gt;
* [thefourtheye](https://github.com/thefourtheye) -
**Sakthipriyan Vairamani** &lt;thechargingvolcano@gmail.com&gt;
* [thekemkid](https://github.com/thekemkid) -
**Glen Keane** &lt;glenkeane.94@gmail.com&gt;
* [thlorenz](https://github.com/thlorenz) -
Expand Down
23 changes: 14 additions & 9 deletions WORKING_GROUPS.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ back in to the CTC.
* [Website](#website)
* [Streams](#streams)
* [Build](#build)
* [Tracing](#tracing)
* [Diagnostics](#diagnostics)
* [i18n](#i18n)
* [Evangelism](#evangelism)
* [Roadmap](#roadmap)
Expand Down Expand Up @@ -81,17 +81,22 @@ Its responsibilities are:
* Creates and manages build-containers.


### [Tracing](https://github.com/nodejs/tracing-wg)
### [Diagnostics](https://github.com/nodejs/diagnostics)

The tracing working group's purpose is to increase the
transparency of software written in Node.js.
The diagnostics working group's purpose is to surface a set of comprehensive,
documented, and extensible diagnostic interfaces for use by
Node.js tools and JavaScript VMs.

Its responsibilities are:
* Collaboration with V8 to integrate with `trace_event`.
* Maintenance and iteration on AsyncWrap.
* Maintenance and improvements to system tracing support (DTrace, LTTng, etc.)
* Documentation of tracing and debugging techniques.
* Fostering a tracing and debugging ecosystem.

* Collaborate with V8 to integrate `v8_inspector` into Node.js.
* Collaborate with V8 to integrate `trace_event` into Node.js.
* Collaborate with Core to refine `async_wrap` and `async_hooks`.
* Maintain and improve OS trace system integration (e.g. ETW, LTTNG, dtrace).
* Document diagnostic capabilities and APIs in Node.js and its components.
* Explore opportunities and gaps, discuss feature requests, and address
conflicts in Node.js diagnostics.
* Foster an ecosystem of diagnostics tools for Node.js.

### i18n

Expand Down
Loading