Problem/Motivation
Follow-up to #2677532: Move drupal_check_incompatibility() functionality to a new Dependency class and Version component
From @mixologic:
Just to throw this out there again, I had to redo the version parsing when I built the composer facade, and built a test for it so that it would handle *all* of the oddball edge cases that people have, over the years, put into their info and info.yml files that we see on drupal.org.
http://cgit.drupalcode.org/project_composer/tree/project_composer.module...
The test I wrote for that is here: http://cgit.drupalcode.org/project_composer/tree/project_composer.test#n54
Perhaps some of those cases can be adapted into this class?
Im not sure if we do or do not want to introduce things like adding the ~ and ^ operator or not at this juncture. It should still be BC compatible, just with expanded capability.
Proposed resolution
Pull the test into core.
Pull in the changes to make the tests pass.