Skip to content

Check each branch against its own Bioconductor version - #502

Merged
rcannood merged 3 commits into
develfrom
ci/bioc-version-from-branch
Aug 14, 2026
Merged

Check each branch against its own Bioconductor version#502
rcannood merged 3 commits into
develfrom
ci/bioc-version-from-branch

Conversation

@rcannood

@rcannood rcannood commented Aug 13, 2026

Copy link
Copy Markdown
Member

Related to: the ubuntu-latest (release) check that has been red on devel since #455

Description

Checking devel against Bioconductor release was never going to work while devel
depends on devel-only packages. This PR derives the Bioc version from the branch.

The r-universe checks don't make this workflow redundant atm, since the runner has no h5diff and
skips the byte-level roundtrip comparisons in test-roundtrip-*.R.

We'll want to backport this to the release branches

Checklist

Before review

  • Update and regenerate man pages
  • Add/update tests
  • Add/update examples in vignettes
  • Pass CI checks

Before merge

  • Update NEWS
  • Bump devel version

* Drop the `ubuntu-latest` Bioconductor release leg from the matrix
* Derive `bioc-version` from the target branch instead of the matrix
* Run the workflow on pushes to `RELEASE_**` as well as `devel`
`RELEASE_3_22` needs Bioconductor 3.22 and R 4.5, not whichever release
happens to be current. Derive the version from the branch name in a small
`bioc-version` job and feed it to the matrix.
@rcannood rcannood changed the title Check RELEASE_ branches against Bioconductor release Check each branch against its own Bioconductor version Aug 13, 2026
@github-actions

Copy link
Copy Markdown

🐰 Bencher Report

ProjectanndataR
Branchci/bioc-version-from-branch
Testbedubuntu-latest

⚠️ WARNING: Truncated view!

The full continuous benchmarking report exceeds the maximum length allowed on this platform.

🚨 3 Alerts

🐰 View full continuous benchmarking report in Bencher

@rcannood
rcannood requested a review from lazappi August 13, 2026 11:49
@rcannood
rcannood merged commit 8320a69 into devel Aug 14, 2026
33 of 34 checks passed
@rcannood
rcannood deleted the ci/bioc-version-from-branch branch August 14, 2026 06:26
rcannood added a commit that referenced this pull request Aug 17, 2026
* Check each branch against its own Bioconductor version (#502)

* check RELEASE_ branches against bioc release

* Drop the `ubuntu-latest` Bioconductor release leg from the matrix
* Derive `bioc-version` from the target branch instead of the matrix
* Run the workflow on pushes to `RELEASE_**` as well as `devel`

* add NEWS entry

* pin each RELEASE_ branch to its own bioc version

`RELEASE_3_22` needs Bioconductor 3.22 and R 4.5, not whichever release
happens to be current. Derive the version from the branch name in a small
`bioc-version` job and feed it to the matrix.

(cherry picked from commit 8320a69)

* Add support for `nullable-string-array` (#480)

* Add read_h5ad_nullable_string() helper

* Add read_zarr_nullable_string()

* Add write_h5ad_nullable_string()

* Add write_zarr_nullable_string()

* Update example files

* Update example data files

* Add tests for nullable strings

* Use zarr_format

* Add nullable string roundtrip tests

* Style

* Update NEWS

---------

Co-authored-by: Robrecht Cannoodt <rcannood@gmail.com>
(cherry picked from commit c5cf4be)

* Keep running BiocCheck on release branches

PR #502 dropped the `ubuntu-latest` + Bioconductor devel matrix leg and gated
BiocCheck on the resolved version being `devel`. On a `RELEASE_*` branch that
version is now `3.23`, so BiocCheck stopped running there entirely.

Run it on `ubuntu-latest` regardless of the resolved version; every branch is
checked against the Bioconductor version it targets, so BiocCheck is
meaningful on both. `devel` needs the same change.

* Update NEWS and bump version to 1.2.2

* Fix logical matrices losing their shape when written to H5AD

hdf5_write_boolean_dataset() called as.integer(value) before checking
dim(value) to compute the dataspace shape. as.integer() drops the dim
attribute, so the check always fell through to the flat-vector branch,
and any 2D+ logical matrix (X/layers/obsm/varm) was written as a 1D
dataset. Reading it back then failed since the shape no longer matched
(n_obs, n_var).

Capture dims before the conversion, and align H5Screate_simple()'s
native argument with hdf5_write_dataset() a few lines above (native =
FALSE), which is what write_h5ad_dense_array() already transposes
values for.

Fixes #495

(cherry picked from commit fa91217)

* Add PR #496 to the NEWS entry for 1.2.2

---------

Co-authored-by: Luke Zappia <lazappi@users.noreply.github.com>
Co-authored-by: Juan Andrés Tejedor <jatejser@doctor.upv.es>
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