galter-subjects-utils
Subjects tooling for InvenioRDM.
This distribution package provides an invenio subcommand group to manage controlled vocabulary subjects.
In particular, it provides functionality to:
- generate and update the initial list of subject terms for a vocabulary distribution package.
- update a running instance's subjects by analyzing the delta between the instance and the updated target list of terms.
The goal is for this package to provide a framing for any subjects operations/CLI tooling. See https://github.com/galterlibrary/invenio-subjects-mesh-lite for an example of how this package is used and extrapolate from that how it could be used for other scenarios.
Installation
uv add galter-subjects-utils
Versions
This repository follows semantic versioning indexed on invenio-app-rdm compatibility according to the table below:
| galter-subjects-utils | invenio-app-rdm version |
|---|---|
| 0.11.X | 13.X + 14.X |
| 0.7.X - 0.10.X | 13.X |
| 0.5.X, 0.6.x | 12.X |
This just means for example that version 0.7 guarantees generation of subjects files and subject manipulation compatible with invenio-app-rdm v13. When there is a break in subjects format, this tool will bump its major version.
Usage
In virtualenv ((venv) denotes that going forward):
(venv) invenio galter-subjects --help
Development
Install the project in editable mode with dev dependencies in an isolated virtualenv:
uv pip install -e .[dev]
Run tests:
uv run invoke test
# or shorter
uv run inv test
To check compatibility with the pre-release version of InvenioRDM (invenio-app-rdm):
uv run --extra dev_pre --prerelease=allow inv test
Metadata
Release files for galter-subjects-utils 0.11.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| galter_subjects_utils-0.11.1.tar.gz | 12.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| galter_subjects_utils-0.11.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 29.8 kB
Release files / galter_subjects_utils-0.11.1.tar.gz
| Download URL | galter_subjects_utils-0.11.1.tar.gz |
|---|---|
| Size | 12.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ae04ff771aa88c836020414b2f9133a41a02d0766b8b9845a5153a8ef81f613d
|
|
BLAKE2b-256 checksum How to use checksums |
f003aa0ed366a94d6bb479b5f8827f2fe9805d118ca1d056cf6a5f97137bbc96
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 7, 2026.
Transparency logRelease files / galter_subjects_utils-0.11.1-py3-none-any.whl
| Download URL | galter_subjects_utils-0.11.1-py3-none-any.whl |
|---|---|
| Size | 17.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
47f6bf7b154439e6d874629f04f91164e9494236b0e3a092809944e39ea3bfd9
|
|
BLAKE2b-256 checksum How to use checksums |
18e665a7b79db65ec3b94c7df4b7448650dc74a6ba1f5bcd382a568be9ccfb04
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 7, 2026.
Transparency log