-
Notifications
You must be signed in to change notification settings - Fork 0
/
pixi.toml
112 lines (92 loc) · 3.24 KB
/
pixi.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
## Global stuff
[project]
name = "delft_fiat"
version = "0.1.0"
description = "Pixi for Delft-FIAT."
authors = ["B.W. Dalmijn <[email protected]>"]
channels = ["conda-forge"]
platforms = ["linux-64", "win-64"]
## The different tasks of this project
[tasks]
# Installation
install = { depends_on = ["install-fiat", "install-pre-commit"] }
install-fiat = "pip install --no-deps --editable ."
install-pre-commit = "pre-commit install"
# Repo related tasks
generate-data = { cmd = ["python", ".testdata/create_test_data.py"] }
lint = { cmd = ["pre-commit", "run", "--all"] }
# Docker related stuff (expand in future)
docker-clean = { cmd = ["docker", "system", "prune", "-f"] }
# Documentation generation
docs = { depends_on = ["generate-api", "interlink-docs", "quarto-render"] }
docs-quick = { depends-on = ["interlink-docs", "quarto-quick"] }
docs-slim = { depends-on = ["interlink-docs", "quarto-render"] }
generate-api = { cmd = ["python", "docs/api.py", "docs/_quarto.yml"] }
interlink-docs = { cmd = ["python", "docs/inv.py", "interlinks", "docs/_quarto.yml"] }
quarto = { cmd = ["quarto", "render"] }
quarto-quick = { cmd = ["quarto", "render", "docs"] }
quarto-render = { cmd = ["quarto", "render", "docs", "--execute"] }
serve = { cmd = ["python", "-m", "http.server", "8000", "-d", "docs/_site"] }
# Testing
test = { cmd = ["pytest"] }
test-lf = { cmd = ["pytest", "--lf", "--tb=short"] }
test-cov = { cmd = ["pytest", "--verbose", "--cov=fiat", "--cov-report", "xml"] }
test-cov-local = { cmd = ["pytest", "--verbose", "--cov", "--cov-report", "html",] }
# Clean up (some of) the temporary files
clean = { depends_on = [
"clean-env-files",
"clean-bin",
"clean-dist",
"clean-docs",
] }
clean-env-files = { cmd = ["rm", "-f", "*environment.yml"] }
clean-bin = { cmd = ["rm", "-rf", "bin"] }
clean-dist = {cmd = ["rm", "-rf", "dist"] }
clean-docs = { cmd = ["rm", "-rf", "docs/_site"] }
## Dependencies
[dependencies]
gdal = ">=3.5"
numpy = "*"
regex = "*"
tomli = "*"
pip = ">=24.0,<25"
[feature.py310.dependencies]
python = "3.10.*"
[feature.py311.dependencies]
python = "3.11.*"
[feature.py312.dependencies]
python = "3.12.*"
[feature.all.dependencies]
setuptools = ">=61.0.0"
[feature.build.dependencies]
pyinstaller = ">=6.0.0"
[feature.dev.dependencies]
cython = "*"
pre-commit = "*"
ruff = "*"
[feature.docs.dependencies]
jupyter = "*"
jupyter-cache = "*"
matplotlib = "*"
pandas = "*"
quarto = "1.3.450"
quartodoc = ">=0.7.6"
[feature.extra.dependencies]
libgdal-netcdf = "*"
tomli-w = "*"
[feature.test.dependencies]
pytest = ">=2.7.3"
pytest-cov = "*"
pytest-dependency = "*"
pytest-mock = "*"
responses = "*"
## Define the environments
[environments]
build = { features = ["py312", "all", "build", "extra"], solve-group = "py312"}
default = { features = ["py312", "extra"], solve-group = "py312"}
dev = { features = ["py312", "all", "dev", "docs", "extra", "test"], solve-group = "py312" }
docs = { features = ["py312", "all", "docs", "extra"], solve-group = "py312"}
min = { features = ["py312"], solve-group = "py312"}
test-py312 = {features = ["py312", "all", "extra", "test"], solve-group = "py312"}
test-py311 = {features = ["py311", "all", "extra", "test"], solve-group = "py311"}
test-py310 = {features = ["py310", "all", "extra", "test"], solve-group = "py310"}