WebOb DeprecationWarning: You passed charset='iso-8859-1' to the Request constructor

513 views
Skip to first unread message

Tony Sullivan

unread,
Dec 4, 2011, 3:41:26 PM12/4/11
to turbo...@googlegroups.com
Hi all,

I'm getting this error on a freshly created tg2 on Linux Mint 12 (amd64)

DeprecationWarning: You passed charset='iso-8859-1' to the Request constructor. As of WebOb 1.2, if your application needs a non-UTF-8 request charset, please construct the request without a charset or with a charset of 'None', then use ``req = req.decode(charset)``

Steps to reproduce (following the install instructions)

  1. Create new virtualenv
  2. easy_install tg.devtools
  3. fix missing file  (see ticket #111)
    1. mkdir model_ming under <virtualenv>/local/lib/python2.7/site-packages/tg.devtools-2.1.3-py2.7.egg/devtools/commands
    2. create session.py in the new directory
  4. paster quickstart -ai testproject
  5. cd testproject
  6. python setup.py develop
  7. paster setup-app development.ini
  8. paster serve development.ini
  9. visit app in browser
  10. get error

Here is the full stack trace from the WebError page

File '/home/tony/venvs/tg2/local/lib/python2.7/site-packages/WebError-0.10.3-py2.7.egg/weberror/evalexception.py', line 431 in respond
  app_iter = self.application(environ, detect_start_response)
File '/home/tony/venvs/tg2/local/lib/python2.7/site-packages/Ming-0.2.2.tg1dev_20110928-py2.7.egg/ming/orm/middleware.py', line 16 in __call__
  result = self.app(environ, start_response)
File '/home/tony/venvs/tg2/local/lib/python2.7/site-packages/repoze.who-1.0.19-py2.7.egg/repoze/who/middleware.py', line 65 in __call__
  ids = self.identify(environ, classification)
File '/home/tony/venvs/tg2/local/lib/python2.7/site-packages/repoze.who-1.0.19-py2.7.egg/repoze/who/middleware.py', line 162 in identify
  identity = plugin.identify(environ)
File '/home/tony/venvs/tg2/local/lib/python2.7/site-packages/repoze.who_friendlyform-1.0.8-py2.7.egg/repoze/who/plugins/friendlyform.py', line 122 in identify
  request = Request(environ, charset=self.charset)
File '/home/tony/venvs/tg2/local/lib/python2.7/site-packages/WebOb-1.2b2-py2.7.egg/webob/request.py', line 124 in __init__
  "req.decode(charset)``" % charset
DeprecationWarning: You passed charset='iso-8859-1' to the Request constructor. As of WebOb 1.2, if your application needs a non-UTF-8 request charset, please construct the request without a charset or with a charset of 'None',  then use ``req = req.decode(charset)``


Any ideas?

Thanks,
Tony

Michael Pedersen

unread,
Dec 4, 2011, 9:39:57 PM12/4/11
to turbo...@googlegroups.com
This shouldn't be appearing. I'm going to guess you're using distribute, instead of setuptools, right? If so, you're getting WebOb 1.2. I'm working on getting TG2 2.1.4 out the door, but this is a harder release than normal for me. Once it's done, though, WebOb will be locked down to a version that works. Until then, use this:

easy_install WebOb==1.0.8

And that DeprecationWarning should go away entirely.


--
You received this message because you are subscribed to the Google Groups "TurboGears" group.
To post to this group, send email to turbo...@googlegroups.com.
To unsubscribe from this group, send email to turbogears+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/turbogears?hl=en.



--
Michael J. Pedersen
My Online Resume: http://www.icelus.org/ -- Google+ http://plus.ly/pedersen
Google Talk: m.ped...@icelus.org -- Twitter: pedersentg

Tony Sullivan

unread,
Dec 5, 2011, 1:09:32 AM12/5/11
to turbo...@googlegroups.com
Hi Michael,

You're right, it is using distribute - I think that's the default now with virtualenv.  It worked like a charm, thanks!

Tony
Reply all
Reply to author
Forward
0 new messages