Skip to content

Commit

Permalink
Merge pull request #106 from andrie/dev
Browse files Browse the repository at this point in the history
Merge dev to master
  • Loading branch information
andrie authored Dec 19, 2017
2 parents f1f7d4d + 3edb8c2 commit 7b62d23
Show file tree
Hide file tree
Showing 64 changed files with 5,880 additions and 1,087 deletions.
2 changes: 2 additions & 0 deletions .Rbuildignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,5 @@ LICENSE.md
.travis.yml
^.*\.Rproj$
^\.Rproj\.user$
^docs$
^_pkgdown\.yml$
10 changes: 4 additions & 6 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,15 +17,17 @@ matrix:
- os: linux
dist: trusty
r: release
after_success:
- Rscript -e 'withr::with_envvar(c(NOT_CRAN="true"), {covr::codecov()})'

- os: linux
dist: trusty
r: devel

- os: osx
osx_image: xcode8
osx_image: xcode9
latex: false

r_build_args: '--no-build-vignettes'
r_check_args: '--as-cran --ignore-vignettes --no-examples'

Expand All @@ -39,7 +41,3 @@ notifications:
email:
on_success: change
on_failure: change

after_success:
- test $TRAVIS_R_VERSION_STRING = "release" && Rscript -e 'withr::with_envvar(c(NOT_CRAN="true"), {covr::codecov()})'

4 changes: 2 additions & 2 deletions DESCRIPTION
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@ Description: Makes it possible to create an internally consistent
subset. The user can then install packages from this repository directly,
rather than from CRAN. This is useful in production settings, e.g. server
behind a firewall, or remote locations with slow (or zero) Internet access.
Date: 2017-10-21
Version: 0.2.10
Date: 2017-12-19
Version: 0.2.11.9000
URL: https://github.com/andrie/miniCRAN
BugReports: https://github.com/andrie/miniCRAN/issues
SystemRequirements: Imports the `curl` and `XML` packages. These have system
Expand Down
23 changes: 22 additions & 1 deletion NEWS
Original file line number Diff line number Diff line change
@@ -1,7 +1,28 @@
miniCRAN v0.2.10 (Release date: 2017-10-21)
miniCRAN v0.2.11.9000 (Release date: in development)
================

New features:

* Used `pkgdown` to build documentation site


miniCRAN v0.2.10.9000
=====================

New features:
* NULL

