pyproject.toml 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. [project]
  2. name = "williambutcherbot"
  3. version = "0.1.0"
  4. description = "A Telegram Bot for group management and more."
  5. readme = "README.md"
  6. requires-python = ">=3.12"
  7. dependencies = [
  8. "aiohttp~=3.14.1",
  9. "aiofiles~=23.2.1",
  10. "ffmpeg-python~=0.2.0",
  11. "gTTS~=2.5.1",
  12. "dnspython==2.6.1",
  13. "future~=1.0.0",
  14. "googletrans~=4.0.0rc1",
  15. "motor~=3.6",
  16. "pymongo~=4.15",
  17. "pillow~=12.3.0",
  18. "psutil~=5.9.8",
  19. "pykeyboard~=0.1.5",
  20. "python-arq~=6.0.7",
  21. "requests~=2.33.0",
  22. "search-engine-parser~=0.6.8",
  23. "speedtest-cli~=2.1.3",
  24. "TgCrypto~=1.2.5",
  25. "uvloop~=0.19.0",
  26. "yt-dlp~=2026.6.9",
  27. "bs4~=0.0.2",
  28. "python-dotenv~=1.2.2",
  29. "feedparser~=6.0.12",
  30. "pyromod~=3.1.6",
  31. "fuzzysearch~=0.7.3",
  32. "img2pdf~=0.5.1",
  33. "telegraph~=2.2.0",
  34. "pytz~=2024.1",
  35. ]
  36. [dependency-groups]
  37. dev = [
  38. "mongomock-motor>=0.0.35",
  39. "pytest>=8.3.4",
  40. "pytest-asyncio>=0.25.2",
  41. "ruff>=0.9.0",
  42. ]
  43. [tool.pytest.ini_options]
  44. asyncio_mode = "auto"
  45. testpaths = ["tests"]
  46. [tool.ruff]
  47. line-length = 100
  48. target-version = "py312"
  49. # The upstream bot predates Ruff. Keep the migration baseline focused on the
  50. # admin, points, giveaway, and integration surfaces changed by this fork.
  51. include = [
  52. "launcher.py",
  53. "sample_config.py",
  54. "tests/**/*.py",
  55. "wbb/admin/**/*.py",
  56. "wbb/services/**/*.py",
  57. "wbb/modules/admin_panel.py",
  58. "wbb/modules/admin_web.py",
  59. "wbb/modules/chat_watcher.py",
  60. "wbb/modules/giveaway.py",
  61. "wbb/modules/karma.py",
  62. "wbb/modules/points.py",
  63. "wbb/utils/dbadmin.py",
  64. "wbb/utils/dbgiveaway.py",
  65. "wbb/utils/dbpoints.py",
  66. "wbb/web_admin.py",
  67. ]
  68. [tool.ruff.lint]
  69. select = ["E", "F", "I", "UP", "B", "ASYNC"]
  70. ignore = ["E501"]