Skip to content

Releases: msk-access/krewlyzer

0.8.3

28 Apr 15:14
9c31886

Choose a tag to compare

What's Changed

Full Changelog: 0.8.2...0.8.3

0.8.2

17 Apr 20:29

Choose a tag to compare

Full Changelog: 0.8.1...0.8.2

0.8.0

17 Mar 15:01
846b449

Choose a tag to compare

What's Changed

[0.8.0] - 2026-03-17

Added

  • On-target PON Z-scores: Panel mode now computes on-target/off-target PON baselines
    for MDS, OCF, and FSD features, providing clinically-scoped z-scores in panel assays.
  • FSR On-target Output: FSR now emits a separate .FSR.ontarget.tsv file in panel mode.
  • FSR Real Genomic Coordinates: Region labels now reflect true genomic window coordinates
    instead of internal indices.

Fixed

  • Output Format / Compress: All output files now correctly respect --output-format and
    --compress flags (gzip compression, path handling, GC correction factors loading).
  • Rust GC Correction: Added missing PathBuf import; fixed path handling for correction
    factor files.
  • Rust Clippy: Replaced manual string strip with strip_suffix (manual_strip lint).

Documentation

  • Corrected stale FSR column names in concepts.md and json-output.md.
  • Updated FSR on-target output docs and window/panel-mode descriptions.
  • Documented _core.pyi stub maintenance requirements.

CI

  • GitHub Actions Node.js 24: Bumped actions/checkout v4→v5, actions/setup-python v5→v6,
    actions/cache v4→v5 to address Node.js 20 deprecation (enforced June 2, 2026).

Full Changelog: 0.7.0...0.8.0

0.7.0

04 Mar 13:51
36305c9

Choose a tag to compare

What's New in 0.7.0

✨ Features

  • Configurable Output Formats--output-format tsv|parquet|both (default: tsv) controls all tabular feature outputs. --compress gzip-compresses TSV outputs (.tsv.gz). WPS outputs remain Parquet regardless of setting.

🐛 Bug Fixes

  • build-pon: Explicitly force output_format="tsv" in all process_sample() calls to prevent silent failures when default output format changes
  • Feature Serializer: mds_z field now correctly included in JSON output for the from_outputs() code path
  • OCF file naming: OCF.tsv = all reads (on + off combined); OCF.offtarget.tsv = true panel off-target score. Clarified in docs and code comments
  • Rust wps.rs: Removed erroneous * dereference on node.metadata (E0614)
  • Rust gc_correction.rs: Prefixed unused valid_regions_path param with _ to silence compiler warning while retaining API symmetry
  • MkDocs Snippets: Fixed broken --8<-- "CHANGELOG.md" includes by updating pymdownx.snippets.base_path to ['.', 'docs']

🔧 Code Quality

  • Lint CI Job: New parallel lint job (ruff · black · mypy · cargo clippy -- -D warnings) runs on all push/PR events
  • 11 Clippy warnings resolved: repeat_vec_with_capacity, ptr_arg (×2), needless_range_loop (×4), collapsible_match, lines_filter_map_ok (×2), field_reassign_with_default
  • Mypy clean: 27 type errors resolved across 8 files; Rust extension stub (_core.pyi) added
  • Pinned linter versions: black==26.1.0, ruff==0.15.4, mypy==1.19.1 for reproducible CI

📚 Documentation

  • Output Format Options: New section in reference/output-files.md documenting --output-format, --compress, WPS always-Parquet exception, and --generate-json
  • OCF Variant Clarification: 3-variant table explaining OCF.tsv vs .ontarget.tsv vs .offtarget.tsv
  • Post-0.6.0 Audit (12 files): Fixed metadata.json → metadata.tsv references, updated test counts, added Nextflow --output_format/--compress params
  • Docker tag: docs/index.md updated to explicit :0.7.0 per release policy

🏗️ Full Changelog

0.6.0...0.7.0

