Merged
Conversation
Collaborator
FerriolCalvet
commented
Oct 5, 2025
- add plotting selection, saturation, qc
- add tests init
- update some input definitions, with new parameters
- add Nanoseq masks
* remove all molecules definition - we force the input to be provided with the AM fields in the VCF - not tested * update dNdS variables definition * add definition of run modes as profiles - not tested * update domain information definition * remove unused profiles * fix bug in vcf2maf - define domains file in structural configs * update oncodrive3d container * update domain BEDfile generation - new mandatory param domains_file - update docs for domain and for features - expand regions handling with click * remove reference to all_duplex_counts - in case AM not available we define the same as duplex
* add first version of check contamination step - missing plotting outputs - missing summary table of contamination comparisons * store figures and tsv properly * fix copilot suggestion
* plotting wishlist - subworkflow definition - shortlisting plots to add missing: - nf scripts for the modules - python scripts for the plots * add raw version of supplementary figure plotting * update omega plotting * plotting update: omega & needles & stacked * update plotting cohort plots working * clean code list inputs * saturation data loading working * gene saturation all tracks working with TP53 * tested additional complementary plots missing: - handle sample information input files - handle reference datasets - handle multiple genes * update gene saturation inputs from pipeline - not tested - pending to decide creation of unique_splice_sites * Squashed commit of the following: commit 10c12aa Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Thu Jul 24 12:35:40 2025 +0200 update gnomAD threshold to 0.001 - ignore errors in omega plot commit 31e741e Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Tue Jul 22 18:34:11 2025 +0200 update description and fix broken link commit 7b0fd9b Merge: 72dc4d9 cb18adc Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Sun Jul 20 22:34:46 2025 +0200 Merge pull request #315 from bbglab/dev commit cb18adc Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Sat Jul 19 12:40:39 2025 +0200 fix bug in mut density & update omega container commit 1b4a52d Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Tue Jul 15 15:52:07 2025 +0200 fix broken path for test_real commit db6d640 Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Fri Jul 11 15:50:45 2025 +0200 Allow gene selection in consensus (#316) * update consensus building to filter genes - add consensus compliance param - add list of genes param - NOT tested * tested gene filter implementation - consensus panels implemented in polars - allowing subset for specific genes commit b92c2b9 Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Thu Jul 10 23:56:47 2025 +0200 add metro map commit 11fb1c5 Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Thu Jul 10 08:25:31 2025 +0200 update description in main README commit 628f282 Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Mon Jul 7 19:14:21 2025 +0200 Add more complete docs (#306) * first doc update * update in usage documentation - list params - list structural parameters and files * backbone of output docs * update usage description with custom sets of mutations * fix headers * docs: Update usage with vep information * update output description * update order of usage information * update distribution of information in the docs * fix typo in docs/output.md * fix markdown linting * remove unnecessary validation params from config - REQUIRES TESTING * remove remaining references to download VEP cache * update dag format to mmd * update in usage * update documentation of file formatting and some params * add examples in file formatting docs * apply review comments * remove Nextflow parameters section * minor fix in nextflow.config --------- Co-authored-by: Miquel L. Grau <miguel.grau@irbbarcelona.org> commit 72dc4d9 Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Mon Jul 7 15:53:47 2025 +0200 temporary LICENSE definition commit 14c5246 Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Fri Jun 27 11:19:45 2025 +0200 fix bug in panel_annotation (#313) reimplement it with click solved the problem - only_canonical boolean working - not tested commit 764782a Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Thu Jun 26 23:23:05 2025 +0200 Update mutation rate to mutation density (#307) * rename mutrate to mut density - reimplement with click - partial renaming - simplification of sample_name logic * full update of mutation rate to mutation density * define other_sample_SNP based on all VAF * update mutation density functions - clean code - add explanation on mutation density * apply review changes commit aae8f0b Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Thu Jun 26 10:49:00 2025 +0200 Ensure POSTPROCESSVEPPANEL in output (#311) * fix relative mutabilities output * explicitly define postprocessveppanel outdir * force outputting postprocesspanel * update storing fixes commit dd25b9b Merge: 05c80ee 26d5d9b Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Wed Jun 4 23:09:29 2025 +0200 Merge pull request #303 from bbglab/dev First pre-release merge commit 05c80ee Merge: ea9a301 e06218a Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Tue Apr 29 10:30:23 2025 +0200 Merge pull request #289 from bbglab/tmp-dev First release commit e06218a Merge: 7559d7f ea9a301 Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Tue Apr 29 10:11:05 2025 +0200 Merge branch 'main' into tmp-dev commit ea9a301 Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Thu Jul 25 16:05:10 2024 +0200 update schema * update stacked plot needles * minor fixes after merge - NOT WORKING * update linewidth and size - add mutation types * fix plot saturation within pipeline - collect sitecomparisons - remove reference to ddg. requires external - fix input unique to keep header and minimal information - tested and works * fix o3d logs output * plot multiple genes, not only TP53 * apply review suggestions - temporary solution to domain information loading * update domain definition and plotting - subset domains to in_panel ones - update domain name definition - plotting modules works - missing autoexons plot - update signatures output * - separate generation of depth per exon - add general error handling to all plotting modules - generate exons bedfile within panel * batch update of exon definitions - use correct exons definition - update custom bedfile name - not tested * fix exons panel generation * add error handling to omega plot
* Mutability-adjusted mutation density calculation * Fix: module out variable not matching subworkflow * Several small fixes: bug in tuple variable * Permisson error in python script * Fix unnecessary output argument in python script * Fix typo in "depths_df" variable name * Fix sample name variable in python script * Missing sample_name in correction factor function * Adjust output filename in script for consistency * Keep the index (genes) when writing the output * New logfoldchange plots as an output * Fix syntax typo in python script * Fix import * Fix import seaborn * integration of new mutation density to deepCSA (#339) * connect mut_density with pipeline's utils * apply changes from PR #338 * fix bug introduced in reviewing * add samplename to output files * add name to index for storing * keep current directory structure of outputs - mutdensityadj contains new mutation density results -mutdensity keeps having the old computation --------- Co-authored-by: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Co-authored-by: FerriolCalvet <ferriolcalvet@gmail.com>
* first pas update of sigrofiler DBS and ID signatures. * update sigprofiler matrix generator - clean unused files - reorder module imports - not tested
* samples with no mutations are not analyzed individually - same happens with groups that have less than a the chosen number of muts - set minimum to 0 - NOT tested * fix typo in parameter name
* parse position in read and add filter for repetitive and fixed position - test pending * reimplement input handling with click - update python and nf scripts * fix test_real profile * minor update to reporting of repetitive mapping variants
* update definition of input for grouping samples - remove confusing logic of JSON like string - separate it in two steps * test updated feature group input information
* minor update in plot selection * partial update in plot depths * compile all omegas into a single file * add secondary y axis in needle plot with proportion - not tested * update saturation plots to include domain selection summary * fix bug in heatmap * really fix the bug and add clustermap * update plotting maf with click * working version of explore variability * fix bug in plot saturation - add sample loading function to utils
- neutral update since nothing changed in activation of params
- not working since container is missing - also updated annotatedepth container for testing
* add mutdensities qc * test python script works * updated workflow mutdensitiesqc * fix subworkflow path issue * updated container * update deepcsa core container in all modules --------- Co-authored-by: FerriolCalvet <ferriolcalvet@gmail.com> Co-authored-by: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com>
* lint all configs * update LICENSE to AGPLv3 modified * add gnomad freq threshold definition * update INDEL size from 100 to 50 * update LICENSE to normal GPL3
…ups (#366) * init plotting groups * needle plots and selection working for groups - add param to plot only cohort or all custom groups - update groups.json generation missing: - pass site comparison plots & test saturation * fix saturation plots working for groups - fix domain selection plotting as png not pdf
* fix remove creation of empty MAFs * address #337
* add globalloc synonymous numbers qc - added all the plots and correlation computations of obs. vs estimated numbers of synonymous mutations * update omega syn qc - working version with plots and tsv outputs
* fix bug in redefinition of exons and domains - now if a subgenic element is partially covered, it is still included in the expanded file, before it was not Missing: -documentation * add docs * fix bug in end coordinate when matching * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* update hdp_wrapper container * add ignore strategy to compare signatures step * add tmp fixes configs
* feature: add nanoseq masks to FILTERS This commit adds the posibility of using nanoseq masks in deepCSA. New parameters are added both in nextflow_schema and nextflow config. No major other changes are made as nanoseq masks use the same script as FILTEREXONS and FILTERPANELS. * feature: add click to handle inputs These changes are copied from branch input-with-click, more specifically from commit 0af42a9. * refactor: add positive parameter When using filterbed.py, if using positive you filter positions in the bed file and when using negative you filter positions not in the bed file. This commit adjusts the parameters in nanoseq filters to adjust to this behaviour. * refactor: implement with click and add positive parameter The click implementation is usefull to add the --positive flag for those bed files with the positive = true parameter in the modules.conf * refactor: import nanoseq files in subworkflow This commits moves the import from the main workflow to the MUTATION_PREPROCESSING subworkflow. This is cleaner and easier to maintain. * docs: add nanoseq masks paths * refactor: remove debug printing * refactor: move publish dir instructions Improve clarity. * refactor: move nanoseq masks paths to cluster configuration * refactor: simplify definitions and avoid non-intended output To avoid non-intended output, we define filtername empty if not defined instead of "covered". * refactor: unify filters into one and remove non canonical chromosomes The functions negative_filter_panel_regions and positive_filter_panel_regions have been unified into one function: filter_panel. The logic is exactly the same. A new function is created to remove non canonical chromosomes in the positions dataframe (from the bed file). Non canonical chromosomes were giving problems when merging with sample_maf as "chr" was not detected. * refactor: apply nanoseq masks individually with cleaner channel management The if statement for the nanoseq masks has been divided to handle them individually, in case only one is provided. Also, assigning a value to a channel twive is avoided by adding "else" statements. * refactor: add one liner to create filtered maf panels variable Taking into account if nanoseq masks were applied. * refactor: add one liner to create filtered maf panels variable Taking into account if nanoseq masks were applied. * minor update in mut preprocessing style - fix paths in test_real - update order of variables in schema --------- Co-authored-by: FerriolCalvet <ferriolcalvet@gmail.com>
* first definition of tests - to be tested * add first semi-working version of pipeline level tests * add first module testing for EXPANDREGIONS - testing focussed in PPM1D gene - confirm preferred behaviour for this process if omega_withingene is true, but no option of subgenic element definition is activated it fails - stub mode set up pending * tests working for EXPANDREGIONS * update snapshot * minor python fixes * changes after PR review
- add also gnomAD_SNP - add documentation on Nanoseq masks
- add adjusted mutation density explanation - rename subworkflow directory
Contributor
There was a problem hiding this comment.
Pull Request Overview
This PR prepares the v1.0.0 release by adding plotting summaries/QC, signature matrix generation, NanoSeq masks, parameter schema updates, and initial nf-test coverage.
- Add cohort/group plotting subworkflows (summary, saturation, inter-individual variability) and QC plots for mutation densities and omega global/local sanity checks
- Introduce NanoSeq SNP/noise masks and new input/config parameters; rework several modules’ CLIs and containers to 0.0.2-alpha
- Add initial nf-test tests and config; wire new adjusted mutational density and signatures (MAF→VCF → SigProfiler MatrixGenerator)
Reviewed Changes
Copilot reviewed 117 out of 156 changed files in this pull request and generated 21 comments.
Show a summary per file
| File | Description |
|---|---|
| workflows/tests/deepcsa.nf.test | Adds first pipeline-level nf-test (minimal run) |
| workflows/deepcsa.nf | Wires new subworkflows (plotting summary/QC), adjusted mutdensity, signatures VCF/matrix, and NanoSeq integration |
| tests/nextflow.config | Test profile/config for nf-test (params, singularity, executor) |
| test_data/modules/PPM1D_exons.bed4.bed | Test fixtures for EXPAND_REGIONS |
| test_data/modules/PPM1D_domains.bed4.bed | Test fixtures for EXPAND_REGIONS |
| subworkflows/local/signatures_hdp/main.nf | Hdp extraction subworkflow cleanup |
| subworkflows/local/signatures/main.nf | Integration of HDP extraction path |
| subworkflows/local/plottingsummary/main.nf | New summary plotting subworkflow (selection, saturation, variability) |
| subworkflows/local/plotting_qc/main.nf | New QC plotting subworkflow (mutdensity QC) |
| subworkflows/local/omega/main.nf | Adds global/local omega evaluation, site comparison wiring, and all-results collection |
| subworkflows/local/mutationpreprocessing/main.nf | Adds NanoSeq masks, contamination check, grouped output, and improved plotting selection |
| subworkflows/local/mutatedcells/vaf/main.nf | Clean up conditional |
| subworkflows/local/dnds/main.nf | Moves covariates/refs loading inside subworkflow |
| subworkflows/local/createpanels/main.nf | Domain annotation input now comes from params.domains_file; emits domains info TSV |
| subworkflows/local/adjmutdensity/main.nf | New adjusted mutational density subworkflow |
| nf-test.config | nf-test harness configuration |
| nextflow_schema.json | Adds/renames parameters (groups, domains_file, omega_subgenic_bedfile, plot_only_allsamples, NanoSeq masks, gnomad_af_threshold, etc.) |
| nextflow.config | Defaults for new params, profiles refactor, tmp quick fixes include |
| modules/local/writemaf/main.nf | Bump core container to 0.0.2-alpha |
| modules/local/vcf2maf/main.nf | Switch to new CLI (args) |
| modules/local/table2groups/main.nf | New CLI options (unique identifier, groups list); container bump |
| modules/local/subsetmaf/main.nf | Optional output; min_mutations support |
| modules/local/sitesfrompositions/main.nf | Container bump |
| modules/local/signatures/sigprofiler/matrixgenerator/main.nf | New module for SigProfiler MatrixGenerator |
| modules/local/signatures/sigprofiler/extractor/main.nf | Not in use (documented); placeholder |
| modules/local/signatures/musical/main.nf | Not in use (documented); placeholder |
| modules/local/signatures/msighdp/main.nf | Not in use (documented); minor cleanups |
| modules/local/signatures/hdp/process_results/main.nf | Switch container to hdp_wrapper |
| modules/local/signatures/hdp/prepareinput/main.nf | Switch container to hdp_wrapper |
| modules/local/signatures/hdp/normalize_sigs/main.nf | Switch container to hdp_wrapper |
| modules/local/signatures/hdp/compare_sigs/main.nf | Switch container to hdp_wrapper |
| modules/local/sig_matrix_concat/main.nf | Container bump |
| modules/local/select_mutdensity/main.nf | Container bump |
| modules/local/runregressions/main.nf | Container bump |
| modules/local/process_annotation/panelcustom/main.nf | Container bump |
| modules/local/process_annotation/panel/main.nf | Container bump |
| modules/local/process_annotation/mutations_custom/main.nf | Container bump |
| modules/local/process_annotation/mutations/main.nf | Update CLI to add gnomAD threshold and flags; container bump |
| modules/local/process_annotation/domain/main.nf | Emit domains TSV; container bump |
| modules/local/plot/selection_metrics/main.nf | Update CLI usage/outdir; container bump |
| modules/local/plot/saturation/main.nf | New saturation plot process |
| modules/local/plot/qc/mutation_densities/main.nf | New mutdensity QC plot process |
| modules/local/plot/qc/globalloc_synonymous/main.nf | New omega syn QC plot process |
| modules/local/plot/omega/main.nf | Update CLI/outdir; container bump |
| modules/local/plot/needles/main.nf | Update CLI/outdir; container bump |
| modules/local/plot/mutations_summary/main.nf | Update CLI and JSON filters; container bump |
| modules/local/plot/interindividual_variability/main.nf | New variability plot process |
| modules/local/plot/depths_summary/main.nf | Container bump |
| modules/local/mutations2sbs/main.nf | Container bump |
| modules/local/mutation_matrix/main.nf | Container bump |
| modules/local/mutated_genomes_from_vaf/main.nf | Optional output; container bump |
| modules/local/mut_density/main.nf | New module to compute adjusted mut density |
| modules/local/mergemafs/main.nf | Container bump |
| modules/local/maf2vcf/main.nf | New MAF→VCF module |
| modules/local/indels/main.nf | Container bump |
| modules/local/group_genes/main.nf | Container bump |
| modules/local/filtermaf/main.nf | Container bump |
| modules/local/filterbed/main.nf | New CLI with positive filter support; container bump |
| modules/local/expand_regions/tests/... | Adds nf-test for EXPAND_REGIONS |
| modules/local/expand_regions/main.nf | Refactor inputs for domains/exons/custom; container bump |
| modules/local/downsample/mutations/main.nf | Container bump |
| modules/local/downsample/depths/main.nf | Container bump |
| modules/local/dnds/preprocess/main.nf | Container bump |
| modules/local/dna2protein/main.nf | Adds depths input; emits per-exon depths and exon BED; container bump |
| modules/local/createpanels/consensus/main.nf | Genes subset default fix |
| modules/local/contamination/main.nf | New contamination check module |
| modules/local/computemutdensity/main.nf | Container bump |
| modules/local/compute_trinucleotide/main.nf | Container bump |
| modules/local/compute_profile/main.nf | Container bump |
| modules/local/compute_mutability/main.nf | Container bump |
| modules/local/combine_sbs/main.nf | Container bump |
| modules/local/blacklistmuts/main.nf | Container bump |
| modules/local/bbgtools/sitecomparison/main.nf | Container bump |
| modules/local/bbgtools/oncodrive3d/run/main.nf | Use bbglab/oncodrive3d and version capture; log pattern tweak |
| modules/local/bbgtools/oncodrive3d/preprocessing/main.nf | Container bump |
| modules/local/bbgtools/oncodrive3d/plot_chimerax/main.nf | Version capture fix |
| modules/local/bbgtools/oncodrive3d/plot/main.nf | Use bbglab/oncodrive3d and version capture; log pattern tweak |
| docs/... | Updates to usage, tools rationale, formats, issues, README |
| conf/... | Many config/profile updates, new modes, tmp fixes, tool configs, domain file and masks wiring |
| nf-test.config | Config for nf-test |
| LICENSE | Replaces placeholder license with AGPL notice |
| CITATIONS.md | Adds sources/tools references |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
Contributor
There was a problem hiding this comment.
Pull Request Overview
Copilot reviewed 117 out of 156 changed files in this pull request and generated 9 comments.
Comments suppressed due to low confidence (1)
nextflow_schema.json:592
- Corrected spelling of 'Comma-separeted' to 'Comma-separated'.
"selected_genes": {
"type": "string",
"description": "Comma-separeted list of genes to focus the analysis",
"fa_icon": "fas fa-book",
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
FerriolCalvet
added a commit
that referenced
this pull request
Oct 14, 2025
commit e7ace44 Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Fri Oct 10 09:44:35 2025 +0200 v1.0.0 fixes (#380) * fix syntax of optional - fix ambiguity in features list definition * remove optional input definition commit e409639 Merge: 14640cd 1a61fc9 Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Wed Oct 8 15:09:55 2025 +0200 Merge pull request #377 from bbglab/dev New release: v1.0.0 Ter commit 1a61fc9 Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Wed Oct 8 11:25:01 2025 +0200 update documentation tackling several issues commit cc808de Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Wed Oct 8 10:23:45 2025 +0200 update naming of summary mutation plots commit 2ab4e65 Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Tue Oct 7 23:15:35 2025 +0200 fix typos and make inputs of expand regions optional commit 6bb325e Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Tue Oct 7 23:03:33 2025 +0200 apply review suggestions commit 872809d Merge: 2ac1bdb 14640cd Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Sun Oct 5 16:07:02 2025 +0200 Merge branch 'main' into dev commit 2ac1bdb Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Sat Oct 4 17:52:17 2025 +0200 add tools' explanation in docs - add adjusted mutation density explanation - rename subworkflow directory commit 275bd68 Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Fri Oct 3 23:16:31 2025 +0200 update features groups documentation commit 67a902e Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Tue Sep 30 09:12:55 2025 +0200 add nanoseq masks to default filtering - add also gnomAD_SNP - add documentation on Nanoseq masks commit b06e900 Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Mon Sep 29 09:17:47 2025 +0200 add test setup and first tests (#375) * first definition of tests - to be tested * add first semi-working version of pipeline level tests * add first module testing for EXPANDREGIONS - testing focussed in PPM1D gene - confirm preferred behaviour for this process if omega_withingene is true, but no option of subgenic element definition is activated it fails - stub mode set up pending * tests working for EXPANDREGIONS * update snapshot * minor python fixes * changes after PR review commit 7caf653 Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Thu Sep 25 16:43:38 2025 +0200 update deepCSA diagram commit 8fa7998 Author: Marta Huertas <97596516+m-huertasp@users.noreply.github.com> Date: Thu Sep 25 16:31:39 2025 +0200 Add Nanoseq masks as filters (#374) * feature: add nanoseq masks to FILTERS This commit adds the posibility of using nanoseq masks in deepCSA. New parameters are added both in nextflow_schema and nextflow config. No major other changes are made as nanoseq masks use the same script as FILTEREXONS and FILTERPANELS. * feature: add click to handle inputs These changes are copied from branch input-with-click, more specifically from commit 0af42a9. * refactor: add positive parameter When using filterbed.py, if using positive you filter positions in the bed file and when using negative you filter positions not in the bed file. This commit adjusts the parameters in nanoseq filters to adjust to this behaviour. * refactor: implement with click and add positive parameter The click implementation is usefull to add the --positive flag for those bed files with the positive = true parameter in the modules.conf * refactor: import nanoseq files in subworkflow This commits moves the import from the main workflow to the MUTATION_PREPROCESSING subworkflow. This is cleaner and easier to maintain. * docs: add nanoseq masks paths * refactor: remove debug printing * refactor: move publish dir instructions Improve clarity. * refactor: move nanoseq masks paths to cluster configuration * refactor: simplify definitions and avoid non-intended output To avoid non-intended output, we define filtername empty if not defined instead of "covered". * refactor: unify filters into one and remove non canonical chromosomes The functions negative_filter_panel_regions and positive_filter_panel_regions have been unified into one function: filter_panel. The logic is exactly the same. A new function is created to remove non canonical chromosomes in the positions dataframe (from the bed file). Non canonical chromosomes were giving problems when merging with sample_maf as "chr" was not detected. * refactor: apply nanoseq masks individually with cleaner channel management The if statement for the nanoseq masks has been divided to handle them individually, in case only one is provided. Also, assigning a value to a channel twive is avoided by adding "else" statements. * refactor: add one liner to create filtered maf panels variable Taking into account if nanoseq masks were applied. * refactor: add one liner to create filtered maf panels variable Taking into account if nanoseq masks were applied. * minor update in mut preprocessing style - fix paths in test_real - update order of variables in schema --------- Co-authored-by: FerriolCalvet <ferriolcalvet@gmail.com> commit 42c85f6 Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Thu Sep 25 12:37:10 2025 +0200 Update container for HDP signature extraction (#362) * update hdp_wrapper container * add ignore strategy to compare signatures step * add tmp fixes configs commit 5b9ed08 Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Fri Sep 19 21:45:57 2025 +0200 fix bug in redefinition of panel with subgenic elements (#373) * fix bug in redefinition of exons and domains - now if a subgenic element is partially covered, it is still included in the expanded file, before it was not Missing: -documentation * add docs * fix bug in end coordinate when matching * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> commit 3d8fe1f Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Wed Sep 17 20:00:41 2025 +0200 Add globalloc synonymous numbers QC (#370) * add globalloc synonymous numbers qc - added all the plots and correlation computations of obs. vs estimated numbers of synonymous mutations * update omega syn qc - working version with plots and tsv outputs commit 03a69f6 Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Tue Sep 16 10:39:30 2025 +0200 fix bug that outputted empty maf files (#367) * fix remove creation of empty MAFs * address #337 commit 3fb032d Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Sat Sep 13 11:14:47 2025 +0200 add minor fix to plotting needles for groups commit 9adbe74 Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Sat Sep 13 11:05:11 2025 +0200 Allow the option to plot selection and saturation at the level of groups (#366) * init plotting groups * needle plots and selection working for groups - add param to plot only cohort or all custom groups - update groups.json generation missing: - pass site comparison plots & test saturation * fix saturation plots working for groups - fix domain selection plotting as png not pdf commit 14640cd Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Mon Jul 28 18:01:31 2025 +0200 minor updates documentation related
FerriolCalvet
added a commit
that referenced
this pull request
Oct 23, 2025
* add profile concatenation and cosine sim plotting -not tested * fix concat profiles working - separated plots for samples and groups * Squashed commit of the following: commit e7ace44 Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Fri Oct 10 09:44:35 2025 +0200 v1.0.0 fixes (#380) * fix syntax of optional - fix ambiguity in features list definition * remove optional input definition commit e409639 Merge: 14640cd 1a61fc9 Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Wed Oct 8 15:09:55 2025 +0200 Merge pull request #377 from bbglab/dev New release: v1.0.0 Ter commit 1a61fc9 Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Wed Oct 8 11:25:01 2025 +0200 update documentation tackling several issues commit cc808de Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Wed Oct 8 10:23:45 2025 +0200 update naming of summary mutation plots commit 2ab4e65 Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Tue Oct 7 23:15:35 2025 +0200 fix typos and make inputs of expand regions optional commit 6bb325e Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Tue Oct 7 23:03:33 2025 +0200 apply review suggestions commit 872809d Merge: 2ac1bdb 14640cd Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Sun Oct 5 16:07:02 2025 +0200 Merge branch 'main' into dev commit 2ac1bdb Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Sat Oct 4 17:52:17 2025 +0200 add tools' explanation in docs - add adjusted mutation density explanation - rename subworkflow directory commit 275bd68 Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Fri Oct 3 23:16:31 2025 +0200 update features groups documentation commit 67a902e Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Tue Sep 30 09:12:55 2025 +0200 add nanoseq masks to default filtering - add also gnomAD_SNP - add documentation on Nanoseq masks commit b06e900 Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Mon Sep 29 09:17:47 2025 +0200 add test setup and first tests (#375) * first definition of tests - to be tested * add first semi-working version of pipeline level tests * add first module testing for EXPANDREGIONS - testing focussed in PPM1D gene - confirm preferred behaviour for this process if omega_withingene is true, but no option of subgenic element definition is activated it fails - stub mode set up pending * tests working for EXPANDREGIONS * update snapshot * minor python fixes * changes after PR review commit 7caf653 Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Thu Sep 25 16:43:38 2025 +0200 update deepCSA diagram commit 8fa7998 Author: Marta Huertas <97596516+m-huertasp@users.noreply.github.com> Date: Thu Sep 25 16:31:39 2025 +0200 Add Nanoseq masks as filters (#374) * feature: add nanoseq masks to FILTERS This commit adds the posibility of using nanoseq masks in deepCSA. New parameters are added both in nextflow_schema and nextflow config. No major other changes are made as nanoseq masks use the same script as FILTEREXONS and FILTERPANELS. * feature: add click to handle inputs These changes are copied from branch input-with-click, more specifically from commit 0af42a9. * refactor: add positive parameter When using filterbed.py, if using positive you filter positions in the bed file and when using negative you filter positions not in the bed file. This commit adjusts the parameters in nanoseq filters to adjust to this behaviour. * refactor: implement with click and add positive parameter The click implementation is usefull to add the --positive flag for those bed files with the positive = true parameter in the modules.conf * refactor: import nanoseq files in subworkflow This commits moves the import from the main workflow to the MUTATION_PREPROCESSING subworkflow. This is cleaner and easier to maintain. * docs: add nanoseq masks paths * refactor: remove debug printing * refactor: move publish dir instructions Improve clarity. * refactor: move nanoseq masks paths to cluster configuration * refactor: simplify definitions and avoid non-intended output To avoid non-intended output, we define filtername empty if not defined instead of "covered". * refactor: unify filters into one and remove non canonical chromosomes The functions negative_filter_panel_regions and positive_filter_panel_regions have been unified into one function: filter_panel. The logic is exactly the same. A new function is created to remove non canonical chromosomes in the positions dataframe (from the bed file). Non canonical chromosomes were giving problems when merging with sample_maf as "chr" was not detected. * refactor: apply nanoseq masks individually with cleaner channel management The if statement for the nanoseq masks has been divided to handle them individually, in case only one is provided. Also, assigning a value to a channel twive is avoided by adding "else" statements. * refactor: add one liner to create filtered maf panels variable Taking into account if nanoseq masks were applied. * refactor: add one liner to create filtered maf panels variable Taking into account if nanoseq masks were applied. * minor update in mut preprocessing style - fix paths in test_real - update order of variables in schema --------- Co-authored-by: FerriolCalvet <ferriolcalvet@gmail.com> commit 42c85f6 Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Thu Sep 25 12:37:10 2025 +0200 Update container for HDP signature extraction (#362) * update hdp_wrapper container * add ignore strategy to compare signatures step * add tmp fixes configs commit 5b9ed08 Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Fri Sep 19 21:45:57 2025 +0200 fix bug in redefinition of panel with subgenic elements (#373) * fix bug in redefinition of exons and domains - now if a subgenic element is partially covered, it is still included in the expanded file, before it was not Missing: -documentation * add docs * fix bug in end coordinate when matching * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> commit 3d8fe1f Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Wed Sep 17 20:00:41 2025 +0200 Add globalloc synonymous numbers QC (#370) * add globalloc synonymous numbers qc - added all the plots and correlation computations of obs. vs estimated numbers of synonymous mutations * update omega syn qc - working version with plots and tsv outputs commit 03a69f6 Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Tue Sep 16 10:39:30 2025 +0200 fix bug that outputted empty maf files (#367) * fix remove creation of empty MAFs * address #337 commit 3fb032d Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Sat Sep 13 11:14:47 2025 +0200 add minor fix to plotting needles for groups commit 9adbe74 Author: Ferriol Calvet <38539786+FerriolCalvet@users.noreply.github.com> Date: Sat Sep 13 11:05:11 2025 +0200 Allow the option to plot selection and saturation at the level of groups (#366) * init plotting groups * needle plots and selection working for groups - add param to plot only cohort or all custom groups - update groups.json generation missing: - pass site comparison plots & test saturation * fix saturation plots working for groups - fix domain selection plotting as png not pdf commit 14640cd Author: FerriolCalvet <ferriolcalvet@gmail.com> Date: Mon Jul 28 18:01:31 2025 +0200 minor updates documentation related * minor updates in plotting settings * fix naming
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.