maintainer: a web-based dashboard for maintainers of cran packages

Post on 25-Dec-2014

171 Views

Category:

Software

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Tool demo presentation by Maelick Claes of UMONS (directed by T. Mens and Ph. Grosjean) during ICSME 2014 conference in Victoria, Canada (October 2014). Abstract: The R development community maintains thousands of packages through its Comprehensive R Archive Network CRAN. The growth and evolution of this archive makes it more and more difficult to maintain packages and their interdependencies, and the existing tools that aim to help developers in this process no longer suffice. We propose maintaineR, a web-based dashboard that allows CRAN package developers to understand and deal with the implications and problems raised by package updates. The dashboard complements existing analysis tools by providing additional support such as the visualisation of package dependencies and reverse dependencies, package conflicts, cross-package function clones, and so on.

TRANSCRIPT

maintaineRmaintaineRA web-based dashboard for main-A web-based dashboard for main-

tainers of CRAN tainers of CRAN packagespackages

Maëlick(ClaesTom$Mens$&$Philippe$Grosjean

&$

2nd$October$2014,$ICSME$2014

Software$Engineering$Lab$ Numerical$Ecology$of

Aquatic$Systems$Lab

2

IntroductionIntroduction

Statistical$environment$based$on$the$S$language

Packages$with

Code$(R,$C,$Fortran,...)

Documentation

Examples

Tests

Datasets

...

CRAN$(Comprehensive$R$Archive$Network)

Official$R$package$repository

Strict$policy$for$package$acceptance

Package$quality$regularly$checked$&$archive$process

Complaints$in$the$community$Hornik$2012,$Are$there$too$many$Rpackages?

hUp://www.rXproject.org

Previous workPrevious workPreliminary$empirical$study$using$CRAN$metaXdata

On$the$maintainability$of$CRAN$packages$(CSMRXWCRE$2014)

R$CMD$check$results$from$CRAN:

Most$errors$resolved$quickly$without$developer$intervention

Maintenance$effort$needs$to$focus$on$fixing$errors$caused$by$others

Need$for$a$more$specific$tool$to$detect$problems$related$to

dependency$changes

hUp://cran.rXproject.org/web/checks/

maintaineRmaintaineR

ArchitectureArchitecture

maintaineRextractoR

cloneR

RCurl + XML

hash

igraph

DB WebApp

VirtualBox +

VagrantShiny

rChartstimeline

Running maintaineRRunning maintaineR

Required:$igraph,$rCharts,$d3Network,$shiny,$timeline,$RCurl,

shinyIncubator,$extractoR.utils

hUps://github.com/ecosXumons/maintaineR

hUps://github.com/ecosXumons/CRANData

install.packages(c("igraph", "d3Network", "shiny", "RCurl", "devtools"))devtools::install_github("rstudio/shiny-incubator")devtools::install_github("ramnathv/rCharts")devtools::install_github("ecos-umons/extractoR/extractoR.utils")devtools::install_github("ecos-umons/maintaineR")shiny::runApp(system.file("webapp", package="maintaineR"), port=3000)

DemoDemohUps://www.youtube.com/watch?v=q3RWTsVnPqg

Future workFuture workCLI$check$tool$on$a$new$package$version

General$UI$improvement

Performance$optimization

Global$CRAN$view

View$all$packages$of$a$maintainer

Present$information$about$package$tests

Function$call$graph

Thanks for your attentionThanks for your attention

Questions?Questions?Slides: Slides: http://maelick.net/presentations/icsme2014/http://maelick.net/presentations/icsme2014/

top related