Skip to content

Conversation

@CJCombrink
Copy link
Contributor

@CJCombrink CJCombrink commented Nov 10, 2025

Some Python housekeeping in trying to make some progress on various python related tasks to get ultimately to attempt to implement Python UUID support

The following is addressed:

  1. Add back the python tests to the build.yaml pipeline
  2. Update the cmake support for Python according to newer cmake functions.
  3. Disabled SSL tests completely
    • Incorrectly assumed SSL issues were related to old Python versions but given 1 above it was clear that SSL is an issue
    • SSL Tests in the lib were already disabled
    • Created: THRIFT-5900
  4. Disabled type_hint and enum tests
  5. Replaced deprecated calls on the test side
  • Did you create an Apache Jira ticket? (Request account here, not required for trivial changes)
  • If a ticket exists: Does your pull request title follow the pattern "THRIFT-NNNN: describe my issue"?
  • Did you squash your changes to a single commit? (not required, but preferred)
  • Did you do your best to avoid breaking changes? If one was needed, did you label the Jira ticket with "Breaking-Change"?
  • If your change does not involve any code, include [skip ci] anywhere in the commit message to free up build resources.

@CJCombrink
Copy link
Contributor Author

I see due to this change the AppVeyor build now uses Python 3.8 instead of the one specified in the config... will need to investigate

@CJCombrink CJCombrink marked this pull request as draft November 11, 2025 06:06
@CJCombrink CJCombrink marked this pull request as ready for review November 11, 2025 07:32
@CJCombrink
Copy link
Contributor Author

CJCombrink commented Nov 11, 2025

Found Fixed the issue in the Appveyor builds with cmake not using the correct python

@CJCombrink
Copy link
Contributor Author

This hole is deeper than I have anticipated.
I have now enabled the Python tests in the github action and now the enum tests are also tripping up here.
It appears that #3232 will need to merge as part of this effort, I was hoping to keep it separate

@Jens-G Jens-G added the python label Nov 13, 2025
@Jens-G
Copy link
Member

Jens-G commented Nov 14, 2025

Is this complete?

@CJCombrink
Copy link
Contributor Author

Is this complete?

Yes, I was hoping to get #3237 merged, so that I can rebase this branch before merge.

Perhaps @fishy might also want to give it a quick review if possible?

- find_package(PythonInterp) and find_package(PythonLibs) were deprecated in 3.12 and removed in 3.27
- The project minimum is at 3.16 already
- Deprecated in Python 3.2 and removed in 3.11
- collections.abc was added in 3.3 collections.Hashable removed in 3.10
- Locally and in Windows actions the second option is needed
- Full UUID support not added and this seems to work for some cases but not all, thus removing until full UUID is added
- And add message if interpreter not found
- Remove the QUIET to get some idea of what cmake is doing
- Trying to debug issue on Appveyor
- The change in find_package favours the latest Python
- Force cmake to use the one specified
- Put back the echo again since it is needed
- Same as per the cmake side
- No need for the check in the step any more since not supporting python 2
- assert_   was removed in Python 3 and later removed
- Fixed the script to error out correctly when the tests fail
   - The RunClientServer.py test did not fail as expected on this error
@CJCombrink
Copy link
Contributor Author

@Jens-G @fishy
The work here should be done, after review and CI builds it can be merged if there are no objections.

@Jens-G Jens-G merged commit f8ce26c into apache:master Nov 19, 2025
30 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants