-
-
Notifications
You must be signed in to change notification settings - Fork 18.5k
Dependency Overkill in setup.py #17519
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
Comments
this would just add complexity would rather we fix the inline warnings! |
I will gladly make this PR. Totally happy to not-add complexity. Really asking for my own edification (and hopefully understanding this will make me less likely to screw up future PRs). Specific questions about two examples and then I'll drop this. Super-simple example is For the other direction let's look at |
you can try and see if it reduces build time but i suspect it won't very much at all |
Again, not looking to change anything, just trying to understand how it works. |
i think you would have to dive into how disutils assembles stuff / prob can just try some things and see |
The extensions dependencies defined in
ext_data
are passed to thedistutils.extension.Extension
constructor asNone of the
data
dicts has ainclude
key, so they all end up passinginclude=common_include=['pandas/_libs/src/klib', 'pandas/_libs/src']
. As a result(?) a bunch of the dependencies that are listed can be removed without breaking the build. e.g. I can completely get rid oflib_depends
and every appearance of `_libs/src/util' without any apparent consequences.I'm just speculating because I don't really get how depends vs include_dirs works, but it seems like having
common_include
added to everything is massive overkill. For most of these exts they only need a couple of the files from _libs/src/. But poking at it, I have not figured out what combination of args is needed to specify e.g.reshape.pyx cimports src/util.pxd which needs src/numpy_helper.h and src/headers/stdint.h
without breaking the build.So the questions:
The text was updated successfully, but these errors were encountered: