@mdn/browser-compat-dataNew releases of the @mdn/browser-compat-data NPM package are published twice per week on Tuesday and Friday, except during year-end holidays.
The release process is mostly automated using two GitHub workflows:
release-pr workflow manages a pull request that bumps the package.json version and updates the release notes.release workflow creates the GitHub release and tag, publishes the release on NPM, and triggers MDN deployment.The release itself is triggered manually, to help ensure that as many ready pull requests make it into the release.
Any project owner (or release designee) can complete the following steps to publish a new version.
To publish a release:
Release vX.Y.Z) as ready for review.main commit, and that no other pull request is merged right before.RELEASE_NOTES.md on the release branch (below the release date).The release pull request is managed by the release-pr workflow, which runs npm run release with a personal access token (PAT) that is owned by @mdn-bot, and has read and write access to code and pull requests on the repository.
The release script performs the following steps:
main branch.semver-major-bump or semver-minor-bump label merged since the previous release.package.json by running npm version.RELEASE_NOTES.md by determining release notes based on the following input:release branch.Merging the release pull request yields the following result:
create-release job of the release workflow workflow.create-release job publishes a GitHub release and tag based on the updated package.json and release notes.publish-release job of the release workflow.publish-release job performs the following steps:data.json as an asset to the GitHub release.bcd_release event on the mdn/bcd-utils repository, which triggers the deployment of the new BCD release on MDN.