Inside a dim library namespace, an item version is
        Item:Version
Item is
        [A-Za-z0-9_][A-Za_z0-9_.]*
Version is one of
        [A-Fa-f0-9]{40} # sha1 checksum
        +[1-9][0-9]*            # clone number
        Name[(-Name)+[(--Name)+]]
Name is
        [A-Za-z0-9_][A-Za_z0-9_.]*
The syntax Item:Version can be relaxed into one of
        Item-Version            # used for tarballs
        Item
        Version

A file or directory Pathname is one of
        \.[^\n]*                        # starts with .
        [^.\n]*[^-+A-Za-z0-9_.\n][^\n]*
Pathname syntax can be relaxed into whatever
        [\n]+

Ambiguity will be lifted by a heuristic not yet documented.

Philippe

Reply via email to