rstudio / rstudio/packrat

Full support for .tar.gz files in the local repo

Open
#141 6 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
R
Stars
409
Forks
89
PR merge metrics
No merged PRs in 30d

Description

In my quest to use packrat to track a third party package I came across a pain point. I have a local .tar.gz file of a package source that I want track. We'll call it "my_package.tar.gz"

  • I made a local repo folder "~/R/external"
  • I added the local repo to the packrat options via set_opts()
  • I added the local my_package.tar.gz to the local repo
  • Next, i did a local_install on my_package.tar.gz and viola! My package is in the local packrat lib as expected.

Finally, I tried to record a snapshot() of the project and was greeted with an error: "No package 'my_package' found in local repositories specified". Looking at packrat's source this seems to be caused by the findLocalRepoForPkg() not recognizing .tar.gz files in the local repo.

Is this the preferred behavior?
If so, how should one snapshot local .tar.gz packages?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing findLocalRepoForPkg() and the snapshot() and local_install() entry points involved in the reported sequence. Reproduce the local repository setup with my_package.tar.gz, then determine whether snapshot() can locate and record the package; done means the intended behavior is established and the reproduction either succeeds or has a documented resolution.

Written by the indexing model from the issue text.

Assessment

Tech stack
r
Domain
tooling
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.