oarepo-runtime 1.5.72__py3-none-any.whl → 1.5.75__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.
- oarepo_runtime/cli/index.py +28 -9
- oarepo_runtime/datastreams/utils.py +6 -2
- oarepo_runtime/services/records/__init__.py +3 -0
- oarepo_runtime/services/records/links.py +21 -0
- oarepo_runtime/services/results.py +39 -0
- oarepo_runtime/services/schema/validation.py +12 -2
- oarepo_runtime/translations/cs/LC_MESSAGES/messages.mo +0 -0
- oarepo_runtime/translations/cs/LC_MESSAGES/messages.po +5 -0
- oarepo_runtime/translations/en/LC_MESSAGES/messages.mo +0 -0
- oarepo_runtime/translations/en/LC_MESSAGES/messages.po +5 -0
- oarepo_runtime/translations/messages.pot +20 -14
- {oarepo_runtime-1.5.72.dist-info → oarepo_runtime-1.5.75.dist-info}/METADATA +1 -1
- {oarepo_runtime-1.5.72.dist-info → oarepo_runtime-1.5.75.dist-info}/RECORD +17 -16
- {oarepo_runtime-1.5.72.dist-info → oarepo_runtime-1.5.75.dist-info}/entry_points.txt +3 -0
- oarepo_runtime/translations/jinjax_messages.jinja +0 -0
- {oarepo_runtime-1.5.72.dist-info → oarepo_runtime-1.5.75.dist-info}/LICENSE +0 -0
- {oarepo_runtime-1.5.72.dist-info → oarepo_runtime-1.5.75.dist-info}/WHEEL +0 -0
- {oarepo_runtime-1.5.72.dist-info → oarepo_runtime-1.5.75.dist-info}/top_level.txt +0 -0
oarepo_runtime/cli/index.py
CHANGED
@@ -7,6 +7,7 @@ from flask.cli import with_appcontext
|
|
7
7
|
from invenio_db import db
|
8
8
|
from invenio_records_resources.proxies import current_service_registry
|
9
9
|
from invenio_search.proxies import current_search
|
10
|
+
import traceback
|
10
11
|
from werkzeug.utils import ImportStringError, import_string
|
11
12
|
|
12
13
|
try:
|
@@ -102,9 +103,10 @@ def record_or_service(model):
|
|
102
103
|
@click.option("--verbose/--no-verbose", default=False)
|
103
104
|
def reindex(model, bulk_size, verbose):
|
104
105
|
if not model:
|
105
|
-
services = current_service_registry._services.keys()
|
106
|
+
services = list(current_service_registry._services.keys())
|
106
107
|
else:
|
107
108
|
services = [model]
|
109
|
+
services = sort_services(services)
|
108
110
|
for service_id in services:
|
109
111
|
click.secho(f"Preparing to index {service_id}", file=sys.stderr)
|
110
112
|
|
@@ -200,14 +202,17 @@ def generate_bulk_data(record_generator, record_indexer, bulk_size):
|
|
200
202
|
data = []
|
201
203
|
n = 0
|
202
204
|
for record in tqdm(record_generator):
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
205
|
+
try:
|
206
|
+
index = record_indexer.record_to_index(record)
|
207
|
+
body = record_indexer._prepare_record(record, index)
|
208
|
+
index = record_indexer._prepare_index(index)
|
209
|
+
data.append({"index": {"_index": index, "_id": body["uuid"]}})
|
210
|
+
data.append(body)
|
211
|
+
if len(data) >= bulk_size:
|
212
|
+
yield data
|
213
|
+
data = []
|
214
|
+
except:
|
215
|
+
traceback.print_exc()
|
211
216
|
if data:
|
212
217
|
yield data
|
213
218
|
|
@@ -240,5 +245,19 @@ def users_record_generator(model_class):
|
|
240
245
|
except Exception as e:
|
241
246
|
click.secho(f"Could not index {model_class}: {e}", fg="red", file=sys.stderr)
|
242
247
|
|
248
|
+
priorities = [
|
249
|
+
'vocabular',
|
250
|
+
'users',
|
251
|
+
'groups'
|
252
|
+
]
|
253
|
+
|
254
|
+
def sort_services(services):
|
255
|
+
def idx(x):
|
256
|
+
for idx, p in enumerate(priorities):
|
257
|
+
if p in x:
|
258
|
+
return idx, x
|
259
|
+
return len(priorities), x
|
260
|
+
services.sort(key=idx)
|
261
|
+
return services
|
243
262
|
|
244
263
|
RECORD_GENERATORS = {"users": users_record_generator}
|
@@ -15,12 +15,16 @@ def get_record_service_for_record(record):
|
|
15
15
|
if not record:
|
16
16
|
return None
|
17
17
|
if "OAREPO_PRIMARY_RECORD_SERVICE" in current_app.config:
|
18
|
-
|
19
|
-
return current_service_registry.get(service_id)
|
18
|
+
return get_record_service_for_record_class(type(record))
|
20
19
|
else:
|
21
20
|
return get_record_service_for_record_deprecated(record)
|
22
21
|
|
23
22
|
|
23
|
+
def get_record_service_for_record_class(record_cls):
|
24
|
+
service_id = current_app.config["OAREPO_PRIMARY_RECORD_SERVICE"][record_cls]
|
25
|
+
return current_service_registry.get(service_id)
|
26
|
+
|
27
|
+
|
24
28
|
@deprecated(
|
25
29
|
version="1.5.43", reason="Please recompile model to remove this deprecation warning"
|
26
30
|
)
|
@@ -0,0 +1,21 @@
|
|
1
|
+
from invenio_records_resources.services.base.links import Link
|
2
|
+
|
3
|
+
def pagination_links_html(tpl: str)->dict[str, Link]:
|
4
|
+
"""Create pagination links (prev/selv/next) from the same template."""
|
5
|
+
return {
|
6
|
+
"prev_html": Link(
|
7
|
+
tpl,
|
8
|
+
when=lambda pagination, ctx: pagination.has_prev,
|
9
|
+
vars=lambda pagination, vars: vars["args"].update(
|
10
|
+
{"page": pagination.prev_page.page}
|
11
|
+
),
|
12
|
+
),
|
13
|
+
"self_html": Link(tpl),
|
14
|
+
"next_html": Link(
|
15
|
+
tpl,
|
16
|
+
when=lambda pagination, ctx: pagination.has_next,
|
17
|
+
vars=lambda pagination, vars: vars["args"].update(
|
18
|
+
{"page": pagination.next_page.page}
|
19
|
+
),
|
20
|
+
),
|
21
|
+
}
|
@@ -1,3 +1,4 @@
|
|
1
|
+
from invenio_records_resources.errors import _iter_errors_dict
|
1
2
|
from invenio_records_resources.services.records.results import (
|
2
3
|
RecordItem as BaseRecordItem,
|
3
4
|
)
|
@@ -30,6 +31,44 @@ class RecordItem(BaseRecordItem):
|
|
30
31
|
)
|
31
32
|
return _data
|
32
33
|
|
34
|
+
@property
|
35
|
+
def errors(self):
|
36
|
+
return postprocess_errors(self._errors)
|
37
|
+
|
38
|
+
def to_dict(self):
|
39
|
+
"""Get a dictionary for the record."""
|
40
|
+
res = self.data
|
41
|
+
if self._errors:
|
42
|
+
res["errors"] = self.errors
|
43
|
+
return res
|
44
|
+
|
45
|
+
|
46
|
+
def postprocess_error_messages(field_path: str, messages: any):
|
47
|
+
"""Postprocess error messages, looking for those that were not correctly processed by marshmallow/invenio.
|
48
|
+
|
49
|
+
"""
|
50
|
+
if not isinstance(messages, list):
|
51
|
+
yield {"field": field_path, "messages": messages}
|
52
|
+
else:
|
53
|
+
str_messages = [ msg for msg in messages if isinstance(msg, str) ]
|
54
|
+
non_str_messages = [ msg for msg in messages if not isinstance(msg, str) ]
|
55
|
+
|
56
|
+
if str_messages:
|
57
|
+
yield {"field": field_path, "messages": str_messages}
|
58
|
+
else:
|
59
|
+
for non_str_msg in non_str_messages:
|
60
|
+
yield from _iter_errors_dict(non_str_msg, field_path)
|
61
|
+
|
62
|
+
|
63
|
+
def postprocess_errors(errors: list[dict]):
|
64
|
+
"""Postprocess errors."""
|
65
|
+
converted_errors = []
|
66
|
+
for error in errors:
|
67
|
+
if error.get("messages"):
|
68
|
+
converted_errors.extend(postprocess_error_messages(error["field"], error["messages"]))
|
69
|
+
else:
|
70
|
+
converted_errors.append(error)
|
71
|
+
return converted_errors
|
33
72
|
|
34
73
|
class RecordList(BaseRecordList):
|
35
74
|
components = []
|
@@ -6,14 +6,24 @@ from idutils import normalize_pid
|
|
6
6
|
from marshmallow.exceptions import ValidationError
|
7
7
|
from marshmallow_utils.fields.edtfdatestring import EDTFValidator
|
8
8
|
|
9
|
+
from invenio_i18n import gettext as _
|
10
|
+
|
9
11
|
|
10
12
|
def validate_identifier(value):
|
11
13
|
try:
|
12
|
-
value["identifier"]
|
14
|
+
original_identifier = (value["identifier"] or '').strip()
|
15
|
+
normalized_identifier = normalize_pid(
|
13
16
|
value["identifier"], value["scheme"].lower()
|
14
17
|
)
|
18
|
+
if original_identifier and not normalized_identifier:
|
19
|
+
# the normalize_pid library has problems with isbn - does not raise an exception
|
20
|
+
# but returns an empty string
|
21
|
+
raise ValueError()
|
22
|
+
value["identifier"] = normalized_identifier
|
15
23
|
except:
|
16
|
-
raise ValidationError(
|
24
|
+
raise ValidationError({
|
25
|
+
"identifier": _("Invalid value %(identifier)s of identifier type %(type)s") % {"identifier": value['identifier'], "type": value['scheme']}
|
26
|
+
})
|
17
27
|
return value
|
18
28
|
|
19
29
|
|
Binary file
|
@@ -46,3 +46,8 @@ msgstr "Dle názvu"
|
|
46
46
|
#: oarepo_runtime/services/schema/ui.py:114
|
47
47
|
msgid "False"
|
48
48
|
msgstr "Ne"
|
49
|
+
|
50
|
+
#: /Users/m/w/cesnet/oarepo-runtime/oarepo_runtime/services/schema/validation.py:19
|
51
|
+
#, python-format
|
52
|
+
msgid "Invalid value %(identifier)s of identifier type %(type)s"
|
53
|
+
msgstr "%(type)s: Neplatná hodnota '%(identifier)s'"
|
Binary file
|
@@ -45,3 +45,8 @@ msgstr ""
|
|
45
45
|
#: oarepo_runtime/services/schema/ui.py:114
|
46
46
|
msgid "False"
|
47
47
|
msgstr ""
|
48
|
+
|
49
|
+
#: /Users/m/w/cesnet/oarepo-runtime/oarepo_runtime/services/schema/validation.py:19
|
50
|
+
#, python-format
|
51
|
+
msgid "Invalid value %(identifier)s of identifier type %(type)s"
|
52
|
+
msgstr ""
|
@@ -1,50 +1,56 @@
|
|
1
1
|
# Translations template for PROJECT.
|
2
|
-
# Copyright (C)
|
2
|
+
# Copyright (C) 2024 ORGANIZATION
|
3
3
|
# This file is distributed under the same license as the PROJECT project.
|
4
|
-
# FIRST AUTHOR <EMAIL@ADDRESS>,
|
4
|
+
# FIRST AUTHOR <EMAIL@ADDRESS>, 2024.
|
5
5
|
#
|
6
6
|
#, fuzzy
|
7
7
|
msgid ""
|
8
8
|
msgstr ""
|
9
9
|
"Project-Id-Version: PROJECT VERSION\n"
|
10
10
|
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
11
|
-
"POT-Creation-Date:
|
11
|
+
"POT-Creation-Date: 2024-11-28 10:16+0100\n"
|
12
12
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
13
13
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
14
14
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
15
15
|
"MIME-Version: 1.0\n"
|
16
16
|
"Content-Type: text/plain; charset=utf-8\n"
|
17
17
|
"Content-Transfer-Encoding: 8bit\n"
|
18
|
-
"Generated-By: Babel 2.
|
18
|
+
"Generated-By: Babel 2.15.0\n"
|
19
19
|
|
20
|
-
#:
|
20
|
+
#: /Users/m/w/cesnet/oarepo-runtime/oarepo_runtime/services/search.py:60
|
21
|
+
#: /Users/m/w/cesnet/oarepo-runtime/oarepo_runtime/services/search.py:146
|
21
22
|
msgid "By Title"
|
22
23
|
msgstr ""
|
23
24
|
|
24
|
-
#: oarepo_runtime/services/search.py:
|
25
|
-
#: oarepo_runtime/translations/default_translations.py:5
|
25
|
+
#: /Users/m/w/cesnet/oarepo-runtime/oarepo_runtime/services/search.py:64
|
26
|
+
#: /Users/m/w/cesnet/oarepo-runtime/oarepo_runtime/translations/default_translations.py:5
|
26
27
|
msgid "Best match"
|
27
28
|
msgstr ""
|
28
29
|
|
29
|
-
#: oarepo_runtime/services/search.py:
|
30
|
-
#: oarepo_runtime/translations/default_translations.py:3
|
30
|
+
#: /Users/m/w/cesnet/oarepo-runtime/oarepo_runtime/services/search.py:68
|
31
|
+
#: /Users/m/w/cesnet/oarepo-runtime/oarepo_runtime/translations/default_translations.py:3
|
31
32
|
msgid "Newest"
|
32
33
|
msgstr ""
|
33
34
|
|
34
|
-
#: oarepo_runtime/services/search.py:
|
35
|
-
#: oarepo_runtime/translations/default_translations.py:4
|
35
|
+
#: /Users/m/w/cesnet/oarepo-runtime/oarepo_runtime/services/search.py:72
|
36
|
+
#: /Users/m/w/cesnet/oarepo-runtime/oarepo_runtime/translations/default_translations.py:4
|
36
37
|
msgid "Oldest"
|
37
38
|
msgstr ""
|
38
39
|
|
39
|
-
#: oarepo_runtime/services/schema/ui.py:
|
40
|
+
#: /Users/m/w/cesnet/oarepo-runtime/oarepo_runtime/services/schema/ui.py:123
|
40
41
|
msgid "True"
|
41
42
|
msgstr ""
|
42
43
|
|
43
|
-
#: oarepo_runtime/services/schema/ui.py:
|
44
|
+
#: /Users/m/w/cesnet/oarepo-runtime/oarepo_runtime/services/schema/ui.py:123
|
44
45
|
msgid "False"
|
45
46
|
msgstr ""
|
46
47
|
|
47
|
-
#: oarepo_runtime/
|
48
|
+
#: /Users/m/w/cesnet/oarepo-runtime/oarepo_runtime/services/schema/validation.py:19
|
49
|
+
#, python-format
|
50
|
+
msgid "Invalid value %(identifier)s of identifier type %(type)s"
|
51
|
+
msgstr ""
|
52
|
+
|
53
|
+
#: /Users/m/w/cesnet/oarepo-runtime/oarepo_runtime/translations/default_translations.py:6
|
48
54
|
msgid "Contact"
|
49
55
|
msgstr ""
|
50
56
|
|
@@ -12,7 +12,7 @@ oarepo_runtime/cli/cf.py,sha256=W0JEJK2JqKubQw8qtZJxohmADDRUBode4JZAqYLDGvc,339
|
|
12
12
|
oarepo_runtime/cli/check.py,sha256=sCe2PeokSHvNOXHFZ8YHF8NMhsu5nYjyuZuvXHJ6X18,5092
|
13
13
|
oarepo_runtime/cli/configuration.py,sha256=_iMmESs2dd1Oif95gxgpnkSxc13ymwr82_sTJfxlhrM,1091
|
14
14
|
oarepo_runtime/cli/fixtures.py,sha256=l6zHpz1adjotrbFy_wcN2TOL8x20i-1jbQmaoEEo-UU,5419
|
15
|
-
oarepo_runtime/cli/index.py,sha256=
|
15
|
+
oarepo_runtime/cli/index.py,sha256=KH5PArp0fCNbgJI1zSz0pb69U9eyCdnJuy0aMIgf2tg,8685
|
16
16
|
oarepo_runtime/cli/validate.py,sha256=HpSvHQCGHlrdgdpKix9cIlzlBoJEiT1vACZdMnOUGEY,2827
|
17
17
|
oarepo_runtime/datastreams/__init__.py,sha256=_i52Ek9J8DMARST0ejZAZPzUKm55xrrlKlCSO7dl6y4,1008
|
18
18
|
oarepo_runtime/datastreams/asynchronous.py,sha256=JwT-Hx6P7KwV0vSJlxX6kLSIX5vtsekVsA2p_hZpJ_U,7402
|
@@ -26,7 +26,7 @@ oarepo_runtime/datastreams/semi_asynchronous.py,sha256=kNc6BBnV6oFoY9kHgf5l8fd1w
|
|
26
26
|
oarepo_runtime/datastreams/synchronous.py,sha256=t5lfnMkLqy3jK5zMl-nIuA0HlMPiHGjwCqZ8XQP-3GM,2595
|
27
27
|
oarepo_runtime/datastreams/transformers.py,sha256=q5KzHPl2kJg7HP1BtKJ7F_UMqg_7L1ZGDX0O7s8D6UI,521
|
28
28
|
oarepo_runtime/datastreams/types.py,sha256=KZjblc3T_UFFW7LrMDmiR8lqVf86V484LAHj6yg05EI,9908
|
29
|
-
oarepo_runtime/datastreams/utils.py,sha256=
|
29
|
+
oarepo_runtime/datastreams/utils.py,sha256=WvYwvCnmS0vrcQ-Fbptu-GvBTMx_8UVhUqs_-BN-p-E,4111
|
30
30
|
oarepo_runtime/datastreams/readers/__init__.py,sha256=P1n3llZQ3AFHnSPbeT1VaCJcEtRFz9AbHfjkZv5LG7s,1103
|
31
31
|
oarepo_runtime/datastreams/readers/attachments.py,sha256=A7EC1TqyTHG-go5DIaRotlBSOm6o9hGqAKyVVAceCRU,1956
|
32
32
|
oarepo_runtime/datastreams/readers/excel.py,sha256=CM8lr8mejN7NgoK5TJb1oXpjq0HxklQKMsuj3uqjTjA,3653
|
@@ -73,7 +73,7 @@ oarepo_runtime/resources/localized_ui_json_serializer.py,sha256=3V9cJaG_e1PMXKVX
|
|
73
73
|
oarepo_runtime/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
74
74
|
oarepo_runtime/services/components.py,sha256=k--zu1RinwoKzg5qHp4H-Ddp9AFyjMJ97fydQ0DvI-A,4238
|
75
75
|
oarepo_runtime/services/generators.py,sha256=j87HitHA_w2awsz0C5IAAJ0qjg9JMtvdO3dvh6FQyfg,250
|
76
|
-
oarepo_runtime/services/results.py,sha256=
|
76
|
+
oarepo_runtime/services/results.py,sha256=HVBEPAMFwwCJDqBhaP3t3ekH1CpNDtE6ovVNKgWxuw8,5409
|
77
77
|
oarepo_runtime/services/search.py,sha256=9xGTN5Yg6eTdptQ9qjO_umbacf9ooMuHYGXWYfla4-M,6227
|
78
78
|
oarepo_runtime/services/config/__init__.py,sha256=dtlD84pJ6xI77UF22IPrCOt7tHD3g5DAEDApUdjDVFE,406
|
79
79
|
oarepo_runtime/services/config/permissions_presets.py,sha256=zApeA-2DYAlD--SzVz3vq_OFjq48Ko0pe08e4o2vxr4,6114
|
@@ -101,6 +101,8 @@ oarepo_runtime/services/files/components.py,sha256=x6Wd-vvkqTqB1phj2a6h42DNQksN8
|
|
101
101
|
oarepo_runtime/services/files/service.py,sha256=8DH0Pefr9kilM2JnOb-UYsnqerE8Z1Mu4p6DOJ4j_ZU,608
|
102
102
|
oarepo_runtime/services/permissions/__init__.py,sha256=Cgin2Zr1fpaYr-aZcUotdmv0hsrPTUJVQt8ouvU8tuU,95
|
103
103
|
oarepo_runtime/services/permissions/generators.py,sha256=YEOBCCvU-RG0BSWMtg76sv8qLcMbXxNu3rRJPDLtvvQ,1371
|
104
|
+
oarepo_runtime/services/records/__init__.py,sha256=hIoa2fx1AkDr6c-MgY561U2oN9LFeUCtfbVnetpBUOg,78
|
105
|
+
oarepo_runtime/services/records/links.py,sha256=gVe-_hGkLtX7pd6sS6jTbRIhBby2FTn9PXyYPy3yxzs,737
|
104
106
|
oarepo_runtime/services/relations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
105
107
|
oarepo_runtime/services/relations/components.py,sha256=3g0VdnGUM-2yYt50fPi-OADReBGJb4h05vmYHfh-QFs,592
|
106
108
|
oarepo_runtime/services/relations/errors.py,sha256=VtlOKq9MEUeJ4IsiZhY7lWoshrusA_RL4SOHe2titno,552
|
@@ -116,14 +118,13 @@ oarepo_runtime/services/schema/oneofschema.py,sha256=GnWH4Or_G5M0NgSmCoqMI6PBrJg
|
|
116
118
|
oarepo_runtime/services/schema/polymorphic.py,sha256=bAbUoTIeDBiJPYPhpLEKKZekEdkHlpqkmNxk1hN3PDw,564
|
117
119
|
oarepo_runtime/services/schema/rdm.py,sha256=XQ5p72Q_WVRTQkFeJvDiave8F5YSXU05IduTuYFO4gA,574
|
118
120
|
oarepo_runtime/services/schema/ui.py,sha256=xQgW-zLyZoHldGw47uVtXQj-5LexVNKTholyq4MiBZo,3777
|
119
|
-
oarepo_runtime/services/schema/validation.py,sha256=
|
121
|
+
oarepo_runtime/services/schema/validation.py,sha256=g2lpFwgQygWdLgq5bRvLAjVqXVOJpfVJ7umDp5xEGRU,1849
|
120
122
|
oarepo_runtime/translations/default_translations.py,sha256=060GBlA1ghWxfeumo6NqxCCZDb-6OezOuF6pr-_GEOQ,104
|
121
|
-
oarepo_runtime/translations/
|
122
|
-
oarepo_runtime/translations/messages.
|
123
|
-
oarepo_runtime/translations/cs/LC_MESSAGES/messages.
|
124
|
-
oarepo_runtime/translations/
|
125
|
-
oarepo_runtime/translations/en/LC_MESSAGES/messages.
|
126
|
-
oarepo_runtime/translations/en/LC_MESSAGES/messages.po,sha256=rZ2PGvkcJbmuwrWeFX5edk0zJIzZnL83M9HSAceDP_U,1193
|
123
|
+
oarepo_runtime/translations/messages.pot,sha256=jyC7mRH5P9uwVVqz9ycvn-T8gcohr62x__O0sC6g2w4,1846
|
124
|
+
oarepo_runtime/translations/cs/LC_MESSAGES/messages.mo,sha256=cSTRnVoi8DxfrXD-ImHYUmxdnNQMnxIn2yFRTObwRzI,801
|
125
|
+
oarepo_runtime/translations/cs/LC_MESSAGES/messages.po,sha256=bzO7bZlnifHU0E7khXePmP12lGmzYXudjAWVDb87KrE,1508
|
126
|
+
oarepo_runtime/translations/en/LC_MESSAGES/messages.mo,sha256=b4cLKr5VojJPSuCeQ9T1lJKYMM_o80IgiNNL-iQUL8E,445
|
127
|
+
oarepo_runtime/translations/en/LC_MESSAGES/messages.po,sha256=akMJzNcvoZmF9j06Cd_oyQX-tMOfYjG1yRAP7tNDhGA,1370
|
127
128
|
oarepo_runtime/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
128
129
|
oarepo_runtime/utils/functools.py,sha256=gKS9YZtlIYcDvdNA9cmYO00yjiXBYV1jg8VpcRUyQyg,1324
|
129
130
|
oarepo_runtime/utils/path.py,sha256=V1NVyk3m12_YLbj7QHYvUpE1wScO78bYsX1LOLeXDkI,3108
|
@@ -131,9 +132,9 @@ tests/marshmallow_to_json/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJW
|
|
131
132
|
tests/marshmallow_to_json/test_datacite_ui_schema.py,sha256=82iLj8nW45lZOUewpWbLX3mpSkpa9lxo-vK-Qtv_1bU,48552
|
132
133
|
tests/marshmallow_to_json/test_simple_schema.py,sha256=izZN9p0v6kovtSZ6AdxBYmK_c6ZOti2_z_wPT_zXIr0,1500
|
133
134
|
tests/pkg_data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
134
|
-
oarepo_runtime-1.5.
|
135
|
-
oarepo_runtime-1.5.
|
136
|
-
oarepo_runtime-1.5.
|
137
|
-
oarepo_runtime-1.5.
|
138
|
-
oarepo_runtime-1.5.
|
139
|
-
oarepo_runtime-1.5.
|
135
|
+
oarepo_runtime-1.5.75.dist-info/LICENSE,sha256=h2uWz0OaB3EN-J1ImdGJZzc7yvfQjvHVYdUhQ-H7ypY,1064
|
136
|
+
oarepo_runtime-1.5.75.dist-info/METADATA,sha256=hd71O2EzxcURIGg7qgV2G41KUG1ZBaoazG-lox_VHMw,4720
|
137
|
+
oarepo_runtime-1.5.75.dist-info/WHEEL,sha256=R0nc6qTxuoLk7ShA2_Y-UWkN8ZdfDBG2B6Eqpz2WXbs,91
|
138
|
+
oarepo_runtime-1.5.75.dist-info/entry_points.txt,sha256=k7O5LZUOGsVeSpB7ulU0txBUNp1CVQG7Q7TJIVTPbzU,491
|
139
|
+
oarepo_runtime-1.5.75.dist-info/top_level.txt,sha256=bHhlkT1_RQC4IkfTQCqA3iN4KCB6cSFQlsXpQMSP-bE,21
|
140
|
+
oarepo_runtime-1.5.75.dist-info/RECORD,,
|
@@ -11,3 +11,6 @@ oarepo_runtime_info = oarepo_runtime.info.views:create_wellknown_blueprint
|
|
11
11
|
[invenio_celery.tasks]
|
12
12
|
oarepo_runtime_check = oarepo_runtime.tasks
|
13
13
|
oarepo_runtime_datastreams = oarepo_runtime.datastreams
|
14
|
+
|
15
|
+
[invenio_i18n.translations]
|
16
|
+
oarepo_runtime = oarepo_runtime
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|