From 02a4c0019527ade63e9ef3443491efb293fb693b Mon Sep 17 00:00:00 2001 From: Douglas Cerna Date: Tue, 29 Aug 2023 19:26:55 -0600 Subject: [PATCH] Drop Python 3.6 support * Update pre-commit dependencies * Run pre-commit * Use Python 3.9 in Dockerfile * Update toxenv * Update GitHub workflow * Upgrade requirements * Fix tests * Upgrade osdeps * Add missing rules to jhove migration --- .github/workflows/acceptance-test.yml | 2 + .github/workflows/test.yml | 59 ++---- .pre-commit-config.yaml | 18 +- hack/Dockerfile | 10 +- hack/Makefile | 4 +- hack/docker-compose.tests.yml | 1 + hack/docker-compose.yml | 8 +- hack/submodules/archivematica-storage-service | 2 +- requirements-dev.txt | 171 +++++++++--------- requirements.in | 14 +- requirements.txt | 108 +++++------ .../check_for_access_directory.py | 2 +- .../tests/test_dip_generation_helper.py | 1 - src/MCPClient/tests/test_rights_from_csv.py | 2 - src/MCPServer/lib/server/rpc_server.py | 6 +- src/archivematicaCommon/lib/appconfig.py | 2 +- src/archivematicaCommon/lib/bindpid.py | 2 +- .../lib/custom_handlers.py | 1 - .../lib/env_configparser.py | 12 +- .../lib/externals/HTML/HTML.py | 2 +- .../externals/fiwalk_plugins/pronom_ident.py | 2 +- src/dashboard/osdeps/Ubuntu-20.json | 2 +- src/dashboard/osdeps/Ubuntu-22.json | 2 +- .../administration/migrations/0001_initial.py | 1 - .../migrations/0002_archivesspaceconfig.py | 1 - .../0003_archivesspace_help_text.py | 1 - .../0004_archivesspaceconfig_inherit_notes.py | 1 - ...0005_archivesspace_inherit_note_default.py | 1 - .../migrations/0006_use_statement_optional.py | 1 - .../migrations/0007_delete_unused_models.py | 1 - src/dashboard/src/fpr/forms.py | 1 - .../src/fpr/migrations/0002_initial_data.py | 1 - .../src/fpr/migrations/0003_pronom_84.py | 1 - .../src/fpr/migrations/0004_pronom_88.py | 1 - .../migrations/0005_update_tool_versions.py | 1 - .../src/fpr/migrations/0006_i18n_models.py | 1 - .../migrations/0008_update_django_autoslug.py | 1 - .../src/fpr/migrations/0009_pronom_90.py | 1 - .../fpr/migrations/0010_update_fido_136.py | 1 - .../migrations/0011_mediaconch_validation.py | 1 - .../0012_mediaconch_policy_checks.py | 1 - .../0013_normalization_rules_mov.py | 1 - .../fpr/migrations/0014_fix_fits_command.py | 1 - .../src/fpr/migrations/0015_pronom_92.py | 1 - .../src/fpr/migrations/0016_update_idtools.py | 1 - .../fpr/migrations/0017_ocr_unique_names.py | 1 - .../src/fpr/migrations/0018_slug_unique.py | 1 - .../src/fpr/migrations/0019_fix_gs_command.py | 1 - .../src/fpr/migrations/0020_pronom_93.py | 1 - ...malize_jp2_with_ffmpeg_for_preservation.py | 1 - .../src/fpr/migrations/0022_pronom_94.py | 1 - .../src/fpr/migrations/0023_update_idtools.py | 1 - .../src/fpr/migrations/0024_update_fido.py | 1 - .../fpr/migrations/0025_update_fido_1312.py | 1 - .../migrations/0026_fits_nailgun_compat.py | 1 - .../0027_idcommand_tool_disallow_blank.py | 1 - .../0028_idcommand_unique_enabled.py | 1 - .../0029_update_inkscape_svg_command.py | 1 - .../0031_update_normalization_rules.py | 1 - .../src/fpr/migrations/0032_pronom_96.py | 1 - .../src/fpr/migrations/0033_update_idtools.py | 1 - .../migrations/0034_delete_unused_models.py | 1 - .../src/fpr/migrations/0038_use_uuidfield.py | 1 - .../src/fpr/migrations/0039_django32.py | 1 - .../0040_update_jhove_validation.py | 5 + .../purge_transient_processing_data.py | 1 - .../rebuild_aip_index_from_storage_service.py | 1 - .../commands/reindex_from_remote_cluster.py | 1 - .../commands/resolve_pending_jobs.py | 1 - .../commands/update_elasticsearch_mappings.py | 1 - .../src/main/migrations/0001_initial.py | 1 - .../src/main/migrations/0002_initial_data.py | 1 - ...3_archivesspacedipobjectresourcepairing.py | 1 - ...hivesspacedipobjectresourcepairing_data.py | 1 - .../src/main/migrations/0004_rights.py | 1 - .../src/main/migrations/0005_reingest.py | 1 - .../src/main/migrations/0005_reingest_data.py | 1 - .../migrations/0006_levelofdescription.py | 1 - .../migrations/0007_django_upgrade_tweaks.py | 1 - .../main/migrations/0008_fpcommandoutput.py | 1 - .../src/main/migrations/0009_matching_gui.py | 1 - .../main/migrations/0010_dip_upload_store.py | 1 - .../main/migrations/0011_version_number.py | 1 - .../src/main/migrations/0012_file_id_text.py | 1 - ...0013_upload_archivesspace_inherit_notes.py | 1 - .../src/main/migrations/0014_aic_fixes.py | 1 - .../0015_no_normalize_thumbnails.py | 1 - .../0016_file_currentlocation_nullable.py | 1 - .../main/migrations/0017_update_seigfried.py | 1 - .../0018_archivesspace_sip_arrange.py | 1 - .../migrations/0019_normalization_report.py | 1 - .../0020_index_after_processing_decision.py | 1 - .../migrations/0021_checksum_algorithms.py | 1 - .../main/migrations/0022_email_report_args.py | 1 - .../src/main/migrations/0024_agenttype.py | 1 - .../0025_copyrightstatus_controlled_vocab.py | 1 - .../main/migrations/0026_agent_m2m_event.py | 1 - .../src/main/migrations/0027_full_reingest.py | 1 - .../main/migrations/0028_version_number.py | 1 - .../migrations/0029_backlog_removal_event.py | 1 - .../src/main/migrations/0030_rights_import.py | 1 - .../0031_job_currentstep_choices.py | 1 - .../migrations/0032_dashboardsetting_scope.py | 1 - ..._store_transfer_file_modification_dates.py | 1 - .../migrations/0034_add_readme_to_aips.py | 1 - .../0035_fix_workflow_dip_generation.py | 1 - .../migrations/0036_mediaconch_validation.py | 1 - .../0037_mediaconch_policy_checks.py | 1 - .../migrations/0038_fix_workflow_store_dip.py | 1 - .../0039_delete_sudo_clientscript.py | 2 - .../main/migrations/0040_directory_model.py | 1 - .../src/main/migrations/0041_bind_pids.py | 1 - ...0042_directory_uuids_all_transfer_types.py | 2 - .../0043_remove_create_pointer_file_ms.py | 1 - .../main/migrations/0044_update_idtools.py | 1 - .../0045_archivesspace_config_dict.py | 1 - .../0046_optional_normative_structmap.py | 1 - .../main/migrations/0047_version_number.py | 1 - .../0048_fix_upload_qubit_setting.py | 1 - .../0049_change_pointer_file_filegrpuse.py | 1 - .../0051_remove_verify_premis_checksums.py | 1 - .../0053_remove_mcp_unused_field.py | 1 - .../0054_index_aip_silent_error_branch.py | 1 - .../0056_transfer_access_system_id.py | 1 - .../0058_fix_unit_variable_pull_link.py | 1 - .../migrations/0060_delete_orphan_mscl.py | 1 - .../migrations/0062_atom_upload_exit_code.py | 1 - .../main/migrations/0063_update_idtools.py | 1 - .../migrations/0066_archivesspace_base_url.py | 12 +- .../migrations/0067_delete_workflow_models.py | 1 - .../src/main/migrations/0069_remove_atk.py | 1 - .../src/main/migrations/0070_index_jobs.py | 1 - .../0071_index_unitvariables_runsql.py | 1 - .../src/main/migrations/0072_index_files.py | 1 - .../0075_userprofile_system_emails.py | 1 - .../src/main/migrations/0077_uuid_fields.py | 1 - .../main/migrations/0078_username_check.py | 1 - .../main/migrations/0081_package_status.py | 1 - .../src/main/migrations/0082_use_uuidfield.py | 1 - tox.ini | 1 - 140 files changed, 229 insertions(+), 338 deletions(-) diff --git a/.github/workflows/acceptance-test.yml b/.github/workflows/acceptance-test.yml index 527d67142c..6c44b8f557 100644 --- a/.github/workflows/acceptance-test.yml +++ b/.github/workflows/acceptance-test.yml @@ -43,6 +43,8 @@ jobs: - name: "Build images" run: | make -C hack/ build + env: + PYTHON_VERSION: "3.9" - name: "Start services" run: | docker compose up -d diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index f58f64a093..20bd632f16 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -8,42 +8,24 @@ on: - "stable/**" jobs: test: - name: "Test ${{ matrix.rule }}" + name: "Test ${{ matrix.rule }} on ${{ matrix.python-version }}" runs-on: "ubuntu-22.04" strategy: fail-fast: false matrix: + rule: ["mcp-server", "mcp-client", "dashboard", "archivematica-common"] + python-version: ["3.8", "3.9", "3.10"] include: - - rule: mcp-server - coverage: true - - rule: mcp-client - coverage: true - - rule: dashboard - coverage: true - - rule: archivematica-common - coverage: true - - rule: storage-service - coverage: false - - rule: migrations - coverage: false + - rule: "storage-service" + python-version: "3.9" + - rule: "migrations" + python-version: "3.9" steps: - name: "Check out repository" uses: "actions/checkout@v3" - name: "Check out the archivematica-storage-service submodule" run: | git submodule update --init hack/submodules/archivematica-storage-service/ - - name: "Set up pip cache" - uses: "actions/cache@v3" - with: - path: "~/.cache/pip" - key: "${{ runner.os }}-pip-${{ github.sha }}" - restore-keys: | - ${{ runner.os }}-pip- - - name: "Set up tox cache" - uses: "actions/cache@v3" - with: - path: ./.tox - key: "${{ runner.os }}-tox-${{ matrix.rule }}-${{ hashFiles('**/tox.ini', '**/requirements*.txt', '**/requirements/*.txt') }}" - name: "Set up buildx" uses: "docker/setup-buildx-action@v2" id: buildx @@ -53,9 +35,10 @@ jobs: uses: "actions/cache@v3" with: path: /tmp/.docker-cache-old - key: ${{ runner.os }}-docker-${{ matrix.rule }}-${{ github.sha }} + key: ${{ runner.os }}-docker-${{ matrix.python-version }}-${{ matrix.rule }}-${{ github.sha }} restore-keys: | - ${{ runner.os }}-docker-${{ matrix.rule }}- + ${{ runner.os }}-docker-${{ matrix.python-version }}-${{ matrix.rule }}- + ${{ runner.os }}-docker-${{ matrix.python-version }}- ${{ runner.os }}-docker- - name: "Build archivematica-tests image" uses: "docker/build-push-action@v4" @@ -63,6 +46,8 @@ jobs: context: . file: ./hack/Dockerfile target: archivematica-tests + build-args: | + PYTHON_VERSION=${{ matrix.python-version }} tags: archivematica-tests:latest push: false load: true @@ -72,25 +57,18 @@ jobs: run: | make -C hack/ create-volumes - name: "Run make rule" - if: "! matrix.coverage" - run: | - make -C hack/ test-${{ matrix.rule }} - env: - TOXARGS: -vv - PYTEST_ADDOPTS: -vv - - name: "Run make rule with coverage" - if: "matrix.coverage" run: | make -C hack/ test-${{ matrix.rule }} env: TOXARGS: -vv PYTEST_ADDOPTS: -vv --cov /src/src/ --cov-config=/src/.coveragerc --cov-report xml:/src/coverage.xml + PYTHON_VERSION: ${{ matrix.python-version }} - name: "Upload coverage report" - if: matrix.coverage && github.repository == 'artefactual/archivematica' + if: matrix.rule != 'storage-service' && matrix.rule != 'migrations' && github.repository == 'artefactual/archivematica' uses: "codecov/codecov-action@v3" with: files: ./coverage.xml - fail_ci_if_error: true + fail_ci_if_error: false verbose: true name: ${{ matrix.rule }} - name: "Set newest docker cache" @@ -129,10 +107,13 @@ jobs: steps: - name: "Check out repository" uses: "actions/checkout@v3" - - name: "Set up Python 3.8" + - name: "Set up Python 3.9" uses: "actions/setup-python@v4" with: - python-version: "3.8" + python-version: "3.9" + cache: "pip" + cache-dependency-path: | + requirements-dev.txt - name: "Install tox" run: | python -m pip install --upgrade pip diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 139d699c4f..9c2bbb3c74 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,6 +1,6 @@ repos: - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v2.5.0 + rev: v4.4.0 hooks: - id: pretty-format-json args: [--no-ensure-ascii, --autofix] @@ -10,28 +10,28 @@ repos: src/(MCPClient/MCPServer|dashboard)/osdeps/.*\.json ) - repo: https://github.com/asottile/pyupgrade - rev: v2.31.0 + rev: v3.10.1 hooks: - id: pyupgrade - args: [--py3-plus, --py36-plus] + args: [--py38-plus] - repo: https://github.com/asottile/reorder_python_imports - rev: v2.6.0 + rev: v3.10.0 hooks: - id: reorder-python-imports - args: [--py3-plus, --py36-plus] + args: [--py38-plus] - repo: https://github.com/adamchainz/django-upgrade - rev: "1.14.0" + rev: "1.14.1" hooks: - id: django-upgrade args: [--target-version, "3.2"] -- repo: https://github.com/ambv/black - rev: 22.8.0 +- repo: https://github.com/psf/black + rev: "23.7.0" hooks: - id: black args: [--safe, --quiet] language_version: python3 - repo: https://github.com/pycqa/flake8 - rev: 5.0.4 + rev: "6.1.0" hooks: - id: flake8 language_version: python3 diff --git a/hack/Dockerfile b/hack/Dockerfile index f63656bc22..a94971d187 100644 --- a/hack/Dockerfile +++ b/hack/Dockerfile @@ -4,7 +4,7 @@ FROM ubuntu:22.04 AS base ARG USER_ID=1000 ARG GROUP_ID=1000 -ARG PYTHON_VERSION=3.6 +ARG PYTHON_VERSION=3.9 ENV DEBIAN_FRONTEND noninteractive ENV PYTHONUNBUFFERED 1 @@ -54,7 +54,7 @@ RUN set -ex \ && apt-get update \ && apt-get install -y --no-install-recommends \ libyaml-dev clamav \ - && /src/hack/osdeps.py Ubuntu-22 1 | grep -v -E "nginx|postfix|python3.6-dev" | xargs apt-get install -y --no-install-recommends \ + && /src/hack/osdeps.py Ubuntu-22 1 | grep -v -E "nginx|postfix|python3.9-dev" | xargs apt-get install -y --no-install-recommends \ && rm -rf /var/lib/apt/lists/* # Download ClamAV virus signatures @@ -104,7 +104,7 @@ USER archivematica FROM base AS archivematica-mcp-client -ARG PYTHON_VERSION=3.6 +ARG PYTHON_VERSION=3.9 # Some scripts in archivematica-fpr-admin executed by MCPClient rely on certain # files being available in this image (e.g. see https://git.io/vA1wF). @@ -123,7 +123,7 @@ ENTRYPOINT pyenv exec python${PYTHON_VERSION} /src/src/MCPClient/lib/archivemati FROM base AS archivematica-mcp-server -ARG PYTHON_VERSION=3.6 +ARG PYTHON_VERSION=3.9 ENV DJANGO_SETTINGS_MODULE settings.common ENV PYTHONPATH /src/src/MCPServer/lib/:/src/src/archivematicaCommon/lib/:/src/src/dashboard/src/ @@ -134,7 +134,7 @@ ENTRYPOINT pyenv exec python${PYTHON_VERSION} /src/src/MCPServer/lib/archivemati FROM base AS archivematica-dashboard -ARG PYTHON_VERSION=3.6 +ARG PYTHON_VERSION=3.9 USER root diff --git a/hack/Makefile b/hack/Makefile index efbfdee61d..54c3e5e0b9 100644 --- a/hack/Makefile +++ b/hack/Makefile @@ -11,6 +11,7 @@ SRCDIR := $(abspath $(dir $(lastword $(MAKEFILE_LIST)))/../src) NULL := SPACE := $(NULL) $(NULL) +COMMA := , define compose_all docker compose -f docker-compose.yml -f docker-compose.acceptance-tests.yml -f docker-compose.pmm.yml $(1) @@ -34,7 +35,7 @@ define run_toxenvs --rm \ --entrypoint tox \ archivematica-tests \ - $(subst $(SPACE), -e ,$(SPACE)$(1)) \ + -e $(subst $(SPACE),$(COMMA),$(strip $(1))) \ ${TOXARGS}) endef @@ -235,6 +236,7 @@ test-build: ## Build archivematica-tests image. -t archivematica-tests \ -f $(CURDIR)/Dockerfile \ --build-arg TARGET=archivematica-tests \ + --build-arg PYTHON_VERSION=${PYTHON_VERSION} \ ../ __TOXENVS_MCPSERVER := mcp-server diff --git a/hack/docker-compose.tests.yml b/hack/docker-compose.tests.yml index 0ca4304e0e..a31366af9b 100644 --- a/hack/docker-compose.tests.yml +++ b/hack/docker-compose.tests.yml @@ -8,6 +8,7 @@ services: dockerfile: "hack/Dockerfile" args: TARGET: "archivematica-tests" + PYTHON_VERSION: ${PYTHON_VERSION:-3.9} volumes: - "../:/src" links: diff --git a/hack/docker-compose.yml b/hack/docker-compose.yml index cdf7d90ca3..fc6913b7b0 100644 --- a/hack/docker-compose.yml +++ b/hack/docker-compose.yml @@ -109,7 +109,7 @@ services: TARGET: "archivematica-mcp-server" USER_ID: ${USER_ID:-1000} GROUP_ID: ${GROUP_ID:-1000} - PYTHON_VERSION: ${PYTHON_VERSION:-3.6} + PYTHON_VERSION: ${PYTHON_VERSION:-3.9} environment: DJANGO_SECRET_KEY: "12345" DJANGO_SETTINGS_MODULE: "settings.common" @@ -136,7 +136,7 @@ services: TARGET: "archivematica-mcp-client" USER_ID: ${USER_ID:-1000} GROUP_ID: ${GROUP_ID:-1000} - PYTHON_VERSION: ${PYTHON_VERSION:-3.6} + PYTHON_VERSION: ${PYTHON_VERSION:-3.9} environment: DJANGO_SECRET_KEY: "12345" DJANGO_SETTINGS_MODULE: "settings.common" @@ -178,7 +178,7 @@ services: TARGET: "archivematica-dashboard" USER_ID: ${USER_ID:-1000} GROUP_ID: ${GROUP_ID:-1000} - PYTHON_VERSION: ${PYTHON_VERSION:-3.6} + PYTHON_VERSION: ${PYTHON_VERSION:-3.9} environment: FORWARDED_ALLOW_IPS: "*" AM_GUNICORN_ACCESSLOG: "/dev/null" @@ -213,7 +213,7 @@ services: TARGET: "archivematica-storage-service" USER_ID: ${USER_ID:-1000} GROUP_ID: ${GROUP_ID:-1000} - PYTHON_VERSION: ${PYTHON_VERSION:-3.6} + PYTHON_VERSION: ${PYTHON_VERSION:-3.9} environment: FORWARDED_ALLOW_IPS: "*" SS_GUNICORN_ACCESSLOG: "/dev/null" diff --git a/hack/submodules/archivematica-storage-service b/hack/submodules/archivematica-storage-service index 747bd89e34..ea8d771847 160000 --- a/hack/submodules/archivematica-storage-service +++ b/hack/submodules/archivematica-storage-service @@ -1 +1 @@ -Subproject commit 747bd89e34ffc3bd2218176fce812779b48af2fa +Subproject commit ea8d7718476ed762ad1899a6f9bdbb1f6ffbfee3 diff --git a/requirements-dev.txt b/requirements-dev.txt index 8b5fd510fe..1c06b08cff 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -1,28 +1,34 @@ # -# This file is autogenerated by pip-compile with python 3.6 -# To update, run: +# This file is autogenerated by pip-compile with Python 3.9 +# by the following command: # # pip-compile --allow-unsafe --output-file=requirements-dev.txt requirements-dev.in # -agentarchives==0.7.0 +agentarchives==0.8.0 # via -r requirements.txt amclient==1.2.3 # via -r requirements.txt ammcpc==0.1.3 # via -r requirements.txt -asgiref==3.4.1 +asgiref==3.7.2 # via # -r requirements.txt # django -attrs==22.2.0 +attrs==23.1.0 # via # -r requirements.txt # jsonschema - # pytest + # referencing bagit==1.8.1 # via -r requirements.txt brotli==1.0.9 # via -r requirements.txt +build==0.10.0 + # via + # -r requirements.txt + # pip-tools +cachetools==5.3.1 + # via tox certifi==2023.7.22 # via # -r requirements.txt @@ -31,21 +37,25 @@ cffi==1.15.1 # via # -r requirements.txt # cryptography -charset-normalizer==2.0.12 +chardet==5.2.0 + # via tox +charset-normalizer==3.2.0 # via # -r requirements.txt # requests clamd==1.0.2 # via -r requirements.txt -click==8.0.4 +click==8.1.7 # via # -r requirements.txt # pip-tools -coverage[toml]==6.2 +colorama==0.4.6 + # via tox +coverage[toml]==7.3.0 # via # -r requirements-dev.in # pytest-cov -cryptography==40.0.2 +cryptography==41.0.3 # via # -r requirements.txt # josepy @@ -60,7 +70,7 @@ django==3.2.20 # django-cas-ng # django-csp # mozilla-django-oidc -django-auth-ldap==4.0.0 +django-auth-ldap==4.5.0 # via -r requirements.txt django-autoslug==1.9.9 # via -r requirements.txt @@ -70,7 +80,7 @@ django-csp==3.7 # via -r requirements.txt django-forms-bootstrap==3.1.0 # via -r requirements.txt -django-prometheus==2.2.0 +django-prometheus==2.3.1 # via -r requirements.txt django-shibboleth-remoteuser @ git+https://github.com/Brown-University-Library/django-shibboleth-remoteuser.git@962f6f9818683ef5f6432f091d22945e54b82592 # via -r requirements.txt @@ -78,15 +88,17 @@ django-tastypie==0.14.5 # via -r requirements.txt elasticsearch==6.8.2 # via -r requirements.txt -filelock==3.4.1 +exceptiongroup==1.1.3 + # via pytest +filelock==3.12.3 # via # tox # virtualenv -funcparserlib==1.0.0a0 +funcparserlib==1.0.1 # via mockldap -gearman3==0.2.1 +gearman3 @ git+https://github.com/artefactual-labs/python-gearman.git@b68efc868c7a494dd6a2d2e820fb098a6da9f797 # via -r requirements.txt -gevent==22.10.2 +gevent==23.7.0 # via -r requirements.txt greenlet==2.0.2 # via @@ -99,24 +111,15 @@ idna==3.4 # -r requirements.txt # requests # yarl -importlib-metadata==4.8.3 +importlib-metadata==6.8.0 # via # -r requirements.txt - # click - # gunicorn - # jsonschema - # pep517 - # pluggy - # pytest # pytest-randomly - # tox - # virtualenv -importlib-resources==5.4.0 +importlib-resources==6.0.1 # via # -r requirements.txt # opf-fido - # virtualenv -iniconfig==1.1.1 +iniconfig==2.0.0 # via pytest inotify-simple==1.3.5 # via -r requirements.txt @@ -124,8 +127,12 @@ josepy==1.13.0 # via # -r requirements.txt # mozilla-django-oidc -jsonschema==3.2.0 +jsonschema==4.19.0 # via -r requirements.txt +jsonschema-specifications==2023.7.1 + # via + # -r requirements.txt + # jsonschema lazy-paged-sequence==0.3 # via -r requirements.txt lxml==4.9.3 @@ -138,11 +145,11 @@ metsrw==0.4.0 # via -r requirements.txt mockldap @ git+https://github.com/artefactual-labs/mockldap@v0.3.1 # via -r requirements-dev.in -mozilla-django-oidc==2.0.0 +mozilla-django-oidc==3.0.0 # via -r requirements.txt -multidict==5.2.0 +multidict==6.0.4 # via yarl -mysqlclient==1.4.6 +mysqlclient==2.2.0 # via # -r requirements.txt # agentarchives @@ -152,21 +159,21 @@ olefile==0.46 # opf-fido opf-fido==1.6.1 # via -r requirements.txt -packaging==21.3 +packaging==23.1 # via # -r requirements.txt + # build # gunicorn + # pyproject-api # pytest # tox -pep517==0.13.0 - # via - # -r requirements.txt - # pip-tools -pip-tools==6.4.0 +pip-tools==7.3.0 # via -r requirements.txt -platformdirs==2.4.0 - # via virtualenv -pluggy==1.0.0 +platformdirs==3.10.0 + # via + # tox + # virtualenv +pluggy==1.3.0 # via # pytest # tox @@ -174,10 +181,6 @@ prometheus-client==0.17.1 # via # -r requirements.txt # django-prometheus -py==1.11.0 - # via - # pytest - # tox pyasn1==0.5.0 # via # -r requirements.txt @@ -195,28 +198,26 @@ pyopenssl==23.2.0 # via # -r requirements.txt # josepy -pyparsing==3.1.1 - # via - # -r requirements.txt - # packaging -pyrsistent==0.18.0 +pyproject-api==1.5.4 + # via tox +pyproject-hooks==1.0.0 # via # -r requirements.txt - # jsonschema -pytest==7.0.1 + # build +pytest==7.4.0 # via # -r requirements-dev.in # pytest-cov # pytest-django # pytest-mock # pytest-randomly -pytest-cov==4.0.0 +pytest-cov==4.1.0 # via -r requirements-dev.in pytest-django==4.5.2 # via -r requirements-dev.in -pytest-mock==3.6.1 +pytest-mock==3.11.1 # via -r requirements-dev.in -pytest-randomly==3.10.3 +pytest-randomly==3.15.0 # via -r requirements-dev.in python-cas==1.6.0 # via @@ -241,7 +242,12 @@ pytz==2023.3 # django pyyaml==6.0.1 # via vcrpy -requests==2.27.1 +referencing==0.30.2 + # via + # -r requirements.txt + # jsonschema + # jsonschema-specifications +requests==2.31.0 # via # -r requirements.txt # agentarchives @@ -249,36 +255,39 @@ requests==2.27.1 # mozilla-django-oidc # opf-fido # python-cas +rpds-py==0.10.0 + # via + # -r requirements.txt + # jsonschema + # referencing six==1.16.0 # via # -r requirements.txt # amclient - # jsonschema # opf-fido # python-cas # python-dateutil - # tox - # vcrpy sqlparse==0.4.4 # via # -r requirements.txt # django -toml==0.10.2 - # via tox -tomli==1.2.3 +tomli==2.0.1 # via # -r requirements.txt + # build # coverage - # pep517 + # pip-tools + # pyproject-api + # pyproject-hooks # pytest -tox==3.28.0 + # tox +tox==4.10.0 # via -r requirements-dev.in -typing-extensions==4.1.1 +typing-extensions==4.7.1 # via # -r requirements.txt # asgiref - # importlib-metadata - # yarl + # filelock unidecode==1.3.6 # via -r requirements.txt urllib3==1.26.16 @@ -287,46 +296,44 @@ urllib3==1.26.16 # amclient # elasticsearch # requests -vcrpy==4.1.1 + # vcrpy +vcrpy==5.1.0 # via -r requirements-dev.in -virtualenv==20.17.1 +virtualenv==20.24.3 # via tox -wheel==0.37.1 +wheel==0.41.2 # via # -r requirements.txt # pip-tools -whitenoise==5.3.0 +whitenoise==6.5.0 # via -r requirements.txt wrapt==1.15.0 # via vcrpy -yarl==1.7.2 +yarl==1.9.2 # via vcrpy -zipp==3.6.0 +zipp==3.16.2 # via # -r requirements.txt # importlib-metadata # importlib-resources - # pep517 -zope.event==4.6 +zope-event==5.0 # via # -r requirements.txt # gevent -zope.interface==5.5.2 +zope-interface==6.0 # via # -r requirements.txt # gevent # The following packages are considered to be unsafe in a requirements file: -pip==21.3.1 +pip==23.2.1 # via # -r requirements.txt # pip-tools -setuptools==59.6.0 +setuptools==68.1.2 # via # -r requirements.txt - # gevent # josepy - # jsonschema # pip-tools - # zope.event - # zope.interface + # zope-event + # zope-interface diff --git a/requirements.in b/requirements.in index 012eeccf8f..14287ca22b 100644 --- a/requirements.in +++ b/requirements.in @@ -9,10 +9,11 @@ clamd django-autoslug django-csp django-forms-bootstrap -django-prometheus>=2.2,<2.3 +django-prometheus>=2.2,<2.3; python_version == "3.6" +django-prometheus django-tastypie elasticsearch>=6.0.0,<7.0.0 -gearman3 +git+https://github.com/artefactual-labs/python-gearman.git@b68efc868c7a494dd6a2d2e820fb098a6da9f797#egg=gearman3 gevent gunicorn importlib-metadata @@ -27,9 +28,11 @@ pip pip-tools prometheus_client python-dateutil -requests~=2.27 +requests~=2.27; python_version == "3.6" +requests unidecode -whitenoise>=5.3.0,<6.0 +whitenoise>=5.3.0,<6.0; python_version == "3.6" +whitenoise # Required by LDAP authentication django-auth-ldap @@ -39,4 +42,5 @@ python-ldap django-cas-ng # Required for OpenID Connect authentication -mozilla-django-oidc~=2.0 +mozilla-django-oidc~=2.0; python_version == "3.6" +mozilla-django-oidc diff --git a/requirements.txt b/requirements.txt index 279d7fc46c..bb9172f0f8 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,34 +1,38 @@ # -# This file is autogenerated by pip-compile with python 3.6 -# To update, run: +# This file is autogenerated by pip-compile with Python 3.9 +# by the following command: # # pip-compile --allow-unsafe --output-file=requirements.txt requirements.in # -agentarchives==0.7.0 +agentarchives==0.8.0 # via -r requirements.in amclient==1.2.3 # via -r requirements.in ammcpc==0.1.3 # via -r requirements.in -asgiref==3.4.1 +asgiref==3.7.2 # via django -attrs==22.2.0 - # via jsonschema +attrs==23.1.0 + # via + # jsonschema + # referencing bagit==1.8.1 # via -r requirements.in brotli==1.0.9 # via -r requirements.in +build==0.10.0 + # via pip-tools certifi==2023.7.22 # via requests cffi==1.15.1 # via cryptography -charset-normalizer==2.0.12 +charset-normalizer==3.2.0 # via requests clamd==1.0.2 # via -r requirements.in -click==8.0.4 +click==8.1.7 # via pip-tools -cryptography==40.0.2 +cryptography==41.0.3 # via # josepy # mozilla-django-oidc @@ -40,7 +44,7 @@ django==3.2.20 # django-cas-ng # django-csp # mozilla-django-oidc -django-auth-ldap==4.0.0 +django-auth-ldap==4.5.0 # via -r requirements.in django-autoslug==1.9.9 # via -r requirements.in @@ -50,7 +54,7 @@ django-csp==3.7 # via -r requirements.in django-forms-bootstrap==3.1.0 # via -r requirements.in -django-prometheus==2.2.0 +django-prometheus==2.3.1 # via -r requirements.in django-shibboleth-remoteuser @ git+https://github.com/Brown-University-Library/django-shibboleth-remoteuser.git@962f6f9818683ef5f6432f091d22945e54b82592 # via -r requirements.in @@ -58,9 +62,9 @@ django-tastypie==0.14.5 # via -r requirements.in elasticsearch==6.8.2 # via -r requirements.in -gearman3==0.2.1 +gearman3 @ git+https://github.com/artefactual-labs/python-gearman.git@b68efc868c7a494dd6a2d2e820fb098a6da9f797 # via -r requirements.in -gevent==22.10.2 +gevent==23.7.0 # via -r requirements.in greenlet==2.0.2 # via gevent @@ -68,21 +72,18 @@ gunicorn==21.2.0 # via -r requirements.in idna==3.4 # via requests -importlib-metadata==4.8.3 - # via - # -r requirements.in - # click - # gunicorn - # jsonschema - # pep517 -importlib-resources==5.4.0 +importlib-metadata==6.8.0 + # via -r requirements.in +importlib-resources==6.0.1 # via opf-fido inotify-simple==1.3.5 # via -r requirements.in josepy==1.13.0 # via mozilla-django-oidc -jsonschema==3.2.0 +jsonschema==4.19.0 # via -r requirements.in +jsonschema-specifications==2023.7.1 + # via jsonschema lazy-paged-sequence==0.3 # via -r requirements.in lxml==4.9.3 @@ -93,9 +94,9 @@ lxml==4.9.3 # python-cas metsrw==0.4.0 # via -r requirements.in -mozilla-django-oidc==2.0.0 +mozilla-django-oidc==3.0.0 # via -r requirements.in -mysqlclient==1.4.6 +mysqlclient==2.2.0 # via # -r requirements.in # agentarchives @@ -103,11 +104,11 @@ olefile==0.46 # via opf-fido opf-fido==1.6.1 # via -r requirements.in -packaging==21.3 - # via gunicorn -pep517==0.13.0 - # via pip-tools -pip-tools==6.4.0 +packaging==23.1 + # via + # build + # gunicorn +pip-tools==7.3.0 # via -r requirements.in prometheus-client==0.17.1 # via @@ -123,10 +124,8 @@ pycparser==2.21 # via cffi pyopenssl==23.2.0 # via josepy -pyparsing==3.1.1 - # via packaging -pyrsistent==0.18.0 - # via jsonschema +pyproject-hooks==1.0.0 + # via build python-cas==1.6.0 # via django-cas-ng python-dateutil==2.8.2 @@ -141,7 +140,11 @@ python-mimeparse==1.6.0 # via django-tastypie pytz==2023.3 # via django -requests==2.27.1 +referencing==0.30.2 + # via + # jsonschema + # jsonschema-specifications +requests==2.31.0 # via # -r requirements.in # agentarchives @@ -149,21 +152,25 @@ requests==2.27.1 # mozilla-django-oidc # opf-fido # python-cas +rpds-py==0.10.0 + # via + # jsonschema + # referencing six==1.16.0 # via # amclient - # jsonschema # opf-fido # python-cas # python-dateutil sqlparse==0.4.4 # via django -tomli==1.2.3 - # via pep517 -typing-extensions==4.1.1 +tomli==2.0.1 # via - # asgiref - # importlib-metadata + # build + # pip-tools + # pyproject-hooks +typing-extensions==4.7.1 + # via asgiref unidecode==1.3.6 # via -r requirements.in urllib3==1.26.16 @@ -171,30 +178,27 @@ urllib3==1.26.16 # amclient # elasticsearch # requests -wheel==0.37.1 +wheel==0.41.2 # via pip-tools -whitenoise==5.3.0 +whitenoise==6.5.0 # via -r requirements.in -zipp==3.6.0 +zipp==3.16.2 # via # importlib-metadata # importlib-resources - # pep517 -zope.event==4.6 +zope-event==5.0 # via gevent -zope.interface==5.5.2 +zope-interface==6.0 # via gevent # The following packages are considered to be unsafe in a requirements file: -pip==21.3.1 +pip==23.2.1 # via # -r requirements.in # pip-tools -setuptools==59.6.0 +setuptools==68.1.2 # via - # gevent # josepy - # jsonschema # pip-tools - # zope.event - # zope.interface + # zope-event + # zope-interface diff --git a/src/MCPClient/lib/clientScripts/check_for_access_directory.py b/src/MCPClient/lib/clientScripts/check_for_access_directory.py index dd670408ac..44a17f0f74 100755 --- a/src/MCPClient/lib/clientScripts/check_for_access_directory.py +++ b/src/MCPClient/lib/clientScripts/check_for_access_directory.py @@ -49,7 +49,7 @@ def something( exitCode = 179 job.pyprint(SIPDirectory) # For every file, & directory Try to find the matching file & directory in the objects directory - for (path, dirs, files) in os.walk(accessDirectory): + for path, dirs, files in os.walk(accessDirectory): for file in files: accessPath = os.path.join(path, file) objectPath = accessPath.replace(accessDirectory, objectsDirectory, 1) diff --git a/src/MCPClient/tests/test_dip_generation_helper.py b/src/MCPClient/tests/test_dip_generation_helper.py index fe94606a32..f0ba76ac84 100644 --- a/src/MCPClient/tests/test_dip_generation_helper.py +++ b/src/MCPClient/tests/test_dip_generation_helper.py @@ -11,7 +11,6 @@ class TestParseArchivesSpaceIDs(TestCase): - fixture_files = ["sip.json", "files.json", "archivesspaceconfig.json"] sip_uuid = "4060ee97-9c3f-4822-afaf-ebdf838284c3" fixtures = [os.path.join(THIS_DIR, "fixtures", p) for p in fixture_files] diff --git a/src/MCPClient/tests/test_rights_from_csv.py b/src/MCPClient/tests/test_rights_from_csv.py index 613ce3264a..d0a29d8e52 100644 --- a/src/MCPClient/tests/test_rights_from_csv.py +++ b/src/MCPClient/tests/test_rights_from_csv.py @@ -11,7 +11,6 @@ class TestRightsImportFromCsvBase(TestCase): - transfer_uuid = "e95ab50f-9c84-45d5-a3ca-1b0b3f58d9b6" # UUID of transfer created by transfer.json file_1_uuid = "47813453-6872-442b-9d65-6515be3c5aa1" # UUID of first file created by files-transfer.json fixture file_2_uuid = "60e5c61b-14ef-4e92-89ec-9b9201e68adb" # UUID of second file created by files-transfer.json fixture @@ -388,7 +387,6 @@ def test_rows_processed_and_database_content(self): class TestRightsImportFromCsvWithUnicode(TestRightsImportFromCsvBase): - fixture_files = [ "metadata_applies_to_type.json", "transfer.json", diff --git a/src/MCPServer/lib/server/rpc_server.py b/src/MCPServer/lib/server/rpc_server.py index 486f0a1e09..f9e6fb9bca 100644 --- a/src/MCPServer/lib/server/rpc_server.py +++ b/src/MCPServer/lib/server/rpc_server.py @@ -148,8 +148,8 @@ def _get_ability_details(self, handler): config = match.group("config") except IndexError: raise err - parser = configparser.SafeConfigParser({"name": None, "raise_exc": False}) - parser.readfp(StringIO(config)) + parser = configparser.RawConfigParser({"name": None, "raise_exc": False}) + parser.read_file(StringIO(config)) name = parser.get("config", "name") if name is None: raise ValueError( @@ -159,7 +159,7 @@ def _get_ability_details(self, handler): name, { "raise_exc": parser.getboolean("config", "raise_exc"), - "expect_payload": "payload" in inspect.getargspec(handler).args, + "expect_payload": "payload" in inspect.getfullargspec(handler).args, }, ) diff --git a/src/archivematicaCommon/lib/appconfig.py b/src/archivematicaCommon/lib/appconfig.py index 2a544732fd..1e95f8949a 100644 --- a/src/archivematicaCommon/lib/appconfig.py +++ b/src/archivematicaCommon/lib/appconfig.py @@ -35,7 +35,7 @@ def __init__(self, env_prefix, attrs): UNDEFINED_ATTR_MSG = "The following configuration attribute must be defined: %s." def read_defaults(self, fp): - self.config.readfp(fp) + self.config.read_file(fp) def read_files(self, files): self.config.read(files) diff --git a/src/archivematicaCommon/lib/bindpid.py b/src/archivematicaCommon/lib/bindpid.py index 39b0ba8885..ae0ac305c0 100755 --- a/src/archivematicaCommon/lib/bindpid.py +++ b/src/archivematicaCommon/lib/bindpid.py @@ -526,7 +526,7 @@ def _parse_config(args): if not os.path.isfile(cf): print(f"Warning: there is no config file at {cf}") return {} - config = configparser.SafeConfigParser() + config = configparser.RawConfigParser() with open(cf) as filei: try: config.read_file(filei) diff --git a/src/archivematicaCommon/lib/custom_handlers.py b/src/archivematicaCommon/lib/custom_handlers.py index 1f1822cfab..999d980c9a 100644 --- a/src/archivematicaCommon/lib/custom_handlers.py +++ b/src/archivematicaCommon/lib/custom_handlers.py @@ -37,7 +37,6 @@ def emit(self, record): def get_script_logger( name, formatter=SCRIPT_FILE_FORMAT, root="archivematica", level=logging.INFO ): - logging_config = { "version": 1, "disable_existing_loggers": False, diff --git a/src/archivematicaCommon/lib/env_configparser.py b/src/archivematicaCommon/lib/env_configparser.py index 2d6d7d6467..e8451f95ef 100644 --- a/src/archivematicaCommon/lib/env_configparser.py +++ b/src/archivematicaCommon/lib/env_configparser.py @@ -16,7 +16,7 @@ def wrapper(*args, **kwargs): return functools.wraps(fn)(wrapper) -class EnvConfigParser(configparser.SafeConfigParser): +class EnvConfigParser(configparser.RawConfigParser): """ EnvConfigParser enables the user to provide configuration defaults using the string environment, e.g. given: @@ -46,7 +46,7 @@ def __init__(self, defaults=None, env=None, prefix=""): self._prefix = prefix.rstrip("_") kwargs = {} kwargs["inline_comment_prefixes"] = (";",) - configparser.SafeConfigParser.__init__(self, defaults, **kwargs) + super().__init__(defaults, **kwargs) def _get_envvar(self, section, option): for key in ( @@ -61,19 +61,19 @@ def get(self, section, option, **kwargs): ret = self._get_envvar(section, option) if ret: return ret - return configparser.SafeConfigParser.get(self, section, option, **kwargs) + return super().get(section, option, **kwargs) @fallback_option def getint(self, *args, **kwargs): - return configparser.SafeConfigParser.getint(self, *args, **kwargs) + return super().getint(*args, **kwargs) @fallback_option def getfloat(self, *args, **kwargs): - return configparser.SafeConfigParser.getfloat(self, *args, **kwargs) + return super().getfloat(*args, **kwargs) @fallback_option def getboolean(self, *args, **kwargs): - return configparser.SafeConfigParser.getboolean(self, *args, **kwargs) + return super().getboolean(*args, **kwargs) @fallback_option def getiboolean(self, *args, **kwargs): diff --git a/src/archivematicaCommon/lib/externals/HTML/HTML.py b/src/archivematicaCommon/lib/externals/HTML/HTML.py index 6270936390..a8e9d23048 100755 --- a/src/archivematicaCommon/lib/externals/HTML/HTML.py +++ b/src/archivematicaCommon/lib/externals/HTML/HTML.py @@ -406,6 +406,7 @@ def __str__(self): # == FUNCTIONS =============================================================== + # much simpler definition of a link as a function: def Link(text, url): return f'{text}' @@ -430,7 +431,6 @@ def list(*args, **kwargs): # Show sample usage when this file is launched as a script. if __name__ == "__main__": - # open an HTML file to show output in a browser f = open("test.html", "w") diff --git a/src/archivematicaCommon/lib/externals/fiwalk_plugins/pronom_ident.py b/src/archivematicaCommon/lib/externals/fiwalk_plugins/pronom_ident.py index b6efab6fdf..588a542d85 100755 --- a/src/archivematicaCommon/lib/externals/fiwalk_plugins/pronom_ident.py +++ b/src/archivematicaCommon/lib/externals/fiwalk_plugins/pronom_ident.py @@ -59,7 +59,7 @@ def parse_matches(self, fullname, matches, delta_t, matchtype=""): out["pronomMatchType"] = "fail" else: i = 0 - for (f, s) in matches: + for f, s in matches: i += 1 out["pronomMatchType"] = matchtype out["pronomPuid"] = self.get_puid(f) diff --git a/src/dashboard/osdeps/Ubuntu-20.json b/src/dashboard/osdeps/Ubuntu-20.json index 93abc803ab..3db06c4516 100644 --- a/src/dashboard/osdeps/Ubuntu-20.json +++ b/src/dashboard/osdeps/Ubuntu-20.json @@ -38,7 +38,7 @@ "state": "latest" }, { - "name": "python3.6-dev", + "name": "python3.9-dev", "state": "latest" }, { diff --git a/src/dashboard/osdeps/Ubuntu-22.json b/src/dashboard/osdeps/Ubuntu-22.json index 93abc803ab..3db06c4516 100644 --- a/src/dashboard/osdeps/Ubuntu-22.json +++ b/src/dashboard/osdeps/Ubuntu-22.json @@ -38,7 +38,7 @@ "state": "latest" }, { - "name": "python3.6-dev", + "name": "python3.9-dev", "state": "latest" }, { diff --git a/src/dashboard/src/components/administration/migrations/0001_initial.py b/src/dashboard/src/components/administration/migrations/0001_initial.py index 390e63cdcd..f0ecb010f0 100644 --- a/src/dashboard/src/components/administration/migrations/0001_initial.py +++ b/src/dashboard/src/components/administration/migrations/0001_initial.py @@ -6,7 +6,6 @@ class Migration(migrations.Migration): - dependencies = [] operations = [ diff --git a/src/dashboard/src/components/administration/migrations/0002_archivesspaceconfig.py b/src/dashboard/src/components/administration/migrations/0002_archivesspaceconfig.py index 76ec39c46e..28427dfa89 100644 --- a/src/dashboard/src/components/administration/migrations/0002_archivesspaceconfig.py +++ b/src/dashboard/src/components/administration/migrations/0002_archivesspaceconfig.py @@ -15,7 +15,6 @@ def insert_data(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("administration", "0001_initial")] operations = [ diff --git a/src/dashboard/src/components/administration/migrations/0003_archivesspace_help_text.py b/src/dashboard/src/components/administration/migrations/0003_archivesspace_help_text.py index c2e78ebd91..9d677a5459 100644 --- a/src/dashboard/src/components/administration/migrations/0003_archivesspace_help_text.py +++ b/src/dashboard/src/components/administration/migrations/0003_archivesspace_help_text.py @@ -3,7 +3,6 @@ class Migration(migrations.Migration): - dependencies = [("administration", "0002_archivesspaceconfig")] operations = [ diff --git a/src/dashboard/src/components/administration/migrations/0004_archivesspaceconfig_inherit_notes.py b/src/dashboard/src/components/administration/migrations/0004_archivesspaceconfig_inherit_notes.py index bfe2322712..a6d254d9b9 100644 --- a/src/dashboard/src/components/administration/migrations/0004_archivesspaceconfig_inherit_notes.py +++ b/src/dashboard/src/components/administration/migrations/0004_archivesspaceconfig_inherit_notes.py @@ -3,7 +3,6 @@ class Migration(migrations.Migration): - dependencies = [("administration", "0003_archivesspace_help_text")] operations = [ diff --git a/src/dashboard/src/components/administration/migrations/0005_archivesspace_inherit_note_default.py b/src/dashboard/src/components/administration/migrations/0005_archivesspace_inherit_note_default.py index 885acbc594..12bff10cf6 100644 --- a/src/dashboard/src/components/administration/migrations/0005_archivesspace_inherit_note_default.py +++ b/src/dashboard/src/components/administration/migrations/0005_archivesspace_inherit_note_default.py @@ -11,7 +11,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("administration", "0004_archivesspaceconfig_inherit_notes")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/components/administration/migrations/0006_use_statement_optional.py b/src/dashboard/src/components/administration/migrations/0006_use_statement_optional.py index 6dc23b8305..2905010e72 100644 --- a/src/dashboard/src/components/administration/migrations/0006_use_statement_optional.py +++ b/src/dashboard/src/components/administration/migrations/0006_use_statement_optional.py @@ -3,7 +3,6 @@ class Migration(migrations.Migration): - dependencies = [("administration", "0005_archivesspace_inherit_note_default")] operations = [ diff --git a/src/dashboard/src/components/administration/migrations/0007_delete_unused_models.py b/src/dashboard/src/components/administration/migrations/0007_delete_unused_models.py index dc3bdd03c0..266de1ff76 100644 --- a/src/dashboard/src/components/administration/migrations/0007_delete_unused_models.py +++ b/src/dashboard/src/components/administration/migrations/0007_delete_unused_models.py @@ -2,7 +2,6 @@ class Migration(migrations.Migration): - dependencies = [ ("administration", "0006_use_statement_optional"), ("main", "0032_dashboardsetting_scope"), diff --git a/src/dashboard/src/fpr/forms.py b/src/dashboard/src/fpr/forms.py index 983b64edab..39ee6a0f1c 100644 --- a/src/dashboard/src/fpr/forms.py +++ b/src/dashboard/src/fpr/forms.py @@ -163,7 +163,6 @@ class Meta: class FPCommandForm(forms.ModelForm): - use_required_attribute = False def __init__(self, *args, **kwargs): diff --git a/src/dashboard/src/fpr/migrations/0002_initial_data.py b/src/dashboard/src/fpr/migrations/0002_initial_data.py index d943d427d0..aa4cdfe2d2 100644 --- a/src/dashboard/src/fpr/migrations/0002_initial_data.py +++ b/src/dashboard/src/fpr/migrations/0002_initial_data.py @@ -10,7 +10,6 @@ def load_fixtures(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0001_initial")] operations = [migrations.RunPython(load_fixtures)] diff --git a/src/dashboard/src/fpr/migrations/0003_pronom_84.py b/src/dashboard/src/fpr/migrations/0003_pronom_84.py index c939a7061a..fd65c0095c 100644 --- a/src/dashboard/src/fpr/migrations/0003_pronom_84.py +++ b/src/dashboard/src/fpr/migrations/0003_pronom_84.py @@ -37,7 +37,6 @@ def load_fixtures(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0002_initial_data")] operations = [migrations.RunPython(load_fixtures)] diff --git a/src/dashboard/src/fpr/migrations/0004_pronom_88.py b/src/dashboard/src/fpr/migrations/0004_pronom_88.py index 18d4001b4a..58a16ec40e 100644 --- a/src/dashboard/src/fpr/migrations/0004_pronom_88.py +++ b/src/dashboard/src/fpr/migrations/0004_pronom_88.py @@ -10,7 +10,6 @@ def load_fixtures(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0003_pronom_84")] operations = [migrations.RunPython(load_fixtures)] diff --git a/src/dashboard/src/fpr/migrations/0005_update_tool_versions.py b/src/dashboard/src/fpr/migrations/0005_update_tool_versions.py index 3900f07b40..57055caebb 100644 --- a/src/dashboard/src/fpr/migrations/0005_update_tool_versions.py +++ b/src/dashboard/src/fpr/migrations/0005_update_tool_versions.py @@ -18,7 +18,6 @@ def reverse_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0004_pronom_88")] operations = [migrations.RunPython(data_migration, reverse_migration)] diff --git a/src/dashboard/src/fpr/migrations/0006_i18n_models.py b/src/dashboard/src/fpr/migrations/0006_i18n_models.py index 98dbb09f9e..8b93820188 100644 --- a/src/dashboard/src/fpr/migrations/0006_i18n_models.py +++ b/src/dashboard/src/fpr/migrations/0006_i18n_models.py @@ -4,7 +4,6 @@ class Migration(migrations.Migration): - dependencies = [("fpr", "0005_update_tool_versions")] operations = [ diff --git a/src/dashboard/src/fpr/migrations/0008_update_django_autoslug.py b/src/dashboard/src/fpr/migrations/0008_update_django_autoslug.py index a4ad5ff229..5c84aca221 100644 --- a/src/dashboard/src/fpr/migrations/0008_update_django_autoslug.py +++ b/src/dashboard/src/fpr/migrations/0008_update_django_autoslug.py @@ -3,7 +3,6 @@ class Migration(migrations.Migration): - dependencies = [("fpr", "0007_embedded_default_thumbnail")] operations = [ diff --git a/src/dashboard/src/fpr/migrations/0009_pronom_90.py b/src/dashboard/src/fpr/migrations/0009_pronom_90.py index 080fdb08fe..9b9145ac7e 100644 --- a/src/dashboard/src/fpr/migrations/0009_pronom_90.py +++ b/src/dashboard/src/fpr/migrations/0009_pronom_90.py @@ -10,7 +10,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0008_update_django_autoslug")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/fpr/migrations/0010_update_fido_136.py b/src/dashboard/src/fpr/migrations/0010_update_fido_136.py index ecffc30474..d72446aad4 100644 --- a/src/dashboard/src/fpr/migrations/0010_update_fido_136.py +++ b/src/dashboard/src/fpr/migrations/0010_update_fido_136.py @@ -18,7 +18,6 @@ def reverse_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0009_pronom_90")] operations = [migrations.RunPython(data_migration, reverse_migration)] diff --git a/src/dashboard/src/fpr/migrations/0011_mediaconch_validation.py b/src/dashboard/src/fpr/migrations/0011_mediaconch_validation.py index 7fdf9e9ac8..ade6ef0a35 100644 --- a/src/dashboard/src/fpr/migrations/0011_mediaconch_validation.py +++ b/src/dashboard/src/fpr/migrations/0011_mediaconch_validation.py @@ -60,7 +60,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0010_update_fido_136")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/fpr/migrations/0012_mediaconch_policy_checks.py b/src/dashboard/src/fpr/migrations/0012_mediaconch_policy_checks.py index 8ddc8b186f..4c24942557 100644 --- a/src/dashboard/src/fpr/migrations/0012_mediaconch_policy_checks.py +++ b/src/dashboard/src/fpr/migrations/0012_mediaconch_policy_checks.py @@ -79,7 +79,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0011_mediaconch_validation")] FPRULE_CHOICES = [ diff --git a/src/dashboard/src/fpr/migrations/0013_normalization_rules_mov.py b/src/dashboard/src/fpr/migrations/0013_normalization_rules_mov.py index 007c3ac19b..cce479f593 100644 --- a/src/dashboard/src/fpr/migrations/0013_normalization_rules_mov.py +++ b/src/dashboard/src/fpr/migrations/0013_normalization_rules_mov.py @@ -51,7 +51,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0012_mediaconch_policy_checks")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/fpr/migrations/0014_fix_fits_command.py b/src/dashboard/src/fpr/migrations/0014_fix_fits_command.py index 055f8e7b97..9dfb087bbe 100644 --- a/src/dashboard/src/fpr/migrations/0014_fix_fits_command.py +++ b/src/dashboard/src/fpr/migrations/0014_fix_fits_command.py @@ -57,7 +57,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0013_normalization_rules_mov")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/fpr/migrations/0015_pronom_92.py b/src/dashboard/src/fpr/migrations/0015_pronom_92.py index ddb2a51b45..55df75808c 100644 --- a/src/dashboard/src/fpr/migrations/0015_pronom_92.py +++ b/src/dashboard/src/fpr/migrations/0015_pronom_92.py @@ -49,7 +49,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0014_fix_fits_command")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/fpr/migrations/0016_update_idtools.py b/src/dashboard/src/fpr/migrations/0016_update_idtools.py index 751d93d1a4..f4fe1a7a0b 100644 --- a/src/dashboard/src/fpr/migrations/0016_update_idtools.py +++ b/src/dashboard/src/fpr/migrations/0016_update_idtools.py @@ -51,7 +51,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0015_pronom_92")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/fpr/migrations/0017_ocr_unique_names.py b/src/dashboard/src/fpr/migrations/0017_ocr_unique_names.py index fda44c8bac..c231a7fb81 100644 --- a/src/dashboard/src/fpr/migrations/0017_ocr_unique_names.py +++ b/src/dashboard/src/fpr/migrations/0017_ocr_unique_names.py @@ -22,7 +22,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0016_update_idtools")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/fpr/migrations/0018_slug_unique.py b/src/dashboard/src/fpr/migrations/0018_slug_unique.py index 8152f94f20..c85d93f891 100644 --- a/src/dashboard/src/fpr/migrations/0018_slug_unique.py +++ b/src/dashboard/src/fpr/migrations/0018_slug_unique.py @@ -3,7 +3,6 @@ class Migration(migrations.Migration): - dependencies = [("fpr", "0017_ocr_unique_names")] operations = [ diff --git a/src/dashboard/src/fpr/migrations/0019_fix_gs_command.py b/src/dashboard/src/fpr/migrations/0019_fix_gs_command.py index 8a69151f26..c9cea3c5d6 100644 --- a/src/dashboard/src/fpr/migrations/0019_fix_gs_command.py +++ b/src/dashboard/src/fpr/migrations/0019_fix_gs_command.py @@ -15,7 +15,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0018_slug_unique")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/fpr/migrations/0020_pronom_93.py b/src/dashboard/src/fpr/migrations/0020_pronom_93.py index bdb2deddfe..21bce76299 100644 --- a/src/dashboard/src/fpr/migrations/0020_pronom_93.py +++ b/src/dashboard/src/fpr/migrations/0020_pronom_93.py @@ -10,7 +10,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0019_fix_gs_command")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/fpr/migrations/0021_normalize_jp2_with_ffmpeg_for_preservation.py b/src/dashboard/src/fpr/migrations/0021_normalize_jp2_with_ffmpeg_for_preservation.py index c564facf11..82b5d5a76f 100644 --- a/src/dashboard/src/fpr/migrations/0021_normalize_jp2_with_ffmpeg_for_preservation.py +++ b/src/dashboard/src/fpr/migrations/0021_normalize_jp2_with_ffmpeg_for_preservation.py @@ -63,7 +63,6 @@ def data_migration_down(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0020_pronom_93")] operations = [migrations.RunPython(data_migration_up, data_migration_down)] diff --git a/src/dashboard/src/fpr/migrations/0022_pronom_94.py b/src/dashboard/src/fpr/migrations/0022_pronom_94.py index 99ce709edb..17475d65a8 100644 --- a/src/dashboard/src/fpr/migrations/0022_pronom_94.py +++ b/src/dashboard/src/fpr/migrations/0022_pronom_94.py @@ -10,7 +10,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0021_normalize_jp2_with_ffmpeg_for_preservation")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/fpr/migrations/0023_update_idtools.py b/src/dashboard/src/fpr/migrations/0023_update_idtools.py index ac15a479d4..8a7228f1bb 100644 --- a/src/dashboard/src/fpr/migrations/0023_update_idtools.py +++ b/src/dashboard/src/fpr/migrations/0023_update_idtools.py @@ -84,7 +84,6 @@ def data_migration_down(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0022_pronom_94")] operations = [migrations.RunPython(data_migration_up, data_migration_down)] diff --git a/src/dashboard/src/fpr/migrations/0024_update_fido.py b/src/dashboard/src/fpr/migrations/0024_update_fido.py index 79f34b0e8a..2ec2f84ce8 100644 --- a/src/dashboard/src/fpr/migrations/0024_update_fido.py +++ b/src/dashboard/src/fpr/migrations/0024_update_fido.py @@ -56,7 +56,6 @@ def data_migration_down(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0023_update_idtools")] operations = [migrations.RunPython(data_migration_up, data_migration_down)] diff --git a/src/dashboard/src/fpr/migrations/0025_update_fido_1312.py b/src/dashboard/src/fpr/migrations/0025_update_fido_1312.py index 377d5ff1a3..d6fb03b547 100644 --- a/src/dashboard/src/fpr/migrations/0025_update_fido_1312.py +++ b/src/dashboard/src/fpr/migrations/0025_update_fido_1312.py @@ -56,7 +56,6 @@ def data_migration_down(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0024_update_fido")] operations = [migrations.RunPython(data_migration_up, data_migration_down)] diff --git a/src/dashboard/src/fpr/migrations/0026_fits_nailgun_compat.py b/src/dashboard/src/fpr/migrations/0026_fits_nailgun_compat.py index 8d90ebd44f..a06877f8ed 100644 --- a/src/dashboard/src/fpr/migrations/0026_fits_nailgun_compat.py +++ b/src/dashboard/src/fpr/migrations/0026_fits_nailgun_compat.py @@ -68,7 +68,6 @@ def data_mgiration_down(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0025_update_fido_1312")] operations = [migrations.RunPython(data_migration_up, data_mgiration_down)] diff --git a/src/dashboard/src/fpr/migrations/0027_idcommand_tool_disallow_blank.py b/src/dashboard/src/fpr/migrations/0027_idcommand_tool_disallow_blank.py index 8bac4ae0e1..294686ab34 100644 --- a/src/dashboard/src/fpr/migrations/0027_idcommand_tool_disallow_blank.py +++ b/src/dashboard/src/fpr/migrations/0027_idcommand_tool_disallow_blank.py @@ -3,7 +3,6 @@ class Migration(migrations.Migration): - dependencies = [("fpr", "0026_fits_nailgun_compat")] operations = [ diff --git a/src/dashboard/src/fpr/migrations/0028_idcommand_unique_enabled.py b/src/dashboard/src/fpr/migrations/0028_idcommand_unique_enabled.py index b38143b4aa..28cd352e97 100644 --- a/src/dashboard/src/fpr/migrations/0028_idcommand_unique_enabled.py +++ b/src/dashboard/src/fpr/migrations/0028_idcommand_unique_enabled.py @@ -48,7 +48,6 @@ def data_migration_up(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0027_idcommand_tool_disallow_blank")] operations = [migrations.RunPython(data_migration_up, migrations.RunPython.noop)] diff --git a/src/dashboard/src/fpr/migrations/0029_update_inkscape_svg_command.py b/src/dashboard/src/fpr/migrations/0029_update_inkscape_svg_command.py index a08dd10546..03a43b0041 100644 --- a/src/dashboard/src/fpr/migrations/0029_update_inkscape_svg_command.py +++ b/src/dashboard/src/fpr/migrations/0029_update_inkscape_svg_command.py @@ -68,7 +68,6 @@ def data_migration_down(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0028_idcommand_unique_enabled")] operations = [migrations.RunPython(data_migration_up, data_migration_down)] diff --git a/src/dashboard/src/fpr/migrations/0031_update_normalization_rules.py b/src/dashboard/src/fpr/migrations/0031_update_normalization_rules.py index 85624dd50f..7b4d7f2bcc 100644 --- a/src/dashboard/src/fpr/migrations/0031_update_normalization_rules.py +++ b/src/dashboard/src/fpr/migrations/0031_update_normalization_rules.py @@ -85,7 +85,6 @@ def data_migration_down(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0030_update_jhove_command")] operations = [migrations.RunPython(data_migration_up, data_migration_down)] diff --git a/src/dashboard/src/fpr/migrations/0032_pronom_96.py b/src/dashboard/src/fpr/migrations/0032_pronom_96.py index 6a2d7b8650..cfb127f936 100644 --- a/src/dashboard/src/fpr/migrations/0032_pronom_96.py +++ b/src/dashboard/src/fpr/migrations/0032_pronom_96.py @@ -10,7 +10,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0031_update_normalization_rules")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/fpr/migrations/0033_update_idtools.py b/src/dashboard/src/fpr/migrations/0033_update_idtools.py index e86aa91a36..149d5571c0 100644 --- a/src/dashboard/src/fpr/migrations/0033_update_idtools.py +++ b/src/dashboard/src/fpr/migrations/0033_update_idtools.py @@ -81,7 +81,6 @@ def data_migration_down(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("fpr", "0032_pronom_96")] operations = [migrations.RunPython(data_migration_up, data_migration_down)] diff --git a/src/dashboard/src/fpr/migrations/0034_delete_unused_models.py b/src/dashboard/src/fpr/migrations/0034_delete_unused_models.py index e9bdbfcda1..9bb2acff4a 100644 --- a/src/dashboard/src/fpr/migrations/0034_delete_unused_models.py +++ b/src/dashboard/src/fpr/migrations/0034_delete_unused_models.py @@ -3,7 +3,6 @@ class Migration(migrations.Migration): - dependencies = [ ("fpr", "0033_update_idtools"), ] diff --git a/src/dashboard/src/fpr/migrations/0038_use_uuidfield.py b/src/dashboard/src/fpr/migrations/0038_use_uuidfield.py index 629073026f..c2c6ff2c40 100644 --- a/src/dashboard/src/fpr/migrations/0038_use_uuidfield.py +++ b/src/dashboard/src/fpr/migrations/0038_use_uuidfield.py @@ -6,7 +6,6 @@ class Migration(migrations.Migration): - dependencies = [ ("fpr", "0037_update_idtools"), ] diff --git a/src/dashboard/src/fpr/migrations/0039_django32.py b/src/dashboard/src/fpr/migrations/0039_django32.py index a16e43acf6..7f568193ca 100644 --- a/src/dashboard/src/fpr/migrations/0039_django32.py +++ b/src/dashboard/src/fpr/migrations/0039_django32.py @@ -5,7 +5,6 @@ class Migration(migrations.Migration): - dependencies = [ ("fpr", "0038_use_uuidfield"), ] diff --git a/src/dashboard/src/fpr/migrations/0040_update_jhove_validation.py b/src/dashboard/src/fpr/migrations/0040_update_jhove_validation.py index b3e31d461c..c062de5566 100644 --- a/src/dashboard/src/fpr/migrations/0040_update_jhove_validation.py +++ b/src/dashboard/src/fpr/migrations/0040_update_jhove_validation.py @@ -78,6 +78,11 @@ "fdd758b0-99a6-4447-b082-3a1098f13bf6", "ff989185-1b11-4f96-8075-e605e4cf4be4", "ffa25cf6-c1a5-45f2-9bee-798aa04df172", + "5df96ec2-b5a3-48b5-8599-3f292ff525c1", + "cc464095-02b3-471b-8f1d-221aecf37741", + "27c0dabc-fda4-4060-ab77-ce6e86f424c8", + "886eeaba-55b3-4ed9-9441-59aa1454ecdc", + "7497c57b-ee7a-420f-b197-e1752a0f071f", ) NEW_JHOVE_VALIDATION_CMD = r""" diff --git a/src/dashboard/src/main/management/commands/purge_transient_processing_data.py b/src/dashboard/src/main/management/commands/purge_transient_processing_data.py index 92b7759efc..02eb71edee 100644 --- a/src/dashboard/src/main/management/commands/purge_transient_processing_data.py +++ b/src/dashboard/src/main/management/commands/purge_transient_processing_data.py @@ -44,7 +44,6 @@ class Command(DashboardCommand): - help = __doc__ def add_arguments(self, parser): diff --git a/src/dashboard/src/main/management/commands/rebuild_aip_index_from_storage_service.py b/src/dashboard/src/main/management/commands/rebuild_aip_index_from_storage_service.py index 2a169a84c4..30a39dc563 100644 --- a/src/dashboard/src/main/management/commands/rebuild_aip_index_from_storage_service.py +++ b/src/dashboard/src/main/management/commands/rebuild_aip_index_from_storage_service.py @@ -79,7 +79,6 @@ def get_aips_in_aic(mets_root, temp_dir, uuid): class Command(DashboardCommand): - help = __doc__ def add_arguments(self, parser): diff --git a/src/dashboard/src/main/management/commands/reindex_from_remote_cluster.py b/src/dashboard/src/main/management/commands/reindex_from_remote_cluster.py index 045f520f34..baa1399802 100644 --- a/src/dashboard/src/main/management/commands/reindex_from_remote_cluster.py +++ b/src/dashboard/src/main/management/commands/reindex_from_remote_cluster.py @@ -21,7 +21,6 @@ class Command(DashboardCommand): - help = __doc__ def add_arguments(self, parser): diff --git a/src/dashboard/src/main/management/commands/resolve_pending_jobs.py b/src/dashboard/src/main/management/commands/resolve_pending_jobs.py index 65435ef1d6..3f7585a530 100644 --- a/src/dashboard/src/main/management/commands/resolve_pending_jobs.py +++ b/src/dashboard/src/main/management/commands/resolve_pending_jobs.py @@ -20,7 +20,6 @@ class Command(DashboardCommand): - help = __doc__ def handle(self, *args, **options): diff --git a/src/dashboard/src/main/management/commands/update_elasticsearch_mappings.py b/src/dashboard/src/main/management/commands/update_elasticsearch_mappings.py index 925377359e..6d9de83b3a 100644 --- a/src/dashboard/src/main/management/commands/update_elasticsearch_mappings.py +++ b/src/dashboard/src/main/management/commands/update_elasticsearch_mappings.py @@ -18,7 +18,6 @@ class Command(DashboardCommand): - help = __doc__ def handle(self, *args, **options): diff --git a/src/dashboard/src/main/migrations/0001_initial.py b/src/dashboard/src/main/migrations/0001_initial.py index a8a805c76b..df8c75f4fc 100644 --- a/src/dashboard/src/main/migrations/0001_initial.py +++ b/src/dashboard/src/main/migrations/0001_initial.py @@ -6,7 +6,6 @@ class Migration(migrations.Migration): - dependencies = [("fpr", "__first__")] operations = [ diff --git a/src/dashboard/src/main/migrations/0002_initial_data.py b/src/dashboard/src/main/migrations/0002_initial_data.py index adb7582fe7..8201c5f0b8 100644 --- a/src/dashboard/src/main/migrations/0002_initial_data.py +++ b/src/dashboard/src/main/migrations/0002_initial_data.py @@ -14832,7 +14832,6 @@ def load_fixtures(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0001_initial")] operations = [migrations.RunPython(load_fixtures)] diff --git a/src/dashboard/src/main/migrations/0003_archivesspacedipobjectresourcepairing.py b/src/dashboard/src/main/migrations/0003_archivesspacedipobjectresourcepairing.py index d25c6c3bdd..d81950ba44 100644 --- a/src/dashboard/src/main/migrations/0003_archivesspacedipobjectresourcepairing.py +++ b/src/dashboard/src/main/migrations/0003_archivesspacedipobjectresourcepairing.py @@ -6,7 +6,6 @@ class Migration(migrations.Migration): - dependencies = [("main", "0002_initial_data")] operations = [ diff --git a/src/dashboard/src/main/migrations/0003_archivesspacedipobjectresourcepairing_data.py b/src/dashboard/src/main/migrations/0003_archivesspacedipobjectresourcepairing_data.py index 1a2726f149..7d0d5d3f6a 100644 --- a/src/dashboard/src/main/migrations/0003_archivesspacedipobjectresourcepairing_data.py +++ b/src/dashboard/src/main/migrations/0003_archivesspacedipobjectresourcepairing_data.py @@ -92,7 +92,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0003_archivesspacedipobjectresourcepairing")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0004_rights.py b/src/dashboard/src/main/migrations/0004_rights.py index 2bd4aedb08..c680d8ce72 100644 --- a/src/dashboard/src/main/migrations/0004_rights.py +++ b/src/dashboard/src/main/migrations/0004_rights.py @@ -3,7 +3,6 @@ class Migration(migrations.Migration): - dependencies = [("main", "0003_archivesspacedipobjectresourcepairing_data")] operations = [ diff --git a/src/dashboard/src/main/migrations/0005_reingest.py b/src/dashboard/src/main/migrations/0005_reingest.py index 2fa3441051..483e722dfa 100644 --- a/src/dashboard/src/main/migrations/0005_reingest.py +++ b/src/dashboard/src/main/migrations/0005_reingest.py @@ -3,7 +3,6 @@ class Migration(migrations.Migration): - dependencies = [("main", "0004_rights")] operations = [ diff --git a/src/dashboard/src/main/migrations/0005_reingest_data.py b/src/dashboard/src/main/migrations/0005_reingest_data.py index fa4bfafd4b..709a1fe620 100644 --- a/src/dashboard/src/main/migrations/0005_reingest_data.py +++ b/src/dashboard/src/main/migrations/0005_reingest_data.py @@ -137,7 +137,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0005_reingest")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0006_levelofdescription.py b/src/dashboard/src/main/migrations/0006_levelofdescription.py index d62dfd70e7..c8d823e4f7 100644 --- a/src/dashboard/src/main/migrations/0006_levelofdescription.py +++ b/src/dashboard/src/main/migrations/0006_levelofdescription.py @@ -25,7 +25,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0005_reingest_data")] operations = [ diff --git a/src/dashboard/src/main/migrations/0007_django_upgrade_tweaks.py b/src/dashboard/src/main/migrations/0007_django_upgrade_tweaks.py index 023dde3013..5351de31f2 100644 --- a/src/dashboard/src/main/migrations/0007_django_upgrade_tweaks.py +++ b/src/dashboard/src/main/migrations/0007_django_upgrade_tweaks.py @@ -3,7 +3,6 @@ class Migration(migrations.Migration): - dependencies = [("main", "0006_levelofdescription")] operations = [ diff --git a/src/dashboard/src/main/migrations/0008_fpcommandoutput.py b/src/dashboard/src/main/migrations/0008_fpcommandoutput.py index 765a699b1c..1566e32518 100644 --- a/src/dashboard/src/main/migrations/0008_fpcommandoutput.py +++ b/src/dashboard/src/main/migrations/0008_fpcommandoutput.py @@ -2,7 +2,6 @@ class Migration(migrations.Migration): - dependencies = [("main", "0007_django_upgrade_tweaks")] def merge_tables(apps, schema_editor): diff --git a/src/dashboard/src/main/migrations/0009_matching_gui.py b/src/dashboard/src/main/migrations/0009_matching_gui.py index 3eb6373bc6..cfa35574a2 100644 --- a/src/dashboard/src/main/migrations/0009_matching_gui.py +++ b/src/dashboard/src/main/migrations/0009_matching_gui.py @@ -41,7 +41,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0008_fpcommandoutput")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0010_dip_upload_store.py b/src/dashboard/src/main/migrations/0010_dip_upload_store.py index 87b4bdde5d..e5d39df54c 100644 --- a/src/dashboard/src/main/migrations/0010_dip_upload_store.py +++ b/src/dashboard/src/main/migrations/0010_dip_upload_store.py @@ -237,7 +237,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0009_matching_gui")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0011_version_number.py b/src/dashboard/src/main/migrations/0011_version_number.py index 7662201ce4..ec320041f1 100644 --- a/src/dashboard/src/main/migrations/0011_version_number.py +++ b/src/dashboard/src/main/migrations/0011_version_number.py @@ -9,7 +9,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0010_dip_upload_store")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0012_file_id_text.py b/src/dashboard/src/main/migrations/0012_file_id_text.py index d07b3b8a99..4d906722a0 100644 --- a/src/dashboard/src/main/migrations/0012_file_id_text.py +++ b/src/dashboard/src/main/migrations/0012_file_id_text.py @@ -18,7 +18,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0011_version_number")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0013_upload_archivesspace_inherit_notes.py b/src/dashboard/src/main/migrations/0013_upload_archivesspace_inherit_notes.py index 8752a5b0fa..71440305c5 100644 --- a/src/dashboard/src/main/migrations/0013_upload_archivesspace_inherit_notes.py +++ b/src/dashboard/src/main/migrations/0013_upload_archivesspace_inherit_notes.py @@ -30,7 +30,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0012_file_id_text")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0014_aic_fixes.py b/src/dashboard/src/main/migrations/0014_aic_fixes.py index 04857c56b6..5aaa76bec1 100644 --- a/src/dashboard/src/main/migrations/0014_aic_fixes.py +++ b/src/dashboard/src/main/migrations/0014_aic_fixes.py @@ -13,7 +13,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0013_upload_archivesspace_inherit_notes")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0015_no_normalize_thumbnails.py b/src/dashboard/src/main/migrations/0015_no_normalize_thumbnails.py index 936a8deb3c..0434d8b069 100644 --- a/src/dashboard/src/main/migrations/0015_no_normalize_thumbnails.py +++ b/src/dashboard/src/main/migrations/0015_no_normalize_thumbnails.py @@ -10,7 +10,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0014_aic_fixes")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0016_file_currentlocation_nullable.py b/src/dashboard/src/main/migrations/0016_file_currentlocation_nullable.py index d17439ff38..a34cdd335c 100644 --- a/src/dashboard/src/main/migrations/0016_file_currentlocation_nullable.py +++ b/src/dashboard/src/main/migrations/0016_file_currentlocation_nullable.py @@ -3,7 +3,6 @@ class Migration(migrations.Migration): - dependencies = [("main", "0015_no_normalize_thumbnails")] operations = [ diff --git a/src/dashboard/src/main/migrations/0017_update_seigfried.py b/src/dashboard/src/main/migrations/0017_update_seigfried.py index b13df202b3..beda8ffdb5 100644 --- a/src/dashboard/src/main/migrations/0017_update_seigfried.py +++ b/src/dashboard/src/main/migrations/0017_update_seigfried.py @@ -19,7 +19,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0016_file_currentlocation_nullable")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0018_archivesspace_sip_arrange.py b/src/dashboard/src/main/migrations/0018_archivesspace_sip_arrange.py index 91227c4622..c11b302a83 100644 --- a/src/dashboard/src/main/migrations/0018_archivesspace_sip_arrange.py +++ b/src/dashboard/src/main/migrations/0018_archivesspace_sip_arrange.py @@ -3,7 +3,6 @@ class Migration(migrations.Migration): - dependencies = [("main", "0017_update_seigfried")] operations = [ diff --git a/src/dashboard/src/main/migrations/0019_normalization_report.py b/src/dashboard/src/main/migrations/0019_normalization_report.py index d0e694b5c8..869e3553a5 100644 --- a/src/dashboard/src/main/migrations/0019_normalization_report.py +++ b/src/dashboard/src/main/migrations/0019_normalization_report.py @@ -51,7 +51,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0018_archivesspace_sip_arrange")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0020_index_after_processing_decision.py b/src/dashboard/src/main/migrations/0020_index_after_processing_decision.py index cb4186423b..b59848e82e 100644 --- a/src/dashboard/src/main/migrations/0020_index_after_processing_decision.py +++ b/src/dashboard/src/main/migrations/0020_index_after_processing_decision.py @@ -68,7 +68,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0019_normalization_report")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0021_checksum_algorithms.py b/src/dashboard/src/main/migrations/0021_checksum_algorithms.py index e94880f011..07731b38b9 100644 --- a/src/dashboard/src/main/migrations/0021_checksum_algorithms.py +++ b/src/dashboard/src/main/migrations/0021_checksum_algorithms.py @@ -15,7 +15,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0020_index_after_processing_decision")] operations = [ diff --git a/src/dashboard/src/main/migrations/0022_email_report_args.py b/src/dashboard/src/main/migrations/0022_email_report_args.py index b3bfc4df3b..051d1685c2 100644 --- a/src/dashboard/src/main/migrations/0022_email_report_args.py +++ b/src/dashboard/src/main/migrations/0022_email_report_args.py @@ -10,7 +10,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0021_checksum_algorithms")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0024_agenttype.py b/src/dashboard/src/main/migrations/0024_agenttype.py index 51431a47fb..a54fee0259 100644 --- a/src/dashboard/src/main/migrations/0024_agenttype.py +++ b/src/dashboard/src/main/migrations/0024_agenttype.py @@ -3,7 +3,6 @@ class Migration(migrations.Migration): - dependencies = [("main", "0023_blob_fields")] operations = [ diff --git a/src/dashboard/src/main/migrations/0025_copyrightstatus_controlled_vocab.py b/src/dashboard/src/main/migrations/0025_copyrightstatus_controlled_vocab.py index f86cdad9d0..44f56ad52b 100644 --- a/src/dashboard/src/main/migrations/0025_copyrightstatus_controlled_vocab.py +++ b/src/dashboard/src/main/migrations/0025_copyrightstatus_controlled_vocab.py @@ -3,7 +3,6 @@ class Migration(migrations.Migration): - dependencies = [("main", "0024_agenttype")] operations = [ diff --git a/src/dashboard/src/main/migrations/0026_agent_m2m_event.py b/src/dashboard/src/main/migrations/0026_agent_m2m_event.py index d977d357ae..85e62618eb 100644 --- a/src/dashboard/src/main/migrations/0026_agent_m2m_event.py +++ b/src/dashboard/src/main/migrations/0026_agent_m2m_event.py @@ -33,7 +33,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("main", "0025_copyrightstatus_controlled_vocab"), diff --git a/src/dashboard/src/main/migrations/0027_full_reingest.py b/src/dashboard/src/main/migrations/0027_full_reingest.py index 4176d79f68..50219e7a7f 100644 --- a/src/dashboard/src/main/migrations/0027_full_reingest.py +++ b/src/dashboard/src/main/migrations/0027_full_reingest.py @@ -124,7 +124,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0026_agent_m2m_event")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0028_version_number.py b/src/dashboard/src/main/migrations/0028_version_number.py index cf436ed563..d2e73f4f41 100644 --- a/src/dashboard/src/main/migrations/0028_version_number.py +++ b/src/dashboard/src/main/migrations/0028_version_number.py @@ -9,7 +9,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0027_full_reingest")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0029_backlog_removal_event.py b/src/dashboard/src/main/migrations/0029_backlog_removal_event.py index dc590f0085..96a46625e0 100644 --- a/src/dashboard/src/main/migrations/0029_backlog_removal_event.py +++ b/src/dashboard/src/main/migrations/0029_backlog_removal_event.py @@ -18,7 +18,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0028_version_number")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0030_rights_import.py b/src/dashboard/src/main/migrations/0030_rights_import.py index c754568b73..74e3f65f17 100644 --- a/src/dashboard/src/main/migrations/0030_rights_import.py +++ b/src/dashboard/src/main/migrations/0030_rights_import.py @@ -52,7 +52,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0029_backlog_removal_event")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0031_job_currentstep_choices.py b/src/dashboard/src/main/migrations/0031_job_currentstep_choices.py index 0c9780bcde..bf6fa1edc9 100644 --- a/src/dashboard/src/main/migrations/0031_job_currentstep_choices.py +++ b/src/dashboard/src/main/migrations/0031_job_currentstep_choices.py @@ -29,7 +29,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0030_rights_import")] operations = [ diff --git a/src/dashboard/src/main/migrations/0032_dashboardsetting_scope.py b/src/dashboard/src/main/migrations/0032_dashboardsetting_scope.py index 75cdee276b..44a753d582 100644 --- a/src/dashboard/src/main/migrations/0032_dashboardsetting_scope.py +++ b/src/dashboard/src/main/migrations/0032_dashboardsetting_scope.py @@ -255,7 +255,6 @@ def data_migration_atk_to_dict(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [ ("main", "0031_job_currentstep_choices"), ("administration", "0006_use_statement_optional"), diff --git a/src/dashboard/src/main/migrations/0033_store_transfer_file_modification_dates.py b/src/dashboard/src/main/migrations/0033_store_transfer_file_modification_dates.py index 4c884b0888..7e26a3683e 100644 --- a/src/dashboard/src/main/migrations/0033_store_transfer_file_modification_dates.py +++ b/src/dashboard/src/main/migrations/0033_store_transfer_file_modification_dates.py @@ -97,7 +97,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0032_dashboardsetting_scope")] operations = [ diff --git a/src/dashboard/src/main/migrations/0034_add_readme_to_aips.py b/src/dashboard/src/main/migrations/0034_add_readme_to_aips.py index 4c797d6605..1d8dd38fe0 100644 --- a/src/dashboard/src/main/migrations/0034_add_readme_to_aips.py +++ b/src/dashboard/src/main/migrations/0034_add_readme_to_aips.py @@ -113,7 +113,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0033_store_transfer_file_modification_dates")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0035_fix_workflow_dip_generation.py b/src/dashboard/src/main/migrations/0035_fix_workflow_dip_generation.py index 0b315d1352..ab12eda997 100644 --- a/src/dashboard/src/main/migrations/0035_fix_workflow_dip_generation.py +++ b/src/dashboard/src/main/migrations/0035_fix_workflow_dip_generation.py @@ -22,6 +22,5 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0034_add_readme_to_aips")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0036_mediaconch_validation.py b/src/dashboard/src/main/migrations/0036_mediaconch_validation.py index 0a4b33794b..f49d556e2e 100644 --- a/src/dashboard/src/main/migrations/0036_mediaconch_validation.py +++ b/src/dashboard/src/main/migrations/0036_mediaconch_validation.py @@ -244,7 +244,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0035_fix_workflow_dip_generation")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0037_mediaconch_policy_checks.py b/src/dashboard/src/main/migrations/0037_mediaconch_policy_checks.py index f1a3f722ab..5a0210e30d 100644 --- a/src/dashboard/src/main/migrations/0037_mediaconch_policy_checks.py +++ b/src/dashboard/src/main/migrations/0037_mediaconch_policy_checks.py @@ -433,7 +433,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0036_mediaconch_validation")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0038_fix_workflow_store_dip.py b/src/dashboard/src/main/migrations/0038_fix_workflow_store_dip.py index fccfb49162..911965d900 100644 --- a/src/dashboard/src/main/migrations/0038_fix_workflow_store_dip.py +++ b/src/dashboard/src/main/migrations/0038_fix_workflow_store_dip.py @@ -173,7 +173,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0037_mediaconch_policy_checks")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0039_delete_sudo_clientscript.py b/src/dashboard/src/main/migrations/0039_delete_sudo_clientscript.py index 841cd28b6a..57adc8b015 100644 --- a/src/dashboard/src/main/migrations/0039_delete_sudo_clientscript.py +++ b/src/dashboard/src/main/migrations/0039_delete_sudo_clientscript.py @@ -19,7 +19,6 @@ def data_migration(apps, schema_editor): ) for mscl in MicroServiceChainLink.objects.filter(currenttask=tc): - # Find the next chain link next_mscl = MicroServiceChainLinkExitCode.objects.get( microservicechainlink=mscl, exitcode=0 @@ -50,7 +49,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0038_fix_workflow_store_dip")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0040_directory_model.py b/src/dashboard/src/main/migrations/0040_directory_model.py index fea4e3b518..bdbd806d9e 100644 --- a/src/dashboard/src/main/migrations/0040_directory_model.py +++ b/src/dashboard/src/main/migrations/0040_directory_model.py @@ -218,7 +218,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0039_delete_sudo_clientscript")] operations = [ diff --git a/src/dashboard/src/main/migrations/0041_bind_pids.py b/src/dashboard/src/main/migrations/0041_bind_pids.py index 68dd26b7cf..d43ee96c8a 100644 --- a/src/dashboard/src/main/migrations/0041_bind_pids.py +++ b/src/dashboard/src/main/migrations/0041_bind_pids.py @@ -252,7 +252,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0040_directory_model")] operations = [ diff --git a/src/dashboard/src/main/migrations/0042_directory_uuids_all_transfer_types.py b/src/dashboard/src/main/migrations/0042_directory_uuids_all_transfer_types.py index a4a07fbc75..8c53f3c6ed 100644 --- a/src/dashboard/src/main/migrations/0042_directory_uuids_all_transfer_types.py +++ b/src/dashboard/src/main/migrations/0042_directory_uuids_all_transfer_types.py @@ -88,7 +88,6 @@ def data_migration(apps, schema_editor): } for meta in transfer_types.values(): - next_chain_link = MicroServiceChainLink.objects.get( id=meta["next_chain_link_uuid"] ) @@ -154,7 +153,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0041_bind_pids")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0043_remove_create_pointer_file_ms.py b/src/dashboard/src/main/migrations/0043_remove_create_pointer_file_ms.py index 650af2b725..e34dc5751f 100644 --- a/src/dashboard/src/main/migrations/0043_remove_create_pointer_file_ms.py +++ b/src/dashboard/src/main/migrations/0043_remove_create_pointer_file_ms.py @@ -62,7 +62,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0042_directory_uuids_all_transfer_types")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0044_update_idtools.py b/src/dashboard/src/main/migrations/0044_update_idtools.py index 7264437591..4e8f9e6882 100644 --- a/src/dashboard/src/main/migrations/0044_update_idtools.py +++ b/src/dashboard/src/main/migrations/0044_update_idtools.py @@ -26,7 +26,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0043_remove_create_pointer_file_ms")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0045_archivesspace_config_dict.py b/src/dashboard/src/main/migrations/0045_archivesspace_config_dict.py index 59b70e6fd7..3ac9adbd86 100644 --- a/src/dashboard/src/main/migrations/0045_archivesspace_config_dict.py +++ b/src/dashboard/src/main/migrations/0045_archivesspace_config_dict.py @@ -45,7 +45,6 @@ def data_migration_down(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0044_update_idtools")] operations = [migrations.RunPython(data_migration_up, data_migration_down)] diff --git a/src/dashboard/src/main/migrations/0046_optional_normative_structmap.py b/src/dashboard/src/main/migrations/0046_optional_normative_structmap.py index 7332ed53fb..4a600c9336 100644 --- a/src/dashboard/src/main/migrations/0046_optional_normative_structmap.py +++ b/src/dashboard/src/main/migrations/0046_optional_normative_structmap.py @@ -171,7 +171,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0045_archivesspace_config_dict")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0047_version_number.py b/src/dashboard/src/main/migrations/0047_version_number.py index 4ceb6cc765..1d2ced62e4 100644 --- a/src/dashboard/src/main/migrations/0047_version_number.py +++ b/src/dashboard/src/main/migrations/0047_version_number.py @@ -9,7 +9,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0046_optional_normative_structmap")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0048_fix_upload_qubit_setting.py b/src/dashboard/src/main/migrations/0048_fix_upload_qubit_setting.py index 3643f02ca5..d9a8cfc4f0 100644 --- a/src/dashboard/src/main/migrations/0048_fix_upload_qubit_setting.py +++ b/src/dashboard/src/main/migrations/0048_fix_upload_qubit_setting.py @@ -11,7 +11,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0047_version_number")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0049_change_pointer_file_filegrpuse.py b/src/dashboard/src/main/migrations/0049_change_pointer_file_filegrpuse.py index 81946304c4..3f92d585cd 100644 --- a/src/dashboard/src/main/migrations/0049_change_pointer_file_filegrpuse.py +++ b/src/dashboard/src/main/migrations/0049_change_pointer_file_filegrpuse.py @@ -32,7 +32,6 @@ def update_pointer_files_filegrpuse(apps, filegrpuse): class Migration(migrations.Migration): - dependencies = [("main", "0048_fix_upload_qubit_setting")] operations = [migrations.RunPython(data_migration_up, data_migration_down)] diff --git a/src/dashboard/src/main/migrations/0051_remove_verify_premis_checksums.py b/src/dashboard/src/main/migrations/0051_remove_verify_premis_checksums.py index 4cec991c0f..f163ab05e8 100644 --- a/src/dashboard/src/main/migrations/0051_remove_verify_premis_checksums.py +++ b/src/dashboard/src/main/migrations/0051_remove_verify_premis_checksums.py @@ -54,7 +54,6 @@ def data_migration(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0050_remove_magic_links")] operations = [migrations.RunPython(data_migration)] diff --git a/src/dashboard/src/main/migrations/0053_remove_mcp_unused_field.py b/src/dashboard/src/main/migrations/0053_remove_mcp_unused_field.py index a1cf12efd0..0cf8955dad 100644 --- a/src/dashboard/src/main/migrations/0053_remove_mcp_unused_field.py +++ b/src/dashboard/src/main/migrations/0053_remove_mcp_unused_field.py @@ -2,7 +2,6 @@ class Migration(migrations.Migration): - dependencies = [("main", "0052_correct_extract_packages_fallback_link")] operations = [ diff --git a/src/dashboard/src/main/migrations/0054_index_aip_silent_error_branch.py b/src/dashboard/src/main/migrations/0054_index_aip_silent_error_branch.py index b31203653c..56395db45c 100644 --- a/src/dashboard/src/main/migrations/0054_index_aip_silent_error_branch.py +++ b/src/dashboard/src/main/migrations/0054_index_aip_silent_error_branch.py @@ -35,7 +35,6 @@ def data_migration_down(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0053_remove_mcp_unused_field")] operations = [migrations.RunPython(data_migration_up, data_migration_down)] diff --git a/src/dashboard/src/main/migrations/0056_transfer_access_system_id.py b/src/dashboard/src/main/migrations/0056_transfer_access_system_id.py index a6b0533e2f..8c5fc3cf96 100644 --- a/src/dashboard/src/main/migrations/0056_transfer_access_system_id.py +++ b/src/dashboard/src/main/migrations/0056_transfer_access_system_id.py @@ -25,7 +25,6 @@ def data_migration_down(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0055_normalize_thumbnail_mode_selection")] operations = [ diff --git a/src/dashboard/src/main/migrations/0058_fix_unit_variable_pull_link.py b/src/dashboard/src/main/migrations/0058_fix_unit_variable_pull_link.py index 3ad7546dcd..ae0ad62006 100644 --- a/src/dashboard/src/main/migrations/0058_fix_unit_variable_pull_link.py +++ b/src/dashboard/src/main/migrations/0058_fix_unit_variable_pull_link.py @@ -26,7 +26,6 @@ def data_migration_down(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0057_7zip_no_compression")] operations = [migrations.RunPython(data_migration_up, data_migration_down)] diff --git a/src/dashboard/src/main/migrations/0060_delete_orphan_mscl.py b/src/dashboard/src/main/migrations/0060_delete_orphan_mscl.py index 64caf6aecc..c540230ff5 100644 --- a/src/dashboard/src/main/migrations/0060_delete_orphan_mscl.py +++ b/src/dashboard/src/main/migrations/0060_delete_orphan_mscl.py @@ -15,7 +15,6 @@ def delete_orphan_mscl(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0059_siparrange_longblob")] operations = [migrations.RunPython(delete_orphan_mscl, migrations.RunPython.noop)] diff --git a/src/dashboard/src/main/migrations/0062_atom_upload_exit_code.py b/src/dashboard/src/main/migrations/0062_atom_upload_exit_code.py index e3a425aa54..e4cb47fe8a 100644 --- a/src/dashboard/src/main/migrations/0062_atom_upload_exit_code.py +++ b/src/dashboard/src/main/migrations/0062_atom_upload_exit_code.py @@ -36,7 +36,6 @@ def data_migration_down(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0061_create_dataverse_transfer_type")] operations = [migrations.RunPython(data_migration_up, data_migration_down)] diff --git a/src/dashboard/src/main/migrations/0063_update_idtools.py b/src/dashboard/src/main/migrations/0063_update_idtools.py index 199b2c2ce5..1e57c73533 100644 --- a/src/dashboard/src/main/migrations/0063_update_idtools.py +++ b/src/dashboard/src/main/migrations/0063_update_idtools.py @@ -48,7 +48,6 @@ def data_migration_down(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0062_atom_upload_exit_code")] operations = [migrations.RunPython(data_migration_up, data_migration_down)] diff --git a/src/dashboard/src/main/migrations/0066_archivesspace_base_url.py b/src/dashboard/src/main/migrations/0066_archivesspace_base_url.py index e6d58d1bbf..7f69bbdde6 100644 --- a/src/dashboard/src/main/migrations/0066_archivesspace_base_url.py +++ b/src/dashboard/src/main/migrations/0066_archivesspace_base_url.py @@ -2,6 +2,7 @@ ``host`` and `port`` are replaced by ``base_url``. """ +import sys from urllib.parse import urlparse from django.db import migrations @@ -58,12 +59,17 @@ def _get_host_and_port(base_url): base_url = base_url or "" host, port = "", "" try: - base_url = urlparse(base_url) + parsed = urlparse(base_url) except AttributeError: return host, port - host = base_url.netloc + host = parsed.netloc if not host: - host = base_url.path + # In some cases Python3.9+ may parse the host as the scheme. + # See https://bugs.python.org/issue27657 + if sys.version_info >= (3, 9) and base_url.partition(":")[0] == parsed.scheme: + host = f"{parsed.scheme}:{parsed.path}" + else: + host = parsed.path parts = host.partition(":") if parts[1] == ":": host, port = parts[0], parts[2] diff --git a/src/dashboard/src/main/migrations/0067_delete_workflow_models.py b/src/dashboard/src/main/migrations/0067_delete_workflow_models.py index 3229789151..04d9729518 100644 --- a/src/dashboard/src/main/migrations/0067_delete_workflow_models.py +++ b/src/dashboard/src/main/migrations/0067_delete_workflow_models.py @@ -5,7 +5,6 @@ class Migration(migrations.Migration): - dependencies = [("main", "0066_archivesspace_base_url")] operations = [ diff --git a/src/dashboard/src/main/migrations/0069_remove_atk.py b/src/dashboard/src/main/migrations/0069_remove_atk.py index d59b2d973d..6b87121f79 100644 --- a/src/dashboard/src/main/migrations/0069_remove_atk.py +++ b/src/dashboard/src/main/migrations/0069_remove_atk.py @@ -12,7 +12,6 @@ def data_migration_up(apps, _): class Migration(migrations.Migration): - dependencies = [("main", "0068_version_number")] operations = [ diff --git a/src/dashboard/src/main/migrations/0070_index_jobs.py b/src/dashboard/src/main/migrations/0070_index_jobs.py index 11e630fb43..16fdd3730a 100644 --- a/src/dashboard/src/main/migrations/0070_index_jobs.py +++ b/src/dashboard/src/main/migrations/0070_index_jobs.py @@ -5,7 +5,6 @@ class Migration(migrations.Migration): - dependencies = [("main", "0069_remove_atk")] operations = [ diff --git a/src/dashboard/src/main/migrations/0071_index_unitvariables_runsql.py b/src/dashboard/src/main/migrations/0071_index_unitvariables_runsql.py index 3122e6258f..5fc1fdd7b5 100644 --- a/src/dashboard/src/main/migrations/0071_index_unitvariables_runsql.py +++ b/src/dashboard/src/main/migrations/0071_index_unitvariables_runsql.py @@ -21,7 +21,6 @@ def drop_index(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [("main", "0070_index_jobs")] # MySQL specific syntax diff --git a/src/dashboard/src/main/migrations/0072_index_files.py b/src/dashboard/src/main/migrations/0072_index_files.py index 224ed8f636..d957df2d95 100644 --- a/src/dashboard/src/main/migrations/0072_index_files.py +++ b/src/dashboard/src/main/migrations/0072_index_files.py @@ -2,7 +2,6 @@ class Migration(migrations.Migration): - dependencies = [("main", "0071_index_unitvariables_runsql")] operations = [ diff --git a/src/dashboard/src/main/migrations/0075_userprofile_system_emails.py b/src/dashboard/src/main/migrations/0075_userprofile_system_emails.py index 6a762dfd70..6157c81e18 100644 --- a/src/dashboard/src/main/migrations/0075_userprofile_system_emails.py +++ b/src/dashboard/src/main/migrations/0075_userprofile_system_emails.py @@ -3,7 +3,6 @@ class Migration(migrations.Migration): - dependencies = [("main", "0074_version_number")] operations = [ diff --git a/src/dashboard/src/main/migrations/0077_uuid_fields.py b/src/dashboard/src/main/migrations/0077_uuid_fields.py index d016ccfb6c..bff0589593 100644 --- a/src/dashboard/src/main/migrations/0077_uuid_fields.py +++ b/src/dashboard/src/main/migrations/0077_uuid_fields.py @@ -6,7 +6,6 @@ class Migration(migrations.Migration): - dependencies = [("main", "0076_version_number")] operations = [ diff --git a/src/dashboard/src/main/migrations/0078_username_check.py b/src/dashboard/src/main/migrations/0078_username_check.py index ace3bd2a45..23067aac6b 100644 --- a/src/dashboard/src/main/migrations/0078_username_check.py +++ b/src/dashboard/src/main/migrations/0078_username_check.py @@ -51,7 +51,6 @@ def data_migration_down(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [ ("main", "0077_uuid_fields"), ("auth", "0007_alter_validators_add_error_messages"), diff --git a/src/dashboard/src/main/migrations/0081_package_status.py b/src/dashboard/src/main/migrations/0081_package_status.py index 432e868dc2..b9e7d450b4 100644 --- a/src/dashboard/src/main/migrations/0081_package_status.py +++ b/src/dashboard/src/main/migrations/0081_package_status.py @@ -4,7 +4,6 @@ class Migration(migrations.Migration): - dependencies = [ ("main", "0080_delete_software_agent"), ] diff --git a/src/dashboard/src/main/migrations/0082_use_uuidfield.py b/src/dashboard/src/main/migrations/0082_use_uuidfield.py index ade490c933..e99246d46d 100644 --- a/src/dashboard/src/main/migrations/0082_use_uuidfield.py +++ b/src/dashboard/src/main/migrations/0082_use_uuidfield.py @@ -6,7 +6,6 @@ class Migration(migrations.Migration): - dependencies = [ ("main", "0081_package_status"), ] diff --git a/tox.ini b/tox.ini index b9d709902e..95f4b3d2ee 100644 --- a/tox.ini +++ b/tox.ini @@ -1,6 +1,5 @@ [tox] skipsdist = True -minversion = 2.7.0 envlist = archivematica-common dashboard