Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nodejs/node.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames M Snell <jasnell@gmail.com>2017-08-25 01:23:33 +0300
committerMyles Borins <mylesborins@google.com>2017-09-12 04:18:15 +0300
commit859abe5169a3aed4df241ce76f5b839b59fe21e4 (patch)
tree75de7db0af1bf6bf9d7c4344d161c24038e7d5e3 /COLLABORATOR_GUIDE.md
parent7174dc2e8a5f4486ebc795eb06a184b1bf7445b1 (diff)
meta: considerations for new core modules
PR-URL: https://github.com/nodejs/node/pull/15022 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Yuta Hiroto <hello@about-hiroppy.com> Reviewed-By: Andreas Madsen <amwebdk@gmail.com>
Diffstat (limited to 'COLLABORATOR_GUIDE.md')
-rw-r--r--COLLABORATOR_GUIDE.md28
1 files changed, 28 insertions, 0 deletions
diff --git a/COLLABORATOR_GUIDE.md b/COLLABORATOR_GUIDE.md
index bb012ba90e0..cad067dd330 100644
--- a/COLLABORATOR_GUIDE.md
+++ b/COLLABORATOR_GUIDE.md
@@ -263,6 +263,32 @@ multiple commits. Commit metadata and the reason for the revert should be
appended. Commit message rules about line length and subsystem can be ignored.
A Pull Request should be raised and approved like any other change.
+### Introducing New Modules
+
+Semver-minor commits that introduce new core modules should be treated with
+extra care.
+
+The name of the new core module should not conflict with any existing
+module in the ecosystem unless a written agreement with the owner of those
+modules is reached to transfer ownership.
+
+If the new module name is free, a Collaborator should register a placeholder
+in the module registry as soon as possible, linking to the pull request that
+introduces the new core module.
+
+Pull requests introducing new core modules:
+
+* Must be left open for at least one week for review.
+* Must be labeled using the `ctc-review` label.
+* Must have signoff from at least two CTC members.
+
+New core modules must be landed with a [Stability Index][] of Experimental,
+and must remain Experimental until a semver-major release.
+
+For new modules that involve significant effort, non-trivial additions to
+Node.js or significant new capabilities, an [Enhancement Proposal][] is
+recommended but not required.
+
### Deprecations
Deprecation refers to the identification of Public APIs that should no longer
@@ -642,3 +668,5 @@ release. This process of making a release will be a collaboration between the
LTS working group and the Release team.
[backporting guide]: doc/guides/backporting-to-release-lines.md
+[Stability Index]: https://github.com/nodejs/node/pull/doc/api/documentation.md#stability-index
+[Enhancement Proposal]: https://github.com/nodejs/node-eps