semvec/pypi-packages huggingface dataset:
greengoblinalex-simple-logger 0.1.0
Простая библиотека для логирования с цветным форматированием
License: MIT
Requires Python: >=3.6
Keywords: logging, logger, colored, rotation, python

# Simple Logger

Простая библиотека для логирования с цветным форматированием и поддержкой ротации файлов.

## Установка

```bash
pip install greengoblinalex-simple-logger
```

Или установка из исходного кода:

```bash
pip install git+https://github.com/greengoblinalex/simple-logger.git
```

## Использование

```python
from simple_logger import get_logger

# Рекомендуется использовать __name__ в качестве имени логгера —
# это удобно для структурирования логов в больших проектах
logger = get_logger(__name__)

# Также можно явно передать строку, например:
# logger = get_logger("my_app")

logger.info("Это информационное сообщение")
logger.error("Это сообщение об ошибке")

# Логирование в файл и консоль
file_logger = get_logger(__name__, log_file="app.log")
file_logger.info("Это сообщение будет в файле и в консоли")
```

## Настройка

Вы можете настроить логгер, используя дополнительные параметры:

```python
logger = get_logger(
    name=__name__,  # Рекомендуется использовать __name__, но можно и строку
    log_file="app.log",
    level="DEBUG",  # Уровень логирования
    rotation_size=5 * 1024 * 1024,  # 5 МБ для ротации
    backup_count=3  # Хранить 3 архивных файла
)
```

## Настройка через .env файл

Вы также можете настроить параметры логирования через файл `.env` в корне вашего проекта:

```
LOG_DIR=logs                # Директория для хранения логов
LOG_LEVEL=INFO              # Уровень логирования
LOG_ROTATION_SIZE=5242880   # Размер для ротации файлов (5MB)
LOG_BACKUP_COUNT=3          # Количество архивных файлов
```

## Особенности

- 🎨 **Цветной вывод** - различные уровни логирования выделяются разными цветами
- 🔄 **Ротация файлов** - автоматическая ротация логов при достижении максимального размера
- ⚙️ **Гибкая настройка** - настройка через параметры функции или переменные окружения
- 📦 **Легковесность** - без внешних зависимостей, использует только стандартную библиотеку Python
- 🔧 **Простота использования** - минимальный код для начала работы

## Лицензия

MIT License - см. файл [LICENSE](LICENSE)
LOG_ROTATION_SIZE=5242880   # Размер файла для ротации (5 МБ)
LOG_BACKUP_COUNT=3          # Количество сохраняемых архивных файлов
```
x402-hpke 0.2.0a0
Provider-agnostic HPKE envelope for the x402 spec. A utility for confidential, verifiable payment requests and receipts across untrusted intermediaries, using canonical AAD, optional sidecar projection, and cross-language (Python/Node) interoperability.
License: MIT
Requires Python: >=3.12
Keywords: hpke, aead, x25519, jwks, envelope

# x402-hpke (Python)

Monorepo: https://github.com/scryptedai/x402-hpke (Python path: `packages/python`, Node path: `packages/node`).

Provider-agnostic HPKE envelope library for x402 (Python). Pinned ciphersuite for interop:
X25519 / HKDF-SHA256 / ChaCha20-Poly1305 (envelope); streaming helpers use XChaCha20-Poly1305.

## Install

Python >= 3.12

```bash
pip install --pre x402-hpke
```

## Quickstart

```python
from x402_hpke import create_hpke, generate_keypair

hpke = create_hpke(namespace="myapp")
pub, priv = generate_keypair()

# Use helpers or transport API; sidecar is private-by-default
from x402_hpke import create_payment
env, headers = create_payment(
    hpke,
    payment_data={"invoiceId": "inv_1"},
    recipient_public_jwk=pub,
    kid="kid1",
    is_public=True,
)
```

## Streaming (Python)

Chunk encryption helpers using XChaCha20-Poly1305:

```python
from x402_hpke import seal_chunk_xchacha, open_chunk_xchacha

key = bytes(32)          # derive via app contract; export API is planned
prefix16 = bytes(16)
seq = 0
ct = seal_chunk_xchacha(key, prefix16, seq, b"chunk")
pt = open_chunk_xchacha(key, prefix16, seq, ct)
```

## JWKS utilities

- `fetch_jwks(url, min_ttl=60, max_ttl=3600)`
- `set_jwks(url, jwks, ttl=300)`
- `select_jwk(kid, jwks=None, url=None)`

## Notes

 - AEAD is pinned to ChaCha20-Poly1305 for v1 (envelope). AES-256-GCM may be offered as an optional profile in future versions for FIPS-oriented environments; suite pinning remains per-version.