Update to 1.18 - #13
Closed
liam-lloyd wants to merge 99 commits into
Closed
liam-lloyd wants to merge 99 commits into
liam-lloyd wants to merge 99 commits into
Conversation
* 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.
This adjusts the Storage Service related rules of the development environment to support the new src layout of the submodule.
This avoids overwriting the XML_CATALOG_FILES environment variable by prepending the local MCPClient catalog to any existing value. This maintains compatibility with other catalogs already set in the environment and allows AMAUATs to define their own as needed.
* 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.
Member
Author
|
I don't think traditional reviews apply here, since we're just pulling in all the commits that make up Archivematica 1.18, but I wanted to open a PR so at least the CI runs |
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.
Member
Author
|
Closing in order to redo this with a merge instead of a rebase |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.