Skip to content

Commit ef899be

Browse files
committed
Update embedded pkgdepends
1 parent a549ef5 commit ef899be

File tree

4 files changed

+22
-2
lines changed

4 files changed

+22
-2
lines changed

src/library/pkgdepends/DESCRIPTION

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ Suggests: asciicast (>= 2.2.0.9000), codetools, covr, debugme, fansi,
2727
fs, gh, gitcreds, glue, htmlwidgets, mockery, pak, pingr (>=
2828
2.0.0), rmarkdown, rstudioapi, spelling, svglite, testthat (>=
2929
3.2.0), tibble, webfakes (>= 1.1.5.9000), withr (>= 2.1.1)
30+
Remotes: r-lib/pkgcache
3031
Config/Needs/builder: gh, pkgsearch, withr (>= 2.1.1)
3132
Config/Needs/coverage: r-lib/asciicast, covr
3233
Config/Needs/website: r-lib/asciicast, pkgdown (>= 2.0.2),
@@ -36,7 +37,7 @@ Config/usethis/last-upkeep: 2025-05-05
3637
Encoding: UTF-8
3738
RoxygenNote: 7.3.2.9000
3839
NeedsCompilation: yes
39-
Packaged: 2025-12-09 12:56:20 UTC; gaborcsardi
40+
Packaged: 2026-03-10 08:02:30 UTC; gaborcsardi
4041
Author: Gábor Csárdi [aut, cre],
4142
Posit Software, PBC [cph, fnd] (ROR: <https://ror.org/03wc8by49>)
4243
Maintainer: Gábor Csárdi <csardi.gabor@gmail.com>

src/library/pkgdepends/R/gh-mirror.R

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -331,6 +331,13 @@ ghmirror <- local({
331331
package,
332332
package,
333333
version
334+
),
335+
sprintf(
336+
"%s/src/contrib/%s/Other/%s_%s.tar.gz",
337+
repo,
338+
as.character(getRversion()),
339+
package,
340+
version
334341
)
335342
)
336343
}

src/library/pkgdepends/R/platform.R

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,10 @@ platform_is_ok <- function(cand, exp, exp_archs = NULL) {
9595
# This is an i386 only binary. This is not OK currently.
9696
# (We do not allow an i386-only installation.)
9797
FALSE
98+
} else if (cand == "") {
99+
# PPM with binaries gives an empty string if the package doesn't require
100+
# compilation. So this is OK.
101+
TRUE
98102
} else {
99103
# Otherwise it is just a match
100104
cand %in% exp

src/library/pkgdepends/R/solve.R

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -735,7 +735,15 @@ pkgplan_i_lp_prefer_new_binaries <- function(lp) {
735735
# I tried adding a penalty to older versions, but that did not work.
736736
pkgs <- lp$pkgs
737737
whpp <- pkgs$status == "OK" & !is.na(pkgs$version)
738-
pn <- unique(pkgs$package[whpp])
738+
# Skip packages directly referenced with a version pin. Those are
739+
# handled by pkgplan_i_lp_latest_direct, and ruling out older binaries
740+
# here would conflict with the satisfy-direct constraint.
741+
vreq <- vlapply(
742+
lp$pkgs$remote,
743+
function(r) is.list(r) && !is.null(r$version) && r$version != ""
744+
)
745+
pinned <- unique(lp$pkgs$package[lp$pkgs$direct & vreq])
746+
pn <- setdiff(unique(pkgs$package[whpp]), pinned)
739747
ruled_out <- integer()
740748
for (p in pn) {
741749
whp <- which(

0 commit comments

Comments
 (0)