Metadata-Version: 2.4
Name: aioprom
Version: 1.0.4
Summary: Minimal asyncio HTTP server exposing Prometheus metrics
Author: aioprom contributors
License-Expression: GPL-3.0-or-later
Project-URL: Homepage, https://github.com/yourusername/aioprom
Project-URL: Repository, https://github.com/yourusername/aioprom
Project-URL: Issues, https://github.com/yourusername/aioprom/issues
Keywords: prometheus,asyncio,metrics,http
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: System :: Monitoring
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: prometheus-client>=0.9.0
Provides-Extra: test
Requires-Dist: pytest>=7.0.0; extra == "test"
Provides-Extra: dev
Requires-Dist: build>=1.0.0; extra == "dev"
Requires-Dist: twine>=5.0.0; extra == "dev"
Requires-Dist: pytest>=7.0.0; extra == "dev"
Dynamic: license-file

# aioprom

Minimal asyncio HTTP server that exposes Prometheus metrics.

## Install

```bash
pip install aioprom
```

## Usage

```python
from aioprom import start_server

# See package docstrings for configuration.
```

## Development

Enable repo git hooks (optional; auto-bumps patch `VERSION` in `aioprom/aioprom.py` when unchanged vs last commit):

```bash
git config core.hooksPath .githooks
```

Build and check the distribution:

```bash
pip install -e ".[dev]"
pytest -q
python -m build
twine check dist/*
```

Debug a failing wheel build with **verbose** logs (uses **`.venv/bin/python`**, **`pip wheel -vv`**, and **`--no-build-isolation`** so setuptools runs in that env, not an ephemeral build env). **`make wheel-debug`** runs **`make clean-build`** first so a previous **`build/`** tree cannot trigger **`[Errno 17] File exists`** on **`aioprom-*.dist-info`**.

```bash
python3 -m venv .venv && .venv/bin/python -m pip install -U pip
make wheel-debug
# or only: make clean-build
```

The package targets **Python 3.9+** (`requires-python` / build tooling: `setuptools>=77`, `[project].license-files`). **`prometheus-client`** is required at **≥ 0.9.0**.

CI on push to `main` runs via `.github/workflows/release.yml`.

Upload to PyPI (use API tokens, not your password):

```bash
twine upload dist/*
```

TestPyPI:

```bash
twine upload --repository testpypi dist/*
```
