Skip to content

fix(aws-strands): raise Python ceiling to support 3.14 - #2293

Open
aviau wants to merge 1 commit into
ag-ui-protocol:mainfrom
aviau:fix/aws-strands-support-python-3.14
Open

fix(aws-strands): raise Python ceiling to support 3.14#2293
aviau wants to merge 1 commit into
ag-ui-protocol:mainfrom
aviau:fix/aws-strands-support-python-3.14

Conversation

@aviau

@aviau aviau commented Aug 1, 2026

Copy link
Copy Markdown

Problem

ag_ui_strands declares requires-python = ">=3.12, <3.14", which blocks
installation on Python 3.14 even though nothing in the package or its
dependency tree actually needs the cap.

Why 3.14 is safe

All direct dependencies already support it:

  • strands-agents, ag-ui-protocol, fastapi — no upper bound
  • ag-ui-a2ui-toolkit>=3.10, <3.15

Changes

  • pyproject.tomlrequires-python = ">=3.12, <3.15"
  • examples/pyproject.tomlpython = "<3.15,>=3.12"
  • examples/README.md — supported range now reads 3.12 – 3.14; drops the
    poetry env use python3.13 workaround that steered around 3.14
  • uv.lock — regenerated; adds cp314 wheels. Also picks up
    ag-ui-a2ui-toolkit 0.0.3 → 0.0.4, matching the same incidental lock-drift
    fix noted in fix(aws-strands): lower Python floor to 3.10 #2285 (pyproject already required >=0.0.4, the lock was
    still on 0.0.3)

Verification (CPython 3.14.6)

  • uv sync --python 3.14 --all-groups — resolves and installs cleanly
  • import ag_ui_strands — all 20 public exports load
  • pytest tests/176 passed, 2 skipped (same counts as the 3.10 floor
    verification in fix(aws-strands): lower Python floor to 3.10 #2285)
  • poetry install in examples/ on a 3.14 interpreter — resolves and
    installs; import server loads the full app graph (only fails at
    model-construction time on a missing OPENAI_API_KEY, unrelated to
    Python version)
  • uv build — wheel reports Requires-Python: <3.15,>=3.12

This is independent of #2282/#2285 (which only touch the floor) — happy to
rebase on top if that lands first.

ag_ui_strands declares requires-python = ">=3.12, <3.14", which blocks
Python 3.14 even though nothing in the package or its dependency tree
needs the cap. All direct dependencies already support 3.14
(strands-agents, ag-ui-protocol, fastapi have no upper bound;
ag-ui-a2ui-toolkit is <3.15).

Verified on CPython 3.14.6:
- uv sync --python 3.14 --all-groups resolves and installs cleanly
- import ag_ui_strands loads all 20 public exports
- pytest tests/ - 176 passed, 2 skipped (same counts as the 3.10 floor
  verification in ag-ui-protocol#2285)
- poetry install in examples/ on 3.14 resolves and installs; the demo
  server module imports fully (only fails at model-construction time
  on a missing API key, unrelated to Python version)
- uv build - wheel reports Requires-Python: <3.15,>=3.12
@aviau
aviau requested a review from a team as a code owner August 1, 2026 19:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant