1
0
mirror of https://github.com/ultrajson/ultrajson.git synced 2024-11-24 05:12:02 +01:00
Commit Graph

59 Commits

Author SHA1 Message Date
Jason Moiron
5fa6d7be25 add a test to check for the sign bit bug in ujson 1.9 2011-12-06 05:46:17 -05:00
Jonas Tarnstrom
824a42bf8c - Added support for detecting overflow scenario when a PyLong bigger than 64-bits signed is supposed to be converted to such. Now a proper Python exception is thrown
- Bumped version

- Encoder now uses JT_INVALID from client implementation to abort encoder
2011-09-19 17:30:35 +02:00
Jonas Tarnstrom
daf0fde4c9 - Fixed issue with parsing kwargs
- Fixed test for ensure_ascii
- Bumped version
- Fixed / decoding issue in lookup tables
2011-09-09 17:13:31 +02:00
Jonas Tarnstrom
e962ae68e2 - Added forceAscii option to encoder to control if output is forced to be ascii (<128) or not.
- Added ensure_ascii kwargs to encode/dumps (true is default). Use ensure_ascii=false to allow UTF_8 strings to be outputted, should be faster and more space efficient.

- Bumped version
2011-09-09 16:00:23 +02:00
Jonas Tarnstrom
6738e59af1 - Fixed PyPi builds and added instructions for it 2011-08-17 09:05:58 +02:00
Jonas Tarnstrom
25b906f420 - Fixed pathes in setup.py 2011-08-17 08:57:44 +02:00
Jonas Tarnstrom
94da0f60da - Bumped version 2011-08-16 15:26:08 +02:00
Hong Minhee
8a82566fd3 setup.py seemed broken because it missed version.h file, but now resolved. 2011-08-16 09:21:08 -04:00
Hong Minhee
482aa99fd0 version 1.5 2011-08-16 08:55:57 -04:00
Hong Minhee
ca018d30ae Merge git://github.com/jskorpan/ultrajson
Conflicts:
	python/setup.py
