Bioconductor 3.23 wrap-up

bioconductor
R
My wrap-up of the Bioconductor 3.23 release
Author

Luke Zappia

Published

May 12, 2026

The Bioconductor 3.23 release was a couple of weeks ago. Here is my wrap-up of new packages and updates. This is only the things I found interesting based on the release notes and they don’t come with any particular recommendations. If there is something else you are interested in have a look at the full release notes here.

My packages

{anndataR}

  • Add initial support for reading and writing Zarr stores. This was a major effort from members of the community.
  • Improvements to chunking when writing H5AD files
  • Improvements to performance when reading sparse matrices
  • Improved warnings and error handling
  • Improved tests, documentation and CI

{splatter}

  • Replace deprecated functions from {scuttle} with equivalents in {scrapper}
  • Deprecate the MFA simulation functions now that the {mfa} package is deprecated
  • Minor maintenance updates

{zellkonverter}

  • Minor updates to tests and documentation

New packages

  • {BatChef} - benchmark batch correction methods for scRNA-seq data and help pick an appropriate one
  • {Battlefield} - low-level utilities for working with spatial transcriptomics regions, interfaces and layers
  • {betterChromVAR} - faster chromVAR-style inference of TF activity for bulk and single-cell ATAC-seq
  • {CellMentor} - supervised dimensionality reduction that tries to preserve known cell-type structure
  • {DenoIST} - removes neighbourhood contamination from image-based spatial transcriptomics data
  • {dominatR} - visualises feature dominance using concepts from physics
  • {GraphExperiment} - extends SingleCellExperiment with infrastructure for storing feature-level networks
  • {hammers} - utilities package for scRNA-seq analysis using both Seurat and SingleCellExperiment
  • {jvecfor} - faster nearest-neighbour search for large single-cell datasets with drop-in replacements for common Bioconductor workflows
  • {RankMap} - fast reference-based cell type annotation for single-cell and spatial transcriptomics data
  • {scConform} - cell type annotation with conformal prediction intervals and uncertainty quantification
  • {scECODA} - workflow for analysing cell type proportions as compositional data
  • {scLang} - developer-facing helpers for writing scRNA-seq packages that work with both Seurat and SingleCellExperiment
  • {scPassport} - stores a persistent metadata passport inside Seurat and SingleCellExperiment objects
  • {scTypeEval} - tools for evaluating cell type assignments with limited ground truth data
  • {SpatialArtifacts} - quality control for identifying spatial artifacts in Visium and Visium HD data
  • {SpNeigh} - neighbourhood-aware spatial transcriptomics analysis including boundary detection and spatial differential expression
  • {tidyprint} - tidier print methods for SummarizedExperiment objects
  • {VISTA} - wraps differential expression workflows and visualisation in a SummarizedExperiment-based container
  • {ZarrArray} - DelayedArray-backed infrastructure for working with Zarr datasets in R

Updates

  • {DropletUtils} - downsampleReads() now uses the faster downsampling algorithm from {scuttle}
  • {edgeR} - new DGEListFromTximport() and DGEListFromTximeta() helpers plus a sampleWeights() function
  • {limma} - voom() gains offset support and topTableF() is now finally removed
  • {Rarr} - major updates including moving the DelayedArray backend into the new {ZarrArray} package and improved Zarr v3 support
  • {Rhdf5lib} - build updates and an update to HDF5 1.14.6
  • {rhdf5} - updated to HDF5 1.14.6 and various fixes and improvements
  • {scran} - deprecates several functions in favour of {scrapper} and fixes overflow bugs
  • {scrapper} - multiple updates to several functions, continues the migration of functionality out of {scran} and {scuttle}
  • {scuttle} - faster downsampleMatrix() and summarizeAssayByGroup(), more deprecations in favour of scrapper
  • {SingleCellExperiment} - improved warnings for named assay getters and setters
  • {tximeta} - matching updates for {edgeR}’s new DGEListFromTximeta() workflow
  • {tximport} - vignette updates around the new {edgeR} integration
NoteAI Disclaimer

AI was used to research and draft this post. It did a reasonable job on matching the style of previous posts but it missed several packages I had to tell it to add later. Overall, it was moderately successful.