DUB 0.9.22 released

Dragos Carp via Digitalmars-d-announce digitalmars-d-announce at puremagic.com
Fri Sep 26 02:49:44 PDT 2014


On Friday, 26 September 2014 at 08:37:12 UTC, tn wrote:
> On Friday, 26 September 2014 at 06:29:21 UTC, Dragos Carp wrote:
>> Though you could use prerelease and/or build suffixes 
>> (1.2.3-0w / 1.2.3+0w).
>
> These are very close to what I would like to see.
>
> Though, if I understand correctly, build suffix wouldn't work, 
> as for example 1.2.3+0w and 1.2.3+1w would be treated as equal: 
> "Build metadata SHOULD be ignored when determining version 
> precedence. Thus two versions that differ only in the build 
> metadata, have the same precedence." (semver.org)
>
> I guess that prerelease suffixes would do the trick. The only 
> problem is conceptual: "A pre-release version indicates that 
> the version is unstable and might not satisfy the intended 
> compatibility requirements as denoted by its associated normal 
> version." (semver.org)

In semver library [1], the differences in build suffixes are a) 
"right" ordered (defined sort order) and not equal, and b) 
considered compatible.

a) SemVer("1.2.3+w.9") < SemVer("1.2.3+w.10")
    SemVer("1.2.3+w.9") != SemVer("1.2.3+w.10")

b) SemVer("1.2.3+w.9").satisfies(SemVerRange("1.2.3"))
    SemVer("1.2.3+w.10").satisfies(SemVerRange("1.2.3"))
    SemVer("1.2.3+w.9").differAt(SemVer("1.0.0+w.10")) == 
VersionPart.BUILD


[1] http://code.dlang.org/packages/semver


More information about the Digitalmars-d-announce mailing list