mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-01 15:37:32 +08:00
Python 3.8 as new minimum version
Fixes: https://github.com/galaxyproject/galaxy/issues/16394 Also upgrade code to Python 3.8 syntax with: ``` ack --type=python -f | grep -v '^lib/galaxy/schema/bco/\|^lib/galaxy/schema/drs/\|lib/tool_shed_client/schema/trs.*.py\|^tools/\|^.venv/\|^.tox/' | grep -v '^lib/galaxy/files/sources/\|^lib/galaxy/job_metrics/\|^lib/galaxy/objectstore/\|^lib/galaxy/tool_util/\|^lib/galaxy/util/' | xargs pyupgrade --py38-plus ```
This commit is contained in:
committed by
Nicola Soranzo
parent
d31a812a43
commit
c00967cca4
@@ -15,7 +15,7 @@ variables:
|
||||
jobs:
|
||||
get_code:
|
||||
docker:
|
||||
- image: cimg/python:3.7
|
||||
- image: cimg/python:3.8
|
||||
<<: *set_workdir
|
||||
steps:
|
||||
# Replace standard code checkout with shallow clone to speed things up.
|
||||
@@ -73,7 +73,7 @@ jobs:
|
||||
- ~/repo
|
||||
validate_test_tools:
|
||||
docker:
|
||||
- image: cimg/python:3.7
|
||||
- image: cimg/python:3.8
|
||||
<<: *set_workdir
|
||||
steps:
|
||||
- *restore_repo_cache
|
||||
|
||||
@@ -28,7 +28,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python-version: ['3.7']
|
||||
python-version: ['3.8']
|
||||
chunk: [0, 1]
|
||||
services:
|
||||
postgres:
|
||||
|
||||
@@ -11,7 +11,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
python-version: ['3.7']
|
||||
python-version: ['3.8']
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-python@v4
|
||||
|
||||
@@ -22,7 +22,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
python-version: ['3.7']
|
||||
python-version: ['3.8']
|
||||
steps:
|
||||
- if: github.event_name == 'schedule'
|
||||
run: |
|
||||
|
||||
@@ -22,7 +22,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python-version: ['3.7']
|
||||
python-version: ['3.8']
|
||||
marker: ['green', 'red and required', 'red and not required']
|
||||
conformance-version: ['cwl_conformance_v1_0'] #, 'cwl_conformance_v1_1', 'cwl_conformance_v1_2']
|
||||
services:
|
||||
|
||||
@@ -24,11 +24,11 @@ jobs:
|
||||
matrix:
|
||||
db: ['postgresql', 'sqlite']
|
||||
postgresql-version: ['13']
|
||||
python-version: ['3.7']
|
||||
python-version: ['3.8']
|
||||
include:
|
||||
- db: postgresql
|
||||
postgresql-version: '9.6'
|
||||
python-version: '3.7'
|
||||
python-version: '3.8'
|
||||
services:
|
||||
postgres:
|
||||
image: postgres:${{ matrix.postgresql-version }}
|
||||
|
||||
@@ -9,17 +9,12 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
python-version: ['3.7']
|
||||
python-version: ['3.8']
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
# poetry requires Python >=3.8, but lint requirements currently need
|
||||
# to be generated with `pip freeze`` on the oldest Python version
|
||||
# supported by Galaxy.
|
||||
python-version: |
|
||||
${{ matrix.python-version }}
|
||||
3.8
|
||||
python-version: ${{ matrix.python-version }}
|
||||
- name: Update dependencies
|
||||
run: |
|
||||
python -m venv .venv
|
||||
|
||||
@@ -33,7 +33,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
python-version: ['3.7']
|
||||
python-version: ['3.8']
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
|
||||
@@ -16,7 +16,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
python-version: ['3.7']
|
||||
python-version: ['3.8']
|
||||
steps:
|
||||
- name: Get target branch name (push)
|
||||
if: github.event_name == 'push'
|
||||
|
||||
@@ -21,7 +21,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python-version: ['3.7', '3.11']
|
||||
python-version: ['3.8', '3.11']
|
||||
defaults:
|
||||
run:
|
||||
shell: bash -l {0}
|
||||
|
||||
@@ -25,7 +25,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
python-version: ['3.7']
|
||||
python-version: ['3.8']
|
||||
services:
|
||||
postgres:
|
||||
image: postgres:13
|
||||
|
||||
@@ -29,7 +29,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python-version: ['3.7']
|
||||
python-version: ['3.8']
|
||||
chunk: ['0', '1', '2', '3']
|
||||
services:
|
||||
postgres:
|
||||
|
||||
@@ -29,7 +29,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
python-version: ['3.7']
|
||||
python-version: ['3.8']
|
||||
services:
|
||||
postgres:
|
||||
image: postgres:13
|
||||
|
||||
@@ -22,7 +22,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python-version: ['3.7', '3.11']
|
||||
python-version: ['3.8', '3.11']
|
||||
env:
|
||||
LINT_PATH: 'lib/galaxy/dependencies/pinned-lint-requirements.txt'
|
||||
TYPE_PATH: 'lib/galaxy/dependencies/pinned-typecheck-requirements.txt'
|
||||
|
||||
@@ -20,7 +20,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python-version: ['3.7', '3.11']
|
||||
python-version: ['3.8', '3.11']
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
|
||||
@@ -20,7 +20,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python-version: ['3.7']
|
||||
python-version: ['3.8']
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
|
||||
@@ -18,7 +18,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python-version: ['3.7', '3.11']
|
||||
python-version: ['3.8', '3.11']
|
||||
defaults:
|
||||
run:
|
||||
shell: bash -l {0}
|
||||
|
||||
@@ -24,7 +24,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
python-version: ['3.7']
|
||||
python-version: ['3.8']
|
||||
services:
|
||||
postgres:
|
||||
image: postgres:13
|
||||
|
||||
@@ -9,7 +9,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
python-version: ['3.7']
|
||||
python-version: ['3.8']
|
||||
steps:
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
|
||||
@@ -18,7 +18,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python-version: ['3.7', '3.11']
|
||||
python-version: ['3.8', '3.11']
|
||||
defaults:
|
||||
run:
|
||||
shell: bash -l {0}
|
||||
|
||||
@@ -30,7 +30,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python-version: ['3.7']
|
||||
python-version: ['3.8']
|
||||
chunk: [0, 1, 2]
|
||||
services:
|
||||
postgres:
|
||||
|
||||
@@ -18,7 +18,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python-version: ['3.7', '3.11']
|
||||
python-version: ['3.8', '3.11']
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
|
||||
@@ -20,7 +20,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python-version: ['3.7']
|
||||
python-version: ['3.7'] # don't upgrade, see https://github.com/galaxyproject/galaxy/pull/16649
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
|
||||
@@ -21,7 +21,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python-version: ['3.7', '3.11']
|
||||
python-version: ['3.8', '3.11']
|
||||
shed-api: ['v1', 'v2']
|
||||
test-install-client: ['galaxy_api', 'standalone']
|
||||
services:
|
||||
|
||||
@@ -22,7 +22,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python-version: ['3.7']
|
||||
python-version: ['3.8']
|
||||
services:
|
||||
postgres:
|
||||
image: postgres:13
|
||||
|
||||
@@ -20,7 +20,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python-version: ['3.7', '3.11']
|
||||
python-version: ['3.8', '3.11']
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
|
||||
+2
-2
@@ -24,12 +24,12 @@ Community support is available at `Galaxy Help <https://help.galaxyproject.org/>
|
||||
Galaxy Quickstart
|
||||
=================
|
||||
|
||||
Galaxy requires Python 3.7 . To check your Python version, run:
|
||||
Galaxy requires Python 3.8 . To check your Python version, run:
|
||||
|
||||
.. code:: console
|
||||
|
||||
$ python -V
|
||||
Python 3.7.6
|
||||
Python 3.8.18
|
||||
|
||||
Start Galaxy:
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Supported Python versions
|
||||
|
||||
Galaxy's core functionality is currently supported on Python **>=3.7** .
|
||||
Galaxy's core functionality is currently supported on Python **>=3.8** .
|
||||
|
||||
If Galaxy complains about the version of Python you are using:
|
||||
|
||||
|
||||
@@ -52,7 +52,7 @@ index 6647588dfb..c8d82957a1 100644
|
||||
@@ -14,7 +14,7 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python-version: ['3.7']
|
||||
python-version: ['3.8']
|
||||
- subset: ['upload_datatype', 'extended_metadata', 'kubernetes', 'not (upload_datatype or extended_metadata or kubernetes)']
|
||||
+ subset: ['not (upload_datatype or extended_metadata or kubernetes)']
|
||||
services:
|
||||
|
||||
@@ -123,7 +123,7 @@ class MockContext:
|
||||
def __init__(self, model_objects=None):
|
||||
self.expunged_all = False
|
||||
self.flushed = False
|
||||
self.model_objects = model_objects or defaultdict(lambda: {})
|
||||
self.model_objects = model_objects or defaultdict(dict)
|
||||
self.created_objects = []
|
||||
self.current = self
|
||||
|
||||
|
||||
@@ -68,12 +68,12 @@ from galaxy.web.short_term_storage import ShortTermStorageMonitor
|
||||
log = get_logger(__name__)
|
||||
|
||||
|
||||
@lru_cache()
|
||||
@lru_cache
|
||||
def setup_data_table_manager(app):
|
||||
app._configure_tool_data_tables(from_shed_config=False)
|
||||
|
||||
|
||||
@lru_cache()
|
||||
@lru_cache
|
||||
def cached_create_tool_from_representation(app, raw_tool_source):
|
||||
return create_tool_from_representation(
|
||||
app=app, raw_tool_source=raw_tool_source, tool_dir="", tool_source_class="XmlToolSource"
|
||||
|
||||
@@ -6,6 +6,7 @@ import json
|
||||
import logging
|
||||
import os
|
||||
import re
|
||||
import shlex
|
||||
import subprocess
|
||||
import tempfile
|
||||
from typing import (
|
||||
@@ -38,7 +39,6 @@ from galaxy.datatypes.sniff import (
|
||||
)
|
||||
from galaxy.util import (
|
||||
nice_size,
|
||||
shlex_join,
|
||||
string_as_bool,
|
||||
unicodify,
|
||||
)
|
||||
@@ -242,7 +242,7 @@ class Ipynb(Json):
|
||||
ofilename = dataset.get_file_name()
|
||||
log.exception(
|
||||
'Command "%s" failed. Could not convert the Jupyter Notebook to HTML, defaulting to plain text.',
|
||||
shlex_join(cmd),
|
||||
shlex.join(cmd),
|
||||
)
|
||||
return open(ofilename, mode="rb"), headers
|
||||
|
||||
|
||||
@@ -658,9 +658,6 @@ def get_starts_ends_fields_from_gene_bed(line):
|
||||
if len(fields) < 12:
|
||||
raise Exception(f"Not a proper 12 column BED line ({line}).")
|
||||
tx_start = int(fields[1])
|
||||
strand = fields[5]
|
||||
if strand != "-":
|
||||
strand = "+" # Default strand is +
|
||||
cds_start = int(fields[6])
|
||||
cds_end = int(fields[7])
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
set -e
|
||||
|
||||
SUPPORTED_PYTHON_VERSIONS="3.7 3.8 3.9 3.10 3.11"
|
||||
SUPPORTED_PYTHON_VERSIONS="3.8 3.9 3.10 3.11"
|
||||
NOT_SUPPORTED_NEXT_PYTHON_VERSION="3.12"
|
||||
|
||||
this_directory="$(cd "$(dirname "$0")" > /dev/null && pwd)"
|
||||
|
||||
@@ -11,7 +11,7 @@ THIS_DIRECTORY="$(cd "$(dirname "$0")" > /dev/null && pwd)"
|
||||
|
||||
update_pinned_reqs() {
|
||||
VENV=$(mktemp -d "${TMPDIR:-/tmp}/$1_venv.XXXXXXXXXX")
|
||||
python3.7 -m venv "${VENV}"
|
||||
python3.8 -m venv "${VENV}"
|
||||
. "${VENV}/bin/activate"
|
||||
pip install --upgrade pip setuptools
|
||||
pip install -r "${THIS_DIRECTORY}/$1-requirements.txt"
|
||||
|
||||
@@ -409,7 +409,7 @@ class DefaultStrategy(NotificationRecipientResolverStrategy):
|
||||
user_ids_from_roles_stmt = self._get_all_user_ids_from_roles_query(all_role_ids)
|
||||
|
||||
union_stmt = union(user_ids_from_groups_stmt, user_ids_from_roles_stmt)
|
||||
user_ids_from_groups_and_roles = set([id for id, in self.sa_session.execute(union_stmt)])
|
||||
user_ids_from_groups_and_roles = {id for id, in self.sa_session.execute(union_stmt)}
|
||||
unique_user_ids.update(user_ids_from_groups_and_roles)
|
||||
|
||||
stmt = select(User).where(User.id.in_(unique_user_ids))
|
||||
@@ -448,7 +448,7 @@ class DefaultStrategy(NotificationRecipientResolverStrategy):
|
||||
.where(GroupRoleAssociation.role_id.in_(role_ids))
|
||||
.distinct()
|
||||
)
|
||||
group_ids_from_roles = set([id for id, in self.sa_session.execute(stmt) if id is not None])
|
||||
group_ids_from_roles = {id for id, in self.sa_session.execute(stmt) if id is not None}
|
||||
new_group_ids = group_ids_from_roles - processed_group_ids
|
||||
|
||||
# Get role IDs associated with any of the given group IDs
|
||||
@@ -458,7 +458,7 @@ class DefaultStrategy(NotificationRecipientResolverStrategy):
|
||||
.where(GroupRoleAssociation.group_id.in_(group_ids))
|
||||
.distinct()
|
||||
)
|
||||
role_ids_from_groups = set([id for id, in self.sa_session.execute(stmt) if id is not None])
|
||||
role_ids_from_groups = {id for id, in self.sa_session.execute(stmt) if id is not None}
|
||||
new_role_ids = role_ids_from_groups - processed_role_ids
|
||||
|
||||
# Stop if there are no new group or role IDs to process
|
||||
|
||||
@@ -5,6 +5,7 @@ import logging
|
||||
import os
|
||||
import platform
|
||||
import re
|
||||
import shlex
|
||||
import shutil
|
||||
import sys
|
||||
import tempfile
|
||||
@@ -28,7 +29,6 @@ from galaxy.util import (
|
||||
commands,
|
||||
download_to_file,
|
||||
listify,
|
||||
shlex_join,
|
||||
smart_str,
|
||||
which,
|
||||
)
|
||||
@@ -253,7 +253,7 @@ class CondaContext(installable.InstallableContext):
|
||||
env = {}
|
||||
if self.condarc_override:
|
||||
env["CONDARC"] = self.condarc_override
|
||||
cmd_string = shlex_join(cmd)
|
||||
cmd_string = shlex.join(cmd)
|
||||
kwds = dict()
|
||||
try:
|
||||
if stdout_path:
|
||||
|
||||
@@ -12,6 +12,7 @@ Build a mulled image with:
|
||||
import json
|
||||
import logging
|
||||
import os
|
||||
import shlex
|
||||
import shutil
|
||||
import stat
|
||||
import string
|
||||
@@ -38,7 +39,6 @@ from galaxy.util import (
|
||||
commands,
|
||||
download_to_file,
|
||||
safe_makedirs,
|
||||
shlex_join,
|
||||
unicodify,
|
||||
)
|
||||
from ._cli import arg_parser
|
||||
@@ -335,7 +335,7 @@ def mull_targets(
|
||||
involucro_args.insert(6, "-set")
|
||||
involucro_args.insert(7, f"TEST_BINDS={','.join(test_bind)}")
|
||||
cmd = involucro_context.build_command(involucro_args)
|
||||
print(f"Executing: {shlex_join(cmd)}")
|
||||
print(f"Executing: {shlex.join(cmd)}")
|
||||
if dry_run:
|
||||
return 0
|
||||
ensure_installed(involucro_context, True)
|
||||
|
||||
@@ -40,9 +40,6 @@ def main(argv=None):
|
||||
)
|
||||
parser.add_option("--file-sources", type=str, help="file sources json")
|
||||
(options, args) = parser.parse_args(argv)
|
||||
galaxy_version = options.galaxy_version
|
||||
if galaxy_version is None:
|
||||
galaxy_version = "19.05"
|
||||
|
||||
gzip = bool(options.gzip)
|
||||
assert len(args) >= 2
|
||||
|
||||
@@ -13,7 +13,6 @@ import json
|
||||
import os
|
||||
import random
|
||||
import re
|
||||
import shlex
|
||||
import shutil
|
||||
import smtplib
|
||||
import stat
|
||||
@@ -96,14 +95,6 @@ from .path import ( # noqa: F401
|
||||
)
|
||||
from .rst_to_html import rst_to_html # noqa: F401
|
||||
|
||||
try:
|
||||
shlex_join = shlex.join # type: ignore[attr-defined]
|
||||
except AttributeError:
|
||||
# Python < 3.8
|
||||
def shlex_join(split_command):
|
||||
return " ".join(map(shlex.quote, split_command))
|
||||
|
||||
|
||||
inflector = Inflector()
|
||||
|
||||
log = get_logger(__name__)
|
||||
|
||||
@@ -388,7 +388,7 @@ def external_chown(path, pwent, external_chown_script, description="file"):
|
||||
|
||||
cmd = shlex.split(external_chown_script)
|
||||
cmd.extend([path, pwent[0], str(pwent[3])])
|
||||
log.debug(f"Changing ownership of {path} with: '{galaxy.util.shlex_join(cmd)}'")
|
||||
log.debug(f"Changing ownership of {path} with: '{shlex.join(cmd)}'")
|
||||
galaxy.util.commands.execute(cmd)
|
||||
return True
|
||||
except galaxy.util.commands.CommandLineException as e:
|
||||
|
||||
@@ -134,7 +134,7 @@ class NotificationService(ServiceBase):
|
||||
):
|
||||
"""Updates a single notification received by the user with the requested values."""
|
||||
self.notification_manager.ensure_notifications_enabled()
|
||||
updated_response = self.update_user_notifications(user_context, set([notification_id]), request)
|
||||
updated_response = self.update_user_notifications(user_context, {notification_id}, request)
|
||||
if not updated_response.updated_count:
|
||||
self._raise_notification_not_found(notification_id)
|
||||
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -77,7 +76,7 @@ install_requires =
|
||||
WebOb
|
||||
Whoosh
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.entry_points]
|
||||
console_scripts =
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -35,8 +34,8 @@ install_requires =
|
||||
galaxy-data
|
||||
galaxy-util
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.packages.find]
|
||||
exclude =
|
||||
tests*
|
||||
tests*
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -38,7 +37,7 @@ install_requires =
|
||||
pykwalify
|
||||
PyYAML
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.entry_points]
|
||||
console_scripts =
|
||||
@@ -46,4 +45,4 @@ console_scripts =
|
||||
|
||||
[options.packages.find]
|
||||
exclude =
|
||||
tests*
|
||||
tests*
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -61,7 +60,7 @@ install_requires =
|
||||
typing-extensions
|
||||
WebOb
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.entry_points]
|
||||
console_scripts =
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -36,7 +35,7 @@ install_requires =
|
||||
fs
|
||||
typing-extensions
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.packages.find]
|
||||
exclude =
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -40,7 +39,7 @@ install_requires =
|
||||
MarkupSafe
|
||||
SQLAlchemy>=1.4.25,<2
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.entry_points]
|
||||
console_scripts =
|
||||
@@ -49,4 +48,4 @@ console_scripts =
|
||||
|
||||
[options.packages.find]
|
||||
exclude =
|
||||
tests*
|
||||
tests*
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -34,8 +33,8 @@ include_package_data = True
|
||||
install_requires =
|
||||
galaxy-util
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.packages.find]
|
||||
exclude =
|
||||
tests*
|
||||
tests*
|
||||
|
||||
@@ -10,7 +10,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -34,7 +33,7 @@ version = 22.5.0.dev0
|
||||
[options]
|
||||
include_package_data = True
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.extras_require]
|
||||
postgresql =
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -35,8 +34,8 @@ install_requires =
|
||||
galaxy-util
|
||||
PyYAML
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.packages.find]
|
||||
exclude =
|
||||
tests*
|
||||
tests*
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -36,8 +35,8 @@ install_requires =
|
||||
pydantic<2
|
||||
PyYAML
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.packages.find]
|
||||
exclude =
|
||||
tests*
|
||||
tests*
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -34,7 +33,7 @@ install_requires =
|
||||
galaxy-util
|
||||
pydantic[email]
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.packages.find]
|
||||
exclude =
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -39,7 +38,7 @@ install_requires =
|
||||
requests
|
||||
selenium!=4.11.0,!=4.11.1,!=4.11.2
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.entry_points]
|
||||
console_scripts =
|
||||
@@ -47,4 +46,4 @@ console_scripts =
|
||||
|
||||
[options.packages.find]
|
||||
exclude =
|
||||
tests*
|
||||
tests*
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -38,7 +37,7 @@ install_requires =
|
||||
requests
|
||||
tuspy
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.extras_require]
|
||||
driver =
|
||||
@@ -46,4 +45,4 @@ driver =
|
||||
|
||||
[options.packages.find]
|
||||
exclude =
|
||||
tests*
|
||||
tests*
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -41,8 +40,8 @@ install_requires =
|
||||
PyYAML
|
||||
requests
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.packages.find]
|
||||
exclude =
|
||||
tests*
|
||||
tests*
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -43,8 +42,8 @@ install_requires =
|
||||
graphene-sqlalchemy==3.0.0b3 # these are only needed by tool shed - which we've split out but the test driver loads
|
||||
starlette-graphene3
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.packages.find]
|
||||
exclude =
|
||||
tests*
|
||||
tests*
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -43,7 +42,7 @@ install_requires =
|
||||
requests
|
||||
selenium!=4.11.0,!=4.11.1,!=4.11.2
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.extras_require]
|
||||
driver =
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -34,7 +33,7 @@ install_requires =
|
||||
galaxy-web-stack
|
||||
galaxy-web-apps
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.packages.find]
|
||||
exclude =
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -43,7 +42,7 @@ install_requires =
|
||||
sortedcontainers
|
||||
typing-extensions
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.entry_points]
|
||||
console_scripts =
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -36,7 +35,7 @@ install_requires =
|
||||
pydantic<2
|
||||
PyYAML
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.entry_points]
|
||||
console_scripts =
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -44,7 +43,7 @@ install_requires =
|
||||
typing-extensions
|
||||
zipstream-new
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.extras_require]
|
||||
jstree =
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -70,7 +69,7 @@ install_requires =
|
||||
WebOb
|
||||
Whoosh
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.packages.find]
|
||||
exclude =
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -44,7 +43,7 @@ install_requires =
|
||||
WebOb
|
||||
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.packages.find]
|
||||
exclude =
|
||||
|
||||
@@ -9,7 +9,6 @@ classifiers =
|
||||
Natural Language :: English
|
||||
Operating System :: POSIX
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.7
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.9
|
||||
Programming Language :: Python :: 3.10
|
||||
@@ -36,8 +35,8 @@ install_requires =
|
||||
galaxy-util
|
||||
SQLAlchemy>=1.4.25,<2
|
||||
packages = find:
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.packages.find]
|
||||
exclude =
|
||||
tests*
|
||||
tests*
|
||||
|
||||
+6
-5
@@ -1,6 +1,6 @@
|
||||
[tool.black]
|
||||
line-length = 120
|
||||
target-version = ['py37']
|
||||
target-version = ['py38']
|
||||
include = '\.pyi?$'
|
||||
extend-exclude = '''
|
||||
^/(
|
||||
@@ -50,7 +50,7 @@ Cheetah3 = "!=3.2.6.post2" # yanked release, https://github.com/python-poetry/p
|
||||
cloudauthz = "==0.6.0"
|
||||
cloudbridge = "*"
|
||||
circus = "*"
|
||||
cwltool = "==3.1.20221109155812"
|
||||
cwltool = ">=3.1.20221109155812" # TODO: pin to a newer working version
|
||||
conda-package-streaming = "*"
|
||||
dictobj = "*"
|
||||
dnspython = "*"
|
||||
@@ -93,9 +93,9 @@ pydantic = {version = "<2", extras = ["email"]}
|
||||
PyJWT = "*"
|
||||
pykwalify = "*"
|
||||
pylibmagic = "*"
|
||||
pyparsing = "<3.1" # Needed by matplotlib on Python >=3.8 https://github.com/matplotlib/matplotlib/issues/26152
|
||||
pyparsing = "*"
|
||||
pysam = ">=0.21" # for Python 3.11 support on macOS
|
||||
python = ">=3.7,<3.12" # Keep maximum version strict to appease numpy and scipy
|
||||
python = ">=3.8,<3.12" # Keep maximum version strict to appease numpy and scipy
|
||||
python-dateutil = "*"
|
||||
python-magic = "*"
|
||||
python-multipart = "*" # required to support form parsing in FastAPI/Starlette
|
||||
@@ -155,6 +155,7 @@ pytest-postgresql = "!=3.0.0" # https://github.com/ClearcodeHQ/pytest-postgresq
|
||||
pytest-shard = "*"
|
||||
responses = "*"
|
||||
selenium = "*"
|
||||
urllib3 = "<2" # Necessary for poetry for resolve deps for Python 3.8+
|
||||
seletools = "*"
|
||||
Sphinx = ">=4.0" # support docutils 0.17
|
||||
sphinx-rtd-theme = ">=1.0.0,<2" # https://github.com/python-poetry/poetry/issues/8194
|
||||
@@ -184,7 +185,7 @@ types-six = "*"
|
||||
# Enable: pycodestyle errors (E), Pyflakes (F), flake8-bugbear (B),
|
||||
# flake8-logging-format (G) and pyupgrade (UP)
|
||||
select = ["E", "F", "B", "G", "UP"]
|
||||
target-version = "py37"
|
||||
target-version = "py38"
|
||||
# Exceptions:
|
||||
# B008 Do not perform function calls in argument defaults (for FastAPI Depends and Body)
|
||||
# B9 flake8-bugbear opinionated warnings
|
||||
|
||||
@@ -7,7 +7,7 @@ import sys
|
||||
|
||||
|
||||
def check_python():
|
||||
if sys.version_info[:2] >= (3, 7): # noqa: UP036
|
||||
if sys.version_info[:2] >= (3, 8): # noqa: UP036
|
||||
# supported
|
||||
return
|
||||
else:
|
||||
@@ -15,7 +15,7 @@ def check_python():
|
||||
msg = (
|
||||
"""\
|
||||
ERROR: Your Python version is: %s
|
||||
Galaxy is currently supported on Python >=3.7 .
|
||||
Galaxy is currently supported on Python >=3.8 .
|
||||
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
|
||||
|
||||
@@ -14,7 +14,7 @@ SKIP_NODE=${GALAXY_SKIP_NODE:-0}
|
||||
INSTALL_PREBUILT_CLIENT=${GALAXY_INSTALL_PREBUILT_CLIENT:-0}
|
||||
NODE_VERSION=${GALAXY_NODE_VERSION:-"$(cat client/.node_version)"}
|
||||
: "${YARN_INSTALL_OPTS:=--network-timeout 300000 --check-files}"
|
||||
: "${GALAXY_CONDA_PYTHON_VERSION:=3.7}"
|
||||
: "${GALAXY_CONDA_PYTHON_VERSION:=3.8}"
|
||||
|
||||
for arg in "$@"; do
|
||||
if [ "$arg" = "--skip-venv" ]; then
|
||||
@@ -41,7 +41,7 @@ RMFILES="
|
||||
lib/pkg_resources.pyc
|
||||
"
|
||||
|
||||
MIN_PYTHON_VERSION=3.7
|
||||
MIN_PYTHON_VERSION=3.8
|
||||
MIN_PIP_VERSION=20.3
|
||||
|
||||
# return true if $1 is in $2 else false
|
||||
|
||||
@@ -24,7 +24,7 @@ def mock_user_id_task(task_user_id: int):
|
||||
return task_user_id
|
||||
|
||||
|
||||
@lru_cache()
|
||||
@lru_cache
|
||||
def sqlite_url():
|
||||
path = tempfile.NamedTemporaryFile().name
|
||||
dburl = f"sqlite:///{path}"
|
||||
@@ -32,7 +32,7 @@ def sqlite_url():
|
||||
return dburl
|
||||
|
||||
|
||||
@lru_cache()
|
||||
@lru_cache
|
||||
def setup_users(dburl: str, num_users: int = 2):
|
||||
"""
|
||||
Setup test users in galaxy_user table with user id's starting from 2.
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
import collections
|
||||
import json
|
||||
import os
|
||||
import shlex
|
||||
import string
|
||||
import subprocess
|
||||
import tempfile
|
||||
@@ -18,10 +19,7 @@ import pytest
|
||||
from typing_extensions import Literal
|
||||
|
||||
from galaxy.tool_util.verify.wait import timeout_type
|
||||
from galaxy.util import (
|
||||
shlex_join,
|
||||
unicodify,
|
||||
)
|
||||
from galaxy.util import unicodify
|
||||
from galaxy_test.base.populators import (
|
||||
DatasetPopulator,
|
||||
DEFAULT_TIMEOUT,
|
||||
@@ -361,7 +359,7 @@ class TestKubernetesIntegration(BaseJobEnvironmentIntegrationTestCase, MulledJob
|
||||
if allow_wait and "is waiting to start" in p.stderr:
|
||||
return None
|
||||
raise Exception(
|
||||
f"Command '{shlex_join(log_cmd)}' failed with exit code: {p.returncode}.\nstdout: {p.stdout}\nstderr: {p.stderr}"
|
||||
f"Command '{shlex.join(log_cmd)}' failed with exit code: {p.returncode}.\nstdout: {p.stdout}\nstderr: {p.stderr}"
|
||||
)
|
||||
return p.stdout
|
||||
|
||||
|
||||
@@ -276,7 +276,7 @@ class TestUserNotifications(NotificationManagerBaseTestCase):
|
||||
assert user_notification.seen_time is None
|
||||
assert user_notification.deleted is False
|
||||
request = UserNotificationUpdateRequest(seen=True)
|
||||
self.notification_manager.update_user_notifications(user, set([notification.id]), request)
|
||||
self.notification_manager.update_user_notifications(user, {notification.id}, request)
|
||||
user_notification = self.notification_manager.get_user_notification(user, notification.id)
|
||||
assert user_notification.seen_time is not None
|
||||
assert user_notification.deleted is False
|
||||
|
||||
Reference in New Issue
Block a user