Skip to content

Ensure PyExasol works with Python 3.14 #285

@ArBridgeman

Description

@ArBridgeman

Summary

With the EOL support of 3.9 being in 2025-10, we want to ensure that PyExasol works with the latest released Python version (3.14 from 2025-10). At this time, our CI is failing when installing the project's dependencies. It should be investigated and resolved such that the CI passes.

We already receive this error when installing our dependencies.

Note: This error originates from the build backend, and is likely not a problem with poetry but one of the following issues with pyarrow (21.0.0)

  - not supporting PEP 517 builds
  - not specifying PEP 517 build requirements correctly
  - the build requirements are incompatible with your operating system or Python version
  - the build requirements are missing system dependencies (eg: compilers, libraries, headers).

You can verify this by running pip wheel --no-cache-dir --use-pep517 "pyarrow (==21.0.0)".

Additionally, when we execute the following for ITDE==4.3.0 and Python 3.14:

itde spawn-test-environment --environment-name test --database-port-forward 8563 --bucketfs-port-forward 2580 --docker-db-image-version 8.29.6 --db-mem-size 4GB --create-certificates

the runner gets stuck & never recovers (waits for GitHub timeout). This has been observed for 5 out of 5 runs. If the --create-certificates is removed, then it succeeds, but we need this for our tests.

With the --log-level DEBUG added to it, we see that the status never proceeds past:

INFO - Informed scheduler that task DockerBuildImageTask_62928e7af8 has status DONE
INFO - Informed scheduler that task DockerCreateImageTask_62928e7af8 has status PENDING

Tasks

  • Resolve the pip installation issues
  • Coordinate with ITDE team for Python 3.14 support with --create-certificates. We use the ITDE for the DB & this relies on the Python version used in the runner.
  • Create a new release (likely major as dropped 3.9 support) so that users can take advantage of this

Metadata

Metadata

Assignees

No one assigned

    Labels

    refactoringCode improvement without behavior change

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions