-
Notifications
You must be signed in to change notification settings - Fork 28
DLL path checks/fixes #58
DLL path checks/fixes #58
Conversation
* reduce the sizes of the matrices for Travis & appveyor wheels CI runs to improve debug iteration times
CI is not happy yet:
|
* augment check_license.py so that it verifies that all DLLs packaged with SciPy wheels reside at the same basepath
27e2467
to
67f3ac7
Compare
Error message on Windows/Appveyor looks nice now:
More work needed to only do this on Windows platform & other things noted above. |
* restrict the DLL common path checking to Windows only * rename check_license.py to check_installed_package.py as suggested by Pauli to reflect the broader scope of the module
cfb6b5c
to
de62213
Compare
The detection of the problem by a "test" in CI looks good now. I'm iterating on the actual fix now.. since we actually patch over distutils in some cases, using the NumPy version doesn't quite seem safe for making a decision on the DLL storage path. I've tentatively tried importing the NumPy that is available at wheel build time & using the standard library to parse the source code proper for an indication that |
b6d0d74
to
9d9135c
Compare
I'd maybe just hardcode the DLL path, as it's unlikely Numpy will ever change it from |
* all DLLs, including msvcp140.dll, should now be placed at the scipy/.libs path
9d9135c
to
41cf00b
Compare
Ok, I backed out the last fix & substituted with a fix that simply replaces I guess we'll see if CI likes that. Did NumPy ever explicitly use |
never a Python thing, IIRC we had the same naming and build setup in NumPy and SciPy. Or it was a |
IIRC, |
This reverts commit 1b180b1.
CI was happy with the reduced test matrix scenario--now restoring the full test matrix with fingers crossed. |
32-bit Linux failures look unrelated -- I've opened an issue The single Appveyor failure so far does look real & related to my changes, though most entries are passing at least:
Most likely the DLL path checking code is not quite portable to Python 3.5 on Windows. |
* improve Windows/Python 3.5 compatibility of the DLL path checking code in check_installed_package.py
I reproduced the Windows Python 3.5 issue locally & managed to fix the pathlib issues with some string coercion---let's hope CI agrees. |
Incidentally, |
Windows/Appveyor now all green with DLL adjustments. The 32-bit Linux issues are not related & were briefly discussed separately with Ralf in main repo issue, so in this goes. |
Fixes #57 (eventually)
Currently contains:
Still likely needs:
check_license.py
now that it is doing more than that (suggested by Pauli)msvcp140.dll
improper location is actually detected by the new "test"msvcp140.dll
in the correct/updated DLL basepath location