[openstack-dev] [oslo] deprecation 'pattern' library??
harlowja at outlook.com
Wed Dec 10 22:49:10 UTC 2014
Sean Dague wrote:
> On 12/10/2014 04:00 PM, Doug Hellmann wrote:
>> On Dec 10, 2014, at 3:26 PM, Joshua Harlow<harlowja at outlook.com> wrote:
>>> Hi oslo folks (and others),
>>> I've recently put up a review for some common deprecation patterns:
>>> In summary, this is a common set of patterns that can be used by oslo libraries, other libraries... This is different from the versionutils one (which is more of a developer<->operator deprecation interaction) and is more focused on the developer<-> developer deprecation interaction (developers say using oslo libraries).
>>> Doug had the question about why not just put this out there on pypi with a useful name not so strongly connected to oslo; since that review is more of a common set of patterns that can be used by libraries outside openstack/oslo as well. There wasn't many/any similar libraries that I found (zope.deprecation is probably the closest) and twisted has something in-built to it that is something similar. So in order to avoid creating our own version of zope.deprecation in that review we might as well create a neat name that can be useful for oslo/openstack/elsewhere...
>>> Some ideas that were thrown around on IRC (check 'https://pypi.python.org/pypi/%s' % name for 404 to see if likely not registered):
>>> * debtcollector
>> I suspect we’ll want a minimal spec for the new lib, but let’s wait and hear what some of the other cores think.
> Not a core, but as someone that will be using it, that seems reasonable.
> The biggest issue with the deprecation patterns in projects is
> aggressive cleaning tended to clean out all the deprecations at the
> beginning of a cycle... and then all the deprecation assist code, as it
> was unused.... sad panda.
> Having it in a common lib as a bunch of decorators would be great.
> Especially if we can work out things like *not* spamming deprecation
> load warnings on every worker start.
We should be able to adjust the deprecation warnings here.
Although I'd almost want these kinds of warnings to not occur/appear at
worker start since at that point the operator can't do anything about
them... An idea was to have the jenkins/gerrit/zuul logs have these
depreciation warnings turned on (perhaps in a blinky red/green color) to
have them appear at development time (since these would be targeted to
features depreciated that are only really relevant to developers, not
operators). Once released then they can just stay off (which I believe
is the python default to turn these off unless '-Wonce or -Wall' is
passed to the worker/runtime on python startup)...
(DeprecationWarning and its descendants are ignored by default since
>>> * bagman
>>> * deprecate
>>> * deprecation
>>> * baggage
>>> Any other neat names people can think about?
>>> Or in general any other comments/ideas about providing such a deprecation pattern library?
>>> OpenStack-dev mailing list
>>> OpenStack-dev at lists.openstack.org
>> OpenStack-dev mailing list
>> OpenStack-dev at lists.openstack.org
More information about the OpenStack-dev