-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpyproject.toml
114 lines (98 loc) · 2.92 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
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
[build-system]
requires = ["poetry-core>=1.0.0", "poetry-dynamic-versioning>=1.0.0,<2.0.0"]
build-backend = "poetry_dynamic_versioning.backend"
[tool.poetry-dynamic-versioning]
enable = true
strict = false
vcs = "git"
# The "pep440" style appends the git commit hash to the version number when there are commits
# on `main` since the last tag.
style = "pep440"
# Append a flag to the version number if there are uncommitted changes.
dirty = true
[tool.poetry]
name = "ramanalysis"
# This version is a placeholder. It will be updated at build time by poetry-dynamic-versioning
# from the latest git tag.
version = "0.0.0"
description = "Package for loading and processing spectral data from Arcadia's Raman spectroscopy instruments."
authors = ["Ryan Lane <ryan.lane@arcadiascience.com>"]
readme = "README.md"
license = "MIT"
packages = [{ include = "ramanalysis" }]
homepage = "https://github.com/Arcadia-Science/ramanalysis"
repository = "https://github.com/Arcadia-Science/ramanalysis"
documentation = "https://github.com/Arcadia-Science/ramanalysis/blob/main/README.md"
[[tool.poetry.source]]
name = "pypi"
priority = "primary"
[[tool.poetry.source]]
name = "pypi_test"
# Note: poetry only support the "legacy" API.
url = "https://test.pypi.org/legacy/"
[tool.poetry.dependencies]
python = ">=3.10,<4.0"
numpy = "^2.1.2"
scipy = "^1.14.1"
pandas = "^2.2.3"
pandas-stubs = "^2.2.3.241009"
natsort = "^8.4.0"
matplotlib = "^3.9.2"
ramanspy = "^0.2.10"
jinja2 = "^3.1.5"
[tool.poetry.group.dev.dependencies]
pre-commit = "3.5.0"
pyright = "^1.1.367"
pytest = "8.2.1"
ruff = "0.4.4"
[tool.poetry.group.build.dependencies]
poetry-dynamic-versioning = { extras = ["plugin"], version = "^1.4.0" }
[tool.poetry.group.docs]
optional = true
[tool.poetry.group.docs.dependencies]
sphinx = "6.1.0"
sphinx-copybutton = "0.5.2"
furo = "2024.5.6"
myst-parser = "3.0.1"
sphinx-autoapi = "3.1.2"
sphinx-tabs = "3.4.5"
nbsphinx = "0.9.5"
# Jupyterlab and matplotlib are needed for notebook rendering.
jupyterlab = "4.2.5"
matplotlib = "3.9.2"
tornado = "^6.4.2"
[tool.ruff]
# The directories to consider when resolving first- vs. third-party imports.
src = ["."]
line-length = 100
indent-width = 4
extend-include = ["*.ipynb"]
[tool.ruff.lint.per-file-ignores]
# Ignore star and unused imports.
"__init__.py" = ["F403", "F405"]
[tool.ruff.lint]
select = [
"B", # flake8-bugbear
"E", # pycodestyle error
"F", # pyflakes
"I", # isort
"UP", # pyupgrade
"W", # pycodestyle warning
]
ignore = []
fixable = ["ALL"]
unfixable = []
[tool.ruff.format]
quote-style = "double"
indent-style = "space"
skip-magic-trailing-comma = false
line-ending = "auto"
[tool.ruff.lint.isort]
order-by-type = true
no-lines-before = ["future", "standard-library"]
[tool.pyright]
typeCheckingMode = "basic"
exclude = ["./.venv", "./dist"]
# Pyright reports a lot of unknown-member errors for some packages.
# If this is a problem, set this to `false`.
reportUnknownMemberType = true