This is an automated email from the ASF dual-hosted git repository.
FreeOnePlus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris-mcp-server.git
The following commit(s) were added to refs/heads/master by this push:
new 7171da2 chore(deps): bump pyjwt from 2.10.1 to 2.13.0 (#193)
7171da2 is described below
commit 7171da2f451df13dfc7ed70bef6dd8e702fa8e1a
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
AuthorDate: Sat Aug 1 13:44:07 2026 +0800
chore(deps): bump pyjwt from 2.10.1 to 2.13.0 (#193)
* chore(deps): bump pyjwt from 2.10.1 to 2.13.0
Bumps [pyjwt](https://github.com/jpadilla/pyjwt) from 2.10.1 to 2.13.0.
- [Release notes](https://github.com/jpadilla/pyjwt/releases)
- [Changelog](https://github.com/jpadilla/pyjwt/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/jpadilla/pyjwt/compare/2.10.1...2.13.0)
---
updated-dependencies:
- dependency-name: pyjwt
dependency-version: 2.13.0
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <[email protected]>
* fix: support PyJWT 2.13 typing
---------
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot]
<49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: FreeOnePlus <[email protected]>
---
CHANGELOG.md | 3 +++
doris_mcp_server/auth/jwt_manager.py | 7 ++++---
uv.lock | 6 +++---
3 files changed, 10 insertions(+), 6 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index b718fbb..db0de65 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -65,6 +65,9 @@ under **Unreleased** until a new version is selected and
published.
### Fixed
+- Updated JWT decoding type contracts for PyJWT 2.13 while preserving the
+ existing signature, claim, audience, issuer, and unsafe-debug validation
+ behavior.
- Documented the strict `/mcp` versus `/mcp/legacy` endpoint boundary in the
protocol, Host, quick-start, deployment, troubleshooting, migration, and
release guides without restoring pre-1.0 tool names or weakening security.
diff --git a/doris_mcp_server/auth/jwt_manager.py
b/doris_mcp_server/auth/jwt_manager.py
index 0d25fc9..f7bd8d3 100644
--- a/doris_mcp_server/auth/jwt_manager.py
+++ b/doris_mcp_server/auth/jwt_manager.py
@@ -23,10 +23,11 @@ Provides comprehensive JWT token management including
generation, validation, re
import asyncio
import time
import uuid
-from typing import Any, cast
+from typing import Any
try:
import jwt
+ from jwt.types import Options
except ImportError:
raise ImportError("PyJWT is required for JWT functionality. Install with:
pip install PyJWT[crypto]")
@@ -243,7 +244,7 @@ class JWTManager:
security_config = self.config
# JWT decoding options
- options = {
+ options: Options = {
'verify_signature': security_config.jwt_verify_signature,
'verify_exp': security_config.jwt_require_exp,
'verify_iat': security_config.jwt_require_iat,
@@ -377,7 +378,7 @@ class JWTManager:
"""
try:
payload = jwt.decode(token, options={'verify_signature': False})
- return cast(dict[str, Any], payload)
+ return payload
except Exception as e:
logger.error(f"Failed to decode token: {e}")
raise
diff --git a/uv.lock b/uv.lock
index 8486a54..1ed13c0 100644
--- a/uv.lock
+++ b/uv.lock
@@ -2036,11 +2036,11 @@ wheels = [
[[package]]
name = "pyjwt"
-version = "2.10.1"
+version = "2.13.0"
source = { registry = "https://pypi.org/simple" }
-sdist = { url =
"https://files.pythonhosted.org/packages/e7/46/bd74733ff231675599650d3e47f361794b22ef3e3770998dda30d3b63726/pyjwt-2.10.1.tar.gz",
hash =
"sha256:3cc5772eb20009233caf06e9d8a0577824723b44e6648ee0a2aedb6cf9381953", size
= 87785, upload-time = "2024-11-28T03:43:29.933Z" }
+sdist = { url =
"https://files.pythonhosted.org/packages/3b/81/58d0ac84e1ef3a3843791d6954d94c0b33d526c75eeb1efbce9d0a4c4077/pyjwt-2.13.0.tar.gz",
hash =
"sha256:41571c89ca91598c79e8ef18a2d07367d4810fbbd6f637794879baf1b7703423", size
= 107515, upload-time = "2026-05-21T19:54:36.618Z" }
wheels = [
- { url =
"https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl",
hash =
"sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb", size
= 22997, upload-time = "2024-11-28T03:43:27.893Z" },
+ { url =
"https://files.pythonhosted.org/packages/a3/5e/ecf12fdb62546d64385c158514e9b2b671f7832108ef2ecd2020ce0af2d1/pyjwt-2.13.0-py3-none-any.whl",
hash =
"sha256:66adcc2aff09b3f1bbd95fc1e1577df8ac8723c978552fd43304c8a290ac5728", size
= 31274, upload-time = "2026-05-21T19:54:35.362Z" },
]
[package.optional-dependencies]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]