You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@kudu.apache.org by "Marton Greber (Code Review)" <ge...@cloudera.org> on 2026/03/31 11:55:04 UTC

[kudu-CR] [Python] add compatibility testing

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 <gr...@gmail.com>

[kudu-CR] [Python] add compatibility testing

Posted by "Kudu Jenkins (Code Review)" <ge...@cloudera.org>.
Kudu Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/24155 )

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


Patch Set 2:

Build Started http://jenkins.kudu.apache.org/job/pre_commit/2473/


-- 
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: comment
Gerrit-Change-Id: Id1f4e6c837a0a3e9da531627ec38f1c452341c11
Gerrit-Change-Number: 24155
Gerrit-PatchSet: 2
Gerrit-Owner: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Gabriella Lotz <lo...@gmail.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Zoltan Chovan <zc...@cloudera.com>
Gerrit-Reviewer: Zoltan Martonka <zm...@cloudera.com>
Gerrit-Comment-Date: Wed, 15 Apr 2026 13:12:35 +0000
Gerrit-HasComments: No

[kudu-CR] [Python] add compatibility testing

Posted by "Marton Greber (Code Review)" <ge...@cloudera.org>.
Marton Greber has posted comments on this change. ( http://gerrit.cloudera.org:8080/24155 )

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


Patch Set 1:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/24155/1/build-support/python-compat/test-client.sh
File build-support/python-compat/test-client.sh:

http://gerrit.cloudera.org:8080/#/c/24155/1/build-support/python-compat/test-client.sh@102
PS1, Line 102:   if ! make build; then
> is there any chance that parallel make builds would use the same resources/
Nice, that you pointed this out. As it turns out some compiled files do not like the shared workspace approach. This only came up after multiple runs.
Anyway fixed it by creating a tmp folder for each parallel run, and running the python build there out of tree.

Tested this as well in a way that i added python3.14 into setup.py, and the test client run properly reported that 3.14 build breaks etc.

Thanks for the catch!



-- 
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: comment
Gerrit-Change-Id: Id1f4e6c837a0a3e9da531627ec38f1c452341c11
Gerrit-Change-Number: 24155
Gerrit-PatchSet: 1
Gerrit-Owner: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Gabriella Lotz <lo...@gmail.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Zoltan Chovan <zc...@cloudera.com>
Gerrit-Reviewer: Zoltan Martonka <zm...@cloudera.com>
Gerrit-Comment-Date: Wed, 15 Apr 2026 13:15:55 +0000
Gerrit-HasComments: Yes

[kudu-CR] [Python] add compatibility testing

Posted by "Marton Greber (Code Review)" <ge...@cloudera.org>.
Marton Greber has posted comments on this change. ( http://gerrit.cloudera.org:8080/24155 )

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


Patch Set 2: Verified+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: comment
Gerrit-Change-Id: Id1f4e6c837a0a3e9da531627ec38f1c452341c11
Gerrit-Change-Number: 24155
Gerrit-PatchSet: 2
Gerrit-Owner: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Gabriella Lotz <lo...@gmail.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Zoltan Chovan <zc...@cloudera.com>
Gerrit-Reviewer: Zoltan Martonka <zm...@cloudera.com>
Gerrit-Comment-Date: Wed, 15 Apr 2026 13:23:20 +0000
Gerrit-HasComments: No

[kudu-CR] [Python] add compatibility testing

Posted by "Marton Greber (Code Review)" <ge...@cloudera.org>.
Marton Greber has removed a vote on this change.

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


Removed Verified-1 by Kudu Jenkins (120)
-- 
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: deleteVote
Gerrit-Change-Id: Id1f4e6c837a0a3e9da531627ec38f1c452341c11
Gerrit-Change-Number: 24155
Gerrit-PatchSet: 2
Gerrit-Owner: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Gabriella Lotz <lo...@gmail.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Zoltan Chovan <zc...@cloudera.com>
Gerrit-Reviewer: Zoltan Martonka <zm...@cloudera.com>

[kudu-CR] [Python] add compatibility testing

Posted by "Kudu Jenkins (Code Review)" <ge...@cloudera.org>.
Kudu Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/24155 )

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


Patch Set 1: Verified-1

Build Failed 

http://jenkins.kudu.apache.org/job/pre_commit/2435/ : FAILURE


-- 
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: comment
Gerrit-Change-Id: Id1f4e6c837a0a3e9da531627ec38f1c452341c11
Gerrit-Change-Number: 24155
Gerrit-PatchSet: 1
Gerrit-Owner: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Comment-Date: Tue, 31 Mar 2026 11:55:26 +0000
Gerrit-HasComments: No

[kudu-CR] [Python] add compatibility testing

Posted by "Kudu Jenkins (Code Review)" <ge...@cloudera.org>.
Kudu Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/24155 )

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


