Skip to content

Update CI to R 4.6 / Bioc 3.23 and bump all GitHub Actions - #73

Merged
zeehio merged 3 commits into
develfrom
claude/alpsnmr-critical-review-jmrdcl
Jul 11, 2026
Merged

Update CI to R 4.6 / Bioc 3.23 and bump all GitHub Actions#73
zeehio merged 3 commits into
develfrom
claude/alpsnmr-critical-review-jmrdcl

Conversation

@zeehio

@zeehio zeehio commented Jul 10, 2026

Copy link
Copy Markdown
Member

Summary

CI on devel has been failing (and hadn't run successfully in ~10 months before that) with a LaTeX error while rebuilding Vig02-handling-metadata-and-annotations.Rmd:

! LaTeX Error: No counter 'none' defined.

Root cause, now confirmed: pandoc >=3.8.1 changed how it renders uncaptioned Markdown tables to LaTeX — it now emits \def\LTcaptype{none} (a longtable/caption-package directive meaning "don't use a float counter for this caption"). BiocStyle's LaTeX template never predefines a counter literally named none, so LaTeX errors out the first time an uncaptioned table appears. Bisected across pandoc releases: 3.8 builds fine, 3.8.1 is the first broken version, and it's still broken as of the latest release (3.10) — so this isn't a "wait for pandoc to fix it" situation.

Minimal reproduction (no AlpsNMR code involved at all — just BiocStyle's standard pdf_document output format and a single uncaptioned Markdown table):

---
output:
  BiocStyle::pdf_document:
    latex_engine: lualatex
---

| File type | Suggested function     |
| ----------| ---------------------- |
| CSV       | `readr::read_csv()`    |

Fails identically with stock BiocStyle 2.40.0 + pandoc >=3.8.1.

Changes

  • Bioconductor / R version: RELEASE_3_21 (R 4.5, Bioc 3.21) → RELEASE_3_23 (R 4.6, Bioc 3.23), the current Bioconductor release. (This alone does not fix the LaTeX error — see below.)
  • Install zeehio/BiocStyle@my-fixes in the CI workflow, before the dependency-installation pass that builds vignettes. That branch predefines the none counter in BiocStyle's LaTeX template (in the correct file, default-2.8.tex, at the correct location — before $body$). This is a temporary pin until Bioconductor/BiocStyle#116 lands upstream.
  • GitHub Actions bumped to current major versions:
    • actions/checkout: v4 → v6
    • actions/upload-artifact: @master (an unpinned, mutable branch ref) → v7, and the uploaded artifact name now reflects the actual matrix R/Bioc version instead of a hardcoded stale RELEASE_3_19-r-4.4 string
    • docker/build-push-action: v1 → v7
    • actions/cache (v4) and r-lib/actions (v2) were already current, left unchanged

This branch also includes a merge of Bioconductor's own devel history (github.com/bioc/AlpsNMR), which had drifted ~10 months ahead with its own automated version-bump commits (4.11.1 → 4.15.0) that hadn't been synced back to this repo.

Test plan

  • Bisected the pandoc regression range (3.8 works, 3.8.1 first fails, 3.10 still fails)
  • Reproduced with a minimal standalone reprex against stock BiocStyle 2.40.0
  • Verified zeehio/BiocStyle@my-fixes fixes the reprex and the real vignette against pandoc 3.1.3, 3.8.2.1, and 3.10 (pandoc 3.8.1 itself still fails with a narrower, distinct empty-counter-name variant of the bug — that release was quickly superseded and isn't covered by this fix)
  • Actual CI run on this PR (pending) — the real end-to-end validation

claude added 3 commits July 10, 2026 18:56
The check-bioc workflow was pinned to R 4.5 / Bioconductor 3.21
(bioconductor/bioconductor_docker:RELEASE_3_21), which has been
failing CI on vignette PDF builds with a LaTeX "No counter 'none'
defined" error while rebuilding Vig02-handling-metadata-and-annotations.Rmd.
Locally reproducing the full R CMD build with the current
Bioc-3.21-pinned BiocStyle (2.36.0) and an identical texlive-full
install still succeeded, so the failure isn't traceable to a single
missing package; moving to the current R/Bioc release (R 4.6, Bioc
3.23, RELEASE_3_23) is both the currently-supported target and the
configuration verified to build the vignette successfully in this
environment.

Also bumped every GitHub Action pin to its current major version,
since several were badly stale:
- actions/checkout: v4 -> v6
- actions/upload-artifact: @master (an unpinned, mutable branch ref)
  -> v7, and made the uploaded artifact name reflect the actual
  matrix R/Bioc version instead of a hardcoded stale
  "RELEASE_3_19-r-4.4" string
- docker/build-push-action: v1 -> v7
- actions/cache and r-lib/actions were already current (v4 and v2
  respectively) and left unchanged
…ignette failure

pandoc >=3.8.1 emits \LTcaptype{none} for uncaptioned longtables, and
stock BiocStyle's LaTeX template never predefines a counter named
"none", causing "LaTeX Error: No counter 'none' defined" when
building vignettes (this is what's been failing check-bioc.yml).
Confirmed via a minimal reprex against official BiocStyle 2.40.0 with
pandoc 3.1.3 (works) vs 3.8.2.1 (fails, same error).

Installs the fork right after dependency-installation pass 1 and
before pass 2 (the step that actually builds vignettes via
remotes::install_local(build_vignettes = TRUE)). The fork's
Version: 2.41.0 outranks the official release's 2.40.0, so pass 2's
own upgrade = TRUE won't revert it.

Temporary until Bioconductor/BiocStyle#116
lands upstream.
@zeehio
zeehio merged commit 6d25272 into devel Jul 11, 2026
2 checks passed
@zeehio
zeehio deleted the claude/alpsnmr-critical-review-jmrdcl branch July 11, 2026 07:08
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