`pkgcache:::is_ppm_linux_repo_url()` does not recognize manylinux_2_28 as a valid binary distro

Open Beginner friendly
#138 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
1/5
Estimated time
Under an hour
Newbie friendliness
82/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Quiet
Tech stack
r
Domain
tooling

Research direction

Start in R/metadata-cache.R at the re_ppm_linux regular expression used by pkgcache:::is_ppm_linux_repo_url(). Verify the examples in the issue, including manylinux_2_28 and resolute URLs, and update the matching behavior so the manylinux_2_28 URL is recognized as valid without breaking existing distro and version matches.

Written by the indexing model from the issue text.

Description

This issue in pak is likely related to pkgcache:::is_ppm_linux_repo_url(), which does not recognize p3m manylinux_2_28 as a valid binary distro. This may cause pak to compile packages from source instead of downloading them.

# For recent Ubuntu 26.04 it works
pkgcache:::is_ppm_linux_repo_url(
  "https://packagemanager.posit.co/cran/__linux__/resolute/latest"
)
#> [1] TRUE
 
# ... for manylinux_2_28 not
pkgcache:::is_ppm_linux_repo_url(
  "https://packagemanager.posit.co/cran/__linux__/manylinux_2_28/latest"
)
#> [1] FALSE

Changing the regex re_ppm_linux would work:

grepl(
  "^(?<base>.*/)(?<repo>[^/]+)/__linux__/(?<distro>[a-zA-Z0-9_]+)/(?<version>latest|[-0-9]+)$",
  "https://packagemanager.posit.co/cran/__linux__/manylinux_2_28/latest",
  perl = TRUE
)
#> [1] TRUE
Dominant language
R
Stars
30
Forks
19
Avg merge
4d 19h
Merged PRs (30d)
1

Contributor guide

Open the contributing guide

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.

More from r-lib/pkgcache

All issues in r-lib/pkgcache

Similar issues

More R issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.