Open 130s opened 1 year ago
https://realpython.com/python-wheels/#making-sure-your-wheels-spin-right suggests testing a wheel
on https://test.pypi.org, but the command fails.
Turned out that test.pypi.org does NOT share the user accounts from pypi.org, so I made an accounton test.pypi.org, verified email address.
Set up MFA and created $HOME/.pypirc
but twine
still fails to upload.
Turned out in .pypirc
I defined the target repo as testpypi
but in CLI I used --repository-url
with URL.
[testpypi]
repository = https://test.pypi.org/legacy/
username = __token__
password = (HIDDEN)
Swapping to twine upload --verbose --repository testpypi
seems to have worked finally.
I'm ok to start from making a
pip
installer.Initially I thought of skipping to create
wheel
https://realpython.com/python-wheels/ (so building each time on the user's platform), but later reading through https://realpython.com/python-wheels/#calling-all-developers-build-your-wheels, I was reminded of "usability". The very core thing why ROS was so good in the beginning. I should stick to that. Will dowheel
.Indeed installation of non-
wheel
pkg failed.Example failure of pip installing uwsgi. This looks an exact example of why I should consider usability.
``` # pip install 'uwsgi==2.0.*' Collecting uwsgi==2.0.* Downloading uwsgi-2.0.22.tar.gz (809 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 809.7/809.7 kB 9.1 MB/s eta 0:00:00 Preparing metadata (setup.py) ... done Building wheels for collected packages: uwsgi Building wheel for uwsgi (setup.py) ... error error: subprocess-exited-with-error × python setup.py bdist_wheel did not run successfully. │ exit code: 1 ╰─> [43 lines of output] /usr/local/lib/python3.9/distutils/dist.py:274: UserWarning: Unknown distribution option: 'descriptions' warnings.warn(msg) running bdist_wheel running build running build_py creating build creating build/lib copying uwsgidecorators.py -> build/lib installing to build/bdist.linux-x86_64/wheel running install using profile: buildconf/default.ini detected include path: ['/usr/include', '/usr/local/include'] Traceback (most recent call last): File "/tmp/pip-install-1tyvyk0o/uwsgi_278414b86d0d40a89c5cb702d7ed4a36/uwsgiconfig.py", line 750, in __init__ gcc_version_components = gcc_version.split('.') AttributeError: 'NoneType' object has no attribute 'split' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "CoS
wheel
. Manual test ok.WIP https://github.com/kinu-garage/docker_vcstool/pull/17