From 1fef07cb24a40678f5e1eb37dae912dc1730ce7c Mon Sep 17 00:00:00 2001 From: Nicola Soranzo Date: Tue, 16 Apr 2024 17:12:08 +0100 Subject: [PATCH 1/3] Replace pytest-celery with ``celery.contrib.pytest`` plugin loading The new 1.0.0 version of pytest-celery will move towards a Docker-based approach for smoke and production-like testing, bringing in a number of dependencies that we don't currently need. Since the pre-1.0.0 version of pytest-celery was just a shim for ``celery.contrib.pytest``, we can simply load the latter for API, integration and Selenium tests. --- lib/galaxy_test/conftest.py | 2 ++ pyproject.toml | 1 - test/integration/conftest.py | 5 ++++- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/galaxy_test/conftest.py b/lib/galaxy_test/conftest.py index 64f69aee6f57..74dd381288af 100644 --- a/lib/galaxy_test/conftest.py +++ b/lib/galaxy_test/conftest.py @@ -11,6 +11,8 @@ from galaxy_test.api._framework import ApiTestCase from galaxy_test.driver.driver_util import GalaxyTestDriver +pytest_plugins = ("celery.contrib.pytest",) + @pytest.fixture(scope="session", autouse=True) def celery_includes(): diff --git a/pyproject.toml b/pyproject.toml index 155bcbc30cdf..2b24828dbe6a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -143,7 +143,6 @@ pkce = "*" playwright = "*" pytest = "*" pytest-asyncio = "*" -pytest-celery = "*" pytest-cov = "*" pytest-html = "*" pytest-httpserver = "*" diff --git a/test/integration/conftest.py b/test/integration/conftest.py index 3a0619d076cf..afe729466aaa 100644 --- a/test/integration/conftest.py +++ b/test/integration/conftest.py @@ -2,7 +2,10 @@ import pytest -from galaxy_test.conftest import pytest_configure # noqa: F401 +from galaxy_test.conftest import ( # noqa: F401 + pytest_configure, + pytest_plugins, +) @pytest.fixture(scope="session") From 2f741fa67367e3d59f40c040c7afada72e3ec636 Mon Sep 17 00:00:00 2001 From: galaxybot Date: Sat, 13 Apr 2024 03:12:48 +0000 Subject: [PATCH 2/3] Update Python dependencies --- lib/galaxy/dependencies/dev-requirements.txt | 38 +++++++----------- .../dependencies/pinned-lint-requirements.txt | 2 +- .../dependencies/pinned-requirements.txt | 40 +++++++++---------- .../pinned-typecheck-requirements.txt | 4 +- 4 files changed, 37 insertions(+), 47 deletions(-) diff --git a/lib/galaxy/dependencies/dev-requirements.txt b/lib/galaxy/dependencies/dev-requirements.txt index ac0461e41e4f..83e06b46e4a7 100644 --- a/lib/galaxy/dependencies/dev-requirements.txt +++ b/lib/galaxy/dependencies/dev-requirements.txt @@ -1,26 +1,20 @@ -aiohttp==3.9.3 ; python_version >= "3.8" and python_version < "3.13" +aiohttp==3.9.4 ; python_version >= "3.8" and python_version < "3.13" aiosignal==1.3.1 ; python_version >= "3.8" and python_version < "3.13" alabaster==0.7.13 ; python_version >= "3.8" and python_version < "3.13" -amqp==5.2.0 ; python_version >= "3.8" and python_version < "3.13" anyio==4.3.0 ; python_version >= "3.8" and python_version < "3.13" ase==3.22.1 ; python_version >= "3.8" and python_version < "3.13" async-timeout==4.0.3 ; python_version >= "3.8" and python_version < "3.11" attrs==23.2.0 ; python_version >= "3.8" and python_version < "3.13" axe-selenium-python==2.1.6 ; python_version >= "3.8" and python_version < "3.13" babel==2.14.0 ; python_version >= "3.8" and python_version < "3.13" +backports-tarfile==1.1.0 ; python_version >= "3.8" and python_version < "3.12" backports-zoneinfo==0.2.1 ; python_version >= "3.8" and python_version < "3.9" -backports-zoneinfo[tzdata]==0.2.1 ; python_version >= "3.8" and python_version < "3.9" -billiard==4.2.0 ; python_version >= "3.8" and python_version < "3.13" -black==24.3.0 ; python_version >= "3.8" and python_version < "3.13" +black==24.4.0 ; python_version >= "3.8" and python_version < "3.13" build==1.2.1 ; python_version >= "3.8" and python_version < "3.13" cachecontrol[filecache]==0.14.0 ; python_version >= "3.8" and python_version < "3.13" -celery==5.3.6 ; python_version >= "3.8" and python_version < "3.13" certifi==2024.2.2 ; python_version >= "3.8" and python_version < "3.13" cffi==1.16.0 ; python_version >= "3.8" and python_version < "3.13" charset-normalizer==3.3.2 ; python_version >= "3.8" and python_version < "3.13" -click-didyoumean==0.3.1 ; python_version >= "3.8" and python_version < "3.13" -click-plugins==1.1.1 ; python_version >= "3.8" and python_version < "3.13" -click-repl==0.3.0 ; python_version >= "3.8" and python_version < "3.13" click==8.1.7 ; python_version >= "3.8" and python_version < "3.13" codespell==2.2.6 ; python_version >= "3.8" and python_version < "3.13" colorama==0.4.6 ; python_version >= "3.8" and python_version < "3.13" and (sys_platform == "win32" or platform_system == "Windows" or os_name == "nt") @@ -29,23 +23,23 @@ coverage[toml]==7.4.4 ; python_version >= "3.8" and python_version < "3.13" cryptography==42.0.5 ; python_version >= "3.8" and python_version < "3.13" cwltest==2.5.20240304113812 ; python_version >= "3.8" and python_version < "3.13" cycler==0.12.1 ; python_version >= "3.8" and python_version < "3.13" -darker==2.1.0 ; python_version >= "3.8" and python_version < "3.13" -darkgraylib==1.1.1 ; python_version >= "3.8" and python_version < "3.13" +darker==2.1.1 ; python_version >= "3.8" and python_version < "3.13" +darkgraylib==1.2.0 ; python_version >= "3.8" and python_version < "3.13" defusedxml==0.7.1 ; python_version >= "3.8" and python_version < "3.13" deprecated==1.2.14 ; python_version >= "3.8" and python_version < "3.13" docutils==0.20.1 ; python_version >= "3.8" and python_version < "3.13" exceptiongroup==1.2.0 ; python_version >= "3.8" and python_version < "3.11" -filelock==3.13.3 ; python_version >= "3.8" and python_version < "3.13" +filelock==3.13.4 ; python_version >= "3.8" and python_version < "3.13" fluent-logger==0.11.0 ; python_version >= "3.8" and python_version < "3.13" fonttools==4.51.0 ; python_version >= "3.8" and python_version < "3.13" frozenlist==1.4.1 ; python_version >= "3.8" and python_version < "3.13" galaxy-release-util==0.1.7 ; python_version >= "3.8" and python_version < "3.13" -graylint==1.0.1 ; python_version >= "3.8" and python_version < "3.13" +graylint==1.1.1 ; python_version >= "3.8" and python_version < "3.13" greenlet==3.0.3 ; python_version >= "3.8" and python_version < "3.13" h11==0.14.0 ; python_version >= "3.8" and python_version < "3.13" httpcore==1.0.5 ; python_version >= "3.8" and python_version < "3.13" httpx==0.27.0 ; python_version >= "3.8" and python_version < "3.13" -idna==3.6 ; python_version >= "3.8" and python_version < "3.13" +idna==3.7 ; python_version >= "3.8" and python_version < "3.13" imagesize==1.4.1 ; python_version >= "3.8" and python_version < "3.13" importlib-metadata==7.1.0 ; python_version >= "3.8" and python_version < "3.13" importlib-resources==6.4.0 ; python_version >= "3.8" and python_version < "3.10" @@ -53,14 +47,13 @@ iniconfig==2.0.0 ; python_version >= "3.8" and python_version < "3.13" isodate==0.6.1 ; python_version >= "3.8" and python_version < "3.13" isort==5.13.2 ; python_version >= "3.8" and python_version < "3.13" jaraco-classes==3.4.0 ; python_version >= "3.8" and python_version < "3.13" -jaraco-context==5.1.0 ; python_version >= "3.8" and python_version < "3.13" +jaraco-context==5.3.0 ; python_version >= "3.8" and python_version < "3.13" jaraco-functools==4.0.0 ; python_version >= "3.8" and python_version < "3.13" jeepney==0.8.0 ; python_version >= "3.8" and python_version < "3.13" and sys_platform == "linux" jinja2==3.1.3 ; python_version >= "3.8" and python_version < "3.13" junit-xml==1.9 ; python_version >= "3.8" and python_version < "3.13" keyring==25.1.0 ; python_version >= "3.8" and python_version < "3.13" kiwisolver==1.4.5 ; python_version >= "3.8" and python_version < "3.13" -kombu==5.3.6 ; python_version >= "3.8" and python_version < "3.13" lxml==4.9.4 ; python_version >= "3.8" and python_version < "3.13" markdown-it-py==3.0.0 ; python_version >= "3.8" and python_version < "3.13" markdown-it-reporter==0.0.2 ; python_version >= "3.8" and python_version < "3.13" @@ -86,15 +79,14 @@ pillow==10.3.0 ; python_version >= "3.8" and python_version < "3.13" pkce==1.0.3 ; python_version >= "3.8" and python_version < "3.13" pkginfo==1.10.0 ; python_version >= "3.8" and python_version < "3.13" platformdirs==4.2.0 ; python_version >= "3.8" and python_version < "3.13" -playwright==1.42.0 ; python_version >= "3.8" and python_version < "3.13" +playwright==1.43.0 ; python_version >= "3.8" and python_version < "3.13" pluggy==1.4.0 ; python_version >= "3.8" and python_version < "3.13" port-for==0.7.2 ; python_version >= "3.8" and python_version < "3.13" prettytable==3.10.0 ; python_version >= "3.8" and python_version < "3.13" -prompt-toolkit==3.0.43 ; python_version >= "3.8" and python_version < "3.13" psutil==5.9.8 ; python_version >= "3.8" and python_version < "3.13" and sys_platform != "cygwin" psycopg==3.1.18 ; python_version >= "3.8" and python_version < "3.13" pycparser==2.22 ; python_version >= "3.8" and python_version < "3.13" -pyee==11.0.1 ; python_version >= "3.8" and python_version < "3.13" +pyee==11.1.0 ; python_version >= "3.8" and python_version < "3.13" pygithub==2.3.0 ; python_version >= "3.8" and python_version < "3.13" pygments==2.17.2 ; python_version >= "3.8" and python_version < "3.13" pyjwt[crypto]==2.8.0 ; python_version >= "3.8" and python_version < "3.13" @@ -104,7 +96,6 @@ pyproject-hooks==1.0.0 ; python_version >= "3.8" and python_version < "3.13" pysocks==1.7.1 ; python_version >= "3.8" and python_version < "3.13" pytest-asyncio==0.23.6 ; python_version >= "3.8" and python_version < "3.13" pytest-base-url==2.1.0 ; python_version >= "3.8" and python_version < "3.13" -pytest-celery==0.0.0 ; python_version >= "3.8" and python_version < "3.13" pytest-cov==5.0.0 ; python_version >= "3.8" and python_version < "3.13" pytest-html==4.1.1 ; python_version >= "3.8" and python_version < "3.13" pytest-httpserver==1.0.10 ; python_version >= "3.8" and python_version < "3.13" @@ -130,13 +121,13 @@ rfc3986==2.0.0 ; python_version >= "3.8" and python_version < "3.13" rich==13.7.1 ; python_version >= "3.8" and python_version < "3.13" ruamel-yaml-clib==0.2.8 ; platform_python_implementation == "CPython" and python_version < "3.13" and python_version >= "3.8" ruamel-yaml==0.18.6 ; python_version >= "3.8" and python_version < "3.13" -schema-salad==8.5.20240311110950 ; python_version >= "3.8" and python_version < "3.13" +schema-salad==8.5.20240410123758 ; python_version >= "3.8" and python_version < "3.13" scipy==1.10.1 ; python_version >= "3.8" and python_version < "3.9" scipy==1.13.0 ; python_version >= "3.9" and python_version < "3.13" secretstorage==3.3.3 ; python_version >= "3.8" and python_version < "3.13" and sys_platform == "linux" selenium==4.19.0 ; python_version >= "3.8" and python_version < "3.13" seletools==1.4.0 ; python_version >= "3.8" and python_version < "3.13" -setuptools==69.2.0 ; python_version >= "3.8" and python_version < "3.13" +setuptools==69.5.1 ; python_version >= "3.8" and python_version < "3.13" six==1.16.0 ; python_version >= "3.8" and python_version < "3.13" sniffio==1.3.1 ; python_version >= "3.8" and python_version < "3.13" snowballstemmer==2.2.0 ; python_version >= "3.8" and python_version < "3.13" @@ -162,10 +153,9 @@ tuspy==1.0.3 ; python_version >= "3.8" and python_version < "3.13" twill==3.2.3 ; python_version >= "3.8" and python_version < "3.13" twine==5.0.0 ; python_version >= "3.8" and python_version < "3.13" typing-extensions==4.11.0 ; python_version >= "3.8" and python_version < "3.13" -tzdata==2024.1 ; python_version >= "3.8" and python_version < "3.13" +tzdata==2024.1 ; python_version >= "3.8" and python_version < "3.13" and sys_platform == "win32" urllib3==1.26.18 ; python_version >= "3.8" and python_version < "3.13" urllib3[socks]==1.26.18 ; python_version >= "3.8" and python_version < "3.13" -vine==5.1.0 ; python_version >= "3.8" and python_version < "3.13" watchdog==4.0.0 ; python_version >= "3.8" and python_version < "3.13" wcwidth==0.2.13 ; python_version >= "3.8" and python_version < "3.13" werkzeug==3.0.2 ; python_version >= "3.8" and python_version < "3.13" diff --git a/lib/galaxy/dependencies/pinned-lint-requirements.txt b/lib/galaxy/dependencies/pinned-lint-requirements.txt index d45d101010d4..730194ff2389 100644 --- a/lib/galaxy/dependencies/pinned-lint-requirements.txt +++ b/lib/galaxy/dependencies/pinned-lint-requirements.txt @@ -4,4 +4,4 @@ flake8-bugbear==24.2.6 mccabe==0.7.0 pycodestyle==2.11.1 pyflakes==3.2.0 -ruff==0.3.5 +ruff==0.3.7 diff --git a/lib/galaxy/dependencies/pinned-requirements.txt b/lib/galaxy/dependencies/pinned-requirements.txt index 5181edef346e..8bc4c310b5d9 100644 --- a/lib/galaxy/dependencies/pinned-requirements.txt +++ b/lib/galaxy/dependencies/pinned-requirements.txt @@ -2,10 +2,10 @@ a2wsgi==1.10.4 ; python_version >= "3.8" and python_version < "3.13" adal==1.2.7 ; python_version >= "3.8" and python_version < "3.13" -aiobotocore==2.12.2 ; python_version >= "3.8" and python_version < "3.13" +aiobotocore==2.12.3 ; python_version >= "3.8" and python_version < "3.13" aiodataloader==0.4.0 ; python_version >= "3.8" and python_version < "3.13" aiofiles==23.2.1 ; python_version >= "3.8" and python_version < "3.13" -aiohttp==3.9.3 ; python_version >= "3.8" and python_version < "3.13" +aiohttp==3.9.4 ; python_version >= "3.8" and python_version < "3.13" aioitertools==0.11.0 ; python_version >= "3.8" and python_version < "3.13" aiosignal==1.3.1 ; python_version >= "3.8" and python_version < "3.13" alembic==1.13.1 ; python_version >= "3.8" and python_version < "3.13" @@ -16,7 +16,7 @@ anyio==4.3.0 ; python_version >= "3.8" and python_version < "3.13" apispec==6.6.0 ; python_version >= "3.8" and python_version < "3.13" appdirs==1.4.4 ; python_version >= "3.8" and python_version < "3.13" arcp==0.2.1 ; python_version >= "3.8" and python_version < "3.13" -argcomplete==3.2.3 ; python_version >= "3.8" and python_version < "3.13" +argcomplete==3.3.0 ; python_version >= "3.8" and python_version < "3.13" async-timeout==4.0.3 ; python_version >= "3.8" and python_version < "3.11" attmap==0.13.2 ; python_version >= "3.8" and python_version < "3.13" attrs==23.2.0 ; python_version >= "3.8" and python_version < "3.13" @@ -27,13 +27,13 @@ bagit-profile==1.3.1 ; python_version >= "3.8" and python_version < "3.13" bagit==1.8.1 ; python_version >= "3.8" and python_version < "3.13" bcrypt==4.1.2 ; python_version >= "3.8" and python_version < "3.13" bdbag==1.7.2 ; python_version >= "3.8" and python_version < "3.13" -beaker==1.12.1 ; python_version >= "3.8" and python_version < "3.13" +beaker==1.13.0 ; python_version >= "3.8" and python_version < "3.13" billiard==4.2.0 ; python_version >= "3.8" and python_version < "3.13" bioblend==1.2.0 ; python_version >= "3.8" and python_version < "3.13" bleach==6.1.0 ; python_version >= "3.8" and python_version < "3.13" boltons==24.0.0 ; python_version >= "3.8" and python_version < "3.13" boto==2.49.0 ; python_version >= "3.8" and python_version < "3.13" -botocore==1.34.51 ; python_version >= "3.8" and python_version < "3.13" +botocore==1.34.69 ; python_version >= "3.8" and python_version < "3.13" bx-python==0.11.0 ; python_version >= "3.8" and python_version < "3.13" cachecontrol[filecache]==0.14.0 ; python_version >= "3.8" and python_version < "3.13" celery==5.3.6 ; python_version >= "3.8" and python_version < "3.13" @@ -53,8 +53,8 @@ coloredlogs==15.0.1 ; python_version >= "3.8" and python_version < "3.13" conda-package-streaming==0.9.0 ; python_version >= "3.8" and python_version < "3.13" cryptography==42.0.5 ; python_version >= "3.8" and python_version < "3.13" cwl-upgrader==1.2.11 ; python_version >= "3.8" and python_version < "3.13" -cwl-utils==0.32 ; python_version >= "3.8" and python_version < "3.13" -cwltool==3.1.20240112164112 ; python_version >= "3.8" and python_version < "3.13" +cwl-utils==0.33 ; python_version >= "3.8" and python_version < "3.13" +cwltool==3.1.20240404144621 ; python_version >= "3.8" and python_version < "3.13" decorator==5.1.1 ; python_version >= "3.8" and python_version < "3.13" defusedxml==0.7.1 ; python_version >= "3.8" and python_version < "3.13" deprecation==2.1.0 ; python_version >= "3.8" and python_version < "3.13" @@ -67,7 +67,7 @@ edam-ontology==1.25.2 ; python_version >= "3.8" and python_version < "3.13" email-validator==2.1.1 ; python_version >= "3.8" and python_version < "3.13" exceptiongroup==1.2.0 ; python_version >= "3.8" and python_version < "3.11" fastapi==0.110.1 ; python_version >= "3.8" and python_version < "3.13" -filelock==3.13.3 ; python_version >= "3.8" and python_version < "3.13" +filelock==3.13.4 ; python_version >= "3.8" and python_version < "3.13" frozenlist==1.4.1 ; python_version >= "3.8" and python_version < "3.13" fs==2.4.16 ; python_version >= "3.8" and python_version < "3.13" fsspec==2023.12.2 ; python_version >= "3.8" and python_version < "3.13" @@ -84,9 +84,9 @@ gunicorn==21.2.0 ; python_version >= "3.8" and python_version < "3.13" gxformat2==0.18.0 ; python_version >= "3.8" and python_version < "3.13" h11==0.14.0 ; python_version >= "3.8" and python_version < "3.13" h5grove==2.1.0 ; python_version >= "3.8" and python_version < "3.13" -h5py==3.10.0 ; python_version >= "3.8" and python_version < "3.13" +h5py==3.11.0 ; python_version >= "3.8" and python_version < "3.13" humanfriendly==10.0 ; python_version >= "3.8" and python_version < "3.13" -idna==3.6 ; python_version >= "3.8" and python_version < "3.13" +idna==3.7 ; python_version >= "3.8" and python_version < "3.13" importlib-metadata==7.1.0 ; python_version >= "3.8" and python_version < "3.13" importlib-resources==6.4.0 ; python_version >= "3.8" and python_version < "3.9" isa-rwval==0.10.10 ; python_version >= "3.8" and python_version < "3.13" @@ -97,10 +97,10 @@ jmespath==1.0.1 ; python_version >= "3.8" and python_version < "3.13" jsonref==1.1.0 ; python_version >= "3.8" and python_version < "3.13" jsonschema-specifications==2023.12.1 ; python_version >= "3.8" and python_version < "3.13" jsonschema==4.21.1 ; python_version >= "3.8" and python_version < "3.13" -kombu==5.3.6 ; python_version >= "3.8" and python_version < "3.13" +kombu==5.3.7 ; python_version >= "3.8" and python_version < "3.13" lagom==2.6.0 ; python_version >= "3.8" and python_version < "3.13" lxml==4.9.4 ; python_version >= "3.8" and python_version < "3.13" -mako==1.3.2 ; python_version >= "3.8" and python_version < "3.13" +mako==1.3.3 ; python_version >= "3.8" and python_version < "3.13" markdown-it-py==3.0.0 ; python_version >= "3.8" and python_version < "3.13" markdown==3.6 ; python_version >= "3.8" and python_version < "3.13" markupsafe==2.1.5 ; python_version >= "3.8" and python_version < "3.13" @@ -117,7 +117,7 @@ nodeenv==1.8.0 ; python_version >= "3.8" and python_version < "3.13" numpy==1.24.4 ; python_version >= "3.8" and python_version < "3.9" numpy==1.26.4 ; python_version >= "3.9" and python_version < "3.13" oauthlib==3.2.2 ; python_version >= "3.8" and python_version < "3.13" -orjson==3.10.0 ; python_version >= "3.8" and python_version < "3.13" +orjson==3.10.1 ; python_version >= "3.8" and python_version < "3.13" oyaml==1.0 ; python_version >= "3.8" and python_version < "3.13" packaging==24.0 ; python_version >= "3.8" and python_version < "3.13" paramiko==3.4.0 ; python_version >= "3.8" and python_version < "3.13" @@ -134,10 +134,10 @@ psutil==5.9.8 ; python_version >= "3.8" and python_version < "3.13" pulsar-galaxy-lib==0.15.6 ; python_version >= "3.8" and python_version < "3.13" pycparser==2.22 ; python_version >= "3.8" and python_version < "3.13" pycryptodome==3.20.0 ; python_version >= "3.8" and python_version < "3.13" -pydantic-core==2.14.6 ; python_version >= "3.8" and python_version < "3.13" +pydantic-core==2.18.1 ; python_version >= "3.8" and python_version < "3.13" pydantic-tes==0.1.5 ; python_version >= "3.8" and python_version < "3.13" -pydantic==2.5.3 ; python_version >= "3.8" and python_version < "3.13" -pydantic[email]==2.5.3 ; python_version >= "3.8" and python_version < "3.13" +pydantic==2.7.0 ; python_version >= "3.8" and python_version < "3.13" +pydantic[email]==2.7.0 ; python_version >= "3.8" and python_version < "3.13" pydot==2.0.0 ; python_version >= "3.8" and python_version < "3.13" pyeventsystem==0.1.0 ; python_version >= "3.8" and python_version < "3.13" pyfaidx==0.8.1.1 ; python_version >= "3.8" and python_version < "3.13" @@ -156,7 +156,7 @@ python-multipart==0.0.9 ; python_version >= "3.8" and python_version < "3.13" python3-openid==3.2.0 ; python_version >= "3.8" and python_version < "3.13" pytz==2024.1 ; python_version >= "3.8" and python_version < "3.13" pyyaml==6.0.1 ; python_version >= "3.8" and python_version < "3.13" -pyzmq==25.1.2 ; python_version >= "3.8" and python_version < "3.13" +pyzmq==26.0.0 ; python_version >= "3.8" and python_version < "3.13" rdflib==6.3.2 ; python_version >= "3.8" and python_version < "3.13" referencing==0.34.0 ; python_version >= "3.8" and python_version < "3.13" refgenconf==0.12.2 ; python_version >= "3.8" and python_version < "3.13" @@ -173,9 +173,9 @@ rpds-py==0.18.0 ; python_version >= "3.8" and python_version < "3.13" ruamel-yaml-clib==0.2.8 ; platform_python_implementation == "CPython" and python_version < "3.13" and python_version >= "3.8" ruamel-yaml==0.18.6 ; python_version >= "3.8" and python_version < "3.13" s3fs==2023.12.2 ; python_version >= "3.8" and python_version < "3.13" -schema-salad==8.5.20240311110950 ; python_version >= "3.8" and python_version < "3.13" +schema-salad==8.5.20240410123758 ; python_version >= "3.8" and python_version < "3.13" setuptools-scm==5.0.2 ; python_version >= "3.8" and python_version < "3.13" -setuptools==69.2.0 ; python_version >= "3.8" and python_version < "3.13" +setuptools==69.5.1 ; python_version >= "3.8" and python_version < "3.13" shellescape==3.8.1 ; python_version >= "3.8" and python_version < "3.13" six==1.16.0 ; python_version >= "3.8" and python_version < "3.13" sniffio==1.3.1 ; python_version >= "3.8" and python_version < "3.13" @@ -184,7 +184,7 @@ sortedcontainers==2.4.0 ; python_version >= "3.8" and python_version < "3.13" spython==0.3.13 ; python_version >= "3.8" and python_version < "3.13" sqlalchemy==2.0.29 ; python_version >= "3.8" and python_version < "3.13" sqlitedict==2.1.0 ; python_version >= "3.8" and python_version < "3.13" -sqlparse==0.4.4 ; python_version >= "3.8" and python_version < "3.13" +sqlparse==0.5.0 ; python_version >= "3.8" and python_version < "3.13" starlette-context==0.3.6 ; python_version >= "3.8" and python_version < "3.13" starlette-graphene3==0.6.0 ; python_version >= "3.8" and python_version < "3.13" starlette==0.37.2 ; python_version >= "3.8" and python_version < "3.13" diff --git a/lib/galaxy/dependencies/pinned-typecheck-requirements.txt b/lib/galaxy/dependencies/pinned-typecheck-requirements.txt index a39a18f06f07..191ee946583f 100644 --- a/lib/galaxy/dependencies/pinned-typecheck-requirements.txt +++ b/lib/galaxy/dependencies/pinned-typecheck-requirements.txt @@ -5,8 +5,8 @@ lxml-stubs==0.5.1 ; python_version >= "3.8" and python_version < "3.13" mypy-extensions==1.0.0 ; python_version >= "3.8" and python_version < "3.13" mypy==1.9.0 ; python_version >= "3.8" and python_version < "3.13" pycparser==2.22 ; python_version >= "3.8" and python_version < "3.13" and platform_python_implementation != "PyPy" -pydantic-core==2.14.6 ; python_version >= "3.8" and python_version < "3.13" -pydantic==2.5.3 ; python_version >= "3.8" and python_version < "3.13" +pydantic-core==2.18.1 ; python_version >= "3.8" and python_version < "3.13" +pydantic==2.7.0 ; python_version >= "3.8" and python_version < "3.13" tomli==2.0.1 ; python_version >= "3.8" and python_version < "3.11" types-bleach==6.1.0.20240331 ; python_version >= "3.8" and python_version < "3.13" types-boto==2.49.18.20240205 ; python_version >= "3.8" and python_version < "3.13" From edf06c5e3564c71ea96e78dcde8d0cfc962d784b Mon Sep 17 00:00:00 2001 From: Nicola Soranzo Date: Tue, 16 Apr 2024 12:51:30 +0100 Subject: [PATCH 3/3] Rebuild client API schema for pydantic 2.7.0 --- client/src/api/schema/schema.ts | 125 ++++++++++++++++++++++++++++++++ pyproject.toml | 2 +- 2 files changed, 126 insertions(+), 1 deletion(-) diff --git a/client/src/api/schema/schema.ts b/client/src/api/schema/schema.ts index 8202790f40be..33daf886711e 100644 --- a/client/src/api/schema/schema.ts +++ b/client/src/api/schema/schema.ts @@ -2131,6 +2131,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "add_input"; /** Collection Type */ @@ -2166,6 +2167,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "add_step"; /** @@ -2273,6 +2275,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "History"; /** @@ -2389,6 +2392,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "History"; /** @@ -2553,6 +2557,7 @@ export interface components { * Category * @default broadcast * @constant + * @enum {string} */ category?: "broadcast"; /** @@ -2575,6 +2580,7 @@ export interface components { * Category * @default broadcast * @constant + * @enum {string} */ category?: "broadcast"; /** @@ -2617,6 +2623,7 @@ export interface components { * Category * @default broadcast * @constant + * @enum {string} */ category?: "broadcast"; content: components["schemas"]["BroadcastNotificationContent"]; @@ -2665,6 +2672,7 @@ export interface components { /** * Browsable * @constant + * @enum {boolean} */ browsable: true; /** @@ -2722,6 +2730,7 @@ export interface components { /** * Type * @constant + * @enum {string} */ type: "change_datatype"; }; @@ -2732,6 +2741,7 @@ export interface components { /** * Type * @constant + * @enum {string} */ type: "change_dbkey"; }; @@ -2945,6 +2955,7 @@ export interface components { /** * Src * @constant + * @enum {string} */ src: "composite"; /** Tags */ @@ -3045,6 +3056,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "connect"; /** Input */ @@ -3438,6 +3450,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "Quota"; /** @@ -3504,6 +3517,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "User"; /** @@ -3777,6 +3791,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "DatasetCollectionElement"; /** @@ -3826,6 +3841,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "DatasetCollection"; /** @@ -3931,6 +3947,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "HistoryDatasetCollectionAssociation"; tags: components["schemas"]["TagCollection"]; @@ -3993,6 +4010,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "DatasetHash"; }; @@ -4332,6 +4350,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "DefaultQuotaAssociation"; /** @@ -4559,6 +4578,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "disconnect"; /** Input */ @@ -4745,6 +4765,7 @@ export interface components { * Source * @description The source of this dataset, which in the case of the model can only be `hdca`. * @constant + * @enum {string} */ src: "hdca"; }; @@ -4831,6 +4852,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "Job"; /** @@ -5029,6 +5051,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "extract_input"; /** Input */ @@ -5042,6 +5065,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "extract_untyped_parameter"; /** Label */ @@ -5061,6 +5085,7 @@ export interface components { /** * FavoriteObjectType * @constant + * @enum {string} */ FavoriteObjectType: "tools"; /** FavoriteObjectsSummary */ @@ -5133,6 +5158,7 @@ export interface components { /** * Src * @constant + * @enum {string} */ src: "files"; /** Tags */ @@ -5148,6 +5174,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "fill_defaults"; }; @@ -5201,6 +5228,7 @@ export interface components { /** * Type * @constant + * @enum {string} */ type: "file"; /** @@ -5266,6 +5294,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "fill_step_defaults"; /** Step */ @@ -5301,6 +5330,7 @@ export interface components { /** * Type * @constant + * @enum {string} */ type: "folder"; /** @@ -5357,6 +5387,7 @@ export interface components { /** * Src * @constant + * @enum {string} */ src: "ftp_import"; /** Tags */ @@ -5386,6 +5417,7 @@ export interface components { /** * Src * @constant + * @enum {string} */ src: "ftp_import"; /** Tags */ @@ -5429,6 +5461,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "Group"; /** @@ -5448,6 +5481,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "GroupQuotaAssociation"; }; @@ -5465,6 +5499,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "Group"; /** name of the group */ @@ -5788,6 +5823,7 @@ export interface components { * @description TODO * @default file * @constant + * @enum {string} */ api_type?: "file"; /** Copied From Ldda Id */ @@ -5889,6 +5925,7 @@ export interface components { * History Content Type * @description This is always `dataset` for datasets. * @constant + * @enum {string} */ history_content_type: "dataset"; /** @@ -5925,6 +5962,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "HistoryDatasetAssociation"; /** @@ -5973,6 +6011,7 @@ export interface components { * @description This is always `file` for datasets. * @default file * @constant + * @enum {string} */ type?: "file"; /** @@ -6040,6 +6079,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "HistoryDatasetAssociation"; /** @@ -6094,6 +6134,7 @@ export interface components { * History Content Type * @description This is always `dataset` for datasets. * @constant + * @enum {string} */ history_content_type: "dataset"; /** @@ -6204,6 +6245,7 @@ export interface components { * History Content Type * @description This is always `dataset_collection` for dataset collections. * @constant + * @enum {string} */ history_content_type: "dataset_collection"; /** @@ -6240,6 +6282,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "HistoryDatasetCollectionAssociation"; /** @@ -6268,6 +6311,7 @@ export interface components { * @description This is always `collection` for dataset collections. * @default collection * @constant + * @enum {string} */ type?: "collection"; /** @@ -6336,6 +6380,7 @@ export interface components { * History Content Type * @description This is always `dataset_collection` for dataset collections. * @constant + * @enum {string} */ history_content_type: "dataset_collection"; /** @@ -6367,6 +6412,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "HistoryDatasetCollectionAssociation"; /** @@ -6390,6 +6436,7 @@ export interface components { * @description This is always `collection` for dataset collections. * @default collection * @constant + * @enum {string} */ type?: "collection"; /** @@ -6526,6 +6573,7 @@ export interface components { /** * Type * @constant + * @enum {string} */ type: "hdas"; }; @@ -6589,6 +6637,7 @@ export interface components { /** * Type * @constant + * @enum {string} */ type: "hdca"; }; @@ -7021,6 +7070,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "History"; /** @@ -7135,6 +7185,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "History"; /** @@ -7203,6 +7254,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model: "ImplicitCollectionJobs"; /** @@ -7246,6 +7298,7 @@ export interface components { * src * @description Indicates that the tool data should be resolved by a URI. * @constant + * @enum {string} */ src: "uri"; /** @@ -7318,6 +7371,7 @@ export interface components { /** * Type * @constant + * @enum {string} */ type: "data_collection_input"; /** When */ @@ -7360,6 +7414,7 @@ export interface components { /** * Type * @constant + * @enum {string} */ type: "data_input"; /** When */ @@ -7402,6 +7457,7 @@ export interface components { /** * Type * @constant + * @enum {string} */ type: "parameter_input"; /** When */ @@ -7499,6 +7555,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "ToolShedRepository"; /** @@ -7534,6 +7591,7 @@ export interface components { /** * Reason * @constant + * @enum {string} */ reason: "history_deleted"; }; @@ -7542,6 +7600,7 @@ export interface components { /** * Reason * @constant + * @enum {string} */ reason: "cancelled_on_review"; /** @@ -7555,6 +7614,7 @@ export interface components { /** * Reason * @constant + * @enum {string} */ reason: "user_request"; }; @@ -7568,6 +7628,7 @@ export interface components { /** * Reason * @constant + * @enum {string} */ reason: "workflow_output_not_found"; /** Workflow step id of step that caused a warning. */ @@ -7589,6 +7650,7 @@ export interface components { /** * Reason * @constant + * @enum {string} */ reason: "collection_failed"; /** @@ -7613,6 +7675,7 @@ export interface components { /** * Reason * @constant + * @enum {string} */ reason: "dataset_failed"; /** @@ -7631,6 +7694,7 @@ export interface components { /** * Reason * @constant + * @enum {string} */ reason: "expression_evaluation_failed"; /** @@ -7655,6 +7719,7 @@ export interface components { /** * Reason * @constant + * @enum {string} */ reason: "job_failed"; /** @@ -7675,6 +7740,7 @@ export interface components { /** * Reason * @constant + * @enum {string} */ reason: "output_not_found"; /** @@ -7693,6 +7759,7 @@ export interface components { /** * Reason * @constant + * @enum {string} */ reason: "when_not_boolean"; /** @@ -7755,6 +7822,7 @@ export interface components { /** * Model * @constant + * @enum {string} */ model: "WorkflowInvocation"; /** @@ -7781,6 +7849,7 @@ export interface components { * Source * @description Source model of the output dataset. * @constant + * @enum {string} */ src: "hda"; /** @@ -7801,6 +7870,7 @@ export interface components { * Source * @description Source model of the output dataset collection. * @constant + * @enum {string} */ src: "hdca"; /** @@ -7875,6 +7945,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "Report"; /** @@ -7882,6 +7953,7 @@ export interface components { * @description Format of the invocation report. * @default markdown * @constant + * @enum {string} */ render_format?: "markdown"; /** @@ -7942,6 +8014,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "WorkflowInvocationStep"; /** @@ -8007,6 +8080,7 @@ export interface components { * @description The source model of the output. * @default hdca * @constant + * @enum {string} */ src?: "hdca"; }; @@ -8021,6 +8095,7 @@ export interface components { /** * Model * @constant + * @enum {string} */ model: "ImplicitCollectionJobs"; /** @@ -8047,6 +8122,7 @@ export interface components { /** * Model * @constant + * @enum {string} */ model: "Job"; /** @@ -8073,6 +8149,7 @@ export interface components { /** * Model * @constant + * @enum {string} */ model: "WorkflowInvocationStep"; /** @@ -8101,6 +8178,7 @@ export interface components { * @description The source model of the output. * @default hda * @constant + * @enum {string} */ src?: "hda"; /** @@ -8124,6 +8202,7 @@ export interface components { /** * Reason * @constant + * @enum {string} */ reason: "unexpected_failure"; /** @@ -8358,6 +8437,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "Job"; /** @@ -8521,6 +8601,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "Job"; /** @@ -8719,6 +8800,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model: "Job"; /** @@ -8790,6 +8872,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "Job"; /** @@ -8923,6 +9006,7 @@ export interface components { /** * Type * @constant + * @enum {string} */ type: "library"; }; @@ -8963,6 +9047,7 @@ export interface components { /** * Type * @constant + * @enum {string} */ type: "library_folder"; }; @@ -9006,6 +9091,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "LibraryFolder"; /** @@ -9054,6 +9140,7 @@ export interface components { /** * LibraryFolderPermissionAction * @constant + * @enum {string} */ LibraryFolderPermissionAction: "set_permissions"; /** LibraryFolderPermissionsPayload */ @@ -9111,6 +9198,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "Library"; /** @@ -9221,6 +9309,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "Library"; /** @@ -9348,6 +9437,7 @@ export interface components { * * The user will always receive notifications from these categories. * @constant + * @enum {string} */ MandatoryNotificationCategory: "broadcast"; /** MaterializeDatasetInstanceAPIRequest */ @@ -9373,6 +9463,7 @@ export interface components { * Category * @default message * @constant + * @enum {string} */ category?: "message"; /** @@ -9500,6 +9591,7 @@ export interface components { * Category * @default new_shared_item * @constant + * @enum {string} */ category?: "new_shared_item"; /** @@ -9918,6 +10010,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "Page"; /** @@ -9993,6 +10086,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "Page"; /** @@ -10083,6 +10177,7 @@ export interface components { /** * Src * @constant + * @enum {string} */ src: "pasted"; /** Tags */ @@ -10142,6 +10237,7 @@ export interface components { /** * Src * @constant + * @enum {string} */ src: "path"; /** Tags */ @@ -10189,6 +10285,7 @@ export interface components { /** * Type * @constant + * @enum {string} */ type: "pause"; /** When */ @@ -10359,6 +10456,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "Quota"; /** @@ -10411,6 +10509,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "Quota"; /** @@ -10589,6 +10688,7 @@ export interface components { /** * Class * @constant + * @enum {string} */ class: "Directory"; /** @@ -10612,6 +10712,7 @@ export interface components { /** * Class * @constant + * @enum {string} */ class: "File"; /** @@ -10663,6 +10764,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "remove_unlabeled_workflow_outputs"; }; @@ -10749,6 +10851,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "Role"; /** @@ -10840,6 +10943,7 @@ export interface components { /** * Src * @constant + * @enum {string} */ src: "server_dir"; /** Tags */ @@ -11271,6 +11375,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "Job"; /** @@ -11501,6 +11606,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "StoredWorkflow"; /** @@ -11611,6 +11717,7 @@ export interface components { /** * Type * @constant + * @enum {string} */ type: "subworkflow"; /** When */ @@ -11802,6 +11909,7 @@ export interface components { /** * Type * @constant + * @enum {string} */ type: "tool"; /** When */ @@ -11924,6 +12032,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "update_annotation"; /** Annotation */ @@ -11962,6 +12071,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "update_creator"; /** Creator */ @@ -12060,6 +12170,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "update_license"; /** License */ @@ -12070,6 +12181,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "update_name"; /** Name */ @@ -12088,6 +12200,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "update_output_label"; /** Output */ @@ -12141,6 +12254,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "update_report"; report: components["schemas"]["Report"]; @@ -12150,6 +12264,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "update_step_label"; /** @@ -12168,6 +12283,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "update_step_position"; position_shift: components["schemas"]["Position"]; @@ -12195,6 +12311,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "upgrade_all_steps"; }; @@ -12203,6 +12320,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "upgrade_subworkflow"; /** Content Id */ @@ -12218,6 +12336,7 @@ export interface components { /** * Action Type * @constant + * @enum {string} */ action_type: "upgrade_tool"; /** @@ -12273,6 +12392,7 @@ export interface components { /** * Src * @constant + * @enum {string} */ src: "url"; /** Tags */ @@ -12368,6 +12488,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "User"; /** @@ -12507,6 +12628,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "UserQuotaAssociation"; /** @@ -12651,6 +12773,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "WorkflowInvocation"; /** @@ -12731,6 +12854,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model_class: "WorkflowInvocation"; /** @@ -12795,6 +12919,7 @@ export interface components { * Model class * @description The name of the database model class. * @constant + * @enum {string} */ model: "WorkflowInvocation"; /** diff --git a/pyproject.toml b/pyproject.toml index 2b24828dbe6a..2fdd4b314297 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -89,7 +89,7 @@ pillow = "*" psutil = "*" pulsar-galaxy-lib = ">=0.15.0.dev0" pycryptodome = "*" -pydantic = {version = ">=2, !=2.6.0, !=2.6.1, !=2.6.2, !=2.6.3, !=2.6.4", extras = ["email"]} # https://github.com/pydantic/pydantic/issues/8760 +pydantic = {version = ">=2.7.0", extras = ["email"]} # https://github.com/pydantic/pydantic/issues/8760 PyJWT = "*" pykwalify = "*" pylibmagic = "*"