-
Couldn't load subscription status.
- Fork 162
Implement nf-schema in pipeline #472
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: dev
Are you sure you want to change the base?
Conversation
|
Warning Newer version of the nf-core template is available. Your pipeline is using an old version of the nf-core template: 3.2.1. For more documentation on how to update your pipeline, please see the nf-core documentation and Synchronisation documentation. |
|
29520d7 to
96867d9
Compare
96867d9 to
e92fa1c
Compare
- Add minimum value constraints for replicate IDs (minimum: 1) - Implement antibody/control dependency validation using dependentRequired - Update regex patterns for antibody and control fields to allow alphanumeric, dots, and hyphens - Improve error messages for better user experience - Ensure data integrity with stricter validation rules 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Remove custom Python samplesheet validation script (bin/check_samplesheet.py) - Remove corresponding Nextflow module (modules/local/samplesheet_check.nf) - Eliminates 247 lines of custom validation code - Paves way for modern nf-schema validation system 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Replace file-based samplesheet input with nf-schema samplesheetToList() - Implement direct channel creation from validated samplesheet data - Add validateSamplesheetRow() function for custom validation logic - Preserve space replacement warnings and single_end computation - Ensure backward compatibility with existing pipeline logic 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Update create_fastq_channel() to handle nf-schema output format - Remove dependency on SAMPLESHEET_CHECK module - Process pre-validated data from nf-schema samplesheetToList() - Add proper handling of replicate and control_replicate metadata - Eliminate redundant file existence checks (handled by nf-schema) - Improve single_end detection logic for various data formats 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Update NFCORE_CHIPSEQ workflow to accept pre-validated samplesheet channel - Replace file-based samplesheet input with channel-based data flow - Connect PIPELINE_INITIALISATION.out.samplesheet to main workflow - Remove redundant file creation and validation steps - Streamline data flow from validation to processing 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Move INPUT_CHECK workflow into utils_nfcore_chipseq_pipeline/main.nf - Integrate create_fastq_channel function with other pipeline utilities - Update import path in workflows/chipseq.nf - Remove standalone input_check.nf subworkflow - Align with nf-core/rnaseq architectural patterns for cleaner organization - Reduces local subworkflows from 6 to 5, improving maintainability 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
Extract metadata correctly from nf-schema structure and transform control references to include replicate suffix for proper IP/control BAM pairing. 🤖 Generated with Claude Code Co-Authored-By: Claude <[email protected]>
Use unique staging directories for different input channels to prevent file name collisions during MultiQC execution. 🤖 Generated with Claude Code Co-Authored-By: Claude <[email protected]>
Update test snapshots to reflect corrected sample IDs, restored peak calling processes, and proper workflow execution with nf-schema integration. 🤖 Generated with Claude Code Co-Authored-By: Claude <[email protected]>
The pipeline's sample sheet validation was fully migrated to
nf-schema, replacing a custom Python script.Key changes include:
assets/schema_input.jsonwas updated to:sample,antibody, andcontrolfields.dependentRequired.minimum: 1constraint forreplicateIDs.bin/check_samplesheet.pyand its Nextflow wrappermodules/local/samplesheet_check.nfwere removed.subworkflows/local/utils_nfcore_chipseq_pipeline/main.nfgained avalidateSamplesheetRow()function to preserve pre-nf-schema logic, including space replacement warnings andsingle_endcomputation.subworkflows/local/input_check.nfwas simplified, removing its dependency on the Python script and now directly processing pre-validated samplesheet data.main.nfandworkflows/chipseq.nfwere updated to use thePIPELINE_INITIALISATION.out.samplesheetchannel, reflecting the new validation flow.Subsequently, only
nf-testrelated artifacts were removed, includingnextflowandnf-testexecutables, and all.nf-test/directories, while preserving allnf-schemaimplementation changes.