invenio-app-rdm 14.0.0b0.dev2__py2.py3-none-any.whl → 14.0.0b0.dev3__py2.py3-none-any.whl
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_app_rdm/__init__.py +1 -1
- invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/macros/files.html +1 -1
- invenio_app_rdm/records_ui/views/decorators.py +21 -8
- invenio_app_rdm/requests_ui/views/requests.py +3 -0
- invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/search/components.js +1 -1
- invenio_app_rdm/upgrade_scripts/migrate_12_0_to_13_0.py +25 -0
- {invenio_app_rdm-14.0.0b0.dev2.dist-info → invenio_app_rdm-14.0.0b0.dev3.dist-info}/METADATA +7 -1
- {invenio_app_rdm-14.0.0b0.dev2.dist-info → invenio_app_rdm-14.0.0b0.dev3.dist-info}/RECORD +12 -12
- {invenio_app_rdm-14.0.0b0.dev2.dist-info → invenio_app_rdm-14.0.0b0.dev3.dist-info}/WHEEL +0 -0
- {invenio_app_rdm-14.0.0b0.dev2.dist-info → invenio_app_rdm-14.0.0b0.dev3.dist-info}/entry_points.txt +0 -0
- {invenio_app_rdm-14.0.0b0.dev2.dist-info → invenio_app_rdm-14.0.0b0.dev3.dist-info}/licenses/LICENSE +0 -0
- {invenio_app_rdm-14.0.0b0.dev2.dist-info → invenio_app_rdm-14.0.0b0.dev3.dist-info}/top_level.txt +0 -0
invenio_app_rdm/__init__.py
CHANGED
|
@@ -123,7 +123,7 @@ To access its content, please download it and open it locally.') }}
|
|
|
123
123
|
<a href="{{ file_url_download }}">{{ file.key }}</a>
|
|
124
124
|
</div>
|
|
125
125
|
{%- if not is_remote_file %}
|
|
126
|
-
<small class="ui text-muted font-tiny">{{ file.checksum }}
|
|
126
|
+
<small class="ui text-muted font-tiny">{{ file.checksum or _("Checksum not yet calculated.") }}
|
|
127
127
|
<div class="ui icon inline-block" data-tooltip="{{_('This is the file fingerprint (checksum), which can be used to verify the file integrity.')}}">
|
|
128
128
|
<i class="question circle checksum icon"></i>
|
|
129
129
|
</div>
|
|
@@ -23,6 +23,7 @@ from invenio_rdm_records.proxies import current_rdm_records
|
|
|
23
23
|
from invenio_rdm_records.resources.serializers.signposting import (
|
|
24
24
|
FAIRSignpostingProfileLvl1Serializer,
|
|
25
25
|
)
|
|
26
|
+
from invenio_rdm_records.services.errors import RecordDeletedException
|
|
26
27
|
from invenio_records_resources.services.errors import PermissionDeniedError
|
|
27
28
|
from sqlalchemy.orm.exc import NoResultFound
|
|
28
29
|
|
|
@@ -224,16 +225,28 @@ def pass_file_item(is_media=False):
|
|
|
224
225
|
)
|
|
225
226
|
record_service = media_files_service if is_media else files_service
|
|
226
227
|
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
228
|
+
try:
|
|
229
|
+
if is_preview:
|
|
230
|
+
try:
|
|
231
|
+
item = draft_service().get_file_content(**read_kwargs)
|
|
232
|
+
except NoResultFound:
|
|
233
|
+
item = record_service().get_file_content(**read_kwargs)
|
|
234
|
+
else:
|
|
231
235
|
item = record_service().get_file_content(**read_kwargs)
|
|
232
|
-
else:
|
|
233
|
-
item = record_service().get_file_content(**read_kwargs)
|
|
234
236
|
|
|
235
|
-
|
|
236
|
-
|
|
237
|
+
kwargs["file_item"] = item
|
|
238
|
+
return f(**kwargs)
|
|
239
|
+
|
|
240
|
+
except RecordDeletedException:
|
|
241
|
+
# Redirect to the record page which has proper tombstone handling
|
|
242
|
+
return redirect(
|
|
243
|
+
url_for(
|
|
244
|
+
"invenio_app_rdm_records.record_detail",
|
|
245
|
+
pid_value=pid_value,
|
|
246
|
+
),
|
|
247
|
+
# Use 302 (temporary) instead of 301 since records can be restored
|
|
248
|
+
code=302,
|
|
249
|
+
)
|
|
237
250
|
|
|
238
251
|
return view
|
|
239
252
|
|
|
@@ -275,6 +275,9 @@ def community_dashboard_request_view(request, community, community_ui, **kwargs)
|
|
|
275
275
|
permissions = community.has_permissions_to(
|
|
276
276
|
["update", "read", "search_requests", "search_invites", "submit_record"]
|
|
277
277
|
)
|
|
278
|
+
request_permissions = request.has_permissions_to(["action_accept"])
|
|
279
|
+
# Add request specific permissions so that reviewers can be selected from community curators
|
|
280
|
+
permissions.update(request_permissions)
|
|
278
281
|
|
|
279
282
|
if is_draft_submission or is_record_inclusion:
|
|
280
283
|
topic = _resolve_topic_record(request)
|
|
@@ -204,7 +204,7 @@ export const RDMEmptyResults = ({ queryString, searchPath, resetQuery }) => {
|
|
|
204
204
|
<Grid.Column width={12} textAlign="center">
|
|
205
205
|
<Header as="h2">
|
|
206
206
|
{i18next.t("We couldn't find any matches for {{- search}}", {
|
|
207
|
-
search: (queryString && `'${queryString}'`) || "your search",
|
|
207
|
+
search: (queryString && `'${queryString}'`) || i18next.t("your search"),
|
|
208
208
|
})}
|
|
209
209
|
</Header>
|
|
210
210
|
</Grid.Column>
|
|
@@ -28,7 +28,9 @@ from click import secho
|
|
|
28
28
|
from invenio_access.permissions import system_identity
|
|
29
29
|
from invenio_db import db
|
|
30
30
|
from invenio_rdm_records.proxies import current_rdm_records_service as records_service
|
|
31
|
+
from invenio_search import current_search_client as search_client
|
|
31
32
|
from invenio_search.engine import dsl
|
|
33
|
+
from invenio_search.utils import prefix_index
|
|
32
34
|
from invenio_vocabularies.contrib.affiliations.api import Affiliation
|
|
33
35
|
from invenio_vocabularies.contrib.names.api import Name
|
|
34
36
|
from sqlalchemy import select
|
|
@@ -184,6 +186,28 @@ def run_upgrade_for_names():
|
|
|
184
186
|
secho("Names upgrade succeeded.", fg="green")
|
|
185
187
|
|
|
186
188
|
|
|
189
|
+
def run_upgrade_for_event_stats_mappings():
|
|
190
|
+
"""Update the live event stats mappings to add missing fields."""
|
|
191
|
+
secho("Event stats mappings upgrade has started.", fg="green")
|
|
192
|
+
|
|
193
|
+
# Find the latest mappings for views and download stats events
|
|
194
|
+
for event_type in ("record-view", "file-download"):
|
|
195
|
+
try:
|
|
196
|
+
events_index = prefix_index(f"events-stats-{event_type}-*")
|
|
197
|
+
res = search_client.indices.get(events_index)
|
|
198
|
+
last_two_indices = sorted(res.keys())[-2:]
|
|
199
|
+
for index in last_two_indices:
|
|
200
|
+
res = search_client.indices.put_mapping(
|
|
201
|
+
index=index,
|
|
202
|
+
body={"properties": {"is_machine": {"type": "boolean"}}},
|
|
203
|
+
)
|
|
204
|
+
except Exception as e:
|
|
205
|
+
secho(f"Mapping update for {event_type} failed with '{repr(e)}'.", fg="red")
|
|
206
|
+
trace = traceback.format_exc()
|
|
207
|
+
secho(f"Traceback {trace}", fg="red")
|
|
208
|
+
secho("Event stats mappings upgrade succeeded.", fg="green")
|
|
209
|
+
|
|
210
|
+
|
|
187
211
|
def execute_upgrade():
|
|
188
212
|
"""Execute the upgrade from InvenioRDM 12.0 to 13.0.0.
|
|
189
213
|
|
|
@@ -203,6 +227,7 @@ def execute_upgrade():
|
|
|
203
227
|
run_upgrade_for_thesis()
|
|
204
228
|
run_upgrade_for_affiliations()
|
|
205
229
|
run_upgrade_for_names()
|
|
230
|
+
run_upgrade_for_event_stats_mappings()
|
|
206
231
|
|
|
207
232
|
|
|
208
233
|
# if the script is executed on its own, perform the upgrade
|
{invenio_app_rdm-14.0.0b0.dev2.dist-info → invenio_app_rdm-14.0.0b0.dev3.dist-info}/METADATA
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: invenio-app-rdm
|
|
3
|
-
Version: 14.0.0b0.
|
|
3
|
+
Version: 14.0.0b0.dev3
|
|
4
4
|
Summary: Invenio Research Data Management.
|
|
5
5
|
Home-page: https://github.com/inveniosoftware/invenio-app-rdm
|
|
6
6
|
Author: CERN
|
|
@@ -101,6 +101,12 @@ https://inveniordm.docs.cern.ch
|
|
|
101
101
|
Changes
|
|
102
102
|
=======
|
|
103
103
|
|
|
104
|
+
Version v14.0.0b0.dev3 (released 2025-08-26)
|
|
105
|
+
|
|
106
|
+
- fix(community-requests): request permissions were missing from UI
|
|
107
|
+
* The community requests page was not showing the request reviewers section
|
|
108
|
+
because the permissions were not passed to the template.
|
|
109
|
+
|
|
104
110
|
Version v14.0.0b0.dev2 (released 2025-08-08)
|
|
105
111
|
|
|
106
112
|
- fix(views): use correct community value
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
invenio_app_rdm/__init__.py,sha256=
|
|
1
|
+
invenio_app_rdm/__init__.py,sha256=9dbigqmwGxW5OIJi4TdjDt-BZSHiiFD0guE32fZ0jXM,704
|
|
2
2
|
invenio_app_rdm/cli.py,sha256=G6QqNU2W6n6ICtTMnpeKFXIsdorncDmVXwwwsGH5F2k,2746
|
|
3
3
|
invenio_app_rdm/config.py,sha256=T5pTzoBAAsxyp4ACAnfIhHcMowVkAnk8fWXlHR2OrRA,52107
|
|
4
4
|
invenio_app_rdm/ext.py,sha256=K7syn5CU5If7yOclFeNOCZX_u5q6VB7NJEQVm41mlng,5286
|
|
@@ -80,12 +80,12 @@ invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details
|
|
|
80
80
|
invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/macros/creatibutors.html,sha256=N53nwtlEZjxweCx70qFJa1s6uL1pPSzWZgk8p1vodE4,4277
|
|
81
81
|
invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/macros/detail.html,sha256=2H6A4YzS8-4LRcPwyU04HsvnvieseVrrf_kndZl92zI,10622
|
|
82
82
|
invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/macros/doi.html,sha256=32Yknq5PgvJpYg9Z3Brod9wui9yrpDNE11_esG-20jw,1656
|
|
83
|
-
invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/macros/files.html,sha256=
|
|
83
|
+
invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/macros/files.html,sha256=6OIavFXP1BeV1Xozkv-2SOea9M5RUwjRI6gEGzBUle4,9564
|
|
84
84
|
invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/macros/locations.html,sha256=27-KyPqb05pu-yRXHvxCgZWRSi5bFP6xf7XBn91sbeA,1741
|
|
85
85
|
invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/macros/stats_popup.html,sha256=5SVzfIS15Aro2Itd2BiaLbMXm0cvvwk6ZCdYjuSwhBw,625
|
|
86
86
|
invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/macros/version.html,sha256=eA8-n81XUezkwPXvcG5v2sgLPQNTgr7hB36-_Gr-tVI,758
|
|
87
87
|
invenio_app_rdm/records_ui/views/__init__.py,sha256=9DaDls04IQv7fYttDjLofIWGsRRjk-FwUYnIfxV3OWk,5840
|
|
88
|
-
invenio_app_rdm/records_ui/views/decorators.py,sha256
|
|
88
|
+
invenio_app_rdm/records_ui/views/decorators.py,sha256=-GdyPh2qIxV_wacAv5uChNx-HW2LiKjHQiRujiu42B4,16510
|
|
89
89
|
invenio_app_rdm/records_ui/views/deposits.py,sha256=W5H6QxIcxAopDCt7IAQ--l2d0VaZPEv5uwwTEon8MyU,22790
|
|
90
90
|
invenio_app_rdm/records_ui/views/filters.py,sha256=zKuqjM_Yb9MmBmloStjasASYCwVG7mUe0eolI2MtPXg,6998
|
|
91
91
|
invenio_app_rdm/records_ui/views/records.py,sha256=8uA8JKhHU9UvpkqxZ9zcExyceOXibHIq4bMvtJ0DMBc,16220
|
|
@@ -103,7 +103,7 @@ invenio_app_rdm/requests_ui/templates/semantic-ui/invenio_requests/subcommunity/
|
|
|
103
103
|
invenio_app_rdm/requests_ui/templates/semantic-ui/invenio_requests/subcommunity-invitation/index.html,sha256=347Saf8Fv78uevCbK2nFiOtNFUT0QyZSZS7lgoNzHdQ,1448
|
|
104
104
|
invenio_app_rdm/requests_ui/templates/semantic-ui/invenio_requests/user-access-request/index.html,sha256=ltSP9sYPnpmCKMDYpZYU25Wxr3Dfqe2RNDxm6bVjX_I,1779
|
|
105
105
|
invenio_app_rdm/requests_ui/views/__init__.py,sha256=7QiAyRq8Eu84IXwjzxK63vNeTZnowZ5P85xtw7XgRjs,397
|
|
106
|
-
invenio_app_rdm/requests_ui/views/requests.py,sha256=
|
|
106
|
+
invenio_app_rdm/requests_ui/views/requests.py,sha256=8LtOfABMLy1drvb2qew3LyNg-BuPm8uM9R3uZ7r2Ndk,14525
|
|
107
107
|
invenio_app_rdm/requests_ui/views/ui.py,sha256=DBysYQa__gOCg-pikO6HmoVLmRmMAVWeTBiYhPa7PmA,2359
|
|
108
108
|
invenio_app_rdm/theme/__init__.py,sha256=QbkxNjjOmGKRlie96HfTXgnFeVQjOX0GdiZnHP7pIhs,277
|
|
109
109
|
invenio_app_rdm/theme/views.py,sha256=mrcxejY9PlYwEqh8f0ojKX4CtmD9jz4f9rU-5aLZszU,4457
|
|
@@ -220,7 +220,7 @@ invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/requests/index.js,sh
|
|
|
220
220
|
invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/requests/timeline/AccessRequestTimelineEdit.js,sha256=rM5iSICtNsqXgOzNAWSpV61qJf8oE7XxqVTHMmhqkFk,5639
|
|
221
221
|
invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/requests/timeline/AccessRequestTimelineRead.js,sha256=ezxgh43UbgthNNGL2hoh1YwNBlPl1fC_TI0RcnFHd1w,1389
|
|
222
222
|
invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/requests/timeline/overrides/TimelineFeedHeader.js,sha256=vU_D4F5jabAghjfPtpC3JvErrBVy39Je-PARgqwMD4w,1164
|
|
223
|
-
invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/search/components.js,sha256=
|
|
223
|
+
invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/search/components.js,sha256=HfGLz_FZYePPEnS4fJ9-CVa8BzHPOgRi1_d21FgVrFg,7234
|
|
224
224
|
invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/search/index.js,sha256=xvc8dtcPsTABiSpbt8azBVuZJuhXi39Nj4N8mPiFd40,2190
|
|
225
225
|
invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/subcommunity/browse.js,sha256=N6tCJ4_NBlfQSRaiYfp4K-keHCC6xgFWmh1UCgBTyXA,921
|
|
226
226
|
invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/user_dashboard/base.js,sha256=OoSdV2v5hdXFxqL7rLB7un6X2kxiXWh1V-bVu6RhmUc,6879
|
|
@@ -463,7 +463,7 @@ invenio_app_rdm/upgrade_scripts/fix_migrated_records_from_1_0_to_2_0.py,sha256=S
|
|
|
463
463
|
invenio_app_rdm/upgrade_scripts/fix_migrated_records_from_8_0_to_9_0.py,sha256=p6qTNjUMAJ-0tnrSwar7jtDX_sg6V9kFj7fzH-wrbkY,2769
|
|
464
464
|
invenio_app_rdm/upgrade_scripts/migrate_10_0_to_11_0.py,sha256=TX6FCWXY4qM4z7IYzDO5qaMTheo3zAjFrmR1sXaEf4U,1333
|
|
465
465
|
invenio_app_rdm/upgrade_scripts/migrate_11_0_to_12_0.py,sha256=Tp7jfT2JHrYCFzF2qIYqG7yr7k-GhX2zkw61CWJGA78,6941
|
|
466
|
-
invenio_app_rdm/upgrade_scripts/migrate_12_0_to_13_0.py,sha256=
|
|
466
|
+
invenio_app_rdm/upgrade_scripts/migrate_12_0_to_13_0.py,sha256=pyO68jyGyKXVTcja8tpi2XgNx_FxXk7JhgDTV-wx3xM,8205
|
|
467
467
|
invenio_app_rdm/upgrade_scripts/migrate_1_0_records_to_2_0.py,sha256=mRDv_Ao5zMgA6X0aogMfvhspO1CIApKtDW_ziJp5fjI,3325
|
|
468
468
|
invenio_app_rdm/upgrade_scripts/migrate_2_0_to_3_0.py,sha256=jL_2I61Q9qt3fjBzYYueeT4EMQ9FlNPxYE4nzDQbLEY,2698
|
|
469
469
|
invenio_app_rdm/upgrade_scripts/migrate_3_0_to_4_0.py,sha256=BNjGufwLBvLHnu0gz5b_Are-FuxYjXlCtkLgNQckV3U,4768
|
|
@@ -484,9 +484,9 @@ invenio_app_rdm/users_ui/views/__init__.py,sha256=SMdY2NJj9GICfr3Xuok7qdNYVtA2bJ
|
|
|
484
484
|
invenio_app_rdm/users_ui/views/dashboard.py,sha256=iUn2PrODAwb8ugmMosJKAjPhUzjCiWiAWoXQr9RUFuc,1793
|
|
485
485
|
invenio_app_rdm/users_ui/views/ui.py,sha256=W_eXM8dLVIrNHQB2UEh37C9BYoHauft6RyvcDNFHovA,1742
|
|
486
486
|
invenio_app_rdm/utils/files.py,sha256=CruDyO2gDVadSlWEJD-WHpWHeOQ0juh-Ei9jz3D9yjc,3923
|
|
487
|
-
invenio_app_rdm-14.0.0b0.
|
|
488
|
-
invenio_app_rdm-14.0.0b0.
|
|
489
|
-
invenio_app_rdm-14.0.0b0.
|
|
490
|
-
invenio_app_rdm-14.0.0b0.
|
|
491
|
-
invenio_app_rdm-14.0.0b0.
|
|
492
|
-
invenio_app_rdm-14.0.0b0.
|
|
487
|
+
invenio_app_rdm-14.0.0b0.dev3.dist-info/licenses/LICENSE,sha256=AZXFHRrZa5s4m9DV7zZr4bPGTMUvcEPCodeV_AmFI8k,1204
|
|
488
|
+
invenio_app_rdm-14.0.0b0.dev3.dist-info/METADATA,sha256=DMbOkqTHB0tsjs8ThOUo0-mIUNzSET1arDvS4-I5nvo,16955
|
|
489
|
+
invenio_app_rdm-14.0.0b0.dev3.dist-info/WHEEL,sha256=JNWh1Fm1UdwIQV075glCn4MVuCRs0sotJIq-J6rbxCU,109
|
|
490
|
+
invenio_app_rdm-14.0.0b0.dev3.dist-info/entry_points.txt,sha256=rfzEeOEdtGy99NlpWzeW-32CoO5XrEpBvlZwLD2Th88,2158
|
|
491
|
+
invenio_app_rdm-14.0.0b0.dev3.dist-info/top_level.txt,sha256=quZejDUw2vLfKQboNIuVLJ9fxZifdnCT_s2PNf1dfmk,16
|
|
492
|
+
invenio_app_rdm-14.0.0b0.dev3.dist-info/RECORD,,
|
|
File without changes
|
{invenio_app_rdm-14.0.0b0.dev2.dist-info → invenio_app_rdm-14.0.0b0.dev3.dist-info}/entry_points.txt
RENAMED
|
File without changes
|
{invenio_app_rdm-14.0.0b0.dev2.dist-info → invenio_app_rdm-14.0.0b0.dev3.dist-info}/licenses/LICENSE
RENAMED
|
File without changes
|
{invenio_app_rdm-14.0.0b0.dev2.dist-info → invenio_app_rdm-14.0.0b0.dev3.dist-info}/top_level.txt
RENAMED
|
File without changes
|