diff --git a/lib/galaxy/dependencies/dev-requirements.txt b/lib/galaxy/dependencies/dev-requirements.txt index 90869973f737..fc27cc8459e5 100644 --- a/lib/galaxy/dependencies/dev-requirements.txt +++ b/lib/galaxy/dependencies/dev-requirements.txt @@ -11,7 +11,7 @@ babel==2.14.0 ; python_version >= "3.8" and python_version < "3.13" 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==23.12.1 ; python_version >= "3.8" and python_version < "3.13" +black==24.1.0 ; python_version >= "3.8" and python_version < "3.13" build==1.0.3 ; python_version >= "3.8" and python_version < "3.13" cachecontrol[filecache]==0.13.1 ; python_version >= "3.8" and python_version < "3.13" celery==5.3.6 ; python_version >= "3.8" and python_version < "3.13" @@ -25,8 +25,8 @@ 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") contourpy==1.1.1 ; python_version >= "3.8" and python_version < "3.13" -coverage[toml]==7.4.0 ; python_version >= "3.8" and python_version < "3.13" -cryptography==41.0.7 ; python_version >= "3.8" and python_version < "3.13" +coverage[toml]==7.4.1 ; python_version >= "3.8" and python_version < "3.13" +cryptography==42.0.1 ; python_version >= "3.8" and python_version < "3.13" cwltest==2.4.20231222081524 ; python_version >= "3.8" and python_version < "3.13" cycler==0.12.1 ; python_version >= "3.8" and python_version < "3.13" darker==1.7.2 ; python_version >= "3.8" and python_version < "3.13" @@ -36,10 +36,10 @@ docutils==0.18.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.1 ; python_version >= "3.8" and python_version < "3.13" fluent-logger==0.10.0 ; python_version >= "3.8" and python_version < "3.13" -fonttools==4.47.0 ; python_version >= "3.8" and python_version < "3.13" +fonttools==4.47.2 ; 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.5 ; python_version >= "3.8" and python_version < "3.13" -greenlet==3.0.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.2 ; python_version >= "3.8" and python_version < "3.13" httpx==0.26.0 ; python_version >= "3.8" and python_version < "3.13" @@ -52,22 +52,22 @@ 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.3.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.2 ; python_version >= "3.8" and python_version < "3.13" +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==24.3.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.4 ; python_version >= "3.8" and python_version < "3.13" +kombu==5.3.5 ; 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" -markupsafe==2.1.3 ; python_version >= "3.8" and python_version < "3.13" +markupsafe==2.1.4 ; python_version >= "3.8" and python_version < "3.13" matplotlib==3.7.4 ; python_version >= "3.8" and python_version < "3.9" matplotlib==3.8.2 ; python_version >= "3.9" and python_version < "3.13" mdit-py-plugins==0.4.0 ; python_version >= "3.8" and python_version < "3.13" mdurl==0.1.2 ; python_version >= "3.8" and python_version < "3.13" mirakuru==2.5.2 ; python_version >= "3.8" and python_version < "3.13" mistune==2.0.5 ; python_version >= "3.8" and python_version < "3.13" -more-itertools==10.1.0 ; python_version >= "3.8" and python_version < "3.13" +more-itertools==10.2.0 ; python_version >= "3.8" and python_version < "3.13" msgpack==1.0.7 ; python_version >= "3.8" and python_version < "3.13" multidict==6.0.4 ; python_version >= "3.8" and python_version < "3.13" mypy-extensions==1.0.0 ; python_version >= "3.8" and python_version < "3.13" @@ -82,13 +82,13 @@ pillow==10.2.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.9.6 ; python_version >= "3.8" and python_version < "3.13" platformdirs==4.1.0 ; python_version >= "3.8" and python_version < "3.13" -playwright==1.40.0 ; python_version >= "3.8" and python_version < "3.13" -pluggy==1.3.0 ; python_version >= "3.8" and python_version < "3.13" +playwright==1.41.1 ; 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.9.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.7 ; python_version >= "3.8" and python_version < "3.13" and sys_platform != "cygwin" -psycopg==3.1.16 ; 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.17 ; python_version >= "3.8" and python_version < "3.13" pycparser==2.21 ; python_version >= "3.8" and python_version < "3.13" pyee==11.0.1 ; python_version >= "3.8" and python_version < "3.13" pygithub==2.1.1 ; python_version >= "3.8" and python_version < "3.13" @@ -113,7 +113,7 @@ pytest-shard==0.1.2 ; python_version >= "3.8" and python_version < "3.13" pytest==7.4.4 ; python_version >= "3.8" and python_version < "3.13" python-dateutil==2.8.2 ; python_version >= "3.8" and python_version < "3.13" python-irodsclient==1.1.9 ; python_version >= "3.8" and python_version < "3.13" -python-slugify==8.0.1 ; python_version >= "3.8" and python_version < "3.13" +python-slugify==8.0.2 ; python_version >= "3.8" and python_version < "3.13" pytz==2023.3.post1 ; python_version >= "3.8" and python_version < "3.9" pywin32-ctypes==0.2.2 ; python_version >= "3.8" and python_version < "3.13" and sys_platform == "win32" pyyaml==6.0.1 ; python_version >= "3.8" and python_version < "3.13" @@ -128,9 +128,9 @@ ruamel-yaml-clib==0.2.8 ; platform_python_implementation == "CPython" and python ruamel-yaml==0.18.5 ; python_version >= "3.8" and python_version < "3.13" schema-salad==8.5.20240102191335 ; python_version >= "3.8" and python_version < "3.13" scipy==1.10.1 ; python_version >= "3.8" and python_version < "3.9" -scipy==1.11.4 ; python_version >= "3.9" and python_version < "3.13" +scipy==1.12.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.16.0 ; python_version >= "3.8" and python_version < "3.13" +selenium==4.17.2 ; python_version >= "3.8" and python_version < "3.13" seletools==1.4.0 ; python_version >= "3.8" and python_version < "3.13" setuptools==69.0.3 ; python_version >= "3.8" and python_version < "3.13" six==1.16.0 ; python_version >= "3.8" and python_version < "3.13" @@ -153,7 +153,7 @@ tinydb==4.8.0 ; python_version >= "3.8" and python_version < "3.13" toml==0.10.2 ; python_version >= "3.8" and python_version < "3.13" tomli==2.0.1 ; python_version >= "3.8" and python_full_version <= "3.11.0a6" trio-websocket==0.11.1 ; python_version >= "3.8" and python_version < "3.13" -trio==0.23.2 ; python_version >= "3.8" and python_version < "3.13" +trio==0.24.0 ; python_version >= "3.8" and python_version < "3.13" tuspy==1.0.3 ; python_version >= "3.8" and python_version < "3.13" twill==3.2.1 ; python_version >= "3.8" and python_version < "3.13" twine==4.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 d8ff88cf0f62..021b153d7ad0 100644 --- a/lib/galaxy/dependencies/pinned-lint-requirements.txt +++ b/lib/galaxy/dependencies/pinned-lint-requirements.txt @@ -1,7 +1,7 @@ attrs==23.2.0 flake8==7.0.0 -flake8-bugbear==23.12.2 +flake8-bugbear==24.1.17 mccabe==0.7.0 pycodestyle==2.11.1 pyflakes==3.2.0 -ruff==0.1.11 +ruff==0.1.14 diff --git a/lib/galaxy/dependencies/pinned-requirements.txt b/lib/galaxy/dependencies/pinned-requirements.txt index c9fbb78388ac..c8cc90525a98 100644 --- a/lib/galaxy/dependencies/pinned-requirements.txt +++ b/lib/galaxy/dependencies/pinned-requirements.txt @@ -1,6 +1,6 @@ a2wsgi==1.10.0 ; python_version >= "3.8" and python_version < "3.13" adal==1.2.7 ; python_version >= "3.8" and python_version < "3.13" -aiobotocore==2.9.0 ; python_version >= "3.8" and python_version < "3.13" +aiobotocore==2.11.1 ; 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.1 ; python_version >= "3.8" and python_version < "3.13" @@ -11,10 +11,10 @@ amqp==5.2.0 ; python_version >= "3.8" and python_version < "3.13" aniso8601==9.0.1 ; python_version >= "3.8" and python_version < "3.13" annotated-types==0.6.0 ; python_version >= "3.8" and python_version < "3.13" anyio==4.2.0 ; python_version >= "3.8" and python_version < "3.13" -apispec==6.3.1 ; python_version >= "3.8" and python_version < "3.13" +apispec==6.4.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.1 ; python_version >= "3.8" and python_version < "3.13" +argcomplete==3.2.2 ; 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" @@ -31,7 +31,7 @@ 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==23.1.1 ; python_version >= "3.8" and python_version < "3.13" boto==2.49.0 ; python_version >= "3.8" and python_version < "3.13" -botocore==1.33.13 ; python_version >= "3.8" and python_version < "3.13" +botocore==1.34.27 ; python_version >= "3.8" and python_version < "3.13" bx-python==0.10.0 ; python_version >= "3.8" and python_version < "3.13" cachecontrol[filecache]==0.13.1 ; python_version >= "3.8" and python_version < "3.13" celery==5.3.6 ; python_version >= "3.8" and python_version < "3.13" @@ -49,10 +49,10 @@ cloudbridge==3.2.0 ; python_version >= "3.8" and python_version < "3.13" colorama==0.4.6 ; python_version >= "3.8" and python_version < "3.13" and platform_system == "Windows" 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==41.0.7 ; python_version >= "3.8" and python_version < "3.13" +cryptography==42.0.1 ; 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.20231207110929 ; python_version >= "3.8" and python_version < "3.13" +cwltool==3.1.20240112164112 ; 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" @@ -65,12 +65,12 @@ ecdsa==0.18.0 ; python_version >= "3.8" and python_version < "3.13" edam-ontology==1.25.2 ; python_version >= "3.8" and python_version < "3.13" email-validator==2.1.0.post1 ; python_version >= "3.8" and python_version < "3.13" exceptiongroup==1.2.0 ; python_version >= "3.8" and python_version < "3.11" -fastapi==0.108.0 ; python_version >= "3.8" and python_version < "3.13" +fastapi==0.109.0 ; python_version >= "3.8" and python_version < "3.13" filelock==3.13.1 ; 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" -future @ git+https://github.com/nsoranzo/python-future.git@74d834334d1f97cf5f874d601e88edae978da578 ; python_version >= "3.8" and python_version < "3.13" +future @ git+https://github.com/nsoranzo/python-future.git@9ef05b386ce45dd40d2dab5915aec3ed78d81ed9 ; python_version >= "3.8" and python_version < "3.13" galaxy-sequence-utils==1.1.5 ; python_version >= "3.8" and python_version < "3.13" galaxy2cwl==0.1.4 ; python_version >= "3.8" and python_version < "3.13" graphene-sqlalchemy==3.0.0rc1 ; python_version >= "3.8" and python_version < "3.13" @@ -78,7 +78,7 @@ graphene==3.3 ; python_version >= "3.8" and python_version < "3.13" graphql-core==3.2.3 ; python_version >= "3.8" and python_version < "3.13" graphql-relay==3.2.0 ; python_version >= "3.8" and python_version < "3.13" gravity==1.0.5 ; python_version >= "3.8" and python_version < "3.13" -greenlet==3.0.1 ; python_version >= "3.8" and (platform_machine == "aarch64" or platform_machine == "ppc64le" or platform_machine == "x86_64" or platform_machine == "amd64" or platform_machine == "AMD64" or platform_machine == "win32" or platform_machine == "WIN32") and python_version < "3.13" +greenlet==3.0.3 ; python_version >= "3.8" and (platform_machine == "aarch64" or platform_machine == "ppc64le" or platform_machine == "x86_64" or platform_machine == "amd64" or platform_machine == "AMD64" or platform_machine == "win32" or platform_machine == "WIN32") and python_version < "3.13" 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" @@ -89,24 +89,24 @@ idna==3.6 ; python_version >= "3.8" and python_version < "3.13" importlib-metadata==7.0.1 ; python_version >= "3.8" and python_version < "3.13" importlib-resources==6.1.1 ; python_version >= "3.8" and python_version < "3.9" isa-rwval==0.10.10 ; python_version >= "3.8" and python_version < "3.13" -isal==1.3.0 ; python_version >= "3.8" and python_version < "3.12" +isal==1.5.3 ; python_version >= "3.8" and python_version < "3.13" isodate==0.6.1 ; python_version >= "3.8" and python_version < "3.13" -jinja2==3.1.2 ; python_version >= "3.8" and python_version < "3.13" +jinja2==3.1.3 ; python_version >= "3.8" and python_version < "3.13" 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.20.0 ; python_version >= "3.8" and python_version < "3.13" -kombu==5.3.4 ; 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.5 ; 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.0 ; 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.5.1 ; python_version >= "3.8" and python_version < "3.13" -markupsafe==2.1.3 ; python_version >= "3.8" and python_version < "3.13" +markdown==3.5.2 ; python_version >= "3.8" and python_version < "3.13" +markupsafe==2.1.4 ; python_version >= "3.8" and python_version < "3.13" mdurl==0.1.2 ; python_version >= "3.8" and python_version < "3.13" -mercurial==6.6.1 ; python_version >= "3.8" and python_version < "3.13" +mercurial==6.6.2 ; python_version >= "3.8" and python_version < "3.13" mistune==2.0.5 ; python_version >= "3.8" and python_version < "3.13" -mrcfile==1.4.3 ; python_version >= "3.8" and python_version < "3.13" +mrcfile==1.5.0 ; python_version >= "3.8" and python_version < "3.13" msal==1.26.0 ; python_version >= "3.8" and python_version < "3.13" msgpack==1.0.7 ; python_version >= "3.8" and python_version < "3.13" multidict==6.0.4 ; python_version >= "3.8" and python_version < "3.13" @@ -116,7 +116,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.3 ; python_version >= "3.9" and python_version < "3.13" oauthlib==3.2.2 ; python_version >= "3.8" and python_version < "3.13" -orjson==3.9.10 ; python_version >= "3.8" and python_version < "3.13" +orjson==3.9.12 ; python_version >= "3.8" and python_version < "3.13" oyaml==1.0 ; python_version >= "3.8" and python_version < "3.13" packaging==23.2 ; python_version >= "3.8" and python_version < "3.13" paramiko==3.4.0 ; python_version >= "3.8" and python_version < "3.13" @@ -128,18 +128,18 @@ pkgutil-resolve-name==1.3.10 ; python_version >= "3.8" and python_version < "3.9 promise==2.3 ; python_version >= "3.8" and python_version < "3.13" prompt-toolkit==3.0.43 ; python_version >= "3.8" and python_version < "3.13" prov==1.5.1 ; python_version >= "3.8" and python_version < "3.13" -psutil==5.9.7 ; python_version >= "3.8" and python_version < "3.13" +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" pyasn1==0.5.1 ; python_version >= "3.8" and python_version < "3.13" pycparser==2.21 ; python_version >= "3.8" and python_version < "3.13" -pycryptodome==3.19.1 ; 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-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" 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.7.2.2 ; python_version >= "3.8" and python_version < "3.13" +pyfaidx==0.8.1.1 ; python_version >= "3.8" and python_version < "3.13" pygments==2.17.2 ; python_version >= "3.8" and python_version < "3.13" pyjwt==2.8.0 ; python_version >= "3.8" and python_version < "3.13" pyjwt[crypto]==2.8.0 ; python_version >= "3.8" and python_version < "3.13" @@ -169,7 +169,7 @@ requests==2.31.0 ; python_version >= "3.8" and python_version < "3.13" rich==13.7.0 ; python_version >= "3.8" and python_version < "3.13" rocrate==0.9.0 ; python_version >= "3.8" and python_version < "3.13" routes==2.5.1 ; python_version >= "3.8" and python_version < "3.13" -rpds-py==0.16.2 ; python_version >= "3.8" and python_version < "3.13" +rpds-py==0.17.1 ; python_version >= "3.8" and python_version < "3.13" rsa==4.9 ; 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.5 ; python_version >= "3.8" and python_version < "3.13" @@ -188,7 +188,7 @@ 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" 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.32.0.post1 ; python_version >= "3.8" and python_version < "3.13" +starlette==0.35.1 ; python_version >= "3.8" and python_version < "3.13" supervisor==4.2.5 ; python_version >= "3.8" and python_version < "3.13" svgwrite==1.4.3 ; python_version >= "3.8" and python_version < "3.13" tenacity==8.2.3 ; python_version >= "3.8" and python_version < "3.13" @@ -204,7 +204,7 @@ tzdata==2023.4 ; python_version >= "3.8" and python_version < "3.13" tzlocal==5.2 ; python_version >= "3.8" and python_version < "3.13" ubiquerg==0.6.3 ; python_version >= "3.8" and python_version < "3.13" urllib3==1.26.18 ; python_version >= "3.8" and python_version < "3.13" -uvicorn==0.25.0 ; python_version >= "3.8" and python_version < "3.13" +uvicorn==0.27.0 ; python_version >= "3.8" and python_version < "3.13" uvloop==0.19.0 ; python_version >= "3.8" and python_version < "3.13" vine==5.1.0 ; python_version >= "3.8" and python_version < "3.13" wcwidth==0.2.13 ; 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 2bd9345bf304..9ae55e92df48 100644 --- a/lib/galaxy/dependencies/pinned-typecheck-requirements.txt +++ b/lib/galaxy/dependencies/pinned-typecheck-requirements.txt @@ -1,10 +1,10 @@ annotated-types==0.6.0 ; python_version >= "3.8" and python_version < "3.13" cffi==1.16.0 ; python_version >= "3.8" and python_version < "3.13" -cryptography==41.0.7 ; python_version >= "3.8" and python_version < "3.13" +cryptography==42.0.1 ; python_version >= "3.8" and python_version < "3.13" 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.8.0 ; python_version >= "3.8" and python_version < "3.13" -pycparser==2.21 ; python_version >= "3.8" and python_version < "3.13" +pycparser==2.21 ; 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" tomli==2.0.1 ; python_version >= "3.8" and python_version < "3.11" @@ -12,9 +12,9 @@ types-bleach==6.1.0.1 ; python_version >= "3.8" and python_version < "3.13" types-boto==2.49.18.9 ; python_version >= "3.8" and python_version < "3.13" types-contextvars==2.4.7.3 ; python_version >= "3.8" and python_version < "3.13" types-dataclasses==0.6.6 ; python_version >= "3.8" and python_version < "3.13" -types-docutils==0.20.0.20240106 ; python_version >= "3.8" and python_version < "3.13" +types-docutils==0.20.0.20240126 ; python_version >= "3.8" and python_version < "3.13" types-markdown==3.5.0.20240106 ; python_version >= "3.8" and python_version < "3.13" -types-paramiko==3.4.0.20240106 ; python_version >= "3.8" and python_version < "3.13" +types-paramiko==3.4.0.20240120 ; python_version >= "3.8" and python_version < "3.13" types-pkg-resources==0.1.3 ; python_version >= "3.8" and python_version < "3.13" types-python-dateutil==2.8.19.20240106 ; python_version >= "3.8" and python_version < "3.13" types-pyyaml==6.0.12.12 ; python_version >= "3.8" and python_version < "3.13" diff --git a/lib/galaxy/webapps/base/api.py b/lib/galaxy/webapps/base/api.py index c41637f48b8f..7923fc297331 100644 --- a/lib/galaxy/webapps/base/api.py +++ b/lib/galaxy/webapps/base/api.py @@ -59,7 +59,6 @@ class GalaxyFileResponse(FileResponse): nginx_x_accel_redirect_base: typing.Optional[str] = None apache_xsendfile: typing.Optional[bool] = None - send_header_only: bool def __init__( self, @@ -77,15 +76,11 @@ def __init__( path, status_code, headers, media_type, background, filename, stat_result, method, content_disposition_type ) self.headers["accept-ranges"] = "bytes" - send_header_only = self.nginx_x_accel_redirect_base or self.apache_xsendfile + self.xsendfile = self.nginx_x_accel_redirect_base or self.apache_xsendfile if self.nginx_x_accel_redirect_base: self.headers["x-accel-redirect"] = self.nginx_x_accel_redirect_base + os.path.abspath(path) elif self.apache_xsendfile: self.headers["x-sendfile"] = os.path.abspath(path) - if not self.send_header_only and send_header_only: - # Not a head request, but nginx_x_accel_redirect_base / send_header_only, we don't send a body - self.send_header_only = True - self.headers["content-length"] = "0" async def __call__(self, scope: "Scope", receive: "Receive", send: "Send") -> None: if self.stat_result is None: @@ -100,9 +95,15 @@ async def __call__(self, scope: "Scope", receive: "Receive", send: "Send") -> No raise RuntimeError(f"File at path {self.path} is not a file.") # This is where we diverge from the superclass, this adds support for byte range requests + is_head_request = scope["method"].upper() == "HEAD" + if not is_head_request and self.xsendfile: + # Not a head request, but nginx_x_accel_redirect_base / send_header_only, we don't send a body + self.headers["content-length"] = "0" + send_header_only = self.xsendfile or is_head_request + start = 0 end = stat_result.st_size - 1 - if not self.send_header_only: + if not send_header_only: http_range = "" for key, value in scope["headers"]: if key == b"range": @@ -120,7 +121,7 @@ async def __call__(self, scope: "Scope", receive: "Receive", send: "Send") -> No "headers": self.raw_headers, } ) - if self.send_header_only: + if send_header_only: await send({"type": "http.response.body", "body": b"", "more_body": False}) else: # This also diverges from the superclass by seeking to start and limiting to end if handling byte range requests