commonmeta-py 0.114__py3-none-any.whl → 0.116__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.
- commonmeta/__init__.py +1 -1
- commonmeta/writers/inveniordm_writer.py +17 -6
- {commonmeta_py-0.114.dist-info → commonmeta_py-0.116.dist-info}/METADATA +1 -1
- {commonmeta_py-0.114.dist-info → commonmeta_py-0.116.dist-info}/RECORD +7 -7
- {commonmeta_py-0.114.dist-info → commonmeta_py-0.116.dist-info}/WHEEL +0 -0
- {commonmeta_py-0.114.dist-info → commonmeta_py-0.116.dist-info}/entry_points.txt +0 -0
- {commonmeta_py-0.114.dist-info → commonmeta_py-0.116.dist-info}/licenses/LICENSE +0 -0
commonmeta/__init__.py
CHANGED
@@ -521,7 +521,13 @@ def create_draft_record(record, host, token, input):
|
|
521
521
|
response = requests.post(
|
522
522
|
f"https://{host}/api/records", headers=headers, json=input
|
523
523
|
)
|
524
|
-
response.
|
524
|
+
if response.status_code == 429:
|
525
|
+
record["status"] = "failed_rate_limited"
|
526
|
+
return record
|
527
|
+
if response.status_code != 201:
|
528
|
+
print(response.json())
|
529
|
+
record["status"] = "failed_create_draft"
|
530
|
+
return record
|
525
531
|
data = response.json()
|
526
532
|
record["id"]: data.get("id", None)
|
527
533
|
record["created"] = data.get("created", None)
|
@@ -544,8 +550,6 @@ def edit_published_record(record, host, token):
|
|
544
550
|
)
|
545
551
|
response.raise_for_status()
|
546
552
|
data = response.json()
|
547
|
-
record["doi"] = py_.get(data, "pids.doi.identifier")
|
548
|
-
record["created"] = data.get("created", None)
|
549
553
|
record["updated"] = data.get("updated", None)
|
550
554
|
record["status"] = "edited"
|
551
555
|
return record
|
@@ -581,12 +585,20 @@ def publish_draft_record(record, host, token):
|
|
581
585
|
"Authorization": f"Bearer {token}",
|
582
586
|
"Content-Type": "application/json",
|
583
587
|
}
|
588
|
+
if not record.get("id", None):
|
589
|
+
raise InvenioRDMError("Error publishing draft record")
|
584
590
|
try:
|
585
591
|
response = requests.post(
|
586
592
|
f"https://{host}/api/records/{record['id']}/draft/actions/publish",
|
587
593
|
headers=headers,
|
588
594
|
)
|
589
|
-
response.
|
595
|
+
if response.status_code == 429:
|
596
|
+
record["status"] = "failed_rate_limited"
|
597
|
+
return record
|
598
|
+
if response.status_code != 202:
|
599
|
+
print(response.json())
|
600
|
+
record["status"] = "failed_publish_draft"
|
601
|
+
return record
|
590
602
|
data = response.json()
|
591
603
|
record["uuid"] = py_.get(data, "metadata.identifiers.0.identifier")
|
592
604
|
record["created"] = data.get("created", None)
|
@@ -624,8 +636,6 @@ def update_legacy_record(record, legacy_key: str):
|
|
624
636
|
raise ValueError("no legacy key provided")
|
625
637
|
if not record.get("uuid", None):
|
626
638
|
raise ValueError("no UUID provided")
|
627
|
-
if not record.get("doi", None):
|
628
|
-
raise ValueError("no valid doi to update")
|
629
639
|
|
630
640
|
now = f"{int(time())}"
|
631
641
|
if record.get("id", None) is not None:
|
@@ -643,6 +653,7 @@ def update_legacy_record(record, legacy_key: str):
|
|
643
653
|
"archived": "true",
|
644
654
|
}
|
645
655
|
else:
|
656
|
+
print(f"nothing to update for id {record.get("uuid")}")
|
646
657
|
return record # nothing to update
|
647
658
|
|
648
659
|
request_url = f"https://{legacy_host}/rest/v1/posts?id=eq.{record['uuid']}"
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: commonmeta-py
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.116
|
4
4
|
Summary: Library for conversions to/from the Commonmeta scholarly metadata format
|
5
5
|
Project-URL: Homepage, https://python.commonmeta.org
|
6
6
|
Project-URL: Repository, https://github.com/front-matter/commonmeta-py
|
@@ -1,4 +1,4 @@
|
|
1
|
-
commonmeta/__init__.py,sha256=
|
1
|
+
commonmeta/__init__.py,sha256=BlEBVV1F2oGv-LZdRZvwqFf6_KmiMaahHV-G8Uq1Quk,2098
|
2
2
|
commonmeta/api_utils.py,sha256=y5KLfIOWOjde7LXZ36u-eneQJ-Q53yXUZg3hWpCBS2E,2685
|
3
3
|
commonmeta/author_utils.py,sha256=3lYW5s1rOUWNTKs1FP6XLfEUY3yCLOe_3L_VdJTDMp0,8585
|
4
4
|
commonmeta/base_utils.py,sha256=-MGy9q2uTiJEkPWQUYOJMdq-3tRpNnvBwlLjvllQ5g8,11164
|
@@ -80,11 +80,11 @@ commonmeta/writers/commonmeta_writer.py,sha256=QpfyhG__7o_XpsOTCPWxGymO7YKwZi2LQ
|
|
80
80
|
commonmeta/writers/crossref_xml_writer.py,sha256=d-Rb2Vd_g3UW8GM4APIT7fivSQ5GMssZ6Ubi3OykHaw,33479
|
81
81
|
commonmeta/writers/csl_writer.py,sha256=4gDYs1EzK4_L2UIRTfs25wgHmYRwdRP2zmfxF9387oU,2779
|
82
82
|
commonmeta/writers/datacite_writer.py,sha256=bcinpwhq7XnVthKHH8-sdXA34dSlvFH4ImYH768iaQU,6428
|
83
|
-
commonmeta/writers/inveniordm_writer.py,sha256=
|
83
|
+
commonmeta/writers/inveniordm_writer.py,sha256=IxWEAQBzvPWQqROISJtEuTuWr7bZybhHAz_SqZTQtZY,24577
|
84
84
|
commonmeta/writers/ris_writer.py,sha256=3SdyEvMRaPRP1SV1MB-MXBlunE7x6og7RF1zuWtetPc,2094
|
85
85
|
commonmeta/writers/schema_org_writer.py,sha256=s18_x0ReXwAGBoEAwp2q-HCgFQ-h5qRg6JyAlqCoSFE,5871
|
86
|
-
commonmeta_py-0.
|
87
|
-
commonmeta_py-0.
|
88
|
-
commonmeta_py-0.
|
89
|
-
commonmeta_py-0.
|
90
|
-
commonmeta_py-0.
|
86
|
+
commonmeta_py-0.116.dist-info/METADATA,sha256=aWZQLapM3o9hI0t4EgePoyAGCEj_X8HDDdMp-vbHVEc,7652
|
87
|
+
commonmeta_py-0.116.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
88
|
+
commonmeta_py-0.116.dist-info/entry_points.txt,sha256=U4w4BoRuS3rN5t5Y-uYSyOeU5Lh_VRVMS9OIDzIgw4w,50
|
89
|
+
commonmeta_py-0.116.dist-info/licenses/LICENSE,sha256=wsIvxF9Q9GC9vA_s79zTWP3BkXJdfUNRmALlU8GbW1s,1074
|
90
|
+
commonmeta_py-0.116.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|