-
Notifications
You must be signed in to change notification settings - Fork 205
Expand file tree
/
Copy pathpixi.toml
More file actions
116 lines (102 loc) · 3.81 KB
/
Copy pathpixi.toml
File metadata and controls
116 lines (102 loc) · 3.81 KB
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
[workspace]
name = "rattler"
description = "Rust library to install conda environments"
authors = [
"Wolf Vollprecht <wolf@prefix.dev>",
"Bas Zalmstra <bas@prefix.dev>",
"Tim de Jager <tim@prefix.dev>",
"Ruben Arts <ruben@prefix.dev>",
]
channels = ["https://prefix.dev/conda-forge"]
platforms = ["linux-64", "win-64", "osx-64", "osx-arm64"]
license = "BSD-3-Clause"
preview = ["pixi-build"]
exclude-newer = "7d"
requires-pixi = ">=0.67.0"
[workspace.build-variants]
# Use the same Rust version everywhere
rust_compiler_version = ["1.95.0"]
[tasks]
build = "cargo build"
check = "cargo check"
# libsolv compilation cannot find pixi's clang for some reason
# so we skip that test for now
test = "cargo nextest run --workspace --no-default-features --features=indicatif,tokio,serde,reqwest,sparse,gateway,resolvo,libsolv_c,s3,edit,rattler_config,cli-tools -E 'not test(libsolv_bindings_up_to_date)' --no-fail-fast"
rattler = "cargo run --bin rattler --release --"
doc = "RUSTDOCFLAGS='-Dwarnings -Wunreachable-pub' cargo doc --no-deps --all --all-features"
[dependencies]
cxx-compiler = "~=1.11.0"
openssl = "~=3.1"
make = "~=4.3"
pkg-config = "~=0.29.2"
rust = "~=1.95.0"
cmake = "~=3.26.4"
cargo-nextest = ">=0.9.91,<0.10"
# for rust-analyzer
rust-src = "~=1.95.0"
[target.linux-64.dependencies]
clang = ">=18.1.8,<19.0"
compilers = ">=1.6.0"
mold = ">=2.33.0,<3.0"
# Use cmake to build aws-lc-sys, because conda's CFLAGS inject -O2 which
# overrides the -O0 required by jitterentropy-base.c, causing a build failure.
[activation.env]
AWS_LC_SYS_CMAKE_BUILDER = "1"
[target.linux-64.activation]
scripts = ["scripts/activate_linux.sh"]
[feature.lint.dependencies]
ruff = ">=0.14.1,<0.15"
typos = ">=1.23.1,<2"
dprint = ">=0.50.0,<0.51"
lefthook = ">=2.0.11,<3"
actionlint = ">=1.7.7,<2"
shellcheck = ">=0.10.0,<0.11"
[feature.lint.target.unix.dependencies]
vouch = "*"
[feature.lint.tasks]
actionlint = { cmd = "actionlint", env = { SHELLCHECK_OPTS = "-e SC2086 -e SC2046 -e SC2028" } }
dprint-check = { cmd = "dprint check --log-level=silent", description = "Check formatting with dprint" }
dprint-fmt = { cmd = "dprint fmt --incremental=false", description = "Format with dprint" }
lefthook = { cmd = "lefthook", description = "Run lefthook" }
lint = { depends-on = [
"lint-fast",
"lint-slow",
], description = "Run all linters and formatters on all code" }
lint-fast = { cmd = "lefthook run pre-commit --all-files --force", description = "Run all fast linters and formatters on all code (no clippy)" }
lint-slow = { cmd = "lefthook run pre-push --all-files --force", description = "Run all slow linters and formatters on all code" }
pre-commit-install = "lefthook install"
pre-commit-install-minimal = "lefthook install pre-commit"
typos = "typos --force-exclude"
ruff-format = "ruff format --force-exclude"
ruff-lint = "ruff check --fix --exit-non-zero-on-fix --force-exclude"
cargo-fmt = "cargo fmt --all"
cargo-clippy = "cargo clippy --all-targets --workspace -- -D warnings -Dclippy::dbg_macro"
[environments]
lint = { features = ["lint"], solve-group = "default" }
#------------------------------
# Minio E2E test
#------------------------------
[feature.minio.dependencies]
minio-server = ">=2025.1.20,<2026"
minio-client = ">=2025.7.21,<2026"
rattler_index = { path = "crates/rattler_index" }
rattler = { path = "crates/rattler-bin" }
nushell = ">=0.106.1,<0.107"
[feature.minio.tasks]
e2e-s3-minio = "nu scripts/e2e/s3-minio.nu"
[environments.minio]
features = ["minio"]
no-default-feature = true
#------------------------------
# S3 E2E test
#------------------------------
[feature.s3.dependencies]
awscli = ">=2.28.18,<3"
rattler_index = { path = "crates/rattler_index" }
rattler = { path = "crates/rattler-bin" }
nushell = ">=0.106.1,<0.107"
[feature.s3.tasks]
e2e-s3-aws = "nu scripts/e2e/s3-aws.nu"
[environments.s3]
features = ["s3"]
no-default-feature = true