Releases: smith-chem-wisc/MetaMorpheus
1.0.6
MetaMorpheus v1.0.6 - Changes to FDR calculation
Update to .NET 8
- Updated from .NET 6 --> 8. .NET 8 install required in order to run MetaMorpheus v1.0.6. Download available here.
Overhauled PEP, Q-Value, and PEP Q-Value calculations
- Adjusted Q-value calculations to represent a true positive false discovery rate calculation. The overall number of results at Q <= 0.01 will differ for this release
- The ML classifier used for calculating PEP and PEP Q-Values was overhauled to eliminate contamination issues that could lead to anti-conservative estimates of FDR.
- New features for top-down data were added to the PEP model
- In Results.txt and AllResults.txt, text formatting has been changed
Visualization
- Can now match all fragment types to an experimental spectrum and visualize matched fragments in MetaDraw
- Can now export cross-link spectrum match plots
Bug Fixes and QOL
- Spectra file loading time has been reduced
- Search progress bar no longer scrolls infinitely after a spectral library search
- Spectral Libraries can now be used as databases from Command Line
- Added a significant amount of comments to Glyco Proteomics code
What's Changed
- Hydroxy proline diagnostic ion error by @trishorts in #2325
- Invert qvalue calculation by @trishorts in #2327
- Eliminate delta score option by @trishorts in #2338
- Add leucine to chymotrypsin cleavage motifs by @trishorts in #2336
- N-glyco search improvements by @trishorts in #2322
- Update Mzlib to 1.0.547 (Omics Update) by @nbollis in #2334
- Pass dissociation type not autodetect to diss type collection by @trishorts in #2343
- Added console output before and after uniprot tests by @Alexander-Sol in #2342
- Add XLMS paper to citations by @acesnik in #2345
- use mzlib LibrarySpectrum class by @trishorts in #2349
- Update .NET version in readme by @acesnik in #2350
- Deconvolution Generalization by @nbollis in #2339
- Shared pep box by @Alexander-Sol in #2354
- Glyco spectrum library search updates by @trishorts in #2351
- Spectral Match Generalization by @nbollis in #2340
- Eliminate PsmCount from PEP calculation by @trishorts in #2347
- Invert q-value by @trishorts in #2355
- Update to MzLib 1.0.549 by @nbollis in #2369
- Spectral Averaging Command Line by @nbollis in #2370
- Cross Link Spectrum Match Plot Export Bug Fix by @nbollis in #2371
- Stop scrolling of progress bar after calculating spectral angle by @nbollis in #2372
- Added precursor intensity to PSM, peptide proteoform output file by @zhuoxinshi in #2365
- Pep on peptides first by @trishorts in #2373
- MetaDraw Fragmentation Reanalysis by @nbollis in #2361
- Added some tooltips for the cross link search task view. by @avcarr2 in #2378
- Asynchronous file loading for search task by @nbollis in #2381
- Meta Draw Quality of Life Updates by @nbollis in #2379
- Spectral Library from Command Line by @nbollis in #2386
- Added new features to Top-Down PEP by @nbollis in #2377
- Kdn adding and diagnostic filtering by @RayMSMS in #2383
- Increased QValue cutoff for calibrating PSMs to 0.01 by @Alexander-Sol in #2392
- Changes to PEP Calculation and Filtering by @Alexander-Sol in #2387
- Net eight by @trishorts in #2391
- Updated to mzLib 1.0.550 by @Alexander-Sol in #2395
- Result Text and Individual File Result Cleanup by @nbollis in #2397
- Add the comment on glyco-searching and the search summary on the result file by @RayMSMS in #2367
- Github Actions 1: Cross Platform Build by @nbollis in #2398
- Polishing prose by @acesnik in #2403
- update mzlib nuget package to 551 by @trishorts in #2404
- Reworking PEP to prevent cross-contamination by @Alexander-Sol in #2394
- Explanation of the FdrCategory Enum in the Engine Layer which has always baffled me. by @trishorts in #2402
- Updated PEP to use set seed (42) by @Alexander-Sol in #2408
New Contributors
- @zhuoxinshi made their first contribution in #2365
- @avcarr2 made their first contribution in #2378
- @RayMSMS made their first contribution in #2383
Full Changelog: 1.0.5...1.0.6
1.0.5
What's Changed
Spectral Averaging
- New Averaging task introduced that averages multiple MS1 spectra to increase signal-to-noise in top-down spectra
MetaDraw Changes
- Spectral similarity between library and experimental spectra is now calculated on the fly - just check the "Spectral Angle" check box in Settings/Spectra Annotation
- Export spectral library from MetaDraw by selecting multiple spectra (Ctrl+click) and clicking the "Export Spectral Library" button
- New fragment ions - zPlusOne - added to the custom ion selection
- General quality of life changes - Speed increases, font-size increases, and ion changes to the way ion annotations are displayed
- Fixed issue where MetaDraw would crash when viewing ambiguous glyco-peptides
Crosslink Spectral Library
- Spectral libraries can now be created for crosslinked spectra and used for visualization in MetaDraw (Crosslink spectral library search isn't currently supported)
PTM Stoichiometry Bug Fix
- Fixed issue where the ratio of modified to unmodified residues in a protein was calculated incorrectly
TMT-10 Bug Fix
- Fixed issue where incorrect ions were being selected/displayed when searching TMT-10 data
Update mzLib from 1.0.541 -> 1.0.542
- Encyclopedia formated peptide full sequence including mass shift in brackets by @trishorts in #726
- EncyclopeDIA amodified peptides format mass shift by @trishorts in #730
Disabled Development Tests from Running Automatically by @nbollis in #731
- Raw file connection not closing by @elaboy in #709
- Above Averaging Algorithm Rework and Crash Fix by @nbollis in #739
- Allowed reading of scan descriptions from Raw Files by @nbollis in #736
- Toppic search result reading by @nbollis in #735
Full List of PRs
- Ms2scan with specific mass eliminate unused code by @trishorts in #2303
- Added SpectralAveraging.dll to project.wxs by @nbollis in #2310
- Compute spectrum similarity in meta draw by @trishorts in #2299
- Added zPlusOne to custom ion selection by @nbollis in #2311
- MetaDraw Update: Font size increase, loading speed up, peak annotation display change by @nbollis in #2313
- Glycopeptide label free quantification LFQ by @trishorts in #2309
- Removed 131C ions from TMT10 by @Alexander-Sol in #2314
- Glyco Visualization Crash Fix on ambiguous protein from peptide by @nbollis in #2317
- Mzlib Update to 1.0.542 - Averaging crash fix+ by @nbollis in #2318
- bug fix Modification Info List which reports the the modification stoichiometry in PSM counts and fractions on the full protein sequence by @trishorts in #2321
- Hydroxy proline diagnostic ion error by @trishorts in #2324
- Xl spectral library by @Alexander-Sol in #2292
Full Changelog: https://github.com/smith-chem-wisc/MetaMorpheus/compare/1.0.4...1.0.5## What's Changed
Calibration Speed-Up plus
What's Changed
New UniProt
- Fixed bug that arose when downloading protein databases from the current version of UniProt
Visualization Update
- "Show Decoy" and "Display Internal Ions" settings are now recorded when MetaDrawSettings are saved
- Sequence Coverage will no longer display internal ions if "Display Internal Ions" is not checked
- Eliminated xaml binding error in MetaDrawSettingsWindow
- Fixed glyco child scan display where child fragment ions were not being displayed properly
Spectral recovery
- Renamed the "MBR Analysis" option in Quantification to "Spectral Recovery" to avoid confusion. This change affects the Search Task window as well as function names/namespace. Addresses issue #2268
Glyco write individual file results
- Glyco search now writes individual result files for each file searched.
Updated MzLib from 1.0.538 -> 1.0.541
mzLib 1.0.539
- There was a bug wherein adding two chemical formulas with negative isotopes gave the wrong answer. The example was deamidation (H-1N-1O) plus deamidation. The expected answer is H-2N-2O2 but the original gave O2. Added by @trishorts in #697
- Averaging Updates by @nbollis in #683
- MsDataFile is now an abstract type defining methods to read data from files, both statically and dynamically.
- Previously supported data types (.raw, .mzml. .mgf) are still supported with previous syntax, but can also now be constructed with the unified syntax below:
mzLib 1.0.541
- Rectifies a significant slowdown caused by Readers refactor #698
- Fixed chemical formula bug
- Update to uniprot ptmlist.txt loader
- Fixed xml.gz compression bug so we load complete xml
- Added support for FlashDecon and TopFD file parsing
- Improved ability of FlashLFQ to handle unusual characters in file input
- Added support for negative deconvolution
Added additional support for TMT
- Reporter ions for multiplex tags now have their own columns in AllPSMs and AllPeptides .psmtsv files.
Filtering refactor
- Users are now able to specify PEP or PEP Q-Value thresholds that are used to filter results before quantification, spectral library generation, and output.
- Protein parsimony is not affected. Filtering for parsimony is still hard-coded in PostSearchAnalysisTask.ProteinAnalysis.
Added null checks to enable display of XL results
- Previously, attempting to view crosslink search results in MetaDraw would cause a crash.
Eliminate PEP from FDR analysis during calibration
Write spectrum library from PsmTsv in MetaDraw
- MetaDraw now includes a button that allows users to export selected PSMs as a spectral library
- Added a new method to PsmFromTsv called ToLibrarySpectrum() that produces the library spectrum objectI copied the pdf/png export code in MetaDraw
- The output was tested both in metadraw and in search. The written libraries load into metadraw and produce spectral angles in search.
Database download Test
- Expanded test coverage
Changed the main MetaMorpheus window to own Task windows
- New task windows will always appear on top of the main window when first launched.
Ethcd complementary ions
- Enabled the generation of complimentary ions with the EThcD activation type.
Fix string split in glyco protein parsimony
- Some protein accessions contain hyphens. Previously, this caused a crash during the glyco search task. This release replaces the hyphen with the hashtag eliminating the crash.
Averaging code added but not implemented
- Added code for the Spectral Averaging Task to refine the isotopic envelopes of top-down data prior to a database search.
- Currently, Averaging can't be performed by users due to multiple known issues
- Known Issue: On some devices, the averaging task window will crash upon launch when MetaMorpheus is installed via the .msi installer
- Known Issue: On some devices, averaging task will begin and crash half way through
Full List of PRs
New uniprot by @Jevs242 in
#2264
Glyco write individual file results by @trishorts in
#2252
Visualization Update Rebase by @nbollis and @trishorts in
#2266
Spectral recovery by @Alexander-Sol in
#2269
Update to MzLib 1.0.539 by @nbollis and @Alexander-Sol in
#2276
Added additionally support for tmt labeling by @Alexander-Sol and @nbollis in
#2278
Averaging task in MetaMorpheus by @nbollis, @avcarr and @elaboy in
#2281
Filtering refactor by @Alexander-Sol in
#2285
Added null checks to enable display of XL results by @Alexander-Sol in
#2290
Eliminate PEP from FDR analysis during calibration by @trishorts in
#2294
Write spectrum library from PsmTsv in MetaDraw by @trishorts in
#2295
Database download Test by @elaboy in
#2282
Changed the main window to own the subsequent windows by @nbollis in
#2297
Ethcd complementary ions by @trishorts in
#2274
Updated to MzLib 1.0.541 and updated one unit test by @nbollis in
#2304
Fix string split in glyco protein parsimony by @trishorts in
#2305
Full Changelog: 1.0.2...1.0.4
Note The version number for this release and the GitHub tag are both 1.0.3, but this release is actually tagged 1.0.4. This will be fixed in the next release
Quantification bug fixed. Reduce missing protein intensity values.
Update to mzLib 538
- Bug fix in median polish to reduce number of missing protein intensities
- Conversion to weighted mean polish from median polish
Added protein inference for glycopeptides
Stopped counting diagnostic ions in Morpheus score
Allow decimal numbers for precursor and product mass tolerance
1.0.1
Hotfix
Fixed issue where certain runtime dependencies were not installed, causing MetaMorpheus to crash while performing a search.
Major Changes
- MetaMorpheus 1.0.0 requires .NET 6.0, which can be found here dotnet.microsoft.com/en-us/download/dotnet/6.0
- Spectral Library Search: Users can search their data against spectral libraries in the .msp format.
- Spectrum Library Generation: Users can create and export spectral libraries using peptides identified in their data. This includes posttranslationally modified peptides discovered through GPTMD.
- Enhanced Match Between Runs (MBR): Enhanced MBR provides increased certainty for label-free quantification experiments by locating spectra associated with matches. This is an optional step that is performed after quantification in FlashLFQ. It is intended for use with single cell proteomics data.
- Top-down Search: Added the ability to search top-down proteomics data by setting the protease type to “top-down.” Users can also search for truncated proteins by checking the box labeled “Add Protein Truncation and Proteolysis Products” under Advanced Options > File Loading Parameters.
Feature Updates
- Added support for TMTpro-18
- Added option to set file-specific dissociation type, which permits simultaneous search of raw files with different fragmentation types
MetaDraw Updates
- Optimized visualization of Top-Down results
- Increased support for visualization of chimeric spectra
- Increased support for visualization of ambiguous spectra
- Added several new plots including histograms of fragment PPM Errors, precursor masses, precursor m/z, hydrophobicity scores, and a scatter plot of precursor ppm error vs retention time
- Allow for sorting and searching results by protein name, organism and FDR score
- Allow for filtering displayed results to visualize by FDR and ambiguity level
- Added png, jpeg, wmf, tiff, and bitmap as plot export options
- Enabled full customization of spectrum description in spectral match view
- Enabled full customization of matched ion and PTM colors
1.0.0
Major Changes
- MetaMorpheus 1.0.0 requires .NET 6.0, which can be found here dotnet.microsoft.com/en-us/download/dotnet/6.0
- Spectral Library Search: Users can search their data against spectral libraries in the .msp format.
- Spectrum Library Generation: Users can create and export spectral libraries using peptides identified in their data. This includes posttranslationally modified peptides discovered through GPTMD.
- Enhanced Match Between Runs (MBR): Enhanced MBR provides increased certainty for label-free quantification experiments by locating spectra associated with matches. This is an optional step that is performed after quantification in FlashLFQ. It is intended for use with single cell proteomics data.
- Top-down Search: Added the ability to search top-down proteomics data by setting the protease type to “top-down.” Users can also search for truncated proteins by checking the box labeled “Add Protein Truncation and Proteolysis Products” under Advanced Options > File Loading Parameters.
Feature Updates
- Added support for TMTpro-18
- Added option to set file-specific dissociation type, which permits simultaneous search of raw files with different fragmentation types
MetaDraw Updates
- Optimized visualization of Top-Down results
- Increased support for visualization of chimeric spectra
- Increased support for visualization of ambiguous spectra
- Added several new plots including histograms of fragment PPM Errors, precursor masses, precursor m/z, hydrophobicity scores, and a scatter plot of precursor ppm error vs retention time
- Allow for sorting and searching results by protein name, organism and FDR score
- Allow for filtering displayed results to visualize by FDR and ambiguity level
- Added png, jpeg, wmf, tiff, and bitmap as plot export options
- Enabled full customization of spectrum description in spectral match view
- Enabled full customization of matched ion and PTM colors
0.0.320
Release Notes:
Update: mzLib updated to version 1.0.504
Bug Fixes:
- Error in reading oglyco.psmtsv file in MetaDraw has been resolved
- Error caused by zero intensity peaks in files has been resolved
0.0.319
Release Notes:
- New Feature: MetaMorpheus now has internal fragment ion functionality. Within the search task users can include the search of internal fragment ions, and the minimum length required. These internal ions are not used for scoring of peptides/proteoforms, but are used to localize PTMs and disambiguated identifications. MetaDraw has also been updated for visualization of terminal and internal fragment ions in a sequence coverage map.
0.0.318
IMPORTANT! MetaMorpheus now requires .NET 5.0.
- Windows: https://dotnet.microsoft.com/download/dotnet/thank-you/runtime-desktop-5.0.4-windows-x64-installer
- Mac: https://dotnet.microsoft.com/download/dotnet/thank-you/runtime-5.0.4-macos-x64-installer
- Linux: https://docs.microsoft.com/dotnet/core/install/linux-package-managers
Release Notes:
- New Feature: MetaMorpheus now outputs classification levels for both proteoform and peptide identifications. Classification algorithm is based on (https://www.nature.com/articles/s41592-019-0573-x) and implementation is described here (https://pubs.acs.org/doi/10.1021/acs.jproteome.1c00417?ref=pdf).
- Bug Fix: MM no longer closes when selecting "download proteome"
0.0.317
Release Notes:
- New Feature: GUI users can now download a proteome from UniProt directly from a pre-set list of available proteomes in either xml or fasta format, with and without unreviewed entries. The file can include protein isoforms when requested.
- New Feature: Spectra files with mixed fragmentation techniques can be searched correctly via the classic search engine by selecting "autodetect" as the dissociation type when creating a task.
- An option to exclude mod motif from mzID output is now included.
- Bug Fix: Issue where quantification only reported one column of intensity data if the experimental design was not defined has been fixed.
- Bug Fix: Issue where the protein quantification intensity headers were not accurate if the samples were not fractionated but multiple technical replicates were present has been fixed.
- Bug Fix: Crash caused by extra line breaks in mgf files has been resolved.