Skip to content

Update to 1.18 - #14

Merged
liam-lloyd merged 104 commits into
mainfrom
update_to_1.18_clean
Jan 8, 2026
Merged

liam-lloyd merged 104 commits into
mainfrom
update_to_1.18_clean

Conversation

@liam-lloyd

Copy link
Copy Markdown
Member

No description provided.

replaceafill and others added 30 commits December 9, 2024 16:32
* Upgrade pre-commit dependencies
* Drop Python 3.8 support
* Update git submodules
This prevents the creation and association of a amdSec element to the
objects directory in the structMap when the transfer bag metadata is
missing or unreadable.
* Update git submodules
* Upgrade pre-commit dependencies
* Upgrade Python requirements
* Run test CI jobs in Ubuntu 24.04
* Upgrade pre-commit dependencies
* Upgrade Python requirements
* Upgrade frontend dependencies
* Update git submodules
This adds tests that assert the output of the existing event detail
commands in the FPR.

The tests assume the MCPClient OS tools are installed in the test
runner and call archivematicaCommon's executeOrRun to execute the
event detail commands.
* Upgrade pre-commit dependencies
* Upgrade Python requirements
* Use latest version of Selenium Manager to download browsers
* Upgrade frontend dev dependencies
* Update git submodules
* Run AMAUATs black-box tag in Firefox
* Remove dashboard/src directory
* Remove MCPClient/lib directory
* Remove MCPServer/lib directory
* Remove archivematicaCommon/lib directory
This commit updates the snippet that uses `json.loads` to catch
`TypeError` instead of `SyntaxError`.
This relocates all the Python code into a new src/archivematica
package and adopts absolute imports, eliminating the need for
previously injected PYTHONPATH variables.
replaceafill and others added 24 commits August 17, 2025 23:52
* Upgrade Python requirements
* Upgrade pre-commit dependencies
* Upgrade frontend dependencies
* Set local XML catalog for metadata XML AMAUAT
* Update git submodules
* Remove requirements*.in files
* Update Python requirements
This change consolidates Archivematica's search logic into a single
service layer, replacing scattered implementations while preserving
full backward compatibility.

The new search service centralizes all Elasticsearch operations behind
a consistent interface, replacing the previous approach where search
code was dispersed across multiple modules.

MCPClient scripts and dashboard components, such as views and
management commands, no longer make direct Elasticsearch
calls. Instead, they now use the service for AIP indexing, backlog
handling, post-storage hooks, and index maintenance or rebuilding.

The legacy search modules have been removed, making future
Elasticsearch upgrades easier to maintain.
* Upgrade Python requirements
* Upgrade pre-commit dependencies
* Upgrade frontend dependencies
* Update git submodules
The previous method for preventing UID/GID clashes in the Docker build process
was limited to removing a specific "ubuntu" user with default IDs. This
approach was insufficient in environments where different default UIDs/GIDs are
used, or when user IDs on the host system (such as common macOS UIDs like 501 or
GIDs like 20 for "staff") clash with IDs that might be present in the container.
This change dynamically checks for and remove any existing user/group that
occupies the requester `USER_ID` or `GROUP_ID`, ensuring that the
"archivematica" user can be created with the specified IDs without conflict.
This commit updates several Docker images while ensuring backward
compatibility. The Percona and Nginx images used support ARM64 builds.
* Upgrade pre-commit dependencies
* Upgrade Python requirements
* Upgrade frontend dependencies
* Update git submodules
Bumps the docker-compose-dev group with 3 updates in the /hack directory: [elasticsearch/elasticsearch](https://github.com/elastic/elasticsearch), clamav/clamav-debian and nginx.


Updates `elasticsearch/elasticsearch` from 8.19.2 to 8.19.3
- [Release notes](https://github.com/elastic/elasticsearch/releases)
- [Changelog](https://github.com/elastic/elasticsearch/blob/main/CHANGELOG.md)
- [Commits](elastic/elasticsearch@v8.19.2...v8.19.3)

Updates `clamav/clamav-debian` from 1.4.3-56 to 1.4.3-57

Updates `nginx` from 1.28.0 to 1.29.1

---
updated-dependencies:
- dependency-name: elasticsearch/elasticsearch
  dependency-version: 8.19.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-dev
- dependency-name: clamav/clamav-debian
  dependency-version: 1.4.3-57
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-dev
- dependency-name: nginx
  dependency-version: 1.29.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: docker-compose-dev
...

Signed-off-by: dependabot[bot] <support@github.com>
Update our GitHub Actions to use their full commit SHAs rather than
major version tags. This improves security and reproducibility.
The package was renamed at some point, "inotify-simple" is the current name.
For a long time we've been asking Gunicorn to "poll" the filesystem for changes,
which is very inefficient. When your dev machine is idle, there's still a
significant amount of load just to keep the Gunicorn apps up to date with local
filesystem changes.

While this may be desirable in some development workflows, in most cases you
don't actually need it. Disabling it by default keeps your laptop from getting
warm and saves a lot of energy. If you don't believe me - try it!

Gunicorn would be far more efficient if it could use the inotify API to detect
changes. This feature exists but that doesn't work with our gevent config. This
problem was reported back in 2017 (benoitc/gunicorn#1494).
Eight years later, I'm suggesting we make the poll-based auto-reload opt-in by
default.

Use the Compose's `.env` file to enable `AM_GUNICORN_RELOAD` and
`SS_GUNICORN_RELOAD` just when you need it. Remember to recreate the
`archivematica-dashboard` and `archivematica-storage-services` when
changing the configuration.
In v1.18 Archivematica added a validator that ensures all Github Actions
used in this repo's workflows are pinned with a commit hash. Though this
is not Permanent's practice, it seems best to keep our fork as close to
upstream Archivematica as is reasonable, so this commit updates our
build workflow to pin Github Actions with commit hashes.
@liam-lloyd liam-lloyd changed the title Update to 1.18 clean Update to 1.18 Jan 6, 2026
@liam-lloyd
liam-lloyd merged commit 06c5d76 into main Jan 8, 2026
19 of 25 checks passed
@liam-lloyd
liam-lloyd deleted the update_to_1.18_clean branch February 20, 2026 18:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants