Skip to content

Conversation

Lancetnik
Copy link
Member

No description provided.

@joggrbot
Copy link

joggrbot bot commented Oct 7, 2025

📝 Documentation Analysis

All docs are up to date! 🎉


✅ Latest commit analyzed: 30a194d | Powered by Joggr

@randombet
Copy link
Collaborator

Check if https://github.com/ag2ai/ag2/actions/runs/18352926389 could pass

@Lancetnik
Copy link
Member Author

Check if https://github.com/ag2ai/ag2/actions/runs/18352926389 could pass

It doesn't relate to 3.14 promote - all tests are running with python3.10
Moreover, seems like we have old bugs in this CI

@claude
Copy link

claude bot commented Oct 21, 2025

PR Review: Add Tests for Python 3.14

Thank you for working on Python 3.14 support! Here's my comprehensive review:

Critical Issue - Blocking

Missing requires-python constraint update

The PR adds Python 3.14 to CI workflows and classifiers, but does not update the requires-python constraint in pyproject.toml:

  • Current (line 27): requires-python = ">=3.10,<3.14"
  • Required: requires-python = ">=3.10,<3.15" (or <4 for more flexibility)

Impact: The current constraint <3.14 explicitly excludes Python 3.14, meaning:

  • Users cannot install the package with pip on Python 3.14
  • The CI tests will fail or behave unexpectedly
  • The package metadata contradicts the CI configuration

Action Required: Update line 27 in pyproject.toml to allow Python 3.14.


Code Quality & Best Practices

Positive Aspects

  • Consistent updates: All workflow files systematically updated
  • Proper exclusions maintained: Known incompatibilities documented (e.g., retrievechat-qdrant, browser-use < 3.11)
  • Comment updates: Updated from "3.13" to "3.14" in test-with-optional-deps.yml explaining test version choices

Suggestions

  1. .gitignore change (line 157): The addition of .cursor/ appears unrelated to Python 3.14 support
    • Consider moving this to a separate PR for clarity
    • If kept, add a comment in the PR description explaining why

Potential Issues

  1. Python 3.14 Availability

    • Python 3.14 is currently in pre-release/development (alpha/beta stages as of Oct 2025)
    • Verify that actions/setup-python@v6 and astral-sh/setup-uv@v6 support Python 3.14
    • Consider using 3.14-dev or 3.14.0-alpha syntax if needed
    • CI jobs may fail if Python 3.14 isn't available yet
  2. Test Matrix Changes

    • In contrib-test.yml line 340, changed Retrieve job to only test 3.14 (was 3.13)
    • This reduces test coverage - consider testing both 3.13 and 3.14 if resources allow

Performance Considerations

  • Adding Python 3.14 to all test matrices will increase CI runtime and resource usage
  • Current approach tests 5 Python versions × 3 OSes = 15 combinations per job
  • Suggestion: Consider using a tiered approach:
    • Full testing on 3.10 and 3.14 (min and max)
    • Spot-check testing on 3.11, 3.12, 3.13

Security Concerns

  • No security issues identified
  • All changes are configuration-only

Test Coverage

Coverage is appropriate - the PR adds Python 3.14 to:

  • Core tests (core-test.yml)
  • Contrib tests (contrib-test.yml) - 12 job matrices
  • Optional dependencies tests (test-with-optional-deps.yml)
  • Type checking (type-check.yml)

Exclusions properly maintained:

  • Known incompatibilities documented
  • Platform-specific exclusions preserved (macOS/Windows + retrievechat on 3.14)

Recommendations

Before merging:

  1. MUST FIX: Update requires-python = ">=3.10,<3.15" in pyproject.toml:27
  2. Verify: Python 3.14 availability in GitHub Actions (may need to wait for stable release)
  3. Consider: Moving .cursor/ gitignore change to separate PR
  4. Consider: Testing both 3.13 and 3.14 in Retrieve job (contrib-test.yml:340)

After initial CI run:

  • Monitor for dependency compatibility issues
  • Update exclusions if new incompatibilities discovered
  • Document any platform-specific issues

Overall Assessment

This is a well-structured PR with systematic updates across all CI workflows. However, it cannot be merged without updating the requires-python constraint, as this would create a broken configuration where CI tests Python 3.14 but the package explicitly excludes it.

Recommendation: Request changes to fix the requires-python constraint before merging.

* [skip ci] docs: fix outdated docs

* Change < 15 to <=14

---------

Co-authored-by: joggrbot[bot] <107281636+joggrbot[bot]@users.noreply.github.com>
Co-authored-by: Mark Sze <66362098+marklysze@users.noreply.github.com>
@CLAassistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
2 out of 3 committers have signed the CLA.

✅ Lancetnik
✅ marklysze
❌ joggrbot[bot]
You have signed the CLA already but the status is still pending? Let us recheck it.

@claude
Copy link

claude bot commented Oct 22, 2025

Code Review for PR #2138: Add Python 3.14 Support

Summary

This PR adds Python 3.14 to the CI test matrix and updates documentation. The changes are straightforward and systematic, adding "3.14" to all relevant Python version matrices across the CI workflows.

Positive Aspects

  1. Comprehensive Coverage: The PR systematically adds Python 3.14 to all relevant CI workflows (core tests, contrib tests, type checking, optional dependencies tests)

  2. Consistent Implementation: All changes follow the same pattern, maintaining consistency across workflows.

  3. Documentation Updated: The installation documentation is correctly updated from less than 3.14 to less than or equal to 3.14.

  4. Proper Classifier Added: pyproject.toml includes the Python 3.14 classifier.

Critical Issues

1. Python 3.14 Availability

  • Python 3.14 is currently in alpha/pre-release status (as of October 2025)
  • The final release is scheduled for October 2026
  • actions/setup-python@v6 may not have stable Python 3.14 builds available yet
  • Recommendation: Verify that GitHub Actions can actually provision Python 3.14

2. Dependency Compatibility Issues

  • Several dependencies have version constraints that exclude Python 3.13+:
    • crewai[tools] capped at python_version less than 3.13
    • weaviate-client capped at python_version less than 3.13
  • These constraints will prevent installation on Python 3.14
  • Action Required: These constraints need to be updated to support Python 3.14

3. Test Status

  • pre-commit-check: FAILURE - This should be fixed
  • Many Python 3.14 tests show no status yet

Recommendation

Status: Approve with Changes Required

The PR is well-structured but needs updates to dependency constraints before it can work correctly:

  1. Update the python_version constraints in pyproject.toml for crewai and weaviate-client
  2. Ensure Python 3.14 is actually available in GitHub Actions runners
  3. Fix the pre-commit check failure
  4. Verify at least one successful test run with Python 3.14

Review generated by Claude Code

@codecov
Copy link

codecov bot commented Oct 22, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
see 147 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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.

4 participants