You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
AFDKO Python module __version__ attributes are inconsistent. Many don't have the attribute at all; some that do put the module name or date in the version string; others use "X.Y" while others still use "X.Y.Z" versioning.
After other cleanup & trimming is done (drop Python 2.7 support & other related initiatives), remaining Python modules should have consistent versioning applied, and the __version__ attribute should be the single source of truth for the module version (not docstrings or other attributes). I propose the following scheme:
Format: __version__ = 'X.Y.Z'
Location: module scope, ideally immediately following imports, before other module attributes, constants, etc.
How to set the value:
modules already using "X.Y.Z" scheme: increment 'Z' for bug/trivial/patch updates. Use 'X.Y+1.0' for minor updates, 'X+1.0.0' for major updates (semantic versioning)
modules with versions set in docstrings or other locations: remove from that location & increment (usually Z-value + 1 for minor updates).
modules with no version # anywhere: use X.Y.Z == current FDK release version
modules using "X.Y" versioning: add Z == 1 (see note above re: semantic versioning)
modules using the name, date, or other values in the __version__ attribute should remove those and leave only "X.Y.Z" (incremented as applicable for semantic versioning)
Versioning-related updates can be performed along with other work as needed or as a focused effort.
The text was updated successfully, but these errors were encountered:
AFDKO Python module
__version__
attributes are inconsistent. Many don't have the attribute at all; some that do put the module name or date in the version string; others use "X.Y" while others still use "X.Y.Z" versioning.After other cleanup & trimming is done (drop Python 2.7 support & other related initiatives), remaining Python modules should have consistent versioning applied, and the
__version__
attribute should be the single source of truth for the module version (not docstrings or other attributes). I propose the following scheme:Format:
__version__ = 'X.Y.Z'
Location: module scope, ideally immediately following imports, before other module attributes, constants, etc.
How to set the value:
__version__
attribute should remove those and leave only "X.Y.Z" (incremented as applicable for semantic versioning)Versioning-related updates can be performed along with other work as needed or as a focused effort.
The text was updated successfully, but these errors were encountered: