Skip to content
Merged
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
7 changes: 6 additions & 1 deletion .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ jobs:
fail-fast: false
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
resolution: ["highest", "lowest-direct"]
steps:
- name: Checkout code
uses: actions/checkout@v5
Expand All @@ -31,13 +32,17 @@ jobs:
- uses: astral-sh/setup-uv@v6
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies with resolution ${{ matrix.resolution }}
run: UV_RESOLUTION=${{ matrix.resolution }} make install
- name: Execute tests
run: make test
- name: Lint
run: make lint
- name: Format
run: make format
- name: Check generated
# When running with matrix.resolution == lowest, we expect uv.lock to change, but we don't want that file checked in.
- if: matrix.resolution == 'highest'
name: Check generated
run: make checkgenerate
env:
BUF_TOKEN: ${{ secrets.BUF_TOKEN }}
7 changes: 4 additions & 3 deletions .github/workflows/conformance.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ jobs:
fail-fast: false
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
resolution: ["highest", "lowest-direct"]
steps:
- name: Checkout code
uses: actions/checkout@v5
Expand All @@ -29,7 +30,7 @@ jobs:
go-version: stable
cache: false
- uses: astral-sh/setup-uv@v6
- name: Install Python ${{ matrix.python-version }}
run: uv python install ${{ matrix.python-version }}
with:
python-version: ${{ matrix.python-version }}
- name: Test conformance
run: make conformance
run: UV_RESOLUTION=${{ matrix.resolution }} make conformance
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ lint: install $(BIN)/buf ## Lint code
uv run -- ruff format --check --diff protovalidate test
uv run -- mypy protovalidate
uv run -- ruff check protovalidate test
uv sync --locked
uv lock --check

.PHONY: install
install: ## Install dependencies
Expand Down
5 changes: 3 additions & 2 deletions buf.gen.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@ version: v2
managed:
enabled: true
plugins:
- remote: buf.build/protocolbuffers/python:v30.1
# NOTE: v30.0 is the earliest version supporting protobuf==6.
- remote: buf.build/protocolbuffers/python:v30.0
out: gen
- remote: buf.build/protocolbuffers/pyi:v30.1
- remote: buf.build/protocolbuffers/pyi:v30.0
out: gen
4 changes: 2 additions & 2 deletions gen/buf/validate/conformance/cases/bool_pb2.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions gen/buf/validate/conformance/cases/bytes_pb2.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions gen/buf/validate/conformance/cases/enums_pb2.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions gen/buf/validate/conformance/cases/filename_with_dash_pb2.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions gen/buf/validate/conformance/cases/ignore_empty_proto2_pb2.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions gen/buf/validate/conformance/cases/ignore_empty_proto3_pb2.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions gen/buf/validate/conformance/cases/ignore_proto2_pb2.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions gen/buf/validate/conformance/cases/ignore_proto3_pb2.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions gen/buf/validate/conformance/cases/kitchen_sink_pb2.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions gen/buf/validate/conformance/cases/library_pb2.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions gen/buf/validate/conformance/cases/maps_pb2.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions gen/buf/validate/conformance/cases/messages_pb2.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions gen/buf/validate/conformance/cases/numbers_pb2.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions gen/buf/validate/conformance/cases/oneofs_pb2.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions gen/buf/validate/conformance/cases/other_package/embed_pb2.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading