These instructions capture the internal process for making a release of the @ag.ds-next/react package.
-
Copy the
@ag.ds-next/react@version number from the current Version Packages PR and create a new branch using the format:release-notes-v[version-number]. -
Search the repository for any
unreleased: truecomponents and remove this frontmatter as these components will be released. -
Create a new
.mdxfile indocs/content/updateswith today’s date as the file name. -
Use the previous release as the template for the release notes. It should include:
- Release description of what is new.
- Detailed and consistent notes of what is in the release. Use the Version Packages content as a starter, but in some cases it may be better to write something new.
- The new package release version from above.
- A link to the Version Packages PR.
-
Add a minor docs changeset of ‘docs: AgDS v[version-number] release notes.‘
-
Commit these changes with a description ‘Release notes v[version number]’, create a PR and merge it to
developwhen approved.
-
Merge the PR named
Version Packagesintodevelopon GitHub once all checks pass. -
Create and merge a new PR titled ‘Release v[version-number]’ which merges (not squashes)
developintomain. -
After
mainfinishes building and deploying, on the command line, rungit pullon themainbranch to fetch latest changes. -
Run
yarn freshto rebuildnode_modulesand clean-up any build output. -
Run
yarn publish-changedto find packages where the version listed in thepackage.jsonis ahead of the version published on npm, and publish just those packages.- The above command requires publish privileges on npm and a one time password (OTP).
-
Publish all new tags to GitHub with
git push --tags.
- Create a draft release on GitHub based on the new release’s tag (such as @ag.ds-next/react@[version-number]).
- Title the release with the version number, for example, ‘AgDS v[version-number] release’.
- Copy the latest docs release notes content without the frontmatter and with all urls updated to include the protocol and domain.
- Publish the release.