Giter VIP home page Giter VIP logo

drat's Introduction

drat: Drat R Archive Template

CI License CRAN r-universe Dependencies Downloads Last Commit Documentation Fork

drat

What cute people say when they are pissed off

"Oh Drat, i lost my wallet"

Urban Dictionary

Nota Bene

Do not fork this repo as a quick start towards creating your drat, fork this repo instead. See below for more.

Background

The R package ecosystem is one of the cornerstones of the success seen by R. As of July 2020, over 16000 packages are on CRAN, with about one thousand more at BioConductor.

Support for multiple repositories is built deeply into R; mostly via the (default) package utils. The update.packages function (along with several others from the utils package) can be used with ease for these three default repositories as well as many others. But it seemed that support for simple creation and use of local repositories was missing.

Drat tries to help here and supports two principal modes:

  • GitHub by leveraging gh-pages
  • Other repos by using other storage where you can write and provide html access

Please see the next section about how to get started, the package documentation, the drat package page or the blog section on drat for more.

Getting Started

Do not fork this repo as a quick start towards creating your drat, fork this repo instead. See below for more.

See the vignettes

for the FAQ, two principal uses cases, basic motivation and an overview / introduction. The package documentation provides more details. The drat package page has a longer tutorial, and the blog section on drat has even more.

Package documentation, help pages, vignettes, and more is also available here.

Installation

The preferred approach is to install the released package from CRAN via the standard

install.packages("drat")

command.

Quick Start Towards Your Own Drat

drat comes with its own repo creation helper function initRepo, but an even shorter path may be to fork an existing repo. This has been done numerous times with this original repo. However, over time this repo accumulated code refinements along with more documentation making it a little unwieldy. So we set up dedicated repo just to facilitate drat forking. Clone it, and you will have a ready-to-use drat repository.

Status

The package has been available from CRAN since the Spring of 2015 and starting to get some use. Possible improvements, additions and next steps are listed in the TODO.md file.

A few drat repositories are starting to appear (besides this one). An incomplete list (looking at the direct forks as well as GitHub search):

The rOpenSci project uses drat to distribute their code and has written a nice blog post about it.

Travis Integration

Colin Gillespie integrated Travis CI with drat, see his dratTravis repository for more details, and the contributed vignette Combining Drat and Travis

GitHub Actions

Mike Mahoney uses drat with GitHub Actions in a 'push' setting, while Zhian Kamvar uses drat with GitHub Actions in a 'pull' setting.

Author

Dirk Eddelbuettel, with contributions by Felix Ernst, Neal Fultz, Colin Gillespie, Christoph Stepper, Thomas Leeper, Mark van der Loo, Jan Gorecki, and others.

License

GPL (>= 2)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.