-
Notifications
You must be signed in to change notification settings - Fork 31
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
Create wheels for pypi #8
Comments
I need to look into it. I believe these docs describe how to do it. Because this project contains a compiled extension (i.e., it contains C code that needs to be compiled), I need to make sure I get the wheel correct. It looks like I just need to create platform wheels. |
I know about the C code, that is why I really would like a wheel, I have a developer on my team that would like to use your package. But as of now I am blocking it as the production servers should not compile C code. We only use wheels in productions. |
It is just best practice to upload wheels today instead of source distributions. :) It makes it a little more hard for you, because you have to create the wheels, for all the different platforms. But it is better you do it right once. Instead like in this situation where the users (like us) have to build their own wheel. |
I'll definitely look into it. I think I can set aside some time Sunday to deal with PR #7 and this issue. |
@gfairchild, I can help you if you want. I have access to osx, freebsd and linux platforms. |
Hm, looking at the docs:
I've got access to Windows and OS X. I have access to Linux as well, but it doesn't look like that'll be useful. |
tell that to the numpy people :) https://pypi.python.org/pypi/numpy there is alot of linux wheel out there. I will look into it too :) |
Ok! In that case, I can totally look into it. |
I think we should look into this project https://github.com/pypa/manylinux |
Nice find. I hadn't heard of that before. |
I just built and uploaded an OS X wheel (my work laptop is a Mac):
That's all it took (well, after running Looking into manylinux. |
Potentially related, there is a conda-forge recipe/build for this so you should be able to |
Cool! Thanks for bringing that to my attention. Really neat for that to exist. |
Feel free to PR/issue against it. I went from the PyPi release, which is missing the tests and licence. |
Hello! Any news on this topic? |
Unfortunately not. Work has been absolutely crazy this year. However, I'd love it if someone would like to help me out by issuing a PR. |
FYI, I'm actively working on this now. I'm trying to figure out how to build manylinux containers manually (without Travis). pypa/manylinux#73 is where this is going down right now. |
Making some progress. This primarily comes from https://github.com/pypa/python-manylinux-demo/blob/master/travis/build-wheels.sh. > docker pull quay.io/pypa/manylinux1_x86_64
> docker run -it -v $(pwd):/io quay.io/pypa/manylinux1_x86_64
[root@1c3dba71b425 /]# # Compile wheels
for PYBIN in /opt/python/*/bin; do
"${PYBIN}/pip" wheel /io/ -w wheelhouse/
done
# Bundle external shared libraries into the wheels
for whl in wheelhouse/*.whl; do
auditwheel repair "$whl" -w /io/wheelhouse/
done
# Install packages and test
for PYBIN in /opt/python/*/bin/; do
"${PYBIN}/pip" install pyxDamerauLevenshtein --no-index -f /io/wheelhouse
done With this, I end up with a new directory in the root pyxDamerauLevenshtein directory called [root@f9689e43204c /]# cd io/wheelhouse/
[root@f9689e43204c wheelhouse]# ls -la
total 86928
drwxr-xr-x 14 root root 448 Jan 7 22:56 .
drwxr-xr-x 19 root root 608 Jan 7 22:56 ..
-rw-r--r-- 1 root root 13835276 Jan 7 23:04 numpy-1.15.4-cp27-cp27m-manylinux1_x86_64.whl
-rw-r--r-- 1 root root 13834837 Jan 7 23:04 numpy-1.15.4-cp27-cp27mu-manylinux1_x86_64.whl
-rw-r--r-- 1 root root 13831861 Jan 7 23:04 numpy-1.15.4-cp34-cp34m-manylinux1_x86_64.whl
-rw-r--r-- 1 root root 13835425 Jan 7 23:04 numpy-1.15.4-cp35-cp35m-manylinux1_x86_64.whl
-rw-r--r-- 1 root root 13855020 Jan 7 23:04 numpy-1.15.4-cp36-cp36m-manylinux1_x86_64.whl
-rw-r--r-- 1 root root 13845388 Jan 7 23:05 numpy-1.15.4-cp37-cp37m-manylinux1_x86_64.whl
-rw-r--r-- 1 root root 77187 Jan 7 23:05 pyxDamerauLevenshtein-1.5.2-cp27-cp27m-manylinux1_x86_64.whl
-rw-r--r-- 1 root root 77211 Jan 7 23:05 pyxDamerauLevenshtein-1.5.2-cp27-cp27mu-manylinux1_x86_64.whl
-rw-r--r-- 1 root root 84204 Jan 7 23:05 pyxDamerauLevenshtein-1.5.2-cp34-cp34m-manylinux1_x86_64.whl
-rw-r--r-- 1 root root 86550 Jan 7 23:05 pyxDamerauLevenshtein-1.5.2-cp35-cp35m-manylinux1_x86_64.whl
-rw-r--r-- 1 root root 88682 Jan 7 23:05 pyxDamerauLevenshtein-1.5.2-cp36-cp36m-manylinux1_x86_64.whl
-rw-r--r-- 1 root root 90239 Jan 7 23:05 pyxDamerauLevenshtein-1.5.2-cp37-cp37m-manylinux1_x86_64.whl I don't quite understand the wheel-making process well enough yet to understand why this script is placing NumPy wheels in |
@gfairchild Has there been any progress on this issue? I'm still trying to figure out how to get this installed on my local machine. |
Unfortunately not. I haven't had the time to tackle this issue, and I'm not currently using the library myself at this time, so it hasn't been a priority. I'd love a contribution from the community, though! As long as you have a C compiler, you should be able to |
Is this a thing that could be done?
The text was updated successfully, but these errors were encountered: