-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
build: support python 3.13 #8965
Conversation
Pull Request Test Coverage Report for Build 13672865207Warning: This coverage report may be inaccurate.This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.
Details
💛 - Coveralls |
@@ -8,7 +8,7 @@ dynamic = ["version"] | |||
description = "LLM framework to build customizable, production-ready LLM applications. Connect components (models, vector DBs, file converters) to pipelines or agents that can interact with your data." | |||
readme = "README.md" | |||
license = "Apache-2.0" | |||
requires-python = ">=3.8,<3.13" | |||
requires-python = ">=3.8" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would it be best practice to add ,<3.14
? Or should we only restrict it once new versions of python come out and we figure out then that the version doesn't work?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In hindsight, perhaps it was a mistake to restrict to Python <3.13 (done by me in #8547). I would prefer not to officially support python 3.14 but leave users free to experiment and report errors when this version becomes available.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sounds good to me!
CONTRIBUTING.md
Outdated
@@ -147,6 +147,8 @@ next contribution! | |||
|
|||
### Setting up your development environment | |||
|
|||
*Currently, to contribute to Haystack, you must use a version of Python >=3.9 and <3.13.* |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could we add a bit more explanation for why less than 3.13? Or rather say all tests (or the testing dev env) will not run locally if using python 3.13. They could theoretically contribute to Haystack still and just rely on our CI to run tests.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks! This looks good to me
Related Issues
I experimented with Python 3.13 locally (Ubuntu) and in a draft PR (#8959; Ubuntu, MacOs, Windows).
What I found
NamedEntityExtractor
) is not yet compatible: Spacy installation on python 3.13 fails explosion/spaCy#13658.uv
(but works withpip
): uv fails to compile proper--universal
txt file withopenai-whisper
astral-sh/uv#6852Proposed Changes:
How did you test it?
CI; if you are curious, check also tests in #8959.
Checklist
fix:
,feat:
,build:
,chore:
,ci:
,docs:
,style:
,refactor:
,perf:
,test:
and added!
in case the PR includes breaking changes.