-
-
Notifications
You must be signed in to change notification settings - Fork 153
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
Replace distutils
with setuptools
#1050
Replace distutils
with setuptools
#1050
Conversation
05a2c16
to
8b96379
Compare
8b96379
to
1f31a97
Compare
I wonder if these changes help with #1005, #980, and conda-forge/aesara-feedstock#54. |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #1050 +/- ##
==========================================
- Coverage 79.25% 79.25% -0.01%
==========================================
Files 152 152
Lines 47887 47882 -5
Branches 10909 10909
==========================================
- Hits 37955 37949 -6
- Misses 7435 7436 +1
Partials 2497 2497
|
@aesara-devs/core, I'm ready to merge this, but I'm a little unsure about the |
I don't use setuptools very much, but you might consider adding a For the Aesara installation itself, the I see that you very rarely change the dependencies, so it generally makes sense to have I recommend disabling automerge, at least for now, so that we can make sure the dependencies are correctly declared. You can always add the |
This PR replaces
distutils
imports with the equivalentsetuptools
imports, in anticipation ofdistutils
's deprecation.The
numpy.distutils
changes in this PR may affect the "dynamic" determination of build settings, since the oldnumpy.distutils.system_info.get_info
appears to rely on the discoveredpkg-config
binary in one step, and that binary could be arbitrarily changed. The approach used in this PR—i.e.numpy.__config__.get_info
—relies on thesystem_info
settings at the time whennumpy
was built, and appears to return the appropriate environment-specific library/include paths.Since the underlying parameters are all still configurable via
aesara.config
and/or environment variables, I'm not too concerned about losing any fringe functionality with this change, especially not when the parameters we're trying to obtain are explicitly the parameters used by NumPy (i.e. the ones given bynumpy.__config__.get_info
), and not the ones given by an arbitrarypkg-config
in one's path or the like. My guess is that the latter actually leads to more errors and confusion than benefits.