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

PyPi distribution #351

Open
wants to merge 6 commits into
base: master
Choose a base branch
from
Open

PyPi distribution #351

wants to merge 6 commits into from

Conversation

percevalw
Copy link
Contributor

Hi,

This PR follows #349 and adds GitHub actions to build, test and upload pre-built binaries & source package to PyPI (under the name pycdc) for most platforms. This allows end users to simply run:

pip install pycdc

to install the library, without having to clone or build anything in most cases (with the exception of arm based macs and other exotic platforms that need to have pre-installed build environments to run the above command).

There are two new workflow files triggered by hand or by the following events:

  • on push to branch vx.y.z (version bump branches): build and test python binaries against major platforms
  • on releases: build, test and upload binaries & source to PyPI. This one requires manually uploading a first package (usually empty or source dist) to pypi to acquire the pycdc name and enabling the Trusted Publisher feature

I've restricted python versions to 3.7 to 3.10, since I was not able to build the lib for python < 3.7 and python 3.11 doesn't seem well supported atm (in particular, tests/test_bindings.py fails with in 3.11). In theory, python 3.11 could be used to run decompile code, but only of lower versions of python at the moment, which might be confusing ? Let me know what you think.

I also took the liberty of adding some shields to the readme to reflect the state of the project (tests / pypi version / installable python versions).

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.

None yet

1 participant