sopel-irc / sopel

:robot::speech_balloon: An easy-to-use and highly extensible IRC Bot framework. Formerly Willie.
https://sopel.chat
Other
949 stars 403 forks source link

lifecycle: issue deprecation notices in pre-releases #2522

Closed SnoopJ closed 11 months ago

SnoopJ commented 11 months ago

Description

This changeset modifies the version check for deprecation warnings so that only the release segment of a version tag is used to check if a warning should be issued. For instance, currently a @deprecation(warning_in="8.0") will not warn in 8.0.0.dev0 because the pre-release is considered to come before the 'final' release.

@dgw mentions that this might make for noisy logs in some cases, but I'm of the opinion that if I am running 8.0.0.dev0, I want to see deprecation warnings that will be current when 8.0.0 is finalized, before that version is tagged. This is a concern for both core usage of in-the-future deprecated features, and for plugin authors who are checking their plugins against a coming release (although the latter is a softer concern).

Closes #2308.

Checklist