diff --git a/.circleci/config.yml b/.circleci/config.yml index acddc1aa54b..79e405da3e5 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -27,7 +27,7 @@ variables: jobs: get_code: docker: - - image: circleci/python:3.6 + - image: circleci/python:3.7 <<: *set_workdir steps: # Replace standard code checkout with shallow clone to speed things up. @@ -85,7 +85,7 @@ jobs: - ~/repo validate_test_tools: docker: - - image: circleci/python:3.6 + - image: circleci/python:3.7 <<: *set_workdir steps: - *restore_repo_cache @@ -95,7 +95,7 @@ jobs: - run: tox -e validate_test_tools test_galaxy_release: docker: - - image: circleci/python:3.6 + - image: circleci/python:3.7 <<: *set_workdir steps: - *restore_repo_cache @@ -104,7 +104,7 @@ jobs: - run: tox -e test_galaxy_release test_galaxy_packages: docker: - - image: circleci/python:3.6 + - image: circleci/python:3.7 <<: *set_workdir steps: - *restore_repo_cache diff --git a/.github/workflows/dependencies.yaml b/.github/workflows/dependencies.yaml index 38399d42ca3..8cd1dd04051 100644 --- a/.github/workflows/dependencies.yaml +++ b/.github/workflows/dependencies.yaml @@ -9,7 +9,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: ['3.6'] + python-version: ['3.7'] steps: - uses: actions/checkout@v2 - uses: actions/setup-python@v2 diff --git a/.github/workflows/first_startup.yaml b/.github/workflows/first_startup.yaml index 4d04e43ca11..dd1fba26d77 100644 --- a/.github/workflows/first_startup.yaml +++ b/.github/workflows/first_startup.yaml @@ -19,10 +19,10 @@ jobs: strategy: fail-fast: false matrix: - python-version: ['3.6', '3.9'] + python-version: ['3.7', '3.10'] webserver: ['uwsgi'] include: - - python-version: '3.9' + - python-version: '3.10' webserver: 'dev' defaults: run: diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml index 4c9d7cd1ad6..9dfd554cf3c 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/lint.yaml @@ -15,7 +15,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: ['3.6', '3.9'] + python-version: ['3.7', '3.10'] steps: - uses: actions/checkout@v2 - uses: actions/setup-python@v2 diff --git a/.github/workflows/osx_startup.yaml b/.github/workflows/osx_startup.yaml index b7ffee4d64d..1100c557dbd 100644 --- a/.github/workflows/osx_startup.yaml +++ b/.github/workflows/osx_startup.yaml @@ -29,8 +29,8 @@ jobs: id: pip-cache with: path: ~/Library/Caches/pip - # scripts/common_startup.sh creates a conda env for Galaxy containing Python 3.6 - key: pip-cache-3.6-${{ hashFiles('galaxy root/requirements.txt') }} + # scripts/common_startup.sh creates a conda env for Galaxy containing Python 3.7 + key: pip-cache-3.7-${{ hashFiles('galaxy root/requirements.txt') }} - name: Cache tox env uses: actions/cache@v2 with: diff --git a/.github/workflows/unit.yaml b/.github/workflows/unit.yaml index 7538f328f24..7a237ef3c91 100644 --- a/.github/workflows/unit.yaml +++ b/.github/workflows/unit.yaml @@ -18,7 +18,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ['3.6', '3.9'] + python-version: ['3.7', '3.10'] steps: - uses: actions/checkout@v2 with: diff --git a/lib/galaxy/dependencies/dev-requirements.txt b/lib/galaxy/dependencies/dev-requirements.txt index 75dcf95ee85..793e082e34a 100644 --- a/lib/galaxy/dependencies/dev-requirements.txt +++ b/lib/galaxy/dependencies/dev-requirements.txt @@ -3,57 +3,48 @@ adal==1.2.7 aiofiles==0.8.0; python_version >= "3.6" and python_version < "4.0" alabaster==0.7.12; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" -amqp==5.0.6; python_version >= "3.6" -appdirs==1.4.4; python_version >= "3.6" +amqp==5.0.6; python_version >= "3.7" +anyio==3.4.0; python_full_version >= "3.6.2" and python_version >= "3.6" +appdirs==1.4.4 argcomplete==1.12.3; python_version >= "3.6" and python_version < "4" asgiref==3.4.1; python_version >= "3.6" -async-exit-stack==1.0.1; python_version >= "3.6" and python_version < "3.7" -async-generator==1.10; python_version < "3.7" and python_version >= "3.6" -atomicwrites==1.4.0; python_version >= "3.6" and python_full_version < "3.0.0" and sys_platform == "win32" or sys_platform == "win32" and python_version >= "3.6" and python_full_version >= "3.4.0" +async-generator==1.10; python_version >= "3.7" and python_version < "4.0" +atomicwrites==1.4.0; python_version >= "3.7" and python_full_version < "3.0.0" and sys_platform == "win32" or sys_platform == "win32" and python_version >= "3.7" and python_full_version >= "3.4.0" attmap==0.13.2 -attrs==21.2.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" -autopage==0.4.0; python_version >= "3.6" +attrs==21.2.0; python_version >= "3.7" and python_full_version < "3.0.0" and python_version < "4.0" or python_full_version >= "3.5.0" and python_version >= "3.7" and python_version < "4.0" babel==2.9.1; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.4.0") bagit-profile==1.3.1; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version < "4" bagit==1.8.1; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_full_version >= "3.5.0" and python_version < "4" and python_version >= "3.6" bcrypt==3.2.0; python_version >= "3.6" bdbag==1.6.3; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0" and python_version < "4") beaker==1.11.0 -billiard==3.6.4.0; python_version >= "3.6" +billiard==3.6.4.0; python_version >= "3.7" bioblend==0.16.0; python_version >= "3.6" bleach==4.1.0; python_version >= "3.6" boltons==21.0.0 -boto3==1.20.20; python_version >= "3.6" boto==2.49.0 -botocore==1.23.20; python_version >= "3.6" bx-python==0.8.12; python_version >= "3.6" cachecontrol==0.12.10; python_version >= "3.6" and python_version < "4" -cached-property==1.5.2; python_version < "3.8" and python_version >= "3.6" -cachetools==4.2.4; python_version >= "3.5" and python_version < "4.0" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6") -celery==5.1.2; python_version >= "3.6" -certifi==2021.10.8; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_full_version >= "3.6.0" and python_version < "4" and python_version >= "3.6" -cffi==1.15.0; implementation_name == "pypy" and python_version >= "3.6" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6") +cached-property==1.5.2; python_version < "3.8" and python_version >= "3.7" +celery==5.2.1; python_version >= "3.7" +certifi==2021.10.8; python_version >= "3.7" and python_full_version < "3.0.0" and python_version < "4" or python_full_version >= "3.6.0" and python_version < "4" and python_version >= "3.7" +cffi==1.15.0 charset-normalizer==2.0.9; python_full_version >= "3.6.0" and python_version >= "3.6" and python_version < "4" cheetah3==3.2.6.post1; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.4.0") circus==0.17.1 -click-didyoumean==0.0.3; python_version >= "3.6" -click-plugins==1.1.1; python_version >= "3.6" -click-repl==0.2.0; python_version >= "3.6" -click==7.1.2; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" -cliff==3.10.0; python_version >= "3.6" +click-didyoumean==0.3.0; python_full_version >= "3.6.2" and python_full_version < "4.0.0" and python_version >= "3.7" +click-plugins==1.1.1; python_version >= "3.7" +click-repl==0.2.0; python_version >= "3.7" +click==8.0.3; python_full_version >= "3.6.2" and python_full_version < "4.0.0" and python_version >= "3.7" cloudauthz==0.6.0 -cloudbridge==2.2.0 -cmd2==2.3.3; python_version >= "3.6" -colorama==0.4.4; python_version >= "3.6" and python_full_version < "3.0.0" and sys_platform == "win32" and python_version < "4.0" and platform_system == "Windows" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6") or sys_platform == "win32" and python_version >= "3.6" and python_full_version >= "3.5.0" and python_version < "4.0" and platform_system == "Windows" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6") +cloudbridge==3.0.0 +colorama==0.4.4; sys_platform == "win32" and python_version >= "3.7" and python_full_version >= "3.6.2" and platform_system == "Windows" and python_full_version < "4.0.0" and (python_version >= "2.7" and python_full_version < "3.0.0" and platform_system == "Windows" or python_full_version >= "3.5.0" and platform_system == "Windows") and (python_version >= "3.7" and python_full_version < "3.0.0" and sys_platform == "win32" or sys_platform == "win32" and python_version >= "3.7" and python_full_version >= "3.5.0") and (python_version >= "3.6" and python_full_version < "3.0.0" and sys_platform == "win32" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6") or sys_platform == "win32" and python_version >= "3.6" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6") and python_full_version >= "3.5.0") coloredlogs==15.0.1; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_version >= "3.6" and python_version < "4" and python_full_version >= "3.5.0" -commonmark==0.9.1; python_version >= "3.6" and python_version < "4.0" -contextvars==2.4; python_version < "3.7" and python_version >= "3.6" +commonmark==0.9.1; python_full_version >= "3.6.2" and python_full_version < "4.0.0" coverage==6.2; python_version >= "3.6" -cryptography==36.0.0; python_version >= "3.6" +cryptography==36.0.0; python_version >= "3.7" and python_full_version < "3.0.0" and python_version < "4" or python_full_version >= "3.6.0" and python_version < "4" and python_version >= "3.7" cwltest==2.2.20210901154959; python_version >= "3.6" and python_version < "4" cwltool==3.1.20211107152837; python_version >= "3.6" and python_version < "4" -dataclasses==0.8; python_version >= "3.6" and python_version < "3.7" and python_full_version >= "3.6.1" -debtcollector==2.3.0; python_version >= "3.6" decorator==5.1.0; python_version >= "3.6" and python_version < "4" defusedxml==0.7.1; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_full_version >= "3.5.0" and python_version >= "3.6" and python_version < "4" deprecated==1.2.13; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" @@ -61,7 +52,6 @@ deprecation==2.1.0 dictobj==0.4 docopt==0.6.2 docutils==0.16; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0") -dogpile.cache==1.1.4; python_version >= "3.6" ecdsa==0.17.0; python_version >= "2.6" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" edam-ontology==1.25.2 fabric3==1.14.post1 @@ -72,37 +62,25 @@ fs==2.4.14 funcsigs==1.0.2 future==0.18.2; (python_version >= "2.6" and python_full_version < "3.0.0") or (python_full_version >= "3.3.0") galaxy-sequence-utils==1.1.5 -google-api-core==2.2.2; python_version >= "3.6" -google-api-python-client==2.32.0; python_version >= "3.6" -google-auth-httplib2==0.1.0; python_version >= "3.6" -google-auth==2.3.3; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6" -googleapis-common-protos==1.53.0; python_version >= "3.6" greenlet==1.1.2; python_version >= "3" and python_full_version < "3.0.0" 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 >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.6.0") and (python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4.0" or python_version >= "3.6" and python_version < "4.0" and python_full_version >= "3.6.0") or python_version >= "3" 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 >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.6.0") and (python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4.0" or python_version >= "3.6" and python_version < "4.0" and python_full_version >= "3.6.0") and python_full_version >= "3.5.0" gunicorn==20.1.0; python_version >= "3.5" gxformat2==0.15.0 -h11==0.12.0; python_version >= "3.6" -h5py==3.1.0; python_version >= "3.6" -httpcore==0.13.3; python_version >= "3.6" -httplib2==0.20.2; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" -httpx==0.20.0; python_version >= "3.6" +h11==0.12.0; python_version >= "3.7" and python_version < "4.0" and python_full_version >= "3.6.1" +h5py==3.6.0; python_version >= "3.7" +httpcore==0.14.3; python_version >= "3.6" +httpx==0.21.1; python_version >= "3.6" humanfriendly==10.0; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_version >= "3.6" and python_version < "4" and python_full_version >= "3.5.0" -idna==3.3; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_full_version >= "3.6.0" and python_version >= "3.6" and python_version < "4" +idna==3.3; python_version >= "3.7" and python_version < "4.0" and python_full_version >= "3.6.2" imagesize==1.3.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" -immutables==0.16; python_version >= "3.6" and python_version < "3.7" -importlib-metadata==4.8.2; python_version < "3.8" and python_version >= "3.6" and (python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "3.8" or python_full_version >= "3.6.0" and python_version < "3.8" and python_version >= "3.6") and (python_version == "3.6" or python_version == "3.7") -importlib-resources==5.4.0; python_version < "3.7" and python_version >= "3.6" -iniconfig==1.1.1; python_version >= "3.6" +importlib-metadata==4.8.2; python_version == "3.7" and (python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "3.8" or python_full_version >= "3.6.0" and python_version < "3.8" and python_version >= "3.6") +importlib-resources==5.4.0; python_version < "3.9" and python_version >= "3.7" +iniconfig==1.1.1; python_version >= "3.7" isa-rwval==0.10.10 -iso8601==0.1.16; python_version >= "3.6" -isodate==0.6.0; python_version >= "3.6" and python_version < "4" +isodate==0.6.0; python_version >= "3.7" and python_version < "4" jinja2==3.0.3; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" -jmespath==0.10.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" and python_version >= "3.6" -jsonpatch==1.32; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" -jsonpointer==2.2; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" -jsonschema==4.0.0 +jsonschema==4.2.1; python_version >= "3.7" junit-xml==1.9; python_version >= "3.6" and python_version < "4" -keystoneauth1==4.4.0; python_version >= "3.6" -kombu==5.1.0; python_version >= "3.6" +kombu==5.2.2; python_version >= "3.7" lagom==1.7.0; python_version >= "3.6" and python_version < "4.0" lockfile==0.12.2; python_version >= "3.6" and python_version < "4" lxml==4.6.4; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0") @@ -111,65 +89,50 @@ markdown-it-reporter==0.0.2 markdown==3.3.6; python_version >= "3.6" markupsafe==2.0.1; python_version >= "3.6" mercurial==6.0 -mirakuru==2.3.0; python_version >= "3.6" +mirakuru==2.4.1; python_version >= "3.7" mistune==0.8.4; python_version >= "3.6" and python_version < "4" mrcfile==1.3.0 msgpack==1.0.3; python_version >= "3.6" and python_version < "4" -munch==2.5.0; python_version >= "3.6" mypy-extensions==0.4.3; python_version >= "3.6" and python_version < "4" -netaddr==0.8.0; python_version >= "3.6" -netifaces==0.11.0; python_version >= "3.6" networkx==2.5; python_version >= "3.6" and python_version < "4" nodeenv==1.6.0 nose==1.3.7 nosehtml==0.4.6 -numpy==1.19.5; python_version >= "3.6" +numpy==1.21.1; python_version >= "3.7" oauthlib==3.1.1; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" -openstacksdk==0.61.0; python_version >= "3.6" -os-client-config==2.1.0; python_version >= "3.6" -os-service-types==1.7.0; python_version >= "3.6" -osc-lib==2.4.2; python_version >= "3.6" -oslo.config==8.7.1; python_version >= "3.6" -oslo.context==3.4.0; python_version >= "3.6" -oslo.i18n==5.1.0; python_version >= "3.6" -oslo.log==4.6.1; python_version >= "3.6" -oslo.serialization==4.2.0; python_version >= "3.6" -oslo.utils==4.12.0; python_version >= "3.6" +outcome==1.1.0; python_version >= "3.7" and python_version < "4.0" oyaml==1.0 -packaging==21.3; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" +packaging==21.3; python_version >= "3.7" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.7" paramiko==2.8.1 parsley==1.3 paste==3.5.0 pastedeploy==2.1.1 -pbr==5.8.0; python_version >= "3.6" -pluggy==1.0.0; python_version >= "3.6" -port-for==0.5.0; python_version >= "3.6" +pbr==5.8.0; python_version >= "2.6" +pluggy==1.0.0; python_version >= "3.7" +port-for==0.6.1; python_version >= "3.7" prettytable==2.4.0; python_version >= "3.6" -prompt-toolkit==3.0.19; python_full_version >= "3.6.1" and python_version >= "3.6" -protobuf==3.19.1; python_version >= "3.6" +prompt-toolkit==3.0.23; python_full_version >= "3.6.2" and python_version >= "3.7" prov==1.5.1; python_version >= "3.6" and python_version < "4" psutil==5.8.0; (python_version >= "2.6" and python_full_version < "3.0.0") or (python_full_version >= "3.4.0") pulsar-galaxy-lib==0.14.13 -py==1.11.0; python_version >= "3.6" and python_full_version < "3.0.0" and implementation_name == "pypy" or python_full_version >= "3.5.0" and python_version >= "3.6" and implementation_name == "pypy" -pyasn1-modules==0.2.8; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6" -pyasn1==0.4.8; python_version >= "3.6" and python_version < "4" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6") -pycparser==2.21; python_version >= "3.6" and python_full_version < "3.0.0" and implementation_name == "pypy" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6") or implementation_name == "pypy" and python_version >= "3.6" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6") and python_full_version >= "3.4.0" -pycryptodome==3.11.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0") +py==1.11.0; python_version >= "3.7" and python_full_version < "3.0.0" and implementation_name == "pypy" or python_full_version >= "3.5.0" and python_version >= "3.7" and implementation_name == "pypy" +pyasn1==0.4.8; python_version >= "3.6" and python_version < "4" +pycparser==2.21 +pycryptodome==3.12.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0") pydantic==1.8.2; python_version >= "3.6" and python_version < "4.0" and python_full_version >= "3.6.1" pydot==1.4.2; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_version >= "3.6" and python_version < "4" and python_full_version >= "3.4.0" pyeventsystem==0.1.0 pyfaidx==0.6.3.1 pygithub==1.55; python_version >= "3.6" -pygments==2.10.0; python_version >= "3.6" and python_version < "4.0" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6") -pyinotify==0.9.6; sys_platform != "win32" and sys_platform != "darwin" and sys_platform != "sunos5" and python_version >= "3.6" +pygments==2.10.0; python_full_version >= "3.6.2" and python_full_version < "4.0.0" and python_version >= "3.6" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6") pyjwt==2.3.0; python_version >= "3.6" pykwalify==1.8.0 pynacl==1.4.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" -pyparsing==2.4.7; (python_version >= "2.6" and python_full_version < "3.0.0") or (python_full_version >= "3.3.0") -pyperclip==1.8.2; python_version >= "3.6" +pyopenssl==21.0.0; python_version >= "3.7" and python_full_version < "3.0.0" and python_version < "4" or python_full_version >= "3.6.0" and python_version < "4" and python_version >= "3.7" +pyparsing==3.0.6; python_version >= "3.6" pyreadline3==3.3; sys_platform == "win32" and python_version >= "3.8" and (python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_version >= "3.6" and python_version < "4" and python_full_version >= "3.5.0") -pyreadline==2.1; sys_platform == "win32" and python_version < "3.8" and (python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_version >= "3.6" and python_version < "4" and python_full_version >= "3.5.0") and python_version >= "3.6" -pyrsistent==0.18.0; python_version >= "3.6" +pyreadline==2.1; sys_platform == "win32" and python_version < "3.8" and (python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_version >= "3.6" and python_version < "4" and python_full_version >= "3.5.0") +pyrsistent==0.18.0; python_version >= "3.7" pysam==0.18.0 pytest-asyncio==0.16.0; python_version >= "3.6" pytest-celery==0.0.0 @@ -178,46 +141,39 @@ pytest-html==3.1.1; python_version >= "3.6" pytest-json-report==1.4.1 pytest-metadata==1.11.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6" pytest-mock==3.6.1; python_version >= "3.6" -pytest-postgresql==2.6.1; python_version >= "3.6" +pytest-postgresql==4.0.0; python_version >= "3.7" pytest-pythonpath==0.7.3 pytest-shard==0.1.2; python_version >= "3.6" pytest==6.2.5; python_version >= "3.6" python-dateutil==2.8.2; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_version >= "3.6" and python_version < "4" and python_full_version >= "3.3.0" python-irodsclient==1.0.0 python-jose==3.3.0 -python-keystoneclient==4.3.0; python_version >= "3.6" python-multipart==0.0.5 -python-neutronclient==7.7.0; python_version >= "3.6" -python-novaclient==17.6.0; python_version >= "3.6" -python-swiftclient==3.13.0 python3-openid==3.2.0; python_version >= "3.0" -pytz==2021.3; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version < "4" and python_version >= "3.6" +pytz==2021.3; python_version >= "3.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version < "4" and python_version >= "3.7" pyuwsgi==2.0.20 pyyaml==6.0; python_version >= "3.6" pyzmq==22.3.0; python_version >= "3.6" -rdflib==5.0.0; python_version >= "3.6" and python_version < "4" +rdflib==6.0.2; python_version >= "3.7" and python_version < "4" recommonmark==0.7.1 refgenconf==0.12.2 repoze.lru==0.7 requests-oauthlib==1.3.0; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" requests-toolbelt==0.9.1; python_version >= "3.6" requests==2.26.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.6.0") -requestsexceptions==1.4.0; python_version >= "3.6" responses==0.16.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0") rfc3986==1.5.0; python_version >= "3.6" -rich==10.11.0; python_version >= "3.6" and python_version < "4.0" +rich==10.15.2; python_full_version >= "3.6.2" and python_full_version < "4.0.0" routes==2.5.1 -rsa==4.8; python_version >= "3.6" and python_version < "4" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6") +rsa==4.8; python_version >= "3.6" and python_version < "4" ruamel.yaml.clib==0.2.6; platform_python_implementation == "CPython" and python_version < "3.10" and python_version >= "3.6" ruamel.yaml==0.17.17; python_version >= "3.6" and python_version < "4" -s3transfer==0.5.0; python_version >= "3.6" schema-salad==8.2.20211116214159; python_version >= "3.6" and python_version < "4" -selenium==3.141.0 +selenium==4.1.0; python_version >= "3.7" and python_version < "4.0" setuptools-scm==5.0.2; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version < "4" shellescape==3.8.1; python_version >= "3.6" and python_version < "4" -simplejson==3.17.6; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" and python_version >= "3.6" -six==1.16.0; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_full_version >= "3.6.0" and python_version >= "3.6" and python_version < "4" -sniffio==1.2.0; python_version >= "3.6" +six==1.16.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.3.0") +sniffio==1.2.0; python_version >= "3.7" and python_version < "4.0" and python_full_version >= "3.6.2" snowballstemmer==2.2.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" social-auth-core==4.0.3 sortedcontainers==2.4.0 @@ -237,34 +193,35 @@ sqlparse==0.4.2; python_version >= "3.5" starlette-context==0.3.3; python_version >= "3.7" starlette==0.14.2; python_version >= "3.6" statsd==3.3.0 -stevedore==3.5.0; python_version >= "3.6" svgwrite==1.4.1; python_version >= "3.6" tempita==0.5.2 tenacity==8.0.1; python_version >= "3.6" testfixtures==6.18.3 -tifffile==2020.9.3; python_version >= "3.6" -tinydb==4.5.2; python_version >= "3.5" and python_version < "4.0" -toml==0.10.2; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" and python_version >= "3.6" +tifffile==2021.11.2; python_version >= "3.7" +tinydb==4.5.0; python_version >= "3.5" and python_version < "4.0" +toml==0.10.2; python_version >= "3.7" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" and python_version >= "3.7" tomli==1.2.2; python_version >= "3.6" tornado==6.1; python_version >= "3.5" tqdm==4.62.3; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" +trio-websocket==0.9.2; python_version >= "3.7" and python_version < "4.0" +trio==0.19.0; python_version >= "3.7" and python_version < "4.0" tuspy==0.2.5 tuswsgi==0.5.4 -twill==3.0 -typing-extensions==3.10.0.2 +twill==3.0.1 +typing-extensions==4.0.1; python_version >= "3.6" tzlocal==2.1; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version < "4" ubiquerg==0.6.2 -uritemplate==4.1.1; python_version >= "3.6" -urllib3==1.26.7; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_full_version >= "3.6.0" and python_version < "4" and python_version >= "3.6" +urllib3==1.26.7; python_version >= "3.7" and python_full_version < "3.0.0" and python_version < "4" or python_full_version >= "3.6.0" and python_version < "4" and python_version >= "3.7" uvicorn==0.15.0 -vine==5.0.0; python_version >= "3.6" +vine==5.0.0; python_version >= "3.7" watchdog==2.1.6; python_version >= "3.6" -wcwidth==0.2.5; python_full_version >= "3.6.1" and python_version >= "3.6" +wcwidth==0.2.5; python_full_version >= "3.6.2" and python_version >= "3.7" webencodings==0.5.1; python_version >= "3.6" webob==1.8.7; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.3.0") whoosh==2.7.4 wrapt==1.13.3; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +wsproto==1.0.0; python_version >= "3.7" and python_version < "4.0" and python_full_version >= "3.6.1" xmlrunner==1.7.7 yacman==0.8.4 -zipp==3.6.0; python_version < "3.7" and python_version >= "3.6" and (python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "3.8" or python_full_version >= "3.6.0" and python_version < "3.8" and python_version >= "3.6") and (python_version == "3.6" or python_version == "3.7") +zipp==3.6.0; python_version == "3.7" and (python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "3.8" or python_full_version >= "3.6.0" and python_version < "3.8" and python_version >= "3.6") zipstream-new==1.1.8 diff --git a/lib/galaxy/dependencies/pinned-lint-requirements.txt b/lib/galaxy/dependencies/pinned-lint-requirements.txt index 4c71f59b286..aa2c3c99a6c 100644 --- a/lib/galaxy/dependencies/pinned-lint-requirements.txt +++ b/lib/galaxy/dependencies/pinned-lint-requirements.txt @@ -19,7 +19,7 @@ types-docutils==0.17.1 types-enum34==1.1.1 types-ipaddress==1.0.1 types-Markdown==3.3.9 -types-paramiko==2.8.2 +types-paramiko==2.8.3 types-pkg-resources==0.1.3 types-python-dateutil==2.8.3 types-PyYAML==6.0.1 diff --git a/lib/galaxy/dependencies/pinned-requirements.txt b/lib/galaxy/dependencies/pinned-requirements.txt index 206ae4c641d..ed6524a8bb7 100644 --- a/lib/galaxy/dependencies/pinned-requirements.txt +++ b/lib/galaxy/dependencies/pinned-requirements.txt @@ -2,61 +2,49 @@ adal==1.2.7 aiofiles==0.8.0; python_version >= "3.6" and python_version < "4.0" -amqp==5.0.6; python_version >= "3.6" -appdirs==1.4.4; python_version >= "3.6" +amqp==5.0.6; python_version >= "3.7" +appdirs==1.4.4 argcomplete==1.12.3; python_version >= "3.6" and python_version < "4" asgiref==3.4.1; python_version >= "3.6" -async-exit-stack==1.0.1; python_version >= "3.6" and python_version < "3.7" -async-generator==1.10; python_version >= "3.6" and python_version < "3.7" attmap==0.13.2 -attrs==21.2.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" -autopage==0.4.0; python_version >= "3.6" +attrs==21.2.0; python_version >= "3.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.7" babel==2.9.1; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.4.0") bagit-profile==1.3.1; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version < "4" bagit==1.8.1; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_full_version >= "3.5.0" and python_version < "4" and python_version >= "3.6" bcrypt==3.2.0; python_version >= "3.6" bdbag==1.6.3; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0" and python_version < "4") beaker==1.11.0 -billiard==3.6.4.0; python_version >= "3.6" +billiard==3.6.4.0; python_version >= "3.7" bioblend==0.16.0; python_version >= "3.6" bleach==4.1.0; python_version >= "3.6" boltons==21.0.0 -boto3==1.20.20; python_version >= "3.6" boto==2.49.0 -botocore==1.23.20; python_version >= "3.6" bx-python==0.8.12; python_version >= "3.6" cachecontrol==0.12.10; python_version >= "3.6" and python_version < "4" -cached-property==1.5.2; python_version < "3.8" and python_version >= "3.6" -cachetools==4.2.4; python_version >= "3.5" and python_version < "4.0" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6") -celery==5.1.2; python_version >= "3.6" +cached-property==1.5.2; python_version < "3.8" and python_version >= "3.7" +celery==5.2.1; python_version >= "3.7" certifi==2021.10.8; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_full_version >= "3.6.0" and python_version < "4" and python_version >= "3.6" cffi==1.15.0; implementation_name == "pypy" and python_version >= "3.6" and (python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.4.0") charset-normalizer==2.0.9; python_full_version >= "3.6.0" and python_version >= "3.6" and python_version < "4" cheetah3==3.2.6.post1; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.4.0") circus==0.17.1 -click-didyoumean==0.0.3; python_version >= "3.6" -click-plugins==1.1.1; python_version >= "3.6" -click-repl==0.2.0; python_version >= "3.6" -click==7.1.2; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" -cliff==3.10.0; python_version >= "3.6" +click-didyoumean==0.3.0; python_full_version >= "3.6.2" and python_full_version < "4.0.0" and python_version >= "3.7" +click-plugins==1.1.1; python_version >= "3.7" +click-repl==0.2.0; python_version >= "3.7" +click==8.0.3; python_full_version >= "3.6.2" and python_full_version < "4.0.0" and python_version >= "3.7" cloudauthz==0.6.0 -cloudbridge==2.2.0 -cmd2==2.3.3; python_version >= "3.6" -colorama==0.4.4; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4.0" and platform_system == "Windows" or python_version >= "3.6" and python_version < "4.0" and python_full_version >= "3.5.0" and platform_system == "Windows" +cloudbridge==3.0.0 +colorama==0.4.4; platform_system == "Windows" and python_version >= "3.7" and python_full_version >= "3.6.2" and python_full_version < "4.0.0" and (python_version >= "2.7" and python_full_version < "3.0.0" and platform_system == "Windows" or python_full_version >= "3.5.0" and platform_system == "Windows") coloredlogs==15.0.1; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_version >= "3.6" and python_version < "4" and python_full_version >= "3.5.0" -commonmark==0.9.1; python_version >= "3.6" and python_version < "4.0" -contextvars==2.4; python_version >= "3.6" and python_version < "3.7" -cryptography==36.0.0; python_version >= "3.6" +commonmark==0.9.1; python_full_version >= "3.6.2" and python_full_version < "4.0.0" +cryptography==36.0.0; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_full_version >= "3.6.0" and python_version < "4" and python_version >= "3.6" cwltool==3.1.20211107152837; python_version >= "3.6" and python_version < "4" -dataclasses==0.8; python_version >= "3.6" and python_version < "3.7" and python_full_version >= "3.6.1" -debtcollector==2.3.0; python_version >= "3.6" decorator==5.1.0; python_version >= "3.6" and python_version < "4" defusedxml==0.7.1; python_version >= "3.0" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.0" deprecation==2.1.0 dictobj==0.4 docopt==0.6.2 docutils==0.16; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0") -dogpile.cache==1.1.4; python_version >= "3.6" ecdsa==0.17.0; python_version >= "2.6" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" edam-ontology==1.25.2 fabric3==1.14.post1 @@ -66,30 +54,18 @@ fs==2.4.14 funcsigs==1.0.2 future==0.18.2; (python_version >= "2.6" and python_full_version < "3.0.0") or (python_full_version >= "3.3.0") galaxy-sequence-utils==1.1.5 -google-api-core==2.2.2; python_version >= "3.6" -google-api-python-client==2.32.0; python_version >= "3.6" -google-auth-httplib2==0.1.0; python_version >= "3.6" -google-auth==2.3.3; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6" -googleapis-common-protos==1.53.0; python_version >= "3.6" greenlet==1.1.2; python_version >= "3" and python_full_version < "3.0.0" 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 >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.6.0") and (python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4.0" or python_version >= "3.6" and python_version < "4.0" and python_full_version >= "3.6.0") or python_version >= "3" 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 >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.6.0") and (python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4.0" or python_version >= "3.6" and python_version < "4.0" and python_full_version >= "3.6.0") and python_full_version >= "3.5.0" gxformat2==0.15.0 h11==0.12.0; python_version >= "3.6" -h5py==3.1.0; python_version >= "3.6" -httplib2==0.20.2; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" +h5py==3.6.0; python_version >= "3.7" humanfriendly==10.0; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_version >= "3.6" and python_version < "4" and python_full_version >= "3.5.0" idna==3.3; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_full_version >= "3.6.0" and python_version >= "3.6" and python_version < "4" -immutables==0.16; python_version >= "3.6" and python_version < "3.7" -importlib-metadata==4.8.2; python_version < "3.8" and python_version >= "3.6" and (python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "3.8" or python_full_version >= "3.6.0" and python_version < "3.8" and python_version >= "3.6") and (python_version == "3.6" or python_version == "3.7") -importlib-resources==5.4.0; python_version < "3.7" and python_version >= "3.6" +importlib-metadata==4.8.2; python_version == "3.7" and (python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "3.8" or python_full_version >= "3.6.0" and python_version < "3.8" and python_version >= "3.6") +importlib-resources==5.4.0; python_version < "3.9" and python_version >= "3.7" isa-rwval==0.10.10 -iso8601==0.1.16; python_version >= "3.6" -isodate==0.6.0; python_version >= "3.6" and python_version < "4" -jmespath==0.10.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" and python_version >= "3.6" -jsonpatch==1.32; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" -jsonpointer==2.2; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" -jsonschema==4.0.0 -keystoneauth1==4.4.0; python_version >= "3.6" -kombu==5.1.0; python_version >= "3.6" +isodate==0.6.0; python_version >= "3.7" and python_version < "4" +jsonschema==4.2.1; python_version >= "3.7" +kombu==5.2.2; python_version >= "3.7" lagom==1.7.0; python_version >= "3.6" and python_version < "4.0" lockfile==0.12.2; python_version >= "3.6" and python_version < "4" lxml==4.6.4; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0") @@ -100,89 +76,63 @@ mercurial==6.0 mistune==0.8.4; python_version >= "3.6" and python_version < "4" mrcfile==1.3.0 msgpack==1.0.3; python_version >= "3.6" and python_version < "4" -munch==2.5.0; python_version >= "3.6" mypy-extensions==0.4.3; python_version >= "3.6" and python_version < "4" -netaddr==0.8.0; python_version >= "3.6" -netifaces==0.11.0; python_version >= "3.6" networkx==2.5; python_version >= "3.6" and python_version < "4" nodeenv==1.6.0 nose==1.3.7 -numpy==1.19.5; python_version >= "3.6" +numpy==1.21.1; python_version >= "3.7" oauthlib==3.1.1; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" -openstacksdk==0.61.0; python_version >= "3.6" -os-client-config==2.1.0; python_version >= "3.6" -os-service-types==1.7.0; python_version >= "3.6" -osc-lib==2.4.2; python_version >= "3.6" -oslo.config==8.7.1; python_version >= "3.6" -oslo.context==3.4.0; python_version >= "3.6" -oslo.i18n==5.1.0; python_version >= "3.6" -oslo.log==4.6.1; python_version >= "3.6" -oslo.serialization==4.2.0; python_version >= "3.6" -oslo.utils==4.12.0; python_version >= "3.6" oyaml==1.0 packaging==21.3; python_version >= "3.6" paramiko==2.8.1 parsley==1.3 paste==3.5.0 pastedeploy==2.1.1 -pbr==5.8.0; python_version >= "3.6" -prettytable==2.4.0; python_version >= "3.6" -prompt-toolkit==3.0.19; python_full_version >= "3.6.1" and python_version >= "3.6" -protobuf==3.19.1; python_version >= "3.6" +pbr==5.8.0; python_version >= "2.6" +prompt-toolkit==3.0.23; python_full_version >= "3.6.2" and python_version >= "3.7" prov==1.5.1; python_version >= "3.6" and python_version < "4" psutil==5.8.0; (python_version >= "2.6" and python_full_version < "3.0.0") or (python_full_version >= "3.4.0") pulsar-galaxy-lib==0.14.13 py==1.11.0; python_version >= "3.6" and python_full_version < "3.0.0" and implementation_name == "pypy" or implementation_name == "pypy" and python_version >= "3.6" and python_full_version >= "3.5.0" -pyasn1-modules==0.2.8; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6" -pyasn1==0.4.8; python_version >= "3.6" and python_version < "4" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6") +pyasn1==0.4.8; python_version >= "3.6" and python_version < "4" pycparser==2.21; python_version >= "3.6" and python_full_version < "3.0.0" and implementation_name == "pypy" and (python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.4.0") or implementation_name == "pypy" and python_version >= "3.6" and (python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.4.0") and python_full_version >= "3.4.0" -pycryptodome==3.11.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0") +pycryptodome==3.12.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0") pydantic==1.8.2; python_version >= "3.6" and python_version < "4.0" and python_full_version >= "3.6.1" pydot==1.4.2; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_version >= "3.6" and python_version < "4" and python_full_version >= "3.4.0" pyeventsystem==0.1.0 pyfaidx==0.6.3.1 -pygments==2.10.0; python_version >= "3.6" and python_version < "4.0" -pyinotify==0.9.6; sys_platform != "win32" and sys_platform != "darwin" and sys_platform != "sunos5" and python_version >= "3.6" +pygments==2.10.0; python_full_version >= "3.6.2" and python_full_version < "4.0.0" and python_version >= "3.5" pyjwt==2.3.0; python_version >= "3.6" pykwalify==1.8.0 pynacl==1.4.0; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" -pyparsing==2.4.7; (python_version >= "2.6" and python_full_version < "3.0.0") or (python_full_version >= "3.3.0") -pyperclip==1.8.2; python_version >= "3.6" +pyparsing==3.0.6; python_version >= "3.6" pyreadline3==3.3; sys_platform == "win32" and python_version >= "3.8" and (python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_version >= "3.6" and python_version < "4" and python_full_version >= "3.5.0") -pyreadline==2.1; sys_platform == "win32" and python_version < "3.8" and (python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_version >= "3.6" and python_version < "4" and python_full_version >= "3.5.0") and python_version >= "3.6" -pyrsistent==0.18.0; python_version >= "3.6" +pyreadline==2.1; sys_platform == "win32" and python_version < "3.8" and (python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_version >= "3.6" and python_version < "4" and python_full_version >= "3.5.0") +pyrsistent==0.18.0; python_version >= "3.7" pysam==0.18.0 python-dateutil==2.8.2; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_version >= "3.6" and python_version < "4" and python_full_version >= "3.3.0" python-jose==3.3.0 -python-keystoneclient==4.3.0; python_version >= "3.6" python-multipart==0.0.5 -python-neutronclient==7.7.0; python_version >= "3.6" -python-novaclient==17.6.0; python_version >= "3.6" -python-swiftclient==3.13.0 python3-openid==3.2.0; python_version >= "3.0" -pytz==2021.3; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version < "4" and python_version >= "3.6" +pytz==2021.3; python_version >= "3.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version < "4" and python_version >= "3.7" pyuwsgi==2.0.20 pyyaml==6.0; python_version >= "3.6" pyzmq==22.3.0; python_version >= "3.6" -rdflib==5.0.0; python_version >= "3.6" and python_version < "4" +rdflib==6.0.2; python_version >= "3.7" and python_version < "4" refgenconf==0.12.2 repoze.lru==0.7 requests-oauthlib==1.3.0; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" requests-toolbelt==0.9.1; python_version >= "3.6" requests==2.26.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.6.0") -requestsexceptions==1.4.0; python_version >= "3.6" -rfc3986==1.5.0; python_version >= "3.6" -rich==10.11.0; python_version >= "3.6" and python_version < "4.0" +rich==10.15.2; python_full_version >= "3.6.2" and python_full_version < "4.0.0" routes==2.5.1 -rsa==4.8; python_version >= "3.6" and python_version < "4" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6") +rsa==4.8; python_version >= "3.6" and python_version < "4" ruamel.yaml.clib==0.2.6; platform_python_implementation == "CPython" and python_version < "3.10" and python_version >= "3.6" ruamel.yaml==0.17.17; python_version >= "3.6" and python_version < "4" -s3transfer==0.5.0; python_version >= "3.6" schema-salad==8.2.20211116214159; python_version >= "3.6" and python_version < "4" setuptools-scm==5.0.2; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version < "4" shellescape==3.8.1; python_version >= "3.6" and python_version < "4" -simplejson==3.17.6; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" and python_version >= "3.6" -six==1.16.0; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_full_version >= "3.6.0" and python_version >= "3.6" and python_version < "4" +six==1.16.0; python_version >= "3.7" and python_full_version < "3.0.0" and python_version < "4" or python_full_version >= "3.4.0" and python_version >= "3.7" and python_version < "4" social-auth-core==4.0.3 sortedcontainers==2.4.0 sqlalchemy-migrate==0.13.0 @@ -191,26 +141,23 @@ sqlitedict==1.7.0 sqlparse==0.4.2; python_version >= "3.5" starlette-context==0.3.3; python_version >= "3.7" starlette==0.14.2; python_version >= "3.6" -stevedore==3.5.0; python_version >= "3.6" svgwrite==1.4.1; python_version >= "3.6" tempita==0.5.2 tenacity==8.0.1; python_version >= "3.6" -tifffile==2020.9.3; python_version >= "3.6" +tifffile==2021.11.2; python_version >= "3.7" tornado==6.1; python_version >= "3.5" tqdm==4.62.3; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" tuswsgi==0.5.4 -typing-extensions==3.10.0.2 +typing-extensions==4.0.1; python_version >= "3.6" tzlocal==2.1; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version < "4" ubiquerg==0.6.2 -uritemplate==4.1.1; python_version >= "3.6" urllib3==1.26.7; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" or python_full_version >= "3.6.0" and python_version < "4" and python_version >= "3.6" uvicorn==0.15.0 -vine==5.0.0; python_version >= "3.6" -wcwidth==0.2.5; python_full_version >= "3.6.1" and python_version >= "3.6" +vine==5.0.0; python_version >= "3.7" +wcwidth==0.2.5; python_full_version >= "3.6.2" and python_version >= "3.7" webencodings==0.5.1; python_version >= "3.6" webob==1.8.7; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.3.0") whoosh==2.7.4 -wrapt==1.13.3; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" yacman==0.8.4 -zipp==3.6.0; python_version < "3.7" and python_version >= "3.6" and (python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "3.8" or python_full_version >= "3.6.0" and python_version < "3.8" and python_version >= "3.6") and (python_version == "3.6" or python_version == "3.7") +zipp==3.6.0; python_version == "3.7" and (python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "3.8" or python_full_version >= "3.6.0" and python_version < "3.8" and python_version >= "3.6") zipstream-new==1.1.8 diff --git a/lib/galaxy/dependencies/update_lint_requirements.sh b/lib/galaxy/dependencies/update_lint_requirements.sh index 5c2e9b798e5..d477d941ab9 100755 --- a/lib/galaxy/dependencies/update_lint_requirements.sh +++ b/lib/galaxy/dependencies/update_lint_requirements.sh @@ -4,7 +4,7 @@ set -e THIS_DIRECTORY="$(cd "$(dirname "$0")" > /dev/null && pwd)" LINT_VENV=$(mktemp -d "${TMPDIR:-/tmp}/lint_venv.XXXXXXXXXX") -python3 -m venv "${LINT_VENV}" +python3.7 -m venv "${LINT_VENV}" . "${LINT_VENV}/bin/activate" pip install --upgrade pip setuptools pip install -r "${THIS_DIRECTORY}/lint-requirements.txt" diff --git a/lib/galaxy_test/driver/driver_util.py b/lib/galaxy_test/driver/driver_util.py index 461ecb39c1a..3c3ad913ae9 100644 --- a/lib/galaxy_test/driver/driver_util.py +++ b/lib/galaxy_test/driver/driver_util.py @@ -78,8 +78,7 @@ uwsgi: """) DEFAULT_LOCALES = "en" -CAN_BUILD_ASGI_APP = sys.version_info[:2] >= (3, 7) -USE_UVICORN = asbool(os.environ.get('GALAXY_TEST_USE_UVICORN', CAN_BUILD_ASGI_APP)) +USE_UVICORN = asbool(os.environ.get('GALAXY_TEST_USE_UVICORN', True)) log = logging.getLogger("test_driver") diff --git a/packages/app/setup.py b/packages/app/setup.py index 78efdd6ebed..93f9af2344c 100644 --- a/packages/app/setup.py +++ b/packages/app/setup.py @@ -158,10 +158,10 @@ setup( 'Topic :: Software Development :: Testing', 'Natural Language :: English', "Programming Language :: Python :: 3", - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', ], test_suite=TEST_DIR, tests_require=test_requirements diff --git a/packages/auth/setup.py b/packages/auth/setup.py index e9c127f99c4..2eafa480d0a 100644 --- a/packages/auth/setup.py +++ b/packages/auth/setup.py @@ -88,10 +88,10 @@ setup( 'Topic :: Software Development :: Testing', 'Natural Language :: English', "Programming Language :: Python :: 3", - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', ], test_suite=TEST_DIR, tests_require=test_requirements diff --git a/packages/containers/setup.py b/packages/containers/setup.py index 754f18332f2..399aae00a47 100644 --- a/packages/containers/setup.py +++ b/packages/containers/setup.py @@ -89,10 +89,10 @@ setup( 'Topic :: Software Development :: Testing', 'Natural Language :: English', "Programming Language :: Python :: 3", - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', ], test_suite=TEST_DIR, tests_require=test_requirements diff --git a/packages/data/setup.py b/packages/data/setup.py index 263571e25d5..6eb9d0f66c7 100644 --- a/packages/data/setup.py +++ b/packages/data/setup.py @@ -109,10 +109,10 @@ setup( 'Topic :: Software Development :: Testing', 'Natural Language :: English', "Programming Language :: Python :: 3", - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', ], test_suite=TEST_DIR, tests_require=test_requirements diff --git a/packages/files/setup.py b/packages/files/setup.py index e3a0e90e275..bb48f5fec00 100644 --- a/packages/files/setup.py +++ b/packages/files/setup.py @@ -89,10 +89,10 @@ setup( 'Topic :: Software Development :: Testing', 'Natural Language :: English', "Programming Language :: Python :: 3", - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', ], test_suite=TEST_DIR, tests_require=test_requirements diff --git a/packages/job_execution/setup.py b/packages/job_execution/setup.py index dbb6ec5e848..313826fa094 100644 --- a/packages/job_execution/setup.py +++ b/packages/job_execution/setup.py @@ -91,10 +91,10 @@ setup( 'Topic :: Software Development :: Testing', 'Natural Language :: English', "Programming Language :: Python :: 3", - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', ], test_suite=TEST_DIR, tests_require=test_requirements diff --git a/packages/job_metrics/setup.py b/packages/job_metrics/setup.py index 34ed91f9981..6aaa5c24640 100644 --- a/packages/job_metrics/setup.py +++ b/packages/job_metrics/setup.py @@ -88,10 +88,10 @@ setup( 'Topic :: Software Development :: Testing', 'Natural Language :: English', "Programming Language :: Python :: 3", - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', ], test_suite=TEST_DIR, tests_require=test_requirements diff --git a/packages/meta/setup.py b/packages/meta/setup.py index cdaa4c02446..69886c2feb5 100644 --- a/packages/meta/setup.py +++ b/packages/meta/setup.py @@ -116,10 +116,10 @@ setup( 'Topic :: Software Development :: Testing', 'Natural Language :: English', "Programming Language :: Python :: 3", - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', ], test_suite=TEST_DIR, tests_require=test_requirements diff --git a/packages/objectstore/setup.py b/packages/objectstore/setup.py index 715191e6641..d7487978fbd 100644 --- a/packages/objectstore/setup.py +++ b/packages/objectstore/setup.py @@ -87,10 +87,10 @@ setup( 'Topic :: Software Development :: Testing', 'Natural Language :: English', "Programming Language :: Python :: 3", - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', ], test_suite=TEST_DIR, tests_require=test_requirements diff --git a/packages/selenium/setup.py b/packages/selenium/setup.py index 01aac2114f5..e0ce6ffb455 100644 --- a/packages/selenium/setup.py +++ b/packages/selenium/setup.py @@ -90,10 +90,10 @@ setup( 'Topic :: Software Development :: Testing', 'Natural Language :: English', "Programming Language :: Python :: 3", - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', ], test_suite=TEST_DIR, tests_require=test_requirements diff --git a/packages/test_api/setup.py b/packages/test_api/setup.py index a40273ce117..05e75f2eba3 100644 --- a/packages/test_api/setup.py +++ b/packages/test_api/setup.py @@ -87,10 +87,10 @@ setup( 'Topic :: Software Development :: Testing', 'Natural Language :: English', "Programming Language :: Python :: 3", - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', ], test_suite=TEST_DIR, tests_require=test_requirements diff --git a/packages/test_base/setup.py b/packages/test_base/setup.py index cd5148d83a4..f1e501f2a0a 100644 --- a/packages/test_base/setup.py +++ b/packages/test_base/setup.py @@ -87,10 +87,10 @@ setup( 'Topic :: Software Development :: Testing', 'Natural Language :: English', "Programming Language :: Python :: 3", - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', ], test_suite=TEST_DIR, tests_require=test_requirements diff --git a/packages/test_driver/setup.py b/packages/test_driver/setup.py index 0c3b9aec134..097c348490c 100644 --- a/packages/test_driver/setup.py +++ b/packages/test_driver/setup.py @@ -87,10 +87,10 @@ setup( 'Topic :: Software Development :: Testing', 'Natural Language :: English', "Programming Language :: Python :: 3", - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', ], test_suite=TEST_DIR, tests_require=test_requirements diff --git a/packages/test_selenium/setup.py b/packages/test_selenium/setup.py index ff97e7dc707..ed5946425bc 100644 --- a/packages/test_selenium/setup.py +++ b/packages/test_selenium/setup.py @@ -88,10 +88,10 @@ setup( 'Topic :: Software Development :: Testing', 'Natural Language :: English', "Programming Language :: Python :: 3", - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', ], test_suite=TEST_DIR, tests_require=test_requirements diff --git a/packages/tool_util/setup.py b/packages/tool_util/setup.py index c3eced55b8e..851770cb848 100644 --- a/packages/tool_util/setup.py +++ b/packages/tool_util/setup.py @@ -126,10 +126,10 @@ setup( 'Topic :: Software Development :: Testing', 'Natural Language :: English', "Programming Language :: Python :: 3", - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', ], test_suite=TEST_DIR, tests_require=test_requirements diff --git a/packages/util/setup.py b/packages/util/setup.py index 40dc9978d31..e5cbb7ff406 100644 --- a/packages/util/setup.py +++ b/packages/util/setup.py @@ -96,10 +96,10 @@ setup( 'Topic :: Software Development :: Testing', 'Natural Language :: English', "Programming Language :: Python :: 3", - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', ], test_suite=TEST_DIR, tests_require=test_requirements diff --git a/packages/web_framework/setup.py b/packages/web_framework/setup.py index 87c19e9d2e8..ebcecb09ff6 100644 --- a/packages/web_framework/setup.py +++ b/packages/web_framework/setup.py @@ -92,10 +92,10 @@ setup( 'Topic :: Software Development :: Testing', 'Natural Language :: English', "Programming Language :: Python :: 3", - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', ], test_suite=TEST_DIR, tests_require=test_requirements diff --git a/packages/web_stack/setup.py b/packages/web_stack/setup.py index a69afcb4be1..e3020e83fb6 100644 --- a/packages/web_stack/setup.py +++ b/packages/web_stack/setup.py @@ -87,10 +87,10 @@ setup( 'Topic :: Software Development :: Testing', 'Natural Language :: English', "Programming Language :: Python :: 3", - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', ], test_suite=TEST_DIR, tests_require=test_requirements diff --git a/packages/webapps/setup.py b/packages/webapps/setup.py index bc8ab520f0c..2cba3c31293 100644 --- a/packages/webapps/setup.py +++ b/packages/webapps/setup.py @@ -115,10 +115,10 @@ setup( 'Topic :: Software Development :: Testing', 'Natural Language :: English', "Programming Language :: Python :: 3", - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', ], test_suite=TEST_DIR, tests_require=test_requirements diff --git a/pyproject.toml b/pyproject.toml index 257ea66e861..137663cf33c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -15,8 +15,6 @@ url = "https://wheels.galaxyproject.org/simple" [tool.poetry.dependencies] aiofiles = "*" -async-generator = {version = "*", python = "~3.6"} -async-exit-stack = {version = "*", python = "~3.6"} Babel = "*" bdbag = "*" Beaker = "1.11.0" @@ -29,7 +27,6 @@ celery = "*" Cheetah3 = "!=3.2.6.post2" # yanked release, https://github.com/python-poetry/poetry/issues/2453 cloudauthz = "==0.6.0" cloudbridge = "*" -contextvars = {version = "*", python = "~3.6"} circus = "*" cwltool = "==3.1.20211107152837" dictobj = "*" @@ -42,7 +39,7 @@ fs = "*" future = "*" galaxy_sequence_utils = "*" gxformat2 = "*" -h5py = "==3.1.0" # Last version compatible with python 3.6. Also adding this constraint speeds up poetry resolution immensely +h5py = "*" isa-rwval = "*" kombu = "*" lagom = "*" @@ -63,7 +60,7 @@ pycryptodome = "*" pykwalify = "*" pyparsing = "*" pysam = "*" -python = "^3.6.1" # required by fastapi +python = ">=3.7,<4" python-multipart = "*" # required to support form parsing in FastAPI/Starlette pyuwsgi = "*" PyYAML = "*" @@ -77,9 +74,9 @@ sqlalchemy-migrate = "*" sqlitedict = "*" sqlparse = "*" starlette = "*" -starlette-context = {version = "*", python = ">=3.7"} +starlette-context = "*" svgwrite = "*" -tifffile = "<=2020.9.3" # Last version compatible with python 3.6 +tifffile = "*" tuswsgi = "*" typing-extensions = "*" uvicorn = "*" diff --git a/scripts/check_python.py b/scripts/check_python.py index efb2d3076dc..085f9019122 100644 --- a/scripts/check_python.py +++ b/scripts/check_python.py @@ -7,14 +7,14 @@ import sys def check_python(): - if sys.version_info[:2] >= (3, 6): + if sys.version_info[:2] >= (3, 7): # supported return else: version_string = '.'.join(str(_) for _ in sys.version_info[:3]) msg = """\ ERROR: Your Python version is: %s -Galaxy is currently supported on Python >=3.6 . +Galaxy is currently supported on Python >=3.7 . To run Galaxy, please install a supported Python version. If a supported version is already installed but is not your default, https://docs.galaxyproject.org/en/latest/admin/python.html contains instructions diff --git a/scripts/common_startup.sh b/scripts/common_startup.sh index 2e1f0da05ee..72c22ee5978 100755 --- a/scripts/common_startup.sh +++ b/scripts/common_startup.sh @@ -116,7 +116,7 @@ if [ $SET_VENV -eq 1 ] && [ $CREATE_VENV -eq 1 ]; then echo "Creating Conda environment for Galaxy: $GALAXY_CONDA_ENV" echo "To avoid this, use the --no-create-venv flag or set \$GALAXY_CONDA_ENV to an" echo "existing environment before starting Galaxy." - $CONDA_EXE create --yes --override-channels --channel conda-forge --channel defaults --name "$GALAXY_CONDA_ENV" 'python=3.6' 'pip>=19.0' 'virtualenv>=16' + $CONDA_EXE create --yes --override-channels --channel conda-forge --channel defaults --name "$GALAXY_CONDA_ENV" 'python=3.7' 'pip>=19.0' 'virtualenv>=16' unset __CONDA_INFO fi conda_activate diff --git a/test/unit/webapps/test_request_scoped_sqlalchemy_sessions.py b/test/unit/webapps/test_request_scoped_sqlalchemy_sessions.py index b1632d192fc..6c619059a74 100644 --- a/test/unit/webapps/test_request_scoped_sqlalchemy_sessions.py +++ b/test/unit/webapps/test_request_scoped_sqlalchemy_sessions.py @@ -1,7 +1,6 @@ import asyncio import concurrent.futures import functools -import sys import threading import time import uuid @@ -149,10 +148,7 @@ async def test_request_scoped_sa_session_concurrent_requests_async(): @pytest.mark.asyncio async def test_request_scoped_sa_session_concurrent_requests_and_background_thread(): add_request_id_middleware(app) - if sys.version_info > (3, 6): - loop = asyncio.get_running_loop() - else: - loop = asyncio.get_event_loop() + loop = asyncio.get_running_loop() target = functools.partial(assert_scoped_session_is_thread_local, GX_APP) with concurrent.futures.ThreadPoolExecutor() as pool: background_pool = loop.run_in_executor(pool, target) diff --git a/test/unit/webapps/test_webapp_base.py b/test/unit/webapps/test_webapp_base.py index f799157e329..05f93634be9 100644 --- a/test/unit/webapps/test_webapp_base.py +++ b/test/unit/webapps/test_webapp_base.py @@ -3,7 +3,6 @@ Unit tests for ``galaxy.web.framework.webapp`` """ import logging import re -import sys import unittest import galaxy.config @@ -60,11 +59,7 @@ class GalaxyWebTransaction_Headers_TestCase(unittest.TestCase): hostnames = config._parse_allowed_origin_hostnames({ "allowed_origin_hostnames": r"/host\d{2}/,geocities.com,miskatonic.edu" }) - if sys.version_info >= (3, 7): - Pattern = re.Pattern - else: - Pattern = re._pattern_type - self.assertTrue(isinstance(hostnames[0], Pattern)) + self.assertTrue(isinstance(hostnames[0], re.Pattern)) self.assertTrue(isinstance(hostnames[1], str)) self.assertTrue(isinstance(hostnames[2], str))