A simple hello world example
Project description
h4-hello
Table of Contents
A practice project for publishing Python packages to PyPI with PEP740 digital signatures using uv as the build backend and package manager. Contains only a simple hello() function that returns "Hello!".
Installation
pip install h4-hello
Usage
CLI
$ h4-hello
Hello!
$ h4-hello --version
h4-hello v0.1.12b2
As a Library
from h4_hello import hello
print(hello()) # -> Hello!
Development
This project uses uv for package management and poethepoet for task running.
Setup
# Install dependencies
uv sync
# Run tests
poe test
# Lint and type check
poe lint
# Format code
poe format
# Build package
poe build
Available Tasks
Run poe to see all available tasks defined in poe_tasks.toml:
poe test- Run pytest testspoe check- Run ruff lintingpoe mypy- Run type checkingpoe format- Auto-format codepoe build- Full build with checks and smoke testspoe smoke-test- Test built packages in isolationpoe lint- Run all linters (ruff, mypy, pep440check, pyproject validation)
Publishing
This project uses GitHub Actions with Trusted Publishing:
- TestPyPI: Tag with
test-*(e.g.,test-0.1.11) - PyPI: Tag with
v*semver (e.g.,v0.1.11)
Both deployments use OIDC authentication with Sigstore attestations (PEP740).
License
h4-hello is distributed under the terms of the MIT license.
Note
詳細な日本語ドキュメントは NOTE-ja.md を参照してください。
Project details
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 h4_hello-0.1.12.tar.gz.
File metadata
- Download URL: h4_hello-0.1.12.tar.gz
- Upload date:
- Size: 3.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
52f08d5d3d91f82174d893791c190ad472454f60f96fd70e3c7624f21b4a7615
|
|
| MD5 |
1671c00766eadd2ea54efb51d7442dcf
|
|
| BLAKE2b-256 |
d7836091313fa9fdfd4764a80a49f7d9e9ecbe553b0851753155995bf379bc92
|
Provenance
The following attestation bundles were made for h4_hello-0.1.12.tar.gz:
Publisher:
publish-pypi.yml on heiwa4126/h4-hello
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
h4_hello-0.1.12.tar.gz -
Subject digest:
52f08d5d3d91f82174d893791c190ad472454f60f96fd70e3c7624f21b4a7615 - Sigstore transparency entry: 709738286
- Sigstore integration time:
-
Permalink:
heiwa4126/h4-hello@943c3cbfe4f35c7b87b1acf39433d3a822789ba4 -
Branch / Tag:
refs/tags/v0.1.12 - Owner: https://github.com/heiwa4126
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@943c3cbfe4f35c7b87b1acf39433d3a822789ba4 -
Trigger Event:
push
-
Statement type:
File details
Details for the file h4_hello-0.1.12-py3-none-any.whl.
File metadata
- Download URL: h4_hello-0.1.12-py3-none-any.whl
- Upload date:
- Size: 4.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
20dc9dd2e94307590043e8a5620f89d6475cb9df68d5cbb01665515c8fc05623
|
|
| MD5 |
ec1f19c72fbc9ed147e397f78755dba6
|
|
| BLAKE2b-256 |
9e94b748f10fea38262141b528a029178b957e1efd7fdd2d828828ca3fce3835
|
Provenance
The following attestation bundles were made for h4_hello-0.1.12-py3-none-any.whl:
Publisher:
publish-pypi.yml on heiwa4126/h4-hello
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
h4_hello-0.1.12-py3-none-any.whl -
Subject digest:
20dc9dd2e94307590043e8a5620f89d6475cb9df68d5cbb01665515c8fc05623 - Sigstore transparency entry: 709738287
- Sigstore integration time:
-
Permalink:
heiwa4126/h4-hello@943c3cbfe4f35c7b87b1acf39433d3a822789ba4 -
Branch / Tag:
refs/tags/v0.1.12 - Owner: https://github.com/heiwa4126
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@943c3cbfe4f35c7b87b1acf39433d3a822789ba4 -
Trigger Event:
push
-
Statement type: