Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
5a0a8f9
fix: update SQANTI QC command line parameters
mschertzer May 4, 2026
b877d47
fix: ensure FragPipe module uses fixed v24.0 for consistency
JTL-lab Apr 27, 2026
453805c
Revert "feat: update SQANTI container versions to latest v6.0.1"
JTL-lab Apr 27, 2026
2c9d57b
refactor: ensure default singularity cache in work directory
JTL-lab Apr 27, 2026
126dcc4
fix: separate GENCODE and custom protein FASTA inputs in BUILD_PROTEO…
mschertzer Apr 17, 2026
70f8a13
fix: ungate BED peptide mapping from end-to-end LRP requirement, add …
mschertzer Apr 22, 2026
3665878
feat: improve HPC portability for non-SLURM environments
aline2593 Apr 15, 2026
d597aca
fix: cleanup test param values for lsf config
JTL-lab May 11, 2026
ff52fa8
feat: add --hpc_executor, --hpc_queue, and --hpc_cluster_options as o…
JTL-lab May 11, 2026
47994bb
feat (closes #46): add support for mouse data with preset GENCODE ref…
JTL-lab May 12, 2026
5f97f35
fix: ensure pipeline detects --species param value from --genome para…
JTL-lab May 12, 2026
981520b
docs: update README.md with details on multi-species support and usage
JTL-lab May 12, 2026
7a477aa
feat: allow for token only run mode with FRAGPIPE_AUTHENTICATE for ea…
JTL-lab May 12, 2026
003f1df
fix: add fallback so that if fragpipe module exits with any non-zero …
JTL-lab May 12, 2026
b791c05
feat: redundant process cleanup so that ISOCALL_PROFILE and GUNZIP_FA…
JTL-lab May 12, 2026
fce657a
feat (closes #33): remove deprecated --fasta param, rename --gencode_…
JTL-lab May 13, 2026
966d7dc
fix: correct typo with GUNZIP_GENCODE_FASTA instead of GUNZIP_FASTA f…
JTL-lab May 13, 2026
10f6ac2
feat (closes #69): add log output for all modules to save stdout logg…
JTL-lab May 14, 2026
10fd945
feat (closes #113): add --chunks param to SQANTI_QC for parallel chun…
JTL-lab May 14, 2026
f393fe6
fix: update slurm and lsf exitReadTimeout from 24h to 48h to support …
JTL-lab May 19, 2026
dce5b93
docs: update CITATIONS.md
JTL-lab May 20, 2026
dc1f52e
docs: update README.md with containers and HPC primer, more specific …
JTL-lab May 21, 2026
8ea713e
docs: update README.md formatting, add more specifics
JTL-lab May 21, 2026
e164bbb
docs: remove lsf from readme contact mention since it is now supported
JTL-lab May 21, 2026
8ac2796
feat: update SQANTI_QC module to use awk for in-place replacement of …
JTL-lab May 26, 2026
580cef3
Merge remote-tracking branch 'origin/main' into feat/sqanti_version_u…
JTL-lab May 26, 2026
c1dfd3f
feat: bump back to v6.0.1
JTL-lab May 26, 2026
b71c981
Merge branch 'main' into feat/sqanti_version_update
JTL-lab May 27, 2026
62c46a5
fix: restore logic from 5a0a8f959ad7f4a577f87178d639a2e7430e2fd7 with…
JTL-lab May 27, 2026
a7baba2
fix: correct tab formatting for ansi-c style quoting for bash environ…
JTL-lab May 27, 2026
1eff04b
chore: remove test_dia test profile (pending update to dia test data)
JTL-lab May 28, 2026
b8979a7
chore: update nextflow_schema.json with added hpc cluster option params
JTL-lab May 28, 2026
1ba7b54
docs: update nextflow_schema.json so that --help command shows all re…
JTL-lab May 28, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 0 additions & 15 deletions conf/test.config
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
Usage examples:
nextflow run sheynkmanlab/lrp2 -profile test_rna,<docker/singularity> --outdir <OUTDIR>
nextflow run sheynkmanlab/lrp2 -profile test_dda,<docker/singularity> --outdir <OUTDIR>
nextflow run sheynkmanlab/lrp2 -profile test_dia,<docker/singularity> --outdir <OUTDIR>

----------------------------------------------------------------------------------------
*/
Expand Down Expand Up @@ -44,18 +43,4 @@ profiles {
fragpipe_license_accept = true
}
}

test_dia {
params {
config_profile_name = 'RNA + DIA mass spec test profile'
config_profile_description = 'Test dataset with RNA and DIA mass spectrometry samples'

input = "${projectDir}/sample_data/samplesheet_rna_dia.csv"
dataset_name = 'lrptest_dia'

genome = 'GRCh38.p14.v49'
protein_search = 'fragpipe'
fragpipe_license_accept = true
}
}
}
9 changes: 3 additions & 6 deletions modules/local/fragpipe/main.nf
Original file line number Diff line number Diff line change
Expand Up @@ -140,11 +140,8 @@ process FRAGPIPE {

# Update workflow with database path and decoy tag
WORK_DIR="\$(pwd)"

# Ensure workflow file ends with a newline (some upstream versions omit it)
sed -i -e '\$a\\' workflow.workflow
echo "database.db-path=\$WORK_DIR/database_with_decoys.fasta" >> workflow.workflow
echo "database.decoy-tag=${decoy_tag}" >> workflow.workflow
printf "\ndatabase.db-path=%s\n" "\$WORK_DIR/database_with_decoys.fasta" >> workflow.workflow
printf "database.decoy-tag=%s\n" "${decoy_tag}" >> workflow.workflow

echo ""

Expand Down Expand Up @@ -386,4 +383,4 @@ process FRAGPIPE {
ionquant: 1.10.12
END_VERSIONS
"""
}
}
16 changes: 8 additions & 8 deletions modules/local/isocall_call/main.nf
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,9 @@ process ISOCALL_CALL {
label 'process_low'

conda "${moduleDir}/environment.yml"
container "quay.io/pacbio/isocall:0.15.0_build1"
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'docker://quay.io/pacbio/isocall:0.15.0_build1' :
'quay.io/pacbio/isocall:0.15.0_build1' }"

input:
tuple val(meta), path(merged_profile)
Expand All @@ -13,8 +15,7 @@ process ISOCALL_CALL {

output:
tuple val(meta), path("*.isocall.isoforms.gtf.gz"), emit: gtf
tuple val(meta), path("*.isocall.count_matrix.txt"), emit: count_matrix
tuple val(meta), path("*_S1_PACBIO_ISOCALL_M5_ISOCALL_CALL_log.txt"), emit: log
tuple val(meta), path("*.isocall.count_matrix.csv"), emit: count_matrix
path "versions.yml", emit: versions

when:
Expand All @@ -27,8 +28,6 @@ process ISOCALL_CALL {
def min_read_support = task.ext.min_read_support ?: params.min_read_support
def max_bundles_per_gene = task.ext.max_bundles_per_gene ?: params.max_bundles_per_gene
"""
exec > >(tee ${prefix}_S1_PACBIO_ISOCALL_M5_ISOCALL_CALL_log.txt) 2>&1

isocall call \\
--threads $threads \\
--merged-profile $merged_profile \\
Expand All @@ -39,7 +38,9 @@ process ISOCALL_CALL {
--min-reads-per-isoform $min_read_support \\
--max-bundles-per-gene $max_bundles_per_gene \\
$args


mv ${prefix}.isocall.count_matrix.txt ${prefix}.isocall.count_matrix.csv

cat <<-END_VERSIONS > versions.yml
"${task.process}":
isocall: \$( isocall --version 2>&1 | sed 's/isocall //g' )
Expand All @@ -50,8 +51,7 @@ process ISOCALL_CALL {
def prefix = task.ext.prefix ?: "${meta.id}"
"""
touch ${prefix}.isocall.isoforms.gtf.gz
touch ${prefix}.isocall.count_matrix.txt
touch ${prefix}_S1_PACBIO_ISOCALL_M5_ISOCALL_CALL_log.txt
touch ${prefix}.isocall.count_matrix.csv

cat <<-END_VERSIONS > versions.yml
"${task.process}":
Expand Down
38 changes: 20 additions & 18 deletions modules/local/sqanti_qc/main.nf
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ process SQANTI_QC {
label 'process_long'

conda "${moduleDir}/environment.yml"
container 'docker://docker.io/anaconesalab/sqanti3:5.2.2'
container 'docker://docker.io/anaconesalab/sqanti3:v6.0.1'

input:
tuple val(meta), path(isoforms_gtf), path(flnc_count)
Expand All @@ -20,7 +20,6 @@ process SQANTI_QC {
tuple val(meta), path("*.transcriptome.junctions.txt"), emit: junctions
// tuple val(meta), path("*.transcriptome.params.txt"), emit: params
// tuple val(meta), path("refAnnotation.*.genePred"), emit: refannotation_genepred
tuple val(meta), path("*_S2_TRANSCRIPTOME_M1_SQANTI_QC_log.txt"), emit: log
path "versions.yml", emit: versions

when:
Expand All @@ -31,10 +30,9 @@ process SQANTI_QC {
def prefix = task.ext.prefix ?: "${meta.id}"

"""
exec > >(tee ${prefix}_S2_TRANSCRIPTOME_M1_SQANTI_QC_log.txt) 2>&1


source /conda/miniconda3/etc/profile.d/conda.sh
conda activate SQANTI3.env
conda activate sqanti3

# Decompress GTF if it's gzipped
ISOFORMS_INPUT="$isoforms_gtf"
Expand All @@ -48,27 +46,32 @@ process SQANTI_QC {
fi

sqanti3_qc.py \\
--force_id_ignore \\
--skipORF \\
--output ${prefix}.transcriptome \\
--dir . \\
--cpus $task.cpus \\
--chunks $task.cpus \\
--isoforms "\$ISOFORMS_INPUT" \\
--refGTF $reference_gtf \\
--refFasta $reference_fasta \\
-o ${prefix}.transcriptome \\
-d . \\
--report skip \\
--fl_count $flnc_count \\
"\$ISOFORMS_INPUT" \\
$reference_gtf \\
$reference_fasta \\
--fl $flnc_count \\
$args

# Fix single-sample column naming to use "FL.{sample_id}", which is consistent with formatting used for multi-sample runs
TAB=\$'\\t'
if head -1 ${prefix}.transcriptome_classification.txt | grep -qE "\${TAB}FL\${TAB}|\${TAB}FL\\.\${TAB}"; then
SAMPLE_NAME=\$(head -1 $flnc_count | awk -F',' '{print \$2}')
awk -v sample="\${SAMPLE_NAME}" 'NR==1 {gsub(/\\tFL\\t|\\tFL\\.\\t/, "\\tFL."sample"\\t")} {print}' \\
${prefix}.transcriptome_classification.txt > ${prefix}.transcriptome_classification.tmp.txt
mv ${prefix}.transcriptome_classification.tmp.txt ${prefix}.transcriptome_classification.txt
fi

mv ${prefix}.transcriptome_classification.txt ${prefix}.transcriptome.SQANTI_classification.txt
mv ${prefix}.transcriptome_corrected.gtf ${prefix}.transcriptome.gtf
mv ${prefix}.transcriptome_corrected.fasta ${prefix}.transcriptome.fasta
mv ${prefix}.transcriptome_junctions.txt ${prefix}.transcriptome.junctions.txt

cat <<-END_VERSIONS > versions.yml
"${task.process}":
sqanti3: 5.2.2
sqanti3: 6.0.1
END_VERSIONS
"""

Expand All @@ -79,11 +82,10 @@ process SQANTI_QC {
touch ${prefix}.transcriptome.gtf
touch ${prefix}.transcriptome.fasta
touch ${prefix}.transcriptome.junctions.txt
touch ${prefix}_S2_TRANSCRIPTOME_M1_SQANTI_QC_log.txt

cat <<-END_VERSIONS > versions.yml
"${task.process}":
sqanti3: 5.2.2
sqanti3: 6.0.1
END_VERSIONS
"""
}
1 change: 0 additions & 1 deletion nextflow.config
Original file line number Diff line number Diff line change
Expand Up @@ -271,7 +271,6 @@ profiles {
}
test_rna { includeConfig 'conf/test.config' }
test_dda { includeConfig 'conf/test.config' }
test_dia { includeConfig 'conf/test.config' }
test_full { includeConfig 'conf/test_full.config' }
}

Expand Down
Loading
Loading