TPP:5.0.0 Release Notes

From SPCTools

(Difference between revisions)
Jump to: navigation, search
Revision as of 00:01, 31 August 2016
Luis (Talk | contribs)
(New Features)
← Previous diff
Revision as of 00:03, 31 August 2016
Luis (Talk | contribs)
(Improvements/Changes)
Next diff →
Line 136: Line 136:
== Improvements/Changes == == Improvements/Changes ==
 +
 +* ''PeptideProphet'':
 +** Added support for Kojak (model each crosslink type separately)
 +** Expanded N-Glyc model
 +** Expanded mass models to allow for search offsets
 +
 +* ''ProteinProphet'':
 +** Warn users if protein has any zero-mass residues, and display them with affected sequence
 +** Fix call to Libra (use condition file, not channel number)
 +** Updated and reformatted usage statement
* ''InteractParser'': * ''InteractParser'':
-** Add option to record ion_injection_time in pepXML+** Added option to record ion_injection_time in pepXML
** Populate sample_enzyme tag when not present (required for RefreshParser) ** Populate sample_enzyme tag when not present (required for RefreshParser)
Line 155: Line 165:
** Do not attempt to open a file if none is given in input parameters ** Do not attempt to open a file if none is given in input parameters
** Display executable name and version at launch ** Display executable name and version at launch
 +
 +* ''Libra''
 +** Boosted performance of protein ratio calculation by 1000x or more by doing a single pass over source pepXML files
 +** Use higher precision for channels in order to support TMT-10 tags
 +** For not-a-number and infinity results, output XML_compliant "NaN" and "INF" values
 +** Added progress bar and improved user feedback
 +** Record version in XML file after analysis
* ''PTMProphet'': * ''PTMProphet'':
Line 160: Line 177:
** Don't use shared intensity to evaluate the mod positions, use the site determining ions. ** Don't use shared intensity to evaluate the mod positions, use the site determining ions.
** New EM models ** New EM models
- 
-* ''PeptideProphet'': 
-** Added support for Kojak (model each crosslink type separately) 
-** Expanded N-Glyc model 
-** Expanded mass models to allow for search offsets 
- 
-* ''ProteinProphet'': 
-** Warn users if protein has any zero-mass residues, and display them with affected sequence 
-** Fix call to Libra (use condition file, not channel number) 
-** Updated and reformatted usage statement 
* ''RespectParser'': * ''RespectParser'':
** New options to remove peaks (instead of attenuate) and for output file suffix ** New options to remove peaks (instead of attenuate) and for output file suffix
-* ''Libra''+* ''SpectraST''
-** Boosted performance of protein ratio calculation by 1000x or more by doing a single pass over source pepXML files+** Multi-threaded search
-** Use higher precision for channels in order to support TMT-10 tags+** Added selenium-related modifications
-** For not-a-number and infinity results, output XML_compliant "NaN" and "INF" values+** Glyco-peptide support
-** Added progress bar and improved user feedback+** Include standard iRT values; extract RT from mzML if not in pepXML
-** Record version in XML file after analysis+** Use Lorikeet to view spectra
 +** Look for ''spectrast.usermods'' in splib's directory
 + 
 +* ''XPress'':
 +** Get location of xsltproc via getBinPath call in non-Linux systems (removing hard-coded reference to old C:\Inetpub\tpp-bin\)
 + 
 +* ''RTCatalog'':
 +** updated with more features
*''Petunia'' *''Petunia''
Line 205: Line 219:
** Fixed wrapping of peptide page and menu bar on narrow displays ** Fixed wrapping of peptide page and menu bar on narrow displays
** Fixed FireFox bug when displaying file stats: double border, background color was cropped ** Fixed FireFox bug when displaying file stats: double border, background color was cropped
- 
* ''Sequence viewer'': * ''Sequence viewer'':
Line 221: Line 234:
** Added link to view top 5 hits in the updated spectrum viewer ** Added link to view top 5 hits in the updated spectrum viewer
** Added page title and html footer with TPP version ** Added page title and html footer with TPP version
- 
-* ''SpectraST'' 
-** Multi-threaded search 
-** Added selenium-related modifications 
-** Glyco-peptide support 
-** Include standard iRT values; extract RT from mzML if not in pepXML 
-** Use Lorikeet to view spectra 
-** Look for ''spectrast.usermods'' in splib's directory 
- 
-* ''XPress'': 
-** Get location of xsltproc via getBinPath call in non-Linux systems (removing hard-coded reference to old C:\Inetpub\tpp-bin\) 
- 
-* ''RTCatalog'': 
-** updated with more features 
- 
== Bug fixes == == Bug fixes ==

