fhs / pyhdf

Python wrapper around the NCSA HDF version 4 library
https://pypi.org/project/pyhdf/
Other
46 stars 15 forks source link

add source distribution step to workflow #51

Closed abrammer closed 3 years ago

abrammer commented 3 years ago

Add source distribution to wheelhouse directory for artifact and pypi upload. Follow on from #49.

Note, I think this will work, but don't have experience actually doing this specific step for upload to pypi. Might be worth pushing an alpha release branch just to test this whole workflow. A branch with the version 0.10.3a1 or similar pre-release version number with a tag should get uploaded to test.pypi without doing anything to master or real pypi.

fhs commented 3 years ago

It failed: https://github.com/fhs/pyhdf/runs/2605865798

abrammer commented 3 years ago

Ahh, not the error I expected but makes sense. Added the numpy dep and bumped the setup.py version so the upload doesn't collide with any 10.2 versions already uploaded. Ran a test workflow in my repo and other than an obvious pypi authentication issue, looks like everything should be right now. Both wheels and the tar.gz were ready to be uploaded.

fhs commented 3 years ago

@abrammer The alpha seems to be working now. I had to install numpy manually in a fresh virtualenv before I could import pyhdf.SD. I wonder why numpy isn't being installed automatically by pip when I install pyhdf. There is a pyproject.toml which lists build dependencies. Do we need something else for wheels? requirements.txt?

abrammer commented 3 years ago

Awesome, yeah I see the wheels on test pypi and a pip install works. For the numpy issue, I think I know the answer. the pyproject.toml defines the build environment but installing through a wheel isn't a build anymore. The install can be defined in setup.cfg d78cff8, those extra lines should solve that now.

I think in both those files you can point at a requirements.txt but given it's a single dependency, repeating it once is probably the easier option here.

abrammer commented 3 years ago

Awesome, yeah would think the same about it pulling from the same pypi url. Just make sure to update the setup.py version on the "release" commit. The wheels and tar file are named based on that version not the git tag. But I think that's the same as it would have been for your previous releases.

You already did that. Nice. fingers crossed.

fhs commented 3 years ago

It worked. :tada: