Version 1 of package BoF: recognize alpha/beta version numbers

Updated 2002-10-11 15:16:51

Problem: it doesn't

A version number is:

   join $listOfNonNegativeIntegers .

Want to add recognition of things like 8.4b1

Concept: allow values -1 and -2 in the list.

Wherever the result has .-1. replace with b

Wherever the result has .-2. replace with a

Implies: a or b can't be next to a .

a or b can't be first or last char in version number

Things like 1.2a5b3.7 are OK (if weird)

Specification:

[package vcompare] extended obvious way (-2 < -1 < 0).

[package vsatisfies] -- need to specify sensible rules (for itself and to be used by [package require])

[package vsatisfies 1.1 1.0] => 1

[package vsatisfies 1.1a0 1.0] => 1

[package vsatisfies 1.1b0 1.0] => 1

Note: implies responsibility for controlling package availability placed on package installer! (Provide alpha/beta releases to developers, but hide from end-users, for example -- special TCLLIBPATH, etc.)

[package vsatisfies 1.1a1 1.1a0] => ???

[package vsatisfies 1.1b0 1.1a0] => ???

[package vsatisfies 1.1 1.1a0] => ???

[package vsatisfies 1.1b1 1.1b0] => ???

[package vsatisfies 1.1 1.1b0] => ???

Also consider new cases when package BoF: PACKAGE REQUIRE support for RANGES of acceptable versions is present.

Also consider new cases when package BoF: PACKAGE REQUIRE support for RANGES of acceptable versions is present.

[package vsatisfies $version $range ?$range ...?]