I also removed the `Version` class that inherited from `LooseVersion` in `configure/util.py`. The resulting difference is that 'patch' is no longer an available attribute, it is now called 'micro'. I did this for the sake of consistency (Everything following the same naming convention found in `packaging.version.Version`). In `packaging.version` there is also a `LegacyVersion` which is less strict, similar to `LooseVersion`. I chose not to use this at all since it is already deprecated and is slated for removal. Comparing a `LegacyVersion` against a `Version` always results in the `LegacyVersion` object being `less`, which is not intuitive and can cause unexpected behavior.
Bug 1777414 Comment 1 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
All "versions" should now be Version objects and they can no longer be compared against hard-coded strings. As such, all hard-coded are also constructed into Version objects so that they can be compared.. I also removed the Version class that inherited from LooseVersion in configure/util.py. The resulting difference is that 'patch' is no longer an available attribute, it is now called 'micro'. I did this for the sake of consistency (Everything following the same naming convention found in packaging.version.Version). In packaging.version there is also a LegacyVersion which is less strict, similar to LooseVersion. I chose not to use this at all since it is already deprecated and is slated for removal. Comparing a LegacyVersion against a Version always results in the LegacyVersion object being less, which is not intuitive and can cause unexpected behavior.