rigetti / rigetti/pyquil

Manually curated releases

Open
#1,871 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

devops :rocket:
Dominant language
Python
Stars
1.5k
Forks
358
Avg merge
1d 58m
Merged PRs (30d)
4

Description

Auto-generated changelog leave much to be desired. We will replace knope with manual changelog curation via the following process.

Target process

  1. Version is one static string in pyproject.toml, bumped by a human.
  2. Changelog is written by humans, one entry per user-visible change, accumulating under ## Unreleased (Keep a Changelog format).
  3. Release is a PR. Bump the version, rename ## Unreleased to ## 4.19.0 — 2026-09-14. Review it, merge it.
  4. Merging the release PR is the whole release for rc and dev builds. CI detects the version change on master, creates the tag and GitHub Release, and publishes. No manual tagging, no forms, no second click. A final X.Y.Z release is tagged and released the same way automatically, then waits on one approval click at the pypi-release environment before the PyPI upload.
  5. Release candidates are the same flow with an rc version (4.20.0rc1), detected and marked prerelease automatically.
  6. Dev builds are dispatched manually from the GitHub UI on any branch, including unmerged PR branches.

Though we are moving away from knope, conventional commits are required for merging and encouraged for development pre-merge.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with pyproject.toml and locate the current knope and CI release entry points. Compare them with the target process in the issue, including version and Unreleased handling, release-candidate and dev-build dispatch, automatic tagging and publishing, and PyPI approval; done means those flows work without manual tagging or release forms.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
build-system, ci-cd, release
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.