gestalt
gestalt copied to clipboard
use version expressions for dependency declarations
- [ ] Is it worth keeping the existing VersionRange class at all, or should we convert entirely?
- [ ] Instead of building an expression out of
minVersion, should we allow module metadata to define its own expression?- We would need to use the Maven-style expressions in that case in order for compile-time dependency resolution to still work.
Follow-up from #101.
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.
ah, the Maven expressions are implemented in the antilaby fork. That explains why I couldn't find them in the upstream zafarkhaja sources.
Unfortunately, the confusing incrementMajorVersion behavior is also from the antilaby fork https://github.com/AntiLaby/jsemver/commit/f9fee4244d5f6034d892639465eb5ffb749c9569
"1.0.0-alpha".incrementMajorVersion() == "1.0.0"
"1.2.0-alpha".incrementMajorVersion() == "2.0.0"
without really any attached issue documentation to explain why.
here is a different implementation entirely: https://github.com/vdurmont/semver4j
Its Ivy-mode looks like it is intended to be gradle-compatible.