-
Notifications
You must be signed in to change notification settings - Fork 136
Expand file tree
/
Copy pathpixi.toml
More file actions
150 lines (126 loc) · 3.51 KB
/
Copy pathpixi.toml
File metadata and controls
150 lines (126 loc) · 3.51 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
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
[workspace]
name = "bioconda-utils"
version = "0.0.0"
platforms = ["linux-64", "osx-64"]
channels = ["conda-forge", "bioconda"]
[dependencies]
# pinnings
conda-forge-pinning = "==2026.01.07.13.16.30"
# basics
python = "3.13.*"
setuptools = "81.*"
setuptools-scm = ">=8"
conda = "26.3.*"
conda-libmamba-solver = "26.3.*"
conda-build = "26.3.*"
conda-index = "0.10.*"
conda-package-streaming = "0.12.*"
mamba = "2.5.*"
# CLI
typer = "0.26.*"
# Logging
colorlog = "6.*"
tqdm = "4.67.*" # Progress monitor
yaspin = "3.*"
# Recipe YAML parsing
"ruamel.yaml" = "0.18.*"
pyaml = "26.2.*" # Faster YAML parser (deprecate?)
networkx = "3.6.*" # (networkx>3.3 needs python>=3.10)
pandas = "3.0.*"
# Avoid large mkl package (pulled in by pandas)
libblas = { version = "*", build = "*openblas" }
boltons = "25.0.*"
jsonschema = "4.26.*" # JSON schema verification
jinja2 = "3.1.*"
# anaconda_upload
anaconda-client = "1.14.*"
# mulled test and container build
galaxy-tool-util = "25.*"
involucro = "1.1.*"
# docker upload
skopeo = "1.22.*"
# find/xargs copy built packages from container
findutils = "*"
# well - git
git = "2.*"
# hosters - special regex not supported by RE
regex = "2026.*"
# asyncio
aiohttp = "3.13.*" # HTTP lib; pinning to reflect dependabot alert
aiohttp-jinja2 = "*" # jinja2 renderer for aiohttp.web
aiohttp-session = "*"
aiohttp-security = "*"
aiofiles = "25.*" # async open
aioftp = "0.27.*" # FTP lib
backoff = "2.2.*" # retrying of failed API calls
cachetools = "7.0.*" # request caching (NEEDED?)
# client API wrappers
gitpython = "3.1.*" # githandler
gidgethub = "5.*" # githubhandler
pyjwt = ">=2.4.0" # githubhandler (JWT signing), needs >=2.4.0, CVE-2022-29217
# bioconductor-skeleton
beautifulsoup4 = "4.*"
# The bioconductor skeleton needs this
requests = "2.33.*"
# merge handling
pygithub = "*"
# caching
diskcache = "5.*"
platformdirs = "4.*"
# build failure output
tabulate = "0.10.*"
# resource reporting for builds
psutil = "*"
[feature.test.dependencies]
pip = "*"
pytest = ">=3.3"
pytest-cov = "*"
[feature.dev.dependencies]
ty = "*"
ruff = "*"
"go-shfmt" = "*"
shellcheck = "*"
just = "*"
[environments]
default = ["test"]
dev = ["test", "dev"]
[tasks.format]
cmd = "ruff format ."
default-environment = "dev"
description = "Format Python files"
[tasks.install]
cmd = "python -m pip install --no-deps --no-build-isolation ."
default-environment = "dev"
description = "Build and install bioconda-utils into the Pixi environment"
[tasks.global-install]
cmd = """
mkdir -p ~/.local/bin
ln -sf "$CONDA_PREFIX/bin/bioconda-utils" ~/.local/bin/bioconda-utils
"""
depends-on = ["install"]
default-environment = "dev"
description = "Make the Pixi-installed CLI available in ~/.local/bin"
[tasks.regenerate-requirements]
cmd = "python scripts/generate-requirements-txt.py"
description = "Regenerate the shipped conda requirements file"
[tasks.check-requirements]
cmd = "python scripts/generate-requirements-txt.py --check"
description = "Check that the shipped conda requirements file is current"
[tasks.check]
cmd = "ruff check . && ty check ."
depends-on = ["check-requirements"]
default-environment = "dev"
description = "Run fast Python static checks"
[tasks.test]
cmd = "pytest"
depends-on = ["install"]
default-environment = "dev"
description = "Run the full test suite (slow)"
[tasks.shfmt]
cmd = "shfmt"
default-environment = "dev"
description = "Run shfmt with arguments supplied by the caller"
[tasks.shellcheck]
cmd = "shellcheck"
default-environment = "dev"
description = "Run ShellCheck with arguments supplied by the caller"