invenio-subjects-mesh-lite 2024.3.6__tar.gz → 2025.1.15.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {invenio_subjects_mesh_lite-2024.3.6 → invenio_subjects_mesh_lite-2025.1.15.2}/CHANGES.md +9 -0
- {invenio_subjects_mesh_lite-2024.3.6/invenio_subjects_mesh_lite.egg-info → invenio_subjects_mesh_lite-2025.1.15.2}/PKG-INFO +55 -11
- {invenio_subjects_mesh_lite-2024.3.6 → invenio_subjects_mesh_lite-2025.1.15.2}/README.md +44 -8
- {invenio_subjects_mesh_lite-2024.3.6 → invenio_subjects_mesh_lite-2025.1.15.2}/invenio_subjects_mesh_lite/vocabularies/subjects_mesh.csv +30361 -30173
- {invenio_subjects_mesh_lite-2024.3.6 → invenio_subjects_mesh_lite-2025.1.15.2/invenio_subjects_mesh_lite.egg-info}/PKG-INFO +55 -11
- invenio_subjects_mesh_lite-2025.1.15.2/invenio_subjects_mesh_lite.egg-info/requires.txt +15 -0
- {invenio_subjects_mesh_lite-2024.3.6 → invenio_subjects_mesh_lite-2025.1.15.2}/pyproject.toml +23 -2
- {invenio_subjects_mesh_lite-2024.3.6 → invenio_subjects_mesh_lite-2025.1.15.2}/tests/test_invenio_subjects_mesh_lite.py +3 -5
- invenio_subjects_mesh_lite-2024.3.6/invenio_subjects_mesh_lite.egg-info/requires.txt +0 -8
- {invenio_subjects_mesh_lite-2024.3.6 → invenio_subjects_mesh_lite-2025.1.15.2}/LICENSE +0 -0
- {invenio_subjects_mesh_lite-2024.3.6 → invenio_subjects_mesh_lite-2025.1.15.2}/MANIFEST.in +0 -0
- {invenio_subjects_mesh_lite-2024.3.6 → invenio_subjects_mesh_lite-2025.1.15.2}/invenio_subjects_mesh_lite/__init__.py +0 -0
- {invenio_subjects_mesh_lite-2024.3.6 → invenio_subjects_mesh_lite-2025.1.15.2}/invenio_subjects_mesh_lite/vocabularies/__init__.py +0 -0
- {invenio_subjects_mesh_lite-2024.3.6 → invenio_subjects_mesh_lite-2025.1.15.2}/invenio_subjects_mesh_lite/vocabularies/vocabularies.yaml +0 -0
- {invenio_subjects_mesh_lite-2024.3.6 → invenio_subjects_mesh_lite-2025.1.15.2}/invenio_subjects_mesh_lite.egg-info/SOURCES.txt +0 -0
- {invenio_subjects_mesh_lite-2024.3.6 → invenio_subjects_mesh_lite-2025.1.15.2}/invenio_subjects_mesh_lite.egg-info/dependency_links.txt +0 -0
- {invenio_subjects_mesh_lite-2024.3.6 → invenio_subjects_mesh_lite-2025.1.15.2}/invenio_subjects_mesh_lite.egg-info/entry_points.txt +0 -0
- {invenio_subjects_mesh_lite-2024.3.6 → invenio_subjects_mesh_lite-2025.1.15.2}/invenio_subjects_mesh_lite.egg-info/top_level.txt +0 -0
- {invenio_subjects_mesh_lite-2024.3.6 → invenio_subjects_mesh_lite-2025.1.15.2}/setup.cfg +0 -0
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# Changes
|
|
2
2
|
|
|
3
|
+
Version 2025.1.15.2 (released 2025-07-15)
|
|
4
|
+
|
|
5
|
+
- Compatible with InvenioRDM v13
|
|
6
|
+
- Switch versioning pattern
|
|
7
|
+
|
|
8
|
+
Version 2025.1.15 (released 2025-01-15)
|
|
9
|
+
|
|
10
|
+
- MeSH 2025
|
|
11
|
+
|
|
3
12
|
Version 2024.3.6 (released 2024-08-09)
|
|
4
13
|
|
|
5
14
|
- make compatible with InvenioRDM v12
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: invenio-subjects-mesh-lite
|
|
3
|
-
Version:
|
|
3
|
+
Version: 2025.1.15.2
|
|
4
4
|
Summary: MeSH subject terms without qualifiers
|
|
5
5
|
Author-email: Northwestern University <DL_FSM_GDS@e.northwestern.edu>
|
|
6
6
|
License: MIT License
|
|
@@ -38,21 +38,33 @@ Classifier: Programming Language :: Python :: 3
|
|
|
38
38
|
Classifier: Programming Language :: Python :: 3.9
|
|
39
39
|
Classifier: Programming Language :: Python :: 3.11
|
|
40
40
|
Classifier: Programming Language :: Python :: 3.12
|
|
41
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
41
42
|
Requires-Python: >=3.9
|
|
42
43
|
Description-Content-Type: text/markdown
|
|
43
44
|
License-File: LICENSE
|
|
44
|
-
Requires-Dist: galter-subjects-utils<2.0,>=0.
|
|
45
|
+
Requires-Dist: galter-subjects-utils<2.0,>=0.7.0
|
|
45
46
|
Provides-Extra: dev
|
|
46
47
|
Requires-Dist: check-manifest>=0.49; extra == "dev"
|
|
47
48
|
Requires-Dist: invenio-search[opensearch2]<3.0,>=2.1.0; extra == "dev"
|
|
48
49
|
Requires-Dist: invoke<3.0,>=2.2; extra == "dev"
|
|
49
50
|
Requires-Dist: pyyaml>=5.4.1; extra == "dev"
|
|
50
51
|
Requires-Dist: pytest-invenio<3.0.0,>=2.1.1; extra == "dev"
|
|
52
|
+
Provides-Extra: dev-pre
|
|
53
|
+
Requires-Dist: check-manifest>=0.49; extra == "dev-pre"
|
|
54
|
+
Requires-Dist: invenio-search[opensearch2]<4.0.0,>=3.0.0; extra == "dev-pre"
|
|
55
|
+
Requires-Dist: invoke<3.0,>=2.2; extra == "dev-pre"
|
|
56
|
+
Requires-Dist: pyyaml>=5.4.1; extra == "dev-pre"
|
|
57
|
+
Requires-Dist: pytest-invenio<4.0.0,>=3.3.0; extra == "dev-pre"
|
|
58
|
+
Dynamic: license-file
|
|
51
59
|
|
|
52
60
|
# invenio-subjects-mesh-lite
|
|
53
61
|
|
|
54
62
|
*MeSH topical subject terms without qualifiers for InvenioRDM*
|
|
55
63
|
|
|
64
|
+
<a href="https://pypi.org/project/invenio-subjects-mesh-lite/">
|
|
65
|
+
<img src="https://img.shields.io/pypi/v/invenio-subjects-mesh-lite.svg">
|
|
66
|
+
</a>
|
|
67
|
+
|
|
56
68
|
Install this extension to get Medical Subject Headings topics without qualifiers into your instance.
|
|
57
69
|
|
|
58
70
|
If you are looking for a larger MeSH vocabulary with qualifiers, use
|
|
@@ -75,21 +87,40 @@ This will add it to your Pipfile.
|
|
|
75
87
|
|
|
76
88
|
## Versions
|
|
77
89
|
|
|
78
|
-
|
|
90
|
+
**From 2025.1.15.2 onwards**
|
|
79
91
|
|
|
80
|
-
|
|
81
|
-
|
|
92
|
+
This package follows the following format for versions: `YYYY.mm.dd.patch` where
|
|
93
|
+
|
|
94
|
+
- `YYYY.mm.dd` is the date of retrieval of the MeSH terms with `mm` and `dd` NOT being 0-prefixed.
|
|
95
|
+
- `patch` is the patch number (0-indexed) so that multiple releases can be done on the same day (bug/security fixes) and non-subject related releases can be done as well.
|
|
96
|
+
|
|
97
|
+
This follows [calendar versioning](https://calver.org/) (for year, month, and day) and adds a patch number at the end. The package is typically updated on a quarterly basis. The following are illustrative (fictitious) examples of how to understand the versioning of this distribution package:
|
|
98
|
+
|
|
99
|
+
| Last MeSH update included | patch number | version of this project |
|
|
100
|
+
| ------------------------- | ------------ | ----------------------- |
|
|
101
|
+
| 2025-06-31 | 2 | 2025.6.31.2 |
|
|
102
|
+
| 2025-12-01 | 0 | 2025.12.1.0 |
|
|
103
|
+
|
|
104
|
+
**Prior to 2025.1.15.2**
|
|
105
|
+
|
|
106
|
+
This repository follows [calendar versioning](https://calver.org/) for year and month. It does a "best effort" attempt at tracking the MeSH updates in an *up-to-and-including* version date manner. The following are illustrative cases of how to understand the versioning of this distribution package:
|
|
107
|
+
|
|
108
|
+
| Last MeSH update included | version of this project | date of release of this project |
|
|
109
|
+
| ------------------------- | ----------------------- | ------------------------------- |
|
|
110
|
+
| 2024-01-31 | 2024.1.X | any time after 2024-01-31 |
|
|
111
|
+
| 2023-12-31 | 2023.12.X | any time after 2023-12-31 |
|
|
82
112
|
|
|
83
|
-
|
|
84
|
-
|
|
113
|
+
|
|
114
|
+
`2021.06.18` is both a valid semantic version and an indicator of the year-month corresponding to the loaded terms.
|
|
115
|
+
`18` here is a patch number (not a day).
|
|
85
116
|
|
|
86
117
|
## Usage
|
|
87
118
|
|
|
88
|
-
There are 2 types of users for this package. Instance
|
|
119
|
+
There are 2 types of users for this package. Instance operators and package maintainers.
|
|
89
120
|
|
|
90
|
-
### Instance
|
|
121
|
+
### Instance operators
|
|
91
122
|
|
|
92
|
-
For instance
|
|
123
|
+
For instance operators, after you have installed the extension as per the steps above, you will want to reload your instance's fixtures: `pipenv run invenio rdm-records fixtures`. This will install the new terms in your instance.
|
|
93
124
|
|
|
94
125
|
Alternatively, or if you want to update your already loaded subjects to a new listing (e.g. from one year's list to another), you can update your instance's MeSH subjects as per below. Updating subjects this way takes care of everything for you: the subjects themselves and the records/drafts using those subjects. **WARNING** This operation can _remove_ subjects.
|
|
95
126
|
|
|
@@ -127,6 +158,8 @@ Once you have it installed, you can run the following commands in the isolated v
|
|
|
127
158
|
(venv) invenio galter_subjects mesh file -d /path/to/downloads/storage/ -y YEAR -f topic -o invenio_subjects_mesh_lite/vocabularies/subjects_mesh.csv
|
|
128
159
|
```
|
|
129
160
|
|
|
161
|
+
Sorting the resulting csv is a nice touch for humans to better parse the changes between versions.
|
|
162
|
+
|
|
130
163
|
When you are happy with the list, bump the version in `pyproject.toml` and release it.
|
|
131
164
|
|
|
132
165
|
|
|
@@ -150,6 +183,17 @@ Run tests:
|
|
|
150
183
|
pipenv run inv test
|
|
151
184
|
```
|
|
152
185
|
|
|
186
|
+
Test compatibility with the pre-release version of InvenioRDM (invenio-app-rdm):
|
|
187
|
+
|
|
188
|
+
```bash
|
|
189
|
+
# Step 1 - install the pre-release dependencies
|
|
190
|
+
(venv) pip install --pre -e .[dev_pre]
|
|
191
|
+
# Step 2 - Run the pre-release tests
|
|
192
|
+
(venv) inv test
|
|
193
|
+
# if using uv run:
|
|
194
|
+
uv run --extra dev_pre --prerelease=allow inv test
|
|
195
|
+
```
|
|
196
|
+
|
|
153
197
|
Check manifest:
|
|
154
198
|
|
|
155
199
|
```bash
|
|
@@ -2,6 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
*MeSH topical subject terms without qualifiers for InvenioRDM*
|
|
4
4
|
|
|
5
|
+
<a href="https://pypi.org/project/invenio-subjects-mesh-lite/">
|
|
6
|
+
<img src="https://img.shields.io/pypi/v/invenio-subjects-mesh-lite.svg">
|
|
7
|
+
</a>
|
|
8
|
+
|
|
5
9
|
Install this extension to get Medical Subject Headings topics without qualifiers into your instance.
|
|
6
10
|
|
|
7
11
|
If you are looking for a larger MeSH vocabulary with qualifiers, use
|
|
@@ -24,21 +28,40 @@ This will add it to your Pipfile.
|
|
|
24
28
|
|
|
25
29
|
## Versions
|
|
26
30
|
|
|
27
|
-
|
|
31
|
+
**From 2025.1.15.2 onwards**
|
|
28
32
|
|
|
29
|
-
|
|
30
|
-
|
|
33
|
+
This package follows the following format for versions: `YYYY.mm.dd.patch` where
|
|
34
|
+
|
|
35
|
+
- `YYYY.mm.dd` is the date of retrieval of the MeSH terms with `mm` and `dd` NOT being 0-prefixed.
|
|
36
|
+
- `patch` is the patch number (0-indexed) so that multiple releases can be done on the same day (bug/security fixes) and non-subject related releases can be done as well.
|
|
37
|
+
|
|
38
|
+
This follows [calendar versioning](https://calver.org/) (for year, month, and day) and adds a patch number at the end. The package is typically updated on a quarterly basis. The following are illustrative (fictitious) examples of how to understand the versioning of this distribution package:
|
|
39
|
+
|
|
40
|
+
| Last MeSH update included | patch number | version of this project |
|
|
41
|
+
| ------------------------- | ------------ | ----------------------- |
|
|
42
|
+
| 2025-06-31 | 2 | 2025.6.31.2 |
|
|
43
|
+
| 2025-12-01 | 0 | 2025.12.1.0 |
|
|
44
|
+
|
|
45
|
+
**Prior to 2025.1.15.2**
|
|
46
|
+
|
|
47
|
+
This repository follows [calendar versioning](https://calver.org/) for year and month. It does a "best effort" attempt at tracking the MeSH updates in an *up-to-and-including* version date manner. The following are illustrative cases of how to understand the versioning of this distribution package:
|
|
48
|
+
|
|
49
|
+
| Last MeSH update included | version of this project | date of release of this project |
|
|
50
|
+
| ------------------------- | ----------------------- | ------------------------------- |
|
|
51
|
+
| 2024-01-31 | 2024.1.X | any time after 2024-01-31 |
|
|
52
|
+
| 2023-12-31 | 2023.12.X | any time after 2023-12-31 |
|
|
31
53
|
|
|
32
|
-
|
|
33
|
-
|
|
54
|
+
|
|
55
|
+
`2021.06.18` is both a valid semantic version and an indicator of the year-month corresponding to the loaded terms.
|
|
56
|
+
`18` here is a patch number (not a day).
|
|
34
57
|
|
|
35
58
|
## Usage
|
|
36
59
|
|
|
37
|
-
There are 2 types of users for this package. Instance
|
|
60
|
+
There are 2 types of users for this package. Instance operators and package maintainers.
|
|
38
61
|
|
|
39
|
-
### Instance
|
|
62
|
+
### Instance operators
|
|
40
63
|
|
|
41
|
-
For instance
|
|
64
|
+
For instance operators, after you have installed the extension as per the steps above, you will want to reload your instance's fixtures: `pipenv run invenio rdm-records fixtures`. This will install the new terms in your instance.
|
|
42
65
|
|
|
43
66
|
Alternatively, or if you want to update your already loaded subjects to a new listing (e.g. from one year's list to another), you can update your instance's MeSH subjects as per below. Updating subjects this way takes care of everything for you: the subjects themselves and the records/drafts using those subjects. **WARNING** This operation can _remove_ subjects.
|
|
44
67
|
|
|
@@ -76,6 +99,8 @@ Once you have it installed, you can run the following commands in the isolated v
|
|
|
76
99
|
(venv) invenio galter_subjects mesh file -d /path/to/downloads/storage/ -y YEAR -f topic -o invenio_subjects_mesh_lite/vocabularies/subjects_mesh.csv
|
|
77
100
|
```
|
|
78
101
|
|
|
102
|
+
Sorting the resulting csv is a nice touch for humans to better parse the changes between versions.
|
|
103
|
+
|
|
79
104
|
When you are happy with the list, bump the version in `pyproject.toml` and release it.
|
|
80
105
|
|
|
81
106
|
|
|
@@ -99,6 +124,17 @@ Run tests:
|
|
|
99
124
|
pipenv run inv test
|
|
100
125
|
```
|
|
101
126
|
|
|
127
|
+
Test compatibility with the pre-release version of InvenioRDM (invenio-app-rdm):
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
# Step 1 - install the pre-release dependencies
|
|
131
|
+
(venv) pip install --pre -e .[dev_pre]
|
|
132
|
+
# Step 2 - Run the pre-release tests
|
|
133
|
+
(venv) inv test
|
|
134
|
+
# if using uv run:
|
|
135
|
+
uv run --extra dev_pre --prerelease=allow inv test
|
|
136
|
+
```
|
|
137
|
+
|
|
102
138
|
Check manifest:
|
|
103
139
|
|
|
104
140
|
```bash
|