@ZacSweers I just needed to tell you that using Metro with default values on constructors + providing the AppScope out of the box is saving me so much effort.
For Coroutine Dispatchers, I no longer create a module just to provide them so I can inject them in a constructor, I just use the default values and Metro just works.
Not creating my own AppScope also saves me another module. Thank you so much, they're small improvements that up for me quite a lot.