Revision as of 00:03, 31 August 2016

Trans-Proteomic Pipeline (TPP) software, release 5.0.0 is a major release of TPP that contains new features, improvements, and fixes to 4.8.0. The software is available for Windows as well as Linux (and unofficially) for OSX from all the usual locations (please see the section below, "Getting the software"). Most users are recommended to use the Windows installer, which installs and configures the TPP and other required software (such as a web server). For advanced users who need to customize the TPP, or for those who run on Linux or OS X, you can download the source code. Again, most users don't need build from source, and should use the Windows installer.

Previous release notes are available at TPP:4.8.0_Release_Notes

Contents

Major Changes and Overview

  • Heavily modified and streamlined code organization, build, and installation system
  • 64-bit
  • Windows installer:
    • includes all external dependencies, including stand-alone Apache web server (uses port 10401, user configurable), Strawberry perl, and ProteoWizard (via its own installer)
    • allows for user-configurable software and data locations
    • new (optional) TPP Tray application provides convenient shortcuts to TPP, web server control, and data and log folders
  • New major software components:
    • Kojak for cross-linking analysis
    • DISCO for analysis of DIA data without using spectral libraries
    • StPeter for label-free protein quantitation via MS2 normalized spectral indices
  • Updated user interface look and feel

More details below.


