Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

About

Utilities to manage subjects (typically InvenioRDM)

Resources

Stars

5 stars

Watchers

4 watching

Forks

Releases

Packages

Used by

Contributors

Languages