Comments (10)
I know pyworld (https://github.com/JeremyCCHsu/Python-Wrapper-for-World-Vocoder/blob/823e9bda5f2b5bc4e10e2ff44534aa87073250cb/setup.py#L25-L31) avoids the numpy build-time dependency in a tricky way. I'm not sure if it really works or not, but I will look into it.
EDIT: Sorry for the late reply.
from pysptk.
Hi, thank you for the suggestion. That sounds good to me. Could you send a PR for it?
from pysptk.
Sure, I'll get to work
from pysptk.
Ok, so I looked into this and it appears that setup_requires
is incompatible with pip right now and the problem of the missing numpy installation is unavoidable when building from source.
See also this discussion for the exact same issue on scikit-learn.
What is avoidable, though, is having end users being unable to install the package if they do not have numpy in their environment. This can be fixed by publishing a wheel instead of a source bundle (or both) when releasing new versions:
python setup.py sdist
forces end users to build from source and raises an error if numpy is missing.python setup.py bdist_wheel
will produce a pip wheel that takes care of installing all dependencies underinstall_requires
and wil not produce errors for end users whenpip install pysptk
is run.
You can build and upload to pypi both of them with python setup.py sdist bdist_wheel
.
Hope I've been clear.
from pysptk.
I used to provide wheels for earlier releases (e.g., see https://pypi.org/project/pysptk/0.1.3/#files), but as far as I remember correctly there's a binary compatibility issue(s) for linux and also I didn't want to create wheels for each python/os environments, so I end up with the source distribution. I hope there's a clean and simple solution to this.
from pysptk.
If that's the case then I am afraid there is no seamless solution. Everyone who needs to install the package will need to have numpy
already installed in their environment.
Thanks @r9y9
from pysptk.
I've tagged a new release v0.1.15. I believe this should fix the issue. For double-check, @lorenzocestaro Could you please confirm if it works?
from pysptk.
@r9y9 installation work seamlessly now. Thank you very much!
Unfortunately this new version breaks my tests, I will look into that to see if it is a problem on my side.
from pysptk.
Thanks! If you provide me code to reproduce the test failures, I can take a look. Let me know if you need a help.
from pysptk.
I'm closing this out. Feel free to reopen if the problem persists.
from pysptk.
Related Issues (20)
- v1.0.0
- pysptk setup error HOT 3
- Test for python 3.7
- mgcep with itype != 0 HOT 5
- difference between pysptk.sp2mc AND pyworld.code_spectral_envelope HOT 11
- Failing build with readthedocs on external package HOT 4
- Getting the error 'pysptk' has no attribute 'sptk'
- f0 and pitch HOT 2
- The env var used to determine the build tools path for compiling c stuff HOT 1
- install failed on python3.6 HOT 2
- Questions regarding pitch estimators
- theq() : determinant of the normal matrix is too small! HOT 6
- --wenum-conversion error: implicit conversion from enumeration type 'enum __pyx_t_6pysptk_5_sptk_Window' to different enumeration type 'Window' (aka 'enum _Window')
- RAPT is giving all zeros HOT 1
- About MCEP Function HOT 1
- CI is broken HOT 2
- Numpy<v1.20.0 requirement causing problems in Python 3.10 HOT 5
- PYPI install broken HOT 5
- Add wheels to pypi HOT 2
- Errors building installing 0.2.0 via pip install HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pysptk.