0.6.0

01 Mar 02:42

Choose a tag to compare

[0.6.0] - 2026-02-28

Added

  • mFSD Base Quality Filtering: --min-baseq / -Q (default 20) gates variant evidence by base quality
  • mFSD GC Correction: Rust-native LOESS GC bias correction for variant fragment size distributions
  • mFSD Duplex Weighting: Proper consensus fragment handling via --duplex
  • Region MDS --sample-name: Consistent output naming without post-hoc rename
  • Feature Serializer: Auto-load fsc_counts, region_mds, uxm in from_outputs()
  • IRIS Batch Submission: scripts/run_krewlyzer_iris.sh for SLURM/IRIS cluster runs with --generate_json
  • nf-core Institutional Configs: custom_config_base param and IRIS profile support
  • Versioned Documentation: Implemented mike for dev/stable doc versions
  • Nextflow mfsd Module: Full standalone params (--reference, --correction-factors, --mapq, --minlen, --maxlen, --min-baseq, --duplex, --no-skip-duplicates)
  • Nextflow runall: fsc_counts.tsv output declaration, --min-baseq wired
  • mFSD Integration Tests: 161 lines of new test coverage

Fixed

  • mFSD MAF Parsing: Header-based column lookup (fixes column-index mismatch with different MAF flavors)
  • Nextflow FILTER_MAF: Complete overhaul — eliminated join operator blocking, replaced regex with substring match, fixed SyntaxError in versions.yml, dynamic maxForks for SLURM
  • Nextflow Workflow Streaming: Fixed RUNALL blocking from remainder:true, failOnMismatch, channel round-robin; used multiMap for proper routing
  • Nextflow RUNALL Outputs: Added 14 output declarations, fixed BreakPointMotif casing, explicit publishDir
  • Region MDS Nextflow: --sample-name replaces mv workaround
  • Nextflow Config: Executor queueSize placement, -qs CLI flag, global publishDir removal
  • WPS CLI Tests: Fixed --input flag (was positional arg) — recovered 2 skipped tests
  • Pandas FutureWarning: Fixed pd.concat with all-NA columns in PON test fixture

Changed

  • Code Quality: Black formatted 71 files, ruff fixed 129 lint errors, cargo clippy applied
  • Ruff Config: Added [tool.ruff] to pyproject.toml with documented E402/F821 ignores
  • Agent Config: .agent/.agent/rules/ with alwaysApply frontmatter

Documentation

  • 45-item Audit: Corrections across 25 doc files including .csv.tsv (7 files), .WPS.tsv.gz.parquet (3 files), phantom --output-format removed, Docker versions→X.Y.Z, parameters.md 12→28, outputs.md 14→41, JSON schema corrected, developer guide Rust table 10→19, architecture pipeline signature updated
  • PDF Embedding: Fixed rendering with mkdocs-pdf plugin

Full Changelog: 0.5.2...0.6.0

Documentation Fix

06 Feb 07:17

Choose a tag to compare

Update to have a seprate Duplex Bam Input

05 Feb 23:42

Choose a tag to compare

What's Changed

  • Add .agent/DEVELOPMENT.md with development guide and QC checklist by @rhshah in #14
  • Feature/dual bam support by @rhshah in #15

Full Changelog: 0.5.1...0.5.2

Docker image with data

04 Feb 03:54

Choose a tag to compare

Version with Panel features

03 Feb 13:41

Choose a tag to compare

What's Changed

  • Feature/pon framework by @rhshah in #8
  • Feature/fsc ml features by @rhshah in #9
  • Add dual GC correction and on-target baselines for panel mode by @rhshah in #10
  • Feature/output format standardization by @rhshah in #11
  • Add Region MDS feature for per-gene motif diversity by @rhshah in #12

Full Changelog: 0.3.2...0.5.0

0.3.2

18 Dec 19:57

Choose a tag to compare

What's Changed

Full Changelog: v0.3.1...0.3.2