I often run into breakages when building dub packages due to a dependency that uses "foo":
"~>x.y.z" that prevents using minor version bumps of "foo" (only patch bumps). According to Semantic versioning [http://semver.org/], minor version bumps should be allowed (only major version bumps would be backwards incompatible).

The proposed change [https://github.com/dlang/dub/pull/1038] would make ~>x.y.z mean >=x.y.z <(x+1).0.0 instead of >=x.y.z <x.(y+1).z
It fixes a lot of breakages I run into when using dub.

Concerns?