Skip to content

Add a documented and semi-automated release process#95

Merged
kurtmckee merged 1 commit into
mainfrom
add-release-process
Jun 5, 2026
Merged

Add a documented and semi-automated release process#95
kurtmckee merged 1 commit into
mainfrom
add-release-process

Conversation

@kurtmckee

Copy link
Copy Markdown
Member

Development

  • Add a documented and semi-automated release process.

@kurtmckee kurtmckee self-assigned this Jun 4, 2026

@derek-globus derek-globus left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like the usage of just as an entry point for different steps.

I wonder if it'd mesh better with other just recipes to nest as subcommands like 'just release r1', 'just release r2', etc. (not married to that exact phrasing if you liked the details of each step included in the recipe name, moreso suggesting that we keep recipes at the same level of abstraction)

Overall though, this is nice & simplifies the releasing process well

Comment thread assets/releasing/r2-amend-changelog.sh
Comment thread RELEASING.md
Comment thread assets/releasing/r1-prep-release.sh
@kurtmckee

kurtmckee commented Jun 4, 2026

Copy link
Copy Markdown
Member Author

I found the tab completion of e.g. just r1<tab> very favorable; I think that nesting under a just subcommand (like just releasing r1) is doable but it's not the direction I took this time around.

I also don't know how the subcommand idea might appear in the just -l rendering, but maybe just has renders something like that in a smart way. The current rendering is pleasant:

$ just -l
Available recipes:
    clean                   # Delete known build artifacts.
    docs                    # Rebuild the project's documentation locally (at ./`build`).
    help                    # Print this help message.
    install                 # Install a development virtual environment (at `./.venv`) and pre-commit hooks.
    lint                    # Run pre-commit checks on all files.
    mypy filepath="./src"   # Type check the project with mypy.
    r1-prep-release version # RELEASING 1: Create a new branch and update the project metadata.
    r2-amend-changelog      # RELEASING 2: (OPTIONAL) Amend the CHANGELOG after changes are made.
    r3-create-pr            # RELEASING 3: Create the release PR.
    r4-publish              # RELEASING 4: Publish a git tag and GitHub release.
    r5-merge-back           # RELEASING 5: Create the merge-back-to-main PR.
    test                    # Run the full test suite locally.

@kurtmckee kurtmckee force-pushed the add-release-process branch from 5fdf706 to 052ca97 Compare June 4, 2026 19:12
@kurtmckee kurtmckee merged commit d55455d into main Jun 5, 2026
5 checks passed
@kurtmckee kurtmckee deleted the add-release-process branch June 5, 2026 22:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants