Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
2 changes: 2 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
# and dev/plan artifacts that don't affect the build.
rust/target/
**/target/
# Legacy Perl toolchain — nothing in it is consumed by the image build.
legacy_perl/
.git/
.github/
plans/
Expand Down
8 changes: 4 additions & 4 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@
# are vendored third-party report assets, not Bismark source.

# Vendored web assets (plot.ly bundle + embedded HTML report templates).
*.ly linguist-vendored
plotly/** linguist-vendored
**/plotly/** linguist-vendored
*.html linguist-vendored
*.ly linguist-vendored
legacy_perl/plotly/** linguist-vendored
**/plotly/** linguist-vendored
*.html linguist-vendored

# Documentation (not counted as a language).
Docs/** linguist-documentation
Expand Down
88 changes: 44 additions & 44 deletions .github/workflows/ci_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,12 @@ jobs:

- name: Bismark help message
shell: bash -l {0}
run: ./bismark --help
run: ./legacy_perl/bismark --help

- name: software versions
shell: bash -l {0}
run: |
./bismark --version
./legacy_perl/bismark --version
samtools --version
bowtie2 --version
hisat2 --version
Expand All @@ -48,85 +48,85 @@ jobs:
shell: bash -l {0} # required: yes! see above
run: |
pwd
./bismark_genome_preparation --verbose ./test_files/
./bismark_genome_preparation --verbose --parallel 4 ./test_files/
./legacy_perl/bismark_genome_preparation --verbose ./test_files/
./legacy_perl/bismark_genome_preparation --verbose --parallel 4 ./test_files/

- name: Bismark PE run
shell: bash -l {0}
run: |
./bismark --genome ./test_files/ -1 ./test_files/test_R1.fastq.gz -2 ./test_files/test_R2.fastq.gz
./deduplicate_bismark --bam test_R1_bismark_bt2_pe.bam
./bismark_methylation_extractor test_R1_bismark_bt2_pe.bam --gzip --CX --bed --genome ./test_files/
./bismark2report
./bismark2summary
./legacy_perl/bismark --genome ./test_files/ -1 ./test_files/test_R1.fastq.gz -2 ./test_files/test_R2.fastq.gz
./legacy_perl/deduplicate_bismark --bam test_R1_bismark_bt2_pe.bam
./legacy_perl/bismark_methylation_extractor test_R1_bismark_bt2_pe.bam --gzip --CX --bed --genome ./test_files/
./legacy_perl/bismark2report
./legacy_perl/bismark2summary

- name: Bismark SE run
shell: bash -l {0}
run: |
./bismark --genome ./test_files/ ./test_files/test_R1.fastq.gz
./deduplicate_bismark --bam test_R1_bismark_bt2.bam
./bismark_methylation_extractor test_R1_bismark_bt2.bam --gzip --CX --bed --genome ./test_files/
./legacy_perl/bismark --genome ./test_files/ ./test_files/test_R1.fastq.gz
./legacy_perl/deduplicate_bismark --bam test_R1_bismark_bt2.bam
./legacy_perl/bismark_methylation_extractor test_R1_bismark_bt2.bam --gzip --CX --bed --genome ./test_files/

- name: Bismark run with option ICPC
shell: bash -l {0}
run: |
./bismark --bowtie2 --icpc ./test_files/ -1 ./test_files/test_R1.fastq.gz -2 ./test_files/test_R2.fastq.gz
./bismark --bowtie2 --icpc ./test_files/ ./test_files/test_R1.fastq.gz
./legacy_perl/bismark --bowtie2 --icpc ./test_files/ -1 ./test_files/test_R1.fastq.gz -2 ./test_files/test_R2.fastq.gz
./legacy_perl/bismark --bowtie2 --icpc ./test_files/ ./test_files/test_R1.fastq.gz

- name: Bismark run using HISAT2
shell: bash -l {0}
run: |
./bismark_genome_preparation --hisat2 --verbose ./test_files/
./bismark_genome_preparation --hisat2 --verbose --parallel 4 ./test_files/
./bismark --genome ./test_files/ --hisat2 ./test_files/test_R1.fastq.gz
./bismark --genome ./test_files/ --hisat2 -1 ./test_files/test_R1.fastq.gz -2 ./test_files/test_R2.fastq.gz
./deduplicate_bismark --bam test_R1_bismark_hisat2.bam
./bismark_methylation_extractor test_R1_bismark_hisat2.bam --gzip --CX --bed --genome ./test_files/
./bismark_methylation_extractor test_R1_bismark_hisat2_pe.bam --gzip --CX --bed --genome ./test_files/
./legacy_perl/bismark_genome_preparation --hisat2 --verbose ./test_files/
./legacy_perl/bismark_genome_preparation --hisat2 --verbose --parallel 4 ./test_files/
./legacy_perl/bismark --genome ./test_files/ --hisat2 ./test_files/test_R1.fastq.gz
./legacy_perl/bismark --genome ./test_files/ --hisat2 -1 ./test_files/test_R1.fastq.gz -2 ./test_files/test_R2.fastq.gz
./legacy_perl/deduplicate_bismark --bam test_R1_bismark_hisat2.bam
./legacy_perl/bismark_methylation_extractor test_R1_bismark_hisat2.bam --gzip --CX --bed --genome ./test_files/
./legacy_perl/bismark_methylation_extractor test_R1_bismark_hisat2_pe.bam --gzip --CX --bed --genome ./test_files/

- name: Bismark run Multicore
shell: bash -l {0}
run: |
./bismark --genome ./test_files/ --parallel 4 -1 ./test_files/test_R1.fastq.gz -2 ./test_files/test_R2.fastq.gz
./bismark --genome ./test_files/ --hisat2 --parallel 4 -1 ./test_files/test_R1.fastq.gz -2 ./test_files/test_R2.fastq.gz
./bismark_methylation_extractor test_R1_bismark_bt2_pe.bam --gzip --CX --bed --parallel 8 --genome ./test_files/
./bismark_methylation_extractor test_R1_bismark_hisat2_pe.bam --gzip --CX --bed --parallel 8 --genome ./test_files/
./legacy_perl/bismark --genome ./test_files/ --parallel 4 -1 ./test_files/test_R1.fastq.gz -2 ./test_files/test_R2.fastq.gz
./legacy_perl/bismark --genome ./test_files/ --hisat2 --parallel 4 -1 ./test_files/test_R1.fastq.gz -2 ./test_files/test_R2.fastq.gz
./legacy_perl/bismark_methylation_extractor test_R1_bismark_bt2_pe.bam --gzip --CX --bed --parallel 8 --genome ./test_files/
./legacy_perl/bismark_methylation_extractor test_R1_bismark_hisat2_pe.bam --gzip --CX --bed --parallel 8 --genome ./test_files/

- name: coverage2cytosine
shell: bash -l {0}
run: |
./coverage2cytosine test_R1_bismark_bt2_pe.bismark.cov.gz --merge_CpG --genome ./test_files/ -o test.output
./coverage2cytosine test_R1_bismark_bt2_pe.bismark.cov.gz --NOMe-seq --genome ./test_files/ -o test.output
./legacy_perl/coverage2cytosine test_R1_bismark_bt2_pe.bismark.cov.gz --merge_CpG --genome ./test_files/ -o test.output
./legacy_perl/coverage2cytosine test_R1_bismark_bt2_pe.bismark.cov.gz --NOMe-seq --genome ./test_files/ -o test.output

- name: bam2nuc
shell: bash -l {0}
run: |
./bam2nuc --genome_folder ./test_files/ --genomic_composition_only
./bam2nuc --genome_folder ./test_files/ test_R1_bismark_bt2_pe.bam
./bam2nuc --genome_folder ./test_files/ test_R1_bismark_hisat2_pe.bam
./legacy_perl/bam2nuc --genome_folder ./test_files/ --genomic_composition_only
./legacy_perl/bam2nuc --genome_folder ./test_files/ test_R1_bismark_bt2_pe.bam
./legacy_perl/bam2nuc --genome_folder ./test_files/ test_R1_bismark_hisat2_pe.bam

- name: Additional scenarios
shell: bash -l {0}
run: |
./bismark --pbat --genome ./test_files/ -1 ./test_files/test_R1.fastq.gz -2 ./test_files/test_R2.fastq.gz
./bismark --non_directional --genome ./test_files/ -1 ./test_files/test_R1.fastq.gz -2 ./test_files/test_R2.fastq.gz
./bismark --hisat2 --pbat --genome ./test_files/ -1 ./test_files/test_R1.fastq.gz -2 ./test_files/test_R2.fastq.gz
./bismark --hisat2 --non_directional --genome ./test_files/ -1 ./test_files/test_R1.fastq.gz -2 ./test_files/test_R2.fastq.gz
./legacy_perl/bismark --pbat --genome ./test_files/ -1 ./test_files/test_R1.fastq.gz -2 ./test_files/test_R2.fastq.gz
./legacy_perl/bismark --non_directional --genome ./test_files/ -1 ./test_files/test_R1.fastq.gz -2 ./test_files/test_R2.fastq.gz
./legacy_perl/bismark --hisat2 --pbat --genome ./test_files/ -1 ./test_files/test_R1.fastq.gz -2 ./test_files/test_R2.fastq.gz
./legacy_perl/bismark --hisat2 --non_directional --genome ./test_files/ -1 ./test_files/test_R1.fastq.gz -2 ./test_files/test_R2.fastq.gz

- name: bismark2bedGraph
shell: bash -l {0}
run: |
./bismark2bedGraph -o test.bedGraph --buffer 5G CpG_*
./bismark2bedGraph -o test.bedGraph --ucsc --buffer 5G CpG_*
./bismark2bedGraph -o test.bedGraph --CX --scaffolds CpG* CHG_* CHH_*
./bismark2bedGraph -o test.bedGraph --CX --ample_memory --zero_based CpG* CHH_* CHG_*
./legacy_perl/bismark2bedGraph -o test.bedGraph --buffer 5G CpG_*
./legacy_perl/bismark2bedGraph -o test.bedGraph --ucsc --buffer 5G CpG_*
./legacy_perl/bismark2bedGraph -o test.bedGraph --CX --scaffolds CpG* CHG_* CHH_*
./legacy_perl/bismark2bedGraph -o test.bedGraph --CX --ample_memory --zero_based CpG* CHH_* CHG_*

- name: Filte non-conversion
shell: bash -l {0}
run: |
./filter_non_conversion test_R1_bismark_bt2_pe.bam
./filter_non_conversion --consecutive --threshold 6 test_R1_bismark_bt2.bam
./filter_non_conversion test_R1_bismark_hisat2_pe.bam
./filter_non_conversion --consecutive --threshold 6 test_R1_bismark_hisat2.bam
./filter_non_conversion --percentage_cutoff 66 --minimum_count 4 test_R1_bismark_bt2_pe.bam
./filter_non_conversion --percentage_cutoff 66 --minimum_count 4 test_R1_bismark_hisat2_pe.bam
./legacy_perl/filter_non_conversion test_R1_bismark_bt2_pe.bam
./legacy_perl/filter_non_conversion --consecutive --threshold 6 test_R1_bismark_bt2.bam
./legacy_perl/filter_non_conversion test_R1_bismark_hisat2_pe.bam
./legacy_perl/filter_non_conversion --consecutive --threshold 6 test_R1_bismark_hisat2.bam
./legacy_perl/filter_non_conversion --percentage_cutoff 66 --minimum_count 4 test_R1_bismark_bt2_pe.bam
./legacy_perl/filter_non_conversion --percentage_cutoff 66 --minimum_count 4 test_R1_bismark_hisat2_pe.bam
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@

## Unreleased

### Repository layout

- **The legacy Perl toolchain moved from the repository root to [`legacy_perl/`](legacy_perl).** The 12 Perl scripts, their `plotly/` report assets, `test_data.fastq`, and the Perl-era release packager now live in `legacy_perl/`; the repository root is Rust-first. Nothing changes for any installed package — bioconda/Homebrew/containers build from `rust/` or from the immutable `v0.25.1` tag. Old `blob/master/<script>` deep links break (GitHub does not redirect file moves); use the [`v0.25.1` tag](https://github.com/FelixKrueger/Bismark/releases/tag/v0.25.1) for stable Perl references. If you run the Perl scripts from a clone on your `PATH`, point it at `legacy_perl/` (or check out `v0.25.1`).

### All tools

- **Short options are accepted in either letter case again, matching Perl Bismark ([#1084](https://github.com/FelixKrueger/Bismark/issues/1084)).** Perl's `Getopt::Long` is case-insensitive by default, so Perl Bismark accepted `-N`/`-L` *and* `-n`/`-l` for the Bowtie 2 seed settings — and its own help documents the uppercase spellings (`-n`/`-l` are described there as retired Bowtie 1's flags). The Rust CLI copied Perl's lowercase declarations verbatim, but clap is case-sensitive, so `bismark -N 1 -L 20` — the form the documentation shows — was rejected. Both spellings now work, so existing command lines and scripts port unchanged. Likewise `-v` is accepted alongside `-V` for `--version` across the suite, as Perl accepted it via single-dash abbreviation. Reported by @alexg9010.
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
> faithful default path, faster, and lower-memory — and this is the **supported default**. Get it via
> [Installation](#installation) (`mamba install -c bioconda bismark`, cargo, container, or prebuilt binaries) and see the
> **[Rust suite overview](https://felixkrueger.github.io/Bismark/rust/overview/)**.
> The original **Perl `v0.25.x`** (the scripts at this repo root) is now **legacy / maintenance-freeze**
> The original **Perl `v0.25.x`** (now in [`legacy_perl/`](legacy_perl)) is **legacy / maintenance-freeze**
> (critical fixes only; tagged [`v0.25.1`](https://github.com/FelixKrueger/Bismark/releases/tag/v0.25.1)).
> **New contributions should target the Rust suite** — see [CONTRIBUTING.md](CONTRIBUTING.md).

Expand Down Expand Up @@ -57,7 +57,7 @@ brew install bismark

### Legacy: the Perl Bismark (v0.25.x)

The original Perl scripts remain at this repo root (maintenance-freeze). To use them, download the [`v0.25.1` release](https://github.com/FelixKrueger/Bismark/releases/tag/v0.25.1) (or `mamba install bismark=0.25.1`); they need [Bowtie2](http://bowtie-bio.sourceforge.net/bowtie2/)/[HISAT2](https://ccb.jhu.edu/software/hisat2/index.shtml)/[minimap2](https://lh3.github.io/minimap2/minimap2.html) **and** [Samtools](http://www.htslib.org/) on the `PATH`.
The original Perl scripts live in [`legacy_perl/`](legacy_perl) (maintenance-freeze). To use them, download the [`v0.25.1` release](https://github.com/FelixKrueger/Bismark/releases/tag/v0.25.1) (or `mamba install bismark=0.25.1`); they need [Bowtie2](http://bowtie-bio.sourceforge.net/bowtie2/)/[HISAT2](https://ccb.jhu.edu/software/hisat2/index.shtml)/[minimap2](https://lh3.github.io/minimap2/minimap2.html) **and** [Samtools](http://www.htslib.org/) on the `PATH`.

## Links

Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Loading
Loading