> I think the better practice is to never end an
> upgrade script with the release version; instead
> just use b# until infinity.
...or add a fourth sequential numeral in version number like:
foo-5.0.3.12345
that would indicate patch/upgrade level. To make it more explicit, it can be separated with an underscore or a hyphen instead of a dot.
Yet another alternative is indeed to use datestamps, but then an 8-char CCYYMMDD format should be used (ensure proper sorting and is Y2K compliant :)