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
10 changes: 10 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
version: 2
updates:
- package-ecosystem: github-actions
directory: /
schedule:
interval: weekly
groups:
dependencies:
patterns:
- "*"
192 changes: 96 additions & 96 deletions .github/workflows/test_pytest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,101 +2,101 @@ name: tests_pytest
on: [push, pull_request, workflow_dispatch]

defaults:
run:
shell: bash -l {0}
run:
shell: bash -l {0}

jobs:
check_versions_matches:
name: Check deeptools version matches galaxy tools
runs-on: ubuntu-latest
if: github.base_ref == 'master'
steps:
- uses: actions/checkout@v4
- name: Check path
run: find /home/runner/work/deepTools/deepTools -name "pyproject.toml"
- name: Get Version of Deeptools
run: echo "deeptools_version=$(grep "version" /home/runner/work/deepTools/deepTools/pyproject.toml | awk '{print substr($NF, 2, length($NF) - 2)}')" >> $GITHUB_ENV
- name: Get Version of Galaxy tools
run: echo "galaxy_deeptools_version=$(grep "token.*TOOL_VERSION" /home/runner/work/deepTools/deepTools/galaxy/wrapper/deepTools_macros.xml | awk -F '>|<' '{print $3}')" >> $GITHUB_ENV
- name: Versions
run: |
echo deeptools version=${deeptools_version}
echo deeptools version in galaxy=${galaxy_deeptools_version}
- name: Fail PR if versions not matching
run: |
if [ -z $galaxy_deeptools_version ]; then
echo "galaxy_deeptools_version not defined change the github action"
exit 1
fi
if [ -z $deeptools_version ]; then
echo "deeptools_version not defined change the github action"
exit 1
fi
if [ "$galaxy_deeptools_version" != "$deeptools_version" ]; then
echo "versions do not match"
exit 1
fi
build-linux:
name: Test on Linux
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.9','3.10', '3.11', '3.12', '3.13']
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: 'pip'
- name: Install Rust
uses: actions-rust-lang/setup-rust-toolchain@v1
- name: build deeptools
run: |
python -m venv venv
source venv/bin/activate
pip install maturin
maturin develop --release --extras actions
- name: test deeptools
run: |
source venv/bin/activate
pytest -v
- name: build wheel
run: |
source venv/bin/activate
python -m build
- name: test wheel
run: |
source venv/bin/activate
pip install dist/*whl
build-osx:
name: Test on OSX
runs-on: macOS-latest
strategy:
matrix:
python-version: ['3.9','3.10', '3.11', '3.12', '3.13']
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: 'pip'
- name: Install Rust
uses: actions-rust-lang/setup-rust-toolchain@v1
- name: build deeptools
run: |
python -m venv venv
source venv/bin/activate
pip install maturin
maturin develop --release --extras actions
- name: test deeptools
run: |
source venv/bin/activate
pytest -v
- name: build wheel
run: |
source venv/bin/activate
python -m build
- name: test wheel
run: |
source venv/bin/activate
pip install dist/*whl
check_versions_matches:
name: Check deeptools version matches galaxy tools
runs-on: ubuntu-latest
if: github.base_ref == 'master'
steps:
- uses: actions/checkout@v7
- name: Check path
run: find /home/runner/work/deepTools/deepTools -name "pyproject.toml"
- name: Get Version of Deeptools
run: echo "deeptools_version=$(grep "version" /home/runner/work/deepTools/deepTools/pyproject.toml | awk '{print substr($NF, 2, length($NF) - 2)}')" >> $GITHUB_ENV
- name: Get Version of Galaxy tools
run: echo "galaxy_deeptools_version=$(grep "token.*TOOL_VERSION" /home/runner/work/deepTools/deepTools/galaxy/wrapper/deepTools_macros.xml | awk -F '>|<' '{print $3}')" >> $GITHUB_ENV
- name: Versions
run: |
echo deeptools version=${deeptools_version}
echo deeptools version in galaxy=${galaxy_deeptools_version}
- name: Fail PR if versions not matching
run: |
if [ -z $galaxy_deeptools_version ]; then
echo "galaxy_deeptools_version not defined change the github action"
exit 1
fi
if [ -z $deeptools_version ]; then
echo "deeptools_version not defined change the github action"
exit 1
fi
if [ "$galaxy_deeptools_version" != "$deeptools_version" ]; then
echo "versions do not match"
exit 1
fi
build-linux:
name: Test on Linux
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.12", "3.13", "3.14"]
steps:
- uses: actions/checkout@v7
- uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
cache: "pip"
- name: Install Rust
uses: actions-rust-lang/setup-rust-toolchain@v1
- name: build deeptools
run: |
python -m venv venv
source venv/bin/activate
pip install maturin
maturin develop --release --extras actions
- name: test deeptools
run: |
source venv/bin/activate
pytest -v
- name: build wheel
run: |
source venv/bin/activate
python -m build
- name: test wheel
run: |
source venv/bin/activate
pip install dist/*whl
build-osx:
name: Test on OSX
runs-on: macOS-latest
strategy:
matrix:
python-version: ["3.12", "3.13", "3.14"]
steps:
- uses: actions/checkout@v7
- uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
cache: "pip"
- name: Install Rust
uses: actions-rust-lang/setup-rust-toolchain@v1
- name: build deeptools
run: |
python -m venv venv
source venv/bin/activate
pip install maturin
maturin develop --release --extras actions
- name: test deeptools
run: |
source venv/bin/activate
pytest -v
- name: build wheel
run: |
source venv/bin/activate
python -m build
- name: test wheel
run: |
source venv/bin/activate
pip install dist/*whl
27 changes: 16 additions & 11 deletions .github/workflows/test_rust.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,19 @@
name: tests_rust
on: [push, pull_request, workflow_dispatch]
on:
push:
pull_request:
workflow_dispatch:
schedule:
- cron: "0 0 * * 0"

jobs:
cargo_test:
name: run cargo test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: rustup update stable && rustup default stable
- name: cargo build
run: cargo build --verbose
- name: cargo test
run: cargo test --verbose
cargo_test:
name: run cargo test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- run: rustup update stable && rustup default stable
- name: cargo build
run: cargo build --verbose
- name: cargo test
run: cargo test --verbose
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -69,4 +69,7 @@ target*
# jupyter notebooks
.ipynb_checkpoints
*.ipynb_checkpoints
*.ipynb
*.ipynb

# pixi
.pixi*
14 changes: 7 additions & 7 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,13 @@ crate-type = ["cdylib"]

[dependencies]
openssl-sys = { version = "*", features = ["vendored"] }
pyo3 = { version = "0.23.4", features = ["extension-module"] }
rust-htslib = "0.49.0"
rayon = "1.10.0"
itertools = "0.14.0"
bigtools = "0.5.3"
pyo3 = { version = "*", features = ["extension-module"] }
rust-htslib = "*"
rayon = "*"
tokio = "*"
itertools = "*"
bigtools = "*"
flate2 = "*"
tempfile = "*"
ndarray = "0.16.1"
ndarray-npy = "*"
ndarray = "*"
ndarray-npy = "*"
Loading
Loading