Skip to content

Commit ea8f1c3

Browse files
authored
Release 3.2.3: agentscore-py 2.8.2, fastapi 0.159.1, uv 0.13.5, pypi-publish v1.14.3 (#167)
## Summary Release 3.2.3, from the 2026-10-22 maintenance sweep. - **`agentscore-py` floor: `>=2.8.1` to `>=2.8.2`**, the SDK release from this sweep. - **`uv lock --upgrade`:** - fastapi 0.159.1 - httpx2 and httpcore2 2.16.0 - a2a-sdk 1.2.3 - pydantic-settings 2.16.1 - sentry-sdk 2.73.0 - setuptools 84.2.1 - bitarray 3.12.3 - ty 0.0.90 - python-dateutil 3.0.0, which arrives through cdp-sdk, whose range admits it - **CI:** setup-uv v10.3.2, uv 0.13.5 and pypi-publish v1.14.3. - uv 0.13.4 and later fix GHSA-hq85-5cpj-mr62 (the emSign roots). - pypi-publish 1.14.3 fixes GHSA-5xjx-3w67-w9x9 (critical, in the Sigstore chain that Trusted Publishing relies on). - **aiohttp floored at `>=3.14.4`** in the `mppx` and `aiohttp` extras and the dev group. - pympp 0.14.0 exact-pins `yarl==1.24.5` and `propcache==0.5.2`, and the only aiohttp compatible with those is 3.14.3, which has 8 advisories fixed in 3.14.4. - Our lock never showed this, because it resolves pympp 0.11.0. But a merchant's fresh `pip install agentscore-commerce[mppx]` could take the pympp 0.14 path. - Proof: forcing `pympp==0.14.0` against the old manifest resolves aiohttp 3.14.3 (osv: 8 known vulnerabilities). With the floor, that combination is unsatisfiable, so pympp stays at 0.11 or lower, where it already was. - **Held back: `web3<8`.** pympp 0.14.0 (the latest) still requires `eth-abi<6` for its tempo and stripe extras. - **Prereleases:** the only ones in the lock are OpenTelemetry's `0.66b1` semantic-conventions packages, which have never published a stable release. `prerelease = "if-necessary"` admits exactly those. Worked with Varun. ## Type of change - [x] Bug fix (no breaking change) - [ ] New feature (no breaking change) - [ ] Breaking change (existing callers must update) - [ ] Docs, tests, or internal maintenance only ## Public API Unchanged. ## Test plan - `uv sync --frozen --all-extras --all-groups`, then ruff check, ruff format, ty and vulture pass. - `pytest`: 1674 passed, 4 skipped. - `osv-scanner` on `uv.lock`: no issues found. ## Checklist - [ ] Tests cover the new behavior, and the suite passes locally (no new behavior; the existing suite passes) - [x] Lint, format, and type checks pass - [ ] Docs and README examples updated if the public surface changed (the public surface did not change) - [x] No secrets, credentials, or personal data in the diff or the tests
1 parent 89718f5 commit ea8f1c3

5 files changed

Lines changed: 180 additions & 174 deletions

File tree

‎.github/workflows/ci.yml‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@ jobs:
2222
- uses: useblacksmith/checkout@v1
2323

2424
- name: Install uv
25-
uses: astral-sh/setup-uv@v10.3.0
25+
uses: astral-sh/setup-uv@v10.3.2
2626
with:
27-
version: "0.13.1"
27+
version: "0.13.5"
2828

2929
- name: Set up Python
3030
run: uv python install 3.15
@@ -69,9 +69,9 @@ jobs:
6969
- uses: useblacksmith/checkout@v1
7070

7171
- name: Install uv
72-
uses: astral-sh/setup-uv@v10.3.0
72+
uses: astral-sh/setup-uv@v10.3.2
7373
with:
74-
version: "0.13.1"
74+
version: "0.13.5"
7575

7676
- name: Set up Python
7777
run: uv python install ${{ matrix.python }}

‎.github/workflows/publish.yml‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,17 +19,17 @@ jobs:
1919
steps:
2020
- uses: actions/checkout@v7
2121

22-
- uses: astral-sh/setup-uv@v10.3.0
22+
- uses: astral-sh/setup-uv@v10.3.2
2323
with:
24-
version: "0.13.1"
24+
version: "0.13.5"
2525

2626
- name: Set version from tag
2727
run: sed -i "s/^version = .*/version = \"${GITHUB_REF_NAME#v}\"/" pyproject.toml
2828

2929
- run: uv build
3030

3131
- name: Publish to PyPI
32-
uses: pypa/gh-action-pypi-publish@v1.14.2
32+
uses: pypa/gh-action-pypi-publish@v1.14.3
3333

3434
- name: Create GitHub Release
3535
run: gh release create "$GITHUB_REF_NAME" --generate-notes

‎.github/workflows/security.yml‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,9 @@ jobs:
3939
timeout-minutes: 5
4040
steps:
4141
- uses: useblacksmith/checkout@v1
42-
- uses: astral-sh/setup-uv@v10.3.0
42+
- uses: astral-sh/setup-uv@v10.3.2
4343
with:
44-
version: "0.13.1"
44+
version: "0.13.5"
4545
- uses: actions/setup-python@v7
4646
with:
4747
python-version: "3.15"

‎pyproject.toml‎

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,15 @@ build-backend = "hatchling.build"
44

55
[project]
66
name = "agentscore-commerce"
7-
version = "3.2.2"
7+
version = "3.2.3"
88
description = "Agentic commerce SDK for Python: identity middleware (FastAPI, Flask, Django, AIOHTTP, Sanic, ASGI) + payment helpers + 402 builders + discovery + Stripe multichain. The full merchant-side toolkit for AgentScore-powered agentic commerce."
99
readme = "README.md"
1010
license = "MIT"
1111
requires-python = ">=3.11"
1212
keywords = ["agentscore", "agentic-commerce", "agentic-payments", "402", "x402", "mpp", "machine-payments-protocol", "fastapi", "starlette", "flask", "django", "aiohttp", "sanic", "middleware", "kyc", "identity", "stripe", "tempo", "solana", "base", "ai-agent"]
1313
dependencies = [
1414
"httpx>=0.25.0,<1.0.0",
15-
"agentscore-py>=2.8.1",
15+
"agentscore-py>=2.8.2",
1616
]
1717
classifiers = [
1818
"Development Status :: 5 - Production/Stable",
@@ -36,7 +36,7 @@ starlette = ["starlette>=0.27.0"]
3636
fastapi = ["fastapi>=0.100.0"]
3737
flask = ["flask>=2.0.0"]
3838
django = ["django>=4.0"]
39-
aiohttp = ["aiohttp>=3.8.0"]
39+
aiohttp = ["aiohttp>=3.14.4"]
4040
sanic = ["sanic>=23.0.0"]
4141
stripe = ["stripe>=11.0.0"]
4242
# Payment-protocol peer deps for create_x402_server / create_mppx_server.
@@ -46,7 +46,10 @@ stripe = ["stripe>=11.0.0"]
4646
# https://api.cdp.coinbase.com/platform/v2/x402 with a CDP-JWT auth provider;
4747
# `cdp-sdk` is the JWT minter. Install via the `coinbase` extra when needed.
4848
x402 = ["x402[evm,fastapi]>=2.9,<3"]
49-
mppx = ["pympp[server,tempo,stripe]>=0.6,<1"]
49+
# aiohttp is floored here too: pympp 0.14 exact-pins yarl and propcache at versions that resolve
50+
# aiohttp 3.14.3, which carries advisories fixed in 3.14.4, so a fresh install of this extra
51+
# would otherwise land the vulnerable one.
52+
mppx = ["pympp[server,tempo,stripe]>=0.6,<1", "aiohttp>=3.14.4"]
5053
coinbase = ["cdp-sdk>=1.0,<2"]
5154
ucp = ["joserfc>=1.0.0,<2"]
5255
redis = ["redis>=5.0,<9"]
@@ -69,7 +72,7 @@ dev = [
6972
"fastapi>=0.100.0",
7073
"flask>=2.0.0",
7174
"django>=4.0",
72-
"aiohttp>=3.8.0",
75+
"aiohttp>=3.14.4",
7376
"sanic>=23.0.0",
7477
"sanic-testing>=24.0.0",
7578
"pytest-cov>=6.0",

0 commit comments

Comments
 (0)