ruststream-sqlx 0.7.0

SQL databases for the RustStream messaging framework through sqlx: a transactional outbox over any RustStream broker and task queues in Postgres, MySQL/MariaDB and SQLite tables.
Documentation
error[E0277]: `NoPayload` lends no payload, so no column holds a message's bytes
  --> tests/ui/mount.rs:36:35
   |
36 |     SqlxBroker::new(pool).route::<NoPayload>("jobs")
   |                           -----   ^^^^^^^^^ no `PayloadRow` for this row
   |                           |
   |                           required by a bound introduced by this call
   |
help: the trait `PayloadRow` is not implemented for `NoPayload`
  --> tests/ui/mount.rs:13:1
   |
13 | struct NoPayload {
   | ^^^^^^^^^^^^^^^^
   = note: a table in row mode: write its rows with the derive's `insert`, or with `Repository` over a `Publish` of the service's own
   = note: a route and a by-name subscription read a table whose `#[field(payload)]` field holds the message
   = note: a table described by hand that sets `.payload(..)` implements `PayloadRow` for the field the column decodes into
help: the trait `PayloadRow` is implemented for `Unacked`
  --> tests/ui/mount.rs:25:10
   |
25 | #[derive(Inbox, sqlx::FromRow)]
   |          ^^^^^
note: required by a bound in `SqlxBroker::<DB, D>::route`
  --> src/inbox/broker.rs
   |
   |     pub fn route<Row>(mut self, name: impl Into<Cow<'static, str>>) -> Self
   |            ----- required by a bound in this associated function
   |     where
   |         Row: Publish<DB> + Events<DB> + PayloadRow,
   |                                         ^^^^^^^^^^ required by this bound in `SqlxBroker::<DB, D>::route`
   = note: this error originates in the derive macro `Inbox` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: `Unacked` runs its own `ack` (`custom(ack)` in `#[inbox(..)]`, or `own::Ack` in its `InboxSpec`) and does not implement `Ack<sqlx::Postgres>`
  --> tests/ui/mount.rs:40:16
   |
40 |     subscribes(InboxQueue::<Unacked>::new("jobs"));
   |     ---------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the service's own event is missing
   |     |
   |     required by a bound introduced by this call
   |
help: the trait `ruststream_sqlx::Ack<sqlx::Postgres>` is not implemented for `Unacked`
  --> tests/ui/mount.rs:27:1
   |
27 | struct Unacked {
   | ^^^^^^^^^^^^^^
   = note: implement `Ack<sqlx::Postgres>` for `Unacked`, or drop `ack` from `custom(..)` (by hand: `.own::<own::Ack>()` and `own::Ack` in `type Table`)
help: the trait `SubscriptionSource<ConnectedSqlxBroker<DB, D>>` is conditionally implemented for `InboxQueue<Row, Mode>`
  --> src/inbox/queue.rs
   |
   | / impl<DB, D, Row, Mode> SubscriptionSource<ConnectedSqlxBroker<DB, D>> for InboxQueue<Row, Mode>
   | | where
   | |     DB: QueueDatabase,
   | |     D: Dialect + Opens<Row::Opening> + 'static,
   | |     Row: InboxRow + Events<DB>,
   | |                     ---------- unsatisfied requirement introduced here: `Unacked: ruststream_sqlx::__private::Events<sqlx::Postgres>`
   | |     Row::Form: FormOn<D>,
   | |     Mode: InboxMode,
   | |____________________^
   = note: required for `Set<ruststream_sqlx::spec::own::Ack>` to implement `ruststream_sqlx::__private::AckAxis<sqlx::Postgres, Unacked>`
   = note: required for `Unacked` to implement `ruststream_sqlx::__private::Events<sqlx::Postgres>`
   = note: required for `InboxQueue<Unacked>` to implement `SubscriptionSource<ConnectedSqlxBroker<sqlx::Postgres>>`
note: required by a bound in `subscribes`
  --> tests/ui/mount.rs:6:23
   |
 6 | fn subscribes<Source: SubscriptionSource<Connected<SqlxBroker<Postgres>>>>(source: Source) {
   |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `subscribes`