When to use coroutineScope vs supervisorScope in Kotlin?
Kotlin coroutineScope vs supervisorScope
Use coroutineScope
If you launch a coroutine in a coroutineScope, it indicates that if even one of the coroutines fails, the entire scope and all of its child coroutines will be canceled.
Use supervisorScope
When one of the children fails, the scope and all of its children do not fail.