Introduction

RforMassSpectrometry is a meta-package, to manage and document the R for Mass Spectrometry (https://www.rformassspectrometry.org/) project. The goal of the project to provide efficient, thoroughly documented, tested and flexible R software for the analysis and interpretation of high throughput mass spectrometry assays, including proteomics and metabolomics experiments. The project formalises the longtime collaborative development efforts of its members under the R for Mass Spectrometry organisation to facilitate dissemination and accessibility of their work.

Installation

To install the core R for Mass Spectrometry packages, you will need the BiocManager package, available on CRAN. If not already available, install it with

if (!require("BiocManager"))
    install.package("BiocManager")

To proceed with the installation, run

BiocManager::install("RforMassSpectrometry/RforMassSpectrometry")

Note that some very recent Bioconductor will be needed to install and run the suite of R for Mass Spectrometry packages, and will require a recent version of R and possibly even installing the Bioconductor development version.

Loading the RforMassSpectrometry package with

library("RforMassSpectrometry")

will load the required core packages.

Code of Conduct

As contributors and maintainers of the R for Mass Spectrometry initiative, we pledge to respect all people who contribute through reporting issues, posting feature requests, updating documentation, submitting pull requests or patches, and other activities. We are committed to making participation in this project a harassment-free experience for everyone, regardless of level of experience, gender, gender identity and expression, sexual orientation, disability, personal appearance, body size, race, ethnicity, age, or religion. Examples of unacceptable behaviour by participants include the use of sexual language or imagery, derogatory comments or personal attacks, trolling, public or private harassment, insults, or other unprofessional conduct. Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct. Project maintainers who do not follow the Code of Conduct may be removed from the project team. Instances of abusive, harassing, or otherwise unacceptable behaviour may be reported by opening an issue or contacting one or more of the project maintainers.

This Code of Conduct is adapted from the Contributor Covenant, version 1.0.0, available from http://contributor-covenant.org/version/1/0/0/

Contributions

The R for Mass Spectrometry project welcomes contributions in the form of ideas, documentation, code, packages, fixes (bugs and typos), ... We invite you to discuss any of these opening a GitHub issue in the relevant package github repository.

If you have any direct contributions to an existing repository, we suggest to first discuss these as an issue if it implies any substantial changes (no need for an issue if its a simple typo, and we really appreciate those).

Contributions, even those from core members, are always expected to come in the form of a pull request (PR) that then undergoes a formal review. To do this, start by forking the package you want to contribute. It is also advised to work in, and make the PR, from a non-master branch. Good branch names include issueX when it relates to a specific issue, feat-X, bug-Y, docs-Z for new features, bug fixes and documentation updates respectively. The reviewers might ask for additional clarifications and/or changes prior to merging the PR. When contemplating contributing code, please follow the style guide below.

In particular, when several developers collaborate on a feature, an admin should create a dedicated branch RforMassSpectrometry/Package:branch. Developers should then fetch that branch in their local copy of the Package repository and send PRs to that branch too, where it will be reviewed, and eventually merged into RforMassSpectrometry/Package:master.

See also the tidyverse and Mycrof contribution guides for additional resources and instructions.

Reviewers will do their best to help you to get the PR merged^[Useful reading: The nodejs reviewing PRs for reviewers guide].

We also anticipate to open up some specific requests for contributions and invite specific members of the community, if we identify a specific need and/or a specific developer to address that need.

Commit messages {.unnumbered}

Commit messages should follow the Conventional Commits guidelines. In particular, the following types are recommended (based on angulars types):

Credit where credit is due {.unnumbered}

We also want to offer proper credit to those that provide substantial contributions. Substantial contributions include, for example

Fixing typo(s) isn't considered a substantial contribution per-se, even though they are highly appreciated.

Once a substantial contribution passes review and is merged, we will add the contributor in the package's author list as an official contributor (ctb role) or even author (aut role) for more substantial contributions. The contributors name will also be added to the R for Mass Spectrometry web page and to any relevant publications that directly stem from their work.

Coding style

The R for Mass Spectrometry packages follows the Bioconductor style guide. In particular

# no wrap at 80
someVeryLongVariableName <- someVeryLongFunctionName(withSomeEvenLongerFunctionArgumentA = 1, withSomeEvenLongerFunctionArgumentB = 2)

and should be wrapped as shown below:

# alternative 1
someVeryLongVariableName <-
    someVeryLongFunctionName(withSomeEvenLongerFunctionArgumentA = 1,
                             withSomeEvenLongerFunctionArgumentB = 2)
# alternative 2
someVeryLongVariableName <- someVeryLongFunctionName(
    withSomeEvenLongerFunctionArgumentA = 1,
    withSomeEvenLongerFunctionArgumentB = 2)

Contact

Please see the contact page for instructions on how to get in touch.

Session info {.unnumbered}

sessionInfo()


rformassspectrometry/RforMassSpectrometry documentation built on Jan. 17, 2024, 9:21 p.m.