Skip to content

chore!: otari - drop Python 3.10 and test with Python 3.15 - #4117

Merged
julian-risch merged 1 commit into
mainfrom
chore/otari-python-3.11-3.15
Oct 16, 2026
Merged

julian-risch merged 1 commit into
mainfrom
chore/otari-python-3.11-3.15

Conversation

@julian-risch

@julian-risch julian-risch commented Oct 16, 2026 •

Copy link
Copy Markdown
Member

Related Issues

otari still required Python 3.10, and CI tested 3.10 and 3.14. Since haystack-ai main requires Python >=3.11, its nightly "run unit tests with Haystack main branch" step fails on the 3.10 job: https://github.com/deepset-ai/haystack-core-integrations/actions/runs/38828950090.

Proposed Changes:

  • pyproject.toml: requires-python = ">=3.11", and the 3.10 classifier is replaced with 3.15.
  • .github/workflows/otari.yml: tests 3.11 and 3.15.
  • pydantic: adds pydantic>=2.14.0; python_version >= '3.15', as test: test compatible integrations with Python 3.15; update pyproject #4104 did for cohere and ollama.
    • Otherwise the lowest-direct job on 3.15 picks pydantic 2.12.0. Its pydantic-core (PyO3 0.26) doesn't build on 3.15.
    • The pydantic floor for 3.11–3.14 is unchanged.

How did you test it?

Notes for the reviewer

  • Draft until CI passes.
  • The ! makes git-cliff mark this as breaking, as chore!: drop Python 3.10 support #4105 did for the other integrations. That makes the next otari release 2.0.0, though 1.0.0 came out only yesterday. No problem i my opinion. Using 1.1.0 instead would be inconsistent.

Checklist

  • I have read the contributors guidelines and the code of conduct
  • I have updated the related issue with new insights and changes — n/a, no related issue
  • I added unit tests and updated the docstrings — n/a, no behavior change
  • I've used one of the conventional commit types for my PR title: fix:, feat:, build:, chore:, ci:, docs:, style:, refactor:, perf:, test:.

🤖 Generated with Claude Code

otari was merged after the repo-wide Python bump (#4103, #4104, #4105),
so it still required Python 3.10, and its nightly "Haystack main branch"
step failed on the 3.10 leg because haystack-ai main requires >=3.11.

- requires-python >=3.11; replace the 3.10 classifier with 3.15.
- CI tests 3.11 and 3.15.
- Require pydantic>=2.14.0 on Python 3.15: older pydantic-core releases
  don't build there, which breaks the lowest-direct job.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Contributor

Coverage report (otari)

This PR does not seem to contain any modification to coverable code.

@julian-risch
julian-risch marked this pull request as ready for review October 16, 2026 08:35
@julian-risch
julian-risch requested a review from a team as a code owner October 16, 2026 08:35
@julian-risch
julian-risch requested review from sjrl and removed request for a team October 16, 2026 08:35
@julian-risch
julian-risch merged commit 6a7e3ec into main Oct 16, 2026
26 checks passed
@julian-risch
julian-risch deleted the chore/otari-python-3.11-3.15 branch October 16, 2026 08:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants