* Bump sqlx to 0.8.0
* Update sqlx syntax to 0.8.0, change MySql for sqlx:: Any
* Update sqlx syntax to 0.8.0, change MySql for sqlx:: Any
* Modify chorus_macros::SqlxBitflagDerive to use sqlx::Any over sqlx::MySql (broken!)
* Fix: `cannot infer type for type parameter `DB` declared on the trait...`
* Change remaining impls of sqlx traits for MySql to sqlx::Any
* Alter chorus_macros to correctly derive SqlxBitFlag for sqlx::Any
* rustc/clippy>=v1.80.0: Do not warn when encountering cfg(tarpaulin_include)
* Port compare_* methods to sqlx v0.8.0
Fixes the compile errors in the `voice_simple` example, updates the docs
in the `gateway_observers` example and adds a public reexport of
`Subscriber` as `Observer`, to make development easier and introduce
less breaking changes to our public api
to reduce the external dependencies needed for development with
`chorus`, we could also add some other reexports, potentially
`async_trait::async_trait`
This PR switches the `linux` job from `cargo test` to `cargo nextest
run` for > 50% time reduction in the test execution step of the CI
pipeline. Also, the "check common non default feature configurations"
step has been moved from the `linux` job to it's own job, to parallelize
the CI pipeline further and reduce the time that CI needs to run to
completion.
Adds about one billion (+- a few hundred million) missing derives for
all sorts of types.
The biggest change in this PR is, how structs holding a property
`Shared<T>` types implement `PartialEq`. In previous versions of this
crate, if a `Shared<T>` was part of a struct, this or these properties
would be ignored in == comparisons. This is because `Shared<T>` is
defined as `Arc<RwLock<T>>` - meaning you'd have to lock the `RwLock` to
make a comparison. From now on, instead of ignoring these properties or
locking the inner `RwLock`, the pointer values of the `Arc<T>`'s get
compared. This is a cheap and exact way of ensuring `Eq` for types,
which have an inner `Shared<T>`.