Accepting floats here seems dangerous. For example, '4.1' and '4.10' would probably designate different versions. But as (float) numbers they would be indistinguishable. Therefore I think that signalling an error is the most prudent way to handle non-integer numbers in places where version numbers are expected.
Accepting floats here seems dangerous. For example, '4.1' and '4.10' would probably designate different versions. But as (float) numbers they would be indistinguishable. Therefore I think that signalling an error is the most prudent way to handle non-integer numbers in places where version numbers are expected.