Helper to build and (experimentally) upload packages to PyPI without twine
Project description
HH20 PyPI Helper
Minimal helper to build and experimentally upload Python packages without
twine. Use at your own risk — uploading directly to the legacy PyPI endpoint
is supported but twine is still recommended for production.
Quick start
- Install deps:
python -m pip install --upgrade build requests
- Initialize a simple project:
python cli.py init --name mypkg --version 0.1.0 --description "My package"
- Build and upload to TestPyPI:
python cli.py build
python cli.py upload --repo testpypi --token <TEST_PYPI_TOKEN>
# or build+publish
python cli.py publish --repo testpypi --token <TEST_PYPI_TOKEN>
Files
cli.py: friendly command-line wrappercompiler.py: helper functions for building, inspecting and uploadingmain.py: earlier scaffold (kept for compatibility)
Publish to PyPI
- Pick a unique package name (update
setup.cfgorpyproject.tomlname/version). - Install build tools and dependencies:
python -m pip install --upgrade build requests
- Build distributions:
python -m build
- Upload using a PyPI API token (recommended). Use TestPyPI first.
Linux / macOS
export PYPI_TOKEN="pypi-..."
python cli.py upload --repo testpypi --token "$PYPI_TOKEN"
Windows PowerShell
$env:PYPI_TOKEN = "pypi-..."
python cli.py upload --repo testpypi --token $env:PYPI_TOKEN
Replace --repo testpypi with --repo pypi to publish to the real PyPI. After a successful upload you can install with:
python -m pip install hh20-pypi-helper
Notes
- The
uploadcommand uses the legacy PyPI upload endpoint with HTTP Basic auth. When using an API token, pass username__token__(the CLI does this automatically if you provide--token). - Always test against TestPyPI before publishing to the real PyPI.
- Ensure your package name is unique on PyPI before publishing.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file hh20_pypi_helper-0.1.0.tar.gz.
File metadata
- Download URL: hh20_pypi_helper-0.1.0.tar.gz
- Upload date:
- Size: 8.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ff7144bf249d04f679cca0d11bd0cd3be31bf63ae00fb14ed31440b93649bf2f
|
|
| MD5 |
060b573c829763e2d3152b6adbaca129
|
|
| BLAKE2b-256 |
3ce7331a6d4658309643c9439ef42e2244a679f17f539e792b1176ff41ab00ce
|
File details
Details for the file hh20_pypi_helper-0.1.0-py3-none-any.whl.
File metadata
- Download URL: hh20_pypi_helper-0.1.0-py3-none-any.whl
- Upload date:
- Size: 14.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d1ca3f9fc32bba37114266ebf7be9e2c99cccea8ab9c1507f579038054c57280
|
|
| MD5 |
93b1e9ffff6dada973b91874a11b3e4a
|
|
| BLAKE2b-256 |
5f060a826030749e1dcec70afbc3db93b0cb83ea7b4b9e3bbd4e934bcc7b51f9
|