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

build wheels using Github actions, add test #8

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

vertiond
Copy link

Part 2 of breaking up #1

This is set up to build wheels on push/pull and deploy to PyPI on tags starting with v using pypi_password in secrets

12 wheels produced in 13 minutes:
  ltc_scrypt-1.0-cp310-cp310-win32.whl
  ltc_scrypt-1.0-cp310-cp310-win_amd64.whl
  ltc_scrypt-1.0-cp36-cp36m-win32.whl
  ltc_scrypt-1.0-cp36-cp36m-win_amd64.whl
  ltc_scrypt-1.0-cp37-cp37m-win32.whl
  ltc_scrypt-1.0-cp37-cp37m-win_amd64.whl
  ltc_scrypt-1.0-cp38-cp38-win32.whl
  ltc_scrypt-1.0-cp38-cp38-win_amd64.whl
  ltc_scrypt-1.0-cp39-cp39-win32.whl
  ltc_scrypt-1.0-cp39-cp39-win_amd64.whl
  ltc_scrypt-1.0-pp37-pypy37_pp73-win_amd64.whl
  ltc_scrypt-1.0-pp38-pypy38_pp73-win_amd64.whl
python test.py 
('ltc_scrypt', '53232d90adebc88ab0855434cfaf6822fce47c62b2bdd7e8d84f667868a1ee40')

xanimo
xanimo previously approved these changes Aug 1, 2022
Copy link
Member

@xanimo xanimo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Concept ACK. test.py works as expected (from reviewing previous PR) and CI run was successful despite no pypi module deployment: https://github.com/xanimo/ltc-scrypt/actions/runs/2771596763

Outside of that I'm curious on whether or not this needs multi-arch support (noting the build on windows-2019) and/or if you've any thoughts regarding that subject?

@patricklodder patricklodder requested a review from xanimo August 1, 2022 02:13
@patricklodder patricklodder dismissed xanimo’s stale review August 1, 2022 02:13

concept ACK != approval ❤️

@xanimo
Copy link
Member

xanimo commented Aug 5, 2022

Concept ACK. test.py works as expected (from reviewing previous PR) and CI run was successful despite no pypi module deployment: https://github.com/xanimo/ltc-scrypt/actions/runs/2771596763

Outside of that I'm curious on whether or not this needs multi-arch support (noting the build on windows-2019) and/or if you've any thoughts regarding that subject?

Thanks for mitigating my mistake @patricklodder 😸 ❤️

That aside, I've done some research and experimentation's with regards to multi-arch builds and have done a couple CI runs with your (@vertiond ) other changes (PR #7) cherry-picked on top and then with some amendments to the .yml itself and have successfully built for win, macos and 'manylinux'. It also appears pypa/cibuildwheel supports Linux ARM as well so perhaps we could potentially integrate that as well. More on those changes can be found here.

7 wheels produced in 9 minutes:
  ltc_scrypt-1.0-cp310-cp310-macosx_10_9_x86_64.whl
  ltc_scrypt-1.0-cp36-cp36m-macosx_10_9_x86_64.whl
  ltc_scrypt-1.0-cp37-cp37m-macosx_10_9_x86_64.whl
  ltc_scrypt-1.0-cp38-cp38-macosx_10_9_x86_64.whl
  ltc_scrypt-1.0-cp39-cp39-macosx_10_9_x86_64.whl
  ltc_scrypt-1.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
  ltc_scrypt-1.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl

...

12 wheels produced in 10 minutes:
  ltc_scrypt-1.0-cp310-cp310-win32.whl
  ltc_scrypt-1.0-cp310-cp310-win_amd64.whl
  ltc_scrypt-1.0-cp36-cp36m-win32.whl
  ltc_scrypt-1.0-cp36-cp36m-win_amd64.whl
  ltc_scrypt-1.0-cp37-cp37m-win32.whl
  ltc_scrypt-1.0-cp37-cp37m-win_amd64.whl
  ltc_scrypt-1.0-cp38-cp38-win32.whl
  ltc_scrypt-1.0-cp38-cp38-win_amd64.whl
  ltc_scrypt-1.0-cp39-cp39-win32.whl
  ltc_scrypt-1.0-cp39-cp39-win_amd64.whl
  ltc_scrypt-1.0-pp37-pypy37_pp73-win_amd64.whl
  ltc_scrypt-1.0-pp38-pypy38_pp73-win_amd64.whl

...

24 wheels produced in 6 minutes:
  ltc_scrypt-1.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
  ltc_scrypt-1.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  ltc_scrypt-1.0-cp310-cp310-musllinux_1_1_i686.whl
  ltc_scrypt-1.0-cp310-cp310-musllinux_1_1_x86_64.whl
  ltc_scrypt-1.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
  ltc_scrypt-1.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  ltc_scrypt-1.0-cp36-cp36m-musllinux_1_1_i686.whl
  ltc_scrypt-1.0-cp36-cp36m-musllinux_1_1_x86_64.whl
  ltc_scrypt-1.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
  ltc_scrypt-1.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  ltc_scrypt-1.0-cp37-cp37m-musllinux_1_1_i686.whl
  ltc_scrypt-1.0-cp37-cp37m-musllinux_1_1_x86_64.whl
  ltc_scrypt-1.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
  ltc_scrypt-1.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  ltc_scrypt-1.0-cp38-cp38-musllinux_1_1_i686.whl
  ltc_scrypt-1.0-cp38-cp38-musllinux_1_1_x86_64.whl
  ltc_scrypt-1.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
  ltc_scrypt-1.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  ltc_scrypt-1.0-cp39-cp39-musllinux_1_1_i686.whl
  ltc_scrypt-1.0-cp39-cp39-musllinux_1_1_x86_64.whl
  ltc_scrypt-1.0-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
  ltc_scrypt-1.0-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  ltc_scrypt-1.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
  ltc_scrypt-1.0-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Outside that I attempted to bump to 3.10 and use pypa and am a bit perplexed into how long it's taking for Windows 2019 but considering we'd probably only have to build once in a blue moon, it's not that big of a deal.

With that said, I'd like to hear both your thoughts on this and if we should get them in now or just support Windows at this current juncture? Also in consideration of the fact my questions about multi arch are irrelevant for use in core since we'll be fetching an archive and building ourselves, I don't necessarily think this should be blocking, but the feature in and of itself could be more robust I suppose.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants