Skip to content

rust/v0.1.0-alpha.1

Pre-release
Pre-release

Choose a tag to compare

@brandur brandur released this 07 Oct 03:58
· 4 commits to master since this release
1e4d6f8

Added

  • First preview release of River for Rust. riverqueue provides a typed, Tokio-based client for PostgreSQL (through SQLx) and SQLite that shares River's database schema and job protocol with River for Go, so Rust and Go clients can insert and work jobs in the same database. It includes typed workers, transactional inserts and completion, unique, scheduled, periodic, and resumable jobs, queue management, job cancellation, events, hooks, middleware, leader election, and maintenance services. Companion crates provide #[derive(JobArgs)] with unique options (riverqueue-macros), migration application and validation using Go's migration history (riverqueue-migrate), the riverqueue command for migrations and benchmarks (riverqueue-cli), and fixtures, insertion assertions, and worker test helpers (riverqueue-test). Requests run with .tx(...) use the caller's transaction directly, without a savepoint or nested transaction, like River for Go's *Tx methods. Errors may leave partial writes, so roll back the transaction or create an explicit savepoint around the request. PR #1442.