Generic package registry should be less strict about version numbers
Release notes
Generic package registry is less strict about version numbers
Problem to solve
The generic package registry forces users to the version format with three numbers, separated by a dot.
Some packaging systems, for example debian packages, can also contain letters as well as symbols. Examples:
2.88dsf-59.10ubuntu1
I can imagine that a lot of package managers allow version "numbers" like this.
Even disregarding different package managers completely, and just looking at common version numbers, people often want to mark prereleases, e.g.:
1.2.3-beta4
If customers want to upload files with such versions, GitLab should allow this and not force a particular style of versioning onto them.
Proposal
I propose to change the regular expression to validate generic package registry version numbers at least to [0-9a-z+~._-]+
(only allow numbers, letters from the alphabet, as well as plus, tilde, dot, underscore and minus), or maybe more radically even [^/\s\\]+
(don't allow slash, whitespace and backslash)