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

v6.9.2 proposal #9735

Merged
merged 145 commits into from
Dec 6, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
145 commits
Select commit Hold shift + click to select a range
0fcf249
deps: cherry-pick bb4974d from v8 upstream
Oct 19, 2016
8b85d47
tools: use long format for gpg fingerprint
MylesBorins Oct 24, 2016
7dc875c
v8: update make-v8.sh to use git
Nov 1, 2016
a643d3c
test: output tap13 instead of almost-tap
jbergstroem Oct 12, 2016
575fc4e
gtest: output tap comments as yamlish
jbergstroem Oct 25, 2016
4141c77
gitignore: ignore all tap files
jbergstroem Oct 25, 2016
e2bb2a2
tools: fix release script on macOS 10.12
evanlucas Sep 28, 2016
638ef09
doc: fix typo in http.md
anu0012 Oct 18, 2016
ec90f73
doc: reference signal(7) for the list of signals
emadb Oct 27, 2016
2ea5db9
doc: do not link in the headings
thefourtheye Nov 2, 2016
d312899
doc: revise http documentation
TimothyGu Sep 10, 2016
0e37a6a
src: fix typo rval to value
maasencioh Oct 11, 2016
70eadea
doc: fix broken links in changelogs
evanlucas Aug 16, 2016
cc6b2f4
test: fixes that do not affect performance
larissayvette Oct 10, 2016
847b15c
governance: expand use of CTC issue tracker
Trott Oct 6, 2016
9cc9001
test: refactor test-file-*
Oct 10, 2016
9cfa91b
crypto: use SSL_get_SSL_CTX.
agl Oct 9, 2016
c0f8198
doc: fix typo
seishun Oct 13, 2016
ae3f31b
test: fix issues reported by Coverity
Sep 30, 2016
3af679e
doc: explain why GitHub merge button is not used
jalafel Oct 12, 2016
0a2a39c
doc: explains why Reviewed-By is added in PRs
jalafel Oct 12, 2016
97748c6
test: move module out of fixture directory
Trott Oct 11, 2016
0d21f95
doc: highlight deprecated API in ToC
ilfroloff Sep 2, 2016
9de8cfe
build: fix config.gypi target
danbev Oct 12, 2016
cbfde3c
child_process: update outdated comment
tanujasawant Oct 9, 2016
0f1a22d
net: fix ambiguity in EOF handling
indutny Oct 12, 2016
87285ed
tools: avoid let in for loops
jalafel Oct 12, 2016
b2a2a57
doc: specify that errno is a number, not a string
Oct 10, 2016
def6874
test: use npm sandbox in test-npm-install
joaocgreis Oct 13, 2016
4d4d02a
crypto: fix faulty logic in iv size check
bnoordhuis Oct 11, 2016
de2f050
doc: update reference to list hash algorithms in crypto.md
sstern6 Oct 11, 2016
2c5b27a
doc: improved example for http.get
marzelin Oct 12, 2016
e5777b3
doc: edit Stream api grammar
bcmarinacci Oct 14, 2016
fd006e5
doc: further improve child_process doc types
Ingramz Oct 14, 2016
bdd91e0
doc: fix typo in zlib.md
parambirs Oct 17, 2016
127ed73
test: remove unused common.libDir
Trott Oct 17, 2016
39a53a0
test: remove unneeded escaping in template strings
Trott Oct 15, 2016
e9d5cd7
tools: update ESLint to v3.8.0
Trott Oct 15, 2016
6c9a84b
doc: add ctc-review label information
Trott Oct 13, 2016
e680ad5
doc: fix header level for crypto.constants
evanlucas Oct 19, 2016
a038115
doc: suggest nodejs/help for general support
Oct 17, 2016
cfcf948
doc: v6 is now LTS rather than Current
Fishrock123 Oct 19, 2016
3ee94f2
doc: remove confusing reference in governance doc
Trott Oct 13, 2016
79e998a
doc: add CTC meeting minutes for 2016-10-12
mhdawson Oct 13, 2016
2230c26
deps: upgrade npm to 3.10.9
zkat Oct 26, 2016
39b4a1c
deps: revert default gtest reporter change
mscdex Oct 17, 2016
bda45b5
deps: backport 5c8cb16 from upstream V8
cristiancavalli Nov 2, 2016
6f78089
test: fix flaky test-child-process-fork-dgram
Trott Oct 14, 2016
02f7e3a
test: checking if error constructor is assert.AssertionError
larissayvette Oct 12, 2016
88cd4cf
test: rename target to exports for consistency
danbev Oct 17, 2016
7b75cb9
test,lib,benchmark: match function names
Trott Oct 15, 2016
5c42d98
test: remove duplicate required module
Trott Oct 18, 2016
9077f63
tools: replace custom lint rule for getter/setter
Trott Oct 19, 2016
53de0c2
doc: improve header styling for API docs
Fishrock123 Sep 27, 2016
ce2d434
test: remove arbitrary timer
Trott Oct 19, 2016
ae73ecb
doc: add 2016-10-19 CTC meeting minutes
joshgav Oct 19, 2016
2a9fc7c
doc: add 2016-09-28 CTC meeting minutes
joshgav Oct 27, 2016
925a51b
doc: add 2016-10-05 CTC meeting minutes
joshgav Oct 27, 2016
4c4b0f7
doc: add 2016-10-26 CTC meeting minutes
Trott Oct 28, 2016
1b79274
doc: add Sakthipriyan to the CTC
rvagg Nov 2, 2016
4f25236
doc: fix link to cli.md in vm.md
danbev Nov 5, 2016
a8840bb
deps: cherry-pick 3c39bac from V8 upstream
Oct 17, 2016
804b398
deps: revert botched V8 backport
Nov 15, 2016
96e8e86
deps: cherry-pick 6f68f30 from v8 upstream
stefanmb Jul 20, 2016
60704fb
test: fix flaky test-timers-blocking-callback
Trott Oct 20, 2016
a120199
tools: enable ES2016 syntax support in ESLint
targos Oct 21, 2016
ee01594
doc: fixes formatting in process
Oct 22, 2016
a46c027
test: move flaky test to test/pummel
bnoordhuis Oct 22, 2016
18a235b
test: make flaky pummel test more reliable
bnoordhuis Oct 22, 2016
1d79af6
test: case sensitivity of env variables
oliversalzburg Oct 18, 2016
6f212b9
doc: mention case-insensitive env on windows
oliversalzburg Oct 18, 2016
a5860b4
doc: clarify relation between a file and a module
marzelin Oct 11, 2016
ae3ce7f
doc: clarify buffer toString docs.
Oct 8, 2016
adee939
doc: more realistic custom inspect example
Havvy Oct 1, 2016
07d34f9
tools: remove dangling eslint symlink
sam-github Oct 26, 2016
210ae56
test: prevent workers outliving parent
sam-github Oct 24, 2016
f64d93f
test: writable stream finished state
italoacasas Sep 27, 2016
7fbfb73
test: writable stream ending state
italoacasas Sep 22, 2016
b3f8f89
inspector: no URLs when the debugger is connected
Oct 3, 2016
1fee6c1
test: writable stream needDrain state
italoacasas Sep 27, 2016
eeaadcd
doc: add italoacasas to collaborators
Nov 18, 2016
d2b0cae
doc: update CONTRIBUTING.md to address editing PRs
gibfahn Oct 19, 2016
f0a8bcc
deps: back port OpenBSD fix in c-ares/c-ares
qbit Oct 23, 2016
b5bcd25
inspector: fix request path nullptr dereference
bnoordhuis Oct 19, 2016
ef1cf6b
test: remove test-v8-inspector-json-protocol test
bnoordhuis Oct 19, 2016
5efb3c3
lib: fix beforeExit not working with -e
bnoordhuis Sep 28, 2016
ad4cc36
test: add coverage for execFileSync() errors
cjihrig Oct 20, 2016
653f092
doc: simplify process.memoryUsage() example code
watson Nov 12, 2016
0276e9e
buffer: coerce slice parameters consistently
thefourtheye Oct 14, 2016
0cffa3c
buffer: coerce offset using Math.trunc()
cjihrig Oct 28, 2016
b867294
child_process: remove unreachable execSync() code
cjihrig Oct 20, 2016
e108f20
buffer: use correct name for custom inspect symbol
charmander Oct 26, 2016
0fdfba8
test: fix flaky test by removing timer
evanlucas Oct 20, 2016
b83b517
test: add child_process.exec() timeout coverage
cjihrig Oct 20, 2016
89eb175
src: remove unused function
mscdex Oct 23, 2016
8d985c2
test: clean up `test-child-process-exec-cwd.js`
jeenalee Oct 21, 2016
9cb236f
tls: fix leak of WriteWrap+TLSWrap combination
indutny Nov 12, 2016
627c0cb
doc: child_process .stdio accepts a String type
skovhus Nov 16, 2016
0c32b03
test: remove err timer from test-http-set-timeout
BethGriggs Oct 24, 2016
88e60c2
test: use strict assertions in module loader test
bnoordhuis Oct 24, 2016
2388648
tools: make --repeat work with -j in test.py
Trott Oct 24, 2016
1d54f07
test: refactor /parallel/test-cluster-uncaught-exception.js to ES6
deverickapollo Oct 21, 2016
52a04bb
util: use template strings
a0viedo Oct 17, 2016
ed3de08
repl: make `key` of `repl.write()` optional always
addaleax Oct 20, 2016
58b60fc
repl: don’t write to input stream in editor mode
addaleax Oct 20, 2016
5eeac8c
benchmark: add microbenchmarks for ES Map
rvagg Jul 7, 2016
4fcc2c1
test: run all of test-timers-blocking-callback
Trott Oct 26, 2016
c857586
build: use wxneeded on openbsd
qbit Oct 21, 2016
4ef7f00
test: refactor test-async-wrap-check-providers
Oct 26, 2016
8b2b08a
test: fix flaky test-fs-watch-recursive on OS X
Trott Oct 26, 2016
ce05b70
test: fix freebsd10-64 CI failures
Trott Oct 27, 2016
bec1cca
test: clean up dgram-broadcast-multi-process test
iredelmeier Oct 27, 2016
7c90d96
doc: update OpenSSL links
kobelb Oct 28, 2016
c379c29
doc: fs: fix link to mkdtemp
coderaiser Oct 31, 2016
c31fa24
doc: fix broken links to Buffer.from(string)
jmm Oct 26, 2016
5e1fd28
test: refactor test-http-client-readable
Trott Oct 28, 2016
a178abf
lib: change == to === in linkedlist
jedireza Oct 29, 2016
5d971af
doc: fix outdate ninja link
lovexi Oct 25, 2016
6908bc4
doc: add more internal links to fs.Stats object
zeke Oct 28, 2016
7b60288
doc: use 'an' over 'a', remove redundant sentence
zeke Oct 28, 2016
2c056a4
test: remove timer in test-dgram-send-empty-array
Trott Oct 29, 2016
54def06
test: add test for HTTP client "aborted" event
kemitchell Jun 22, 2016
5c2ed2e
build: make node-gyp output silent
thefourtheye Oct 9, 2016
1726dc7
doc: update Diagnostics WG info
joshgav Oct 27, 2016
259b942
test: move timer-dependent test to sequential
Trott Nov 3, 2016
d36c6f5
doc: update GOVERNANCE.md to use "meeting chair"
Trott Nov 3, 2016
6fc0f1b
doc: note that tests should include a description
gibfahn Nov 5, 2016
b91d5e1
test: update http-header-obstext
gibfahn Nov 5, 2016
d926f16
doc: update minute-taking procedure for CTC
Trott Nov 2, 2016
aaf7834
test: fix flaky test-force-repl-with-eval
santigimeno Nov 4, 2016
093d677
test: fix flaky test-net-GH-5504
santigimeno Nov 4, 2016
1ed58ed
build: reduce noise from doc target
danbev Nov 4, 2016
4ccdbb2
test: improve test-debugger-util-regression
santigimeno Nov 6, 2016
c1aee02
build: start comments at beginning of line
thefourtheye Oct 31, 2016
0216dbe
test: remove timers from streams test
addaleax Oct 29, 2016
cf5a00e
inspector: do not prompt to use localhost
Nov 3, 2016
8a91616
src: replace SetNamedPropertyHandler()
AnnaMag Oct 6, 2016
bd7c1e7
tools: allow test.py to use full paths of tests
reconbot Nov 19, 2016
0d15ec8
deps: cherry pick 7166503 from upstream v8
cristiancavalli Oct 18, 2016
24fc1e2
test: cleanup test-dgram-error-message-address
Goyapa Oct 5, 2016
59d8255
test: remove watchdog in test-debug-signal-cluster
Trott Nov 5, 2016
9ed60d3
async_wrap: mode constructor/destructor to .cc
trevnorris Nov 23, 2016
3e5b2eb
async_wrap: make Initialize a static class member
trevnorris Nov 23, 2016
f3b0cf5
async_wrap: call destroy() callback in uv_idle_t
trevnorris Nov 23, 2016
94a3aef
2016-12-06, Version 6.9.2 'Boron' (LTS) Release
Nov 22, 2016
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
10 changes: 9 additions & 1 deletion .eslintrc
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@ env:
node: true
es6: true

