From 693806f49c22c6a2e3dc29f3dba7bfe0848be3bb Mon Sep 17 00:00:00 2001 From: Jah-yee <166608075+Jah-yee@users.noreply.github.com> Date: Wed, 3 Jun 2026 01:53:25 +0800 Subject: [PATCH] fix: widen GLMProvider import exception to catch ImportError (zhipuai<2.0) When zhipuai<2.0 is installed, 'from zhipuai import ZhipuAI' raises ImportError (not ModuleNotFoundError) because the ZhipuAI symbol moved across major versions. The narrow 'except ModuleNotFoundError' clause does not catch this, causing ClawcodexREPL(provider_name='glm') to crash at import time. Widen to 'except ImportError' which covers both cases. Fixes #166. --- src/providers/glm_provider.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/providers/glm_provider.py b/src/providers/glm_provider.py index 6a4d845..5cfd944 100644 --- a/src/providers/glm_provider.py +++ b/src/providers/glm_provider.py @@ -6,7 +6,7 @@ try: from zhipuai import ZhipuAI # type: ignore -except ModuleNotFoundError: # pragma: no cover +except ImportError: # catches both ModuleNotFoundError and bare ImportError (e.g. zhipuai<2.0 where ZhipuAI symbol moved) ZhipuAI = None from .openai_compatible import OpenAICompatibleProvider