From 3b0fcb620dd196acc20d03e259ba6fdb20b1a2c9 Mon Sep 17 00:00:00 2001 From: Martin Geisler Date: Mon, 26 May 2014 00:44:09 +0200 Subject: [PATCH] compat: handle SyntaxError when importing simplejson We officially support Python 2.6 to 3.3, but simplejson does not support Python 3.1 or 3.2: https://github.com/simplejson/simplejson/issues/66 Importing simplejson on Python 3.2 results in a SyntaxError because simplejson uses the u'...' syntax (the syntax was not supported in Python 3.0 to 3.2). Support for loading simplejson instead of the stdlib json module was added by #710: https://github.com/kennethreitz/requests/pull/710 No mention was made of the lack of support for Python 3.2, but it was mentioned that simplejson can be faster than the stdlib json module. --- requests/compat.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/requests/compat.py b/requests/compat.py index bdf10d6a..84d703b6 100644 --- a/requests/compat.py +++ b/requests/compat.py @@ -75,7 +75,9 @@ is_solaris = ('solar==' in str(sys.platform).lower()) # Complete guess. try: import simplejson as json -except ImportError: +except (ImportError, SyntaxError): + # simplejson does not support Python 3.2, it thows a SyntaxError + # because of u'...' Unicode literals. import json # ---------