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

github action - maturin version uncompatibleness #6

Closed
nakata5321 opened this issue Sep 3, 2022 · 15 comments
Closed

github action - maturin version uncompatibleness #6

nakata5321 opened this issue Sep 3, 2022 · 15 comments

Comments

@nakata5321
Copy link

nakata5321 commented Sep 3, 2022

Hi, Now i'm working with you github actions. I want to and wheels for musllinux - now you only have them for manylinux. I've made the part of github action with wheels for musllinux(for all platforms) and decided to integrate this part in your main action "pypi.yml" and found a problem:
You create wheels with maturin package. I've run your action and got the following error :

Install maturin
/Users/runner/work/_temp/eb1e002f-1706-440d-b4c1-48da9b279fd7/maturin build -i python --release --out dist --no-sdist --target x86_64-apple-darwin
error: Found argument '--no-sdist' which wasn't expected, or isn't valid in this context

	Did you mean '--sdist'?

	If you tried to supply `--no-sdist` as a value rather than a flag, use `-- --no-sdist`

USAGE:
    maturin build --interpreter <INTERPRETER>... --release --out <OUT> --sdist

For more information try --help

Full logs you can find here.

As I have figured, this is a version-related issue. The last time you have created wheels with action was 9 months ago. Actual version of maturin was 0.12.4. And everything was OK. But now actual version is 0.13.2 and they have reworked key words and there is no more --no-sdist and action fails.

What can we done, to avoid this issue?

@nakata5321
Copy link
Author

nakata5321 commented Sep 3, 2022

Also, In other your library py-bip39-bindings in your pyproject.toml set version for maturin - requires = ["maturin>=0.10,<0.11"]. But in this library you don't have this requirement.

@arjanz
Copy link
Member

arjanz commented Sep 11, 2022

As I have figured, this is a version-related issue. The last time you have created wheels with action was 9 months ago. Actual version of maturin was 0.12.4. And everything was OK. But now actual version is 0.13.2 and they have reworked key words and there is no more --no-sdist and action fails.

What can we done, to avoid this issue?

In recent versions of maturin they changed the behaviour, there is no sdist by default and only when you specify --sdist. I will have to change that, but first I need to set a version indeed to prevent breaking the build process.

@arjanz
Copy link
Member

arjanz commented Sep 11, 2022

Important to mention is that soon these bindings will be replaced by https://github.com/polkascan/py-ed25519-zebra-bindings because of security issues mentioned here #4 in the ed22519-dalek RUST crate.

@arjanz
Copy link
Member

arjanz commented Sep 11, 2022

I added musllinux builds and publish to PyPI, also for the zebra bindings. Let me know if this works for you now

@nakata5321
Copy link
Author

I added musllinux builds and publish to PyPI, also for the zebra bindings. Let me know if this works for you now

I check, and everything is working now. Thank you very match.

@nakata5321
Copy link
Author

Important to mention is that soon these bindings will be replaced by https://github.com/polkascan/py-ed25519-zebra-bindings because of security issues mentioned here #4 in the ed22519-dalek RUST crate.

About this library. Here, you forget to add to you action one requirement - here. You forget to add "musllinux" action and your last action "release" doesn't wait "musllinux" action to complete and upload to PyPi wheels. As result, no wheels for musl on Pypi.

@arjanz
Copy link
Member

arjanz commented Sep 12, 2022

About this library. Here, you forget to add to you action one requirement - here. You forget to add "musllinux" action and your last action "release" doesn't wait "musllinux" action to complete and upload to PyPi wheels. As result, no wheels for musl on Pypi.

Good find, thanks for pointing this out. Re-initiated release: https://github.com/polkascan/py-ed25519-zebra-bindings/actions/runs/3037717851

@nakata5321
Copy link
Author

nakata5321 commented Sep 13, 2022

One more thing to you: now I can't find wheels for "manylinux" for aacrh64 on Pypi - https://pypi.org/project/py-ed25519-bindings/#files. Can you upload them to PyPi?

@nakata5321
Copy link
Author

And I can't find action, where you actually build them for aarch64. How do you do it?
I ask, because, if you want, I can create(add in previous my PR) action to build also for manylinux-aarch64.

@arjanz
Copy link
Member

arjanz commented Sep 13, 2022

And I can't find action, where you actually build them for aarch64. How do you do it? I ask, because, if you want, I can create(add in previous my PR) action to build also for manylinux-aarch64.

Yes I didn't find a way at that time to build those with Github actions, so I build them manually with a RPi4 (which I hopelessly forgot). Because of your addition I am looking into pypa/cibuildwheel though and seems the way to go, but didn't get the time yet to replace all wheels builds to this action.

Help would be appreciated! :)

@nakata5321
Copy link
Author

Hi, it's me again.
First, thank you for uploading wheels for aarch64 to PyPi.
I've created addition to your github action for auto building and uploading next versions to PyPi.
First is here - polkascan/py-bip39-bindings#10

@nakata5321
Copy link
Author

second one here - polkascan/py-sr25519-bindings#9

@nakata5321
Copy link
Author

and the last one - polkascan/py-ed25519-zebra-bindings#2

@arjanz
Copy link
Member

arjanz commented Sep 24, 2022

Ok merged and the actions ran, all available on PyPI. Thanks again for contributing, this will make the following releases much easier

@nakata5321
Copy link
Author

Good, thank you.

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

No branches or pull requests

2 participants