With the stabilization of async traits fn ( https://blog.rust-lang.org/2023/12/21/async-fn-rpit-in-traits.html )
it should be possible to remove the boxing of the futures in the traits.
trait_variant could be used to provide non-Send/Sync versions if the mongodb sync api should still be supported.
I suspect/hope that this might bring some small performances improvement by not boxing the futures (?)