elixir-lang/elixir — pull request #2028 by ericmj (2014-02-02 19:56:16+00:00)
Title: Enforce semantic versioning

* Mix will now error on versions and requirements that doesn't follow SemVer
* Dependencies that does not follow SemVer can only be matched with a regex
* Refactor Version to make it more performant and only parse SemVer
- Remove the validation functions in favor of parsing functions returning error tuples
- `match?/2` and `compare/2` only raises on parse errors, if given already parsed version and requirement they will not raise