feat(scrna.SeuratMap2Ref): mark class as deprecated, suggest using CellTypeAnnotation with mapquery
feat(scrna.CellTypeAnnotation): add layer parameter for assay analysis
1.5.0
fix(CellTypeAnnotation): update output filename from cluster2celltype to cell2celltype
test(scrna.ModuleScoreCalculator): add ctrl and nbin parameters to CC configuration
fix(scrna.CellTypeAnnotation): ensure tool environment variable is downcased
fix(scrna.CellTypeAnnotation): set default value of only_pos to False
test(protein): add LOCAL_ONLY variable to environment configuration
refactor: refactor cell type annotation tools and update dependencies and add tests
test(scrna.SeuratMap2Ref): update environment variables and enhance CellTypeAnnotation classes
chore(.gitignore): add logs directory to ignore list
fix(env_biopipen): update motifbreakr dependency source to pwwang
fix(env_biopipen): correct motifbreakr dependency source to bioconda
test(prep_data): set local_only flag for pbmc_multimodal download decorator
refactor(scrna.CellTypeAnnotation): move the tool implementations into biopipen.utils (#242)
1.4.1
fix(scrna.CellTypeAnnotation): prevent filtering of NA values in apply_marker_filters function
fix(scrna.HitypeWeightTrainer): rename 'only_pos' flag to 'pos_only' for consistency in parameter naming
fix(scrna.GarnettClassifierTrainer): add support for Unicode cell type names in garnett's marker-file parser to prevent syntax errors
fix(scrna.HitypeWeightTrainer): update references from envs.markers to in.markerfile for clarity and consistency in marker file handling
feat(scrna.CellTypeAnnotation-hitype): update RunHitype to support both annotation levels based on ident argument
feat(scrna.HitypeWeightTrainer): add process to train hitype marker weights from a Seurat object and a universal/native marker table (or markers found by hitype::find_markers() when none is given), outputting a weighted universal marker table; CellTypeAnnotation's hitype tool now uses the numeric weight column of universal marker tables as-is for scoring (requires hitype >= 0.0.6, kept instead of being dropped by the sctype-format conversion)
feat(scrna.GarnettClassifierTrainer): add process to train a garnett classifier from a Seurat object and marker genes (a garnett-native marker file or a universal marker table; negative markers become not expressed: rules), feeding CellTypeAnnotation's garnett tool
feat(scrna.CellTypeAnnotation): add support for garnett tool with new annotation function and tests
1.4.0
feat(scrna.CellTypeAnnotation): add support for multiple cell type annotation tools (scSorter, SCINA, SingleR, scHDeepInsight, GPTCelltype, cellassign, scBERT, CelliD)
feat(scrna.CellTypeAnnotation): support multiple annotation cases and add an assay parameter for analysis and case-specific usage
feat(scrna.CellTypeAnnotation): add support for saving cluster-to-cell-type mappings
feat(scrna.CellTypeAnnotation): allow specifying a Python executable in cellassign_args
feat(scrna.CellTypeAnnotation): redesign envs with per-tool namespaces and per-cell annotation outputs
envs.<tool> namespaces (envs.sctype, envs.hitype, ...) with flattened args; legacy flat envs (e.g. sctype_db, scina_args) are deprecated but still work with a warning
cell-level tools (scina, cellassign, cellid, scbert, schdeepinsight) produce per-cell annotations; with ident (or cases.X.ident) they also produce cluster-level mappings by majority vote
replace newcol/backup_col with anno_col (default CellType); annotations are always saved to a new column and the original ident column is never modified; set_ident (default True) controls the final Idents
add outprefix.cell2celltype.tsv with per-cell annotations (cell barcodes in the Cell column) alongside outprefix.cluster2celltype.tsv, including cluster size information
feat(scrna.CellTypeAnnotation): support a universal marker format for marker-based tools, with tissue/cancer/species filtering
feat(scrna.CellTypeAnnotation): replace GPTCelltype with LLMCelltype and add tests
feat(scrna.CellTypeAnnotation): add scagenttype tool (cluster-level, agentic LLM via the scagenttype python package) with the envs.scagenttype namespace (api, api_key, model, base_url, tissue, species, etc.); the Seurat object is converted to h5ad and each cluster is annotated by an AnnotationAgent run in a python wrapper
feat(scrna.MarkersFinder): add default assay handling with SCTAssay preparation check and a select_overall option for overall top markers in heatmap plots
feat(scrna.MarkersFinder): enhance logging for marker processing and enrichment analysis
feat(scrna.SeuratPreparing): enhance sample handling by using orig.ident or a uniformed value when the 'Sample' column is missing, and document memory trade-offs for cache and keep_contam_assay settings
feat(scrna.SeuratClusterStats): add handling for missing features in scale.data during feature processing (checked via GetAssayData, logged at debug level)
feat(scrna.AnnData2Seurat): add layer parameter to FeatureStatPlot for improved plotting
feat(scrna.CellCellCommunication): support multiple split_by columns in analysis
feat(scrna.CellCellCommunication): enhance output tables by inheriting factor levels from categorical columns
feat(scrna.Slingshot): add support for cell subsetting and splitting in Slingshot analysis
feat(scrna): add HdWGCNA class for weighted gene co-expression network analysis
feat(scrna, tcr): add ncores parameter for parallel processing in various scripts
feat(tcr.ScRepCombiningExpression): add group-based clonal proportion calculation, enhance clone size handling and add logging for both
feat(utils.misc, SampleInfo): add read_table and write_table helpers for DataFrame handling and use them in SampleInfo so factor levels can be saved and loaded
feat(misc.Glob2Dir): enhance file handling with a copy option and improved error messages
feat(bam): add Samplot integration for visualizing BAM files with the necessary environment setup
feat(bam): add Bedtools coverage and summary processing for BAM files (BedtoolsCoverageBam and BedtoolsCoverageBamSummary)
feat(pipen-process): add SKILL.md and evals.json for process creation guidelines and evaluation prompts
fix(scrna.CellTypeAnnotation): update identity column handling and enhance handling of missing clusters and special values in direct annotation
fix(scrna.CellTypeAnnotation): do not treat celltypist as cluster-based when over_clustering is not given
fix(scrna.CellTypeAnnotation): normalize tool names to lowercase in the switch statement
fix(scrna.CellTypeAnnotation): validate species, cancer and tissue in custom marker files (default cancer type 'Normal') and enforce tissue/cancer/species marker filters
fix(scrna.CellTypeAnnotation): improve the error message for a wrong scSorter package and ensure a default value for mc.cores in scsorter_args
fix(scrna.CellTypeAnnotation): add default NA columns for pmid and subtypes in scCATCH format
fix(scrna.CellTypeAnnotation): improve SCINA signature filtering against the expression matrix to prevent empty signatures and correct enrichment matrix orientation
fix(scrna.CellTypeAnnotation): optimize size factor calculation and update cellassign arguments for improved marker gene filtering
fix(scrna.MarkersFinder): adopt scplotter 0.8.0-2, update marker selection parameter to 'each' for consistency, use case$group_by in comparison_by, and improve marker processing and plotting logic
fix(scrna.Slingshot): handle varying lineage outputs for case splits
fix(misc.File2Proc): remove the unnecessary touch command before creating symbolic links
fix(misc.Plot): correct data reading logic for .rds files and ensure proper handling of read options
fix: correct variable name from 'chrome' to 'chrom' in Samplot.py
fix(bam.BedtoolsCoverageBamSummary): update envs extraction to handle keys with dashes as dots
refactor(scrna.SeuratPreparing): simplify metadata reading by removing the tryCatch block, and optimize memory usage by managing the Contaminated assay and releasing resources earlier
refactor(scrna.ModuleScoreCalculator): use biopipen.utils::RunModuleScoring to support multiple tools
docs(scrna.CellTypeAnnotation): update documentation for output file naming and clarify annotation methods with tool categories
docs(scrna.SeuratPreparing): clarify ScaleData documentation for feature scaling options
docs: update logo (including size for better visibility), favicon and README (badges, usage examples) for improved branding
docs: update markdown extensions for improved documentation formatting
chore(scrna.MarkersFinder): set default plot type to heatmap_log2fc for marker plots
chore(scrna.SeuratPreparing): remove unnecessary SCTransform parameters (missing features in scale.data are handled downstream)
chore(scrna): enhance cache log messages to include cache paths for better traceability
chore(deps): bump pipen to 1.2.0, xqute to 2.2.0, pipen-report to 1.2.4, liquidpy to 0.10.0, python-simpleconf to 0.9.5, markdown to 3.10.3 and platformdirs to 4.11.1; constrain mkdocs to <2
chore(deps): add samplot (BAM visualization) and filelock (file handling) dependencies
test(scrna.CellTypeAnnotation): move tool-specific tests to the dedicated test_scrna/CellTypeAnnotation directory (including CelliD)
test(scrna.MarkersFinder): enhance ClusterMarkers heatmap configuration with additional parameters
test(scrna.Seurat): enhance SCTransform configuration and add new heatmap options for ClusterMarkers
test(scrna.SeuratClusterStats): remove the scale.data feature check for test stability
test(scrna.ScFGSEAEach): use if_else instead of ifelse in mutaters to keep factor levels
test: remove LOCAL_ONLY variable from run.env for the samplot test
ci: update docker-test-deps to include output for changed files and update setup-miniconda action to version 4
1.3.14
feat(scrna.CellTypeAnnotation): add support for cell-level annotations
feat(tcr.ScRepCombiningExpression): add support for cell ID transformation functions
feat(misc.File2Proc): enhance File2Proc to support file copying or symlinking based on envs.copy flag
feat(scrna.MQuadVcf): add MQuadVcf process for clonal substructure discovery using mitochondrial variants in VCF files
fix(vcf.BcftoolsView): correct warning message formatting for samples_file handling
fix(scrna.CellTypeAnnotation): ensure ident is correctly set as character type for cell type columns
style(test.bed): format code for better readability and consistency
chore: bump pipen to 1.1.18
1.3.13
fix(scrna.CellCellCommunication): add monkey-patch for anndata.AnnData to handle dtype keyword
feat(scrna.CellCellCommunication): enhance case handling with additional split options
1.3.12
feat(scrna.CellCellCommunication): add support for multiple cases in CellCellCommunication analysis
fix(scrna.SeuratMap2Ref): make .Rds legal as reference file
1.3.13
fix(scrna.CellCellCommunication): add monkey-patch for anndata.AnnData to handle dtype keyword
feat(scrna.CellCellCommunication): enhance case handling with additional split options
1.3.12
feat(scrna.CellCellCommunication): add support for multiple cases in CellCellCommunication analysis
fix(scrna.SeuratMap2Ref): make .Rds legal as reference file
1.3.11
feat(scrna.Slingshot): add support for multiple cases in Slingshot analysis
1.3.10
feat(scrna.Slingshot): enhance dims parameter handling for Slingshot analysis
feat(scrna.CellCellCommunicationPlots): improve default ligand and receptor expression columns determination
1.3.9
feat(scrna.CellCellCommunicationPlots): add ligand and receptor expression parameters for linked heatmap
chore: use uniformed access to plott data by plotthis v0.12.2
fix(ci): prevent docker workflow from triggering 3x on release
test: add PipenShowSessionInfoAfterFail plugin to display session info on test failure
test(scrna.ModuleScoreCalculator): add nbin parameter to SomeModule configuration
test(gene.GeneNameConversion): update _testing_proc to accept pipen as parameter for better flexibility
chore(deps): bump pipen-runinfo to 1.1.4
1.3.8
ci(docker): update workflow trigger to include release events
feat(scrna.SeuratPreparing): add ambient RNA removal and decontX arguments
chore: bump pipen to v1.1.16 (xqute to v2.1.0, which introduces timeout as scheduler_opts)
ci: update CACHE_NUMBER for conda environment to force updates
feat(scrna.SeuratPreparing): added scCDC contamination correction and contam QC plots
chore(scrna.SeuratClusterStats): enhance descriptions of plots
chore(deps): update versions for copier, pipen-report, and pipen-verbose
docs(scrna): update mutater documentation to include clone selectors
ci: update cache number for conda environments to force updates
0.34.2
feat(scrna): add PseudoBulkDEG process for differential gene expression analysis
fix(test.Seurat): update pipeline function to set starts for PrepareSeurat
chore(scrna.ScFGSEA): rename allpathway_plots to alleach_plots
chore(scrna/tcr): update parameter naming for consistency
chore(scrna.TopExpressingGenes): use common report template
chore(test): update pipeline function to remove report enabling
test(scrna): merge tests for Seurat processes to avoid repeatedly load pbmc3k dataset
test(scrna): move map2ref tests out of tests/scrna/Seurat for being tested locally only
test(scrna): add set.seed to PrepareSeurat script
ci(docker): update Dockerfiles to use dynamic REF_NAME argument
ci: update build condition and add caching for test intermediates
0.34.1
fix(tcr.ClonalStats): update envs assignment to handle todot parameter
chore(deps): bump up pipen to 0.17.8
fix(SeuratClusterStats): fix when features are given as a dict (used in heatmap)
feat(MarkersFinder): add enrichment plot across all subsets by each or all ident.1 in group.by
feat(ScFGSEA): add support for all pathway plots for all subsets by each
chore(TopExpressingGenes): adjust plot height for bar plots
docs(SeuratPreparing): update docs for support loading loom files
0.34.0
New Features
feat(scrna): add ScVelo analysis for RNA velocity and Slingshot for trajectory inference
feat(tcr): add ScRepCombiningExpression for combining TCR/BCR and expression data, and ScRepLoading for multiple TCR/BCR data formats
feat(scrna): add ScRepLoading with support for multiple formats and improved logging
feat(plot): add Plot class and associated R script for data visualization
feat(bam): add SamtoolsView for BAM file processing
feat(utils): implement Reporter class for generating JSON reports for processes
feat(scrna): support qs2 format for input and output in various processes
feat(scrna.SeuratPreparing): add mutaters parameter for metadata mutation
feat(scrna.MarkersFinder): enhance parameter handling and marker processing
feat: add common Svelte report template for job reporting using JSON reports
Enhancements
enh(bam.CNAClinic): change envs.binsize to bp instead of kbp
enh(cnv): replace ggplot2 with plotthis for improved plotting in AneuploidyScoreSummary and TMADScoreSummary
enh(scrna): adopt biopipen.utils.R v0.1.0 across multiple processes
enh(scrna_metabolic_landscape): improve flexibility and stability of metabolic landscape analysis
enh(scrna.ExprImputation): improve error handling and threshold handling for cell imputation
enh(tcr.ClonalStats): support qs2 format for output
Bug Fixes
fix(cnv.TMADScore): correct output filename
fix(bam): fix report template and argument handling in CNVpytor, CNAClinic, and ControlFREEC
fix(cnv.AneuploidyScore): replace ggplot with plotthis and add error handling for chromosome detection
fix(cnv.AneuploidyScoreSummary): rename 'rows' to 'rows_by' for clarity in heatmap function
fix(delim.SampleInfo): fix plot functions being registered twice to gglogger and ensure reporter saves to correct directory
fix(scrna): replace readRDS/saveRDS with biopipen.utils functions for consistency across processes
fix(scrna.SeuratClusterStats): improve data handling and plot saving functionality
Refactoring
refactor(scrna.CellCellCommunicationPlots): use scplotter::CCCPlot
refactor(tcr.CDR3AAPhyschem): adopt input from ScRepCombiningExpression
refactor: remove utility R scripts and use biopipen.utils.R package
Development & Infrastructure
chore(deps): update dependencies and specify versions for bioconductor packages
chore(docker): refactor Dockerfiles to streamline base image usage and dependency installation
chore: use filter 'r' for R input/output paths instead of 'quote' in scripts
test: add comprehensive tests for bam, cnv, and scrna processes (local tests only for some)
test: add docker-test job and Dockerfile for test image building
ci: update environment cache and reference data cache
0.33.1
fix(delim.SampleInfo): fix when plot_type ending with "plot"
feat(scrna.LoomTo10X): add LoomTo10X to convert loom format of scRNA-seq data to 10X format
ci: update conditions for build and deploy jobs based on event type
0.33.0
chore(dependencies): update pipen (v0.17) and related package versions in pyproject.toml
fix: update all template filters in script to adopt pipen 0.17, which passes in.file etc as a MountedPath
ci: add caching for conda environments to improve workflow efficiency
test: improve test output grouping for better readability
chore: add descriptive summaries for fgsea and enrichr results (#158)
chore(snp.PlinkFromVcf): enhance type annotations and set default for keep_allele_order
feat(snp.Plink2GTMat): enhance genotype coding options and improve documentation
feat(stats.ChowTest): separate groups in output and add pvalues for the coefficient for the subregressions
fix(utils/misc.py): enhance error messages in command execution for better debugging
fix(web.Download): enhance output filename generation by adding URL decoding and improved slugification
fix(cellranger.CellRangerCount): fix inconsistency between in.id and in.fastqs
chore(snp.PlinkFilter): remove unnecessary docstring from PlinkFilter script
fix(cellranger.CellRangerSummary): use plotthis and biopipen.utils.R for plotting, logging and report content generation
test(cellranger): add tests for CellRangerCount and CellRangerSummary with data download setup
chore: comment out dev-dependencies section in pyproject.toml
feat(scrna.CellCellCommunication): add subset and split_by options for CellCellCommunication and update conversion logic
0.32.3
chore: add descriptive summaries for fgsea and enrichr results
0.32.2
chore: update dependencies to latest versions
feat: add PDF output option for SampleInfo plots
feat: add PDF output options for violin and scatter plots in Seurat preparation scripts
feat: add PDF output options for volcano, dotplot, venn, and upset plots; update filters for type hints
feat: add PDF output option for Enrichr plots in TopExpressingGenes script
feat: add PDF output options for UMAP plots in SeuratMap2Ref script; update image handling in misc.liq
feat: add PDF output options for cluster size distribution, shared clusters, and sample diversity plots; update plotting functions to handle multiple output formats
feat: add PDF output options for various Immunarch scripts; enhance reporting with downloadable PDF files
feat: add PDF output options for cluster size distribution, dimension plots, and feature plots; enhance reporting with downloadable PDF files
feat: add PDF output options for radar and bar plots; enhance reporting with downloadable PDF files
feat: add PDF output options for CloneResidency script; enhance reporting with downloadable PDF files
feat: add PDF output options for GSEA table and enrichment plots; enhance reporting with downloadable PDF files
feat: add PDF output options for pie charts, heatmaps, Venn plots, and UpSet plots; enhance reporting with downloadable PDF files
feat: add PDF output options for Enrichr plots; enhance reporting with downloadable PDF files
feat: add PDF output options for estimated coefficients and distribution plots; enhance reporting with downloadable PDF files
chore: add gcc to cnvkit pipeline docker deps
0.32.1
fix(scrna.ScFGSEA): fix case gmtfile not working
fix(TopExpressingGenes): add InlineNotification component to TopExpressingGenes.svelte
feat(scrna.SeuratPreparing): add envs.species so that percent.mt, percent.ribo, percent.hb and percent.plat can be correctly calculated for mouse
fix(scrna.SeuratClusterStats): fix kind not being added to the figure file name for plots of features
0.32.0
deps: update pipen-runinfo dependency to version 0.8.1
feat(scrna): add CellCellCommunication and CellCellCommunicationPlots
fix(scrna.SeuratMap2Ref): fix report and add stats to report
fix(utils.single_cell.R): fix categorical data when converting seurat to anndata format
refactor(scrna.Seurat2AnnData): abstract seurat_to_anndata() for reuse
enh(tcr.TCRClustering): make GIANA compatible with latest BioPython (v1.84)
fix(tcr.TCRClstering): fix clusTCR error due to scipy update (v1.14)
0.31.7
deps: bump pipen-args to 0.16
chore: update pyright configuration to include biopipen/**/*.py
feat(bam): add BamSubsetByBed process for subsetting bam file by regions in a bed file
feat(bed): add BedtoolsMakeWindows process for generating windows from a BED file or genome size file
0.31.6
deps: pin the channels of conda dependencies for tests
feat(vcf): adopt truvari v4+ for related processes
feat(regulatory): add VariantMotifPlot to plot motif and surrounding sequences with mutations
refactor(regulatory.MotifAffinityTest): optimize code base
ci: add verbosal output for tests
0.31.5
deps: update pipen to version 0.15.3 and xqute to version 0.5.2
feat(bam): add BamSampling process for sampling a fraction of reads from a bam file
feat(protein): add the protein module and Prodigy and ProdigySummary to calculate the binding affinity of a complex structure
ci: do not print verbose logs for tests
chore(bam.BamMerge): use logger instead of print for logging
0.31.4
deps: bump pipen-report to 0.20.1 (pipen to 0.15.2)
fix(plot.VennDiagram): update default devpars and fix issues with computed data
fix(scrna.SeuratMap2Ref): fix identifying the normalization method of reference
0.31.3
test: fix test not failing when tests failed
test: fix gene name conversion tests due to external API change
fix(tcr.CDR3AAPhyschem): fix when chain is not available
fix(tcr.TCRClustering): fix when chain is not available
0.31.2
fix(tcr.CDR3AAPhyschem): use sequence from TRB chain only
fix(tcr.TCRClustering): fix for multi-chain TCRs, use TRB only if on_multi is false
0.31.1
enh(scrna.SeuratMap2Ref): check if reference has SCTModel if SCTransform'ed (likely prepared by old Seurat)
0.31.0
deps: bump pipen to 0.15.0
0.30.0
scrna/tcr
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(cellranger.CellRangerCount): fix falsy envs.create_bam not working for cellranger v7
fix(scrna): Fix generating PrepSCTFindMarkers command when no previous commands present
tests(scrna.ScFGSEA): fix unavailable urls to GMT files
feat(scrna.SeuratMap2Ref): allow splitting query object for mapping (pwwang/immunopipe#61)
deps: update pipen-board to version 0.15.1
0.27.7
fix(utils.gsea): fix gsea table not being printed for runFGSEA
fix(core.filters): fix slugified pathway plot file name in report
fix(scrna_metabolic_landscape): fix mutaters not working
fix(scrna_metabolic_landscape.MetabolicFeatures/MetabolicFeaturesIntraSubset): skip groups with less than 5 cells in do_one_group and save a warning file under the case
fix(utils.gsea): do not switch 1st and 2nd columns when 2nd column is numeric for localizeGmtfile
chore: fix typo in class name ExprImpution to ExprImputation
choir(tests): remove KEGG_metabolism.gmt for prep_reference.py
tests(scrna_metabolic_landscape): fix tests
0.27.6
fix(scrna_metabolic_landscape.MetabolicFeatures): fix return value of groups with less than 5 cells in do_one_group
choir(utils.gsea): avoid printing NULL for runFGSEA
tests: use the return value of pipen.run() to test the success
0.27.5
fix(scrna.Subset10X/SeuratTo10X): correct the paths to the scripts
feat(testing): allow to enable report for testing pipelines
feat(scrna.SeuratPreparing): add envs.cell_qc_per_sample to filter cells before merging instead after
test: add tests to scrna.SeuratTo10X and scrna.SeuratPreparing
fix(scrna.SeuratClusterStats): fix color palette for ridge plots
0.27.4
feat: add plot.ROC
choir(delim.SampleInfo): add alpha to the colors of the plots using biopipen color pallete
feat: add snp.MatrixEQTL
docs(tcr/scrna/scrna_metabolic_landscape): update links of images in docs
0.27.3
deps: temporary fix copier breaks with pyyaml-include v2 (copier-org/copier#1568)
deps: bump pipen-poplog to 0.1.2 (quick fix for populating logs when job fails)
choir(scrna.ScFGSEA): Skip cases when no cells found (pwwang/immunopipe#50)
choir(scrna.MarkersFinder): Skip cases when no cells found (pwwang/immunopipe#50)
choir(scrna.MetaMarkers): Skip cases when no cells found (pwwang/immunopipe#50)
feat(scrna.SeuratPreparing): support DoubletFinder
0.27.2
fix(utils.misc.py): inherit envs when env passed for run_command()
fix(scrna.RadarPlots): fix mutaters not working
feat(tcr.CloneResidency): support envs.upset_ymax to set the max value of y axis in upset bar plot.
feat(tcr.TCRDock): add process
choir(utils.misc.py): update level to DEBUG for python logger (leaving the filtering to pipen-poplog)
choir(stats.DiffCoexpr): change log_warn to debug for some verbosal logging messages
refactor(snp.PlinkSimulation): make the configuration files as input so multiple simulations could run in parallel easily.
0.27.1
BREAKING(scrna.SeuratMap2Ref): rename envs.name to envs.ident so envs.MapQuery.refdata is not required anymore. It will be inferred from envs.ident and envs.use.
0.27.0
deps: bump pipen to 0.14.5
deps: bump datar to 0.15.6
depr(scrna.MarkersFinder): remove use_presto as it's used by Seurat v5 by default
enh(tcr.CloneResidency): support log scale for y axis of upset bar plots
enh(scrna.SeuratClusterStats): allow to rotate labels in circos plot (pwwang/immunopipe#48)
enh(scrna.SeuratClusterStats): use pal_biopipen for ident colors in circos plot
fix(scrna.CellsDistribution): fix the row order of the heatmaps
fix(scrna.SeuratClusterStats): fix when split-by is specified
feat(scrna.CellsDistribution): support prefix_each
feat(scrna.MarkersFinder): allow set max number of genes to plot in dotplots
feat(scrna.MarkersFinder): support setting detailed arguments for overlapping plots
feat(scrna.MarkersFinder): support prefix_group
feat(scrna.ScFGSEA): support prefix_each
feat(scrna.RadarPlots): support prefix_each and subset
choir(scrna.SeuratClusterStats): use logger instead of print for log messages
choir(tcr.TCRClustering): print session info for clustcr script
choir(scrna.MarkersFinder): flatten toc when no section and no ident-1 specified
scrna.SeuratPreparing: Allow to filter genes directly
scrna.SeuratClustering: Add options to limit string and numeric output length to have more exact caching signature
scrna.SeuratClustering: Set default random.seed to 8525 for FindClusters
scrna.SeuratClustering: Allow multiple resolutions for FindClusters
scrna.SeuratClustering: Print table of idents in log for found clusters
scrna.SeuratClustering: Move integration procedues to SeuratPreparing and do only clustering
scrna.SeuratClustering: Update tests
scrna.SeuratClustering: Make the cluster labels start with "c1" instead of "0"
scrna.SeuratClustering: Default reduction of RunUMAP and FindNeighbors to pca
scrna.SeuratClustering: Fix test
scrna.SeuratClustering: Print less verbosal log
scrna.SeuratClusterStats: Add ngenes to plot the number of genes expressed
scrna.SeuratClusterStats: Add barplot for features and allow aggregation of features
scrna.SeuratClusterStats: Fix matching kind for plots of features
scrna.SeuratClusterStats: Use new umap for plotting feature and dimplots for sub-clustering
scrna.SeuratClusterStats: Use default assay for plotting of number of genes expressed
scrna.SeuratClusterStats: Add envs.mutaters to mutate meta data
scrna.SeuratClusterStats: Add histograms to plot number of cells against another variable
scrna.SeuratClusterStats: Fix reduction for subclustering for dimplots
scrna.SeuratClusterStats: Subset seurat object for featureplots when ident is subclusters
scrna.SeuratClusterStats: Fix argument layer not excluded for heatmaps in features
scrna.SeuratClusterStats: Add frac_ofall and transpose for stats to calculate fraction within group or against all cells, and transpose ident and group, respectively
scrna.ModuleScoreCalculator: Fix features not being passed to AddModuleScore as a list
scrna.ModuleScoreCalculator: Support calculating diffusion map components
scrna.SeuratMap2Ref: Rename envs.alias to `envs.name
scrna.SeuratMap2Ref: Set default value of envs.MappingScore.ndim to 30
scrna.SeuratMap2Ref: Add envs.ncores for parallelization