Currently * is only allowed for = operator. I'd like to have it extended to all <, <=, > and >= operators for improved consistency. In all cases, the base version against which comparison will be performed will include all matches for =*. In particular: 1. M(>=x*) = M(=x*) u M(>x), 2. M(<=x*) = M(=x*) u M(<x), 3. M(>x*) = M(>x) \ M(=x*), 4. M(>x*) = M(<x) \ M(=x*). I think this makes sense since it splits the matching ranges alike regular operators, only that the it is done relatively to all versions matched by x* rather than a single version x. Use cases mostly involve prerealease-safe variants of <, >= etc. -- i.e. not having <3.9 accidentally match 3.9_rc1.
This would imply 3.9.1 <= 3.9* <= 3.9_rc1, i.e. the <= operator would no longer be transitive. Not sure if this has any negative consequences in practice.
I'd rather we abolished * entirely. It's highly confusing...
(In reply to Ciaran McCreesh from comment #2) > I'd rather we abolished * entirely. It's highly confusing... I wouldn't mind that if we had a sane version syntax. However, with the highly confusing stacking of _pre, _rc and other weirdos it's hard to say >=3.9* without having to look into PMS every time to guess which suffix is the really-oldest-one.