New Features

  • New PeptideMapper tool???
  • ProteinProphet:
    • Generate error vs min_prob table and insert into protXML (similar to the one produced by PeptideProphet)
    • Write sens/error info into XML by ascending error rate (as in the other prophets)
    • Stop plotting sens/err png by default; removed NOPLOT option. To produce png, use new PLOTPNG option.
    • New progress bars and cleaner, more consistent user feedback
  • PTMProphet
    • Added ability to look for neutral loss ions (new command-line spec)
    • User-defined MS2 tolerance (PPMTOL)
    • MINPROB parameter to ignore low scoring spectra
  • Petunia:
    • Extensive Look&Feel revamp:
      • simplified and streamlined navigation and menus
      • new style for tools sections and submit buttons
      • Animate button after action is submitted until completion (e.g. Copy/Paste a large file)
      • highlight selected checkboxes and radio buttons for clarity
      • darkened body background
      • added dynamic filter to Speclibs page
      • Updated menu names, tool descriptions, and tooltips
      • Added 'filter files here' hint text to files filter box
      • added basic Comet and Kojak params editor page
        • inserts date/time and user info as a comment when saving comet/kojak params via Petunia
        • Added Comet and Kojak help link for each search parameter
      • Enhanced view jobs page:
        • Do not display full jobs list when viewing a specific command output
        • Do not display 'Kill Command' link in Jobs page once command is finished
        • Only display bubble with number of running/active jobs next to Jobs tab menu title (mouse-over still displays status summary of all jobs)
        • Add filter box on jobs page
        • Added auto-filter for displaying jobs belonging to a specific session
        • Added quick links to view jobs by status (including 'ALL')
        • Fix formatting of message when no jobs are present
        • Subtly highlight when running a sub-command in command output (e.g. as in xinteract)
      • Added ability to merge info from another session to current one
        • Preserve login datetime, but override values otherwise, including working dir
        • Session can be selected from account drop-down, or linked from a file
      • Make filter box re-filter on blur
      • Added visual separator between current directory tree and list of subdirectories in filebrowser/picker
      • Spified up Mascot search page:
        • add page size filter
        • highlight selected file to download
        • collapse server URL setting if results are returned
      • updated to current ISB logo
    • Added interfaces to St.Peter, Kojak, DISCO, and RefreshParser
    • Added Kojak to list of search engines ("pipeline type")
    • Preset a few xinteract defaults for Kojak-based analysis
    • Added simple interface to Percolator (if installed)
    • Added Neutral Losses in PTMProphet page
    • Added support for TMT-10 in Libra conditions page
    • Only display m/z of relevant channels when selecting from drop-down in Libra conditions page; blank out all other channel masses
    • Added (empty) directory delete functionality
    • Implemented max files limit on file chooser; give warning when over limit
    • Do not show directories when looking for files
    • Always zip files when downloading (even a single file)
    • Add links to open pdf and jpg files
    • Link directly to MODELS file when running either of the ProphetModels decoy validation tools
    • Fix calling Libra via ProteinProphet by including condition file name and cd to output dir
    • Added page for fetching datasets from public repositories (not linked yet)
      • Includes AJAX call to get system-specific capabilities for executable
    • Removed MaRiMba interface
  • PepxMLViewer:
    • Link iProphet prob to new models page
    • Added iProphet quick-filter to summary section
    • Moved iProphet probability to first column by default
    • Added filter options for all iProphet models and cleaned up options
    • Removed obsolete iProphet fields from possible column list
    • Added support for cross-linking results (specifically from Kojak):
      • display both peptides and both proteins from 'xl' entries, along with their individual scores and overall spectrum search scores
      • link to (tabbed) Lorikeet with both peptides
      • Added filter options for KOJAK fields
      • Includes support for PLink and ProteinProspector cross-link results
    • Display "KScore" as the column heading when viewing XTandem K-score results (stored in pepXML as "hyperscore")
    • Pass ions series from search params to Lorikeet
    • Changed column headers: "ions"-->"ions_old" (old viewer), "ions2"-->"ions" (lorikeet)
    • Allow NTT filter to have min and max values; also added similar filter for NMC
    • Clean up alignment of various filters and options
    • Expanded size of filename text box
    • Clean up display for quantitation fields and less popular search engines (Myrimatch, OMSSA, MSGF+, etc).
    • Added ability to format unruly values into decimal or scientific notation
  • tpp_models:
    • Capture StPeter analysis values
    • Display decoy-based ROC curves, with error bars
    • Display new error table from protXML, if present
    • Add run datetime; removed debug tab (still available in DEBUG mode)
    • Do not display error tables tab if no data
  • New versions of pepXML and protXML schemae
    • Support for StPeter quant results
    • Support for cross-linking (Kojak) results
    • Support for decoy analysis results
    • Added (belated) support for PTMProphet results
    • Updated Libra channel info
    • Modified unique_search_summary_basename restriction to also include search_engine -- this allows for combining of multiple search engine results of the same source files (e.g. iProphet)
    • Created new data type declarations for reusable elements alternative_protein and modification_info
    • Removed errant search_engine attribute from msms_run_summary (was mistakenly re-added in v118)
    • Added YABSE, MS-GF+, and Kojak to list of known search engines
    • Added initial support for SAAV results in anticipation of full PEFF support


  • Include Kojak 1.5.1 and related conf file
  • Updated to Comet 2016.01.2 and related params file
  • Updated to latest Lorikeet (Sept.2015)
  • Addition of hardklor to support DISCO
  • Include ProteoWizard tools 3.0.9974 (via Windows installer)