parserOptions:
ecmaVersion: 2016

rules:
# Possible Errors
# http://eslint.org/docs/rules/#possible-errors
Expand Down Expand Up @@ -63,6 +66,12 @@ rules:
object: assert,
property: deepEqual,
message: Please use assert.deepStrictEqual().
}, {
property: __defineGetter__,
message: __defineGetter__ is deprecated.
}, {
property: __defineSetter__,
message: __defineSetter__ is deprecated.
}]

# Stylistic Issues
Expand Down Expand Up @@ -112,7 +121,6 @@ rules:
align-multiline-assignment: 2
assert-fail-single-argument: 2
new-with-error: [2, Error, RangeError, TypeError, SyntaxError, ReferenceError]
no-definegetter-definesetter: 2

# Global scoped method and vars
globals:
Expand Down
6 changes: 6 additions & 0 deletions .github/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
<!--
Thank you for reporting an issue.

This issue tracker is for bugs and issues found within Node.js core.
If you require more general support please file an issue on our help
repo. https://github.com/nodejs/help


Please fill in as much of the template below as you're able.

Version: output of `node -v`
Expand Down
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ deps/npm/node_modules/.bin/
# test artifacts
tools/faketime
icu_config.gypi
test.tap
*.tap

# Xcode workspaces and project folders
*.xcodeproj
Expand Down
2 changes: 1 addition & 1 deletion BUILDING.md
Original file line number Diff line number Diff line change
Expand Up @@ -230,7 +230,7 @@ as `deps/icu` (You'll have: `deps/icu/source/...`)
NOTE: Windows is not yet supported

It is possible to build Node.js with
[OpenSSL FIPS module](https://www.openssl.org/docs/fips/fipsnotes.html).
[OpenSSL FIPS module](https://www.openssl.org/docs/fipsnotes.html).

**Note**: building in this way does **not** allow you to claim that the
runtime is FIPS 140-2 validated. Instead you can indicate that the runtime
Expand Down
5 changes: 3 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,15 +18,16 @@ release.

<table>
<tr>
<th><a href="doc/changelogs/CHANGELOG_V6.md">v6</a><sup>Current</sup</th>
<th title="LTS Until 2019-04"><a href="doc/changelogs/CHANGELOG_V6.md">v6</a><sup>LTS</sup</th>
<th><a href="doc/changelogs/CHANGELOG_V5.md">v5</a></th>
<th title="LTS Until 2018-04"><a href="doc/changelogs/CHANGELOG_V4.md">v4</a><sup>LTS</sup></th>
<th title="LTS Until 2016-12-31"><a href="doc/changelogs/CHANGELOG_V012.md">v0.12</a><sup>LTS</sup></th>
<th title="LTS Until 2016-10-31" colspan="3"><a href="doc/changelogs/CHANGELOG_V010.md">v0.10</a><sup>LTS</sup></th>
</tr>
<tr>
<td valign="top">
<b><a href="doc/changelogs/CHANGELOG_V6.md#6.9.1">6.9.1</a></b><br/>
<b><a href="doc/changelogs/CHANGELOG_V6.md#6.9.2">6.9.2</a></b><br/>
<a href="doc/changelogs/CHANGELOG_V6.md#6.9.1">6.9.1</a><br/>
<a href="doc/changelogs/CHANGELOG_V6.md#6.9.0">6.9.0</a><br/>
<a href="doc/changelogs/CHANGELOG_V6.md#6.8.1">6.8.1</a><br/>
<a href="doc/changelogs/CHANGELOG_V6.md#6.8.0">6.8.0</a><br/>
Expand Down
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 @@ -89,6 +89,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 @@ -194,10 +201,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
Loading