add per-sample logic for FASTA#21
Conversation
Co-authored-by: Copilot <copilot@github.com>
|
There was a problem hiding this comment.
Pull request overview
This PR adds support for providing the protein FASTA either globally via --fasta or per MS run via a fasta column in the samplesheet, and wires the selected FASTA through database preparation and spectra identification.
Changes:
- Extend samplesheet parsing to emit
[meta, spectrum_file, fasta_file], with validation enforcing mutual exclusivity/completeness between--fastaand the samplesheetfastacolumn. - Update the main workflow to deduplicate FASTA inputs (run
PREPARE_DATABASESonce per unique FASTA) and re-associate prepared DB FASTAs back to runs for identification. - Update schema/sample assets to reflect the new optional samplesheet FASTA column and broaden FASTA extension patterns (including optional
.gz).
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
workflows/mspepid.nf |
Extract/deduplicate per-run FASTAs, prepare DBs once per unique FASTA, and join per-run DB FASTAs into identification. |
subworkflows/local/utils_nfcore_mspepid_pipeline/main.nf |
Add mutual-exclusivity validation and emit FASTA per run from either --fasta or samplesheet column. |
subworkflows/local/spectra_identification/main.nf |
Join spectra inputs with per-run database FASTA and reuse that for Comet/Sage execution. |
nextflow_schema.json |
Update global --fasta schema text/pattern to match expanded FASTA support and exclusivity. |
main.nf |
Remove passing params.fasta into MSPEPID since FASTA is now embedded in the samplesheet channel. |
assets/schema_input.json |
Add optional fasta column definition for samplesheet validation. |
assets/samplesheet.csv |
Update example samplesheet to include ID,spectrum_file,fasta. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
di-hardt
left a comment
There was a problem hiding this comment.
seems alright. as you already updating the sample sheet structure, please go ahead and update the docs as well (at least the usage document). there are still the information from the template, which are more genomics related I guess. makes it easier for people to get involved (users and developers alike)
This PR includes the option to define the FASTA either per sample (in the samplesheet), or global wit hthe
--fastaparam.PR checklist
nf-core pipelines lint).nextflow run . -profile test,docker --outdir <OUTDIR>).nextflow run . -profile debug,test,docker --outdir <OUTDIR>).docs/usage.mdis updated.docs/output.mdis updated.CHANGELOG.mdis updated.README.mdis updated (including new tool citations and authors/contributors).