-
-
Notifications
You must be signed in to change notification settings - Fork 108
/
pyproject.toml
95 lines (85 loc) · 2.54 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
[build-system]
requires = ['maturin>=0.14.16,<2']
build-backend = 'maturin'
[project]
name = 'watchfiles'
requires-python = '>=3.9'
description = 'Simple, modern and high performance file watching and code reload in python.'
authors = [
{name ='Samuel Colvin', email = 's@muelcolvin.com'},
]
dependencies = [
'anyio>=3.0.0',
]
classifiers = [
'Development Status :: 5 - Production/Stable',
'Environment :: Console',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3 :: Only',
'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: 3.10',
'Programming Language :: Python :: 3.11',
'Programming Language :: Python :: 3.12',
'Programming Language :: Python :: 3.13',
'Intended Audience :: Developers',
'Intended Audience :: Information Technology',
'Intended Audience :: System Administrators',
'License :: OSI Approved :: MIT License',
'Operating System :: POSIX :: Linux',
'Operating System :: Microsoft :: Windows',
'Operating System :: MacOS',
'Environment :: MacOS X',
'Topic :: Software Development :: Libraries :: Python Modules',
'Topic :: System :: Filesystems',
'Framework :: AnyIO',
]
dynamic = [
'license',
'readme',
'version'
]
[project.scripts]
watchfiles = 'watchfiles.cli:cli'
[project.urls]
Homepage = 'https://github.com/samuelcolvin/watchfiles'
Documentation = 'https://watchfiles.helpmanual.io'
Funding = 'https://github.com/sponsors/samuelcolvin'
Source = 'https://github.com/samuelcolvin/watchfiles'
Changelog = 'https://github.com/samuelcolvin/watchfiles/releases'
[tool.maturin]
module-name = "watchfiles._rust_notify"
bindings = 'pyo3'
[tool.pytest.ini_options]
testpaths = 'tests'
log_format = '%(name)s %(levelname)s: %(message)s'
filterwarnings = 'error'
timeout = 10
[tool.coverage.run]
source = ['watchfiles']
branch = true
[tool.coverage.report]
precision = 2
exclude_lines = [
'pragma: no cover',
'raise NotImplementedError',
'raise NotImplemented',
'if TYPE_CHECKING:',
'@overload',
]
omit = ['*/__main__.py']
[tool.ruff]
line-length = 120
target-version = 'py38'
lint.mccabe = { max-complexity = 14 }
lint.extend-select = ['Q', 'RUF100', 'C90', 'UP', 'I']
lint.flake8-quotes = {inline-quotes = 'single', multiline-quotes = 'double'}
lint.pydocstyle = { convention = 'google' }
format.quote-style = 'single'
[tool.mypy]
strict = true
warn_return_any = false
show_error_codes = true
[[tool.mypy.overrides]]
module = ['trio.*']
ignore_missing_imports = true