Skip to content

Commit 3567445

Browse files
committed
Update documentation build process to use pixi and adjust dependencies
1 parent 490cad8 commit 3567445

File tree

4 files changed

+50
-22
lines changed

4 files changed

+50
-22
lines changed

.github/workflows/doc.yml

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,17 +15,11 @@ jobs:
1515
- uses: actions/checkout@v2
1616
with:
1717
fetch-depth: 0
18-
- name: Set up Python 3.11
19-
uses: actions/setup-python@v5
18+
- name: Set up pixi
19+
uses: prefix-dev/setup-pixi@v0.8.1
2020
with:
21-
python-version: 3.11
22-
- name: Prepare dependencies
23-
run: |
24-
sudo apt update && sudo apt install -y pandoc
25-
pip install -r docs/requirements.txt
26-
pip install mock pandoc
27-
pip uninstall rpy2 -y
28-
pip install --no-deps .
21+
pixi-version: latest
22+
cache: true
2923
- name: Build documentation
3024
run: |
31-
sphinx-build docs/ docs/out/
25+
pixi run -e docs docs

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,4 +137,6 @@ _build
137137
_templates
138138
# pixi environments
139139
.pixi/*
140+
.venv*
140141
!.pixi/config.toml
142+
scFates.*.rst

.readthedocs.yml

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,18 @@ version: 2
88
build:
99
os: ubuntu-24.04
1010
tools:
11-
python: "3.11"
12-
13-
# Build documentation in the docs/ directory with Sphinx
14-
sphinx:
15-
configuration: docs/conf.py
11+
python: "latest"
12+
jobs:
13+
create_environment:
14+
- asdf plugin add pixi
15+
- asdf install pixi latest
16+
- asdf global pixi latest
17+
install:
18+
# Install the docs environment
19+
- pixi install -e docs
20+
build:
21+
html:
22+
- pixi run -e docs sphinx-build -T -b html docs $READTHEDOCS_OUTPUT/html
1623

1724
formats:
1825
- pdf
19-
20-
python:
21-
install:
22-
- method: pip
23-
path: .
24-
- requirements: docs/requirements.txt

pyproject.toml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,12 @@ platforms = ["linux-64"]
2727
scFates = { path = ".", editable = true }
2828

2929
[tool.pixi.tasks]
30+
docs = "cd docs && make html"
3031

3132
[tool.pixi.environments]
3233
default = { solve-group = "default" }
3334
test = { features = ["test"], solve-group = "default" }
35+
docs = { features = ["docs"], solve-group = "docs", no-default-feature = true }
3436

3537
[tool.pixi.dependencies]
3638
python = "3.13.*"
@@ -42,3 +44,32 @@ pytest = "*"
4244

4345
[tool.pixi.feature.test.tasks]
4446
test = "pytest scFates/tests"
47+
48+
[tool.pixi.feature.docs.dependencies]
49+
python = "3.9.*"
50+
sphinx = ">=4.5.0"
51+
sphinx-rtd-theme = "*"
52+
sphinx-book-theme = "*"
53+
sphinxext-opengraph = "*"
54+
sphinx-copybutton = "*"
55+
matplotlib = "*"
56+
nbsphinx = "*"
57+
ipython = "*"
58+
anndata = "*"
59+
numpy = "*"
60+
pandas = "*"
61+
cycler = "*"
62+
docutils = "*"
63+
typing_extensions = "*"
64+
importlib_metadata = "*"
65+
mock = "*"
66+
67+
[tool.pixi.feature.docs.pypi-dependencies]
68+
scFates = { path = ".", editable = true }
69+
scanpydoc = { version = ">=0.7.4", extras = ["typehints"] }
70+
readthedocs-sphinx-ext = "*"
71+
Jinja2 = ">=3.1.6"
72+
73+
[tool.pixi.feature.docs.tasks]
74+
docs = "cd docs && make html"
75+
docs-build = "sphinx-build -T -b html docs"

0 commit comments

Comments
 (0)