Skip to content

athena-client v1.0.29 — Async reliability, ConceptExplorer docs, and example fixes

Choose a tag to compare

@aandresalvarez aandresalvarez released this 29 Oct 19:29
· 53 commits to main since this release
  • Fix: async requests 403 on public OHDSI Athena

    • Async client now sends browser-like headers (Referer, Accept-Language, realistic User-Agent).
    • Fallback across multiple User-Agents for non-JSON/403 responses.
    • Do not retry on network errors with different User-Agents.
    • Anonymous usage against https://athena.ohdsi.org/api/v1 works out-of-the-box.
    • Reference: Issue #12 and PR #13. See: PR #13
  • Improvement: ConceptExplorer time-limit handling

    • Honors tight time budgets by skipping heavy steps when remaining time is small.
    • Early return for very small budgets; tests added/adjusted.
  • Documentation

    • README: Clarified ConceptExplorer is async-only; example updated to use AthenaAsyncClient.
    • Concept Exploration Guide: Added explicit async setup; reiterated anonymous access on public server.
    • Examples: examples/concept_exploration_demo.py imports fixed; examples/test.py prints exploration stats, mappings, and suggestions.
  • Quality and tests

    • New tests assert async default headers and auth/default header merge.
    • Tests verify fallback UA behavior and network error handling.
    • Full suite: 360 tests passing locally; pre-commit checks green.

Upgrade notes

  • No breaking API changes.
  • If you use ConceptExplorer, switch to AthenaAsyncClient.
  • Public OHDSI Athena requires no token; private instances may still require ATHENA_TOKEN.

Thanks

  • Community report and feedback that helped identify and validate the fix: Issue #12.