cranlike v1.0.2


Monthly downloads



Tools for 'CRAN'-Like Repositories

A set of functions to manage 'CRAN'-like repositories efficiently.



Tools for CRAN-like Repositories

Project Status: Active - The project has reached a stable, usable state and is being actively developed. Linux Build Status Windows Build status CRAN RStudio mirror downloads Coverage Status

A set of functions to manage CRAN-like repositories efficiently. This package is an alternative to tools::write_PACKAGES. The goal is to make updates to the repository easier and faster, without the need of scanning all the package files.

cranlike keeps the package data in a SQLite database, in addition to the PACKAGES* files. This database is the canonical source of the package data. It can be updated quickly, to add and remove packages. The PACKAGES* files are generated from the database.





Setting up a repository

create_empty_PACKAGES creates an empty CRAN-like repository in the specified directory. It creates the SQLite database (if it does not exist), and also the PACKAGES* files.

update_PACKAGES is similar, but it also scans the directory for package files, and adds them to the database. Use this function on an existing CRAN-like repository. It creates and updates the database, and then the PACKAGES* files.

Adding and removing packages

add_PACKAGES adds one or more package files to the repository. The files must already exist in the directory. The database is created if needed, and then updated with the new packages. Then the PACKAGES* files will be re-generated.

remove_PACKAGES removes one or more package files from the repository. It first removes them from the database, and then removes the files from the directory. Finally, it re-generates the PACKAGES* files.

Listing packages

package_versions lists all packages in the repository. It uses the SQLite database instead of parsing the PACKAGES* files, so it is much faster.


GPL Version 2 or higher © R Consortium

Functions in cranlike

Name Description
package_versions List all packages and versions in a CRAN-like repository
cranlike Tools for CRAN-like Repositories
remove_PACKAGES Remove package from a package database
with_db_lock Perform a DB query, with locking
add_PACKAGES Add R packages to the package database
create_empty_PACKAGES Create an empty package database
update_PACKAGES Create or update PACKAGES* files for a CRAN-like repository
with_db Perform a DB query, without explicit locking
No Results!

Last month downloads


License GPL (>= 2)
LazyData true
Encoding UTF-8
NeedsCompilation no
Packaged 2018-11-26 09:54:46 UTC; gaborcsardi
Repository CRAN
Date/Publication 2018-11-26 10:10:03 UTC

Include our badge in your README