Skip to content

ci: Sync R-CMD-check workflow; drop matrix-env plumbing from custom action - #2798

Merged
krlmlr merged 2 commits into
mainfrom
claude/gha-env-var-setup-ej3a28
Jul 27, 2026
Merged

ci: Sync R-CMD-check workflow; drop matrix-env plumbing from custom action#2798
krlmlr merged 2 commits into
mainfrom
claude/gha-env-var-setup-ej3a28

Conversation

@krlmlr

@krlmlr krlmlr commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

This PR was prepared with Claude Code (LLM disclosure).

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

Sync .github/workflows/R-CMD-check.yaml and
.github/workflows/versions-matrix/action.R from cynkratemplate
(cynkra/cynkratemplate#95).

The claim from #2782
that a custom before-install action is needed
to pick up the env field of a test matrix entry —
was accurate under the old template design,
and it applied to all template consumers, not just rigraph:
composite actions cannot read the matrix context,
so the workflow forwarded matrix.env as an action input,
and each repo had to apply it to $GITHUB_ENV itself.

The template's rcc-full job now applies the generic env field
to $GITHUB_ENV directly, before the custom before-install action runs,
so no repo needs plumbing of its own.
The apply boilerplate and the env input
are therefore removed from the custom before-install action;
IGRAPH_LIFECYCLE_ERRORS=true from the lifecycle-errors matrix entry
keeps reaching the tests through the workflow-level step.

Additionally, this PR regenerates the ARG_HANDLE blocks
(Rscript tools/generate-migrations.R, generated code only):
current main carries drift —
most likely from the merge order of today's migration refactors
(#2760, #2761, #2762 and the registry side of #2782) —
and the rcc-smoke drift check fails on every branch
until the regenerated blocks are committed.
The first CI run on this PR failed exactly there,
before the regeneration commit was added.

🤖 Generated with Claude Code

https://claude.ai/code/session_0136C9bRMjBGkUrtLdkYNmAg

…ction

Sync .github/workflows/R-CMD-check.yaml and
.github/workflows/versions-matrix/action.R from cynkratemplate
(cynkra/cynkratemplate#95).
The rcc-full job now applies the generic "env" field
of test matrix entries to $GITHUB_ENV itself,
before the custom before-install action runs,
because composite actions cannot read the matrix context.

The apply-to-GITHUB_ENV boilerplate and the "env" input
in the custom before-install action are therefore no longer needed;
IGRAPH_LIFECYCLE_ERRORS=true from the lifecycle-errors matrix entry
keeps reaching the tests through the workflow-level step.
Rscript tools/generate-migrations.R produces changes
on the current main
(pre-existing drift, most likely from the merge order
of the migration refactors merged today);
the rcc-smoke drift check fails on every branch until
the regenerated blocks are committed.
Generated code only, no manual edits.
@github-actions

Copy link
Copy Markdown
Contributor

This is how benchmark results would change (along with a 95% confidence interval in relative change) if fd5b37c is merged into main:

  • ✔️as_adjacency_matrix: 793ms -> 792ms [-1.36%, +1.06%]
  • ✔️as_biadjacency_matrix: 771ms -> 775ms [-1.28%, +2.3%]
  • ✔️as_data_frame_both: 1.6ms -> 1.57ms [-4.41%, +1.54%]
  • ✔️as_long_data_frame: 4.01ms -> 3.97ms [-2.28%, +0.46%]
  • ✔️es_attr_filter: 2.78ms -> 2.75ms [-4.53%, +1.88%]
  • ✔️graph_from_adjacency_matrix: 126ms -> 125ms [-3.5%, +1.12%]
  • ✔️graph_from_data_frame: 3.45ms -> 3.6ms [-2.85%, +11.25%]
  • ✔️vs_attr_filter: 1.57ms -> 1.62ms [-3.07%, +9.01%]
  • ✔️vs_by_name: 974µs -> 968µs [-2.48%, +1.14%]
    Further explanation regarding interpretation and methodology can be found in the documentation.

@krlmlr
krlmlr merged commit 57a5d81 into main Jul 27, 2026
8 of 9 checks passed
@krlmlr
krlmlr deleted the claude/gha-env-var-setup-ej3a28 branch July 27, 2026 19:04
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