NEWS


patRoon 3.0

This release adds a significant amount of new functionality and changes. Please see the updated [Handbook], [pre-print][preprint3], and sections below for more information. Users of previous patRoon versions should inform themselves with the important changes highlighted in the next section.

Upgrading notes

This releases adds changes to various functions to improve consistency and support new functionality. While care was taken to avoid breaking changes, some changes will affect existing workflows. Below is a summary of important points.

Please read the remaining sections below and updated documentation for more details and changes. Furthermore, it may be useful to compare the script output of newProject() to see how these changes may affect your workflow. Finally, feel free to contact or create a GitHub issue when in doubt.

Major new functionality

IMS workflows

The 3.0 release is primarily centered around supporting ion mobility separation (IMS) coupled to HRMS workflows. This technique brings several important benefits for NTA, such as an additional parameter for feature annotation (collision cross section or CCS), cleaning up of HRMS data to improve feature detection and annotation, improved separation of compounds with equal or close m/z and support of rapid and selective MS/MS (PASEF). The complete workflow was upgraded to support IMS-HRMS data and make use of the benefits from this technique. Please see the new IMS chapter in the [Handbook][Handbook-IMS] for further details.

msdata interface

The new msdata raw data interface was introduced to efficiently read complex raw data. The primary motivation was to support the complexity and specific formatting of IMS-HRMS data, but the applied optimizations also benefit classical HRMS workflows. More information on msdata and its configuration is detailed in the [Handbook][Handbook-msdata] and reference manual (?msdata).

NOTE: due to (slight) changes rounding numerical data there may be slight differences in EICs, spectra and feature data compared to the old interface.

piek and greedy algorithms

This release adds the newly developed piek algorithm, which is a simple, flexible and fast algorithm for detecting features in both HRMS and IMS-HRMS data. Furthermore, the greedy algorithm was added to provide fast grouping of features across samples and also supports both HRMS and IMS-HRMS data. Both algorithms are embedded in patRoon 3.0 and therefore don't need any installation of external software. See the [Handbook][Handbook-features] and reference manual (?findFeaturesPiek and ?groupFeaturesGreedy) for further details.

Sample metadata and analysis information

A lot of existing functionality was upgraded to support the use of sample metadata in post-processing operations, such as easily making sample groups from metadata for plotting and aggregation of data. Furthermore, the (previously very basic) support for applying linear regression to eg prioritize feature data was improved considerably, and was primarily motivated to improve feature prioritization of unknown transformation products (see 10.1021/acs.est.4c09121). Finally, functionality was added to easily subset features from metadata and update the analysis information in feature objects, e.g. to add or modify sample metadata. The [Handbook][Handbook-meta] was updated with a new subsection to demonstrate the use of sample metadata. Furthermore, see below for more details which functions were changed.

Transformation products

Two new algorithms were added for finding transformation products: "ann_form" (generateTPsAnnForm()) and "ann_comp" (generateTPsAnnComp()). These algorithms use data from a thorough feature annotation of unknown features to find candidate TPs and are eg scored on their 'fit' to given parents. The algorithms were based on the work described in 10.1021/acs.est.4c09121.

Other new functionality

Importing feature data

Support was added to import features from external data sources (which has been requested for a very long time!). The new functions importFeaturesTable() and importFeaturesGroupsTable() provide a way to import tabular data with raw or sample grouped features, respectively. See the updated [Handbook][Handbook-importFeat] and reference manual (?importFeaturesTable and ?importFeatureGroupsTable) for more details.

New data filters

Several new data filters were added throughout the workflow:

MS2 background subtraction and ID confidence estimation for unknowns

This release adds approaches to subtract MS2 background and estimate identification confidence levels unknowns, as described in 10.1021/acs.est.4c09121. The latter functionality allows the estimation of ID levels for formula and compound candidates obtained during feature annotation. The approach is similar (but optimized) compared to the previously introduced system for suspect screening workflows. Similar filters existing to remove candidates with poor ID levels. See the updated [Handbook] and reference manual (?getBGMSMSPeaks and ?estimateIDConfidence) for more details.

Improvements for reporting and project creation

The code behind newProject() and report() was considerably optimized and improved. The newProject() function was updated to support all the new functionality introduced in patRoon 3.0. The reporting interface was improved in various ways, and the output files are smaller due to lzstring compression and optimizations were applied for self-contained report files.

Updating feature group properties

The new updateGroups() method function re-calculates feature group properties (RT, m/z and mobility). This function is primarily intended to be used after filtering steps of feature data. Re-calculating aforementioned properties can then be improved by exclusion of e.g. noisy features.

Important changes

Centralized default numeric limits

The defaults for common numerical limits and thresholds (retention time, m/z and mobility) are now moved to a separate 'limits file'. This simplifies the configuration of these parameters and avoids the need to configure them throughout all functions in the workflow. As a result, some default values may have been slightly changed for consistency. See the Limits section in the updated [Handbook][Handbook-lim] for more information.

Changed defaults

Changed naming

Analysis information and use of sample metadata

Several changes were made to the analysis information tables to improve support for different file formats and allow the use of sample metadata (as introduced before). See the updated [Handbook] for more details.

MS peak lists

Other

Minor changes and new functionality

Fixes

patRoon 2.3.4

Important changes

Other changes and fixes:

patRoon 2.3.3

Import changes

Minor changes

Fixes

patRoon 2.3.2

patRoon 2.3.1

When updating to this release, it is important to remove any cached data, i.e. by running clearCache("all") or manually removing the cache.sqlite file from your project directory.

patRoon 2.3

This release adds significant new functionality, several important changes and several bug fixes thanks to user feedback.

Users of previous patRoon versions should inform themselves with the important changes highlighted in the next section. Furthermore, it is important to remove any cached data, i.e. by running clearCache("all") or manually removing the cache.sqlite file from your project directory.

Important new functionality and changes

Revamped installation of patRoon and its dependencies

This release adds new way to install and update patRoon and its dependencies. The most important changes are

For more information, please read the [updated installation chapter][hb-inst] in the handbook, and see the project pages of [patRoonInst] and [patRoonExt].

IMPORTANT If you installed patRoon via the legacy installation script, please read the [installation chapter][hb-inst] to disable/remove this installation prior to updating patRoon!

Prediction of feature toxicities and concentrations (MS2Tox/MS2Quant integration)

The second milestone of this release is the integration of the [MS2Tox] and [MS2Quant] R packages, which support machine learning approaches to predict the toxicity and concentration of features. The integration adds the following functionality to patRoon:

Please see the relevant section in the handbook, and the project pages of [MS2Tox] and [MS2Quant] for more details.

Minor new functionality and changes

Fixes

patRoon 2.2

This release adds significant new functionality, several important changes and many bug fixes thanks to user feedback.

Users of previous patRoon versions should inform themselves with the important changes highlighted in the next section. Furthermore, it is important to remove any cached data, i.e. by running clearCache("all") or manually removing the cache.sqlite file from your project directory.

Important new functionality and changes

New reporting interface

The most significant change in this release is the addition of redesigned reporting functionality. Some key functionality and changes:

An example can be seen from the report output of the tutorial.

The new reporting interface is used with the new report() method function. All the documentation was updated to reflect these changes. The now 'legacy' report interface (reportCSV(), reportPDF() and reportHTML()) is still available for backwards compatibility and may still be of interest as the new interface currently only supports the HTML format.

The new reporting functionality obviously did not yet underwent years of usage and feedback. Hence, please report any bugs and suggestions you may have!

Usage of SIRIUS version 5

Active logins are now necessary to use webservices such as CSI:FingerID, see e.g. https://boecker-lab.github.io/docs.sirius.github.io/account-and-license/ This release of patRoon adds support to make logging in more easy and adds several compatibility fixes for the latest SIRIUS version. The new utility function getSIRIUSToken() can be used to obtain a necessary login token. The new token argument for generateCompoundsSIRIUS() can be used to automatically log in. The newPorject() function was extended to use this new functionality.

Docker images moved

The Docker images are now served by the GitLab server of the University of Amsterdam. To pull the latest images you can run the following command:

docker pull uva-hva.gitlab.host:4567/r.helmus/patroon/patroonrs

The changes are reflected in the installation section of the handbook.

TP formula libraries

A new algorithm for generateTPs() was added: library_formula. This algorithm is similar to the library algorithm, but only works with chemical formulae. This is especially useful if only formula data is available for parents and/or TPs. The genFormulaTPLibrary() utility function can be used to automatically generate a formula library from given transformation rules. More information can be found in the updated handbook and reference manual (?generateTPsLibraryFormula).

Other

Other important changes include:

