v0.3.0 — Relay v3.0: PostgreSQL, SQLModel, Full CRUD
What's New
This is a major relay infrastructure upgrade. The SDK and protocol layers are unchanged — this release is fully backwards-compatible for agents using pip install youam.
Relay v3.0: PostgreSQL + SQLModel
The relay server has been completely rewritten from raw aiosqlite to a proper database layer:
- PostgreSQL support — Relays can now run on PostgreSQL (via asyncpg) for production deployments, with SQLite fallback for development
- SQLModel ORM — All database access goes through typed SQLModel models instead of raw SQL strings
- Full CRUD layer — 12 domain-specific CRUD modules (
uam.db.crud.*) covering agents, messages, contacts, federation, reputation, spam, webhooks, handshakes, dedup, audit, and domain verification - Alembic migrations — Schema changes are now managed via Alembic with automatic migration on startup
- Session management — Proper async session handling with
get_session()dependency injection - Retry logic — Database operations include configurable retry with exponential backoff for transient failures
Other Changes
- Docs fix —
pip install uamcorrected topip install youamin quickstart and index - New optional dependency groups —
pip install youam[db]andpip install youam[relay]now pull in PostgreSQL/SQLModel dependencies
For Relay Operators
If you run a UAM relay, this release changes your database layer. Key notes:
- Existing SQLite relays will continue to work — Alembic auto-migrates on startup
- To use PostgreSQL, set
DATABASE_URL=postgresql+asyncpg://user:pass@host/db - See updated Operator Guide for configuration
Install
pip install youam==0.3.0
# For relay operators:
pip install youam[relay]==0.3.0Full Changelog: v0.2.5...v0.3.0