-
Notifications
You must be signed in to change notification settings - Fork 3
zippypretext and other modules #249
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
Merged
Changes from all commits
Commits
Show all changes
82 commits
Select commit
Hold shift + click to select a range
dd84728
pretext2asm module
yumisims 4502cdd
update busco_gene and telo_finder with HTSLIB_BGZIPTABIX
yumisims 63e3890
zippy
yumisims b3e0c3b
update findtelomere
yumisims 7403d85
Add pretext modules and zippypretext subworkflow to conda skip list
Copilot 323b090
Merge remote-tracking branch 'origin/main' into zippy
Copilot 64d5230
Fix meta.yml: quote float version key 1.2 as string to fix lint TypeE…
Copilot 948d2ee
fix: resolve nf-core lint failures in pretext/makepairs module
Copilot 780f473
fix: resolve nf-core lint failures in pretext/pretext2asm module
Copilot 5835741
update snapshot
yumisims 6b9ab80
fixed .github/skip_nf_test.json
yumisims 6caf226
fix: resolve merge conflict in .github/skip_nf_test.json
Copilot 5a9de69
update snapshots
yumisims d8479da
update snapshot
yumisims 5ee6bc6
add a newline to snapshotsgit add modules/sanger-tol/pretext/pretext2…
yumisims 0e0f302
fixed meta of yaml files
yumisims fbfa778
add author to meta
yumisims e49d7f0
snapshot
yumisims f278291
snapshot
yumisims f9f5057
meta typeerror
yumisims d982fd5
update makeapairs
yumisims 37b820a
fix(pretext/makepairs): add missing environment.yml
Copilot fb9b7cd
change container registery
yumisims bdbbca0
update container registry
yumisims 92c5f66
Update subworkflows/sanger-tol/busco_gene/main.nf
yumisims 17f0a18
Update subworkflows/sanger-tol/zippypretext/main.nf
yumisims b644cdd
Update modules/sanger-tol/pretext/juicerc/tests/main.nf.test
yumisims 0973c2d
Update subworkflows/sanger-tol/zippypretext/main.nf
yumisims c1ca9e4
Update subworkflows/sanger-tol/zippypretext/meta.yml
yumisims e641123
Update subworkflows/sanger-tol/zippypretext/main.nf
yumisims 52a697c
Update subworkflows/sanger-tol/zippypretext/main.nf
yumisims a615209
update container
yumisims dcd1102
Fix Nextflow lint failures in busco_gene and zippypretext subworkflows
Copilot 95cec8f
Merge branch 'main' into zippy
yumisims 67437d9
Fix zippypretext subworkflow meta components
Copilot 58a1260
fix: rename JUICERC process to PRETEXT_JUICERC to fix CI test failure
Copilot 5aa54eb
fix: disable Nextflow task monitor for singularity nf-test runs
Copilot 1febf69
Fix pretext/juicerc module name in meta.yml
Copilot 72a51a9
fix(busco_gene): pass full tuple to bgziptabix
Copilot 34cbc2f
Apply suggestions from code review
DLBPointon 08de223
Apply suggestions from code review
DLBPointon 4cd145c
Update subworkflows/sanger-tol/zippypretext/meta.yml
yumisims dc39f94
Fix PRETEXT_JUICERC test: use correct process name PRETEXT_PRETEXT2ASM
Copilot f26ae46
snapshots
yumisims 4c5bdb4
Merge branch 'zippy' of https://github.com/sanger-tol/nf-core-modules…
yumisims 73bd799
fix: correct zippypretext pretextmap component metadata
Copilot 4d35df4
resolve same meta ids for busco tracks issue
yumisims 9e7b48e
Merge branch 'zippy' of https://github.com/sanger-tol/nf-core-modules…
yumisims 0f49408
juicers output contains timestamp
yumisims a621feb
changed snapshot format
yumisims 8a5cb4c
snapshot
yumisims 97c3e79
fix(busco_gene tests): use BUSCO S3 data mirror in test config
Copilot 959b97a
Update modules/sanger-tol/pretext/juicerc/main.nf
yumisims 01939d2
Update modules/sanger-tol/pretext/juicerc/meta.yml
yumisims 7456d2d
Update modules/sanger-tol/pretext/pretext2asm/main.nf
yumisims ed08038
Update modules/sanger-tol/pretext/juicerc/meta.yml
yumisims dec0cef
Update modules/sanger-tol/pretext/makepairs/main.nf
yumisims f3e12fb
Fix: add missing versions_juicerc output to pretext/juicerc meta.yml
Copilot 05d7000
install procps in the nf-test configuration and re-enabled tracing.
yumisims 90e128f
nf-test.config update
yumisims a4478e1
add procps to agp container
yumisims 7d5580b
Fix BUSCO test failures caused by unreachable data servers
Copilot 9d362c3
Apply suggestions from code review
DLBPointon 828ec94
Apply suggestions from code review
DLBPointon c873d2b
Update spacing that got screwed in github
DLBPointon 6a0dc9c
Linting
DLBPointon 9967f02
Update
DLBPointon ff1bd5e
Update
DLBPointon 7fd1bce
Rename config to online, makes room for an offline test in future
DLBPointon a8b119c
Update process name
DLBPointon 8a9dd38
Update process
DLBPointon 8e07573
Update ontology
DLBPointon a88f779
Fix naming
DLBPointon 2584767
Update
DLBPointon d1286bd
Update for new field
DLBPointon a775ff2
UPDATE REFS
DLBPointon b12a9ba
tbi is now index
DLBPointon ee8cb10
Update subworkflows/sanger-tol/telo_finder/main.nf
yumisims bcd4dcc
Update subworkflows/sanger-tol/busco_gene/main.nf
yumisims a0ddd71
change config
yumisims 7fcceda
Merge branch 'main' into zippy
DLBPointon 5edc986
Update
DLBPointon File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,45 @@ | ||
| process PRETEXT_JUICERC { | ||
| tag "${meta.id}" | ||
| label 'process_medium' | ||
|
|
||
| container 'quay.io/sanger-tol/juicerc:1.2-c1' | ||
|
|
||
| input: | ||
| tuple val(meta), path(hicmap) | ||
| path agpfile | ||
| path idxfile | ||
|
|
||
| output: | ||
| tuple val(meta), path("*_alignment_sorted.txt"), emit: alignment | ||
| path("juicercout.log"), emit: outlog | ||
| tuple val("${task.process}"), val('juicer_pre'), eval('juicer pre --version'), topic: versions, emit: versions_juicer_pre | ||
| // juicerc container has no CLI --version; pin to container tag (bump when `container` changes) | ||
| tuple val("${task.process}"), val('juicerc'), val('1.2'), topic: versions, emit: versions_juicerc | ||
|
|
||
| when: | ||
| task.ext.when == null || task.ext.when | ||
|
|
||
| script: | ||
| if (workflow.profile.tokenize(',').intersect(['conda', 'mamba']).size() >= 1) { | ||
| error "PRETEXT_JUICERC module does not support Conda. Please use Docker / Singularity instead." | ||
| } | ||
| def prefix = task.ext.prefix ?: "${meta.id}" | ||
| def sort_mem = (task.memory.toGiga() * 0.9).intValue() | ||
|
|
||
| """ | ||
| juicer pre -q 0 ${hicmap} ${agpfile} ${idxfile} 2>juicercout.log \\ | ||
| | LC_ALL=C sort -k2,2d -k6,6d -T . --parallel=${task.cpus} -S${sort_mem}G \\ | ||
| | awk '\$3>=0 && \$7>=0' \\ | ||
| > ${prefix}_alignment_sorted.txt | ||
| """ | ||
|
|
||
| stub: | ||
| if (workflow.profile.tokenize(',').intersect(['conda', 'mamba']).size() >= 1) { | ||
| error "PRETEXT_JUICERC module does not support Conda. Please use Docker / Singularity instead." | ||
| } | ||
| def prefix = task.ext.prefix ?: "${meta.id}" | ||
| """ | ||
| touch ${prefix}_alignment_sorted.txt | ||
| touch juicercout.log | ||
| """ | ||
| } |
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,107 @@ | ||
| name: "pretext_juicerc" | ||
| description: | | ||
| Remap Hi-C alignments onto a curated AGP with `juicer pre`, sort pairs, and filter | ||
| invalid coordinates — equivalent to the zippypretext `juicerc.sh` wrapper. | ||
| keywords: | ||
| - pretext | ||
| - juicer | ||
| - hic | ||
| - agp | ||
| - curation | ||
| tools: | ||
| - juicer_pre: | ||
| description: | | ||
| Remap Hi-C contacts from a `.bin` or BAM onto scaffold coordinates in an AGP | ||
| using a contig-level FASTA index (`juicer pre -q 0`). | ||
| homepage: https://github.com/aidenlab/juicer/wiki/Juicer-Tools-Quick-Start | ||
| documentation: https://github.com/aidenlab/juicer/wiki/Juicer-Tools-Quick-Start | ||
| licence: | ||
| - "MIT" | ||
| identifier: "" | ||
| input: | ||
| - - meta: | ||
| type: map | ||
| description: | | ||
| Groovy Map containing sample information | ||
| e.g. `[ id:'sample1' ]` | ||
| - hicmap: | ||
| type: file | ||
| description: Hi-C alignment file (BAM or Juicer `.bin` contacts) | ||
| pattern: "*.{bam,bin}" | ||
| ontologies: | ||
| - edam: "http://edamontology.org/format_2572" # BAM | ||
| - edam: "http://edamontology.org/format_2333" # BIN | ||
| - agpfile: | ||
| type: file | ||
| description: AGP file describing scaffold coordinates (typically output of | ||
| `pretext2asm`) | ||
| pattern: "*.agp" | ||
| ontologies: | ||
| - edam: "http://edamontology.org/format_3693" # AGP | ||
| - idxfile: | ||
| type: file | ||
| description: FASTA index (`.fai`) matching the contig-level Hi-C assembly | ||
| pattern: "*.fai" | ||
| ontologies: [] | ||
| output: | ||
| alignment: | ||
| - - meta: | ||
| type: map | ||
| description: Groovy Map containing sample information | ||
| - "*_alignment_sorted.txt": | ||
| type: file | ||
| description: Sorted Hi-C alignment records remapped to scaffold | ||
| coordinates | ||
| pattern: "*_alignment_sorted.txt" | ||
| ontologies: | ||
| - edam: http://edamontology.org/format_2330 # Textual format | ||
| outlog: | ||
| - juicercout.log: | ||
| type: file | ||
| description: Log file written by `juicerc.sh` | ||
| pattern: "juicercout.log" | ||
| ontologies: [] | ||
| versions_juicer_pre: | ||
| - - ${task.process}: | ||
| type: string | ||
| description: The process the versions were collected from | ||
| - juicer_pre: | ||
| type: string | ||
| description: The tool name | ||
| - juicer pre --version: | ||
| type: eval | ||
| description: The expression to obtain the version of the tool | ||
| versions_juicerc: | ||
| - - ${task.process}: | ||
| type: string | ||
| description: The process the versions were collected from | ||
| - juicerc: | ||
| type: string | ||
| description: The tool name | ||
| - "1.2": | ||
| type: string | ||
| description: The version of the tool | ||
| topics: | ||
| versions: | ||
| - - ${task.process}: | ||
| type: string | ||
| description: The process the versions were collected from | ||
| - juicer_pre: | ||
| type: string | ||
| description: The tool name | ||
| - juicer pre --version: | ||
| type: eval | ||
| description: The expression to obtain the version of the tool | ||
| - - ${task.process}: | ||
| type: string | ||
| description: The process the versions were collected from | ||
| - juicerc: | ||
| type: string | ||
| description: The tool name | ||
| - "1.2": | ||
| type: string | ||
| description: The expression to obtain the version of the tool | ||
| authors: | ||
| - "@yumisims" | ||
| maintainers: | ||
| - "@yumisims" |
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,108 @@ | ||
| nextflow_process { | ||
|
|
||
| name "Test Process PRETEXT_JUICERC" | ||
| script "../main.nf" | ||
| process "PRETEXT_JUICERC" | ||
|
|
||
| tag "modules" | ||
| tag "modules_sangertol" | ||
| tag "pretext" | ||
| tag "pretext/juicerc" | ||
| tag "pretext/pretext2asm" | ||
|
|
||
| test("gfAmaRube1 - bin") { | ||
|
|
||
| setup { | ||
| run("PRETEXT_PRETEXT2ASM") { | ||
| script "../../pretext2asm/main.nf" | ||
| process { | ||
| """ | ||
| input[0] = [ | ||
| [ id:'test' ], | ||
| file(params.modules_testdata_base_path + 'Amanita_rubescens/assembly/gfAmaRube1.fa', checkIfExists: true) | ||
| ] | ||
| input[1] = file(params.modules_testdata_base_path + 'Amanita_rubescens/assembly/gfAmaRube1_pretext.agp', checkIfExists: true) | ||
| """ | ||
| } | ||
| } | ||
| } | ||
|
|
||
| when { | ||
| process { | ||
| """ | ||
| input[0] = [ | ||
| [ id:'test' ], | ||
| file(params.modules_testdata_base_path + 'Amanita_rubescens/assembly/gfAmaRube1.bin', checkIfExists: true) | ||
| ] | ||
| input[1] = PRETEXT_PRETEXT2ASM.out.correctedagp.map { meta, agp -> agp } | ||
| input[2] = file(params.modules_testdata_base_path + 'Amanita_rubescens/assembly/gfAmaRube1.fa.fai', checkIfExists: true) | ||
| """ | ||
| } | ||
| } | ||
|
|
||
| then { | ||
| def pre_c_sizes = file(process.out.outlog.get(0)).readLines().findAll { it.contains('PRE_C_SIZE') } | ||
| assertAll( | ||
| { assert process.success }, | ||
| { assert pre_c_sizes.size() > 0 }, | ||
| { assert snapshot([ | ||
| alignment: process.out.alignment, | ||
| pre_c_sizes: pre_c_sizes, | ||
| versions_juicer_pre: process.out.versions_juicer_pre, | ||
| versions_juicerc: process.out.versions_juicerc, | ||
| ]).match() } | ||
| ) | ||
| } | ||
|
|
||
| } | ||
|
|
||
| test("gfAmaRube1 - bin - stub") { | ||
|
|
||
| options "-stub" | ||
|
|
||
| setup { | ||
| run("PRETEXT_PRETEXT2ASM") { | ||
| options "-stub" | ||
| script "../../pretext2asm/main.nf" | ||
| process { | ||
| """ | ||
| input[0] = [ | ||
| [ id:'test' ], | ||
| file(params.modules_testdata_base_path + 'Amanita_rubescens/assembly/gfAmaRube1.fa', checkIfExists: true) | ||
| ] | ||
| input[1] = file(params.modules_testdata_base_path + 'Amanita_rubescens/assembly/gfAmaRube1_pretext.agp', checkIfExists: true) | ||
| """ | ||
| } | ||
| } | ||
| } | ||
|
|
||
| when { | ||
| process { | ||
| """ | ||
| input[0] = [ | ||
| [ id:'test' ], | ||
| file(params.modules_testdata_base_path + 'Amanita_rubescens/assembly/gfAmaRube1.bin', checkIfExists: true) | ||
| ] | ||
| input[1] = PRETEXT_PRETEXT2ASM.out.correctedagp.map { meta, agp -> agp } | ||
| input[2] = file(params.modules_testdata_base_path + 'Amanita_rubescens/assembly/gfAmaRube1.fa.fai', checkIfExists: true) | ||
| """ | ||
| } | ||
| } | ||
|
|
||
| then { | ||
| def pre_c_sizes = file(process.out.outlog.get(0)).readLines().findAll { it.contains('PRE_C_SIZE') } | ||
| assertAll( | ||
| { assert process.success }, | ||
| { assert pre_c_sizes.isEmpty() }, | ||
| { assert snapshot([ | ||
| alignment: process.out.alignment, | ||
| pre_c_sizes: pre_c_sizes, | ||
| versions_juicer_pre: process.out.versions_juicer_pre, | ||
| versions_juicerc: process.out.versions_juicerc, | ||
| ]).match() } | ||
| ) | ||
| } | ||
|
|
||
| } | ||
|
|
||
| } |
Oops, something went wrong.
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.