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]>
