Skip to content

CRAN release v0.4.9

Compare
Choose a tag to compare
@kevinushey kevinushey released this 10 Mar 18:36

Packrat 0.4.9

  • Packrat now understands how to install R packages from private GitHub
    repositories. (The GITHUB_PAT environment variable should be set with
    an access token that provides access to the associated repositories.)
    (#449, #448, @ras44)

  • Packrat gained the get_lockfile_metadata() and set_lockfile_metadata()
    functions, for changing metadata associated with a particular Packrat project;
    e.g. the active R version, or the active set of repositories. (#429, @cderv)

  • Packrat now ignores all source files within a packrat/ directory when
    inferring dependencies, not just the packrat/ directory discovered at
    the top level. (#385)

  • Packrat no longer includes the .Rhistory file when creating bundles. (#401)

  • Packrat now properly handles the plain 'http' protocol when using versions
    R >= 3.2. (We now set options(download.file.method = "wininet") rather than
    options(download.file.method = "internal") in such cases.)

  • The infer.dependencies argument can now be used to switch off the scanning of
    code for dependencies when using packrat::init() and packrat::snapshot().

  • Packrat no longer fails to download the current version of a package if
    the binary and source branches of the active repositories are out of sync.

  • Packrat now attempts to parse scripts using UTF-8 encoding in addition to the
    system encoding. This should primarily help users on Windows who (rightly)
    save their documents using UTF-8 encoding rather than the default system
    encoding.

  • Packrat now screens out empty package names discovered during package
    dependency discovery. (#314)

  • The Packrat global cache is now enabled on Windows. Junction points
    (rather than symbolic links) are used to populate entries in the
    private Packrat library.

  • The 'lib-R' and 'lib-ext' directories now use architecture-specific
    sub-directories for their libraries. This should further help in cases
    where multiple versions of R are operating within a Packrat project
    at the same time.

  • Packrat now better handles cases where non-symlink files find their
    way into the 'lib-R' and 'lib-ext' folders.

  • Packrat now better handles packages that contain trailing
    newlines in their DESCRIPTION file -- it now avoids
    inserting intervening blank lines between records, which
    should resolve the 'Error: contains a blank line' error that
    can occur during package installation.

  • Packrat now only checks for the 'BiocInstaller' package within the
    Packrat private library, when attempting to ascertain whether
    Bioconductor is used by a particular project.

  • Packrat no longer automatically restores projects on startup when
    Packrat is not detected within the library directory.

  • Packrat now more eagerly caches packages during packrat::restore() --
    packages will be immediately cached following successful installation,
    rather than at the end of the restore process. (#324)

  • Packrat now better handles cases where multiple R processes attempt
    to write the same package to the cache at the same time. (#333)

  • Packrat now properly checks whether a package exists in the cache
    before attempting to copy / symlink that package to the active library
    directory. (#335)

  • Users can now control whether Packrat snapshots sources by setting the
    R_PACKRAT_SNAPSHOT_SOURCES environment variable to a 'truthy' value, or by
    setting the R option packrat.snapshot.sources.

  • Packrat now provides APIs for accessing the active paths to resource
    directories, with:

    • packrat::project_dir(project)
    • packrat::src_dir(project)
    • packrat::lib_dir(project)
    • packrat::bundles_dir(project)

    See ?packrat-resources for more details.

  • Packrat better preserves the pre-existing contents of ignore files. (#332)