Three reasons I've encountered to pull dio from the stack:
- Http has top-level methods that do not require creating an instance; Dio does not have this pattern
- so this prevents Dio's use in backgrounded flutter execution, like notifications/wear (a minority of use cases, b/c implementing the rest of that functionality ain't easy)
- Made in a territory controlled by the CCP
- Compatibility with google design patterns (outside Google)
The API looks nice and modern on Dio, so if you could use that nice interface and the above aren't a concern, go Dio; that being said, network calls from mobile apps are so bespoke and dart streams are so clean that I find it just as easy to roll my own in a "pull message BLOC" -AB