# HG changeset patch # User Marcin Kuzminski # Date 1336692818 -7200 # Node ID 90431eda660829c7fb572c4fa9341f3042da2e38 # Parent a437a986d399ff4dfaf82e4057ea00984dcc5331# Parent 8a3a1a59a05088178f1b7342d6c0883d1e7069dc merge with beta diff -r a437a986d399 -r 90431eda6608 rhodecode/lib/ext_json.py --- a/rhodecode/lib/ext_json.py Thu May 10 20:27:45 2012 +0200 +++ b/rhodecode/lib/ext_json.py Fri May 11 01:33:38 2012 +0200 @@ -81,22 +81,24 @@ _sj = None -# simplejson not found try out regular json module -import json as _json - +try: + # simplejson not found try out regular json module + import json as _json -# extended JSON encoder for json -class ExtendedEncoder(_json.JSONEncoder): - def default(self, obj): - try: - return _obj_dump(obj) - except NotImplementedError: - pass - return _json.JSONEncoder.default(self, obj) -# monkey-patch JSON encoder to use extended version -_json.dumps = functools.partial(_json.dumps, cls=ExtendedEncoder) -_json.dump = functools.partial(_json.dump, cls=ExtendedEncoder) -stdlib = _json + # extended JSON encoder for json + class ExtendedEncoder(_json.JSONEncoder): + def default(self, obj): + try: + return _obj_dump(obj) + except NotImplementedError: + pass + return _json.JSONEncoder.default(self, obj) + # monkey-patch JSON encoder to use extended version + _json.dumps = functools.partial(_json.dumps, cls=ExtendedEncoder) + _json.dump = functools.partial(_json.dump, cls=ExtendedEncoder) + stdlib = _json +except ImportError: + _json = None # set all available json modules simplejson = _sj