-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyproject.toml
More file actions
98 lines (76 loc) · 2.63 KB
/
pyproject.toml
File metadata and controls
98 lines (76 loc) · 2.63 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
[project]
authors = [{name = "jgunstone", email = "j.gunstone@maxfordham.com"}]
description = "bdns references + configurable equipment references for drawings"
name = "bdns-plus"
dynamic = ["version"]
requires-python = ">= 3.11"
dependencies = [
"pyrulefilter>=0.5.0,<0.6",
"bsdd>=0.8.2,<0.9",
"pydantic>=2.8.0,<3",
"pydantic-settings>=2.8.0,<3",
"pycountry>=24.6.1,<25", "ipyautoui>=0.9.0,<0.10",
]
# [project.optional-dependencies]
# render = ["polars", "pandas", "ipywidgets", "ipydatagrid"] #"great_tables",
# ^ required for the `docs.py` module to render the bdns-plus data in documentation or report outputs
# ^ remove pandas, just use polars
[build-system]
build-backend = "hatchling.build"
requires = ["hatchling", "hatch-vcs"]
[tool.hatch.version]
source = "vcs"
[tool.hatch.build.hooks.vcs]
version-file = "src/bdns_plus/_version.py"
[tool.hatch.build.targets.sdist]
include = ["/src/bdns_plus"]
[tool.pixi.workspace]
channels = ["conda-forge"]
platforms = ["linux-64"]
[tool.pixi.dependencies]
ipywidgets = ">=8.1.5,<9"
jupytext = ">=1.17.0,<2"
jupyterlab = { version = ">=4.0.0,<5"}
frictionless = ">=5.18.0,<6" # TODO: add functionality for this
annotated-types = ">=0.7.0,<0.8"
pytest = "*"
ipydatagrid = "1.3.2"
polars = ">=1.3.0,<2"
[tool.pixi.pypi-dependencies]
bdns_plus = { path = ".", editable = true }
pytest-examples = { version = ">=0.0.18,<0.0.20" }
great-tables = { version = ">=0.20.0,<0.30.0" }
[tool.pixi.feature.docs.dependencies]
jupyterlab = { version = ">=4.0.0,<5"}
quarto = ">=1.6.40,<2"
jupytext = ">=1.17.0,<2"
pandas = "*"
polars = ">=1.3.0,<2"
ipywidgets = ">=8.1.5,<9"
itables = ">=2.3.0,<3"
ipydatagrid = ">=1.3.0,<1.5.0"
[tool.pixi.feature.docs.pypi-dependencies]
jupyterlab-quarto = { version = ">=0.3.4,<0.4"}
bsdd = { version = ">=0.8.1,<0.9"}
notebook-intelligence = { version = ">1.3.4,<2"}
jsonschema2md = { version = ">=1.5.2,<2"}
reactable = { version = ">=0.1.5,<0.2"}
[tool.pixi.feature.package.dependencies]
hatch = "*"
[tool.pixi.environments]
docs = ["docs"]
package = {features = ["package"], no-default-feature = true}
[tool.pixi.tasks]
tests = "pytest"
src-jlab = { cmd = "jupyter lab", cwd = "src/bdns_plus" }
delete-docs = { cmd = """rm -r _site
&& find . -name "*.quarto_ipynb" -type f -delete
""", cwd = "docs" }
delete-pkg = { cmd = "rm -r dist" }
open-docs = {cmd="/mnt/c/windows/explorer.exe index.html", cwd="docs/_site"} # this will only work on WSL
[tool.pixi.feature.docs.tasks]
jlab = { cmd = "jupyter lab", cwd = "docs" }
docs = { cmd = "quarto render .", cwd = "docs" }
preview = { cmd = "quarto preview .", cwd = "docs" }
[tool.pixi.feature.package.tasks]
build = "hatch build"