Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 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
2 changes: 2 additions & 0 deletions .github/workflows/pypi-build-artifacts.yml
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,8 @@ jobs:
# Ignore 32 bit architectures
CIBW_ARCHS: "auto64"
CIBW_PROJECT_REQUIRES_PYTHON: ">=3.10,<3.14"
# Keep these in sync with Python CI job `cibw-dev-env-smoke-test`
# in .github/workflows/python-ci.yml to catch import-time regressions early.
CIBW_BEFORE_TEST: "uv sync --directory {project} --only-group dev --no-install-project"
CIBW_TEST_COMMAND: "uv run --directory {project} pytest tests/avro/test_decoder.py"
# Skip free-threaded (PEP 703) builds until we evaluate decoder_fast support
Expand Down
23 changes: 23 additions & 0 deletions .github/workflows/python-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -200,3 +200,26 @@
merge-multiple: true
- name: Generate coverage report (75%) # Coverage threshold should only increase over time — never decrease it!
run: COVERAGE_FAIL_UNDER=75 make coverage-report

cibw-dev-env-smoke-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '3.12'
- name: Install UV
uses: astral-sh/setup-uv@v7
with:
enable-cache: true
# Why this exists:
# Catch import-time regressions (e.g., global conftest optional deps)
# in the same dev-only environment used by cibuildwheel wheel tests.
# Keep this in sync with wheel build test setup in
# .github/workflows/pypi-build-artifacts.yml:
# CIBW_BEFORE_TEST: uv sync --directory {project} --only-group dev --no-install-project
# CIBW_TEST_COMMAND: uv run --directory {project} pytest tests/avro/test_decoder.py
- name: Mirror wheel CIBW_BEFORE_TEST
run: uv sync --directory . --only-group dev --no-install-project
- name: Mirror wheel CIBW_TEST_COMMAND (collection only)
run: uv run --directory . pytest --collect-only tests/avro/test_decoder.py -q
Comment thread Fixed
1 change: 1 addition & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,7 @@ dev = [
"docutils!=0.21.post1",
"mypy-boto3-glue>=1.28.18",
"mypy-boto3-dynamodb>=1.28.18",
"google-cloud-bigquery>=3.33.0,<4",
"pyarrow-stubs>=20.0.0.20251107", # Remove when pyarrow >= 23.0.0 https://github.com/apache/arrow/pull/47609
"sqlalchemy>=2.0.18,<3",
]
Expand Down
2 changes: 2 additions & 0 deletions uv.lock

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

Loading