Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 31 additions & 4 deletions .github/workflows/pythonbuild.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,9 @@ jobs:
- name: Set Python versions for run
run: |
if [[ ${{ github.event_name }} == "schedule" ]]; then
echo "python_versions=[\"3.9\",\"3.10\",\"3.11\",\"3.12\"]" >> $GITHUB_ENV
echo "python_versions=[\"3.9\",\"3.10\",\"3.11\",\"3.12\",\"3.13\",\"3.14\"]" >> $GITHUB_ENV
else
echo "python_versions=[\"3.9\", \"3.12\"]" >> $GITHUB_ENV
echo "python_versions=[\"3.9\", \"3.12\", \"3.13\", \"3.14\"]" >> $GITHUB_ENV
fi

build:
Expand Down Expand Up @@ -112,6 +112,7 @@ jobs:
- name: Run extras unit tests with coverage
# Skip this step if running on python 3.12 due to https://github.com/tensorflow/tensorflow/issues/62003
# and https://github.com/pytorch/pytorch/issues/110436
# TensorFlow now supports 3.13, PyTorch supports 3.13 and 3.14
if: ${{ matrix.python-version != '3.12' }}
run: |
make unit_test_extras_codecov
Expand Down Expand Up @@ -390,6 +391,32 @@ jobs:
# Segmentation fault on python 3.12: https://github.com/flyteorg/flyte/issues/5020
- python-version: 3.12
plugin-names: "flytekit-kf-pytorch"
# Python 3.13 - exclude plugins that don't support it yet
# apache-beam does not support python 3.13 yet
- python-version: 3.13
plugin-names: "flytekit-airflow"
# modin[ray] is not supported on python 3.13 yet
- python-version: 3.13
plugin-names: "flytekit-modin"
# vaex does not support python 3.13
- python-version: 3.13
plugin-names: "flytekit-vaex"
# Ray does not support python 3.13 yet
- python-version: 3.13
plugin-names: "flytekit-ray"
# Python 3.14 - exclude plugins that don't support it yet
# apache-beam does not support python 3.14 yet
- python-version: 3.14
plugin-names: "flytekit-airflow"
# modin[ray] is not supported on python 3.14 yet
- python-version: 3.14
plugin-names: "flytekit-modin"
# vaex does not support python 3.14
- python-version: 3.14
plugin-names: "flytekit-vaex"
# Ray does not support python 3.14 yet
- python-version: 3.14
plugin-names: "flytekit-ray"
steps:
- uses: actions/checkout@v4
- name: "Clear action cache"
Expand Down Expand Up @@ -441,10 +468,10 @@ jobs:
steps:
- name: Fetch the code
uses: actions/checkout@v4
- name: Set up Python 3.12
- name: Set up Python 3.14
uses: actions/setup-python@v4
with:
python-version: 3.12
python-version: 3.14
- uses: actions/cache@v4
with:
path: ~/.cache/pip
Expand Down
9 changes: 6 additions & 3 deletions dev-requirements.in
Original file line number Diff line number Diff line change
Expand Up @@ -21,14 +21,17 @@ keyrings.alt
setuptools_scm
pytest-icdiff

# Tensorflow is not available for python 3.12 yet: https://github.com/tensorflow/tensorflow/issues/62003
# Tensorflow is not available for python 3.12: https://github.com/tensorflow/tensorflow/issues/62003
# TensorFlow now supports 3.13+
tensorflow<=2.15.1; python_version<'3.12'
tensorflow; python_version>='3.13'
# Newer versions of torch bring in nvidia dependencies that are not present in windows, so
# we put this constraint while we do not have per-environment requirements files
torch<=1.12.1; python_version<'3.11'
# pytorch 2 supports python 3.11
# pytorch 2 does not support 3.12 yet: https://github.com/pytorch/pytorch/issues/110436
torch; python_version<'3.12'
# pytorch does not support 3.12 yet: https://github.com/pytorch/pytorch/issues/110436
# pytorch now supports 3.13 and 3.14
torch; python_version=='3.11' or python_version>='3.13'
pydantic

# TODO: Currently, the python-magic library causes build errors on Windows due to its dependency on DLLs for libmagic.
Expand Down
4 changes: 4 additions & 0 deletions flytekit/configuration/default_images.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ class PythonVersion(enum.Enum):
PYTHON_3_10 = (3, 10)
PYTHON_3_11 = (3, 11)
PYTHON_3_12 = (3, 12)
PYTHON_3_13 = (3, 13)
PYTHON_3_14 = (3, 14)


class DefaultImages(object):
Expand All @@ -26,6 +28,8 @@ class DefaultImages(object):
PythonVersion.PYTHON_3_10: "cr.flyte.org/flyteorg/flytekit:py3.10-",
PythonVersion.PYTHON_3_11: "cr.flyte.org/flyteorg/flytekit:py3.11-",
PythonVersion.PYTHON_3_12: "cr.flyte.org/flyteorg/flytekit:py3.12-",
PythonVersion.PYTHON_3_13: "cr.flyte.org/flyteorg/flytekit:py3.13-",
PythonVersion.PYTHON_3_14: "cr.flyte.org/flyteorg/flytekit:py3.14-",
}

@classmethod
Expand Down
4 changes: 3 additions & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ authors = [{ name = "Flyte Contributors", email = "[email protected]" }]
description = "Flyte SDK for Python"
license = { text = "Apache-2.0" }
readme = { file = "README.md", content-type = "text/markdown" }
requires-python = ">=3.9,<3.13"
requires-python = ">=3.9,<3.15"
dependencies = [
# Please maintain an alphabetical order in the following list
"adlfs>=2023.3.0",
Expand Down Expand Up @@ -60,6 +60,8 @@ classifiers = [
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Topic :: Scientific/Engineering",
"Topic :: Scientific/Engineering :: Artificial Intelligence",
"Topic :: Software Development",
Expand Down