-
-
Notifications
You must be signed in to change notification settings - Fork 4.4k
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
Tight Version Constraints on thinc in spaCy 3.8.2 Causing Dependency Resolution Issues for AutoGluon Users #13653
Comments
kind reminder |
hi. I keep getting the same error on my Linux environment python 3.10.12. How can I solve this? |
I'm experiencing the same |
The version constraints on thinc accurately reflect the compatibility range. The issue is that numpy v2 splits the ecosystem for now, and so there's a number of irreconcilable version conflicts. It's impossible for us to have a version that is compatible across numpy v1 and numpy v2, because we compile against numpy and the binary API has changed. This means there will be some package combinations that are impossible to install together. If package A needs numpy v1 and package B needs numpy v2, you won't be able to find a version of spaCy that works with both packages. |
is it possible to split numpy into a peer dependency and require the user to install it? maybe its a silly question, but worth asking. Its possible to be defensive about this in python, dunno about bindings etc. that you guys have. |
How to reproduce the behaviour
When attempting to install
autogluon==1.1.1
, the installation fails due to dependency resolution issues involvingspaCy<4.0
and its tight version constraints onthinc
. This leadspip
to select incompatible versions of packages likeonnx
, resulting in installation failures.Steps to reproduce:
Create a new virtual environment:
Upgrade
pip
to the latest version:Attempt to install
autogluon==1.1.1
:Observe the installation failure, particularly with the
onnx
package.Error Message:
Additional Information:
spaCy==3.8.2
on 2024-10-01.spaCy
to version3.7.5
resolves the installation issue.thinc
specified byspaCy<4.0
(e.g.,thinc<8.4.0,>=8.3.0
) appear to be causing dependency resolution conflicts.spaCy<4.0
, such asautogluon
.Explanation:
spaCy<4.0
specifies strict version constraints onthinc
, requiring versions between>=8.3.0
and<8.4.0
.pip
to spend a long time resolving dependencies and ultimately selects older, incompatible versions of other packages (likeonnx
), which fail to install.thinc
could allowpip
to find a compatible set of package versions, preventing the installation failure.Your Environment
spaCy==3.8.2
autogluon==1.1.1
thinc
versions being considered:8.3.0
,8.3.1
,8.3.2
Our Request:
We kindly request the spaCy team to consider adjusting the version constraints on
thinc
inspaCy<4.0
to be less restrictive, or to release a patch version that relaxes these constraints. This adjustment could help prevent dependency resolution issues for users installing packages that depend onspaCy<4.0
.Is it feasible to modify these constraints without impacting spaCy's functionality? Any guidance or assistance on this matter would be greatly appreciated.
Thank you for your time and support.
Note: If this issue is better suited for a discussion, please let me know, and I'll be happy to open a discussion thread instead.
The text was updated successfully, but these errors were encountered: