Conversation
Introduces a new container at `wiffconverter-0.10/` that wraps `sciex/wiffconverter:0.10` and exposes a single `convert` CLI on PATH for SCIEX `.wiff` (+ companion `.wiff.scan`) → indexed mzML conversion in one step. Designed for use by quantmsdiann to ingest AbSciex data natively without a separate indexing pass. Why a wrapper, not the upstream entrypoint: - `OneOmics.WiffConverter.exe` does not always propagate failure via its exit code, so the wrapper validates the output ends `</indexedmzML>` and contains an `<indexList>` element. - The output must be `indexedmzML` for downstream tools (DIA-NN, OpenMS), so the wrapper always passes `--index` — there is no opt-out flag. - A `convert --input X --output Y --mode centroid|profile` interface matches the DIA-NN / Relink containers' style (binary on PATH, flag-driven) and replaces the original positional `wiff-to-mzml` prototype. - On failure the wrapper prints a framed banner with input/output/mode and the last 40 lines of the underlying converter log, and retains the log file at `<output>.log` so the operator can diagnose without re-running. On success the log is auto-deleted unless `--log <path>` was passed. Validated end-to-end on PXD073289 / OA_5 (936 MB `.wiff.scan`): 192,076 spectra, 1.4 GB indexed mzML output, deterministic across runs. Failure path validated against a corrupt `.wiff` (`OpenMcdf` signature exception) — banner + log retention behave as designed. README documents the `convert` CLI, the always-`--index` guarantee, and the failure-banner behavior. The CI workflow change required to add a `build-wiffconverter` job is left for a separate commit (token used here lacks `workflow` scope). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- convert: replace `> >(tee ...)` process substitution with a regular pipe + PIPESTATUS so the script waits for tee to flush before fail() tails the log or success removes it (no orphan logs, no truncated failure banners). - README: the WiffConverter container ships a `convert` wrapper, not `wiff-to-mzml`.
fix: avoid tee race in convert and correct README wrapper name
Wires wiffconverter-0.10 through the existing pipeline mirroring the relink job: - adds `wiffconverter-*/**` to PR path filters - adds `wiffconverter_0_10` paths-filter rule + `CHG_WC010` env var - emits `wiffconverter_matrix` / `has_wiffconverter` from detect-changes - new `build-wiffconverter` job runs after build-relink, gated to the bigbio org (matches relink), pushes to ghcr.io/bigbio/wiffconverter and the wiffconverter-sif Singularity tag, with `:latest` on release - adds build-wiffconverter to sync-openms `needs:`
feat: add wiffconverter container with `convert` CLI
|
Warning Rate limit exceeded
Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 48 minutes and 27 seconds. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (4)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
No description provided.