Improvements/Changes

  • PeptideProphet:
    • Added support for Kojak (model each crosslink type separately)
    • Expanded N-Glyc model
    • Expanded mass models to allow for search offsets
  • ProteinProphet:
    • Warn users if protein has any zero-mass residues, and display them with affected sequence
    • Fix call to Libra (use condition file, not channel number)
    • Updated and reformatted usage statement
  • InteractParser:
    • Added option to record ion_injection_time in pepXML
    • Populate sample_enzyme tag when not present (required for RefreshParser)
  • ASAPRatio:
    • Boosted protein ratio performance by doing a single pass read of all peptides in source pepXML files (as opposed to reading all files for each protein!)
      • Benchmarked speed-up at 400+ times over previous version
      • New psm struct to hold peptide data in a global map; used to calculate protein ratios after all source files have been read into memory
    • Fixed memory leak bug that caused some incorrect peptide assignments during ratio calculation
    • Record ASAPRatio version in protXML
    • Provide more feedback when running command (software name, version, and file being analyzed) as well as progress bar
    • Removed useless Next_P* and Previous_P* buttons from peptide and protein curation interfaces
    • Write xml-compliant 'NaN' string when applicable
    • Removed obsolete .bof files code
    • Added progress bar
    • Do not crash if pvalue model file is not under webserver_root - just give a warning
    • Do not attempt to open a file if none is given in input parameters
    • Display executable name and version at launch
  • Libra
    • Boosted performance of protein ratio calculation by 1000x or more by doing a single pass over source pepXML files
    • Use higher precision for channels in order to support TMT-10 tags
    • For not-a-number and infinity results, output XML_compliant "NaN" and "INF" values
    • Added progress bar and improved user feedback
    • Record version in XML file after analysis
  • PTMProphet:
    • auto-populate modifications not known to SpectraST Peptide library
    • Don't use shared intensity to evaluate the mod positions, use the site determining ions.
    • New EM models
  • RespectParser:
    • New options to remove peaks (instead of attenuate) and for output file suffix
  • SpectraST
    • Multi-threaded search
    • Added selenium-related modifications
    • Glyco-peptide support
    • Include standard iRT values; extract RT from mzML if not in pepXML
    • Use Lorikeet to view spectra
    • Look for spectrast.usermods in splib's directory
  • XPress:
    • Get location of xsltproc via getBinPath call in non-Linux systems (removing hard-coded reference to old C:\Inetpub\tpp-bin\)
  • RTCatalog:
    • updated with more features
  • Petunia
    • Use Digest::MD5 to calculate md5 checksum instead of system call
  • ProtXMLViewer:
    • Added support for StPeter quantitation results
    • Added ability to show/hide peptides for each protein
    • Added ability to sort peptides
    • Enabled sorting by protein name/accession
    • Fix sorting for very large sub-groups (that go past az)
    • View quant ratios as either numerical (with errors) or graphical bars
    • Added filter to exclude entries w/o Libra values; display 'inf' Libra values as 100%
    • Added basic spectrum stats for XPRESS results
    • Show peptide map graphic when viewing shared peptides via the weight link
    • Add peptides to exported TSV results and provide link to open directly (change default file extension to .tsv)
    • Export stpeter value to Proteographer, if present
    • Fixed horizontal scrolling of column header (also added shadow effect to separate from main content)
    • Added links to PeptideAtlas and Protter
    • Changed color scheme and submit buttons to match new Petunia
    • Styled certain links so that they are more obvious targets to the user
    • Anchored footer to bottom of page, and styled it
    • Highlight selected checkbox and radio options
    • Added spacer to fix bug that cropped rightmost column header on wide pages
    • Fixed wrapping of peptide page and menu bar on narrow displays
    • Fixed FireFox bug when displaying file stats: double border, background color was cropped
  • Sequence viewer:
    • Attempt to map peptides via I/L substitution when first pass fails
  • Spectrum Viewer:
    • Scale all spectra to 0 < mz < 2000 unless more data present (eases comparison of spectra)
    • Handle fragment mass error and pass it to Lorikeet
    • Added ability to view up to 5 interpretations of a single spectrum in same window via js tabs, with customizable labels and animation control
    • Also used for visualization of cross-linked peptide results
  • Comet hits viewer
    • Added support for cases when mz data file is in different directory than pepXML file
    • Updated link to Lorikeet by passing mzML file, scan number, and charge
    • Added link to view top 5 hits in the updated spectrum viewer
    • Added page title and html footer with TPP version

