Skip to content

Conversation

@magicmirror-peter
Copy link

@magicmirror-peter magicmirror-peter commented Dec 3, 2025

NOTE

This PR follows a similar structure and files touched as the PR that added Python 3.13 support

Description

This PR adds support for Python 3.14 in Zappa, enabling deployments on AWS Lambda with the latest Python runtime.

The following updates have been made:

  • Updated SUPPORTED_VERSIONS in zappa/init.py to include Python 3.14.
  • Added Python 3.14 to get_runtime_from_python_version() in zappa/utilities.py.
  • Updated the GitHub CI pipeline (.github/workflows/ci.yml) to test against Python 3.14.
  • Modified setup.py classifiers to reflect Python 3.14 support.
  • Updated README.md and issue templates to mention Python 3.14 compatibility.
  • Added a test case in tests/tests.py for verifying Python 3.14 runtime compatibility.

Testing

This PR was tested by:
🟧 Running CI tests across supported Python versions (3.8 – 3.14).
🟧 Running unit tests to verify manylinux wheel compatibility with Python 3.14.

Additional

This PR also drops references to Python 3.8 from the README, as the project code specifies that 3.8 is no longer supported.

@magicmirror-peter magicmirror-peter marked this pull request as draft December 3, 2025 17:38
@magicmirror-peter
Copy link
Author

Hello Zappa Maintainers!

Currently this is blocked/paused:

The newly added test which copies the same structure as the test for 313 fails because it is unable to pass this assert at the start

self.assertIsNotNone(z.get_cached_manylinux_wheel("psycopg-binary", "3.3.1"))

Digging into the code shows that psycopg-binary added support for Python3.14 during the 3.3.X series, but the file name format has changed from manylinux_2_17_x86_64 to manylinux_2_27_x86_64, and for some reason I can't understand, this causes the regex that matches build filenames to fail.

image

You can even see this behavior happen by changing the 3.13 test to download pyscopg-binary version 3.3.1 instead of 3.2.5 and it will fail in the same way, despite it working just fine with 3.2.5

image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant