Giter VIP home page Giter VIP logo

pkgverse's Introduction

pkgverse

lifecycle

Create your own universe of packages Γ  la tidyverse.

Installation

You can install the dev version of pkgverse from Github with:

devtools::install_github("mkearney/pkgverse")

Example

Create @hrbrmstr’s tidyweb.

## vector of pkgs
tidyweb <- c("curl", "jsonlite", "httr", "xml2", "rvest", "purrr", "dplyr",
  "stringi", "gdns", "urltools", "iptools", "seleniumPipes", "webdriver",
  "HARtools", "xslt", "V8", "webreadr", "openssl", "splashr")

## create packages dir
dir.create("~/packages")

## create tidyweb pkgverse
pkgverse("tidyweb", tidyweb,
  keep = "~/packages",
  use = c("readme_rmd", "rstudio", "testthat", "mit_license", "git"),
  install_if = TRUE
)

Now load your pkg universe:

## load tidyweb
library(tidyweb)
── Attaching packages ───────────────────────────────────────────────────────────────────────── tidyweb 0.0.1 ──
βœ” curl          3.2       βœ” iptools       0.4.0
βœ” jsonlite      1.5       βœ” seleniumPipes 0.3.7
βœ” httr          1.3.1     βœ” webdriver     1.0.5
βœ” xml2          1.2.0     βœ” HARtools      0.0.5
βœ” rvest         0.3.2     βœ” xslt          1.3  
βœ” purrr         0.2.5     βœ” V8            1.5  
βœ” dplyr         0.7.5     βœ” webreadr      0.4.0
βœ” stringi       1.2.2     βœ” openssl       1.0.1
βœ” gdns          0.2.1     βœ” splashr       0.4.1
βœ” urltools      1.7.0     
── Conflicts ──────────────────────────────────────────────────────────────────────────── tidyweb_conflicts() ──
βœ– seleniumPipes::back() masks rvest::back()
βœ– dplyr::filter()       masks stats::filter()
βœ– purrr::flatten()      masks jsonlite::flatten()
βœ– httr::handle_reset()  masks curl::handle_reset()
βœ– dplyr::lag()          masks stats::lag()
βœ– purrr::pluck()        masks rvest::pluck()
βœ– magrittr::set_names() masks purrr::set_names()
βœ– urltools::url_parse() masks xml2::url_parse()

pkgverse's People

Contributors

maelle avatar mkearney avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

pkgverse's Issues

Install packages only available on github if not present

It would be great if this could install packages from github in cases where the package doesn't live on cran.

One of the packages in my verse requires devtools::install_github('dir/pkg') and so it doesn't work for people who dont' have that package pre-installed.

usethis not imported

The usethis package is not imported when the package is loaded so function initially fails

Repo description

Since I can't make a PR for that 😱

"πŸ“¦πŸ”­πŸŒ  Create your own universe of packages a la tidyverse." should be "πŸ“¦πŸ”­πŸŒ  Create your own universe of packages Γ  la tidyverse."

πŸ˜‰ πŸ‡«πŸ‡·

allow control over pkg versions

it would be helpful to add control over which pkg version/commit goes into the universe, default being updated CRAN version.

Remove dependencies to make a lighter weight "verse".

The imports: and the scaffolding code stuck in every 'verse seems to be giving them dependencies on cli, crayon, dplyr, purrrr, rstudioapi and tibble - in many cases this would make for heavier dependencies than the things being included.

It would seem to be a bad idea to have infrastructure-building code depend on non-base functionality.

Error in refuse_package(package, verboten = "tidyverse")

If I have already created a package project in RStudio (https://github.com/IndrajeetPatil/ggverse) and I am inside the root directory for the package, how can I then create a verse-package? That is, it will replace the existing DESCRIPTION file and also add the needed .R files.
Should I set keep = FALSE?

Because if I do so, I get the following error-

pkgverse::pkgverse(
  pkg = "ggverse",       # RStudio project name for the package
  pkgs = ggverse::ggpackages_cran$Package, # vector of packages
  use = "package",       # add used packages using `usethis::use_package()`
  keep = FALSE,
  install_if = TRUE
)

Error in refuse_package(package, verboten = "tidyverse") : 
  argument "package" is missing, with no default

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.