forked from PDB-REDO/tortoize
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyproject.toml
More file actions
116 lines (100 loc) · 2.73 KB
/
pyproject.toml
File metadata and controls
116 lines (100 loc) · 2.73 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
[build-system]
requires = [
"scikit-build-core>=0.11",
"pybind11>=3.0",
]
build-backend = "scikit_build_core.build"
[project]
name = "py_tortoize"
version = "0.1.0"
description = "Python bindings and scripts for PDB-REDO/tortoize"
authors = [{name = "Marcus D. Collins", email = "marcus.collins@astera.org"}]
requires-python = ">= 3.12, < 3.13"
dependencies = [
"gemmi", "loguru"
]
[tool.scikit-build]
minimum-version = "build-system.requires"
build-dir = "build/{wheel_tag}"
ninja.make-fallback = true
cmake.args = [
"-DPython3_EXECUTABLE=$ENV{PREFIX}/bin/python",
"-DPython3_ROOT_DIR=$ENV{PREFIX}",
"-DPython3_FIND_STRATEGY=LOCATION",
]
[tool.pixi.activation.env]
PYTHONNOUSERSITE = "1"
[tool.pixi.workspace]
channels = ["conda-forge"]
platforms = ["linux-64"]
preview = ["pixi-build"]
[tool.pixi.dependencies]
python = "3.12.*"
pip = "*"
cmake = "*"
ninja = "*"
zlib = "*"
gsl = "*"
pkg-config = "*"
# Compilers:
c-compiler = "*"
cxx-compiler = "*" # recommended by ChatGPT to force a consistent compiler for all libs
nlohmann_json = "*"
catch2 = "*"
py_tortoize = {path = "."}
#[tool.pixi.pypi-dependencies]
# This is left here commented as a warning to not include this, as it fails to install properly.
#py_tortoize = { path = ".", editable = false }
[tool.pixi.environments]
analysis = {features = ["analysis"]}
[tool.pixi.package]
name = "py_tortoize"
version = "0.1.0"
[tool.pixi.tasks.crawl]
cmd = "python src/py_tortoize/scan_and_collect_results.py --parent-directory {{parentdir}} --output-file-prefix {{output_prefix}} --target-file-pattern {{pattern}}"
default-environment = "analysis"
args = [
"parentdir", # top level directory to crawl for result files
# the filename prefix for the residue-level and protein-level output files
{"arg" = "output_prefix", "default" = "tortoize_output"},
# the pattern to search for structure files.
{"arg" = "pattern", "default" = "refined.cif"}
]
[tool.pixi.package.build]
backend = { name = "pixi-build-cmake", version = "0.*" }
[tool.pixi.package.build.config]
# FIXME: there must be some more general way to specify all of this...
extra-args = [
"-DCMAKE_BUILD_TYPE=Release",
"-DLINUX_FLAG=ON",
"-DPython3_EXECUTABLE=$PREFIX/bin/python",
"-DPython3_ROOT_DIR=$PREFIX",
"-DPython3_FIND_STRATEGY=LOCATION"
]
[tool.pixi.package.host-dependencies]
cmake = "3.25.*"
pybind11 = "*"
python = "3.12.*"
pcre2 = "*"
nlohmann_json = "*"
catch2 = "*"
[tool.pixi.package.build-dependencies]
cmake = "3.25.*"
pybind11 = "*"
python = "3.12.*"
pcre2 = "*"
nlohmann_json = "*"
catch2 = "*"
[dependency-groups]
analysis = [
"polars",
"mdtraj",
"marimo",
"matplotlib",
"seaborn",
"pandas",
"pyzmq",
"ipython",
"scikit-learn"
]
test = ["pytest"]