Skip to content

Commit

Permalink
Add official support for python 3.13 (#2191)
Browse files Browse the repository at this point in the history
Adds support for python 3.13.
  • Loading branch information
ravi-kumar-pilla authored Nov 20, 2024
1 parent dc5912d commit 40dd06a
Show file tree
Hide file tree
Showing 9 changed files with 23 additions and 18 deletions.
6 changes: 3 additions & 3 deletions .github/workflows/all-checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
strategy:
matrix:
os: [ windows-latest, ubuntu-latest ]
python-version: [ "3.9", "3.10", "3.11", "3.12" ]
python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13" ]
uses: ./.github/workflows/e2e-tests.yml
with:
os: ${{ matrix.os }}
Expand All @@ -24,7 +24,7 @@ jobs:
strategy:
matrix:
os: [ windows-latest, ubuntu-latest ]
python-version: [ "3.9", "3.10", "3.11", "3.12" ]
python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13" ]
uses: ./.github/workflows/unit-tests.yml
with:
os: ${{ matrix.os }}
Expand All @@ -34,7 +34,7 @@ jobs:
strategy:
matrix:
os: [ ubuntu-latest ]
python-version: [ "3.9", "3.10", "3.11", "3.12" ]
python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13" ]
uses: ./.github/workflows/lint.yml
with:
os: ${{ matrix.os }}
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/build-backend.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:
strategy:
matrix:
os: [ windows-latest, ubuntu-latest ]
python-version: [ "3.9", "3.10", "3.11", "3.12" ]
python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13" ]
uses: ./.github/workflows/e2e-tests.yml
with:
os: ${{ matrix.os }}
Expand All @@ -27,7 +27,7 @@ jobs:
strategy:
matrix:
os: [ windows-latest, ubuntu-latest ]
python-version: [ "3.9", "3.10", "3.11", "3.12" ]
python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13" ]
uses: ./.github/workflows/unit-tests.yml
with:
os: ${{ matrix.os }}
Expand All @@ -37,7 +37,7 @@ jobs:
strategy:
matrix:
os: [ ubuntu-latest ]
python-version: [ "3.9", "3.10", "3.11", "3.12" ]
python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13" ]
uses: ./.github/workflows/lint.yml
with:
os: ${{ matrix.os }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/docs-only-checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:
strategy:
matrix:
os: [ ubuntu-latest ]
python-version: ["3.9", "3.10", "3.11", "3.12" ]
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13" ]
uses: ./.github/workflows/lint.yml
with:
os: ${{ matrix.os }}
Expand Down
2 changes: 1 addition & 1 deletion RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ Please follow the established format:

## Major features and improvements

- Add support for Python 3.12
- Add support for Python 3.12, 3.13 (#2190, #2191)
- Update Kedro-Viz telemetry for opt-out model (#2022)
- Introduce `behaviour` prop object with `reFocus` prop (#2161)

Expand Down
2 changes: 1 addition & 1 deletion demo-project/src/demo_project/requirements.in
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ pytest-mock>=1.7.1, <2.0
pytest~=6.2
scikit-learn~=1.0
wheel>=0.35, <0.37
pillow~=9.0
pillow>=9.0
matplotlib==3.5.0
pre-commit~=1.17
ruff==0.7.0
Expand Down
2 changes: 1 addition & 1 deletion demo-project/src/docker_requirements.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
kedro>=0.18.0
kedro-datasets[pandas.CSVDataset,pandas.ExcelDataset, pandas.ParquetDataset, plotly.PlotlyDataset, matplotlib.MatplotlibWriter]>=2.1.0
scikit-learn~=1.0
pillow~=9.0
pillow>=9.0
seaborn>=0.13.0
15 changes: 10 additions & 5 deletions package/features/steps/lower_requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,18 @@ plotly==4.8
packaging==23.0
pandas==1.3; python_version < '3.10'
pandas==1.5; python_version >= '3.10' and python_version < '3.12'
pandas==2.1.1; python_version >= '3.12'
pandas==2.1.1; python_version >= '3.12' and python_version < '3.13'
pandas==2.2.3; python_version >= '3.13'
sqlalchemy==1.4
strawberry-graphql==0.192.0
networkx==2.5
orjson==3.9
strawberry-graphql==0.192.0; python_version < '3.13'
strawberry-graphql==0.240.1; python_version >= '3.13'
networkx==2.5; python_version < '3.13'
networkx==2.7; python_version >= '3.13'
orjson==3.9; python_version < '3.13'
orjson==3.10.10; python_version >= '3.13'
secure==0.3.0
# numpy 2.0 breaks with old versions of pandas and this
# could be removed when the lowest version supported is updated
numpy==1.26.4
numpy==1.26.4; python_version < '3.13'
numpy==2.1.0; python_version >= '3.13'
pathspec==0.12.1
2 changes: 1 addition & 1 deletion package/kedro_viz/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ class KedroVizPythonVersionWarning(UserWarning):
"""Custom class for warnings about incompatibilities with Python versions."""


if sys.version_info >= (3, 13):
if sys.version_info >= (3, 14):
warnings.warn(
"""Please be advised that Kedro Viz is not yet fully
compatible with the Python version you are currently using.""",
Expand Down
4 changes: 2 additions & 2 deletions package/tests/test_import.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@


def test_import_kedro_viz_with_no_official_support_emits_warning(mocker):
"""Test importing kedro Viz with python>=3.13 and controlled warnings should work"""
mocker.patch("kedro_viz.sys.version_info", (3, 13))
"""Test importing kedro Viz with python>=3.14 and controlled warnings should work"""
mocker.patch("kedro_viz.sys.version_info", (3, 14))

# We use the parent class to avoid issues with `exec_module`
with pytest.warns(UserWarning) as record:
Expand Down

0 comments on commit 40dd06a

Please sign in to comment.