Enhancing Reproducibility and Collaboration via Management of R Package Cohorts
Science depends on collaboration, result reproduction, and the development of supporting software tools. Each of these requires careful management of software versions. We present a unified model for installing, managing, and publishing software contexts in R. It introduces the package manifest as a...
Main Authors: | , , , |
---|---|
Format: | Article |
Language: | English |
Published: |
Foundation for Open Access Statistics
2017-11-01
|
Series: | Journal of Statistical Software |
Subjects: | |
Online Access: | https://www.jstatsoft.org/index.php/jss/article/view/3327 |
id |
doaj-4ac95a4d692e450f9d84eea0ddda1df5 |
---|---|
record_format |
Article |
spelling |
doaj-4ac95a4d692e450f9d84eea0ddda1df52020-11-24T23:30:13ZengFoundation for Open Access StatisticsJournal of Statistical Software1548-76602017-11-0182111810.18637/jss.v082.i011167Enhancing Reproducibility and Collaboration via Management of R Package CohortsGabriel BeckerCory BarrRobert GentlemanMichael LawrenceScience depends on collaboration, result reproduction, and the development of supporting software tools. Each of these requires careful management of software versions. We present a unified model for installing, managing, and publishing software contexts in R. It introduces the package manifest as a central data structure for representing versionspecific, decentralized package cohorts. The manifest points to package sources on arbitrary hosts and in various forms, including tarballs and directories under version control. We provide a high-level interface for creating and switching between side-by-side package libraries derived from manifests. Finally, we extend package installation to support the retrieval of exact package versions as indicated by manifests, and to maintain provenance for installed packages. The provenance information enables the user to publish libraries or sessions as manifests, hence completing the loop between publication and deployment. We have implemented this model across three software packages, switchr, switchrGist and GRANBase, and have released the source code under the Artistic 2.0 license.https://www.jstatsoft.org/index.php/jss/article/view/3327reproducibilitycollaborationsoftware distributionpackage development |
collection |
DOAJ |
language |
English |
format |
Article |
sources |
DOAJ |
author |
Gabriel Becker Cory Barr Robert Gentleman Michael Lawrence |
spellingShingle |
Gabriel Becker Cory Barr Robert Gentleman Michael Lawrence Enhancing Reproducibility and Collaboration via Management of R Package Cohorts Journal of Statistical Software reproducibility collaboration software distribution package development |
author_facet |
Gabriel Becker Cory Barr Robert Gentleman Michael Lawrence |
author_sort |
Gabriel Becker |
title |
Enhancing Reproducibility and Collaboration via Management of R Package Cohorts |
title_short |
Enhancing Reproducibility and Collaboration via Management of R Package Cohorts |
title_full |
Enhancing Reproducibility and Collaboration via Management of R Package Cohorts |
title_fullStr |
Enhancing Reproducibility and Collaboration via Management of R Package Cohorts |
title_full_unstemmed |
Enhancing Reproducibility and Collaboration via Management of R Package Cohorts |
title_sort |
enhancing reproducibility and collaboration via management of r package cohorts |
publisher |
Foundation for Open Access Statistics |
series |
Journal of Statistical Software |
issn |
1548-7660 |
publishDate |
2017-11-01 |
description |
Science depends on collaboration, result reproduction, and the development of supporting software tools. Each of these requires careful management of software versions. We present a unified model for installing, managing, and publishing software contexts in R. It introduces the package manifest as a central data structure for representing versionspecific, decentralized package cohorts. The manifest points to package sources on arbitrary hosts and in various forms, including tarballs and directories under version control. We provide a high-level interface for creating and switching between side-by-side package libraries derived from manifests. Finally, we extend package installation to support the retrieval of exact package versions as indicated by manifests, and to maintain provenance for installed packages. The provenance information enables the user to publish libraries or sessions as manifests, hence completing the loop between publication and deployment. We have implemented this model across three software packages, switchr, switchrGist and GRANBase, and have released the source code under the Artistic 2.0 license. |
topic |
reproducibility collaboration software distribution package development |
url |
https://www.jstatsoft.org/index.php/jss/article/view/3327 |
work_keys_str_mv |
AT gabrielbecker enhancingreproducibilityandcollaborationviamanagementofrpackagecohorts AT corybarr enhancingreproducibilityandcollaborationviamanagementofrpackagecohorts AT robertgentleman enhancingreproducibilityandcollaborationviamanagementofrpackagecohorts AT michaellawrence enhancingreproducibilityandcollaborationviamanagementofrpackagecohorts |
_version_ |
1725542238840160256 |