fix(gateway): add lazy_deps.ensure() to slack, matrix, dingtalk, feishu adapters (#25014)

Only Discord and Telegram had lazy-install hooks in their
check_*_requirements() functions. The remaining four platforms that were
moved to lazy_deps (Slack, Matrix, DingTalk, Feishu) would just return
False immediately if their packages weren't pre-installed — no attempt
to install them at runtime.

This means even with the .venv permissions fix (#24841), these four
platforms would still fail to load in Docker (or any fresh install)
unless the user manually ran pip install.

Add the same lazy_deps.ensure() pattern to all four, matching the
existing Discord/Telegram implementation.
This commit is contained in:
Siddharth Balyan 2026-05-13 19:28:50 +05:30 committed by GitHub
parent c3094b46e9
commit 5d90386baa
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 84 additions and 11 deletions

View file

@ -120,6 +120,7 @@ LAZY_DEPS: dict[str, tuple[str, ...]] = {
"platform.slack": (
"slack-bolt==1.27.0",
"slack-sdk==3.40.1",
"aiohttp==3.13.3",
),
"platform.matrix": (
"mautrix[encryption]==0.21.0",