-
-
Notifications
You must be signed in to change notification settings - Fork 394
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
Add support and distribution for Python Wheels #563
Comments
Hi Palo, I will gladly review a Pull Request adding support for Python Wheels, but there is not yet such PR. (Personally I have never used Python wheels.) |
Making Wheels is not a code change, but an operational change. Python Wheels as distributed by PyPI would need to be generated on the target platforms. Currently only Mac OS X and Windows are supported by PyPI. I'm not sure how the build process is managed right now. This would be useful for people installing libgit2 on Windows in particular, as compiling the C parts of the code would no longer be necessary. |
In a recent development, support for binary wheels for Linux has been added do pip/pypi, see https://github.com/pypa/manylinux I'll play around with this a bit to see if we could get a binary wheel for pygit2 going. |
Big ol' +1 for this, it'd be a huge feather in the proverbial cap! |
FYI, my current state is here: beniwohli/mygit2@ed4aa030b It builds the manylinux1 binary wheels correctly as far as I can tell, but there is still some cleaning up to do |
If AppVeyor is enabled #652 then fresh wheels could be found in its artifacts tab. |
Fixed by #662. |
It remains to automate the process of uploading the wheels from AppVeyor to Pypi on release. |
Finally did set up to automatically upload the wheels from Appveyor. Working fine! Closing this. |
0.27.1 (2018-06-02) ------------------------- Breaking changes: - Now ``discover_repository`` returns ``None`` if repository not found, instead of raising ``KeyError`` `#531 <https://github.com/libgit2/pygit2/issues/531>`_ Other changes: - New ``DiffLine.raw_content`` `#610 <https://github.com/libgit2/pygit2/issues/610>`_ - Fix tests failing in some cases `#795 <https://github.com/libgit2/pygit2/issues/795>`_ - Automatize wheels upload to pypi `#563 <https://github.com/libgit2/pygit2/issues/563>`_
0.27.2 (2018-09-16) ------------------------- - Add support for Python 3.7 `#809 <https://github.com/libgit2/pygit2/issues/809>`_ - New ``Object.short_id`` `#799 <https://github.com/libgit2/pygit2/issues/799>`_ `#806 <https://github.com/libgit2/pygit2/pull/806>`_ `#807 <https://github.com/libgit2/pygit2/pull/807>`_ - New ``Repository.descendant_of`` and ``Repository.branches.with_commit`` `#815 <https://github.com/libgit2/pygit2/issues/815>`_ `#816 <https://github.com/libgit2/pygit2/pull/816>`_ - Fix repository initialization in ``clone_repository(...)`` `#818 <https://github.com/libgit2/pygit2/issues/818>`_ - Fix several warnings and errors, commits `cd896ddc <https://github.com/libgit2/pygit2/commit/cd896ddc>`_ and `dfa536a3 <https://github.com/libgit2/pygit2/commit/dfa536a3>`_ - Documentation fixes and improvements `#805 <https://github.com/libgit2/pygit2/pull/805>`_ `#808 <https://github.com/libgit2/pygit2/pull/808>`_ 0.27.1 (2018-06-02) ------------------------- Breaking changes: - Now ``discover_repository`` returns ``None`` if repository not found, instead of raising ``KeyError`` `#531 <https://github.com/libgit2/pygit2/issues/531>`_ Other changes: - New ``DiffLine.raw_content`` `#610 <https://github.com/libgit2/pygit2/issues/610>`_ - Fix tests failing in some cases `#795 <https://github.com/libgit2/pygit2/issues/795>`_ - Automatize wheels upload to pypi `#563 <https://github.com/libgit2/pygit2/issues/563>`_
FTR it looks like AppVeyor builds windows wheels without SSH support: -- Disabled features:
* debugpool, debug pool allocator
* tracing, tracing support
* SSH, SSH transport support
* SPNEGO, SPNEGO authentication support
* iconv, iconv encoding conversion support |
macOS wheels are also built without SSH support:
https://github.com/libgit2/pygit2/runs/638662265?check_suite_focus=true#step:7:111 pygit2/.github/workflows/macos.yml Line 80 in 83b63cd
|
@cjolowicz I believe that the PR submitter who added that GHA workflow just went for a simple initial solution and it should be easy enough to iterate on this. You may try sending a PR that enables this flag and adds something like |
Hi,
We started using pygit2 because we it gives us much better performance comparing to executing git commands with parsing its outputs from pipes on Windows. Unfortunately our build environment (several build machines) does not use vs2008. So it is little trickier to distribute the current version of pygit2 on all machines.
I would really appreciate if pygit2 will start distributing pygit2 also as wheel package. See http://pythonwheels.com/
I think much more people would appreciate. It would simplify usage and distribution.
I’ve found http://www.lfd.uci.edu/~gohlke/pythonlibs/#pygit2 did it for some versions.
Have you considered to add support for Python Wheels a in the near future?
Thanks
Palo
The text was updated successfully, but these errors were encountered: