From 421dff1ccaadcd2bf221a646703b1ff96dc0cbd7 Mon Sep 17 00:00:00 2001 From: Joao Andre Date: Tue, 10 Dec 2024 20:14:32 -0300 Subject: [PATCH] feat: Add python 3.13 to actions --- .github/workflows/dependencies-management.yml | 8 +- .github/workflows/overall-tests.yml | 4 +- .github/workflows/packaging.yml | 2 +- .github/workflows/partial-tests.yml | 6 +- .github/workflows/publish.yml | 2 +- pyproject.toml | 1 + taipy/common/pyproject.toml | 2 +- taipy/core/pyproject.toml | 1 + taipy/gui/pyproject.toml | 1 + taipy/rest/pyproject.toml | 1 + taipy/templates/pyproject.toml | 1 + tools/packages/pipfiles/Pipfile3.13.max | 82 +++++++++++++++++++ 12 files changed, 99 insertions(+), 12 deletions(-) create mode 100644 tools/packages/pipfiles/Pipfile3.13.max diff --git a/.github/workflows/dependencies-management.yml b/.github/workflows/dependencies-management.yml index b0b6c427b7..a6b0192ede 100644 --- a/.github/workflows/dependencies-management.yml +++ b/.github/workflows/dependencies-management.yml @@ -22,7 +22,7 @@ jobs: timeout-minutes: 20 strategy: matrix: - python-version: ['3.9', '3.10', '3.11', '3.12'] + python-version: ['3.9', '3.10', '3.11', '3.12', '3.13'] os: [ubuntu-latest] permissions: contents: write @@ -50,8 +50,8 @@ jobs: echo EOF >> "$GITHUB_OUTPUT" cat pipfiles/Pipfile${{matrix.python-version}}.max - - name: Create the pull request updating the dependencies (3.12 only) - if: steps.ensure-dependencies-are-up-to-date.outputs.diff != '' && matrix.python-version == '3.12' + - name: Create the pull request updating the dependencies (3.13 only) + if: steps.ensure-dependencies-are-up-to-date.outputs.diff != '' && matrix.python-version == '3.13' uses: peter-evans/create-pull-request@v5 with: token: ${{ secrets.GITHUB_TOKEN }} @@ -67,7 +67,7 @@ jobs: tools/packages/taipy*/*requirements.txt - name: Create the pull request updating the Pipfile max - if: steps.ensure-dependencies-are-up-to-date.outputs.diff != '' && matrix.python-version != '3.12' + if: steps.ensure-dependencies-are-up-to-date.outputs.diff != '' && matrix.python-version != '3.13' uses: peter-evans/create-pull-request@v5 with: token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/overall-tests.yml b/.github/workflows/overall-tests.yml index ccf20c23cb..96c7a91197 100644 --- a/.github/workflows/overall-tests.yml +++ b/.github/workflows/overall-tests.yml @@ -52,7 +52,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ['3.9', '3.10', '3.11', '3.12'] + python-version: ['3.9', '3.10', '3.11', '3.12', '3.13'] os: [ubuntu-latest, windows-latest, macos-13] pipfile-version: ['min', 'max'] runs-on: ${{ matrix.os }} @@ -80,7 +80,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ['3.9', '3.10', '3.11', '3.12'] + python-version: ['3.9', '3.10', '3.11', '3.12', '3.13'] os: [ubuntu-latest, windows-latest, macos-13] orchestrator: ['orchestrator_dispatcher', 'standalone'] pipfile-version: ['min', 'max'] diff --git a/.github/workflows/packaging.yml b/.github/workflows/packaging.yml index d185a5b20e..73a312273a 100644 --- a/.github/workflows/packaging.yml +++ b/.github/workflows/packaging.yml @@ -20,7 +20,7 @@ jobs: timeout-minutes: 30 strategy: matrix: - python-versions: ['3.9', '3.10', '3.11', '3.12'] + python-versions: ['3.9', '3.10', '3.11', '3.12', '3.13'] os: [ubuntu-latest, macos-13, windows-latest] runs-on: ${{ matrix.os }} diff --git a/.github/workflows/partial-tests.yml b/.github/workflows/partial-tests.yml index 99846f9bbc..2de8ab5746 100644 --- a/.github/workflows/partial-tests.yml +++ b/.github/workflows/partial-tests.yml @@ -23,7 +23,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ['3.9', '3.10', '3.11', '3.12'] + python-version: ['3.9', '3.10', '3.11', '3.12', '3.13'] os: [ubuntu-latest, windows-latest, macos-13] runs-on: ${{ matrix.os }} steps: @@ -131,7 +131,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ['3.9', '3.10', '3.11', '3.12'] + python-version: ['3.9', '3.10', '3.11', '3.12','3.13'] os: [ubuntu-latest, windows-latest, macos-13] runs-on: ${{ matrix.os }} steps: @@ -174,7 +174,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ['3.9', '3.10', '3.11', '3.12'] + python-version: ['3.9', '3.10', '3.11', '3.12', '3.13'] os: [ubuntu-latest, windows-latest, macos-13] runs-on: ${{ matrix.os }} steps: diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index c36609662c..f83888a348 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -104,7 +104,7 @@ jobs: timeout-minutes: 30 strategy: matrix: - python-versions: ['3.9','3.10', '3.11', '3.12'] + python-versions: ['3.9','3.10', '3.11', '3.12', '3.13'] os: [ubuntu-latest,windows-latest,macos-13] runs-on: ${{ matrix.os }} steps: diff --git a/pyproject.toml b/pyproject.toml index 943381566e..c82d2e0100 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -19,6 +19,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", ] dynamic = ["version", "dependencies"] diff --git a/taipy/common/pyproject.toml b/taipy/common/pyproject.toml index 1c9d89e6ba..1a78463c81 100644 --- a/taipy/common/pyproject.toml +++ b/taipy/common/pyproject.toml @@ -18,7 +18,7 @@ classifiers = [ "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", - "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", ] dynamic = ["version", "dependencies"] diff --git a/taipy/core/pyproject.toml b/taipy/core/pyproject.toml index d8bcc5329a..bb1ff478bc 100644 --- a/taipy/core/pyproject.toml +++ b/taipy/core/pyproject.toml @@ -19,6 +19,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", ] dynamic = ["version", "dependencies"] diff --git a/taipy/gui/pyproject.toml b/taipy/gui/pyproject.toml index 020c90ab49..12883774fb 100644 --- a/taipy/gui/pyproject.toml +++ b/taipy/gui/pyproject.toml @@ -19,6 +19,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", ] dynamic = ["version", "dependencies"] diff --git a/taipy/rest/pyproject.toml b/taipy/rest/pyproject.toml index 461d8b9c71..f0b0b70dc2 100644 --- a/taipy/rest/pyproject.toml +++ b/taipy/rest/pyproject.toml @@ -19,6 +19,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", ] dynamic = ["version", "dependencies"] diff --git a/taipy/templates/pyproject.toml b/taipy/templates/pyproject.toml index a4b6246699..ba512ec54b 100644 --- a/taipy/templates/pyproject.toml +++ b/taipy/templates/pyproject.toml @@ -19,6 +19,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", ] dynamic = ["version", "dependencies"] diff --git a/tools/packages/pipfiles/Pipfile3.13.max b/tools/packages/pipfiles/Pipfile3.13.max new file mode 100644 index 0000000000..2fbf18ff20 --- /dev/null +++ b/tools/packages/pipfiles/Pipfile3.13.max @@ -0,0 +1,82 @@ +[[source]] +url = "https://pypi.org/simple" +verify_ssl = true +name = "pypi" + +[dev-packages] +freezegun = "*" +ipython = "*" +ipykernel = "*" +mkdocs = "*" +mkdocs-autorefs = "*" +mkdocs-include-markdown-plugin = "*" +mkdocs-macros-plugin = "*" +mkdocs-material = "==7.3.0" +mkdocs-material-extensions = "*" +mkdocstrings = "*" +mongomock = "*" +requests = "*" +ruff = "*" +pandas-stubs = "*" +playwright = "*" +pre-commit = "*" +pyopenssl = "*" +pytest = "==7.4.3" +pytest-cov = "*" +pytest-mock = "*" +pytest-playwright = "*" +pytest-timeout = "*" +python-dotenv = "*" +testbook = "*" +tox = "*" +twine = "*" +types-flask = "*" +types-Flask-Cors = "*" +types-Markdown = "*" +types-python-dateutil = "*" +types-pytz = "*" +types-toml = ">=0.10.0" +types-tzlocal = "*" + +[requires] +python_version = "3" + +[pipenv] +allow_prereleases = false + +[dev-packages.moto] +extras = [ "s3",] +version = "==4.2.13" + + +[packages] +"pyarrow" = {version="==18.1.0"} +"networkx" = {version="==3.4.2", markers="python_version>'3.8'"} +"openpyxl" = {version="==3.1.5"} +"pandas" = {version="==2.2.3", markers="python_version>'3.8'"} +"pymongo" = {version="==4.10.1", extras=["srv"]} +"sqlalchemy" = {version="==2.0.36"} +"toml" = {version="==0.10.2"} +"boto3" = {version="==1.35.71"} +"cookiecutter" = {version="==2.6.0"} +"flask" = {version="==3.1.0"} +"flask-cors" = {version="==5.0.0"} +"flask-socketio" = {version="==5.4.1"} +"markdown" = {version="==3.7"} +"python-dotenv" = {version="==1.0.1"} +"pytz" = {version="==2024.2"} +"tzlocal" = {version="==5.2"} +"gevent" = {version="==24.11.1"} +"gevent-websocket" = {version="==0.10.1"} +"kthread" = {version="==0.2.3"} +"gitignore-parser" = {version="==0.1.11"} +"simple-websocket" = {version="==1.1.0"} +"twisted" = {version="==24.10.0"} +"deepdiff" = {version="==8.0.1"} +"flask-restful" = {version="==0.3.10"} +"passlib" = {version="==1.7.4"} +"marshmallow" = {version="==3.23.1"} +"apispec" = {version="==6.7.1", extras=["yaml"]} +"apispec-webframeworks" = {version="==1.2.0"} +"watchdog" = {version="==6.0.0"} +"charset-normalizer" = {version="==3.4.0"}