Skip to content

Commit 8638843

Browse files
authored
feat: add snapatac2 (#18)
* (feat): add snapatac2 * (fix): temporary workaround for snapatac2 * (fix): post-install anndata * (fix): install to system anndata as well * (chore): add a rust deps cache * oops! * wow tough day * maybe * use `snap-atac2` latest * (fix): rearrange working-directory to handle lfs * fix: guess we're checking out into the root * fix: constraints path * fix: clone parent first
1 parent 23bd011 commit 8638843

1 file changed

Lines changed: 29 additions & 16 deletions

File tree

.github/workflows/integration-test.yml

Lines changed: 29 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -21,15 +21,16 @@ jobs:
2121
package:
2222
# extras should be a comma seperated list of strings, like `extras: "lazy,accelerated"`
2323
# The 'test' extra is always installed
24-
- {name: "mudata", extras: ""}
25-
- {name: "spatialdata", extras: ""}
26-
- {name: "scirpy", extras: ""}
27-
- {name: "muon", extras: ""}
28-
- {name: "scanpy", extras: ""}
29-
- {name: "squidpy", extras: ""}
30-
- {name: "scvi-tools", extras: ""}
31-
- {name: "pertpy", extras: "de"}
32-
- {name: "decoupler", extras: ""}
24+
- {name: "mudata", extras: "", use_lfs: false}
25+
- {name: "spatialdata", extras: "", use_lfs: false}
26+
- {name: "scirpy", extras: "", use_lfs: false}
27+
- {name: "muon", extras: "", use_lfs: false}
28+
- {name: "scanpy", extras: "", use_lfs: false}
29+
- {name: "squidpy", extras: "", use_lfs: false}
30+
- {name: "scvi-tools", extras: "", use_lfs: false}
31+
- {name: "pertpy", extras: "de", use_lfs: false}
32+
- {name: "decoupler", extras: "", use_lfs: false}
33+
- {name: "SnapATAC2", extras: "", use_lfs: true}
3334

3435
defaults:
3536
run:
@@ -42,19 +43,29 @@ jobs:
4243
GH_TOKEN: ${{ secrets.TOKEN_FOR_ISSUE_WRITE }}
4344

4445
steps:
46+
47+
- name: Create lfs dir
48+
if: ${{ matrix.package.use_lfs }}
49+
run: 'mkdir -p ${{ matrix.package.name }}'
50+
51+
- uses: nschloe/action-cached-lfs-checkout@v1
52+
if: ${{ matrix.package.use_lfs }}
53+
with:
54+
repository: scverse/${{ matrix.package.name }}
55+
fetch-depth: 0
4556

4657
- uses: actions/checkout@v4
58+
if: ${{ !matrix.package.use_lfs }}
4759
with:
60+
repository: scverse/${{ matrix.package.name }}
4861
fetch-depth: 0
4962
filter: blob:none
50-
path: integration-testing
51-
63+
5264
- uses: actions/checkout@v4
5365
with:
54-
repository: scverse/${{ matrix.package.name }}
5566
fetch-depth: 0
5667
filter: blob:none
57-
path: ${{ matrix.package.name }}
68+
path: integration-testing
5869

5970
- name: Install Python
6071
uses: actions/setup-python@v5
@@ -63,15 +74,18 @@ jobs:
6374

6475
- name: Install UV
6576
uses: hynek/setup-cached-uv@v2
77+
78+
# For snapatac2
79+
- name: Install rust-cache
80+
uses: Swatinem/rust-cache@v2
6681

6782
- name: Install AnnData and scverse package
6883
run: |
6984
EXTRAS="test"
7085
if [ -n "${{ matrix.package.extras }}" ]; then
7186
EXTRAS="$EXTRAS,${{ matrix.package.extras }}"
7287
fi
73-
uv pip install --compile --system ".[$EXTRAS]" git+https://github.com/scverse/anndata -c ../integration-testing/constraints.txt -v
74-
working-directory: ${{ matrix.package.name }}
88+
uv pip install --compile --system ".[$EXTRAS]" git+https://github.com/scverse/anndata -c ./integration-testing/constraints.txt -v
7589
7690
- name: Set failure type for install
7791
if: failure()
@@ -85,7 +99,6 @@ jobs:
8599
- name: Run test
86100
run: |
87101
pytest
88-
working-directory: ${{ matrix.package.name }}
89102
90103
- name: Set failure type for test
91104
if: failure() && env.failure_type != 'install'

0 commit comments

Comments
 (0)