[build-system] requires = ["setuptools>=61.0", "wheel"] build-backend = "setuptools.build_meta" [project] name = "neobot" version = "0.1.0" description = "NEO Bot Framework - A high-performance bot framework" readme = "README.md" requires-python = ">=3.14" license = {text = "MIT"} authors = [ {name = "Neo", email = "neo@example.com"} ] keywords = ["bot", "discord", "qq", "onebot"] classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.14", ] dependencies = [ "aiohttp>=3.9.0", "websockets>=12.0", "playwright>=1.40.0", "redis>=5.0.0", "orjson>=3.9.0", "loguru>=0.7.0", "tomlkit>=0.12.0", "watchdog>=3.0.0", "discord.py>=2.0.0", "aiohappyeyeballs>=2.6.1", "aiomysql>=0.2.0", "beautifulsoup4>=4.12.0", "requests>=2.31.0", "cython>=3.0.0", ] [project.optional-dependencies] dev = [ "pyinstrument>=4.5.0", "memory-profiler>=0.61.0", "psutil>=5.9.8", "pytest>=7.4.0", "pytest-asyncio>=0.21.0", "flake8>=7.0.0", "mypy>=1.5.0", ] [project.urls] Homepage = "https://github.com/yourusername/neobot" Documentation = "https://github.com/yourusername/neobot#readme" Repository = "https://github.com/yourusername/neobot" "Bug Tracker" = "https://github.com/yourusername/neobot/issues" [tool.setuptools] packages = ["core", "models", "plugins", "adapters"] package-dir = {"" = "."} [tool.setuptools.package-data] "core" = ["py.typed"] "plugins" = ["**/*.py"] "models" = ["**/*.py"] [tool.setuptools.exclude-package-data] "*" = [ "config.toml", "config.example.toml", "ca/*", "*.pem", "*.key", ] [tool.pytest.ini_options] testpaths = ["tests"] python_files = ["test_*.py"] asyncio_mode = "auto" [tool.mypy] python_version = "3.14" warn_return_any = true warn_unused_configs = true disallow_untyped_defs = true check_untyped_defs = true no_implicit_optional = true warn_redundant_casts = true warn_subclassing = true strict_optional = true plugins = ["mypy.plugins.asyncio"]