node/doc/contributing/maintaining-c-ares.md

1.5 KiB

Maintaining c-ares

Updates to the c-ares dependency involve the following steps:

  1. Downloading the source archive for the new version.
  2. Unpacking the source in a temporary workspace directory.
  3. Removing the test directory (to save disk space).
  4. Copying over the existing .gitignore, pre-generated config directory and cares.gyp files.
  5. Replacing the existing deps/cares with the workspace directory.
  6. Modifying the cares.gyp file for file additions/deletions.
  7. Rebuilding the main Node.js LICENSE.

Running the update script

The tools/dep_updaters/update-c-ares.sh script automates the update of the c-ares source files, preserving the existing files added by Node.js.

./tools/dep_updaters/update-c-ares.sh

Check that Node.js still builds and tests

It may be necessary to update deps/cares/cares.gyp if any significant changes have occurred upstream.

Rebuild the main Node.js license

Run the tools/license-builder.sh script to rebuild the main Node.js LICENSE file. This may result in no changes if c-ares' license has not changed.

./tools/license-builder.sh

If the updated LICENSE contains changes for other dependencies, those should be done in a separate pull request first.

Commit the changes

git add -A deps/cares

Add the rebuilt LICENSE if it has been updated.

git add LICENSE

Commit the changes with a message like

deps: update c-ares to x.y.z

Updated as described in doc/contributing/maintaining-c-ares.md.