ashvardanian / ashvardanian/NumKong
Bug: Windows DLL import error with `numkong >= 7.5.0`
- Dominant language
- C
- Stars
- 1.9k
- Forks
- 130
- Avg merge
- 18h 28m
- Merged PRs (30d)
- 3
Description
### Describe the bug
Installing `numkong >= 7.5.0` on Windows via pip (or conda-forge) and trying to import the package results in an ImportError with DLL load failed. Problem goes away by _downgrading_ to version 7.4.x
### Steps to reproduce
1. Create a conda or virtual environment on a Windows system (I used python 3.13, but saw the problem in 3.12 and 3.11)
2. Activate environment
3. Install `numkong` with pip (or from conda-forge) with version >= 7.5.0
4. Run: `python -c "import numkong as nk; print(nk.__version__)"`
5. Get DLL import error:
```Python
from numkong._numkong import * # noqa: E402,F401,F403
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ImportError: DLL load failed while importing _numkong: The specified module could not be found.
```
### Expected behavior
The import DLL error should not occur.
Problem disappears if I _downgrade_ to `numkong~=7.4.5`
### NumKong version
v7.5.0, v7.6.0, v7.7.0
### Operating System
Windows Server 2019
### Hardware architecture
x86
### Which interface are you using?
Python bindings
### Contact Details
acimmarusti@gmail.com
### Are you open to being tagged as a contributor?
- [x] I am open to being mentioned in the project `.git` history as a contributor
### Is there an existing issue for this?
- [x] I have searched the existing issues
### Code of Conduct
- [x] I agree to follow this project's Code of Conduct
Contributor guide
Research direction
Start by reproducing the Windows command `python -c "import numkong as nk; print(nk.__version__)"` in Python 3.11–3.13, then inspect the `numkong._numkong` Python binding and compare installation artifacts from 7.4.5 with 7.5.0 and later. Done means the package imports successfully on Windows Server 2019 for the reported installation paths without the DLL load error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, python
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100