chore(deps): bump authlib from 1.6.11 to 1.6.12#3271
Conversation
Bumps [authlib](https://github.com/authlib/authlib) from 1.6.11 to 1.6.12. - [Release notes](https://github.com/authlib/authlib/releases) - [Changelog](https://github.com/authlib/authlib/blob/1.6.12/docs/changelog.rst) - [Commits](authlib/authlib@v1.6.11...1.6.12) --- updated-dependencies: - dependency-name: authlib dependency-version: 1.6.12 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com>
Python API breakage checks — ✅ PASSEDResult: ✅ PASSED |
REST API breakage checks (OpenAPI) — ✅ PASSEDResult: ✅ PASSED |
all-hands-bot
left a comment
There was a problem hiding this comment.
🟢 Good taste - Straightforward security update.
Dependency Freshness Check: ✅ Package uploaded 2026-05-04, now 2026-05-15 (~11 days old) - safely past the repo's 7-day freshness guardrail.
Security Context: This fixes CVE-related redirect URI validation in OpenID Connect grants. The codebase only uses authlib for OAuth2 utilities (PKCE, token generation), not the affected OIDC grant flows, so the impact is limited to closing a potential vulnerability in transitive dependencies.
[RISK ASSESSMENT]
- [Overall PR]
⚠️ Risk Assessment: 🟢 LOW
Patch-level security update to a non-core dependency. Changes only lock file hashes. No agent behavior impact.
VERDICT:
✅ Worth merging: Standard Dependabot security update
KEY INSIGHT:
Security patch for OAuth library passes freshness guardrail and has no agent behavior impact.
all-hands-bot
left a comment
There was a problem hiding this comment.
✅ QA Report: PASS
Dependency update verified through direct execution of authlib functions and integration tests.
Does this PR achieve its stated goal?
Yes. This PR successfully updates authlib from 1.6.11 to 1.6.12. The dependency update is functional and does not break existing behavior. All authlib functions used by openhands-sdk (token generation and PKCE utilities) work correctly with the new version. The security fix in 1.6.12 addresses OIDC grant classes (OpenIDImplicitGrant and OpenIDHybridGrant) that are not used by this codebase, but updating to a patched version is good security practice.
| Phase | Result |
|---|---|
| Environment Setup | ✅ Dependencies installed, authlib 1.6.12 confirmed |
| CI Status | ✅ Core test suites passing (sdk-tests, agent-server-tests, workspace-tests, cross-tests) |
| Functional Verification | ✅ All authlib functions verified through direct execution and tests |
Functional Verification
Test 1: Direct Verification of authlib Functions
Executed the exact authlib APIs that openhands-sdk depends on:
$ uv run python -c "from authlib.common.security import generate_token; from authlib.oauth2.rfc7636 import create_s256_code_challenge; verifier = generate_token(43); challenge = create_s256_code_challenge(verifier); print(f'✓ Generated verifier (len={len(verifier)}), challenge (len={len(challenge)})')"Output:
Testing authlib 1.6.12 functions...
1. Testing generate_token():
Generated verifier: 2u4iMe2GSB... (length: 43)
✓ Token generation works
2. Testing create_s256_code_challenge():
Generated challenge: Po9A8h0UWkCvZkbBAIcl...
✓ PKCE challenge generation works
3. Testing uniqueness (OAuth security requirement):
✓ Generated tokens are unique
All authlib functionality verified successfully! ✓
Result: ✅ Both generate_token() and create_s256_code_challenge() work correctly. Token uniqueness confirmed (critical for OAuth2 security).
Test 2: Unit Tests Exercising authlib
Ran tests that directly use authlib functions:
$ uv run pytest tests/sdk/llm/auth/test_openai.py::test_generate_pkce tests/sdk/llm/auth/test_openai.py::test_pkce_codes_are_unique -vOutput:
tests/sdk/llm/auth/test_openai.py::test_generate_pkce PASSED [ 50%]
tests/sdk/llm/auth/test_openai.py::test_pkce_codes_are_unique PASSED [100%]
2 passed, 5 warnings in 0.37s
Result: ✅ PKCE generation tests pass with authlib 1.6.12.
Test 3: SDK Module Integration
Verified the actual SDK module that imports and uses authlib:
$ uv run python -c "from openhands.sdk.llm.auth.openai import _generate_pkce, OpenAISubscriptionAuth; v, c = _generate_pkce(); print('Successfully imported and executed OpenAI auth module with authlib 1.6.12')"Output:
Successfully imported and executed OpenAI auth module with authlib 1.6.12
Result: ✅ The SDK's OpenAI authentication module imports and executes correctly with the updated dependency.
Test 4: Security Fix Relevance Check
Verified that the security fix in authlib 1.6.12 (for OpenIDImplicitGrant and OpenIDHybridGrant) does not affect this codebase:
$ grep -r "OpenIDImplicitGrant\|OpenIDHybridGrant" --include="*.py" openhands-sdk/ tests/Result: ✅ No matches found. This codebase only uses authlib.common.security.generate_token and authlib.oauth2.rfc7636.create_s256_code_challenge for PKCE OAuth2 flows, not the OIDC grant classes that were patched.
Issues Found
None.
Summary: This dependency update is safe to merge. The updated authlib version works correctly with all existing functionality, and the codebase does not use the OIDC features that were patched in 1.6.12.
Bumps authlib from 1.6.11 to 1.6.12.
Release notes
Sourced from authlib's releases.
Changelog
Sourced from authlib's changelog.
Commits
e46e515chore: bump to 1.6.129babc13fix: redirecting to unvalidated redirect_uri on InvalidScopeError in OIDC grantsDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)You can disable automated security fix PRs for this repo from the Security Alerts page.
• GHCR package: https://github.com/OpenHands/agent-sdk/pkgs/container/agent-server
Variants & Base Images
eclipse-temurin:17-jdknikolaik/python-nodejs:python3.13-nodejs22-slimgolang:1.21-bookwormPull (multi-arch manifest)
# Each variant is a multi-arch manifest supporting both amd64 and arm64 docker pull ghcr.io/openhands/agent-server:7d351ad-pythonRun
All tags pushed for this build
About Multi-Architecture Support
7d351ad-python) is a multi-arch manifest supporting both amd64 and arm647d351ad-python-amd64) are also available if needed