-
Notifications
You must be signed in to change notification settings - Fork 30.4k
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
doc: deprecation clarifications #19522
Changes from 2 commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -403,10 +403,11 @@ recommended but not required. | |
|
||
### Deprecations | ||
|
||
_Deprecation_ refers to the identification of Public APIs that should no longer | ||
be used and that may be removed or modified in backward-incompatible ways in | ||
a future major release of Node.js. Deprecation may be used with internal APIs if | ||
there is expected impact on the user community. | ||
__Deprecation__ refers to the identification of Public APIs that should no | ||
longer be used. | ||
|
||
Once APIs are Deprecated, they are no longer covered by the current or | ||
[Long Term Support][LTS] policies. | ||
|
||
Node.js uses three Deprecation levels: | ||
|
||
|
@@ -415,9 +416,9 @@ Node.js uses three Deprecation levels: | |
notice indicating the deprecated status is added to the API documentation | ||
but no functional changes are implemented in the code. There will be no | ||
runtime deprecation warnings emitted for such deprecations by default. | ||
Documentation-only deprecations may trigger a runtime warning when launched | ||
with [`--pending-deprecation`][] flag (or its alternative, | ||
`NODE_PENDING_DEPRECATION=1` environment variable). | ||
Documentation-only deprecations may trigger an runtime warning when Node.js | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
is launched with the [`--pending-deprecation`][] flag, or the | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
remove comma after |
||
`NODE_PENDING_DEPRECATION=1` environment variable is set. | ||
|
||
* *Runtime Deprecation* refers to the use of process warnings emitted at | ||
runtime the first time that a deprecated API is used. A command-line | ||
|
@@ -427,7 +428,9 @@ Node.js uses three Deprecation levels: | |
deprecated status. | ||
|
||
* *End-of-life* refers to APIs that have gone through Runtime Deprecation and | ||
are ready to be removed from Node.js entirely. | ||
are no longer subject to the semantic versioning and [support policies](LTS) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. As above, the link here doesn't provide clarity. Can you be specific about some aspect of deprecated APIs that is different than everything else other than the semantic version stuff? If not, let's remove |
||
used by the project. Backward-incompatible changes including complete removal | ||
of such APIs may occur at any time. | ||
|
||
Documentation-Only Deprecations may be handled as semver-minor or semver-major | ||
changes. Such deprecations have no impact on the successful operation of running | ||
|
@@ -452,7 +455,9 @@ Deprecations may land in a Node.js minor release but must not be upgraded to | |
a Runtime Deprecation until the next major release.) | ||
|
||
No API can be moved to End-of-life without first having gone through a | ||
Runtime Deprecation cycle. | ||
Runtime Deprecation cycle. However, there is no requirement that deprecated | ||
code must progress ultimately to *End-of-Life*. Documentation-only and runtime | ||
deprecations may remain indefinitely. | ||
|
||
A best effort will be made to communicate pending deprecations and associated | ||
mitigations with the ecosystem as soon as possible (preferably before the pull | ||
|
@@ -832,3 +837,4 @@ LTS working group and the Release team. | |
[node-core-utils-credentials]: https://github.com/nodejs/node-core-utils#setting-up-credentials | ||
["Merge Pull Request"]: https://help.github.com/articles/merging-a-pull-request/#merging-a-pull-request-on-github | ||
[flaky tests]: https://github.com/nodejs/node/issues?q=is%3Aopen+is%3Aissue+label%3A%22CI+%2F+flaky+test%22 | ||
[LTS]: https://github.com/nodejs/Release |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's a link to a repository that doesn't seem to have any policies. Honest, I'm not sure what this sentence means. If it's only about the fact that breaking changes can happen with deprecated APIs, then that's covered later in this doc and much more clearly than here. If it's about something else...what is it?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(I think you can remove this sentence entirely TBQH.)