thisisnic opened a new issue, #55332:
URL: https://github.com/apache/arrow/issues/55332

   ### Describe the bug, including details regarding any error messages, 
version, and platform.
   
   The `test-r-linux-as-cran` nightly job has failed every day since 
2026-10-20. It last passed on 2026-10-19.
   
   The failure is in the Docker image build. When `R_UPDATE_CLANG` is set, 
`ci/scripts/r_docker_configure.sh` adds LLVM's `llvm-toolchain-jammy-22` apt 
repository and installs `clang-22 lld-22`, then rewrites `clang-15` to 
`clang-22` in R's `Makeconf` 
(https://github.com/apache/arrow/blob/3f1fd722818375c9287f505803d15c101529ea02/ci/scripts/r_docker_configure.sh#L94-L109).
 That was added in #50299 because the `rhub/ubuntu-clang` image shipped clang 
15 while CRAN's `r-devel-linux-x86_64-debian-clang` used clang 22.
   
   On 2026-10-19 r-hub rebased all of its containers onto Ubuntu 26.04 
(https://github.com/r-hub/containers/commit/7eecbc94), and 
`rhub/ubuntu-clang:latest` now installs clang 23 from 
`llvm-toolchain-resolute-23` and points R's `Makeconf` at `clang-23` itself. 
CRAN's debian-clang flavour currently reports `clang/flang version 23.1.0` 
(https://cran.r-project.org/web/checks/check_flavors.html), so the image 
already matches CRAN without our step.
   
   Our step now breaks the build for two reasons:
   
   1. The jammy `libllvm22` package depends on `libxml2`, but on Ubuntu 26.04 
that binary package has been renamed to `libxml2-16`, so apt has nothing to 
satisfy the dependency:
   
   ```
   clang-22 : Depends: libllvm22 (= 
1:22.1.8~++20260613092327+e80beda6e255-1~exp1~20260613092437.81) but it is not 
going to be installed
   E: Unable to satisfy dependencies. Reached two conflicting assignments:
      ...
      2. 
libllvm22:amd64=1:22.1.8~++20260613092327+e80beda6e255-1~exp1~20260613092437.81 
Depends libxml2 (>= 2.7.4)
         but none of the choices are installable:
         [no choices]
   ```
   
   2. Even if the install succeeded, the `sed` that swaps `clang-15` for 
`clang-22` in `Makeconf` would match nothing, because the image's `Makeconf` 
already says `clang-23`, and we would end up testing with a compiler older than 
CRAN's.
   
   The `R_UPDATE_CLANG` block, the matrix flag in 
`dev/tasks/r/github.linux.cran.yml`, and the build arg plumbing in 
`compose.yaml` and `ci/docker/linux-r.dockerfile` can be removed; the image 
tracks CRAN's compiler on its own now.
   
   Logs:
   - Last pass, 2026-10-19 (Ubuntu 24.04 image, clang 22 installed by us): 
https://github.com/ursacomputing/crossbow/actions/runs/39200383165
   - First failure, 2026-10-20: 
https://github.com/ursacomputing/crossbow/actions/runs/39371401038
   - Latest, 2026-10-29: 
https://github.com/ursacomputing/crossbow/actions/runs/40825131742
   
   This issue was drafted with the help of an AI assistant.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to