summary: Provide a set of common version conflict strategies beyond the current NEWEST policy (e.g. FAIL). Also allow for custom policies. status: FAIL policy can now be selected in the latest Gradle. code: COMPLETED
Right now Gradle has a single strategy in the case of a version conflict between dependencies. It uses the newest version. Although this often makes a lot of sense it is not always the behavior you want. Some projects have the very valid requirement that the build should fail in the case of a version conflict. Other projects want for compatibility reasons the same policy as Maven where the version least nested in the dependency graph wins. Then there might be also complex custom requirements where people need to implement their own conflict resolution policy.
We want to provide a set of build-in strategies to choose from. We also want to enable hooking in your custom policies.