forked from osl-incubator/scicookie
-
Notifications
You must be signed in to change notification settings - Fork 0
/
pyproject.toml
91 lines (79 loc) · 1.82 KB
/
pyproject.toml
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
[tool.poetry]
name = "scicookie"
version = "0.6.3" # semantic-release
description = "Cookiecutter template for a Python package"
authors = ["Ivan Ogasawara <ivan.ogasawara@gmail.com>"]
license = "BSD-3-Clause"
include = [
{path = "src/scicookie/cookiecutter.json"},
{path = "src/scicookie/{{cookiecutter.project_slug}}"},
{path = "src/scicookie/hooks"},
{path = "src/scicookie/profiles"},
]
[tool.poetry.scripts]
"scicookie" = "scicookie.__main__:app"
[tool.poetry.dependencies]
python = ">=3.8.1,<3.12"
cookieninja = "1.0.0"
sh = "^2.0.4"
colorama = "^0.4.6"
inquirer = "^3.1.3"
pyyaml = ">=6.0.1"
[tool.poetry.group.dev.dependencies]
pytest = ">=7"
pre-commit = ">=3"
ruff = ">=0.1.5"
mypy = ">=1.5"
pytest-cov = ">=3"
pytest-cookies = ">=0.6.1"
Sphinx = ">=4.4"
jupyterlab = ">=3.5.1"
jupyter-book = ">=0.12.3"
myst-parser = ">=0.15"
makim = "1.8.3"
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
[tool.mypy]
no_strict_optional = false
exclude = '''(?x)(
src/scicookie/{{cookiecutter.project_slug}}/
| src/scicookie/hooks/*
)''' # TOML's single-quoted strings do not require escaping backslashes
[[tool.mypy.overrides]]
module = [
"colorama",
"inquirer",
"sh",
"yaml",
]
ignore_missing_imports = true
[tool.ruff]
line-length = 79
force-exclude = true
src = ["./"]
exclude = [
'src/scicookie/\{\{cookiecutter.project_slug\}\}',
'src/scicookie/hooks',
]
[tool.ruff.lint]
select = [
"E", # pycodestyle
"F", # pyflakes
"D", # pydocstyle
"YTT", # flake8-2020
"PL", # PL
"RUF", # Ruff-specific rules
"I001", # isort
]
[tool.ruff.pydocstyle]
convention = "numpy"
[tool.ruff.isort]
# Use a single line between direct and from import
lines-between-types = 1
[tool.ruff.format]
quote-style = "double"
[tool.pytest.ini_options]
testpaths = [
"tests",
]