Skip to main content

import-ready

image image image image image image

This repository demonstrates steps needed to publish an importable Python package first to TestPyPI, and second to PyPI. If this demonstration deviates from best practice in any way, please submit an issue on GitHub.

Inside import-ready is a package called huntsville_havoc that divulges a couple of bona fide secrets that most diehard SPHL Huntsville Havoc fans don't know.

Prepare the Package

  1. Prepare your environment before installing Python packages.
  2. Update version in setup.py per semantic versioning guidance.

Test in Development Environment

Run as follows from the top level directory in a clean venv with pip-tools installed:

python -m piptools compile --upgrade --generate-hashes dev-requirements.in
python -m piptools sync dev-requirements.txt
python -m pytest -s tests

Publish to TestPyPI

  1. Git commit, tag, & push all desired edits for release.
  2. Create a new release in GitHub to mirror your new version.
  3. Generate distribution archives for your package.
  4. Upload your package to TestPyPI.

Test the TestPyPI-Published Package

Run as follows from the tests directory in another clean venv with pip-tools installed:

TEST_PYPI_FLAG='--extra-index-url https://test.pypi.org/simple/'
python -m piptools compile --upgrade --generate-hashes $TEST_PYPI_FLAG \
      --output-file testpypi-requirements.txt pub-requirements.in
python -m piptools sync $TEST_PYPI_FLAG testpypi-requirements.txt
python -m pytest -s

Publish to PyPI

After passing the above tests, upload your package to PyPI.

Test the PyPI-Published Package

Run as follows from the tests directory in yet another clean venv with pip-tools installed:

python -m piptools compile --upgrade --generate-hashes \
      --output-file pypi-requirements.txt pub-requirements.in
python -m piptools sync pypi-requirements.txt
python -m pytest -s

Thanks

License

MIT

Metadata

Release files for import-ready 0.12.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for import-ready 0.12.0
File Size Uploaded Provenance Actions
import-ready-0.12.0.tar.gz 3.9 kB Without provenance Details for import-ready-0.12.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for import-ready 0.12.0
File Interpreter ABI Platform Actions
import_ready-0.12.0-py3-none-any.whl Python 3 none any Details for import_ready-0.12.0-py3-none-any.whl

Total release size: 7.9 kB

Release files / import-ready-0.12.0.tar.gz

Download URL import-ready-0.12.0.tar.gz
Size 3.9 kB
Tags Source
SHA-256 checksum
How to use checksums
ef690e05da568ea4e7aa389d6884aa10931ef5935992b5dc26ff6f9492479ebc
BLAKE2b-256 checksum
How to use checksums
21b930b75564bf575821c0271722d3dcf3881169440eeaae758bbc27a9cec871
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.4

Release files / import_ready-0.12.0-py3-none-any.whl

Download URL import_ready-0.12.0-py3-none-any.whl
Size 4.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
082a0107cbc41efef7e4dbc07d8c33ea2ee453a6329c1630cb31671b350eae74
BLAKE2b-256 checksum
How to use checksums
37659eb32acc15a2559b8a5f229b0974e05f2f5172a2242800d35b37aeaa9ecf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.4

Security for import-ready 0.12.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page