Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions DEVELOPMENT.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,18 @@ The project includes protobuf code generation for examples and tests:
uv run just generate
```

## Releasing

To release a new version, we need to first update the version numbers
in pyproject.toml and then cut a tag to trigger the release workflow.

```bash
uv run just bump minor # or patch
```

Make a PR to apply the commit as usual, then push a tag, for example
by [drafting a release](https://github.com/connectrpc/connect-python/releases/new).

## Documentation

### Building Documentation
Expand Down
8 changes: 7 additions & 1 deletion justfile
Original file line number Diff line number Diff line change
Expand Up @@ -69,4 +69,10 @@ generate: generate-conformance generate-example generate-test format

# Used in CI to verify that `just generate` doesn't produce a diff
checkgenerate: generate
test -z "$(git status --porcelain | tee /dev/stderr)"
test -z "$(git status --porcelain | tee /dev/stderr)"

bump *args:
uv run bump-my-version bump {{args}}
uv lock
cd protoc-gen-connect-python && uv lock
git commit -am "Bump version"
Copy link
Member

Choose a reason for hiding this comment

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

I'm also not sure if we want this automated, or maybe it'd be nice if the commit had more context ("Bump version to <version>")?

(Somewhat assuming that the runtime & plugin will stay the same version, although we could split them out for whatever reason.)

17 changes: 17 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ Issues = "https://github.com/connectrpc/connect-python/issues"
dev = [
"asgiref==3.9.1",
"brotli==1.1.0",
"bump-my-version==1.2.4",
"connect-python-example",
"daphne==4.2.1",
"httpx[http2]==0.28.1",
Expand Down Expand Up @@ -233,3 +234,19 @@ members = ["example", "noextras"]
[tool.uv.sources]
connect-python = { workspace = true }
connect-python-example = { workspace = true }

[tool.bumpversion]
current_version = "0.5.0"
files = [
{ filename = "pyproject.toml" },
{ filename = "protoc-gen-connect-python/pyproject.toml" },
]
parse = "(?P<major>\\d+)\\.(?P<minor>\\d+)\\.(?P<patch>\\d+)"
serialize = ["{major}.{minor}.{patch}"]
search = "version = \"{current_version}\""
replace = "version = \"{new_version}\""
regex = false
tag = false
allow_dirty = false
ignore_missing_version = false
commit = false
Loading