This PR is part of a sequence of seamless modifications impacting the libs internals.
The objective is to make the code better organized, extendable, maintainable (as currently it's getting out of hands).
Within this scope a main area is compatibility and migration functionalities ensuring smooth Rolling Upgrades.
(We would like to have a better established structure/mechanism for related code. Current changes are a 1st stage pointing towards that direction, but are not yet the final solution.)
An additional logic is demonstrated in an early, experimental stage, allowing to skip all compatibilty/migration measures. Such may be useful for charms major versions typically (where part of existing legacy checks are clearly not needed anymore). This is to be further polished in upcoming continuation of clear strategy to support Rolling Upgrades.
Verbosity on the internal logic was much increased (~70-80 lines of changes are impacting docstrings or comments)
This PR is part of a sequence of seamless modifications impacting the libs internals.
The objective is to make the code better organized, extendable, maintainable (as currently it's getting out of hands).