-
Notifications
You must be signed in to change notification settings - Fork 90
Expand file tree
/
Copy pathpyproject.toml
More file actions
99 lines (85 loc) · 1.77 KB
/
Copy pathpyproject.toml
File metadata and controls
99 lines (85 loc) · 1.77 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
[project]
name = "cufolio"
version = "26.4"
description = "Quantitative Portfolio Optimization developer example"
readme = "README.md"
requires-python = ">=3.11"
dependencies = [
"numpy>=2.0.0",
"pandas>=2.0",
"cvxpy>=1.9.2",
"scikit-learn>=1.5",
"seaborn>=0.13",
"yfinance>=0.2.0",
"pydantic>=2.12.5",
]
[project.optional-dependencies]
dev = [
"ruff==0.15.9",
"pytest>=9.0",
"pre-commit==4.3.0",
]
cuda12 = [
"cuml-cu12==26.6.*",
"cuopt-cu12==26.6.*",
]
cuda13 = [
"cuml-cu13==26.4.*",
"cuopt-cu13==26.4.*",
]
cuda13-socp = [
"cuopt-cu13==26.6.*",
]
[tool.ruff]
line-length = 88
target-version = "py311"
[tool.ruff.lint]
select = ["E", "F", "W", "I"]
ignore = ["E501"]
[tool.ruff.lint.per-file-ignores]
"**/__init__.py" = ["E402"]
[tool.ruff.lint.isort]
combine-as-imports = true
known-first-party = ["cufolio"]
[tool.pytest.ini_options]
markers = [
"gpu: requires an NVIDIA GPU with cuOpt/cuML (deselect with -m 'not gpu')",
]
[tool.setuptools]
packages = ["cufolio"]
py-modules = []
[tool.setuptools.package-dir]
cufolio = "src"
[tool.setuptools.package-data]
"*" = ["*.csv", "*.pkl", "*.parquet"]
[tool.uv]
managed = true
conflicts = [
[
{ extra = "cuda12" },
{ extra = "cuda13" },
],
[
{ extra = "cuda12" },
{ extra = "cuda13-socp" },
],
[
{ extra = "cuda13" },
{ extra = "cuda13-socp" },
],
]
[[tool.uv.index]]
name = "nvidia"
url = "https://pypi.nvidia.com"
[tool.uv.sources]
cuml-cu12 = { index = "nvidia" }
cuopt-cu12 = { index = "nvidia" }
cuml-cu13 = { index = "nvidia" }
cuopt-cu13 = { index = "nvidia" }
[build-system]
requires = ["setuptools>=64", "wheel"]
build-backend = "setuptools.build_meta"
[dependency-groups]
dev = [
"ipykernel>=7.1.0",
]