This fails because json.dumps() ends up stripping the specified float down. The fix is:
--- trunk/python-jsonrpc/jsonrpc/json.py 2014-01-09 10:19:38.321829000 -0500
+++ newtrunk/python-jsonrpc/jsonrpc/json.py 2014-01-09 10:13:12.568585718 -0500
@@ -114,8 +114,10 @@
for part in dumpParts (item):
yield part
yield u']'
- elif objType in [IntType, LongType, FloatType]:
+ elif objType in [IntType, LongType]:
yield unicode(obj)
+ elif objType in [FloatType,]:
+ yield unicode(repr(obj))
else:
raise JSONEncodeException(obj)