-
Notifications
You must be signed in to change notification settings - Fork 189
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
Wheel support? #121
Comments
Good idea. Not sure what this means for release management though? Is there some wheel-as-a-service thing so I don't need to have Windows Mac and Linux? |
Some CI services could be used. On Travis OS X containers can be used (but I have no experience with them) and AppVeyor (See https://packaging.python.org/guides/supporting-windows-using-appveyor/) makes it possible to build on Windows - still this all has to be set up. For Linux an "manylinux" wheel would be great, it is possible to also use them on travis (example project: https://github.com/pypa/python-manylinux-demo). |
Ok, I'm happy to incorporate this into the release process as long as it means I don't have to install Linux or Windows. Even better if this could be done completely on CI or some trustworthy third party service. |
(Docker is fine as well) |
@jonashaag The manylinux wheel creation is done with Docker. |
I see; I'll have a look |
Looks good but seems to be a bit of work. Feel free to contribute a working PR :) |
As Continuous Integration could also run a test suite, would you mind if I convert some of the present tests into some independently running automated tests? So before building wheels, it will be tested if nothing broke. |
That would be absolutely awesome. See also #52. I never got around to doing it. |
I would like to say that I find this PR quite interesting. Based upon corporate constraints, I have to develop on a Windows machine, even though I deploy to Linux. It would be nice to be able to have bjoern run on my development environment. |
I have binary wheels built for several Debian and Ubuntu releases here https://github.com/dgilman/bjoern/releases |
Does the wheel embed libev or do you still need to install libev4 ? does manylinux requires plateforme to ship libev ? |
Here's my humble suggestion: a Travis job configuration that builds fat Linux/MacOS wheels with This is how the release would look like (a fake 3.0.3 in this example): Linux wheels are being built in the No fat wheels for Windows since I couldn't get past compiling I also started to port the scripts from the |
Actually, releasing one plateform at a time may help make a step further. |
Just a note, we should ship a variant with statd enabled. I thinks of another wheel named |
@jonashaag what is the release process as of now ? Do you push manually artefacts to PyPI ? |
Ok, I found |
Yes that's what I'm using. And that's the entire release process for now. I'm happy to change to any other release process ;) |
Any update on wheels ? I would like to not have to install libev using apt for pip installing bjoern. Thanks. |
For what it's worth, I wanted to build Bjoern wheels for an internal use-case so I wrote a Dockerfile to do it: FROM quay.io/pypa/manylinux2014_x86_64
RUN yum install -y gcc libev-devel \
&& /opt/python/cp38-cp38/bin/pip3.8 wheel bjoern==3.1.0 \
&& auditwheel repair /bjoern-3.1.0-cp38-cp38-linux_x86_64.whl This generates |
#178 added plumbing for wheels on Linux. But @jonashaag didn't published wheels yet on PyPI. Today, I also had a look at https://cibuildwheel.readthedocs.io/en/stable/setup/#github-actions which may improve the situation. |
Having wheels on PyPi could make installation a lot faster and may also solve the "library headers are required for installation"-problem.
By the way, nice work!
The text was updated successfully, but these errors were encountered: