new
improved
fixed
Client Library
API
`onecodex` client library v1.1.0
New
- Added updated_attoAnalysesschema
- onecodex.models.Workflows(a type ofonecodex.models.Analyses) for Custom Workflows (https://docs.onecodex.com/en/collections/9673389-your-authored-workflows-on-one-codex)
- Added Jobs.run()for running analyses including Workflows
- onecodex.models.Assetsfor querying and creating Workflow assets
- Analyses.await_completion()blocks until an analysis reaches a terminal state using adaptive polling.
- onecodex analyses await <analysis_id>CLI command, with--timeout,--initial-interval, and--max-intervaloptions. Also available asonecodex await <analysis_id>for backward compatibility.
- Analyses.logs()fetches the job run logs for an analysis, with an optionaltailparameter to limit the output to the last N lines.
- onecodex analyses logs <analysis_id>CLI command, with--tailto limit the number of log lines returned (defaults to 1000). Only available for custom workflow runs.
- Jobs.create()andJobs.update()for creating and updating custom jobs from the Python client.assets=[...]acceptsAssetsinstances directly;dependencies=[{"job": parent_job, "output_dir": "..."}]acceptsJobsinstances directly.
- onecodex jobs createandonecodex jobs update <job_id>CLI commands.
- onecodex download samplesaccepts-s/--sample(repeatable) to download specific samples by ID. Mutually exclusive with--projectand--tags.
- onecodex jobs runaccepts--args-jsonto pass runtime arguments as a JSON object, preserving non-string types (integers, floats, booleans, arrays, objects).-a/--argonly supports string values; use--args-jsonwhen a job argument expects another type. Mutually exclusive with-a/--arg.
- ocx.Jobs.get("...").details()for retrieving CPU/memory/script/etc for Custom Workflows.
Changed
- ApiRefnow accepts any object with afield_uriattribute (e.g. resource model instances), in addition to the existing$ref/$uridict shapes. This lets users pass fetched resources directly into create/update calls.
- OneCodexBase.create()now validates kwargs against the schema declared in_allowed_methods["create"](when one is set), mirroring howupdate()already worked. Surfaces server error messages instead of failing on response parsing.
Fixed
- plot_pcoano longer flips axis orientation between runs; PCoA eigenvector signs are now pinned so the entry with the largest absolute value on each axis is positive.
- CLI commands that take One Codex IDs (onecodex samples,analyses,classifications,panels,workflows,documents download,jobs run/update,upload --sample-id,download samples --sample) now validate the format up front and fail with a helpful error instead of an opaque 404.