Skip to content

Conversation

@mlwelles
Copy link
Contributor

@mlwelles mlwelles commented Jan 19, 2026

Summary

Closes DGR-158

  • Integrates protobuf version compatibility testing into the main test jobs using matrix include
  • Tests older protobuf versions (4.x, 5.x) only on Python 3.9 and 3.14 (edge versions)
  • All Python versions test with the default protobuf (6.x)
  • Adds standalone yamllint hook to pre-commit using the same config as trunk

Test Matrix (per DGraph version)

Python Version Protobuf Notes
3.9 default (6.x)
3.9 >=4.23.0,<5.0.0 Edge version only
3.9 >=5.0.0,<6.0.0 Edge version only
3.10 default (6.x)
3.11 default (6.x)
3.12 default (6.x)
3.13 default (6.x)
3.14 default (6.x)
3.14 >=4.23.0,<5.0.0 Edge version only
3.14 >=5.0.0,<6.0.0 Edge version only

Total: 10 jobs × 2 DGraph versions = 20 jobs

Test plan

  • Verify all 20 matrix jobs appear in GitHub Actions
  • Check that protobuf override jobs install the correct version (visible in logs)
  • Verify tests pass across all combinations
  • Verify yamllint pre-commit hook works locally

Test pydgraph against protobuf 4.x, 5.x, and 6.x using Python 3.9
and 3.14 to ensure compatibility across all supported protobuf versions.
@mlwelles mlwelles requested a review from a team as a code owner January 19, 2026 16:25
Remove protobuf 6.x from the compatibility matrix since it's already
covered by the main test job. Rename job to clarify it's for backwards
compatibility testing with older protobuf releases.
@mlwelles mlwelles changed the title ci: add protobuf version matrix to CI tests ci: add backwards compatibility tests for protobuf 4.x and 5.x Jan 19, 2026
Split protobuf compatibility testing into two jobs:
- test-pydgraph-protobuf-compat-dgraph-latest: Tests against released DGraph
- test-pydgraph-protobuf-compat-dgraph-head: Tests against DGraph HEAD

This mirrors the structure of the main test matrix.
Consolidate protobuf compatibility testing into the main test jobs using
matrix include. Older protobuf versions (4.x, 5.x) are only tested with
Python 3.9 and 3.14 (edge versions), while all Python versions test with
the default protobuf.

Matrix per job:
- 6 Python versions × default protobuf = 6 jobs
- 2 Python versions × 2 older protobuf = 4 jobs
- Total: 10 jobs per DGraph version (20 total)
@mlwelles mlwelles changed the title ci: add backwards compatibility tests for protobuf 4.x and 5.x ci: add protobuf 4.x and 5.x compat to CI test matrix Jan 19, 2026
@matthewmcneely matthewmcneely merged commit 0d55acf into main Jan 19, 2026
26 checks passed
@matthewmcneely matthewmcneely deleted the mlwelles-add-protobuf-version-matrix-ci-tests branch January 19, 2026 17:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants