Skip to content
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

Binary wheels for Windows #222

Closed
dahlia opened this issue Sep 15, 2014 · 14 comments
Closed

Binary wheels for Windows #222

dahlia opened this issue Sep 15, 2014 · 14 comments

Comments

@dahlia
Copy link

dahlia commented Sep 15, 2014

Although Dulwich provides setup.py install --pure option, the option cannot be enabled when it’s installed as a dependency of install_requires, or using pip install. On Windows which doesn’t have Visual Studio Dulwich installation fails without --pure option.

So it would be great if Dulwich provides binary wheels for Windows.

@dahlia
Copy link
Author

dahlia commented Sep 15, 2014

Also, the wheel builds for Windows could be automated through AppVeyor CI. There is an AppVeyor template for Python projects as well.

@jelmer
Copy link
Owner

jelmer commented Sep 15, 2014

I agree that would be nice. None of the core developers of Dulwich are on Windows though; it'd be great if somebody volunteered to take this on.

@dahlia
Copy link
Author

dahlia commented Sep 16, 2014

I will work on this soon.

@jelmer
Copy link
Owner

jelmer commented May 23, 2015

Any news on this?

@garyvdm
Copy link
Contributor

garyvdm commented May 23, 2015

Actually started on this today. Will probably have a patch ready tomorrow.

@ankostis
Copy link
Contributor

ankostis commented Oct 2, 2016

Having wheels autogenerated would be much appreciated.
It is possible to automate Appveyor to use twine to push wheels into PyPi, with an appveyor.yml like this:

environment:
  PYPI_USER: "FOO"
  PYPI_PSWD:
    # See https://www.appveyor.com/docs/build-configuration/#secure-variables
    secure: <paste-your-encrypted-value>

#... regular build here

on_success:
  - ps: >-
      $cmtid = git rev-parse HEAD
      if (git describe --exact-match $cmtid) {
        twine upload -u PYPI_USER -p PYPI_PSWD dist/*
      }

Of course the situation becomes a bit more complex if gpg-signing is needed.
I could provide a PR but the user/password have to be set by the owner of the PyPi account.

@jelmer
Copy link
Owner

jelmer commented Oct 4, 2016

On Sun, Oct 02, 2016 at 04:18:11AM -0700, Kostis Anagnostopoulos wrote:

Having wheels autogenerated would be much appreciated.
It is possible to automate Appveyor to use twine to push wheels into PyPi, with an appveyor.yml like this:

environment:
  PYPI_USER: "FOO"
  PYPI_PSWD:
    # See https://www.appveyor.com/docs/build-configuration/#secure-variables
    secure: <paste-your-encrypted-value>

#... regular build here

on_success:
  - ps: >-
      $cmtid = git rev-parse HEAD
      if (git describe --exact-match $cmtid) {
        twine upload -u PYPI_USER -p PYPI_PSWD dist/*
      }

Of course the situation becomes a bit more complex if gpg-signing is needed.
I could provide a PR but the user/password have to be set by the owner of the PyPi account.
One of the problems is that I don't have access to any Windows machines to make
changes on. Ideally, Dulwich needs a Windows maintainer who takes care of the
Appveyor side of things and keeps things running on Windows. Without that,
Windows support is just going to bitrot again.

@Lothiraldan
Copy link
Contributor

I'm also interested in having binary wheels but not only for Windows, for Mac OS X and Linux too.

For Linux, it's quite easy to do thanks to Docker and Mac OS X is not hard, we just need a Mac OS X machine.

I have access to a Mac OS X machine that you could use to generate Mac OS X wheels. I should also be able to find a Windows machine if needed.

Should I send a patch for easily generate Linux wheels through a make command?

@jelmer
Copy link
Owner

jelmer commented May 25, 2018

@Lothiraldan that'd be great, thanks!

@jelmer
Copy link
Owner

jelmer commented Oct 31, 2018

Help on this would still be great.

@jelmer
Copy link
Owner

jelmer commented Apr 3, 2019

The appveyor build is now producing wheels, we're just not uploading them yet.

@jelmer jelmer closed this as completed in 68323fc Apr 3, 2019
@jelmer jelmer reopened this Apr 5, 2019
@jelmer
Copy link
Owner

jelmer commented Apr 5, 2019

It'd be great if somebody could fix up the bit of code in appveyor.yml that uploads wheels for tags only

@jelmer jelmer mentioned this issue May 19, 2019
2 tasks
@jelmer
Copy link
Owner

jelmer commented Jun 3, 2019

This is now mostly in place, and we'll automatically get wheels with the next release of Dulwich.

The only remaining issue is that for some reason urllib3 fails to install with Python 3.4 on Windows:

https://ci.appveyor.com/project/jelmer/dulwich/build/job/fim3ld7m0bbxcwuo

@jelmer
Copy link
Owner

jelmer commented Aug 13, 2019

0.19.12 now has wheels shipped with it. See https://pypi.org/project/dulwich/#files

@jelmer jelmer closed this as completed Aug 13, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants