Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nodejs/node.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-05-01build: package release changelog for releasesRichard Lau
Package the changelog for the release line as `CHANGELOG.md` when building a release binary tarball. PR-URL: https://github.com/nodejs/node/pull/38033 Fixes: https://github.com/nodejs/node/issues/38025 Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Beth Griggs <bgriggs@redhat.com> Reviewed-By: James M Snell <jasnell@gmail.com>
2021-05-01tools,doc: list the stability status of each APIZijian Liu
Fixes: https://github.com/nodejs/node/issues/23723 PR-URL: https://github.com/nodejs/node/pull/36223 Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Myles Borins <myles.borins@gmail.com> Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2021-05-01build: refactor Makefileraisinten
* add character classes * replace echo -n with printf Co-authored-by: Antoine du Hamel <duhamelantoine1995@gmail.com> PR-URL: https://github.com/nodejs/node/pull/36759 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2021-05-01tools: remove bashisms from macOS release scriptsAntoine du Hamel
PR-URL: https://github.com/nodejs/node/pull/36121 Reviewed-By: Rich Trott <rtrott@gmail.com>
2021-05-01build: fix typo in Makefileraisinten
PR-URL: https://github.com/nodejs/node/pull/36176 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
2021-04-30build: do not pass mode option to test-v8 commandMichaël Zasso
It was removed upstream and is now inferred from the build config. PR-URL: https://github.com/nodejs/node/pull/35705 Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Beth Griggs <bgriggs@redhat.com> Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com> PR-URL: https://github.com/nodejs/node/pull/38275 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Shelley Vohr <codebytere@gmail.com>
2021-04-06test: refactor coverage logicbcoe
Cleanup logic in Makefile for coverage. Update BUILDING.md accordingly. PR-URL: https://github.com/nodejs/node/pull/35767 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
2020-12-15build: replace which with command -vraisinten
PR-URL: https://github.com/nodejs/node/pull/36118 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
2020-12-15build: fix lint-js-fix targetAntoine du Hamel
Refs: https://github.com/nodejs/node/pull/35708 PR-URL: https://github.com/nodejs/node/pull/35927 Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
2020-12-15doc: recommend test-doc instead of lint-mdAntoine du Hamel
The documentation style guide used to recommend checking changes in the docs by running `make lint-md`. This leaves out some important checks which are contained in the `test-doc` build target. This commit also replaces `lint` by `lint-md` in the list of `test-doc`'s prerequisites. PR-URL: https://github.com/nodejs/node/pull/35708 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com>
2020-12-15build,tools: add lint-js-doc targetAntoine du Hamel
Add a build target to lint JS code in Markdown files only. PR-URL: https://github.com/nodejs/node/pull/35708 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com>
2020-12-15build: use make functions instead of echoAntoine du Hamel
PR-URL: https://github.com/nodejs/node/pull/35707 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2020-10-14build: improved release lint error messageShelley Vohr
PR-URL: https://github.com/nodejs/node/pull/35523 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Beth Griggs <bgriggs@redhat.com> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>
2020-09-07tools: fix docopen targetAntoine du HAMEL
Adds to prerequisites the output file to open. Previously, this would open an out-of-date version of the file, or fail if it hasn't been built before. PR-URL: https://github.com/nodejs/node/pull/35062 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Derek Lewis <DerekNonGeneric@inf.is>
2020-09-07doc: spruce up user journey to local docs browsingDerek Lewis
This patch improves the means by which the docs are viewed locally. * Remove extraneous code in the `docserve` Makefile target * Document the `docserve` task for all to know * Bring all code snippets in this section up to speed * Clarify the purpose of each documentation browsing method Fixes: https://github.com/nodejs/node/issues/34977 PR-URL: https://github.com/nodejs/node/pull/34986 Reviewed-By: Richard Lau <riclau@uk.ibm.com>
2020-09-07tools: fix doc build targetsAntoine du HAMEL
Adds doc output directory as order-only prerequisite for build target. PR-URL: https://github.com/nodejs/node/pull/35060 Reviewed-By: Derek Lewis <DerekNonGeneric@inf.is> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
2020-09-01build,deps: add gen-openssl targetEvan Lucas
This adds a new make target to generate platform dependent files for openssl on non-linux machines. The scripts we currently have in place require linux. This adds a Dockerfile that installs the necessary dependencies to be able to generate these files. Previously, it was necessary to run `make -C deps/openssl/config` on a linux machine. Now, as long as docker is installed and in your `PATH`, it is possible to run `make gen-openssl`. PR-URL: https://github.com/nodejs/node/pull/34642 Reviewed-By: James M Snell <jasnell@gmail.com>
2020-08-20build: cover all benchmark addons with C++ linterAnna Henningsen
PR-URL: https://github.com/nodejs/node/pull/34725 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: James M Snell <jasnell@gmail.com>
2020-07-29build: fix test-ci-js task in MakefileRich Trott
Move benchmark CI to native suite since it requires building an addon. Refs: https://github.com/nodejs/node/issues/34427#issuecomment-660760789 PR-URL: https://github.com/nodejs/node/pull/34433 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>
2020-07-29build: do not run benchmark tests on 'make test'Rich Trott
Fixes: https://github.com/nodejs/node/issues/34427 PR-URL: https://github.com/nodejs/node/pull/34434 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
2020-07-29build: add benchmark tests to CI runsRich Trott
Closes: https://github.com/nodejs/node/issues/34321 PR-URL: https://github.com/nodejs/node/pull/34288 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Matheus Marchini <mat@mmarchini.me>
2020-07-28build: speed up source tarball creationRichard Lau
Avoid building the node binary when building the source tarball. We need a node binary to build the docs, but it doesn't have to be one we build from scratch and can reuse any available node binary. Skip building the xz compressed tarball in the build-tarball workflow as we only use the gzip compressed tarball in the subsequent build jobs. PR-URL: https://github.com/nodejs/node/pull/34508 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Zeyu Yang <himself65@outlook.com>
2020-07-17tools: remove lint-js.jsRich Trott
lint-js.js was implemented before ESLint had a caching feature. It is now only used in CI. Let's remove it on the following grounds: * It results in occasional (and puzzling) yellow CI runs for node-test-linter because the tap file is corrupted somehow. Interleaved maybe? I don't know, but a simple solution is removing it and running ESLint directly. * On my local laptop, it reduces the linting from about 75 seconds to about 55 seconds. This kind of savings is not worth the added complexity and the instability noted above. PR-URL: https://github.com/nodejs/node/pull/30955 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com> Reviewed-By: Anatoli Papirovski <apapirovski@mac.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com> Reviewed-By: James M Snell <jasnell@gmail.com>
2020-06-30build: add target specific build_type variableDaniel Bevenius
This commit add a target specific variable named 'build_type' to the node and node_g targets. The motivation for doing this is that both targets share the same prerequisites, and the recepies are the same (apart from the build type) so some duplication can be avoided. PR-URL: https://github.com/nodejs/node/pull/33925 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: James M Snell <jasnell@gmail.com>
2020-06-30build: add LINT_CPP_FILES to checkimports checkDaniel Bevenius
This commit adds the prerequisites which contains all the files to lint. Currently the only the files in 'src' will be checked. PR-URL: https://github.com/nodejs/node/pull/33697 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
2020-06-30tools: fix check-imports.py to match on word boundariesRichard Lau
`check-imports.py` was missing some unused `using` statements as it was not matching on word boundaries (e.g. `MaybeLocal` was considered a use of `Local`). Fix that and add some unit tests (which required the script to be renamed to drop the `-` so it could be imported into the test script). PR-URL: https://github.com/nodejs/node/pull/33268 Refs: https://github.com/nodejs/node/issues/29226 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Christian Clauss <cclauss@me.com> Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By: Beth Griggs <Bethany.Griggs@uk.ibm.com>
2020-06-30build: fix makefile script on windowsThomas
On Windows there is a program "find.exe" located in C:\Windows\System32, which is usually in the PATH before MSYS version of that program (required for running makefile). The Windows version of the program uses different CLI syntax, which results in errors like "File not found - *node_modules*" This commit specifies the full path to the program, which is also properly handled by MSYS on Windows. PR-URL: https://github.com/nodejs/node/pull/33136 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2020-06-30tools: add docserve targetAntoine du HAMEL
Spaws a webserver serving the docs. Helpful to circumvent the OS permission limitations or to access the docs form a different device on the local network. PR-URL: https://github.com/nodejs/node/pull/33221 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2020-06-30doc,tools: properly syntax highlight API ref docsDerek Lewis
Prior to this commit, all <pre> tags were being highlighted as JavaScript. This has been corrected to syntax highlight all languages appearing in the API reference docs. This was accomplished by using highlight.js instead of SHJS for the frontend lib. * remove SHJS JavaScript code * add highlight.js bundle * fix script tags to reflect replacement * migrate CSS to use highlight.js classes * add appropriate documentation * ensure api_assets README.md stays interal Fixes: https://github.com/nodejs/node/issues/33363 PR-URL: https://github.com/nodejs/node/pull/33442 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Ujjwal Sharma <ryzokuken@disroot.org>
2020-05-07Revert "src: add test/abort build tasks"Richard Lau
This reverts commit e08ac095690015a8c488e05251e05feb2acc57a0. PR-URL: https://github.com/nodejs/node/pull/33196 Refs: https://github.com/nodejs/node/pull/31740 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2020-04-14build: move doc versions JSON file out of out/docRichard Lau
Move the generated previous doc versions JSON file out of `out/doc` to prevent it being included in the distributed packages. Signed-off-by: Richard Lau <riclau@uk.ibm.com> PR-URL: https://github.com/nodejs/node/pull/32728 Fixes: https://github.com/nodejs/build/issues/2276 Reviewed-By: Shelley Vohr <codebytere@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
2020-04-14build: fix LINT_MD_NEWER assignmentRich Trott
Indentation with a tab breaks the functionality, resulting in linting all .md files when any one is changed. For consistency with the rest of the Makefile and to restore functionality, remove indentation. Refs: https://github.com/nodejs/node/pull/32614#issuecomment-610670779 PR-URL: https://github.com/nodejs/node/pull/32712 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2020-04-07build: use tabs for indentation in MakefileLuigi Pinca
PR-URL: https://github.com/nodejs/node/pull/32614 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2020-04-01tools: only fetch previous versions when necessaryRichard Lau
Refactor the logic for working out the previous versions of Node.js for the API documentation so that the parsing (including the potential https get) happens at most once per build (as opposed to the current once per generated API doc). Signed-off-by: Richard Lau <riclau@uk.ibm.com> PR-URL: https://github.com/nodejs/node/pull/32518 Fixes: https://github.com/nodejs/node/issues/32512 Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Myles Borins <myles.borins@gmail.com>
2020-03-30doc: tests local links in markdown documentsAntoine du HAMEL
PR-URL: https://github.com/nodejs/node/pull/32359 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Rich Trott <rtrott@gmail.com>
2020-03-30src: add test/abort build tasksChristian Niederer
The Aliased*Array overflow check test introduced a dependency to a compiled artifact. Add this artifact to the build process in a similar fashion as test/addons and test/js-native-api do. PR-URL: https://github.com/nodejs/node/pull/31740 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: David Carlier <devnexen@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2020-03-21test: add extended embedder cctestAnna Henningsen
Add an embedder cctest that also covers a multi-Environment situation, including worker_threads-style inspector support. Co-authored-by: Joyee Cheung <joyeec9h3@gmail.com> PR-URL: https://github.com/nodejs/node/pull/30467 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
2020-03-21src,test: add full-featured embedder API testAnna Henningsen
PR-URL: https://github.com/nodejs/node/pull/30467 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
2020-03-10build: macOS package notarizationRod Vagg
Includes hardened-runtime patch from gdams from https://github.com/nodejs/node/issues/29216#issuecomment-546932966 PR-URL: https://github.com/nodejs/node/pull/31459 Refs: https://github.com/nodejs/node/issues/29216 Reviewed-By: Christian Clauss <cclauss@me.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com> Reviewed-By: Ash Cripps <ashley.cripps@ibm.com> Signed-off-by: Rod Vagg <rod@vagg.org>
2020-03-05build: fix zlib tarball generationShelley Vohr
PR-URL: https://github.com/nodejs/node/pull/32094 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Myles Borins <myles.borins@gmail.com>
2020-03-04doc: improve doc/markdown file organization coherenceConorDavenport
* Updated cpp style guide file name and location and fixed links to this file. * Updated collaborator guide file name and location and fixed links to this file. * Updated documentation style guide file name and location and updated links referencing the file. * Moved files to appropriate location and updated naming style for some of them. Fixes: https://github.com/nodejs/node/issues/31741 PR-URL: https://github.com/nodejs/node/pull/31792 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Sam Roberts <vieuxtech@gmail.com>
2020-03-01build: only lint markdown files that have changed (POSIX-only)Rich Trott
Update Makefile so that only markdown files that have changed will be linted. Currently, if one file in doc/api has changed, all files in doc/api are linted. On Windows, the lint-md task currently lints all files regardless of whether any files has changed, and that behavior is unchanged here. A further improvement is that when tools/lint-md.js is rebuilt, the timestamp file is removed so that all files are linted again. This is because rebuilding lint-md.js can introduce new rules or modify existing rules, so re-linting everything helps make sure that accidental breakage doesn't slip by unnoticed. PR-URL: https://github.com/nodejs/node/pull/31923 Reviewed-By: Anna Henningsen <anna@addaleax.net>
2019-12-14build: fix missing x64 arch suffix in binary tar namelegendecas
PR-URL: https://github.com/nodejs/node/pull/30877 Reviewed-By: David Carlier <devnexen@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
2019-12-02build,win: add test-ci-native and test-ci-jsJoão Reis
PR-URL: https://github.com/nodejs/node/pull/30724 Refs: https://github.com/nodejs/build/issues/1996 Reviewed-By: Rod Vagg <rod@vagg.org> Reviewed-By: Sam Roberts <vieuxtech@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
2019-11-30tools: add unified plugin changing links for html docsMarek Łabuz
This commit introduces additional stage in the process of generating html docs from markdown files. Plugin transforms links to *.md files in the respository to links to *.html files in the online documentation. Fixes: https://github.com/nodejs/node/issues/28689 PR-URL: https://github.com/nodejs/node/pull/29946 Reviewed-By: Anna Henningsen <anna@addaleax.net>
2019-11-11test: fix Python unittests in ./test and ./toolscclauss
Co-authored-by: @patrickhousley Fixes to Python tests to ensure that the following all pass: 1. __python2 -m pytest ./test ./tools__ # 30 tests pass 2. __python3 -m pytest ./test ./tools__ # 30 tests pass 3. __python2 -m unittest discover -s ./test/tools__ # 1 test passes 4. __python3 -m unittest discover -s ./test/tools__ # 1 test passes 5. __PYTHON=python2 make tooltest__ # 1 test passes 6. __PYTHON=python3 make tooltest__ # 1 test passes This is a subset of #30033 PR-URL: https://github.com/nodejs/node/pull/30340 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: David Carlier <devnexen@gmail.com>
2019-11-06Revert "test: test configure ninja"Anna Henningsen
This reverts commit 85dd9e8333f227dcdcbe86ae45f239a2b5cef030. `make test` should never change the current set of `configure` flags. Refs: https://github.com/nodejs/node/pull/30033 PR-URL: https://github.com/nodejs/node/pull/30295 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
2019-11-06test: test configure ninjaPatrick Housley
- Updated the tooltest target to run unittest module - Renamed test/tools/test-js2c.py to be discoverable by unittest module - Added test class for `configure` shell script - Added a test to ensure `configure` script exits with status code zero when passed the `--ninja` flag Closes: https://github.com/nodejs/node/issues/29415 PR-URL: https://github.com/nodejs/node/pull/30033 Reviewed-By: Sam Roberts <vieuxtech@gmail.com> Reviewed-By: Christian Clauss <cclauss@me.com>
2019-10-22build: make linter failures fail `test-doc` targetRichard Lau
Linter failures in the `test-doc` make target were not failing the build if the subsequent `doctools` test passed as its exit code wasn't being preserved. Make the `lint` target a dependency of `test-doc` so that it is outside of the `node_use_openssl` guard -- its own dependencies have their own guards where necessary and the targets that don't require an available node (e.g. the C++ linters) will be allowed to run. PR-URL: https://github.com/nodejs/node/pull/30012 Reviewed-By: Sam Roberts <vieuxtech@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
2019-10-17build: build benchmark addons like test addonsRichard Lau
Build the addons for benchmarks in the same way that the addons for tests are built. PR-URL: https://github.com/nodejs/node/pull/29995 Fixes: https://github.com/nodejs/build/issues/1961 Refs: https://github.com/nodejs/node/commit/53ca0b9ae145c430842bf78e553e3b6cbd2823aa#commitcomment-35494896 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Beth Griggs <Bethany.Griggs@uk.ibm.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com>