v2.9.5: Transient eutils 500 retry, MeSH DescriptorUI fixes
Transient eutils 500 retry, MeSH DescriptorUI fixes
Reclassifies NCBI's transient eutils 500s as retryable, and returns the canonical MeSH DescriptorUI from pubmed_lookup_mesh.
Fixed:
- eutils path now issues plain fetch, making the 500→ServiceUnavailable reclassification in makeRequest reachable — transient NCBI 500s are retried; 501 stays InternalError (#70)
- pubmed_lookup_mesh meshId now carries the canonical MeSH DescriptorUI (e.g. D003924) instead of the Entrez UID; non-decodable UIDs fall back unchanged (#71)
Added:
- pubmed_lookup_mesh entrezUid output field — the raw Entrez UID, join key for eSummary/eFetch db=mesh (#71)
Dependency bumps:
@biomejs/biome^2.4.16 → ^2.5.0
850 tests pass; bun run devcheck clean.