Skip to content

Commit b83e9b3

Browse files
committed
doc: experimental flag for global accessible APIs
Explicitly document that adding an API to the global scope requires `semver-major` label. Waiving the `semver-major` requires a regular TSC consensus process.
1 parent 431ac16 commit b83e9b3

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

doc/contributing/collaborator-guide.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -437,6 +437,16 @@ For pull requests introducing new core modules:
437437
* Land with a [Stability Index][] of Experimental. The module must remain
438438
Experimental until a semver-major release.
439439

440+
### Introducing new APIs on the global scope
441+
442+
Exposing APIs to the global scope unconditionally without any CLI flags must
443+
always be labeled as `semver-major`. The `semver-major` label may be waived
444+
through the regular TSC consensus process.
445+
446+
It is recommended to start with exposing APIs to the global scope with an
447+
experimental flag, without being labeled as `semver-major`. When the API is a
448+
release candidate, turn the flag on by default with a CLI flag to opt-out.
449+
440450
### Additions to Node-API
441451

442452
Node-API provides an ABI-stable API guaranteed for future Node.js versions.

0 commit comments

Comments
 (0)