Patch Set 2: Verified-1

Build Failed 

http://jenkins.kudu.apache.org/job/pre_commit/2473/ : FAILURE


-- 
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: comment
Gerrit-Change-Id: Id1f4e6c837a0a3e9da531627ec38f1c452341c11
Gerrit-Change-Number: 24155
Gerrit-PatchSet: 2
Gerrit-Owner: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Gabriella Lotz <lo...@gmail.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Zoltan Chovan <zc...@cloudera.com>
Gerrit-Reviewer: Zoltan Martonka <zm...@cloudera.com>
Gerrit-Comment-Date: Wed, 15 Apr 2026 13:12:48 +0000
Gerrit-HasComments: No

[kudu-CR] [Python] add compatibility testing

Posted by "Zoltan Chovan (Code Review)" <ge...@cloudera.org>.
Zoltan Chovan has posted comments on this change. ( http://gerrit.cloudera.org:8080/24155 )

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


Patch Set 1:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/24155/1/build-support/python-compat/test-client.sh
File build-support/python-compat/test-client.sh:

http://gerrit.cloudera.org:8080/#/c/24155/1/build-support/python-compat/test-client.sh@102
PS1, Line 102:   if ! make build; then
is there any chance that parallel make builds would use the same resources/dirs? e.g. PYTHON_DIR might be reused, or temporary locations might be used by multiple running builds



-- 
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: comment
Gerrit-Change-Id: Id1f4e6c837a0a3e9da531627ec38f1c452341c11
Gerrit-Change-Number: 24155
Gerrit-PatchSet: 1
Gerrit-Owner: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Gabriella Lotz <lo...@gmail.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Zoltan Chovan <zc...@cloudera.com>
Gerrit-Reviewer: Zoltan Martonka <zm...@cloudera.com>
Gerrit-Comment-Date: Wed, 15 Apr 2026 12:00:27 +0000
Gerrit-HasComments: Yes

[kudu-CR] [Python] add compatibility testing

Posted by "Zoltan Martonka (Code Review)" <ge...@cloudera.org>.
Zoltan Martonka has posted comments on this change. ( http://gerrit.cloudera.org:8080/24155 )

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


Patch Set 1: Code-Review+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: comment
Gerrit-Change-Id: Id1f4e6c837a0a3e9da531627ec38f1c452341c11
Gerrit-Change-Number: 24155
Gerrit-PatchSet: 1
Gerrit-Owner: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Gabriella Lotz <lo...@gmail.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Zoltan Chovan <zc...@cloudera.com>
Gerrit-Reviewer: Zoltan Martonka <zm...@cloudera.com>
Gerrit-Comment-Date: Wed, 15 Apr 2026 11:23:23 +0000
Gerrit-HasComments: No

[kudu-CR] [Python] add compatibility testing

Posted by "Kudu Jenkins (Code Review)" <ge...@cloudera.org>.
Kudu Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/24155 )

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


Patch Set 1:

Build Started http://jenkins.kudu.apache.org/job/pre_commit/2435/


-- 
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: comment
Gerrit-Change-Id: Id1f4e6c837a0a3e9da531627ec38f1c452341c11
Gerrit-Change-Number: 24155
Gerrit-PatchSet: 1
Gerrit-Owner: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Comment-Date: Tue, 31 Mar 2026 11:55:14 +0000
Gerrit-HasComments: No

[kudu-CR] [Python] add compatibility testing

Posted by "Marton Greber (Code Review)" <ge...@cloudera.org>.
Marton Greber has removed a vote on this change.

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


Removed Verified-1 by Kudu Jenkins (120)
-- 
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: deleteVote
Gerrit-Change-Id: Id1f4e6c837a0a3e9da531627ec38f1c452341c11
Gerrit-Change-Number: 24155
Gerrit-PatchSet: 1
Gerrit-Owner: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Gabriella Lotz <lo...@gmail.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Marton Greber <gr...@gmail.com>

[kudu-CR] [Python] add compatibility testing

Posted by "Zoltan Chovan (Code Review)" <ge...@cloudera.org>.
Zoltan Chovan has posted comments on this change. ( http://gerrit.cloudera.org:8080/24155 )

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


Patch Set 2: Code-Review+2


-- 
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: comment
Gerrit-Change-Id: Id1f4e6c837a0a3e9da531627ec38f1c452341c11
Gerrit-Change-Number: 24155
Gerrit-PatchSet: 2
Gerrit-Owner: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Gabriella Lotz <lo...@gmail.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Zoltan Chovan <zc...@cloudera.com>
Gerrit-Reviewer: Zoltan Martonka <zm...@cloudera.com>
Gerrit-Comment-Date: Wed, 15 Apr 2026 13:20:33 +0000
Gerrit-HasComments: No

[kudu-CR] [Python] add compatibility testing

Posted by "Marton Greber (Code Review)" <ge...@cloudera.org>.
Marton Greber has posted comments on this change. ( http://gerrit.cloudera.org:8080/24155 )

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


Patch Set 1: Verified+1

Explicit DONT_BUILD as these changes are not for CI, just for manual purposes.


-- 
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: comment
Gerrit-Change-Id: Id1f4e6c837a0a3e9da531627ec38f1c452341c11
Gerrit-Change-Number: 24155
Gerrit-PatchSet: 1
Gerrit-Owner: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Gabriella Lotz <lo...@gmail.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Marton Greber <gr...@gmail.com>
Gerrit-Comment-Date: Tue, 07 Apr 2026 08:47:15 +0000
Gerrit-HasComments: No

[kudu-CR] [Python] add compatibility testing

Posted by "Marton Greber (Code Review)" <ge...@cloudera.org>.
Marton Greber has submitted this change and it was merged. ( 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).  Parallel builds are safe
because each version gets its own isolated copy of the source tree
under /tmp: setup.py generates several files in-tree at import time
(config.pxi, version.py, kudu/*.cpp) that would otherwise race when
multiple interpreters build concurrently.  The source tree is cleaned
once up-front and then copied per version with cp -aL (dereferencing
symlinks such as version.txt -> ../version.txt) so every build starts
from a known-clean state.

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
Reviewed-on: http://gerrit.cloudera.org:8080/24155
Reviewed-by: Zoltan Chovan <zc...@cloudera.com>
Tested-by: Marton Greber <gr...@gmail.com>
Reviewed-by: Zoltan Martonka <zm...@cloudera.com>
---
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, 530 insertions(+), 0 deletions(-)

Approvals:
  Zoltan Chovan: Looks good to me, approved
  Marton Greber: Verified
  Zoltan Martonka: Looks good to me, but someone else must approve

-- 
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: merged
Gerrit-Change-Id: Id1f4e6c837a0a3e9da531627ec38f1c452341c11
Gerrit-Change-Number: 24155
Gerrit-PatchSet: 3
Gerrit-Owner: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Gabriella Lotz <lo...@gmail.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Zoltan Chovan <zc...@cloudera.com>
Gerrit-Reviewer: Zoltan Martonka <zm...@cloudera.com>

[kudu-CR] [Python] add compatibility testing

Posted by "Marton Greber (Code Review)" <ge...@cloudera.org>.
Hello Zoltan Chovan, Alexey Serbin, Zoltan Martonka, Gabriella Lotz, Kudu Jenkins, Abhishek Chennaka, 

I'd like you to reexamine a change. Please visit

    http://gerrit.cloudera.org:8080/24155

to look at the new patch set (#2).

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).  Parallel builds are safe
because each version gets its own isolated copy of the source tree
under /tmp: setup.py generates several files in-tree at import time
(config.pxi, version.py, kudu/*.cpp) that would otherwise race when
multiple interpreters build concurrently.  The source tree is cleaned
once up-front and then copied per version with cp -aL (dereferencing
symlinks such as version.txt -> ../version.txt) so every build starts
from a known-clean state.

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, 530 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/55/24155/2
-- 
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: newpatchset
Gerrit-Change-Id: Id1f4e6c837a0a3e9da531627ec38f1c452341c11
Gerrit-Change-Number: 24155
Gerrit-PatchSet: 2
Gerrit-Owner: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Gabriella Lotz <lo...@gmail.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Zoltan Chovan <zc...@cloudera.com>
Gerrit-Reviewer: Zoltan Martonka <zm...@cloudera.com>

[kudu-CR] [Python] add compatibility testing

Posted by "Zoltan Martonka (Code Review)" <ge...@cloudera.org>.
Zoltan Martonka has posted comments on this change. ( http://gerrit.cloudera.org:8080/24155 )

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


Patch Set 2: Code-Review+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: comment
Gerrit-Change-Id: Id1f4e6c837a0a3e9da531627ec38f1c452341c11
Gerrit-Change-Number: 24155
Gerrit-PatchSet: 2
Gerrit-Owner: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Gabriella Lotz <lo...@gmail.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Marton Greber <gr...@gmail.com>
Gerrit-Reviewer: Zoltan Chovan <zc...@cloudera.com>
Gerrit-Reviewer: Zoltan Martonka <zm...@cloudera.com>
Gerrit-Comment-Date: Wed, 15 Apr 2026 13:33:37 +0000
Gerrit-HasComments: No