ethers.js/admin
2019-08-02 02:11:22 -04:00
..
cmds Added changelog management to update-versions. 2019-05-24 18:16:46 -04:00
build.js Initial v5 branch commit. 2019-05-14 18:25:46 -04:00
changelog.js Fixed changelog issue links. 2019-06-11 17:56:33 -04:00
config.js Initial v5 branch commit. 2019-05-14 18:25:46 -04:00
depgraph.js Initial v5 branch commit. 2019-05-14 18:25:46 -04:00
git.js Add admin support for pacakges with no history from the package gitHead. 2019-05-14 21:23:27 -04:00
index.js Initial v5 branch commit. 2019-05-14 18:25:46 -04:00
local.js Initial v5 branch commit. 2019-05-14 18:25:46 -04:00
log.js Initial v5 branch commit. 2019-05-14 18:25:46 -04:00
npm.js Updated admin module to use new fetchJson. 2019-08-02 02:11:22 -04:00
README.md Updated admin readme. 2019-05-24 19:00:54 -04:00
utils.js Added changelog management to update-versions. 2019-05-24 18:16:46 -04:00

Admin Tool

This tool is meant for admin tasks related to ethers.js.

Workflow

After a new series of changes have been made and tested:

  1. Run npm run update-versions to update and build all packages
  2. Make any human-necessary changes to the automatically updated CHANGELOG.md
  3. Run git add .
  4. Run git commit -S -m "Updated dist files."
  5. Run git push
  6. Wait for TravisCI to complete running test cases
  7. Run npm run publish-all to publish changed packages to NPM and tag GitHub

Update Dependency Graph: admin/cmds/update-depgraph

This is run as part of npm run bootstrap before running lerna bootstrap. It recomputes the dependency graph and writes out the ordered tsconfig.project.json

Update Versions: admin/cmds/update-versions

Run using the npm run update-versions, which also cleans, bootstraps and rebuilds the project before running the script.

For each package that has changed from the version in NPM (the published tarballs are compared):

  • Update the version in the package.json
  • Update the src.ts/_version.ts (matches the package.json)
  • Updates the tarballHash in the package.json
  • Compiles the TypeScript (which updates the _version.js and _version.d.js)
  • Lists all changed files (highlighting src.ts files)

Then:

  • Generate the distribution files
  • Update the CHANGELOG.md

Publish: admin/cmds/publish

Run using npm run publish-all. This requires a password for the secure local config and the OTP for NPM.

  • Publish (in dependency order) changed files to NPM
  • The gitHead is updated in only the NPM package.json
  • @TODO: Cut a release on GitHub including the relevant CHANGELOG entry