Red Hat Bugzilla – Bug 801312
webob deprecation warnings
Last modified: 2013-01-19 21:56:41 EST
Seeing lots of this spewed in /var/log/messages:
Mar 8 09:30:28 zig keystone-all: /usr/lib/python2.7/site-packages/webob/dec.py:142: DeprecationWarning: Response.request and Response.environ are deprecated
Mar 8 09:30:28 zig keystone-all: req.response.request = req
Though not directly related to the above, it's worth noting new deprecation introduced in webob 1.2
Also worth nothing for EPEL6:
" Since Python < 2.7 does not ignore DeprecationWarning, and I am running on Python 2.6, the warnings are being thrown as exceptions."
(In reply to comment #2)
> " Since Python < 2.7 does not ignore DeprecationWarning, and I am running on
> Python 2.6, the warnings are being thrown as exceptions."
False alarm: that was webob 1.2 throwing exceptions, not python version difference https://lists.launchpad.net/openstack/msg08416.html
This package has changed ownership in the Fedora Package Database. Reassigning to the new owner of this component.
(In reply to comment #0)
> /usr/lib/python2.7/site-packages/webob/dec.py:142: DeprecationWarning:
> Response.request and Response.environ are deprecated
> req.response.request = req
But that's webob code using own deprecated stuff, not Keystone, moving component to WebOb for further discussion.
AFAIK this issue still stands on Fedora 17 (or any distro using webob 1.1).
From the webob docs:
Deprecate Response.request and Response.environ attrs.
Furthermore it looks like this has been reversed in webob 1.2a1+:
Response.request and .environ attrs are deprecated and raise exceptions when used.
This issue could be really annoying in a production deployment of OpenStack because keystone is such a central component. This deprecation warning gets logged into /var/log/messages and I can see it exhausting disk space quite easily.
*** Bug 892934 has been marked as a duplicate of this bug. ***
Patch proposed by Matthias in bug 892934 taken that from webob-1.2.3
--- dec.py.bak 2013-01-08 12:43:24.945513816 +0100
+++ dec.py 2013-01-08 12:43:38.826463501 +0100
@@ -139,7 +139,6 @@
start_response = args
req = self.RequestClass(environ)
req.response = req.ResponseClass()
- req.response.request = req
args = self.args
Ricky, do you mind carrying that patch in f18 rpm?
Would you consider to update webob to 1.2.3 in f19 and f18?
Note f17 probably should be updated along with f18 for consistency.
Note also that updating to 1.2.3 is a bit complicated as we currently have:
F16 F17 F18 F19 EL5 EL6 RHEL6
webob-0.9 * *
webob-1.1 * * *
webob1.2 * * *
I've asked rbean about consolidating some of these in Fedora at least.
Clearing needinfo, I got response from Luke Macken:
> We use WebOb within the TurboGears2 and Pyramid web stacks, as well
> as a variety of other packages:
> TurboGears2 currently requires 'WebOb <= 1.1.1'
> Pyramid requires 'WebOb >= 1.2b3', # request.path_info is unicode
> There is a forward compat python-webob1.2 in Fedora & EPEL that
> currently provides python-webob1.2-1.2.1
> It feels like we should eventually flip this around so that python-webob
> provides the latest and we have backward-compat packages for things like
> TG2, but in the mean time you could probably update the
> python-webob1.2 package to 1.2.3 without any issues.
python-webob-1.1.1-4.fc18 has been submitted as an update for Fedora 18.
* should fix your issue,
* was pushed to the Fedora 18 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing python-webob-1.1.1-4.fc18'
as soon as you are able to.
Please go to the following url:
then log in and leave karma (feedback).
python-webob-1.1.1-4.fc18 has been pushed to the Fedora 18 stable repository. If problems still persist, please make note of it in this bug report.