Skip to content

Commit 0823a6a

Browse files
authored
Merge pull request #174 from AllenInstitute/pixi_pyproject
pyproject: setup pyproject with pixi
2 parents 71a9c4c + 255b02c commit 0823a6a

File tree

3 files changed

+96
-43
lines changed

3 files changed

+96
-43
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,5 @@ htmlcov/
1515
.pytest_cache
1616
.vscode
1717
.idea/
18-
*.iml
18+
*.iml
19+
.pixi/

pyproject.toml

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
[project]
2+
name = "render-python"
3+
description = "python API client to interact with render databases (see https://github.com/saalfeldlab/render)"
4+
readme = "README.rst"
5+
license = {file = "LICENSE"}
6+
authors = [
7+
{name = "Forrest Collman"},
8+
{name = "Russel Torres"},
9+
{name = "Eric Perlman"},
10+
{name = "Sharmi Seshamani"}
11+
]
12+
maintainers = [
13+
{name = "Russel Torres"}
14+
]
15+
requires-python = ">3.8,<3.12"
16+
dynamic = ["version"]
17+
dependencies = [
18+
"requests",
19+
"scipy",
20+
"numpy",
21+
"pillow",
22+
"sphinxcontrib-napoleon",
23+
"decorator",
24+
"six"
25+
]
26+
27+
[project.urls]
28+
Repository = "https://github.com/AllenInstitute/render-python.git"
29+
30+
[project.optional-dependencies]
31+
test = [
32+
"coverage>=4.1",
33+
"mock>=2.0.0",
34+
"pep8>=1.7.0",
35+
# "pytest>4.6,<5.0",
36+
"pytest",
37+
"pytest-cov>=2.2.1",
38+
"pytest-pep8>=1.0.6",
39+
"pytest-xdist>=1.14",
40+
"flake8>=3.0.4",
41+
"pylint>=1.5.4",
42+
"jinja2",
43+
"ujson"
44+
]
45+
pypi-build = [
46+
"build",
47+
"twine"
48+
]
49+
50+
[build-system]
51+
requires = ["setuptools>=64", "setuptools_scm>=8"]
52+
build-backend = "setuptools.build_meta"
53+
54+
[tool.setuptools]
55+
py-modules = [
56+
"renderapi"
57+
]
58+
59+
[tool.setuptools_scm]
60+
version_file = "renderapi/_version.py"
61+
62+
# some downgrades from pixi's expectations
63+
[tool.pixi.system-requirements]
64+
linux = "5.0.0"
65+
libc = "2.27"
66+
67+
[tool.pixi.project]
68+
channels = ["conda-forge"]
69+
platforms = ["linux-64"]
70+
71+
[tool.pixi.pypi-dependencies]
72+
render-python = { path = ".", editable = true }
73+
74+
# conda-enabled features
75+
[tool.pixi.feature.pixi-base.dependencies]
76+
numpy = "*"
77+
scipy = "*"
78+
79+
[tool.pixi.environments]
80+
test = ["test"]
81+
conda = ["pixi-base"]
82+
conda-test = ["pixi-base", "test"]
83+
build = ["pypi-build"]
84+
85+
[tool.coverage.run]
86+
omit = ["integration_tests/*", "test/*"]
87+
88+
[tool.pixi.feature.test.tasks]
89+
test = "pytest --cov --cov-report=xml --junitxml=test-reports/test.xml"
90+
91+
[tool.pixi.feature.pypi-build.tasks]
92+
pypi-build = "python -m build"
93+
pypi-test-upload = "python -m twine upload --repository testpypi dist/*"
94+
pypi-test-deploy = "python -m build && python -m twine upload --repository testpypi dist/*"

setup.py

Lines changed: 0 additions & 42 deletions
This file was deleted.

0 commit comments

Comments
 (0)