-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathpyproject.toml
More file actions
108 lines (99 loc) · 2.86 KB
/
pyproject.toml
File metadata and controls
108 lines (99 loc) · 2.86 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
[project]
name = "pixi-project"
version = "0.1.0"
description = "A template for creating a Python project with Pixi"
authors = [{name = "eLearning Hub", email = "behzad@mechatronics3d.com"}]
requires-python = ">= 3.11"
readme = "README.md"
license = {text = "MIT"}
classifiers = [
"Development Status :: 3 - Alpha",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
"Topic :: Scientific/Engineering",
]
dependencies = [
"python-dotenv>=1.0.0"
]
[project.urls]
Homepage = "https://github.com/eLearningHub/pixi-template"
Repository = "https://github.com/eLearningHub/pixi-template.git"
[build-system]
build-backend = "hatchling.build"
requires = ["hatchling"]
[tool.pixi.project]
channels = ["conda-forge"]
platforms = ["linux-64", "osx-arm64"]
[tool.pixi.pypi-dependencies]
pixi-project = { path = ".", editable = true }
[tool.pixi.feature.dev.pypi-dependencies]
pytest = ">=8.0.0"
pytest-cov = ">=4.1.0"
pytest-mock = ">=3.10.0"
black = ">=23.1.0"
isort = ">=5.12.0"
flake8 = ">=6.0.0"
mypy = ">=1.0.0"
bandit = ">=1.7.5"
safety = ">=2.3.5"
pre-commit = ">=3.0.0"
sphinx = ">=6.1.3"
sphinx-click = ">=4.4.0"
furo = ">=2023.3.27"
myst-parser = ">=1.0.0"
xdoctest = ">=1.1.0"
coverage = ">=7.2.1"
pyupgrade = ">=3.3.1"
nox = ">=2023.4.22"
[tool.pixi.tasks]
start = "python src/main.py"
test = "pytest tests/"
lint = "ruff check ."
format = "ruff format ."
docs = "cd docs; quarto render"
mkdocs = "mkdocs serve"
cli = """python -m src.pixi_project.cli"""
install-cli = "pip install -e ."
install-dev = """
pip install pytest pytest-cov pytest-mock black isort flake8 mypy bandit safety pre-commit sphinx sphinx-click furo myst-parser xdoctest coverage pyupgrade nox
"""
install-quarto-extensions = '''
cd docs;
quarto add quarto-ext/fontawesome;
quarto install extension grantmcdermott/quarto-revealjs-clean;
quarto install extension mikemahoney218/quarto-arxiv;
quarto install tinytex;
'''
sdocs = "python -m pip install -e . && cd docs && python -m sphinx -b html . _build"
[tool.pixi.dependencies]
pytest = ">=8.3.5,<9"
pytest-cov = ">=6.0.0,<7"
pytest-mock = ">=3.14.0,<4"
typer = ">=0.15.2,<0.16"
typing = ">=3.10.0.0,<4"
quarto = ">=1.5.57,<2"
deno = ">=1.41.0,<1.42"
python-pptx = ">=1.0.2,<2"
jupyter = ">=1.1.1,<2"
pandas = ">=2.2.3,<3"
numpy = ">=2.2.1,<3"
scikit-learn = "*"
statsmodels = ">=0.14.4,<0.15"
python-dotenv = ">=1.0.1,<2"
typeguard = ">=4.4.2,<5"
pip = ">=25.0.1,<26"
ruff = ">=0.10.0,<0.11"
sphinx = ">=8.2.3,<9"
sphinx-click = ">=6.0.0,<7"
furo = ">=2024.8.6,<2025"
myst-parser = ">=4.0.1,<5"
[tool.pytest.ini_options]
testpaths = ["tests"]
python_files = ["test_*.py"]
addopts = "-ra -q"
markers = ["integration: marks tests as integration tests that require real credentials"]
[tool.ruff]
select = ["E", "F", "I", "N", "W", "B", "UP"]
line-length = 100