Bug fixes:
* use cran.microsoft.com instead of mran.microsoft.com for MRAN url (#104)

Other improvements:
* NULL


miniCRAN v0.2.10 (Release date: 2017-10-21)
================

New features:
* Added package option `minicran.mran` which sets default preferred MRAN url (#72)

Bug fixes:
Expand Down
4 changes: 2 additions & 2 deletions R/zzz.R
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@

.onLoad <- function(libname, pkgname) {
mran.url <- if (getRversion() >= "3.2.2") {
"https://mran.microsoft.com" ## use HTTPS
"https://cran.microsoft.com" ## use HTTPS
} else {
"http://mran.microsoft.com" ## use HTTP
"http://cran.microsoft.com" ## use HTTP
}

## set options using the approach used by devtools
Expand Down
36 changes: 19 additions & 17 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,16 +11,18 @@ Create a mini version of CRAN containing only selected packages

## Introduction

At the end of 2014, CRAN consisted of more than 6,000 packages. Many organisations need to maintain a private mirror of CRAN, but with only a subset of packages that are relevant to them.
At the end of 2014, CRAN consisted of more than 6,000 packages. By then end of 2017, the number of packages doubled to more than 12,000. Many organisations need to maintain a private mirror of CRAN, but with only a subset of packages that are relevant to them.

`miniCRAN` makes it possible to create an internally consistent repository consisting of selected packages from CRAN-like repositories. The user specifies a set of desired packages, and miniCRAN recursively reads the dependency tree for these packages, then downloads only this subset.
The `miniCRAN` package makes it possible to create an internally consistent repository consisting of selected packages from CRAN-like repositories. The user specifies a set of desired packages, and `miniCRAN` recursively reads the dependency tree for these packages, then downloads only this subset.

## Important functions:

* Find package dependencies: `pkgDep()`
* Make repository (with or without downloading packages): `makeRepo()`
* Add additonal packages (and their dependencies) to existing repository: `addPackage()`
* Update the versions of packages currently in the repository: `updatePackages()`
Function | Use it for
-------------- | ------------------------------------------
`pkgDep()` | Find package dependencies
`makeRepo()` | Make repository (with or without downloading packages)
`addPackage()` | Add additonal packages (and their dependencies) to existing repository
`updatePackages()` | Update the versions of packages currently in the repository

## Installation:

Expand All @@ -33,7 +35,7 @@ library("miniCRAN")

### Development version

Get the latest stable development version from github:
Get the latest development version from github:

```r
# Use `devtools` to install directly from github
Expand All @@ -43,19 +45,19 @@ install_github("andrie/miniCRAN")

### System requirements

The `miniCRAN` package itself doesn't introduce any system dependencies. However, the package imports [`curl`](https://cran.r-project.org/package=curl) and `XML` packages. These have system requirements on `libxml2-devel`, `libcurl-devel` and `openssl-devel`.
The `miniCRAN` package itself doesn't introduce any system dependencies. However, the package imports the [`curl`](https://cran.r-project.org/package=curl) and [`XML`](https://cran.r-project.org/package=XML) packages. These have system requirements on `libxml2-devel`, `libcurl-devel` and `openssl-devel`.

On systems with the `rpm` package manager (Red Hat, CentOS) try:
* On systems with the `rpm` package manager (Red Hat, CentOS) try:

```bash
yum install libcurl-devel libxml2-devel openssl-devel
```
```sh
yum install libcurl-devel libxml2-devel openssl-devel
```

On systems with the `aptitude` package manager (Debian, Ubuntu) try:
* On systems with the `aptitude` package manager (Debian, Ubuntu) try:

```bash
apt-get install libcurl4-openssl-dev libxml2-devel openssl-devel
```
```sh
apt-get install libcurl4-openssl-dev libxml2-devel openssl-devel
```


## Example:
Expand All @@ -65,7 +67,7 @@ apt-get install libcurl4-openssl-dev libxml2-devel openssl-devel
library("miniCRAN")
pkgs <- c("ggplot2", "plyr", "reshape2")
makeRepo(pkgDep(pkgs), path=file.path(tempdir(), "miniCRAN"), download=TRUE)
makeRepo(pkgDep(pkgs), path = file.path(tempdir(), "miniCRAN"))
```
## Supported by Microsoft
Expand Down
54 changes: 54 additions & 0 deletions _pkgdown.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
navbar:
title: miniCRAN
type: default
left:
- icon: fa-home fa-lg
href: index.html
- text: Reference
href: reference/index.html
- text: Articles
menu:
- text: Using miniCRAN to identify package dependencies
href: articles/miniCRAN-dependency-graph.html
- text: Using miniCRAN to create a local CRAN repository
href: articles/miniCRAN-introduction.html
- text: Using repositories other than CRAN with miniCRAN
href: articles/miniCRAN-non-CRAN-repos.html
right:
- icon: fa-github fa-lg
href: https://github.com/andrie/miniCRAN

reference:
- title: Create
desc: Creating a miniCRAN
contents:
- '`makeRepo`'
- title: Dependencies
desc: Identify and plot dependency tree
contents:
- '`pkgDep`'
- '`plot.pkgDepGraph`'
- '`makeDepGraph`'
- title: Extend
desc: Add additional packages
contents:
- '`addLocalPackage`'
- '`addOldPackage`'
- '`addPackage`'
- '`updatePackages`'
- title: Internal functions
desc: ~
contents:
- '`addPackageListingGithub`'
- '`basePkgs`'
- '`checkVersions`'
- '`cranJuly2014`'
- '`getCranDescription`'
- '`.listFiles`'
- '`makeLibrary`'
- '`miniCRAN-package`'
- '`pkgAvail`'
- '`repoBinPath`'
- '`repoPrefix`'
- '`twodigitRversion`'

131 changes: 131 additions & 0 deletions docs/articles/index.html

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 7b62d23

Please sign in to comment.