I'm just used to configuration being a lot more explicit on the code side rather than the buildscript side. I'm used to a style like Retrofit/OkHttp, where there's similarly a lot of little configuration dependencies (such as Gson, Moshi, etc serializers, and RxJava, Couroutine, etc adapters) but you still have to tell your code which one to use after including it. In the end, it's largely a style thing and nothing prevents me from keeping my configuration explicit even when I don't need to, so it's probably not a huge problem.