bibcite-cli 0.5.1__tar.gz → 0.5.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.
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/PKG-INFO +1 -1
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/pyproject.toml +1 -1
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/src/bibcite/__init__.py +1 -1
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/src/bibcite/sources.py +15 -0
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/uv.lock +1 -1
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/.gitignore +0 -0
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/LICENSE +0 -0
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/Readme.md +0 -0
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/src/bibcite/bibfile.py +0 -0
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/src/bibcite/cache.py +0 -0
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/src/bibcite/cli.py +0 -0
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/src/bibcite/data/strings.bib +0 -0
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/src/bibcite/normalize.py +0 -0
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/src/bibcite/resolve.py +0 -0
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/src/bibcite/venues.py +0 -0
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/tests/test_bibfile.py +0 -0
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/tests/test_bugfixes.py +0 -0
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/tests/test_entry_types.py +0 -0
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/tests/test_normalize.py +0 -0
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/tests/test_round2.py +0 -0
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/tests/test_round3.py +0 -0
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/tests/test_status_semantics.py +0 -0
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/tests/test_strings_override.py +0 -0
- {bibcite_cli-0.5.1 → bibcite_cli-0.5.2}/tests/test_venues.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: bibcite-cli
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.2
|
|
4
4
|
Summary: Resolve papers (arXiv id / DOI / title) to canonical, normalized BibTeX for agents and humans
|
|
5
5
|
Project-URL: Repository, https://github.com/leo1oel/bibcite
|
|
6
6
|
License-Expression: MIT
|
|
@@ -526,6 +526,11 @@ def try_crossref(title: str) -> Match | None:
|
|
|
526
526
|
)
|
|
527
527
|
if r.status_code == 429:
|
|
528
528
|
raise SourceUnavailable("CrossRef rate-limited (429)")
|
|
529
|
+
if r.status_code >= 500:
|
|
530
|
+
# A dead endpoint (Unpaywall search 500s for days at a time)
|
|
531
|
+
# gets benched for the run instead of adding latency + noise
|
|
532
|
+
# to every remaining query.
|
|
533
|
+
raise SourceUnavailable(f"CrossRef server error ({r.status_code})")
|
|
529
534
|
r.raise_for_status()
|
|
530
535
|
payload = r.json()
|
|
531
536
|
if payload.get("status") != "ok":
|
|
@@ -578,6 +583,11 @@ def try_unpaywall(title: str) -> Match | None:
|
|
|
578
583
|
)
|
|
579
584
|
if r.status_code == 429:
|
|
580
585
|
raise SourceUnavailable("Unpaywall rate-limited (429)")
|
|
586
|
+
if r.status_code >= 500:
|
|
587
|
+
# A dead endpoint (Unpaywall search 500s for days at a time)
|
|
588
|
+
# gets benched for the run instead of adding latency + noise
|
|
589
|
+
# to every remaining query.
|
|
590
|
+
raise SourceUnavailable(f"Unpaywall server error ({r.status_code})")
|
|
581
591
|
r.raise_for_status()
|
|
582
592
|
ref = norm_title(title)
|
|
583
593
|
for res in r.json().get("results") or []:
|
|
@@ -620,6 +630,11 @@ def openalex_search(title: str) -> dict | None:
|
|
|
620
630
|
)
|
|
621
631
|
if r.status_code == 429:
|
|
622
632
|
raise SourceUnavailable("OpenAlex rate-limited (429)")
|
|
633
|
+
if r.status_code >= 500:
|
|
634
|
+
# A dead endpoint (Unpaywall search 500s for days at a time)
|
|
635
|
+
# gets benched for the run instead of adding latency + noise
|
|
636
|
+
# to every remaining query.
|
|
637
|
+
raise SourceUnavailable(f"OpenAlex server error ({r.status_code})")
|
|
623
638
|
r.raise_for_status()
|
|
624
639
|
ref = norm_title(title)
|
|
625
640
|
for w in r.json().get("results") or []:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|