Skip to content

[Patch] Implement Ontodocker Client#29

Closed
mbruns91 wants to merge 17 commits intobase_clientfrom
ontodocker_client
Closed

[Patch] Implement Ontodocker Client#29
mbruns91 wants to merge 17 commits intobase_clientfrom
ontodocker_client

Conversation

@mbruns91
Copy link
Copy Markdown
Contributor

@mbruns91 mbruns91 commented Mar 17, 2026

Implement the Ontodocker service client via porting from branch "refactor_project_structure":

  • filled previously empty courier/services/ontodocker/* modules with the full implementation (client wiring + endpoints/datasets/SPARQL resources + models).
  • Updated Ontodocker internals to match the new transport layout (e.g. courier.transport.url.join_url) and fixed minor upload_graph Turtle serialization/file-writing behavior.
  • add unit tests for OntodockerClient: tests client wiring plus resource behavior/validation: URL construction and request dispatch for endpoints/datasets/SPARQL (incl. legacy endpoint parsing/rectification and token header propagation), using a fake session instead of real HTTP.
  • rewrite ontodocker.pyas a compatibility wrapper around courier.services.ontodocker.OntodockerClient and _compat helpers.
    • Each legacy entry point calls _warn_deprecated(...) (emits DeprecationWarning, stacklevel=2).
    • Re-exported legacy helpers via _compat (rectify_endpoints, extract_dataset_names, make_dataframe).
    • add tests/unit/test_ontodocker_legacy_shim.py to verify delegation to OntodockerClient and expected warnings/behaviors.
  • courier/__init__.py
    • Now also exports OntodockerClient at top level: courier.OntodockerClient.
  • notebooks:
    • add notebooks to demonstrate basic usage of HttpClient and OntodockerClient. Uses mock-ups to avoid relying on actually running services.

@github-actions
Copy link
Copy Markdown

Binder 👈 Launch a binder notebook on branch pyiron/courier/ontodocker_client

@mbruns91 mbruns91 force-pushed the ontodocker_client branch from 0db6e27 to e590593 Compare March 17, 2026 13:12
@codecov
Copy link
Copy Markdown

codecov bot commented Mar 17, 2026

Codecov Report

❌ Patch coverage is 91.28205% with 17 lines in your changes missing coverage. Please review.
✅ Project coverage is 89.30%. Comparing base (dc52d39) to head (edc3c80).

Files with missing lines Patch % Lines
courier/ontodocker.py 68.88% 14 Missing ⚠️
courier/services/ontodocker/sparql.py 91.42% 3 Missing ⚠️
Additional details and impacted files
@@               Coverage Diff                @@
##           base_client      #29       +/-   ##
================================================
+ Coverage        50.00%   89.30%   +39.30%     
================================================
  Files               10       17        +7     
  Lines              396      449       +53     
================================================
+ Hits               198      401      +203     
+ Misses             198       48      -150     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@mbruns91
Copy link
Copy Markdown
Contributor Author

Sorry, I rebased the branch onto the updated base (base_client), which rewrote the commit history (same changes, new commit hashes). That makes the update a non-fast-forward, so a normal push is rejected. I used --force-with-lease to safely update the remote to the rebased history while refusing to overwrite any unexpected new remote commits.

@review-notebook-app
Copy link
Copy Markdown

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

@mbruns91 mbruns91 requested review from samwaseda March 18, 2026 14:51
@mbruns91 mbruns91 changed the title [patch] Implement Ontodocker-client git cherry-pick 9f12a3b 4e84a33 Mar 19, 2026
@mbruns91 mbruns91 changed the title git cherry-pick 9f12a3b 4e84a33 [Patch] Implement Ontodocker Client Mar 19, 2026
@mbruns91 mbruns91 closed this Mar 19, 2026
@mbruns91
Copy link
Copy Markdown
Contributor Author

Closed because too hard too read. We reach the same result by merging #31 #32 and #33.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant