Cog-Creators / Red-DiscordBot

A multi-function Discord bot
https://docs.discord.red
GNU General Public License v3.0
4.69k stars 2.3k forks source link

Update LL version stringification and make parsing stricter #6334

Closed Jackenmen closed 4 months ago

Jackenmen commented 4 months ago

Description of the changes

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:

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:

-    JAR_VERSION: Final[str] = LavalinkVersion(3, 7, 11)
+    JAR_VERSION: Final[str] = LavalinkVersion(3, 7, 12, rc=1, red=1)

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