Skip to content

v2.5.0#151

Merged
ncborcherding merged 77 commits intomasterfrom
dev
May 20, 2025
Merged

v2.5.0#151
ncborcherding merged 77 commits intomasterfrom
dev

Conversation

@ncborcherding
Copy link
Member

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.

@ncborcherding ncborcherding merged commit 6e6f0a0 into master May 20, 2025
2 checks passed
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.

1 participant