Files
synapse/rust
Eric Eastwood 7a15f0185c Using Send + Sync traits so this can stored in the #[pyclass] just fine
```
error[E0277]: `(dyn storage::db::DatabasePool + 'static)` cannot be shared between threads safely
   --> rust/src/handlers/mod.rs:32:8
    |
 32 | struct RustHandlers {
    |        ^^^^^^^^^^^^ `(dyn storage::db::DatabasePool + 'static)` cannot be shared between threads safely
    |
    = help: the trait `std::marker::Sync` is not implemented for `(dyn storage::db::DatabasePool + 'static)`
    = note: required for `std::ptr::Unique<(dyn storage::db::DatabasePool + 'static)>` to implement `std::marker::Sync`
note: required because it appears within the type `std::boxed::Box<(dyn storage::db::DatabasePool + 'static)>`
   --> /home/eric/.rustup/toolchains/1.91.1-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:231:12
    |
231 | pub struct Box<
    |            ^^^
note: required because it appears within the type `storage::store::Store`
   --> rust/src/storage/store.rs:37:12
    |
 37 | pub struct Store {
    |            ^^^^^
    = note: required for `std::sync::Arc<storage::store::Store>` to implement `std::marker::Send`
note: required because it appears within the type `handlers::versions::VersionsHandler`
   --> rust/src/handlers/versions.rs:30:12
    |
 30 | pub struct VersionsHandler {
    |            ^^^^^^^^^^^^^^^
note: required because it appears within the type `handlers::RustHandlers`
   --> rust/src/handlers/mod.rs:32:8
    |
 32 | struct RustHandlers {
    |        ^^^^^^^^^^^^
note: required by a bound in `pyo3::impl_::pyclass::assertions::assert_pyclass_send_sync`
   --> /home/eric/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pyo3-0.28.3/src/impl_/pyclass/assertions.rs:6:8
    |
  4 | pub const fn assert_pyclass_send_sync<T>()
    |              ------------------------ required by a bound in this function
  5 | where
  6 |     T: Send + Sync,
    |        ^^^^ required by this bound in `assert_pyclass_send_sync`
```
2026-06-05 14:48:52 -05:00
..
2026-06-04 18:44:04 -05:00