Releases: smith-chem-wisc/mzLib
1.0.576
1.0.575
What's Changed
Bug Fixes
- Fixed a crash caused by applying variant combinations in the wrong order (#1021, @trishorts)
- Fixed a crash when reading MGF files containing empty spectra (#1032, @nbollis)
New Features and Enhancements
- Added lightweight spectral matching (#1028, @Alexander-Sol)
- Implemented TMT quantification support in the quant project (#1024, @Alexander-Sol)
- Added optional
Envelopeproperty to parsedMatchedFragmentIons(#1030, @nbollis) - Enabled reading collision energy from PSMs (#1031, @nbollis)
Performance and Internal Improvements
- Made fragment neutral losses thread-static for improved performance (#1020, @Alexander-Sol)
- Refactored Koina models (#1029, @pcruzparri)
- Improved sequence conversion utilities (#1035, @nbollis)
Full Changelog: 1.0.574...1.0.575
1.0.574
What's Changed
- Embedded the protease modification file. @trishorts in #1014
- All known modifications (uniprot, unimod) are loaded and available in the Omics project. @nbollis in #1015
- RNA backbone modifications now split mod mass across fragmentation site. @nbollis in #1017 and #1026
- RNA Base modifications are now accounted for in the a-Base product ion. @nbollis in #1018
- Bugfix: M-Ion neutral loss is now calculated correctly. @nbollis in #1025
Full Changelog: 1.0.573...1.0.574
1.0.573
What's Changed
- Introduces model client for Koina's Prosit_2020_intensity_HCD fragment intensity prediction model by @pcruzparri in #981
- Add Interface IBioPolymerGroup interface and BioPolymerGroup class to Omics by @trishorts in #993
- TrimMsn by @zhuoxinshi in #1004
- Default Proteases and RNases tsv file are now packed as an embedded resource instead of requiring and external file. by @trishorts in #1005
- This pull request significantly expands and clarifies the SequenceVariation class in mzLib/Omics/BioPolymer/SequenceVariation.cs, improving its documentation, constructors, and equality logic. The changes make the class easier to use correctly and more robust for downstream analysis, especially regarding VCF (Variant Call Format) data. by @trishorts in #967
- Expanded Koina Support by adding their iRT and Flyability Models by @pcruzparri in #1008
- A single ChronologerRetentionTimePredictor can now be used for predictions across multiple threads. by @nbollis in #1011
- Mgf spectra files will now read precursor intensity when present in the header. by @nbollis in #1010
- DDA Spectral averaging of FAIMS data will now only average MS1 scans with the same compensation voltage by @nbollis in #1007
- SSRCalc retention time prediction speed improvement and memory reduction by @trishorts in #1013
Full Changelog: 1.0.572...1.0.573
1.0.572
mzLib v1.0.572 – Release Notes
This release focuses on expanded sequence variant support, improved file readers and metadata handling, and several core architectural updates in preparation for upcoming quantification changes. It also includes targeted bug fixes and new instrument-specific support.
New Features & Enhancements
Sequence Variants & Protein Representation
Major updates to how sequence variants are parsed, represented, and propagated throughout mzLib.
-
Variant Call Format (VCF) support (#963)
Introduces foundational handling of sequence variants defined in VCF files. -
Nucleotide substitution variant conversion (#964)
Converts nucleotide-level substitutions into modification-based representations suitable for proteomics workflows. -
Protein XML variant entries (#965)
Extends protein XML parsing to correctly capture and represent variant-related entries.
File Format & Reader Support
Expanded compatibility with identification formats and improved sequence parsing.
-
Casanovo mzTab reader (#976)
Adds mzTab support for Casanovo outputs, enabling integration with de novo and hybrid identification pipelines. -
OSM terminal cap support (#975)
Enables OSM to correctly read and interpret terminal caps.
Mass Spectrometry Metadata & Instrument Support
Improvements to instrument-specific metadata handling and predictive modeling.
-
FAIMS compensation voltage handling (#978)
Adds support for compensation voltages in FAIMS-enabled datasets. -
Retention time prediction (#983)
Introduces retention time prediction functionality for downstream modeling and validation.
Quantification & Core Architecture
Internal refactors and interface additions to support current and future quantification workflows.
-
Relocation of
SpectraFileInfo(#986)
MovesSpectraFileInfofrom FlashLFQ into the core MassSpectrometry namespace in preparation for expected quantification changes. -
ISpectralMatchinterface (#988)
Introduces a common interface to standardize access to PSM and OSM metadata across mzLib functions. -
ISampleInfointerface (#992)
Adds a generic sample key shared between LFQ and isobaric quantification workflows.
Bug Fixes
- Decoy identifier duplication fix (#977)
Fixes an issue where decoy identifiers were doubled for re-scrambled decoys due to sequence homology.
New Contributor
- @acarrMagnet made their first contribution by adding FAIMS compensation voltage handling in
#978
Full Changelog
1.0.571
Mzlib 1.0.570
What's Changed
- Refactor XIC spline generation for modular control of spline generation type. #945
- Psm Parsing from file now happens in parallel. #957
- Database loaders can now recognize decoys and mark them as such. #959
- Broke out Glyco Spectral Match reading into its own result record class and updated the header file. #960
- Harden MBR scoring against degenerate inputs and add comprehensive unit tests. #961
Full Changelog: 1.0.569...1.0.570
1.0.569
mzLib v1.0.569 – Release Notes
This release delivers targeted correctness improvements to isotope handling and modification parsing, ensuring more accurate downstream analysis.
🧪 Quality & Robustness
-
Isotopic Envelope Equality ([#954](#954))
Added equality checks for isotopic envelopes to improve reliability in spectrum comparison and downstream feature matching. -
C-Terminal Modification Parsing Fixes ([#953](#953))
Corrected handling of C-terminal modifications to ensure accurate parsing and representation of peptide/protein modifications.
🔗 Full Changelog: [1.0.568...1.0.569](1.0.568...1.0.569)
1.0.568
mzLib v1.0.568 – Release Notes
This release focuses on correctness improvements, ion annotation expansion, and safer handling of modification dictionaries.
✨ New Features & Enhancements
⚗️ Fragmentation & Annotation
- M-Ion Neutral Losses (#949)
Added support for annotating M-ions with neutral loss variants.
🧪 Quality & Robustness
- Check for static load before dynamic access (#948)
When accessing a scan dynamically, return the statically loaded one if we have it. - Revert modification dictionary passage in DB writer (#952)
Restores prior handling of modification dictionaries in the database writer for more consistent behavior.
🔗 Full Changelog
1.0.567
mzLib v1.0.567 – Release Notes
This release brings sturdier readers and parsers, faster and safer I/O, better chromatogram handling, and expanded ecosystem interoperability (Dinosaur, timsTOF .tsf, MS²PIP). It also strengthens correctness with new tests and clearer exceptions. Note that changes to the FlashLFQ project may result in minor differences when performing label-free quantification.
✨ New Features & Enhancements
📈 Quantification & Chromatography
- GetAllXICs with peak trimming (cutPeak) (#924)
Adds an option to trim XIC peaks for cleaner chromatograms. - XIC spline update for float-based
IIndexedPeak(#928)
Adapts spline logic to the double→float change, preserving precision/perf balance. - DIA-Umpire B-spline (#926)
Introduces B-spline smoothing tailored for DIA-Umpire style processing.
💾 File Format & Data Support
- timsTOF: support for
.tsffiles (#925)
Broadens timsTOF compatibility beyond.tdf. - Readers: support for Dinosaur output (#929)
Enables import of Dinosaur deconvolution results. - Interfaces for external decon results; implemented for Ms1Feature/Dinosaur (#931)
Standardizes external decon inputs and wires them into core feature types. - MS²PIP library reader (#930)
Adds a reader for MS²PIP libraries to ease model/score integration. - Explicit C-terminus writing (#940)
Ensures the C-terminus is written explicitly for unambiguous sequences.
🧠 Parsing, Mods & Sequence Variants
- Parse peptide full sequences with amino-acid substitutions (#933)
Correctly interprets sequences containing substitution annotations. - Convert nucleotide substitutions to protein sequence variants (#938)
Bridges nucleotide-level changes to protein-level variant representation. ParseModifications: richer output & refined regex (#939)
Produces clearer results and improves modification pattern matching.
⚙️ Performance, Concurrency & Utilities
- Parallelized
SpectralMatchFromTsvreading (#935)
Speeds up large TSV imports via parallel I/O. - Thread-safe dynamic reading (#936)
Hardens concurrent read paths to avoid race conditions. - FlashLFQ: improved MBR window expansion (#932)
More robust match-between-runs behavior; also relocatesTestFlashLFQ. - “Snip those mzMLs” utility (#941)
Adds tooling to trim mzMLs for faster debugging and tests.
🧪 Quality & Robustness
- MassIndexingEngine: unit tests, boundary checks & clearer exceptions (#927)
Improves correctness and error reporting around edge cases. - mzIdentML unit testing (#910)
Expands coverage for mzIdentML parsing and validation.
👋 New Contributor
- @pcruzparri made their first contribution in #939 — welcome!
Big thanks to everyone who contributed to this release: @trishorts, @zhuoxinshi, @Alexander-Sol, @nbollis, @pcruzparri. 🙌