@hynek I was wondering if you'd be solving the worst part, but I think "The main downside is that it's impossible to verify whether all required dependencies have been configured without running the code." answers my question there.
That's always the tough thing; how to be sure your various environments provide the same necessary set of capabilities when not every code path is going to reach those service discovery steps. Even 100% test coverage doesn't save you :(
@tintvrtkovic @hynek honestly, after a decade or more of professional focus on availability, this is largely why I avoid late-binding dependencies.
That's not to say it's automatically bad; it is, as so many things are, a tradeoff between developer ergonomics, architecture, stability, startup time, etc, etc... this definitely fills a need, and I can see why someone would use it. I’d probably use it depending on what I was building.