-
-
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
removed scipy from build-only dependencies #3538
Merged
mpenkov
merged 13 commits into
piskvorky:develop
from
filip-komarzyniec:3536_remove_scipy_from_build_only_deps
Jul 18, 2024
Merged
Changes from 1 commit
Commits
Show all changes
13 commits
Select commit
Hold shift + click to select a range
a148e9b
removed scipy from build-only dependencies; updated README accordingly
filip-komarzyniec 68197fb
fixed conditions regarding oldest numpy installation on arm64 Windows…
filip-komarzyniec 1dc75de
README rephrased regarding NumPy installation
filip-komarzyniec c3a1f4a
Revert "fixed conditions regarding oldest numpy installation on arm64…
filip-komarzyniec 1d4beef
pin scipy, need old sparsetools for wheel testing
mpenkov 843d05a
Merge branch 'develop' into 3536_remove_scipy_from_build_only_deps
mpenkov ee1e3dc
make scipy pin more strict
mpenkov 9256f85
Merge remote-tracking branch 'refs/remotes/filip-komarzyniec/3536_rem…
mpenkov 8df0205
use macos-latest instead of deprecated macos-11
mpenkov 420a415
pin scipy in setup.py
mpenkov 5db44ee
remove redundant scipy pin from build-wheels.yml
mpenkov 0b01e9e
get rid of remaining macos-11 traces in CI workflow
mpenkov 3b1f09e
use macos-12 instead of macos-latest
mpenkov File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
Does it really have to be installed prior to installing
gensim
having in mind that a proper numpy version is already specified in build-system.requires table? Meaning it will be downloaded automatically during gensim build phase.If it does not --- what should we do with regard to the next paragraph about BLAS lib? I think it will not be customisable for any architecture that a numpy .whl build exists for.
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.
Yes, I think the sentence starting "You must" is incorrect. Numpy will get installed automatically if it already isn't there.
With BLAS, I think we just leave that note as-is. You can't customize it as part of the gensim install. If you want to mess with BLAS, then you have to do it yourself, before installing numpy and gensim.
Right @piskvorky ?
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.
I forgot how exactly it worked back then. IIRC numpy was needed for the installation of gensim: as in numpy actively used during install, down to its C API. Maybe scipy too. I believe that is the intent behind "You must have [numpy] installed prior to installing gensim".
If
pip
installs numpy automatically before the gensim install itself starts, that's great. Some people don't usepip
, I don't know all the deployment methods people use (from source, conda, etc) and whether they all install dependencies first.In any case that was 15 years ago, the current ecosystem might work differently, maybe none of this is needed.
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.
As I see it, the problem of linking Numpy to any BLAS lib is a matter to worry about only during building Numpy from source.
This can occur only if:
one wants to customise his Numpy build in a non typical way. In this case I believe such person knows what he's doing so this note is not really valuable for him,
one installs gensim which in turn downloads appropriate NumPy build (but src distribution instead of a .whl). Then the pip (or I believe any package manager) would try building the NumPy from source and implicitly linking an existing BLAS lib.
What's more, a NumPy installed as a gensim's dependency will not be (in some cases) the same NumPy as used for building gensim. Pip by default builds a library in a separate temporary virtual env where it installs build-only dependencies.
I've redacted the paragraph. Please review whether it sounds sensible .