When planning a spec release a maintainer should:
- Create a milestone for the release (e.g.
Buildpack 0.5
) - Create a release branch from
main
branch with name<spec>/<version>
(e.g.buildpack/0.5
) orextensions/<spec>/version>
for extension specifications. - Update the version of the relevant spec in
README.md
and the specification file (e.g. see commit 791363e). - Push the branch to the repo.
Issues that are scheduled for a given release should be added to the milestone. The core team will regularly review and adjust the contents of upcoming milestones at the weekly core team sync.
When a PR is opened, the first core team member to review should:
- Convert to draft if the PR implements an issue that has not been scheduled in a milestone.
- Ensure the PR is pointed at the correct branch.
- Request changes if the PR modifies any of the other specifications.
- Add the PR to a milestone, if this was not done already.
- Add the matching
api/*
label if this was not done already (e.g. api/buildpack )
Spec changes must be approved by a super-majority of the core team.
When all issues and PRs in a given milestone are complete, a core team member may:
- Create a PR to "finalize" the release, merge the release branch to
main
. - Create a draft release and write release notes.
All core team members and any interested maintainers should:
- Review the release in its entirety and provide last minute feedback as needed.
- Review the release notes if they desire.
- Approve the final PR.
Once the final PR has the required approvals, the person that opened it should:
- Merge the PR.
- Publish the release.
- Close the milestone.
- Delete the release branch.