ci: disable Bioconductor on older R so pak can resolve dependencies#2753
Open
krlmlr wants to merge 1 commit into
Open
ci: disable Bioconductor on older R so pak can resolve dependencies#2753krlmlr wants to merge 1 commit into
pak can resolve dependencies#2753krlmlr wants to merge 1 commit into
Conversation
1 task
Contributor
|
This is how benchmark results would change (along with a 95% confidence interval in relative change) if 1d82032 is merged into main:
|
krlmlr
force-pushed
the
claude/fix-names-deprecation-graph
branch
from
July 24, 2026 10:52
1d82032 to
6566387
Compare
Contributor
|
This is how benchmark results would change (along with a 95% confidence interval in relative change) if 6566387 is merged into main:
|
1 task
'graph' is an optional Enhances dependency published only on Bioconductor. The Bioconductor releases matching R 4.2 / 4.3 (graph 3.16 / 3.18) are archived and now return HTTP 404 on the Posit mirror, so pak dependency resolution aborts on those jobs before anything is built. Rather than patching DESCRIPTION, use pak's own switch: set PKG_USE_BIOCONDUCTOR=false on R < 4.4 in the install composite action. 'graph' then has no install candidate, and because it is a soft (Enhances) dependency pak's solver drops it instead of erroring. Newer R keeps Bioconductor and exercises graph as before; DESCRIPTION is left untouched. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019E6CUgb5aFw6uvWXztcHgV
krlmlr
force-pushed
the
claude/fix-names-deprecation-graph
branch
from
July 24, 2026 18:38
6566387 to
aa70783
Compare
structure() attribute names and skip Bioconductor graph on old Rpak can resolve dependencies
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
LLM disclosure: this PR was prepared with Claude Code (Claude Opus 4.8).
Problem
graphis an optionalEnhances:dependency published only on Bioconductor. The Bioconductor releases matching R 4.2 / 4.3 (graph3.16 / 3.18) are archived and now return HTTP 404 on the Posit mirror, sopakdependency resolution aborts on thercc: … (4.2)/(4.3)jobs — they fail in theinstallstep, before anything is built.Fix
Rather than patching
DESCRIPTION, flip pak's own switch: theinstallcomposite action setsPKG_USE_BIOCONDUCTOR=falsewhenR < 4.4.With Bioconductor off,
graphhas no install candidate; because it is a soft (Enhances) dependency, pak's solver drops it rather than erroring. Newer R keeps Bioconductor and exercisesgraphas before.DESCRIPTIONis untouched.Verified against pak's own source (the docs site 403s from here):
pkgcache:::default_use_bioconductorreads thepkg.use_bioconductoroption /PKG_USE_BIOCONDUCTORenv var.pkgdepends:::pkgplan_i_lp_dependenciesexplicitlynexts past a soft dependency whose candidates are all unavailable — so this dropsgraphsilently rather than trading a 404 for a "package not found" error.Also verified both branches of the version check locally (R < 4.4 writes the flag to
GITHUB_ENV; R ≥ 4.4 writes nothing).Evidence it works
In a full-matrix push run on an earlier revision of this branch,
ubuntu-26.04 (4.2)/(4.3)no longer fail ininstall— dependency resolution now succeeds and they progress to thecheckstep. (They still fail there, for a separate reason that is not dependency resolution; tracked separately.)Scope
Workflow change only. The related pieces are split out:
structure()attribute names #2755 — the code changes (canonicalstructure()attribute names), offmain.claude/**branches #2754 — runR-CMD-checkonclaude/**branches (stacked on this PR).R_getRegisteredNamespace()so the C23 sanitizer build compiles #2749 — theR_getRegisteredNamespaceC23 sanitizer error, which is a stale CSAN Docker image, not a package bug.🤖 Generated with Claude Code