2.3.0
Changes
- Updated the bundled decoupler Agent Skill, and
decoupler-install-skillsnow supports multiple agent frameworks pp.filter_by_propnow defaults tomin_prop=0.1(was0.2) to match the value used in the vignettesds.msvisiumnow returns log-normalized data (sc.pp.normalize_total+sc.pp.log1p), with the log-normalized matrix also stored inadata.layers["norm"], instead of raw counts- Dropped support for Python 3.11; decoupler now requires Python 3.12 or newer
- Updated to the scverse cookiecutter template v0.8.0 (hash-pinned GitHub Actions checked by zizmor,
prekinstead ofpre-commit,sphinx-designinstead ofsphinx-tabs, shared Sphinx extensions fromscverse-misc)
Bugfixes
- Fixed
mt.oraselecting the bottomnvar - n_upfeatures instead of the topn_upones. Ranks are ascending, so the threshold is nownvar - n_up, restoring the behaviour ofdecoupler<2. With the defaultn_up(top 5%) this selected 95% of the features as observed, which also mademt.orafail withinvalid contingency tablewhenevernvar - n_upexceededn_bg(#346) - Fixed
n_bminmt.oraselecting the bottomn_bm - 1features instead ofn_bm mt.oranow validates thatn_upandn_bmdo not overlap and thatn_bgis large enough for the number of selected features, instead of failing inside the Fisher exact testmt.query_setnow raises an informative error whenn_bgis smaller than the number of features to test, instead of failing insidescipy.stats.fisher_exact- Fixed
mt.gseanot shuffling the permutation indices whenseed=0, which produced identical permutations and invalid p-values (#355) - Fixed
mt.waggrfolding its already two-sided permutation p-values as one-sided, which gave scores near 0 the smallest p-value (#373) - Fixed
pl.dotplotshowing an empty size legend when all dots have the same size (#370) - Fixed
ds.msvisiumfailing with HTTP 403 by fetching the spot metadata fromcells.ucsc.eduinstead of thecells-test.gi.ucsc.edumirror