Minor new functionality

Minor changes

Fixes

patRoon 2.1

This release extends version 2.0 with new functionality, several important changes and bug fixes. The newProject() function was updated for the new functionality. Please see the updated Handbook and sections below for more information.

Users of previous patRoon versions should inform themselves with the important changes highlighted in the next section. Furthermore, it is highly recommended to remove any cached data, i.e. by running clearCache("all") or manually removing the cache.sqlite file from your project directory.

Important new functionality and changes

Other new functionality

Minor changes

Fixes

patRoon 2.0.2

patRoon 2.0.1

patRoon 2.0

This release adds a significant amount of new functionality and changes. Please see the updated Handbook and sections below for more information.

Users of previous patRoon versions should inform themselves with the important changes highlighted in the next section. Furthermore, it is highly recommended to remove any cached data, i.e. by running clearCache("all") or manually removing the cache.sqlite file from your project directory.

Important changes

Major new functionality

Transformation product screening

The most important new functionality in patRoon 2.0 are transformation product (TP) screening workflows. This release adds functionality to predict TPs (with BioTransformer or metabolic logic) or search TPs in PubChem or custom databases. Furthermore, other data such as MS/MS similarity or feature classification data can be used to relate parent/TP features. Other TP screening functionality includes TP prioritization and automatic generation of TP compound database for MetFrag annotation. The workflows follow the classical design of patRoon, where flexible workflows can be executed with a combination of established algorithms and new functionality. For more information, please see the dedicated chapter about TP screening in the Handbook.

Sets workflows

Another major change in this release is the addition of sets workflows. These workflows are typically used to simultaneously process positive and negative ionization data. Advantages of sets workflows include simplification of data processing, combining positive and negative data to improve e.g. feature annotations and easily comparing features across polarities. A sets workflow requires minimal changes to a 'classical workflow', and most of the additional work needed to process both polarities is done automatically behind the scenes. For more information, please see the dedicated chapter about sets workflows in the Handbook.

Features

The following new feature detection/grouping algorithms were integrated: SIRIUS, KPIC2 and SAFD. Furthermore, integration with MetaClean was implemented for the calculation of peak qualities and machine learning based classification of pass/fail peaks. In addition, the peak qualities are used to calculate peak scores, which can be used for quick assessment and prioritization.

Data curation

Interactive curation of feature data with checkChromatograms() was replaced with checkFeatures(), which is much faster, is better suitable for larger datasets, customizable and has an improved user interface. Furthermore, this tool can be used for training/assessing MetaClean models. Similarly, checkComponents() is a function that allows interactive curation of component data.

The delete() generic function allows straightforward deletion of parts of the workflow data, such as features, components and annotations. Furthermore, this function makes it easy to implement customized filters.

Adduct annotation

The algorithms of OpenMS (MetaboliteAdductDecharger) and cliqueMS were integrated for additional ways to detect adducts/isotopes through componentization. Furthermore, the new selectIons() method uses these annotations to prioritize features (e.g. by only retaining those with preferable adducts). In addition, this function stores the adduct annotations for the remaining feature groups, which can then be automatically used for e.g. formula and compound annotation.

Other new functionality

Minor changes

Fixes

patRoon 1.2.1

patRoon 1.2.0

This releases focuses on a significantly changed suspect screening interface, which brings several utilities to assist suspect annotation, prioritization, mixing of suspect and full NTA workflows and other general improvements.

IMPORTANT: The suspect screening interface has changed significantly. Please read the documentation (?screenSuspects and the handbook) for more details. If you want to quickly update your code without using any new functionality:

Change your existing code, e.g.

scr <- screenSuspects(fGroups, suspectList, ...)
fGroupsScr <- groupFeaturesScreening(fGroups, scr)

to

fGroupsScr <- screenSuspects(fGroups, suspectList, ..., onlyHits = TRUE)

Major changes

Other changes

patRoon 1.1

patRoon 1.0.4

patRoon 1.0.3

patRoon 1.0.2

patRoon 1.0.1

patRoon 1.0

June 2020

May 2020

April 2020

March 2020

February 2020

January 2020

December 2019

November 2019

October 2019

September 2019

August 2019

June 2019

May 2019

April 2019

March 2019

February 2019

January 2019

December 2018

November 2018

October 2018

September 2018

Augustus 2018

July 2018

June 2018

May 2018

April 2018