├── .github └── ISSUE_TEMPLATE │ └── 1-request.md ├── LICENSE └── README.md /.github/ISSUE_TEMPLATE/1-request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Position Request 3 | about: Template for requesting a Node.js position on an emerging specification 4 | labels: 5 | --- 6 | 7 | 8 | 9 | ## Request for Node.js Position on an Emerging Specification 10 | 11 | * Specification title: 12 | * Specification or proposal URL (if available): 13 | * Explainer URL (if available): 14 | * Proposal author(s) (`@`-mention GitHub accounts): 15 | * Node.js collaborators or ecosystem members who can provide input (optional) 16 | 17 | ### Notes 18 | 19 | 22 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2024 Node.js 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # standards-positions 2 | The Node.js Projects Official Positions on various standards proposals 3 | 4 | To be filled out soon. This repository will contain the official positions of the Node.js project towards various standards proposals that potentially impact the runtime. Please stay tuned for updates. 5 | 6 | Refs: https://github.com/nodejs/admin/issues/841 7 | 8 | ## Introduction 9 | 10 | This repository serves much the same purpose as Mozilla's standards positions repository seen here: https://github.com/mozilla/standards-positions ... that is, it effectively serves as the repository for the Node.js project's official thoughts for various specifications relevant to Node.js. 11 | 12 | Background 13 | Node.js implements support for multiple internet and web standards (TCP, HTTP, TLS, WHATWG URL, Streams, Encoding, fetch, etc). Historically, the Node.js project has never maintained any official position favorable or unfavorable towards any particular specification. Instead it has relied mostly on the individual opinions and perspectives of individual contributors. Some of these individual contributors have participated in various standards bodies such as TC-39 or WHATWG representing their own personal points of view. That participation, however, often becomes confusing when it is not clear if they are speaking on behalf of the project representing a consensus opinion among the contributors or merely their own individual opinions. This repository seeks to eliminate that confusion by providing an authoritative source for consensus agreements. 14 | 15 | ## Process 16 | 17 | We will apply one of several possible labels to new specifications: 18 | 19 | * “asking for modification” 20 | * “no concerns so far” 21 | * “strong concerns” (and if possible, list of concerns) 22 | * “integration/implementation planned” 23 | * “integration/implementation in progress” 24 | 25 | These positions will be based on our best assessment of the current state of the specification and the potential for it to benefit our users and the ecosystem as a whole. We consider the intended purpose and the design fundamentals of each specification. Incomplete documentation, minor issues, or lack of interoperability testing are not reasons for a negative position, provided that intent is clear. 26 | 27 | We might also use the following labels for specifications where we have not formed a position: 28 | 29 | * defer - Node.js takes no position on this work. 30 | * under consideration - Node.js has not taken a position on this work and is gathering more information. 31 | 32 | An already published position that, for whatever reason, becomes no longer relevant can be marked obsolete. 33 | 34 | A proposal to publish an opinion towards a particular specification would come in the form of a new issue in the nodejs/standards-position repository. The issue should identify the spec and the rationale for seeking a position. ***It should not argue a particular position label*** one way or the other but simply ask that the spec be considered. If there are no objections raised to the proposal after seven calendar days, then the proposal is considered accepted and work can start to publish a position. 35 | 36 | Each position itself would be published as a separate markdown file in the repository, originating with a pull request whose process for acceptance follows the same process as landing semver-major changes in the core Node.js repository. That is, a position paper cannot land without approval from at least two TSC members and without all relevant feedback having been addressed. Collaborators will be encouraged to follow the repository and actively weigh in where they feel necessary. 37 | 38 | Positions are living documents that can be revisited and altered as necessary when new information is received or project requirements evolve. We will use the git history to track any changes in position over time. 39 | 40 | ## Template for proposals 41 | 42 | ``` 43 | 44 | 45 | ## Request for Node.js Position on an Emerging Specification 46 | 47 | * Specification title: 48 | * Specification or proposal URL (if available): 49 | * Explainer URL (if available): 50 | * Proposal author(s) (`@`-mention GitHub accounts): 51 | * Node.js collaborators or ecosystem members who can provide input (optional) 52 | 53 | ### Notes 54 | 55 | Notes about the spec and why it should be considered. Again, please no arguing for a specific position, just details that would be helpful in determining relevancy 56 | ``` 57 | --------------------------------------------------------------------------------