When conflicting dependencies where current in a project and its dependencies, dub could get into an infinite update loop.
This was because one package to be used was added to the graph, which then spawned a missing package for another dependency, because of not matching versions. These versions could then toggle forth and back.
This is now solved by aborting the dependency graph resolving process when conflicts are found. As the dependencies are resolved from the outermost to the innermost, this will propably hide some deeper conflicts, but then again show more user relevant conflicts first.
This does not resolve the question on what to do when merging ">=0.13.4" with "~master". But this can be resolved later on.
Fixes #72.
1 parent a5526a6 commit 32e78679161ae4ed7e55a04e806df7be5aa3cbdc
@Matthias Dondorff Matthias Dondorff authored on 4 Jun 2013
Showing 1 changed file
View
source/dub/project.d