Skip to content

feat: add Python 3.14 support to CI, CLI schema, and package classifiers#6936

Open
ofir-frd wants to merge 1 commit intolangchain-ai:mainfrom
ofir-frd:feat/py314-solution-c
Open

feat: add Python 3.14 support to CI, CLI schema, and package classifiers#6936
ofir-frd wants to merge 1 commit intolangchain-ai:mainfrom
ofir-frd:feat/py314-solution-c

Conversation

@ofir-frd
Copy link
Copy Markdown

Problem

Python 3.14 support is incomplete in several places. Closes #5253.

The test CI matrices (_test.yml, _test_langgraph.yml, _integration_test.yml) already include 3.14 on main, but the following gaps remain:

  • ci.yml schema-check job: matrix only lists 3.13 and hardcodes python-version: "3.13" in the setup step
  • generate_schema.py: python_version enum stops at "3.13"
  • schema.json / schema.v0.json: same gap; both also missing trailing newline
  • cli.py help text: still lists 3.11, 3.12, or 3.13
  • libs/langgraph/pyproject.toml: no Python :: 3.14 classifier
  • libs/prebuilt/pyproject.toml: same

Solution

8 files changed, 17 insertions, 8 deletions — all additive, no breaking changes.

File Change
.github/workflows/ci.yml Add "3.14" to schema-check matrix; fix hardcoded python-version: "3.13"${{ matrix.python-version }}
libs/cli/generate_schema.py Add "3.14" to python_version enum
libs/cli/schemas/schema.json Add "3.14" to enum; fix missing trailing newline
libs/cli/schemas/schema.v0.json Same as above
libs/cli/langgraph_cli/cli.py Update help text to include 3.14
libs/langgraph/pyproject.toml Add Programming Language :: Python :: 3.14 classifier
libs/prebuilt/pyproject.toml Same
libs/cli/tests/unit_tests/test_config.py Add "3.14" to test_validate_config, test_docker_tag_different_python_versions_with_distro, and test_docker_tag_with_api_version

Notes

  • Schema version unchanged: "version": "v0" is preserved — adding a new enum value is backward-compatible and does not warrant a version bump
  • MIN_PYTHON_VERSION / DEFAULT_PYTHON_VERSION unchanged: validation in config.py uses a minimum version check (>= 3.11), so 3.14 passes automatically
  • Checkpoint packages: libs/checkpoint, libs/checkpoint-postgres, libs/checkpoint-sqlite do not have Python version classifiers, so no changes needed there

Testing

The CI test matrices (_test.yml / _test_langgraph.yml) already cover Python 3.14 on main. With this PR, the schema-check job will also validate against 3.14. The updated test_config.py tests confirm 3.14 passes validate_config and generates the correct Docker tags.

🤖 Generated with Claude Code

Adds Python 3.14 to:
- CI schema-check matrix
- CLI schema enum (schema.json, schema.v0.json, generate_schema.py)
- CLI help text
- All package classifiers (langgraph, prebuilt, checkpoint libs)
- Test expectations

Closes langchain-ai#5253

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@mdrxy Mason Daugherty (mdrxy) added the bypass-issue-check Maintainer override: skip issue-link enforcement label Mar 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bypass-issue-check Maintainer override: skip issue-link enforcement external

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add support for Python 3.14

2 participants