Telethon/client/pyproject.toml
2024-10-19 15:55:33 +02:00

67 lines
1.7 KiB
TOML

[project]
name = "Telethon"
description = "Full-featured Telegram client library"
authors = [
{ name="Lonami", email="totufals@hotmail.com" },
]
readme = "README.md"
license = {file = "LICENSE"}
requires-python = ">=3.9"
keywords = ["telegram", "chat", "messaging", "mtproto", "telethon"]
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3",
"Topic :: Communications :: Chat",
"Typing :: Typed",
]
dependencies = [
"pyaes~=1.6",
"rsa~=4.9",
"markdown-it-py~=3.0",
"typing-extensions~=4.12.2",
]
dynamic = ["version"]
[project.optional-dependencies]
cryptg = ["cryptg~=0.5"]
dev = [
"mypy~=1.11.2",
"ruff~=0.6.8",
"pytest~=7.3",
"pytest-asyncio~=0.21",
]
doc = [
"sphinx_rtd_theme~=1.2",
"types-docutils~=0.20",
]
[project.urls]
"Homepage" = "https://telethon.dev/"
"Source" = "https://telethon.dev/code/"
"Documentation" = "https://telethon.dev/docs/"
"Bug Tracker" = "https://telethon.dev/issues/"
[build-system]
requires = ["setuptools>=61.0"]
build-backend = "backend"
backend-path = ["build_backend"]
[tool.setuptools.dynamic]
version = {attr = "telethon.version.__version__"}
[tool.ruff]
exclude = ["doc"]
[tool.ruff.lint]
select = ["F", "E", "W", "I", "N", "ANN"]
ignore = [
"E501", # formatter takes care of lines that are too long besides documentation
"ANN101", # Missing type annotation for `self` in method
"ANN102", # Missing type annotation for `cls` in classmethod
"ANN401", # Dynamically typed expressions (typing.Any) are not type checked
]