It turns out that the stringification of Lavalink versions with rc and/or red suffixes was broken but the test suite didn't detect it due to being written incorrectly:
3.5.0-rc.4 was incorrectly stringified to: 3.5.0-rc4
3.6.0-rc.1 was incorrectly stringified to: 3.6.0-rc1
3.7.5-rc.1+red.1 was incorrectly stringified to: 3.7.5-rc1_red1
3.7.5-rc.1+red.123 was incorrectly stringified to: 3.7.5-rc1_red123
3.7.5+red.1 was incorrectly stringified to: 3.7.5_red1
3.7.5+red.123 was incorrectly stringified to: 3.7.5_red123
This PR fixes that. Note that the current RC release (3.7.12-rc1+red1) is missing a dot between rc and the number so it is NOT possible to test that the download works correctly by only updating the version:
Description of the changes
It turns out that the stringification of Lavalink versions with
rc
and/orred
suffixes was broken but the test suite didn't detect it due to being written incorrectly:3.5.0-rc.4
was incorrectly stringified to:3.5.0-rc4
3.6.0-rc.1
was incorrectly stringified to:3.6.0-rc1
3.7.5-rc.1+red.1
was incorrectly stringified to:3.7.5-rc1_red1
3.7.5-rc.1+red.123
was incorrectly stringified to:3.7.5-rc1_red123
3.7.5+red.1
was incorrectly stringified to:3.7.5_red1
3.7.5+red.123
was incorrectly stringified to:3.7.5_red123
This PR fixes that. Note that the current RC release (
3.7.12-rc1+red1
) is missing a dot betweenrc
and the number so it is NOT possible to test that the download works correctly by only updating the version:I did, however, change the tagged release for a few minutes just so that I can validate this and it is, in fact, downloading the jar without issues.
Additionally, per @aikaterna's suggestion, I made our version parser stricter to prevent incorrect formatting of the version in the future.
Last but not least, the reason for the jar download (first-time download, parsing failure, or outdated version) is now logged.
Have the changes in this PR been tested?
Yes