Skip to content

Commit

Permalink
doc: update guidance for adding new modules
Browse files Browse the repository at this point in the history
- updated based on decision to use node: prefix in
  nodejs/TSC#1206
- updated based on agreement in TSC meeting
  on adding /promises to existing modules as per
  minutes - nodejs/TSC#1281

Signed-off-by: Michael Dawson <[email protected]>

PR-URL: nodejs/node#44576
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Geoffrey Booth <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Joyee Cheung <[email protected]>
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: Beth Griggs <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: Danielle Adams <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
  • Loading branch information
mhdawson authored and guangwong committed Jan 3, 2023
1 parent ca34771 commit d63ad83
Showing 1 changed file with 14 additions and 6 deletions.
20 changes: 14 additions & 6 deletions doc/contributing/collaborator-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -392,13 +392,21 @@ metadata. Raise a pull request like any other change.

Treat commits that introduce new core modules with extra care.

Check if the module's name conflicts with an existing ecosystem module. If it
does, choose a different name unless the module owner has agreed in writing to
transfer it.
New modules must only be added with the `node:` prefix.

If the new module name is free, register a placeholder in the module registry as
soon as possible. Link to the pull request that introduces the new core module
in the placeholder's `README`.
When adding promises to an existing API, add `/promises`
(`inspector/promises`, etc.). Apply the `semver-major` label to the addition.

If the new module name is free in npm, register
a placeholder in the module registry as soon as possible. Link to the pull
request that introduces the new core module in the placeholder's `README`.

If the module name is not free and the module is
not widely used, contact the owner to see if they would be willing to transfer
it to the project.

We register a placeholder without the `node:` prefix whenever
possible to avoid confusion and typosquatting attacks.

For pull requests introducing new core modules:

Expand Down

0 comments on commit d63ad83

Please sign in to comment.