Changelog
Follow up on the latest improvements and updates.
RSS
improved
Display improvements
Improved
- Quick Compare chart labels now remain horizontal when there is sufficient space, improving readability on larger displays.
- Filters dropdown menus now open leftward to prevent being cut off on smaller displays.
new
improved
fixed
Client Library
onecodex client library release v1.2.0
New
- Added support for pandas 3. pandas 2 remains supported.
- Added filtered readcount metrics (filtered_readcount,filtered_readcount_w_children, and their normalized variants), which are computed after artifact filtering and are consistent across samples with and without abundance estimates.
- Added Jobs.publish()for publishing draft Workflows.
- Added onecodex analyses filesandonecodex analyses downloadCLI commands for listing and downloading an analysis's output files.
- Added onecodex jobs publishCLI command.
- Added descriptionargument toJobs.run().
- Added --descriptionoption toonecodex jobs runCLI command.
- Added --gzip-outputand--gzip-output-compressleveltoonecodex scripts subset_reads.
- Added a nextflow_versionargument toJobs.create()andJobs.update(), and a--nextflow-versionoption to theonecodex jobs createandonecodex jobs updateCLI commands. Defaults to the latest supported Nextflow version.Jobs.details()reports the version a workflow runs.
- Added a metricargument toFunctionalProfiles.table()which filters results to a single metric (e.g.,cpm,rpk, etc.). To preserve backwards compatibility, this argument defaults to"all"which returns all metrics available for an annotation.
- Added Analyses.cancel()andonecodex analyses cancelCLI command for canceling an in-progress Custom Workflow run.
- Added tax_idsargument toSamples.where()for filtering samples by taxa. Only samples containing all the listed taxa are returned.
Changed
- Nextflow Workflows no longer accept an image URI. Use nextflow_version(--nextflow-version) instead.image_uri(--image-uri) is still required for shell script Workflows.
- Renamed the Metric.is_filtered_readcount_metricproperty toMetric.is_abundance_sensitiveto better describe what it flags.
- In plot_metadata(width="container", ...), boxplot width is now dynamically adjusted based on the number of boxes
- Improved speed of onecodex scripts subset_readsby around 20%.
- FunctionalProfiles.table()andfiltered_table()raise aOneCodexExceptionwhen results are unavailable, instead of returning an empty DataFrame. They also raise when a metric is not valid for the requested annotation.
- Column dtypes on FunctionalProfiles.table()andfiltered_table()are now fixed: text columns use the nullablestringdtype,taxa_stratifiedusesboolean, andvalueis alwaysfloat64(it could previously come back asint64). Missing values arepd.NAand empty results now have these same dtypes.
- FunctionalProfiles.table()now returns a fresh, ordered zero-based index. It previously returned a filtered slice of the full results table, which kept original indices.
- ocx.Assembliesandocx.Genomesnow use the more performant, cursor-based pagination method (likeocx.Samplesandocx.Metadata).
- plot_heatmap()legend title now defaults to the metric's display name (e.g., "Readcount With Children") instead of its field name.
- to_functional_df(taxa_stratified=True)columns are now a MultiIndex of(feature_id, taxon_id), matching the layout ofto_classification_df().
Removed
- Removed the unfiltered_readcountmetrics (Metric.UnfilteredReadcount,Metric.NormalizedUnfilteredReadcount, etc.) in favor of the newfiltered_readcountmetrics. Note the semantics differ: unfiltered readcounts were computed before artifact filtering, whereas filtered readcounts are computed after.
Fixed
- plot_functional_heatmap()no longer raises aMergeErrorwhen the sample collection contains more than one sample without functional profile results. Samples lacking functional results are now dropped from the plot (they were never plotted anyway).
- Plots no longer raise a ValueErrorwhen a metadata field name contains a colon character (:).
- Passing non-existing group_bytoplot_bargraphshould not throw an error.
- Sample.{status,visiblity}query type corrected toEnumStrFilter
- $icontainsand$containsremoved fromEnumStrFilter-- substring matching behavior requires that the substring be a valid enum member which behaved unintuitively.
- onecodex analyses <subcommand> --help(e.g.onecodex analyses logs --help) no longer requires being logged in.
- SampleCollection.plot_distanceno longer incorrectly warns about non-comparable metrics when plotting with comparable metrics.
- Samples.where()no longer raises anAttributeErrorwhen combining sample and metadata filters.
- to_functional_df(taxa_stratified=True)now gives each contributing taxon its own column. Previously only one taxon's value was kept per feature.
- Analyses.download_file()no longer decompresses files served withContent-Encoding: gzip, which previously resulted in.gzfiles containing uncompressed data.
Fixed
- API now rejects paired-end uploads with duplicate filenames.
- Improved error messaging when users attempt unsupported filters on enum fields in the API.
Improved
- API responses are now gzipped for clients that support it, reducing response sizes for large payloads like metadata and sample lists.
- FunctionalRunResource.resultsAPI endpoint now behaves consistently withClassificationResource.results, for improved performance. Note: this returns results in the new condensed format.
New
- Analysis Runs dashboard now has new filters: status, analysis type, and options to show draft and published analyses. Filter selections are saved to your user settings.
- Users can now opt in to email notifications when launching workflows. After running analyses, you'll receive an email when they complete.
- Workflow editor now provides a direct link (opens in a new tab) to upload new Assets. The editor auto-refreshes so newly uploaded Assets appear without reloading.
- Analysis Runs dashboard UI updated with job colors and OCX icons for improved visual clarity.
- Status tooltips for analysis runs simplified to show three states: Pending, Succeeded, and Failed.
New
- Added pulsing pending badge to the Analyses navigation item that polls every 20 seconds to show when analyses are running. Includes a tooltip with more details.
Fixed
- Alignment rows on Your Analyses page now link to the specific alignment run instead of the overview page.
new
improved
fixed
API
Analyses views, sample search, various fixes
New
- One Codex analyses are now shown alongside workflow runs on the Workflow Runs dashboard page (https://app.onecodex.com/workflows/runs), accessible via "View Analyses" under the "Analyses" sub-menu on the left-hand navigation bar. This allows users to view all their analyses in one place.
- Added pagination support to the assemblies and genomes API v1 endpoints for improved performance with large result sets.
Improved
- Improved performance of the samples search endpoint when searching by UUID, and of v1 sample metadata list endpoint.
Fixed
- Fix timezone handling in sample metadata imports to correctly apply client timezone offsets.
- Updated dependencies for security.
- Fixed an issue with the AMR report where the calculated mean depth for AMR markers was over-estimated.
New
- API v1 now supports filtering samples by tax_idvia thewhereparameter.
- Split-action button on Run Workflow page allows users to choose whether to view their analysis run or launch another workflow after submitting.
Improved
- Side menu reorganized with new "Analyses" section grouping workflow runs, workflow creation, and workflow management.
Fixed
- Users now see a clear error message when attempting to upload a directory via drag-and-drop.
- Fixed spacing issue in alignment run page display text.
improved
fixed
Quick Compare search, MLST view
Improved
- Quick Compare search now returns closest matching sample names first when searching, improving relevance of results.
- MLST View: Simplified SNP marker display by hiding cases with 0/0 required SNPs.
Fixed
- Fixed Quick Compare search state issues that could cause stale or incorrect results to display.
Load More
→