- docs: update Singularity and Apptainer commands to include --writable-tmpfs flag
- docs: allow collapsing ns/choice items in the docs for processes
- docker: update Dockerfile to include npm cache configuration to allow the pipeline to run on read-only file system
- tests: update SeuratPreparing config to use DoubletFinder for doublet detection
- ci: use latest actions
- deps: add r-clustree as a dependency in docker environment files
- deps: update dependencies in docker environment files (python3.10, R4.3)
- deps: bump biopipen to 0.29.0
- fix(tcr.TCRClusterStats): fix envs.shared_clusters.heatmap_meta being broken by envs.shared_clusters.sample_order (<li.yingmayo.edu>)
- choir(scrna.SeuratMap2Ref): present better error message when envs.use or values of envs.MapQuery.refdata not in reference (<li.yingmayo.edu>)
- fix(scrna.MarkersFinder): run PrepSCTFindMarkers when needed
- choir(scrna.SeuratClustering): use FindClusters to run for multiple resolutions
- choir(scrna.SeuratSubClustering): use FindClusters to run for multiple resolutions
- feat(scrna.SeuratClustering): add clustree plot (<li.yingmayo.edu>)
- feat(scrna.SeuratSubClustering): add clustree plot
- tests(scrna.SeuratClusterStats): add assertion for clustree plot generation
- deps: bump biopipen to 0.29.1
- fix(delim.SampleInfo): fix numbers not split up when each is specified.
- enh(delim.SampleInfo): make sizes of pie charts proportional to number of samples when each is specified
- enh(scrna.MarkersFinder): run PrepSCTFindMarkers when necessary before calling FindMarkers
- feat(scrna.SeuratPreparing): add option to cache Seurat object at different steps
- feat(scrna.SeuratPreparing): allow doubletfinder to run with a different number of cores
- chore(scrna.SeuratClustering): record PrepSCTFindMarkers command in sobjcommands
- tests(scrna.SeuratClusterStats): use less stringent p-value cutoff for DEG/MarkersFinder
- tests(scrna.SeuratPreparing): add doubletfinder in tests
- deps: bump biopipen to 0.29.2
- chore(scrna.SeuratClusterStats): use ident label length to adjust default height for feature plots
- fix(scrna.MetaMarkers): fix seurat object not updated when expanding cases and run `PrepSCTFindMarkers` when necessary before calling meta-markers
- fix(scrna.MarkersFinder): fix fetching command when composing the PrepSCTFindMarkers command
- fix(scrna_metabolic_landscape): handle null values in for loop in MetabolicFeatures and MetabolicFeaturesIntraSubset for report generation
- deps: bump biopipen to 0.30.0
- BREAKING(scrna): move clustree plots from SeuratClustering/SeuratSubClustering to SeuratClusterStats
- feat(scrna.CellTypeAnnotation): allow to merge/not to merge (envs.merge) the clusters with the same labels predicted
- feat(scrna.SeuratPreparing): add scDblFinder to detect doublets
- feat(scrna.SeuratMap2Ref): add envs.skip_if_normalized option to skip normalization if query is already normalized using the same - method as the reference
- refactor(tcr.Immunarch): source the files for Immunarch scripts for better debugging
- refactor(scnra.SeuratClustering): refactor the script for better debugging
- refactor(scnra.SeuratPreparing): refactor the script for better debugging
- fix(scrna): fix resolution expansion for SeuratClustering and SeuratSubClustering
- fix(scrna): Fix generating PrepSCTFindMarkers command when no previous commands present
- tests(scrna.ScFGSEA): fix unavailable urls to GMT files
- chore(scrna.SeuratMap2Ref): optimize memory usage
- chore(scrna.MetaMarkers): remove plugin_opts.poplog_max
- chore(tcr.CloneResidency): improve logging when handling subjects
- deps: bump biopipen to 0.31.3
- enh(scrna.SeuratMap2Ref): check if reference has SCTModel if SCTransform'ed (likely prepared by old Seurat)
- fix(tcr.CDR3AAPhyschem): use sequence from TRB chain only
- fix(tcr.CDR3AAPhyschem): fix when chain is not available
- fix(tcr.TCRClustering): fix for multi-chain TCRs, use TRB only if on_multi is false
- fix(tcr.TCRClustering): fix when chain is not available