From 8830cabee6c166694fc40a7ec0606e64165d66fb Mon Sep 17 00:00:00 2001 From: ravi-kumar-pilla Date: Sun, 28 Jul 2024 11:02:44 -0500 Subject: [PATCH 01/17] sync remote --- demo-project/.version | 0 src/components/export-modal/export-modal.js | 0 src/components/flowchart/flowchart.js | 0 src/components/flowchart/styles/_layers.scss | 0 src/components/global-toolbar/global-toolbar.js | 0 src/components/ui/button/button.js | 0 src/components/ui/dropdown/dropdown.js | 0 src/components/update-reminder/update-reminder-content.js | 0 src/config.js | 0 src/store/initial-state.js | 0 tools/test-lib/react-app/app.js | 0 11 files changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 demo-project/.version mode change 100644 => 100755 src/components/export-modal/export-modal.js mode change 100644 => 100755 src/components/flowchart/flowchart.js mode change 100644 => 100755 src/components/flowchart/styles/_layers.scss mode change 100644 => 100755 src/components/global-toolbar/global-toolbar.js mode change 100644 => 100755 src/components/ui/button/button.js mode change 100644 => 100755 src/components/ui/dropdown/dropdown.js mode change 100644 => 100755 src/components/update-reminder/update-reminder-content.js mode change 100644 => 100755 src/config.js mode change 100644 => 100755 src/store/initial-state.js mode change 100644 => 100755 tools/test-lib/react-app/app.js diff --git a/demo-project/.version b/demo-project/.version old mode 100644 new mode 100755 diff --git a/src/components/export-modal/export-modal.js b/src/components/export-modal/export-modal.js old mode 100644 new mode 100755 diff --git a/src/components/flowchart/flowchart.js b/src/components/flowchart/flowchart.js old mode 100644 new mode 100755 diff --git a/src/components/flowchart/styles/_layers.scss b/src/components/flowchart/styles/_layers.scss old mode 100644 new mode 100755 diff --git a/src/components/global-toolbar/global-toolbar.js b/src/components/global-toolbar/global-toolbar.js old mode 100644 new mode 100755 diff --git a/src/components/ui/button/button.js b/src/components/ui/button/button.js old mode 100644 new mode 100755 diff --git a/src/components/ui/dropdown/dropdown.js b/src/components/ui/dropdown/dropdown.js old mode 100644 new mode 100755 diff --git a/src/components/update-reminder/update-reminder-content.js b/src/components/update-reminder/update-reminder-content.js old mode 100644 new mode 100755 diff --git a/src/config.js b/src/config.js old mode 100644 new mode 100755 diff --git a/src/store/initial-state.js b/src/store/initial-state.js old mode 100644 new mode 100755 diff --git a/tools/test-lib/react-app/app.js b/tools/test-lib/react-app/app.js old mode 100644 new mode 100755 From a30d0e4d2c1caf9114349fe98bf673345daa7d6b Mon Sep 17 00:00:00 2001 From: ravi-kumar-pilla Date: Thu, 14 Nov 2024 22:50:18 -0600 Subject: [PATCH 02/17] add python 3.12 support --- .github/workflows/all-checks.yml | 6 +++--- .github/workflows/build-backend.yml | 6 +++--- .github/workflows/docs-only-checks.yml | 2 +- RELEASE.md | 1 + package/features/environment.py | 2 +- package/kedro_viz/__init__.py | 2 +- package/tests/test_import.py | 4 ++-- 7 files changed, 12 insertions(+), 11 deletions(-) diff --git a/.github/workflows/all-checks.yml b/.github/workflows/all-checks.yml index 4c981d6c8b..694097a9e6 100644 --- a/.github/workflows/all-checks.yml +++ b/.github/workflows/all-checks.yml @@ -14,7 +14,7 @@ jobs: strategy: matrix: os: [ windows-latest, ubuntu-latest ] - python-version: [ "3.9", "3.10", "3.11" ] + python-version: [ "3.9", "3.10", "3.11", "3.12" ] uses: ./.github/workflows/e2e-tests.yml with: os: ${{ matrix.os }} @@ -24,7 +24,7 @@ jobs: strategy: matrix: os: [ windows-latest, ubuntu-latest ] - python-version: [ "3.9", "3.10", "3.11" ] + python-version: [ "3.9", "3.10", "3.11", "3.12" ] uses: ./.github/workflows/unit-tests.yml with: os: ${{ matrix.os }} @@ -34,7 +34,7 @@ jobs: strategy: matrix: os: [ ubuntu-latest ] - python-version: [ "3.9", "3.10", "3.11" ] + python-version: [ "3.9", "3.10", "3.11", "3.12" ] uses: ./.github/workflows/lint.yml with: os: ${{ matrix.os }} diff --git a/.github/workflows/build-backend.yml b/.github/workflows/build-backend.yml index 70a8691854..970d574c4b 100644 --- a/.github/workflows/build-backend.yml +++ b/.github/workflows/build-backend.yml @@ -17,7 +17,7 @@ jobs: strategy: matrix: os: [ windows-latest, ubuntu-latest ] - python-version: [ "3.9", "3.10", "3.11" ] + python-version: [ "3.9", "3.10", "3.11", "3.12" ] uses: ./.github/workflows/e2e-tests.yml with: os: ${{ matrix.os }} @@ -27,7 +27,7 @@ jobs: strategy: matrix: os: [ windows-latest, ubuntu-latest ] - python-version: [ "3.9", "3.10", "3.11" ] + python-version: [ "3.9", "3.10", "3.11", "3.12" ] uses: ./.github/workflows/unit-tests.yml with: os: ${{ matrix.os }} @@ -37,7 +37,7 @@ jobs: strategy: matrix: os: [ ubuntu-latest ] - python-version: [ "3.9", "3.10", "3.11" ] + python-version: [ "3.9", "3.10", "3.11", "3.12" ] uses: ./.github/workflows/lint.yml with: os: ${{ matrix.os }} diff --git a/.github/workflows/docs-only-checks.yml b/.github/workflows/docs-only-checks.yml index bd09e387e8..361df04c3b 100644 --- a/.github/workflows/docs-only-checks.yml +++ b/.github/workflows/docs-only-checks.yml @@ -19,7 +19,7 @@ jobs: strategy: matrix: os: [ ubuntu-latest ] - python-version: ["3.9", "3.10", "3.11"] + python-version: ["3.9", "3.10", "3.11", "3.12" ] uses: ./.github/workflows/lint.yml with: os: ${{ matrix.os }} diff --git a/RELEASE.md b/RELEASE.md index 61cb49bf9b..129091b795 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -10,6 +10,7 @@ Please follow the established format: ## Major features and improvements +- Add support for Python 3.12 - Update Kedro-Viz telemetry for opt-out model (#2022) - Introduce `behaviour` prop object with `reFocus` prop (#2161) diff --git a/package/features/environment.py b/package/features/environment.py index 38fb8e0e61..73c75f26b3 100644 --- a/package/features/environment.py +++ b/package/features/environment.py @@ -41,7 +41,7 @@ def before_scenario(context, scenario): if ( kedro_version - and kedro_version <= parse("0.18.12") + and kedro_version < parse("0.18.12") and sys.version_info >= (3, 11) ): print( diff --git a/package/kedro_viz/__init__.py b/package/kedro_viz/__init__.py index 806f783d93..d19e2fb8e7 100644 --- a/package/kedro_viz/__init__.py +++ b/package/kedro_viz/__init__.py @@ -10,7 +10,7 @@ class KedroVizPythonVersionWarning(UserWarning): """Custom class for warnings about incompatibilities with Python versions.""" -if sys.version_info >= (3, 12): +if sys.version_info >= (3, 13): warnings.warn( """Please be advised that Kedro Viz is not yet fully compatible with the Python version you are currently using.""", diff --git a/package/tests/test_import.py b/package/tests/test_import.py index e9e918c6c1..2198ccdcc4 100644 --- a/package/tests/test_import.py +++ b/package/tests/test_import.py @@ -4,8 +4,8 @@ def test_import_kedro_viz_with_no_official_support_emits_warning(mocker): - """Test importing kedro Viz with python>=3.12 and controlled warnings should work""" - mocker.patch("kedro_viz.sys.version_info", (3, 12)) + """Test importing kedro Viz with python>=3.13 and controlled warnings should work""" + mocker.patch("kedro_viz.sys.version_info", (3, 13)) # We use the parent class to avoid issues with `exec_module` with pytest.warns(UserWarning) as record: From 662da863c020da33949c4959f88ed859fdff458c Mon Sep 17 00:00:00 2001 From: ravi-kumar-pilla Date: Thu, 14 Nov 2024 22:51:28 -0600 Subject: [PATCH 03/17] fix permission --- demo-project/.version | 0 src/components/export-modal/export-modal.js | 0 src/components/flowchart/flowchart.js | 0 src/components/flowchart/styles/_layers.scss | 0 src/components/global-toolbar/global-toolbar.js | 0 src/components/ui/button/button.js | 0 src/components/ui/dropdown/dropdown.js | 0 src/components/update-reminder/update-reminder-content.js | 0 src/config.js | 0 src/store/initial-state.js | 0 tools/test-lib/react-app/app.js | 0 11 files changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 demo-project/.version mode change 100755 => 100644 src/components/export-modal/export-modal.js mode change 100755 => 100644 src/components/flowchart/flowchart.js mode change 100755 => 100644 src/components/flowchart/styles/_layers.scss mode change 100755 => 100644 src/components/global-toolbar/global-toolbar.js mode change 100755 => 100644 src/components/ui/button/button.js mode change 100755 => 100644 src/components/ui/dropdown/dropdown.js mode change 100755 => 100644 src/components/update-reminder/update-reminder-content.js mode change 100755 => 100644 src/config.js mode change 100755 => 100644 src/store/initial-state.js mode change 100755 => 100644 tools/test-lib/react-app/app.js diff --git a/demo-project/.version b/demo-project/.version old mode 100755 new mode 100644 diff --git a/src/components/export-modal/export-modal.js b/src/components/export-modal/export-modal.js old mode 100755 new mode 100644 diff --git a/src/components/flowchart/flowchart.js b/src/components/flowchart/flowchart.js old mode 100755 new mode 100644 diff --git a/src/components/flowchart/styles/_layers.scss b/src/components/flowchart/styles/_layers.scss old mode 100755 new mode 100644 diff --git a/src/components/global-toolbar/global-toolbar.js b/src/components/global-toolbar/global-toolbar.js old mode 100755 new mode 100644 diff --git a/src/components/ui/button/button.js b/src/components/ui/button/button.js old mode 100755 new mode 100644 diff --git a/src/components/ui/dropdown/dropdown.js b/src/components/ui/dropdown/dropdown.js old mode 100755 new mode 100644 diff --git a/src/components/update-reminder/update-reminder-content.js b/src/components/update-reminder/update-reminder-content.js old mode 100755 new mode 100644 diff --git a/src/config.js b/src/config.js old mode 100755 new mode 100644 diff --git a/src/store/initial-state.js b/src/store/initial-state.js old mode 100755 new mode 100644 diff --git a/tools/test-lib/react-app/app.js b/tools/test-lib/react-app/app.js old mode 100755 new mode 100644 From 1ab761de0c68e6d8d50c65337c52a0a2b0c78b7f Mon Sep 17 00:00:00 2001 From: ravi-kumar-pilla Date: Thu, 14 Nov 2024 22:59:43 -0600 Subject: [PATCH 04/17] add support for python 3.13 --- .github/workflows/all-checks.yml | 6 +++--- .github/workflows/build-backend.yml | 6 +++--- .github/workflows/docs-only-checks.yml | 2 +- RELEASE.md | 1 + package/kedro_viz/__init__.py | 2 +- package/tests/test_import.py | 4 ++-- 6 files changed, 11 insertions(+), 10 deletions(-) diff --git a/.github/workflows/all-checks.yml b/.github/workflows/all-checks.yml index 694097a9e6..d1c09d8a52 100644 --- a/.github/workflows/all-checks.yml +++ b/.github/workflows/all-checks.yml @@ -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 }} @@ -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 }} @@ -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 }} diff --git a/.github/workflows/build-backend.yml b/.github/workflows/build-backend.yml index 970d574c4b..327fadce24 100644 --- a/.github/workflows/build-backend.yml +++ b/.github/workflows/build-backend.yml @@ -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 }} @@ -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 }} @@ -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 }} diff --git a/.github/workflows/docs-only-checks.yml b/.github/workflows/docs-only-checks.yml index 361df04c3b..552074614d 100644 --- a/.github/workflows/docs-only-checks.yml +++ b/.github/workflows/docs-only-checks.yml @@ -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 }} diff --git a/RELEASE.md b/RELEASE.md index 129091b795..0f40429ce2 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -10,6 +10,7 @@ Please follow the established format: ## Major features and improvements +- Add support for Python 3.13 - Add support for Python 3.12 - Update Kedro-Viz telemetry for opt-out model (#2022) - Introduce `behaviour` prop object with `reFocus` prop (#2161) diff --git a/package/kedro_viz/__init__.py b/package/kedro_viz/__init__.py index d19e2fb8e7..8774c01d3f 100644 --- a/package/kedro_viz/__init__.py +++ b/package/kedro_viz/__init__.py @@ -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.""", diff --git a/package/tests/test_import.py b/package/tests/test_import.py index 2198ccdcc4..8b646a0b86 100644 --- a/package/tests/test_import.py +++ b/package/tests/test_import.py @@ -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: From 68ee45aa6f9534e6a30e8a76af463d8b62349b15 Mon Sep 17 00:00:00 2001 From: ravi-kumar-pilla Date: Sun, 17 Nov 2024 19:46:19 -0600 Subject: [PATCH 05/17] testing windows build --- .github/workflows/e2e-tests.yml | 3 ++- .github/workflows/unit-tests.yml | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 5eee3d98cd..b6688a1310 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -20,7 +20,8 @@ jobs: ( ( github.ref == 'refs/heads/main' || - github.ref == 'refs/heads/demo' + github.ref == 'refs/heads/demo' || + github.ref == 'refs/heads/feature/python-3-12' ) && inputs.os == 'windows-latest' ) diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml index fe970683c3..0ee5ccedb7 100644 --- a/.github/workflows/unit-tests.yml +++ b/.github/workflows/unit-tests.yml @@ -20,7 +20,8 @@ jobs: ( ( github.ref == 'refs/heads/main' || - github.ref == 'refs/heads/demo' + github.ref == 'refs/heads/demo' || + github.ref == 'refs/heads/feature/python-3-12' ) && inputs.os == 'windows-latest' ) From 51103c9865c97cd2b8ea9b0a022479c8ee0912bb Mon Sep 17 00:00:00 2001 From: ravi-kumar-pilla Date: Sun, 17 Nov 2024 23:46:11 -0600 Subject: [PATCH 06/17] testing py3.12 with upgraded pandas --- .github/workflows/e2e-tests.yml | 10 ---------- .github/workflows/unit-tests.yml | 10 ---------- package/features/steps/lower_requirements.txt | 3 ++- 3 files changed, 2 insertions(+), 21 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index b6688a1310..e6e862c0a2 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -15,16 +15,6 @@ jobs: # below condition checks if the operating system is Ubuntu, or # if the operating system is Windows and the branch is main/demo - if: > - inputs.os == 'ubuntu-latest' || - ( - ( - github.ref == 'refs/heads/main' || - github.ref == 'refs/heads/demo' || - github.ref == 'refs/heads/feature/python-3-12' - ) && - inputs.os == 'windows-latest' - ) steps: - name: Checkout code diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml index 0ee5ccedb7..78d43097c4 100644 --- a/.github/workflows/unit-tests.yml +++ b/.github/workflows/unit-tests.yml @@ -15,16 +15,6 @@ jobs: # below condition checks if the operating system is Ubuntu, or # if the operating system is Windows and the branch is main/demo - if: > - inputs.os == 'ubuntu-latest' || - ( - ( - github.ref == 'refs/heads/main' || - github.ref == 'refs/heads/demo' || - github.ref == 'refs/heads/feature/python-3-12' - ) && - inputs.os == 'windows-latest' - ) steps: - name: Checkout code diff --git a/package/features/steps/lower_requirements.txt b/package/features/steps/lower_requirements.txt index ab38585acf..66dff33f1c 100644 --- a/package/features/steps/lower_requirements.txt +++ b/package/features/steps/lower_requirements.txt @@ -7,7 +7,8 @@ watchfiles==0.24.0 plotly==4.8 packaging==23.0 pandas==1.3; python_version < '3.10' -pandas==1.5; python_version >= '3.10' +pandas==1.5; python_version >= '3.10' and python_version < '3.12' +pandas==2.1.1; python_version >= '3.12' sqlalchemy==1.4 strawberry-graphql==0.192.0 networkx==2.5 From f9f66007f9f540da69946144e2dbdf580b5c9bb5 Mon Sep 17 00:00:00 2001 From: ravi-kumar-pilla Date: Mon, 18 Nov 2024 00:50:38 -0600 Subject: [PATCH 07/17] testing python 3.12 and fsspec compat --- package/features/steps/lower_requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package/features/steps/lower_requirements.txt b/package/features/steps/lower_requirements.txt index 66dff33f1c..70139190ef 100644 --- a/package/features/steps/lower_requirements.txt +++ b/package/features/steps/lower_requirements.txt @@ -1,6 +1,6 @@ ipython==7.0.0 fastapi==0.100.0 -fsspec==2021.4 +fsspec==2021.06.01 aiofiles==22.1.0 uvicorn[standard]==0.22.0 watchfiles==0.24.0 From 14c028080e3eaf9cd3963296bfa6e7590d20a825 Mon Sep 17 00:00:00 2001 From: ravi-kumar-pilla Date: Tue, 19 Nov 2024 09:02:31 -0600 Subject: [PATCH 08/17] final test --- .github/workflows/e2e-tests.yml | 9 +++++++++ .github/workflows/unit-tests.yml | 9 +++++++++ 2 files changed, 18 insertions(+) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index e6e862c0a2..5eee3d98cd 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -15,6 +15,15 @@ jobs: # below condition checks if the operating system is Ubuntu, or # if the operating system is Windows and the branch is main/demo + if: > + inputs.os == 'ubuntu-latest' || + ( + ( + github.ref == 'refs/heads/main' || + github.ref == 'refs/heads/demo' + ) && + inputs.os == 'windows-latest' + ) steps: - name: Checkout code diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml index 78d43097c4..fe970683c3 100644 --- a/.github/workflows/unit-tests.yml +++ b/.github/workflows/unit-tests.yml @@ -15,6 +15,15 @@ jobs: # below condition checks if the operating system is Ubuntu, or # if the operating system is Windows and the branch is main/demo + if: > + inputs.os == 'ubuntu-latest' || + ( + ( + github.ref == 'refs/heads/main' || + github.ref == 'refs/heads/demo' + ) && + inputs.os == 'windows-latest' + ) steps: - name: Checkout code From 25dc06f17dac1b6aac37a8554026e4e71503b9de Mon Sep 17 00:00:00 2001 From: ravi-kumar-pilla Date: Tue, 19 Nov 2024 09:51:25 -0600 Subject: [PATCH 09/17] address PR comments --- package/features/steps/lower_requirements.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/package/features/steps/lower_requirements.txt b/package/features/steps/lower_requirements.txt index 70139190ef..ff9bce834a 100644 --- a/package/features/steps/lower_requirements.txt +++ b/package/features/steps/lower_requirements.txt @@ -1,6 +1,7 @@ ipython==7.0.0 fastapi==0.100.0 -fsspec==2021.06.01 +fsspec==2021.4; python_version < '3.12' +fsspec==2021.06.01; python_version >= '3.12' aiofiles==22.1.0 uvicorn[standard]==0.22.0 watchfiles==0.24.0 From 3aafdb1622c1ffda591b107bb8dc5608cf203fbf Mon Sep 17 00:00:00 2001 From: rashidakanchwala Date: Tue, 19 Nov 2024 16:01:43 +0000 Subject: [PATCH 10/17] upgrade pillow version Signed-off-by: rashidakanchwala --- demo-project/src/demo_project/requirements.in | 2 +- demo-project/src/docker_requirements.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/demo-project/src/demo_project/requirements.in b/demo-project/src/demo_project/requirements.in index 3d69566188..7f7bf5d3bd 100644 --- a/demo-project/src/demo_project/requirements.in +++ b/demo-project/src/demo_project/requirements.in @@ -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 diff --git a/demo-project/src/docker_requirements.txt b/demo-project/src/docker_requirements.txt index 5f220c35cf..0aa7eccbe1 100644 --- a/demo-project/src/docker_requirements.txt +++ b/demo-project/src/docker_requirements.txt @@ -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 From a44de36544ab3fa9ecb6a021570663b6fb96feda Mon Sep 17 00:00:00 2001 From: ravi-kumar-pilla Date: Tue, 19 Nov 2024 14:02:31 -0600 Subject: [PATCH 11/17] testing e2e fix --- .github/workflows/e2e-tests.yml | 9 ----- .github/workflows/unit-tests.yml | 9 ----- RELEASE.md | 3 +- package/features/steps/lower_requirements.txt | 6 ++-- package/features/viz.feature | 36 +------------------ 5 files changed, 6 insertions(+), 57 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 5eee3d98cd..e6e862c0a2 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -15,15 +15,6 @@ jobs: # below condition checks if the operating system is Ubuntu, or # if the operating system is Windows and the branch is main/demo - if: > - inputs.os == 'ubuntu-latest' || - ( - ( - github.ref == 'refs/heads/main' || - github.ref == 'refs/heads/demo' - ) && - inputs.os == 'windows-latest' - ) steps: - name: Checkout code diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml index fe970683c3..78d43097c4 100644 --- a/.github/workflows/unit-tests.yml +++ b/.github/workflows/unit-tests.yml @@ -15,15 +15,6 @@ jobs: # below condition checks if the operating system is Ubuntu, or # if the operating system is Windows and the branch is main/demo - if: > - inputs.os == 'ubuntu-latest' || - ( - ( - github.ref == 'refs/heads/main' || - github.ref == 'refs/heads/demo' - ) && - inputs.os == 'windows-latest' - ) steps: - name: Checkout code diff --git a/RELEASE.md b/RELEASE.md index 86dde30829..f0dc8e2c8b 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -10,8 +10,7 @@ Please follow the established format: ## Major features and improvements -- Add support for Python 3.13 -- Add support for Python 3.12 +- Add support for Python 3.12, 3.13 - Update Kedro-Viz telemetry for opt-out model (#2022) - Introduce `behaviour` prop object with `reFocus` prop (#2161) diff --git a/package/features/steps/lower_requirements.txt b/package/features/steps/lower_requirements.txt index ff9bce834a..728aacc4d2 100644 --- a/package/features/steps/lower_requirements.txt +++ b/package/features/steps/lower_requirements.txt @@ -9,7 +9,8 @@ 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 @@ -17,5 +18,6 @@ orjson==3.9 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 diff --git a/package/features/viz.feature b/package/features/viz.feature index dfe78dd5db..0b88c3bedb 100644 --- a/package/features/viz.feature +++ b/package/features/viz.feature @@ -2,13 +2,6 @@ Feature: Viz plugin in new project Background: Given I have prepared a config file with example code - Scenario: Execute viz with the earliest Kedro version that it supports - Given I have installed kedro version "0.18.3" - And I have run a non-interactive kedro new with pandas-iris starter - And I have installed the project's requirements - When I execute the kedro viz run command - Then kedro-viz should start successfully - Scenario: Execute viz with latest Kedro with lower-bound viz requirements Given I have installed kedro version "latest" And I have installed the lower-bound Kedro-viz requirements @@ -16,31 +9,4 @@ Feature: Viz plugin in new project And I have installed the project's requirements When I execute the kedro viz run command Then kedro-viz should start successfully - - Scenario: Execute viz with latest Kedro - Given I have installed kedro version "latest" - And I have run a non-interactive kedro new with spaceflights-pandas starter - And I have installed the project's requirements - When I execute the kedro viz run command - Then kedro-viz should start successfully - - Scenario: Execute viz lite with the earliest Kedro version that it supports - Given I have installed kedro version "0.18.3" - And I have run a non-interactive kedro new with pandas-iris starter - When I execute the kedro viz run command with lite option - Then kedro-viz should start successfully - - Scenario: Execute viz lite with latest Kedro - Given I have installed kedro version "latest" - And I have run a non-interactive kedro new with spaceflights-pandas starter - When I execute the kedro viz run command with lite option - Then kedro-viz should start successfully - - Scenario: Compare viz responses in regular and lite mode - Given I have installed kedro version "latest" - And I have run a non-interactive kedro new with spaceflights-pandas starter - When I execute the kedro viz run command with lite option - Then I store the response from main endpoint - Given I have installed the project's requirements - When I execute the kedro viz run command - Then I compare the responses in regular and lite mode + \ No newline at end of file From fc5f76e5893713a3c322526d8d2d512ac9713406 Mon Sep 17 00:00:00 2001 From: ravi-kumar-pilla Date: Tue, 19 Nov 2024 14:03:42 -0600 Subject: [PATCH 12/17] testing e2e fix --- package/features/viz.feature | 36 +++++++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/package/features/viz.feature b/package/features/viz.feature index 0b88c3bedb..dfe78dd5db 100644 --- a/package/features/viz.feature +++ b/package/features/viz.feature @@ -2,6 +2,13 @@ Feature: Viz plugin in new project Background: Given I have prepared a config file with example code + Scenario: Execute viz with the earliest Kedro version that it supports + Given I have installed kedro version "0.18.3" + And I have run a non-interactive kedro new with pandas-iris starter + And I have installed the project's requirements + When I execute the kedro viz run command + Then kedro-viz should start successfully + Scenario: Execute viz with latest Kedro with lower-bound viz requirements Given I have installed kedro version "latest" And I have installed the lower-bound Kedro-viz requirements @@ -9,4 +16,31 @@ Feature: Viz plugin in new project And I have installed the project's requirements When I execute the kedro viz run command Then kedro-viz should start successfully - \ No newline at end of file + + Scenario: Execute viz with latest Kedro + Given I have installed kedro version "latest" + And I have run a non-interactive kedro new with spaceflights-pandas starter + And I have installed the project's requirements + When I execute the kedro viz run command + Then kedro-viz should start successfully + + Scenario: Execute viz lite with the earliest Kedro version that it supports + Given I have installed kedro version "0.18.3" + And I have run a non-interactive kedro new with pandas-iris starter + When I execute the kedro viz run command with lite option + Then kedro-viz should start successfully + + Scenario: Execute viz lite with latest Kedro + Given I have installed kedro version "latest" + And I have run a non-interactive kedro new with spaceflights-pandas starter + When I execute the kedro viz run command with lite option + Then kedro-viz should start successfully + + Scenario: Compare viz responses in regular and lite mode + Given I have installed kedro version "latest" + And I have run a non-interactive kedro new with spaceflights-pandas starter + When I execute the kedro viz run command with lite option + Then I store the response from main endpoint + Given I have installed the project's requirements + When I execute the kedro viz run command + Then I compare the responses in regular and lite mode From 9a17a2e07b368a50916f47ed371e50f0034fc6d3 Mon Sep 17 00:00:00 2001 From: ravi-kumar-pilla Date: Tue, 19 Nov 2024 14:10:58 -0600 Subject: [PATCH 13/17] merged main --- package/kedro_viz/__init__.py | 4 ---- package/tests/test_import.py | 5 ----- 2 files changed, 9 deletions(-) diff --git a/package/kedro_viz/__init__.py b/package/kedro_viz/__init__.py index c4413a6a39..8774c01d3f 100644 --- a/package/kedro_viz/__init__.py +++ b/package/kedro_viz/__init__.py @@ -10,11 +10,7 @@ class KedroVizPythonVersionWarning(UserWarning): """Custom class for warnings about incompatibilities with Python versions.""" -<<<<<<< HEAD if sys.version_info >= (3, 14): -======= -if sys.version_info >= (3, 13): ->>>>>>> e91d156e6b37bd6f38aa4ce2bfd08095a4134239 warnings.warn( """Please be advised that Kedro Viz is not yet fully compatible with the Python version you are currently using.""", diff --git a/package/tests/test_import.py b/package/tests/test_import.py index 84e5180481..8b646a0b86 100644 --- a/package/tests/test_import.py +++ b/package/tests/test_import.py @@ -4,13 +4,8 @@ def test_import_kedro_viz_with_no_official_support_emits_warning(mocker): -<<<<<<< HEAD """Test importing kedro Viz with python>=3.14 and controlled warnings should work""" mocker.patch("kedro_viz.sys.version_info", (3, 14)) -======= - """Test importing kedro Viz with python>=3.13 and controlled warnings should work""" - mocker.patch("kedro_viz.sys.version_info", (3, 13)) ->>>>>>> e91d156e6b37bd6f38aa4ce2bfd08095a4134239 # We use the parent class to avoid issues with `exec_module` with pytest.warns(UserWarning) as record: From dbcb12ef9ba8d78ac042c7d323baeeb3444a0021 Mon Sep 17 00:00:00 2001 From: ravi-kumar-pilla Date: Tue, 19 Nov 2024 16:17:07 -0600 Subject: [PATCH 14/17] update lower req --- package/features/steps/lower_requirements.txt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/package/features/steps/lower_requirements.txt b/package/features/steps/lower_requirements.txt index 728aacc4d2..fd88ea67bc 100644 --- a/package/features/steps/lower_requirements.txt +++ b/package/features/steps/lower_requirements.txt @@ -12,9 +12,11 @@ pandas==1.5; python_version >= '3.10' and 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 +strawberry-graphql==0.192.0; python_version < '3.13' +strawberry-graphql==0.240.1; python_version >= '3.13' networkx==2.5 -orjson==3.9 +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 From 4701068ebc5b36bdd29b9fecd49613a01a9f9994 Mon Sep 17 00:00:00 2001 From: ravi-kumar-pilla Date: Tue, 19 Nov 2024 16:18:26 -0600 Subject: [PATCH 15/17] testing only py3.13 --- .github/workflows/all-checks.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/all-checks.yml b/.github/workflows/all-checks.yml index d1c09d8a52..50ba325afa 100644 --- a/.github/workflows/all-checks.yml +++ b/.github/workflows/all-checks.yml @@ -14,7 +14,7 @@ jobs: strategy: matrix: os: [ windows-latest, ubuntu-latest ] - python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13" ] + python-version: [ "3.13" ] uses: ./.github/workflows/e2e-tests.yml with: os: ${{ matrix.os }} @@ -24,7 +24,7 @@ jobs: strategy: matrix: os: [ windows-latest, ubuntu-latest ] - python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13" ] + python-version: [ "3.13" ] uses: ./.github/workflows/unit-tests.yml with: os: ${{ matrix.os }} @@ -34,7 +34,7 @@ jobs: strategy: matrix: os: [ ubuntu-latest ] - python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13" ] + python-version: [ "3.13" ] uses: ./.github/workflows/lint.yml with: os: ${{ matrix.os }} From 468c80cbd5943f505f988272c1b4e5697d21889c Mon Sep 17 00:00:00 2001 From: ravi-kumar-pilla Date: Tue, 19 Nov 2024 19:54:47 -0600 Subject: [PATCH 16/17] update lower reqs --- .github/workflows/all-checks.yml | 6 +++--- .github/workflows/e2e-tests.yml | 9 +++++++++ .github/workflows/unit-tests.yml | 9 +++++++++ package/features/steps/lower_requirements.txt | 3 ++- 4 files changed, 23 insertions(+), 4 deletions(-) diff --git a/.github/workflows/all-checks.yml b/.github/workflows/all-checks.yml index 50ba325afa..d1c09d8a52 100644 --- a/.github/workflows/all-checks.yml +++ b/.github/workflows/all-checks.yml @@ -14,7 +14,7 @@ jobs: strategy: matrix: os: [ windows-latest, ubuntu-latest ] - python-version: [ "3.13" ] + python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13" ] uses: ./.github/workflows/e2e-tests.yml with: os: ${{ matrix.os }} @@ -24,7 +24,7 @@ jobs: strategy: matrix: os: [ windows-latest, ubuntu-latest ] - python-version: [ "3.13" ] + python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13" ] uses: ./.github/workflows/unit-tests.yml with: os: ${{ matrix.os }} @@ -34,7 +34,7 @@ jobs: strategy: matrix: os: [ ubuntu-latest ] - python-version: [ "3.13" ] + python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13" ] uses: ./.github/workflows/lint.yml with: os: ${{ matrix.os }} diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index e6e862c0a2..5eee3d98cd 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -15,6 +15,15 @@ jobs: # below condition checks if the operating system is Ubuntu, or # if the operating system is Windows and the branch is main/demo + if: > + inputs.os == 'ubuntu-latest' || + ( + ( + github.ref == 'refs/heads/main' || + github.ref == 'refs/heads/demo' + ) && + inputs.os == 'windows-latest' + ) steps: - name: Checkout code diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml index 78d43097c4..fe970683c3 100644 --- a/.github/workflows/unit-tests.yml +++ b/.github/workflows/unit-tests.yml @@ -15,6 +15,15 @@ jobs: # below condition checks if the operating system is Ubuntu, or # if the operating system is Windows and the branch is main/demo + if: > + inputs.os == 'ubuntu-latest' || + ( + ( + github.ref == 'refs/heads/main' || + github.ref == 'refs/heads/demo' + ) && + inputs.os == 'windows-latest' + ) steps: - name: Checkout code diff --git a/package/features/steps/lower_requirements.txt b/package/features/steps/lower_requirements.txt index fd88ea67bc..cbdaa4aea3 100644 --- a/package/features/steps/lower_requirements.txt +++ b/package/features/steps/lower_requirements.txt @@ -14,7 +14,8 @@ pandas==2.2.3; python_version >= '3.13' sqlalchemy==1.4 strawberry-graphql==0.192.0; python_version < '3.13' strawberry-graphql==0.240.1; python_version >= '3.13' -networkx==2.5 +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 From 1a3ded172c018550b945944c68d47c93e9bb9710 Mon Sep 17 00:00:00 2001 From: rashidakanchwala <37628668+rashidakanchwala@users.noreply.github.com> Date: Wed, 20 Nov 2024 13:20:31 +0000 Subject: [PATCH 17/17] Update RELEASE.md Signed-off-by: rashidakanchwala <37628668+rashidakanchwala@users.noreply.github.com> --- RELEASE.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RELEASE.md b/RELEASE.md index 73768ddd06..a51d642ca1 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -10,7 +10,7 @@ Please follow the established format: ## Major features and improvements -- Add support for Python 3.12, 3.13 +- 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)