0001-gluon-languages.py-import-escape-from-html-instead-o.patch 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. From cf3c8e6ac8c428151dc191510554b4ee2705958d Mon Sep 17 00:00:00 2001
  2. From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
  3. Date: Wed, 30 Oct 2019 10:08:35 +0100
  4. Subject: [PATCH] gluon/languages.py: import escape from html instead of cgi
  5. import escape from html and fallback on current import from cgi to fix
  6. the following build failure with python 3.8:
  7. /home/buildroot/autobuild/run/instance-2/output-1/host/bin/python -c 'import os; os.chdir("/home/buildroot/autobuild/run/instance-2/output-1/build/python-web2py-2.17.2"); from gluon.main import save_password; save_password("web2py",8000)'
  8. Traceback (most recent call last):
  9. File "<string>", line 1, in <module>
  10. File "/home/buildroot/autobuild/run/instance-2/output-1/build/python-web2py-2.17.2/gluon/__init__.py", line 34, in <module>
  11. from .globals import current
  12. File "/home/buildroot/autobuild/run/instance-2/output-1/build/python-web2py-2.17.2/gluon/globals.py", line 24, in <module>
  13. from gluon.serializers import json, custom_json
  14. File "/home/buildroot/autobuild/run/instance-2/output-1/build/python-web2py-2.17.2/gluon/serializers.py", line 10, in <module>
  15. from gluon.languages import lazyT
  16. File "/home/buildroot/autobuild/run/instance-2/output-1/build/python-web2py-2.17.2/gluon/languages.py", line 19, in <module>
  17. from cgi import escape
  18. ImportError: cannot import name 'escape' from 'cgi' (/home/buildroot/autobuild/run/instance-2/output-1/host/lib/python3.8/cgi.py)
  19. Fixes:
  20. - http://autobuild.buildroot.org/results/fa515627ae888d08fc10074e8d9f6e9dbede91a7
  21. Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
  22. [Upstream status: https://github.com/web2py/web2py/pull/2272]
  23. ---
  24. gluon/languages.py | 5 ++++-
  25. 1 file changed, 4 insertions(+), 1 deletion(-)
  26. diff --git a/gluon/languages.py b/gluon/languages.py
  27. index 9ed60f9c..554d7339 100644
  28. --- a/gluon/languages.py
  29. +++ b/gluon/languages.py
  30. @@ -16,7 +16,10 @@ import re
  31. import sys
  32. import pkgutil
  33. import logging
  34. -from cgi import escape
  35. +try:
  36. + from html import escape
  37. +except ImportError:
  38. + from cgi import escape
  39. from threading import RLock
  40. from pydal._compat import copyreg, PY2, maketrans, iterkeys, unicodeT, to_unicode, to_bytes, iteritems, to_native, pjoin
  41. --
  42. 2.23.0