Skip to content

Conversation

@gmarciani
Copy link
Contributor

Description of changes

Add support for Python 3.14. In particular:

  1. Replace deprecated asyncio.get_event_loop() calls with a new utility function.
    In Python 3.14, get_event_loop() raises RuntimeError when no event loop is running instead of implicitly creating one.
    This is documented in Python official doc: https://docs.python.org/3.14/whatsnew/3.14.html#asyncio
  2. Require Python <3.15 and add explicit support for Python 3.14. Now PyPI will block the installation of pcluster on a python environment >=3.15.
  3. Enable unit tests for Python 3.13 and 3.14. Remove tests for Python 3.7 and 3.8.

Tests

  • Manually verified that the CLI works with Python 3.13.10 (latest 3.13 release), 3.14.0 and 3.14.1 (latest 3.14 release)
  • Unit tests

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Replace deprecated asyncio.get_event_loop() calls with a new
get_or_create_event_loop() helper function.
In Python 3.14,
get_event_loop() raises RuntimeError when no event loop is running
instead of implicitly creating one.

See: https://docs.python.org/3.14/whatsnew/3.14.html#asyncio

Updated python_requires to allow Python 3.9 through 3.14.
…sing quotes on separate line' which is a minor and also conflicts with black formatting.
…ython 3.13+ argparse help text format changes.

This is required because in Python 3.13+ the helper format for options changed from '-r REGION, --region REGION' to '-r, --region REGION'.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant