Releasing
This is the release process for the client itself.
First update the version in
package.json
andindex.js
. The versions use semantic versioning.Run
npm install && npm run build
. This ensures you have the latest dependencies and you’ve built the latest version of the documentation.Run
npm run changelog
and updateCHANGELOG.rst
(included by Changelog) with the release date and details.Commit these changes, create a pull request, and merge it.
Tag the release:
export VERSION=vX.Y.Z git checkout main git pull origin main git tag $VERSION git push --tags origin main
Create the release on GitHub:
# Push this to GitHub and the CDN mkdir dist/$VERSION cp dist/ethicalads.js dist/$VERSION/ cp dist/ethicalads.min.js dist/$VERSION/ cp dist/ethicalads.min.js dist/$VERSION/ethicalads-$VERSION.min.js
Release the beta client and purge the client from the CDN. A few publishers (notably Read the Docs) use the beta client and we can roll it out to verify no breaking changes before pushing this to third-party publishers.
Release the release client and purge the CDN. After the release, the beta client and release client should be exactly the same.
Note
In the future we plan to release the client to NPM directly for users, but there is still a lot of churn and we don’t want users pinning to old versions quite yet.