1- [tool . poetry ]
1+ [project ]
22name = " launchdarkly-eventsource"
33version = " 1.6.0"
44description = " LaunchDarkly SSE Client"
5- authors = [" LaunchDarkly <dev@launchdarkly.com>" ]
5+ authors = [
6+ {name = " LaunchDarkly" , email = " dev@launchdarkly.com" }
7+ ]
68license = " Apache-2.0"
79readme = " README.md"
8- homepage = " https://docs.launchdarkly.com/sdk/server-side/python"
9- repository = " https://github.com/launchdarkly/python-eventsource"
10- documentation = " https://launchdarkly-sse-client-library.readthedocs.io/en/latest/"
10+ requires-python = " >=3.9"
1111classifiers = [
1212 " Intended Audience :: Developers" ,
1313 " License :: OSI Approved :: Apache Software License" ,
@@ -21,63 +21,62 @@ classifiers = [
2121 " Topic :: Software Development" ,
2222 " Topic :: Software Development :: Libraries" ,
2323]
24- packages = [ { include = " ld_eventsource" } ]
25- exclude = [
26- { path = " ld_eventsource/testing" , format = " wheel" }
24+ dependencies = [
25+ " urllib3>=1.26.0,<3" ,
2726]
2827
29- [tool .poetry .dependencies ]
30- python = " >=3.9"
31- urllib3 = " >=1.26.0,<3"
32- aiohttp = { version = " >=3.8.0,<4" , optional = true }
33-
34- [tool .poetry .extras ]
35- async = [" aiohttp" ]
36-
37- [tool .poetry .group .dev .dependencies ]
38- mock = " >=2.0.0"
39- pytest = " >=2.8"
40- pytest-asyncio = " >=0.21"
41- aiohttp = " >=3.8.0,<4"
42- mypy = " ^1.4.0"
43- pycodestyle = " ^2.12.1"
44- isort = " ^5.13.2"
45-
46-
47- [tool .poetry .group .contract-tests ]
48- optional = true
49-
50- [tool .poetry .group .contract-tests .dependencies ]
51- Flask = " >=3.0"
28+ [project .urls ]
29+ Homepage = " https://docs.launchdarkly.com/sdk/server-side/python"
30+ Repository = " https://github.com/launchdarkly/python-eventsource"
31+ Documentation = " https://launchdarkly-sse-client-library.readthedocs.io/en/latest/"
5232
33+ [project .optional-dependencies ]
34+ async = [" aiohttp>=3.8.0,<4" ]
5335
54- [tool .poetry .group .docs ]
55- optional = true
56-
57- [tool .poetry .group .docs .dependencies ]
58- sphinx = " >=6,<8"
59- sphinx-autodoc-typehints = " ^1.3.0"
60- sphinx-rtd-theme = " >=1.3,<4.0"
61- backoff = " >=1.4.3"
62- expiringdict = " >=1.1.4"
63- pyrfc3339 = " >=1.0"
64- jsonpickle = " >1.4.1"
65- semver = " >=2.7.9"
66- urllib3 = " >=1.26.0"
67- jinja2 = " >=3.1.2"
36+ [dependency-groups ]
37+ dev = [
38+ " mock>=2.0.0" ,
39+ " pytest>=2.8" ,
40+ " pytest-asyncio>=0.21" ,
41+ " aiohttp>=3.8.0,<4" ,
42+ " mypy>=1.4.0,<2" ,
43+ " pycodestyle>=2.12.1,<3" ,
44+ " isort>=5.13.2,<6" ,
45+ ]
46+ contract-tests = [
47+ " Flask>=3.0" ,
48+ ]
49+ docs = [
50+ " sphinx>=6,<8" ,
51+ " sphinx-autodoc-typehints>=1.3.0,<2" ,
52+ " sphinx-rtd-theme>=1.3,<4.0" ,
53+ " backoff>=1.4.3" ,
54+ " expiringdict>=1.1.4" ,
55+ " pyrfc3339>=1.0" ,
56+ " jsonpickle>1.4.1" ,
57+ " semver>=2.7.9" ,
58+ " urllib3>=1.26.0" ,
59+ " jinja2>=3.1.2" ,
60+ ]
6861
6962[tool .mypy ]
7063python_version = " 3.9"
7164ignore_missing_imports = true
72- install_types = true
73- non_interactive = true
7465
66+ # Do not type-check third-party test framework internals; their source may use
67+ # syntax newer than this project's minimum supported Python version.
68+ [[tool .mypy .overrides ]]
69+ module = [" pytest" , " pytest.*" , " _pytest.*" ]
70+ follow_imports = " skip"
7571
7672[tool .pytest .ini_options ]
7773addopts = [" -ra" ]
7874asyncio_mode = " auto"
7975
80-
8176[build-system ]
82- requires = [" poetry-core" ]
83- build-backend = " poetry.core.masonry.api"
77+ requires = [" hatchling" ]
78+ build-backend = " hatchling.build"
79+
80+ [tool .hatch .build .targets .wheel ]
81+ packages = [" ld_eventsource" ]
82+ exclude = [" ld_eventsource/testing" ]
0 commit comments