forked from prefix-dev/pixi
-
Notifications
You must be signed in to change notification settings - Fork 0
/
pixi.toml
138 lines (123 loc) · 4 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
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
[project]
authors = [
"Wolf Vollprecht <[email protected]>",
"Bas Zalmstra <[email protected]>",
"Tim de Jager <[email protected]>",
"Ruben Arts <[email protected]>",
]
description = "Package management made easy!"
name = "pixi"
# Using faster repodata fetching from our experimental fast channel, which implements https://github.com/conda/ceps/pull/75
channels = ["https://fast.prefix.dev/conda-forge"]
platforms = ["linux-64", "win-64", "osx-64", "osx-arm64"]
[dependencies]
python = "3.12.*"
[tasks]
build = "cargo build --release"
bump = "tbump --only-patch $RELEASE_VERSION"
install = "cargo install --path . --locked"
pypi-proxy = "python ./tests/pypi_proxy.py"
release = "python scripts/release.py"
run-all-examples = { cmd = "python ./tests/run_all_examples.py --pixi-exec $CARGO_TARGET_DIR/release/pixi", depends-on = [
"build",
] }
test = "cargo test"
test-all = "cargo test --all-features"
[feature.pytest.dependencies]
filelock = ">=3.16.0,<4"
mypy = ">=1.11,<1.12"
pytest = "*"
pytest-rerunfailures = ">=14.0,<15"
pytest-xdist = ">=3.6.1,<4"
rich = ">=13.7.1,<14"
tomli-w = ">=1.0,<2"
[feature.pytest.tasks]
test-common-wheels-ci = { cmd = "pytest --numprocesses=auto --verbose tests/wheel_tests/" }
test-common-wheels-dev = { cmd = "pytest --numprocesses=auto tests/wheel_tests/", depends-on = [
"build",
] }
test-integration-ci = "pytest --numprocesses=auto --verbose tests/integration"
test-integration-dev = { cmd = "pytest --numprocesses=auto tests/integration", depends-on = [
"build",
] }
typecheck-integration = "mypy --strict tests/integration"
[feature.dev.dependencies]
# Needed for the citation
cffconvert = ">=2.0.0,<2.1"
tbump = ">=6.9.0,<6.10"
[feature.lint.dependencies]
pre-commit = ">=3.7.1,<4"
pre-commit-hooks = ">=4.6.0,<5"
ruff = ">=0.4.8,<0.5"
taplo = ">=0.9.1,<0.10"
typos = ">=1.23.1,<2"
[feature.lint.tasks]
lint = { depends-on = ["pre-commit-run"] }
pre-commit-install = "pre-commit install"
pre-commit-install-minimal = "pre-commit install -t=pre-commit"
pre-commit-run = "pre-commit run --all-files"
toml-format = { cmd = "taplo fmt", env = { RUST_LOG = "warn" } }
toml-lint = "taplo lint --verbose **/pixi.toml"
[feature.build.dependencies]
# Needed for building
git = ">=2.46.0,<3"
openssl = "3.*"
pkg-config = "0.29.*"
rust = "~=1.80.0"
[feature.build.target.linux-64.dependencies]
clang = ">=18.1.8,<19.0"
compilers = ">=1.6.0"
make = ">=4.3,<5"
mold = ">=2.33.0,<3.0"
[feature.build.target.linux-64.activation]
scripts = ["scripts/activate.sh"]
[feature.build.target.osx-arm64.activation]
scripts = ["scripts/activate.sh"]
[feature.build.target.win-64.activation]
scripts = ["scripts/activate.bat"]
[feature.docs.dependencies]
cairosvg = "2.7.1.*"
git-cliff = ">=2.4.0,<3"
mdx_truly_sane_lists = ">=1.3,<2"
mike = "2.0.0.*"
mkdocs = "1.5.3.*"
mkdocs-material = ">=9.5.20,<10"
mkdocs-redirects = ">=1.2.1,<2"
pillow = ">=9.4.0"
[feature.docs.tasks]
build-docs = "mkdocs build --strict"
bump-changelog = "git-cliff --unreleased --prepend CHANGELOG.md --tag $RELEASE_VERSION"
deploy-dev = "mike deploy --push dev devel"
deploy-latest = "mike deploy --push --update-aliases $RELEASE_VERSION latest"
docs = "mkdocs serve"
mike-serve = "mike serve"
[feature.schema.tasks]
generate-schema = { cmd = "python model.py > schema.json", cwd = "schema" }
test-schema = { cmd = "pytest -s", depends-on = "generate-schema", cwd = "schema" }
[feature.schema.dependencies]
jsonschema = "*"
pydantic = ">=2.6.3,<2.7"
pyyaml = ">=6.0.1,<6.1"
[feature.pypi-gen.dependencies]
hatchling = ">=1.25.0,<2"
python-build = ">=1.2.2,<2"
[feature.pypi-gen.tasks]
pypi-gen-indexes = "python tests/pypi-indexes/generate-indexes.py"
[environments]
default = { features = [
"build",
"dev",
"schema",
"pytest",
], solve-group = "default" }
docs = { features = [
"docs",
], no-default-feature = true, solve-group = "default" }
lint = { features = [
"lint",
], no-default-feature = true, solve-group = "default" }
pypi-gen = { features = ["pypi-gen"] }
schema = { features = [
"schema",
"pytest",
], no-default-feature = true, solve-group = "default" }