mirror of
https://github.com/nodejs/node.git
synced 2024-11-21 10:59:27 +00:00
doc: update markdown formatting for *.md files
Fix formatting that will change when run through upcoming remark preset. PR-URL: https://github.com/nodejs/node/pull/40154 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com>
This commit is contained in:
parent
d05cca94ea
commit
549f96889a
69
BUILDING.md
69
BUILDING.md
@ -120,31 +120,31 @@ platforms. This is true regardless of entries in the table below.
|
|||||||
| FreeBSD | x64 | >= 11 | Experimental | Downgraded as of Node.js 12 <sup>[7](#fn7)</sup> |
|
| FreeBSD | x64 | >= 11 | Experimental | Downgraded as of Node.js 12 <sup>[7](#fn7)</sup> |
|
||||||
|
|
||||||
<em id="fn1">1</em>: GCC 8 is not provided on the base platform. Users will
|
<em id="fn1">1</em>: GCC 8 is not provided on the base platform. Users will
|
||||||
need the
|
need the
|
||||||
[Toolchain test builds PPA](https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test?field.series_filter=xenial)
|
[Toolchain test builds PPA](https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test?field.series_filter=xenial)
|
||||||
or similar to source a newer compiler.
|
or similar to source a newer compiler.
|
||||||
|
|
||||||
<em id="fn2">2</em>: GCC 8 is not provided on the base platform. Users will
|
<em id="fn2">2</em>: GCC 8 is not provided on the base platform. Users will
|
||||||
need the
|
need the
|
||||||
[devtoolset-8](https://www.softwarecollections.org/en/scls/rhscl/devtoolset-8/)
|
[devtoolset-8](https://www.softwarecollections.org/en/scls/rhscl/devtoolset-8/)
|
||||||
or later to source a newer compiler.
|
or later to source a newer compiler.
|
||||||
|
|
||||||
<em id="fn3">3</em>: Older kernel versions may work for ARM64. However the
|
<em id="fn3">3</em>: Older kernel versions may work for ARM64. However the
|
||||||
Node.js test infrastructure only tests >= 4.5.
|
Node.js test infrastructure only tests >= 4.5.
|
||||||
|
|
||||||
<em id="fn4">4</em>: On Windows, running Node.js in Windows terminal emulators
|
<em id="fn4">4</em>: On Windows, running Node.js in Windows terminal emulators
|
||||||
like `mintty` requires the usage of [winpty](https://github.com/rprichard/winpty)
|
like `mintty` requires the usage of [winpty](https://github.com/rprichard/winpty)
|
||||||
for the tty channels to work (e.g. `winpty node.exe script.js`).
|
for the tty channels to work (e.g. `winpty node.exe script.js`).
|
||||||
In "Git bash" if you call the node shell alias (`node` without the `.exe`
|
In "Git bash" if you call the node shell alias (`node` without the `.exe`
|
||||||
extension), `winpty` is used automatically.
|
extension), `winpty` is used automatically.
|
||||||
|
|
||||||
<em id="fn5">5</em>: The Windows Subsystem for Linux (WSL) is not
|
<em id="fn5">5</em>: The Windows Subsystem for Linux (WSL) is not
|
||||||
supported, but the GNU/Linux build process and binaries should work. The
|
supported, but the GNU/Linux build process and binaries should work. The
|
||||||
community will only address issues that reproduce on native GNU/Linux
|
community will only address issues that reproduce on native GNU/Linux
|
||||||
systems. Issues that only reproduce on WSL should be reported in the
|
systems. Issues that only reproduce on WSL should be reported in the
|
||||||
[WSL issue tracker](https://github.com/Microsoft/WSL/issues). Running the
|
[WSL issue tracker](https://github.com/Microsoft/WSL/issues). Running the
|
||||||
Windows binary (`node.exe`) in WSL is not recommended. It will not work
|
Windows binary (`node.exe`) in WSL is not recommended. It will not work
|
||||||
without workarounds such as stdio redirection.
|
without workarounds such as stdio redirection.
|
||||||
|
|
||||||
<em id="fn6">6</em>: Running Node.js on x86 Windows should work and binaries
|
<em id="fn6">6</em>: Running Node.js on x86 Windows should work and binaries
|
||||||
are provided. However, tests in our infrastructure only run on WoW64.
|
are provided. However, tests in our infrastructure only run on WoW64.
|
||||||
@ -195,7 +195,7 @@ Ubuntu 14.04 and Debian 8.
|
|||||||
#### OpenSSL asm support
|
#### OpenSSL asm support
|
||||||
|
|
||||||
OpenSSL-1.1.1 requires the following assembler version for use of asm
|
OpenSSL-1.1.1 requires the following assembler version for use of asm
|
||||||
support on x86_64 and ia32.
|
support on x86\_64 and ia32.
|
||||||
|
|
||||||
For use of AVX-512,
|
For use of AVX-512,
|
||||||
|
|
||||||
@ -212,9 +212,9 @@ For use of AVX2,
|
|||||||
* nasm version 2.10 or higher in Windows
|
* nasm version 2.10 or higher in Windows
|
||||||
|
|
||||||
Please refer to
|
Please refer to
|
||||||
<https://www.openssl.org/docs/man1.1.1/man3/OPENSSL_ia32cap.html> for details.
|
<https://www.openssl.org/docs/man1.1.1/man3/OPENSSL_ia32cap.html> for details.
|
||||||
|
|
||||||
If compiling without one of the above, use `configure` with the
|
If compiling without one of the above, use `configure` with the
|
||||||
`--openssl-no-asm` flag. Otherwise, `configure` will fail.
|
`--openssl-no-asm` flag. Otherwise, `configure` will fail.
|
||||||
|
|
||||||
### Previous versions of this document
|
### Previous versions of this document
|
||||||
@ -232,6 +232,7 @@ Consult previous versions of this document for older versions of Node.js:
|
|||||||
### Note about Python
|
### Note about Python
|
||||||
|
|
||||||
The Node.js project supports Python >= 3 for building and testing.
|
The Node.js project supports Python >= 3 for building and testing.
|
||||||
|
|
||||||
### Unix and macOS
|
### Unix and macOS
|
||||||
|
|
||||||
#### Unix prerequisites
|
#### Unix prerequisites
|
||||||
@ -480,7 +481,7 @@ release version is actually installed when you run `make install`.
|
|||||||
To use the debug build with all the normal dependencies overwrite the release
|
To use the debug build with all the normal dependencies overwrite the release
|
||||||
version in the install directory:
|
version in the install directory:
|
||||||
|
|
||||||
``` console
|
```console
|
||||||
$ make install PREFIX=/opt/node-debug/
|
$ make install PREFIX=/opt/node-debug/
|
||||||
$ cp -a -f out/Debug/node /opt/node-debug/node
|
$ cp -a -f out/Debug/node /opt/node-debug/node
|
||||||
```
|
```
|
||||||
@ -496,7 +497,7 @@ was captured on (i.e. 64-bit `gdb` for `node` built on a 64-bit system, Linux
|
|||||||
|
|
||||||
Example of generating a backtrace from the core dump:
|
Example of generating a backtrace from the core dump:
|
||||||
|
|
||||||
``` console
|
```console
|
||||||
$ gdb /opt/node-debug/node core.node.8.1535359906
|
$ gdb /opt/node-debug/node core.node.8.1535359906
|
||||||
$ backtrace
|
$ backtrace
|
||||||
```
|
```
|
||||||
@ -507,12 +508,12 @@ $ backtrace
|
|||||||
related bugs. ASAN builds are currently only supported on linux.
|
related bugs. ASAN builds are currently only supported on linux.
|
||||||
If you want to check it on Windows or macOS or you want a consistent toolchain
|
If you want to check it on Windows or macOS or you want a consistent toolchain
|
||||||
on Linux, you can try [Docker](https://www.docker.com/products/docker-desktop)
|
on Linux, you can try [Docker](https://www.docker.com/products/docker-desktop)
|
||||||
(using an image like `gengjiawen/node-build:2020-02-14`).
|
(using an image like `gengjiawen/node-build:2020-02-14`).
|
||||||
|
|
||||||
The `--debug` is not necessary and will slow down build and testing, but it can
|
The `--debug` is not necessary and will slow down build and testing, but it can
|
||||||
show clear stacktrace if ASAN hits an issue.
|
show clear stacktrace if ASAN hits an issue.
|
||||||
|
|
||||||
``` console
|
```console
|
||||||
$ ./configure --debug --enable-asan && make -j4
|
$ ./configure --debug --enable-asan && make -j4
|
||||||
$ make test-only
|
$ make test-only
|
||||||
```
|
```
|
||||||
@ -521,6 +522,7 @@ $ make test-only
|
|||||||
|
|
||||||
If you plan to frequently rebuild Node.js, especially if using several branches,
|
If you plan to frequently rebuild Node.js, especially if using several branches,
|
||||||
installing `ccache` can help to greatly reduce build times. Set up with:
|
installing `ccache` can help to greatly reduce build times. Set up with:
|
||||||
|
|
||||||
```console
|
```console
|
||||||
$ sudo apt install ccache # for Debian/Ubuntu, included in most Linux distros
|
$ sudo apt install ccache # for Debian/Ubuntu, included in most Linux distros
|
||||||
$ ccache -o cache_dir=<tmp_dir>
|
$ ccache -o cache_dir=<tmp_dir>
|
||||||
@ -528,13 +530,16 @@ $ ccache -o max_size=5.0G
|
|||||||
$ export CC="ccache gcc" # add to your .profile
|
$ export CC="ccache gcc" # add to your .profile
|
||||||
$ export CXX="ccache g++" # add to your .profile
|
$ export CXX="ccache g++" # add to your .profile
|
||||||
```
|
```
|
||||||
|
|
||||||
This will allow for near-instantaneous rebuilds even when switching branches.
|
This will allow for near-instantaneous rebuilds even when switching branches.
|
||||||
|
|
||||||
When modifying only the JS layer in `lib`, it is possible to externally load it
|
When modifying only the JS layer in `lib`, it is possible to externally load it
|
||||||
without modifying the executable:
|
without modifying the executable:
|
||||||
|
|
||||||
```console
|
```console
|
||||||
$ ./configure --node-builtin-modules-path $(pwd)
|
$ ./configure --node-builtin-modules-path $(pwd)
|
||||||
```
|
```
|
||||||
|
|
||||||
The resulting binary won't include any JS files and will try to load them from
|
The resulting binary won't include any JS files and will try to load them from
|
||||||
the specified directory. The JS debugger of Visual Studio Code supports this
|
the specified directory. The JS debugger of Visual Studio Code supports this
|
||||||
configuration since the November 2020 version and allows for setting
|
configuration since the November 2020 version and allows for setting
|
||||||
@ -678,7 +683,7 @@ $ ./configure --with-intl=full-icu
|
|||||||
|
|
||||||
### Trimmed: `small-icu` (English only) support
|
### Trimmed: `small-icu` (English only) support
|
||||||
|
|
||||||
In this configuration, only English data is included, but
|
In this configuration, only English data is included, but
|
||||||
the full `Intl` (ECMA-402) APIs. It does not need to download
|
the full `Intl` (ECMA-402) APIs. It does not need to download
|
||||||
any dependencies to function. You can add full data at runtime.
|
any dependencies to function. You can add full data at runtime.
|
||||||
|
|
||||||
@ -774,6 +779,7 @@ If you want to build Node.js using openssl-3.0.0+quic, you can follow these
|
|||||||
steps:
|
steps:
|
||||||
|
|
||||||
**clone OpenSSL source and prepare build**
|
**clone OpenSSL source and prepare build**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git clone git@github.com:quictls/openssl.git
|
git clone git@github.com:quictls/openssl.git
|
||||||
|
|
||||||
@ -791,6 +797,7 @@ will publish the OpenSSL libraries and such. We will also use this path
|
|||||||
(and sub-paths) later when compiling Node.js.
|
(and sub-paths) later when compiling Node.js.
|
||||||
|
|
||||||
**compile and install OpenSSL**
|
**compile and install OpenSSL**
|
||||||
|
|
||||||
```console
|
```console
|
||||||
make -j8
|
make -j8
|
||||||
make install
|
make install
|
||||||
@ -806,6 +813,7 @@ find the `fipsmodule.cnf` file - let's add the following to the end of the
|
|||||||
`openssl.cnf` file.
|
`openssl.cnf` file.
|
||||||
|
|
||||||
**alter openssl.cnf**
|
**alter openssl.cnf**
|
||||||
|
|
||||||
```text
|
```text
|
||||||
.include fipsmodule.cnf
|
.include fipsmodule.cnf
|
||||||
|
|
||||||
@ -826,6 +834,7 @@ sure that you specify an absolute path for the `.include fipsmodule.cnf` line -
|
|||||||
using relative paths did not work on my system!
|
using relative paths did not work on my system!
|
||||||
|
|
||||||
**alter openssl.cnf using a script**
|
**alter openssl.cnf using a script**
|
||||||
|
|
||||||
```console
|
```console
|
||||||
cat <<EOT >> /path/to/install/dir/ssl/openssl.cnf
|
cat <<EOT >> /path/to/install/dir/ssl/openssl.cnf
|
||||||
.include /path/to/install/dir/ssl/fipsmodule.cnf
|
.include /path/to/install/dir/ssl/fipsmodule.cnf
|
||||||
@ -845,12 +854,14 @@ EOT
|
|||||||
As you might have picked a non-custom path for your OpenSSL install dir, we
|
As you might have picked a non-custom path for your OpenSSL install dir, we
|
||||||
have to export the following two environment variables in order for Node.js to
|
have to export the following two environment variables in order for Node.js to
|
||||||
find our OpenSSL modules we built beforehand:
|
find our OpenSSL modules we built beforehand:
|
||||||
|
|
||||||
```console
|
```console
|
||||||
export OPENSSL_CONF=/path/to/install/dir/ssl/openssl.cnf
|
export OPENSSL_CONF=/path/to/install/dir/ssl/openssl.cnf
|
||||||
export OPENSSL_MODULES=/path/to/install/dir/lib/ossl-modules
|
export OPENSSL_MODULES=/path/to/install/dir/lib/ossl-modules
|
||||||
```
|
```
|
||||||
|
|
||||||
**build Node.js**
|
**build Node.js**
|
||||||
|
|
||||||
```console
|
```console
|
||||||
./configure \
|
./configure \
|
||||||
--shared-openssl \
|
--shared-openssl \
|
||||||
@ -865,6 +876,7 @@ make -j8
|
|||||||
```
|
```
|
||||||
|
|
||||||
**verify the produced executable**
|
**verify the produced executable**
|
||||||
|
|
||||||
```console
|
```console
|
||||||
ldd ./node
|
ldd ./node
|
||||||
linux-vdso.so.1 (0x00007ffd7917b000)
|
linux-vdso.so.1 (0x00007ffd7917b000)
|
||||||
@ -884,12 +896,14 @@ If the `ldd` command says that `libcrypto` cannot be found one needs to set
|
|||||||
`--shared-openssl-libpath` (see previous step).
|
`--shared-openssl-libpath` (see previous step).
|
||||||
|
|
||||||
**verify the OpenSSL version**
|
**verify the OpenSSL version**
|
||||||
|
|
||||||
```console
|
```console
|
||||||
./node -p process.versions.openssl
|
./node -p process.versions.openssl
|
||||||
3.0.0-alpha16+quic
|
3.0.0-alpha16+quic
|
||||||
```
|
```
|
||||||
|
|
||||||
**verify that FIPS is available**
|
**verify that FIPS is available**
|
||||||
|
|
||||||
```console
|
```console
|
||||||
./node -p 'process.config.variables.openssl_is_fips'
|
./node -p 'process.config.variables.openssl_is_fips'
|
||||||
true
|
true
|
||||||
@ -905,13 +919,16 @@ executable. See sections
|
|||||||
[Enabling FIPS using OpenSSL config](#enabling-fips-using-openssl-config) below.
|
[Enabling FIPS using OpenSSL config](#enabling-fips-using-openssl-config) below.
|
||||||
|
|
||||||
### Enabling FIPS using Node.js options
|
### Enabling FIPS using Node.js options
|
||||||
|
|
||||||
This is done using one of the Node.js options `--enable-fips` or
|
This is done using one of the Node.js options `--enable-fips` or
|
||||||
`--force-fips`, for example:
|
`--force-fips`, for example:
|
||||||
|
|
||||||
```console
|
```console
|
||||||
$ node --enable-fips -p 'crypto.getFips()'
|
$ node --enable-fips -p 'crypto.getFips()'
|
||||||
```
|
```
|
||||||
|
|
||||||
### Enabling FIPS using OpenSSL config
|
### Enabling FIPS using OpenSSL config
|
||||||
|
|
||||||
This example show that using OpenSSL's configuration file, FIPS can be enabled
|
This example show that using OpenSSL's configuration file, FIPS can be enabled
|
||||||
without specifying the `--enable-fips` or `--force-fips` options by setting
|
without specifying the `--enable-fips` or `--force-fips` options by setting
|
||||||
`default_properties = fips=yes` in the FIPS configuration file. See
|
`default_properties = fips=yes` in the FIPS configuration file. See
|
||||||
@ -920,6 +937,7 @@ for details.
|
|||||||
|
|
||||||
For this to work the OpenSSL configuration file (default openssl.cnf) needs to
|
For this to work the OpenSSL configuration file (default openssl.cnf) needs to
|
||||||
be updated. The following shows an example:
|
be updated. The following shows an example:
|
||||||
|
|
||||||
```console
|
```console
|
||||||
openssl_conf = openssl_init
|
openssl_conf = openssl_init
|
||||||
|
|
||||||
@ -939,6 +957,7 @@ activate = 1
|
|||||||
[algorithm_sect]
|
[algorithm_sect]
|
||||||
default_properties = fips=yes
|
default_properties = fips=yes
|
||||||
```
|
```
|
||||||
|
|
||||||
After this change Node.js can be run without the `--enable-fips` or `--force-fips`
|
After this change Node.js can be run without the `--enable-fips` or `--force-fips`
|
||||||
options.
|
options.
|
||||||
|
|
||||||
|
@ -24,6 +24,7 @@ Please use the following table to find the changelog for a specific Node.js
|
|||||||
release.
|
release.
|
||||||
|
|
||||||
<!--lint disable maximum-line-length-->
|
<!--lint disable maximum-line-length-->
|
||||||
|
|
||||||
<table>
|
<table>
|
||||||
<tr>
|
<tr>
|
||||||
<th title="Current"><a href="doc/changelogs/CHANGELOG_V16.md">16</a><sup>Current</sup></th>
|
<th title="Current"><a href="doc/changelogs/CHANGELOG_V16.md">16</a><sup>Current</sup></th>
|
||||||
@ -138,8 +139,9 @@ release.
|
|||||||
LTS releases.
|
LTS releases.
|
||||||
* Release versions in **bold** text are the most recent supported releases.
|
* Release versions in **bold** text are the most recent supported releases.
|
||||||
|
|
||||||
----
|
***
|
||||||
----
|
|
||||||
|
***
|
||||||
|
|
||||||
## 2016-05-06, Version 0.12.14 (Maintenance), @rvagg
|
## 2016-05-06, Version 0.12.14 (Maintenance), @rvagg
|
||||||
|
|
||||||
@ -1355,7 +1357,7 @@ release.
|
|||||||
|
|
||||||
## 2009.08.21, Version 0.1.5
|
## 2009.08.21, Version 0.1.5
|
||||||
|
|
||||||
<a href="doc/changelogs/CHANGELOG_ARCHIVE.md#0.1.5>Moved to doc/changelogs/CHANGELOG_V6.md#6.0.0</a>.
|
<a href="doc/changelogs/CHANGELOG_ARCHIVE.md#0.1.5">Moved to doc/changelogs/CHANGELOG_V6.md#6.0.0</a>.
|
||||||
|
|
||||||
## 2009.08.13, Version 0.1.4
|
## 2009.08.13, Version 0.1.4
|
||||||
|
|
||||||
|
@ -29,8 +29,10 @@ See [details on our policy on Code of Conduct](./doc/guides/contributing/code-of
|
|||||||
* [Notes](./doc/guides/contributing/pull-requests.md#notes)
|
* [Notes](./doc/guides/contributing/pull-requests.md#notes)
|
||||||
|
|
||||||
<a id="developers-certificate-of-origin"></a>
|
<a id="developers-certificate-of-origin"></a>
|
||||||
|
|
||||||
## Developer's Certificate of Origin 1.1
|
## Developer's Certificate of Origin 1.1
|
||||||
|
|
||||||
|
<pre>
|
||||||
By making a contribution to this project, I certify that:
|
By making a contribution to this project, I certify that:
|
||||||
|
|
||||||
(a) The contribution was created in whole or in part by me and I
|
(a) The contribution was created in whole or in part by me and I
|
||||||
@ -54,3 +56,4 @@ By making a contribution to this project, I certify that:
|
|||||||
personal information I submit with it, including my sign-off) is
|
personal information I submit with it, including my sign-off) is
|
||||||
maintained indefinitely and may be redistributed consistent with
|
maintained indefinitely and may be redistributed consistent with
|
||||||
this project or the open source license(s) involved.
|
this project or the open source license(s) involved.
|
||||||
|
</pre>
|
||||||
|
@ -153,8 +153,8 @@ the nomination fails.
|
|||||||
|
|
||||||
There are steps a nominator can take in advance to make a nomination as
|
There are steps a nominator can take in advance to make a nomination as
|
||||||
frictionless as possible. To request feedback from other collaborators in
|
frictionless as possible. To request feedback from other collaborators in
|
||||||
private, use the [collaborators discussion page][]
|
private, use the [collaborators discussion page][]
|
||||||
(which only collaborators may view). A nominator may also work with the
|
(which only collaborators may view). A nominator may also work with the
|
||||||
nominee to improve their contribution profile.
|
nominee to improve their contribution profile.
|
||||||
|
|
||||||
Collaborators might overlook someone with valuable contributions. In that case,
|
Collaborators might overlook someone with valuable contributions. In that case,
|
||||||
|
@ -51,12 +51,13 @@ onboarding session.
|
|||||||
[Publicizing or hiding organization membership][].
|
[Publicizing or hiding organization membership][].
|
||||||
|
|
||||||
* Notifications:
|
* Notifications:
|
||||||
* Use [https://github.com/notifications](https://github.com/notifications) or
|
* Use <https://github.com/notifications> or
|
||||||
set up email
|
set up email
|
||||||
* Watching the main repository will flood your inbox (several hundred
|
* Watching the main repository will flood your inbox (several hundred
|
||||||
notifications on typical weekdays), so be prepared
|
notifications on typical weekdays), so be prepared
|
||||||
|
|
||||||
The project has two venues for real-time discussion:
|
The project has two venues for real-time discussion:
|
||||||
|
|
||||||
* [`#nodejs-dev`](https://openjs-foundation.slack.com/archives/C019Y2T6STH) on
|
* [`#nodejs-dev`](https://openjs-foundation.slack.com/archives/C019Y2T6STH) on
|
||||||
the [OpenJS Foundation](https://slack-invite.openjsf.org/)
|
the [OpenJS Foundation](https://slack-invite.openjsf.org/)
|
||||||
|
|
||||||
@ -71,7 +72,7 @@ The project has two venues for real-time discussion:
|
|||||||
* The best outcome is for people who come to our issue tracker to feel like
|
* The best outcome is for people who come to our issue tracker to feel like
|
||||||
they can come back again.
|
they can come back again.
|
||||||
|
|
||||||
* You are expected to follow *and* hold others accountable to the
|
* You are expected to follow _and_ hold others accountable to the
|
||||||
[Code of Conduct][].
|
[Code of Conduct][].
|
||||||
|
|
||||||
## Managing the issue tracker
|
## Managing the issue tracker
|
||||||
@ -88,7 +89,7 @@ The project has two venues for real-time discussion:
|
|||||||
not perfect, of course. Feel free to apply relevant labels and remove
|
not perfect, of course. Feel free to apply relevant labels and remove
|
||||||
irrelevant labels from pull requests and issues.
|
irrelevant labels from pull requests and issues.
|
||||||
* `semver-{minor,major}`:
|
* `semver-{minor,major}`:
|
||||||
* If a change has the remote *chance* of breaking something, use the
|
* If a change has the remote _chance_ of breaking something, use the
|
||||||
`semver-major` label
|
`semver-major` label
|
||||||
* When adding a `semver-*` label, add a comment explaining why you're adding
|
* When adding a `semver-*` label, add a comment explaining why you're adding
|
||||||
it. Do it right away so you don't forget!
|
it. Do it right away so you don't forget!
|
||||||
@ -113,20 +114,26 @@ The project has two venues for real-time discussion:
|
|||||||
## Reviewing pull requests
|
## Reviewing pull requests
|
||||||
|
|
||||||
* The primary goal is for the codebase to improve.
|
* The primary goal is for the codebase to improve.
|
||||||
|
|
||||||
* Secondary (but not far off) is for the person submitting code to succeed. A
|
* Secondary (but not far off) is for the person submitting code to succeed. A
|
||||||
pull request from a new contributor is an opportunity to grow the community.
|
pull request from a new contributor is an opportunity to grow the community.
|
||||||
|
|
||||||
* Review a bit at a time. Do not overwhelm new contributors.
|
* Review a bit at a time. Do not overwhelm new contributors.
|
||||||
* It is tempting to micro-optimize. Don't succumb to that temptation. We
|
* It is tempting to micro-optimize. Don't succumb to that temptation. We
|
||||||
change V8 often. Techniques that provide improved performance today may be
|
change V8 often. Techniques that provide improved performance today may be
|
||||||
unnecessary in the future.
|
unnecessary in the future.
|
||||||
|
|
||||||
* Be aware: Your opinion carries a lot of weight!
|
* Be aware: Your opinion carries a lot of weight!
|
||||||
|
|
||||||
* Nits (requests for small changes that are not essential) are fine, but try to
|
* Nits (requests for small changes that are not essential) are fine, but try to
|
||||||
avoid stalling the pull request.
|
avoid stalling the pull request.
|
||||||
* Identify them as nits when you comment: `Nit: change foo() to bar().`
|
* Identify them as nits when you comment: `Nit: change foo() to bar().`
|
||||||
* If they are stalling the pull request, fix them yourself on merge.
|
* If they are stalling the pull request, fix them yourself on merge.
|
||||||
|
|
||||||
* Insofar as possible, issues should be identified by tools rather than human
|
* Insofar as possible, issues should be identified by tools rather than human
|
||||||
reviewers. If you are leaving comments about issues that could be identified
|
reviewers. If you are leaving comments about issues that could be identified
|
||||||
by tools but are not, consider implementing the necessary tooling.
|
by tools but are not, consider implementing the necessary tooling.
|
||||||
|
|
||||||
* Minimum wait for comments time
|
* Minimum wait for comments time
|
||||||
* There is a minimum waiting time which we try to respect for non-trivial
|
* There is a minimum waiting time which we try to respect for non-trivial
|
||||||
changes so that people who may have important input in such a distributed
|
changes so that people who may have important input in such a distributed
|
||||||
@ -134,6 +141,7 @@ The project has two venues for real-time discussion:
|
|||||||
* For non-trivial changes, leave the pull request open for at least 48 hours.
|
* For non-trivial changes, leave the pull request open for at least 48 hours.
|
||||||
* If a pull request is abandoned, check if they'd mind if you took it over
|
* If a pull request is abandoned, check if they'd mind if you took it over
|
||||||
(especially if it just has nits left).
|
(especially if it just has nits left).
|
||||||
|
|
||||||
* Approving a change
|
* Approving a change
|
||||||
* Collaborators indicate that they have reviewed and approve of the changes in
|
* Collaborators indicate that they have reviewed and approve of the changes in
|
||||||
a pull request using GitHub’s approval interface
|
a pull request using GitHub’s approval interface
|
||||||
@ -159,7 +167,7 @@ The project has two venues for real-time discussion:
|
|||||||
such as `async_hooks`.
|
such as `async_hooks`.
|
||||||
|
|
||||||
* Continuous Integration (CI) Testing:
|
* Continuous Integration (CI) Testing:
|
||||||
* [https://ci.nodejs.org/](https://ci.nodejs.org/)
|
* <https://ci.nodejs.org/>
|
||||||
* It is not automatically run. You need to start it manually.
|
* It is not automatically run. You need to start it manually.
|
||||||
* Log in on CI is integrated with GitHub. Try to log in now!
|
* Log in on CI is integrated with GitHub. Try to log in now!
|
||||||
* You will be using `node-test-pull-request` most of the time. Go there now!
|
* You will be using `node-test-pull-request` most of the time. Go there now!
|
||||||
@ -228,12 +236,12 @@ needs to be pointed out separately during the onboarding.
|
|||||||
* Almost any mistake you could make can be fixed or reverted.
|
* Almost any mistake you could make can be fixed or reverted.
|
||||||
* The existing collaborators trust you and are grateful for your help!
|
* The existing collaborators trust you and are grateful for your help!
|
||||||
* Other repositories:
|
* Other repositories:
|
||||||
* [https://github.com/nodejs/TSC](https://github.com/nodejs/TSC)
|
* <https://github.com/nodejs/TSC>
|
||||||
* [https://github.com/nodejs/build](https://github.com/nodejs/build)
|
* <https://github.com/nodejs/build>
|
||||||
* [https://github.com/nodejs/nodejs.org](https://github.com/nodejs/nodejs.org)
|
* <https://github.com/nodejs/nodejs.org>
|
||||||
* [https://github.com/nodejs/readable-stream](https://github.com/nodejs/readable-stream)
|
* <https://github.com/nodejs/readable-stream>
|
||||||
* [https://github.com/nodejs/LTS](https://github.com/nodejs/LTS)
|
* <https://github.com/nodejs/LTS>
|
||||||
* [https://github.com/nodejs/citgm](https://github.com/nodejs/citgm)
|
* <https://github.com/nodejs/citgm>
|
||||||
* The OpenJS Foundation hosts regular summits for active contributors to the
|
* The OpenJS Foundation hosts regular summits for active contributors to the
|
||||||
Node.js project, where we have face-to-face discussions about our work on the
|
Node.js project, where we have face-to-face discussions about our work on the
|
||||||
project. The Foundation has travel funds to cover participants' expenses
|
project. The Foundation has travel funds to cover participants' expenses
|
||||||
|
Loading…
Reference in New Issue
Block a user