2011-08-16 08:55:32 -04:00
Jonas Tarnstrom
29152a219d - Removed prebuilt win32 library
- Precompilation of ujson.lib no longer needed when building for Python (Python distutils (setup.py) takes care of it)
- Updated README instructions to reflect that
- Minor performance optimization
2011-08-16 14:31:24 +02:00
Hong Minhee
2c4cb36579 Added ujson.__version__ string (which is synchronized to setup.py's). #19 2011-08-16 08:07:17 -04:00
Hong Minhee
6dc158775d Hard tab indent. 2011-08-15 23:10:27 -04:00
Hong Minhee
31e8d76b74 Added dump/load functions that take a file object. 2011-08-15 23:08:53 -04:00
Jonas Tärnström
3017d9773f - Added test for encoding Unicode keys with beyond ASCII characters in them 2011-06-16 10:09:33 +02:00
Jonas Tärnström
7a9b93266b Merge pull request #16 from mbra/master
Fix segfault when encoding python unicode dict-keys
2011-06-16 00:55:26 -07:00
Nick Vatamaniuc
c6ad2dd060 Python 2.4 compatibility 2011-06-05 06:16:30 -04:00
Michael van Bracht
4aa6e24d93 convert unicode dict-keys to utf8 strings 2011-05-27 08:09:52 +02:00
Jonas Tärnström
bd283e7020 - Fixed X.0 values to be encoded as "X.0" instead of "X" 2011-04-26 21:00:59 +02:00
Jonas Tärnström
19b625ce65 - Fixed dual free bug of Dict objects
- Minor changes to string decoder
2011-04-20 17:47:23 +02:00
Jonas Tärnström
7ea8664576 - Minor optimization 2011-04-06 12:43:52 +02:00
Jonas Tärnström
0dc2a790a3 - Changed decoding of strings to wchar_t
- Fixed Python decoding of unicode strings (all decoded strings are now unicode)
- Added couple of tests
- Fixed issue with decoding and escaping big text streams
2011-04-06 12:35:59 +02:00
Jonas Tärnström
a6e0b33a38 - Fixed issue with encoding control characters as \uXXXX 2011-03-25 15:53:25 +01:00
Jonas Tärnström
0600783ac8 - Fixed include path issue 2011-03-25 11:05:20 +01:00
Jonas Tärnström
fe6cb12e34 - Fixed support for Big Endian
- Minor code cleanup
2011-03-23 00:14:58 +01:00
Jonas Tärnström
6934f6b43b - Re-enabled some tests
- Fixed broken negative exponent floating point decoder
- Fixed floating point decoder tests
2011-03-22 23:08:46 +01:00
Jonas Tärnström
6c19d69796 - Added test for neg infinity
- Fixed 64-bit encoding issue on x64 Linux
- Made JSON_DECODE_NUMERIC_AS_DOUBLE disabled by default. Enable it to improve 32-bit performance but with the loss of long integer precision
2011-03-22 21:22:58 +01:00
Jonas Tärnström
b42e6a481d - Fixed proper detection and error reporting of -Inf, Inf and Nan when encoding floating point numbers 2011-03-22 20:39:06 +01:00
Jonas Tärnström
3de16ac9d8 - Updated win32 library 2011-03-21 16:50:35 +01:00
Jonas Tärnström
c5d588506b - Fixed type type-o on POSIX 2011-03-21 16:49:48 +01:00
Jonas Tärnström
101bb3e7f7 - Fixed some more gcc and msvc9 compiler warnings
- Code cleanups
- FIXME cleanups
2011-03-21 15:33:19 +01:00
Jonas Tärnström
f3b2aed86a - Fixed some pointer casting warnings from gcc and msvc
- Fixed overwrite issue with prv data in Python implementation
- Changed timer function used for benchmarks
2011-03-21 11:40:55 +01:00
Jonas Tärnström
558b42a8b5 - Fixed type-o in benchmark.py
- Minor cleanups
- Optimized string encoder
2011-03-16 15:26:18 +01:00
Jonas Tärnström
9d6dd489ec - Optimized UTF-8 encoding and decoding
- Improved error reporting when encoding and decoding utf-8
- Change from tabs to spaces in most Python code
- General code cleanup of C code
- Added UTF-8 encoding/decoding to tests
2011-03-16 12:04:28 +01:00
Jonas Tärnström
d11844ad50 - Fixed type-o 2011-03-15 17:06:04 +01:00
Jonas Tärnström
2cea14932f - Implemented encoding and decoding of unicode escape sequences \uXXXX including surrogate pairs
- Strings passed to encoder are assumed to be UTF-8 encoded
- Strings passed to decoder are assumed to be UTF-8 or to have \uXXXX escaping for such characters
- Added more tests

NOTE: If illegal UTF-8 sequences are encountered the encoder/decoder will simply stop and no proper error will be reported
2011-03-08 17:55:06 +01:00
Jonas Tärnström
197ccfdd48 - Optimization to string decoder 2011-03-08 02:52:19 +01:00
Jonas Tärnström
a4a451140b - Optimized decoder by not always creating 64 bit values when decoded values could be held inside 32-bit value (int) 2011-03-08 02:35:43 +01:00
Jonas Tärnström
86d016e729 - Broke out encoding and decoding of 64 and 32 bit values as separate types (JT_INTEGER and JT_LONG)
- Optimized Buffer_Escape using local variable
2011-03-08 02:04:59 +01:00
Jonas Tärnström
6a663afad6 - Minor change in benchmark.py 2011-03-08 00:51:54 +01:00
Jonas Tärnström
86ebbb6a97 - Implemented proper releasing of JSOBJ instances in decoder when decoding fails inside Object or Array
- Brought a bunch of tests pack from the dead
- Implemented leak tests for decoder releaseObject calls
- Implemented simplified loads/dumps (one argument) protocol for ujson module
- Code clean up in decoder
- Fixed known OSX issue with non exist malloc.h (stdlib.h instead)
2011-03-08 00:23:42 +01:00
Jonas Tärnström
1ed0bc18ec - Speed optimizations for Python decoder
- Changed inline optimization options
- Fixed empty array and object decoder bug
- Removed some buffer macros in encoder
2011-03-03 16:55:07 +01:00
Jonas Tärnström
f7fa7bc062 - Improved integration API 2011-03-03 14:49:31 +01:00
Jonas Tärnström
4c279683e7 - Fixed broken gcc build
- Renamed JSTYPEINFO to JSONTypeContext
2011-03-02 11:41:34 +01:00
Jonas Tärnström
143ec42c73 - Yet another minor fix for benchmark
- Updated README
2011-03-01 23:27:07 +01:00
Jonas Tärnström
7adada6bef - Finalized benchmark test 2011-03-01 22:54:53 +01:00
Jonas Tärnström
6cb01a6d84 - Final tweaks
- Updated some tests
2011-03-01 22:53:33 +01:00
Jonas Tärnström
c5966a244e - Optimization in progress
- Added __fastcall which currently breaks gcc builds, to be fixed soon
2011-03-01 22:24:06 +01:00
Jonas Tärnström
60f0258389 - Optimizations in progress 2011-03-01 19:53:25 +01:00
Jonas Tärnström
e62a3e4b92 - Added decoder to benchmarks
- Began optimizations of decoder
2011-03-01 19:00:40 +01:00