Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update remotes #1067

Merged
merged 26 commits into from
Apr 25, 2016
Merged

Update remotes #1067

merged 26 commits into from
Apr 25, 2016

Conversation

jimhester
Copy link
Member

Implementation of update_remotes as defined in #1037, #975.

I also improved the SVN support to include the SVN revision, so this will now work with all remotes in devtools.

I still need to add tests for this, but this works with a simple test on all remote types on my machine.


remotes <- compact(lapply(pkgs, package2remote))

if (!isTRUE(force)) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there are reason to do this here, rather than relying on the individual install methods?

@jimhester
Copy link
Member Author

jimhester@ed000dd does as you suggest moving the SHA checking into install_remote() so it works the same across all remote types.

I also moved the remote updating into update.package_deps, so it will automatically work with the existing update_packages().

package2remote <- function(x, ...) {
x <- packageDescription(x)
if (is.null(x$RemoteType)) {
return(NULL)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What do you think about having a CRAN package type here? That might make it easy for update_packages() to work with everything

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This has been done at jimhester@8bdb10b, let me know your thoughts...

@krlmlr
Copy link
Member

krlmlr commented Feb 11, 2016

While you're at it: Is there a way to not install/upgrade remotes, just to install a single package? I tried

devtools::install("path", dependencies = FALSE, upgrade_dependencies = FALSE, metadata = NULL)

to no avail. (Now I know that the "metadata" arg does something different, never mind.) To me, it looks like install_dev_remotes() is called unconditionally. For now, I'll be using RCMD("INSTALL") as workaround.

@jimhester
Copy link
Member Author

@krlmlr You are correct, the remotes should respect update_dependencies as well.

@jimhester
Copy link
Member Author

c35630c has a simple implementation to handle #1109

@jimhester jimhester force-pushed the update_remotes branch 3 times, most recently from 52cdd10 to 8378138 Compare April 14, 2016 18:09
@codecov-io
Copy link

Current coverage is 42.33%

Merging #1067 into master will decrease coverage by -0.65%

@@           master   #1067   diff @@
=====================================
  Files          85      86     +1   
  Lines        4310    4429   +119   
  Methods         0       0          
  Branches        0       0          
=====================================
+ Hits         1853    1875    +22   
- Misses       2457    2554    +97   
  Partials        0       0          
  1. 5 files (not in diff) in R were modified. more
    • Misses -48
    • Hits +14
  2. File R/install-remote.R was modified. more
    • Misses -1
    • Partials 0
    • Hits +1

Sunburst

Powered by Codecov. Last updated by 40eafb1

[ci skip]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants