Skip to content

v2.5.0

Latest

Choose a tag to compare

@ncborcherding ncborcherding released this 20 May 20:00
· 53 commits to master since this release

Highlights

  • Streamlined code-base – major internal refactor for clarity, speed and a ~20 % smaller dependency tree.
  • Consistent, flexible visualisation API across all plotting helpers.
  • Robust unit-test suite (>250 expectations) now ships with the package.

New & enhanced functionality

Area Function(s) What changed
Visualisation ridgeEnrichment() True gradient coloring mode for numeric color.by; optional per-cell rugs; quantile median line; fixed grey-fill bug
densityEnrichment() accepts new rug.height; ~4× faster ranking routine using MatrixGenerics::rowMeans2; cleaner two-panel layout via patchwork
gseaEnrichment() new rug.height; clearer legend showing ES/NES/ p; internal vectorised ES calculation
splitEnrichment() rewritten: split violins when split.by has 2 levels, dodged violins otherwise; inline boxplots; auto Z-scaling; palette helper
scatterEnrichment() density-aware points (via ggpointdensity), hex-bin alternative, optional Pearson/Spearman overlay, continuous or discrete color mapping
Dimensionality reduction performPCA() / pcaEnrichment() uses irlba::prcomp_irlba() automatically for large matrices; stores eigen-values/contribution in misc; add.percent.contribution now always respected
Scoring backend escape.matrix() / .compute_enrichment() lazy loading of heavy back-ends (GSVA, UCell, AUCell); unified .build_gsva_param(); drops empty gene-sets up-front
Normalization performNormalization() chunk-wise expressed-gene scaling (memory-friendly); accepts external scale.factor; optional signed log-transform; returns object with assay <assay>_normalized
Gene-set retrieval getGeneSets() downloads now cached under tools::R_user_dir("escape", "cache"); graceful KEGG append; clearer error for non-human/mouse requests

Performance & dependency reductions

  • Replaced plyr, stringr, rlang usage with base-R helpers; these packages
    are now Suggests only.
  • Common color and label utilities (.colorizer(), .colorby(), .orderFunction())
    removed redundant tidyverse imports.
  • Internal matrices split/chunked with new .split_* helpers to cap memory
    during parallel scoring/normalization.

Bug fixes

  • Gradient mode in ridgeEnrichment() no longer produces grey fills when the
    chosen gene-set is mapped to color.by.
  • pcaEnrichment() axis labels correctly include variance contribution
    when display.factors = FALSE.
  • .grabDimRed() handles both Seurat v5 and <v5 slot structures; fixes missing
    eigen-values for SCE objects.
  • escape.matrix() respects min.size = NULL (no filtering) and handles
    zero-overlap gene-sets gracefully.
  • Global variable declarations consolidated – eliminates R CMD check NOTES
    regarding na.omit, value, etc.

Documentation

  • DESCRIPTION rewritten – heavy packages moved to Suggests; added explicit
    Config/reticulate for BiocParallel.
  • escape.gene.sets data object now fully documented with source, usage, and reference.