Bug fixes

  • Fixed definition for lysn_promisc enzyme (to [X]|[KR])
  • InteractParser:
    • Do not crash when protein descriptions are blank
    • Upgrade scan numbers to long
    • Fix instances where 'scan=' is not found within nativeSpectrumID
    • fix spectrum name mangling under certain nativeSpectrumID conditions
    • Fix recording of variable mods if they were not listed in order in source pepXML
    • Don't filter out InteractParser tags, they show a record of the corrections applied to the pepXML file
    • Fix a bug with unclosed analysis_summary tags
  • PTMProphet
    • Fixed memory leak
    • Fixed pepxml reporting to conform to schema
  • PepXMLViewer:
    • regenerate index when a new column is added, and keep the column always in display
    • corrected issue with bad byte offsets in large files
  • ProteinProphet:
    • Synced usage statement, removed obsolete XML option
    • Fixed computation of protein lengths
    • Check for existence of input files before attempting to open them; provide meaningful feedback to user
  • ASAPRatio:
    • Do NOT write heavy2light_adj_ratio_standard_dev attribute unless it is a normalized value
    • Increase tmp buffer size to 50k for javascript within interface to accommodate peptides with many identifications
  • Libra
    • Fix parameter handling
    • Avoid seg faults when a file is not found
  • Spectrum Viewer:
    • Faster rendering of spectra from MS2-only files
  • Comet hits viewer
    • Fixed bug where bad comparison of mass_type ("average") strings resulted in incorrect url param
  • CompareProts:
    • Fix display of mouseovers in 2-list protein comparison
    • fix bug with JS_HOME
    • fix D3 and JS references
  • SpectraST
    • Corrected proton mass
  • Mascot2XML
    • Fix mass error due to differing masses for proton
  • Tandem2XML
    • Corrections to modifications problems when using lots of mods
    • Removed non-schema compliant search_engine attribute from msms_run_summary tag


Miscellaneous

  • Major code reorganization and standardization:
    • Updated path furnishing utilities, as some paths are user-settable post-compilation
    • Renamed all ".cxx" C++ source files as ".cpp"
    • Harmonize directory names
    • Moved Enzyme code to Common/
    • moved COVERAGE/ folder into src/Util and renamed it batchcoverage (its target name)
    • Moved xtandem out of extern/ and into src/Search
    • Updated boost


  • Removed no longer needed or supported components:
    • refresh_interact, runperl, run_in
    • Visual Studio project files
    • Misc .bat files.
    • fdr_plot.cpp, getSpectrum.cpp, mzxml2dta1.cpp, plottic1.cpp, prophet_png1.cpp, tryp_model.txt
    • Old help files and IPP help pages
    • Outdated database download scripts
    • Cygwin-related code and settings
    • Marimba
  • Using Inno to produce Windows installer


Known Issues

  • Kojak graphical models in PeptideProphet are not displaying correctly on the MODELS page.
  • Peptides with multiple PTMProphet results will only display one type of mod in PepXMLViewer (due to last minute schema change)


Getting the TPP Software

  • Download the TPP version 5.0.0 native windows installer (TPP_Setup_v5_0_0.exe) from the Sashimi SourceForge project file release page:
 http://sourceforge.net/projects/sashimi/files/
  • Everyone is encouraged to read and contribute to our wiki, at
 http://tools.proteomecenter.org/wiki/
  • For guides to installing and using our software, please see our wiki:
 http://tools.proteomecenter.org/wiki/index.php?title=Software:TPP
  • For downloading the source code, please go to the following link:
 http://sourceforge.net/projects/sashimi/files/ and find the 5.0.0 source code .tgz package;
  • Or, check out the code directly from svn:
 svn checkout svn://svn.code.sf.net/p/sashimi/code/tags/release_5-0-0
  • For building from source, please refer to the README and INSTALL files in src/ directory of TPP as well as this wiki.

Acknowledgements

The TPP Team: David, Luis, Mike, Jimmy, and our old colleague Joe, plus all other developers who contributed to this release from the ISB. Thanks to developers and users from the TPP's user community who provided feedback and code contributions.

SVN Log

The SVN log of all changes since the previous release are available at TPP:5.0.0_SVN_Log.

Personal tools