Skip to content

ci: run R-CMD-check on claude/** branches - #2754

Draft
krlmlr wants to merge 2 commits into
mainfrom
claude/ci-full-matrix
Draft

ci: run R-CMD-check on claude/** branches#2754
krlmlr wants to merge 2 commits into
mainfrom
claude/ci-full-matrix

Conversation

@krlmlr

@krlmlr krlmlr commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

This can be reused to check the full matrix which is omitted by default for maintainers (=PRs from the igraph/rigraph repo). Retarget to the appropriate claude/** branch.


LLM disclosure: this PR was prepared with Claude Code (Claude Opus 4.8).

  • By submitting this pull request, I assign the copyright of my contribution to The igraph development team.

What (draft)

R-CMD-check.yaml only triggered on push to main/master/release/next/cran-* and on pull_request against main/master. A PR based on another claude/** branch (like this one, stacked on #2753) therefore got no CI runs at all.

This adds claude/** to both branch filters — a two-line change:

  push:
    branches:
      
      - claude/**
  pull_request:
    branches:
      
      - claude/**

The push trigger is the one that matters for coverage: the versions-matrix step is skipped for same-repo pull requests (its if: requires a fork PR or a cran-* branch), but it does run for push events. So pushing a claude/** branch generates the full version matrix and exercises the rcc-full job.

Not included

An earlier revision of this PR also widened the matrix in .github/workflows/versions-matrix/action.R (full R range on macOS/Windows/arm64). That was a misunderstanding of "test the full matrix" and has been reverted — the matrix definition is unchanged, including its deliberately ragged arm64/macOS coverage and the rationale comments.

Stacking

Based on #2753 (claude/fix-names-deprecation-graph), not main. Review/merge #2753 first; this then reduces to the two-line trigger diff.

Note

The claude/** trigger runs CI on every push to any claude/* branch. That's what makes these stacked PRs testable, but you may want to narrow or drop it before it lands on main.

🤖 Generated with Claude Code

@krlmlr
krlmlr force-pushed the claude/ci-full-matrix branch from 64a71f6 to 87f4023 Compare July 24, 2026 10:22
@krlmlr
krlmlr force-pushed the claude/fix-names-deprecation-graph branch from 1d82032 to 6566387 Compare July 24, 2026 10:52
@krlmlr
krlmlr force-pushed the claude/ci-full-matrix branch 2 times, most recently from 3b874e2 to 1c0402e Compare July 24, 2026 18:36
@krlmlr krlmlr changed the title ci: test the full R version matrix on every platform ci: run R-CMD-check on claude/** branches Jul 24, 2026
@krlmlr
krlmlr force-pushed the claude/fix-names-deprecation-graph branch from 6566387 to aa70783 Compare July 24, 2026 18:38
@krlmlr
krlmlr force-pushed the claude/ci-full-matrix branch from 1c0402e to 4a890a6 Compare July 24, 2026 18:38
@krlmlr
krlmlr force-pushed the claude/ci-full-matrix branch from 4a890a6 to d21c3f0 Compare July 26, 2026 10:35
'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
return HTTP 404, so pak dependency resolution aborts on those jobs before
anything is built.

Use pak's documented downstream-package parameter instead of touching the
workflows:

  Config/gha/extra-packages: graph=?ignore-before-r=4.4.0

The install action already forwards Config/gha/extra-packages to
setup-r-dependencies, and pak parses graph=?ignore-before-r=4.4.0 as a 'param'
reference that applies to the graph dependency pulled in via deps::., ignoring
it on R older than 4.4.0 and keeping it on 4.4 and newer.

This replaces an earlier attempt that set PKG_USE_BIOCONDUCTOR=false from a
workflow step. That approach did not work: disabling Bioconductor only turned
the 404 into "Can't find package called graph", because pak does not drop an
unavailable soft dependency unless it is explicitly ignored. It also broke the
Windows jobs, which could not run the multi-line Rscript -e invocation.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019E6CUgb5aFw6uvWXztcHgV
@krlmlr
krlmlr force-pushed the claude/fix-names-deprecation-graph branch from 9d1ec13 to 62036bc Compare July 26, 2026 16:12
The workflow only triggered on push to main/master/release/next/cran-* and on
pull_request against main/master, so a PR based on another claude/** branch got
no CI runs at all.

Add claude/** to both branch filters. The push trigger is the one that matters
for coverage: the versions-matrix step is skipped for same-repo pull requests,
but runs for push events, so pushing a claude/** branch generates the version
matrix and exercises the rcc-full job.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019E6CUgb5aFw6uvWXztcHgV
@krlmlr
krlmlr force-pushed the claude/ci-full-matrix branch from d21c3f0 to 2fc5dfa Compare July 26, 2026 16:12
Base automatically changed from claude/fix-names-deprecation-graph to main July 26, 2026 19:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants