Skip to content

Commit 82e4abe

Browse files
committed
DEV: add a basic Pixi workspace
[skip ci]
1 parent a88067a commit 82e4abe

File tree

3 files changed

+61
-8
lines changed

3 files changed

+61
-8
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -130,3 +130,5 @@ dmypy.json
130130

131131
# macOS specific iles
132132
.DS_Store
133+
134+
pixi.lock

docs/dev/releasing.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,14 +44,14 @@
4444

4545
- [ ] **Update the version.**
4646

47-
You must edit
47+
You must edit both of
4848

4949
```
5050
array_api_compat/__init__.py
51+
pyproject.toml
5152
```
5253

53-
and update the version (the version is not computed from the tag because
54-
that would break vendorability).
54+
and update the version.
5555

5656
- [ ] **Update the [changelog](../changelog.md).**
5757

pyproject.toml

Lines changed: 56 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
[build-system]
2-
requires = ["setuptools", "setuptools-scm"]
2+
requires = ["setuptools"]
33
build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "array-api-compat"
7-
dynamic = ["version"]
7+
version = "1.13.0"
88
description = "A wrapper around NumPy and other array libraries to make them compatible with the Array API standard"
99
readme = "README.md"
1010
requires-python = ">=3.10"
@@ -54,13 +54,64 @@ dev = [
5454
homepage = "https://data-apis.org/array-api-compat/"
5555
repository = "https://github.com/data-apis/array-api-compat/"
5656

57-
[tool.setuptools.dynamic]
58-
version = {attr = "array_api_compat.__version__"}
59-
6057
[tool.setuptools.packages.find]
6158
include = ["array_api_compat*"]
6259
namespaces = false
6360

61+
62+
# Pixi
63+
64+
[tool.pixi.workspace]
65+
channels = ["https://prefix.dev/conda-forge"]
66+
platforms = ["linux-64", "osx-arm64", "win-64"]
67+
preview = ["pixi-build"]
68+
69+
### array-api-compat package definition ###
70+
71+
[tool.pixi.package.build.backend]
72+
name = "pixi-build-python"
73+
version = "*"
74+
75+
[tool.pixi.package.host-dependencies]
76+
setuptools = "*"
77+
78+
### workspace environments ###
79+
80+
[tool.pixi.environments]
81+
docs = ["docs"]
82+
tests = ["tests"]
83+
84+
### default feature definition ###
85+
86+
[tool.pixi.dev]
87+
# this pulls in array-api-compat's host dependencies
88+
array-api-compat.path = "."
89+
90+
[tool.pixi.dependencies]
91+
array-api-compat.path = "."
92+
93+
### non-default feature definitions ###
94+
95+
[tool.pixi.feature.tests.dependencies]
96+
pytest = "*"
97+
array-api-strict = "*"
98+
numpy = "*"
99+
100+
[tool.pixi.feature.tests.tasks]
101+
tests = { cmd = "pytest -v", description = "Run tests" }
102+
103+
[tool.pixi.feature.docs.dependencies]
104+
furo = "*"
105+
linkify-it-py = "*"
106+
myst-parser = "*"
107+
sphinx = "*"
108+
sphinx-copybutton = "*"
109+
sphinx-autobuild = "*"
110+
111+
[tool.pixi.feature.docs.tasks]
112+
docs = { cmd = "make html", cwd = "docs", description = "Build docs" }
113+
114+
64115
[tool.ruff.lint]
65116
preview = true
66117
select = [

0 commit comments

Comments
 (0)