hexagonal-rust
hexagonal-rust copied to clipboard
Sync/async ports
While this is a nice and fun starting point, there's a big flaw in the whole ecosystem when it is applied to the rust world. By it's nature, most repositories and framework ports are handling some form of I/O. This means that, if traits are not defined as async or futures, I/O operations are going to be blocking.
Changing traits to async traits is not trivial at all and not supported by the language... yet
The best solution is to this issue is to apply this macro and change the appropriates structs to support Sync + Send traits.
Indeed :) Thank you to have taking the time to bring this topic up