-
Notifications
You must be signed in to change notification settings - Fork 73
Expand file tree
/
Copy pathpyproject.toml
More file actions
87 lines (74 loc) · 1.74 KB
/
pyproject.toml
File metadata and controls
87 lines (74 loc) · 1.74 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
[project]
name = "cufolio"
version = "25.10"
description = "Quantitative Portfolio Optimization developer example"
readme = "README.md"
requires-python = ">=3.11"
dependencies = [
"numpy>=2.0.0",
"pandas>=2.0",
"cvxpy>=1.7.0",
"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.4.*",
"cuopt-cu12==26.04.*",
]
cuda13 = [
"cuml-cu13==26.4.*",
"cuopt-cu13==26.04.*",
]
[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
[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" },
],
]
[[tool.uv.index]]
name = "nvidia"
url = "https://pypi.nvidia.com"
[tool.uv.sources]
# Build cvxpy from the upstream master branch instead of the PyPI wheel so
# we can pull in QP-via-cuOpt fixes ahead of the next release. uv.lock pins
# the resolved commit SHA for reproducibility; bump with
# `uv lock --upgrade-package cvxpy`.
cvxpy = { git = "https://github.com/cvxpy/cvxpy.git", branch = "master" }
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",
]