Skip to content

Commit a384dd4

Browse files
marco-ippolitodanielleadams
authored andcommitted
doc: maintaining nghttp2
PR-URL: #46539 Reviewed-By: Michael Dawson <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Paolo Insogna <[email protected]> Reviewed-By: Rafael Gonzaga <[email protected]>
1 parent 8fd1760 commit a384dd4

File tree

2 files changed

+48
-7
lines changed

2 files changed

+48
-7
lines changed

doc/contributing/maintaining-http.md

+2-7
Original file line numberDiff line numberDiff line change
@@ -113,11 +113,6 @@ directory and C++ code in the
113113

114114
The low-level implementation of
115115
[HTTP2](https://nodejs.org/docs/latest/api/http2.html)
116-
is based on [nghttp2](https://nghttp2.org/). Updates are pulled into Node.js
117-
under [deps/nghttp2](https://github.com/nodejs/node/tree/HEAD/deps/nghttp2)
118-
as needed.
116+
is based on [nghttp2](https://nghttp2.org/). See [maintaining nghttp2][].
119117

120-
The low-level implementation is made available in the Node.js API through
121-
JavaScript code in the [lib](https://github.com/nodejs/node/tree/HEAD/lib)
122-
directory and C++ code in the
123-
[src](https://github.com/nodejs/node/tree/HEAD/src) directory.
118+
[maintaining nghttp2]: ./maintaining-nghttp2.md
+46
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# Maintaining nghttp2 in Node.js
2+
3+
The low-level implementation of
4+
[HTTP2](https://nodejs.org/docs/latest/api/http2.html)
5+
is based on [nghttp2](https://nghttp2.org/). Updates are pulled into Node.js
6+
under [deps/nghttp2](https://github.com/nodejs/node/tree/HEAD/deps/nghttp2)
7+
as needed.
8+
9+
The low-level implementation is made available in the Node.js API through
10+
JavaScript code in the [lib](https://github.com/nodejs/node/tree/HEAD/lib)
11+
directory and C++ code in the
12+
[src](https://github.com/nodejs/node/tree/HEAD/src) directory.
13+
14+
## Step 1: Updating nghttp2
15+
16+
The `tools/update-nghttp2.sh` script automates the update of the
17+
postject source files.
18+
19+
In the following examples, `x.y.z` should match the nghttp2
20+
version to update to.
21+
22+
```console
23+
$ ./tools/update-nghttp2.sh x.y.z
24+
```
25+
26+
## Step 2: Test the build
27+
28+
```console
29+
$ make test-http2
30+
```
31+
32+
## Step 3: Commit new nghttp2
33+
34+
```console
35+
$ git add -A deps/nghttp2
36+
$ git commit -m "deps: upgrade nghttp2 to x.y.z"
37+
```
38+
39+
## Step 4: Update licenses
40+
41+
```console
42+
$ ./tools/license-builder.sh
43+
# The following commands are only necessary if there are changes
44+
$ git add .
45+
$ git commit -m "doc: update nghttp2 LICENSE using license-builder.sh"
46+
```

0 commit comments

Comments
 (0)