Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve release process #623

Open
lidel opened this issue Jun 20, 2024 · 0 comments
Open

Improve release process #623

lidel opened this issue Jun 20, 2024 · 0 comments
Labels
need/triage Needs initial labeling and prioritization

Comments

@lidel
Copy link
Member

lidel commented Jun 20, 2024

This is a meta issue in which I will be noting room for improvement based on experience from #622

Likely will either extract below into separate issues, or use as rationale for making improvements to the process from https://github.com/ipfs/boxo/blob/main/RELEASE.md

Current release process of Boxo is somehow similar to Kubo. If we simplify things here, we may be able to simplify Kubo as well.

Discovered problems

No dependency update

go get -t -u ./... and mod tidy in . and examples/ was never mentioned, but should be something we do on every release.

Manual labor

Release requires creating two PRs and manually editing changelog and version.json.
This is despite automations that, at the end of the day, just read version.json and create git tag.

What's changed on /releases is invalid

Draft release has incorrect "Whats changed" generated by github, it includes commits for previous release, and not the current one:

v0.20 has entries from v0.19 v0.21 has entries from v20 🙃
image image

Proposed improvements

  • optimize for golden path, and not rare bugfix releases
    • remove need for release branch.
    • rationale: if we need to backport a bugfix release, we can tag it manually, no need for automation. need for backporting does not arise often. we did not had to do it in the past year (afaik). a patch release was always enough. it is better to do more manual work on such rare occassion, than to spend entire day releasing ebvery day
  • update https://github.com/ipfs/boxo/blob/main/RELEASE.md to reflect improvements

Release Please creating release PR from unreleased changes in main

IDEA: switch to release-please creating a PR with unreleased changes.

We use this successfully in other projects already, and it objectively removes bunch of manual work, and surface for errors:

Prior art: ipfs/ipfs-desktop#2828, ipfs/service-worker-gateway#264), ipfs/helia#563

@lidel lidel added the need/triage Needs initial labeling and prioritization label Jun 20, 2024
@lidel lidel changed the title Simplify release boxo process Improve release process Jun 20, 2024
@lidel lidel mentioned this issue Jun 21, 2024
29 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
need/triage Needs initial labeling and prioritization
Projects
None yet
Development

No branches or pull requests

1 participant