Skip to content

[R][C++] How to build R package without URI parser #55454

Closed

Description

@jonkeane

Describe the bug, including details regarding any error messages, version, and platform.

Since #51244 we download URI parser at buildtime. This generally should be OK, but if there is a network failure, we must degrade gracefully on CRAN. We were contacted by CRAN about the Fedora build, but this would happen to any machine where the sources for URI parser are not available (e.g. because of network failure) and URI parser is not already installed on the system (with a sufficient version).

The R package falls back to building a very limited version of itself when there are network connectivity issues but we don't turn off enough features (or it's not possible to turn off enough features) that we don't subsequently attempt to download URI parser (which also failed). We need to do something here to work around this: either vendoring this source again (possibly only with the R package), hosting other versions of the source in more reliable places, find a way to disable the features that rely on URI parser and disable it when we run into these kinds of network failures.

Component(s)

C++, R

Activity

  1. thisisnic commented on Nov 9, 2026

    @thisisnic
    Member

    I got Claude to check for other dependencies that could fail the same way: required unconditionally by the C++ build and downloaded at build time, so turn_off_all_optional_features() in r/tools/nixlibs.R can't avoid them.

    It found one more: xsimd. Only two resolve_dependency() calls in ThirdpartyToolchain.cmake sit outside any ARROW_* gate, xsimd and uriparser. xsimd became mandatory in #49940 (25.0.0), which removed the ARROW_USE_XSIMD gate, so the -DARROW_SIMD_LEVEL=NONE flags the R fallback passes no longer disable anything. Without network or a system xsimd >= 14.2.0 the fallback fails on xsimd before it reaches uriparser, so we might want a fix here to cover both or a followup issue.

  2. added a commit that references this issue on Nov 10, 2026
  3. added this to the 27.0.0 milestone on Nov 10, 2026
  4. jonkeane commented on Nov 10, 2026

    @jonkeane
    MemberAuthor

    Issue resolved by pull request 55461
    #55461

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions