Marton Greber has uploaded this change for review. ( 
http://gerrit.cloudera.org:8080/24155


Change subject: [Python] add compatibility testing
......................................................................

[Python] add compatibility testing

The Kudu Python client declares support for Python 2.7 and 3.6–3.11
in its trove classifiers, but had no mechanism to verify that the build,
test suite, and sdist packaging actually work across all those versions.

build-support/python-compat/ fills this gap with shell scripts that
bootstrap each interpreter via the deadsnakes PPA and exercise the
full build+test+package cycle per version:
  bootstrap-deadsnakes-python.sh  install all supported interpreters
  test-client.sh                  build extension + run test suite
  test-packaging.sh               sdist round-trip in a clean venv

test-client.sh supports a -j [N] flag for parallel execution across
versions (mirroring make -j semantics), which is safe because each
Python version produces an ABI-tagged .so and each test run uses its
own mini-cluster on OS-assigned ports.

Tools like tox exist for exactly this kind of test-matrix work, but
supporting a range that stretches back to Python 2.7 requires older
virtualenv versions that conflict with modern toolchains, making a
tox setup more brittle than the straightforward shell scripts here.

These scripts are intended to be run manually by developers when
adding or dropping a supported Python version, and as part of the
release checklist to confirm packaging works across the full matrix.
They are not wired into CI.

DONT_BUILD

Change-Id: Id1f4e6c837a0a3e9da531627ec38f1c452341c11
---
A build-support/python-compat/README.md
A build-support/python-compat/bootstrap-deadsnakes-python.sh
A build-support/python-compat/test-client.sh
A build-support/python-compat/test-packaging.sh
A build-support/python-compat/versions.sh
5 files changed, 521 insertions(+), 0 deletions(-)



  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/55/24155/1
--
To view, visit http://gerrit.cloudera.org:8080/24155
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: Id1f4e6c837a0a3e9da531627ec38f1c452341c11
Gerrit-Change-Number: 24155
Gerrit-PatchSet: 1
Gerrit-Owner: Marton Greber <[email protected]>

Reply via email to