Christopher Dunn
f4bdc1b602
partially revert 'Added features that allow the reader to accept common non-standard JSON.'
...
revert '642befc836ac5093b528e7d8b4fd66b66735a98c',
but keep the *added* methods for `decodedNumber()` and `decodedDouble()`.
0.10.2
2015-04-11 14:49:59 -05:00
Christopher Dunn
93f45d065c
partially revert 'fix bug for static init'
...
re: 28836b8acc2c002b0488c13dba28fd5be864970a
A global instance of a Value (viz. 'null') was a mistake,
but dropping it breaks binary-compatibility. So we will keep it
everywhere except the one platform where it was crashing, ARM.
2015-04-11 14:49:59 -05:00
Christopher Dunn
6f6ddaa91c
revert 'Made it possible to drop null placeholders from array output.'
...
revert ae3c7a7aabfb345968a65001ea9bc25f1e2bb405
2015-04-11 14:49:59 -05:00
Christopher Dunn
254fe6a07a
Revert "added option to FastWriter which omits the trailing new line character"
...
This reverts commit 5bf16105b5a90f9fa7d5d4d43452feee46603a52.
2015-04-11 14:49:59 -05:00
Christopher Dunn
00d7bea0f6
revert 'Added structured error reporting to Reader.'
...
revert 68db6553471bb9cb050b1bb888b5933ee758b82d
issue #147
2015-04-11 14:49:59 -05:00
Christopher Dunn
a9d06d2650
revert 'Add public semantic error reporting'
...
for binary-compatibility with 0.6.0
issue #147
was #57
2015-04-11 14:49:59 -05:00
Christopher Dunn
1c4f6a2d79
partially revert "Switch to copy-and-swap idiom for operator=."
...
This partially reverts commit 45cd9490cd261da31cef84a44d2c587be7e26e99.
Ignored ValueInternal* changes, since those did not produce symbols for
Debian build. (They must not have used the INTERNAL stuff.)
Ignored CZString changes since those are private (and sizeof struct did
not change).
https://github.com/open-source-parsers/jsoncpp/issues/78
Conflicts:
include/json/value.h
src/lib_json/json_internalarray.inl
src/lib_json/json_internalmap.inl
src/lib_json/json_value.cpp
2015-04-11 14:49:59 -05:00
Christopher Dunn
e49bd30950
NOT C++11
2015-04-11 14:49:59 -05:00
Christopher Dunn
13d78e3da3
0.10.z (based on 1.6.z, but binary-compat w/ 0.6.0-rc2)
2015-04-11 14:49:59 -05:00
Christopher Dunn
50069d72da
prefer std::string for setComment()
...
in case of embedded nulls
2015-04-11 14:49:28 -05:00
Christopher Dunn
24682e37bf
1.6.2 <- 1.6.1
...
Fix UTF-8 for old (deprecated) Writers.
* Do not truncate at embedded zeroes.
1.6.2
2015-04-11 14:45:33 -05:00
Christopher Dunn
c2b988ee74
Merge pull request #241 from cdunn2001/fix-more-utf8
...
support UTF-8 (specifically, embedded zeroes) in old Writers
2015-04-11 14:44:41 -05:00
Christopher Dunn
e255ce31a4
support UTF-8 in old Writers
...
We had already fixed Value to hold UTF-8 properly, but only the newer
StreamWriter was writing UTF-8 properly.
Old FasterWriter etc. were using asCString() instead of asString() in
Value::writeValue().
Hopefully this change does not break any existing code. Seems unlikely.
issue #240
2015-04-11 14:41:30 -05:00
Christopher Dunn
779b5bc5ba
Merge pull request #239 from sbc100/copyright
...
Add copyright information to .py files
2015-04-11 14:41:03 -05:00
Sam Clegg
63860617b3
Add copyright information to .py files
...
This change adds explicit copyright information too python
files files. The copyright year used in each case is the
date of the first git commit of each file.
The goal is to allow jsoncpp to be integrated into the
chromium source tree which requires license information in
each source file.
fixes #234
2015-04-09 18:05:47 -07:00
Christopher Dunn
9cb88d2ca6
1.6.1 <- 1.6.0
1.6.1
2015-03-31 15:07:14 -05:00
Christopher Dunn
363e51c0a9
Merge pull request #232 from cdunn2001/fix-snprintf
...
Fix snprintf
Well, it passes Travis. But when we have time, we should clean up how snprintf is used in both reader and writer.
2015-03-31 15:06:11 -05:00
Christopher Dunn
240ddb6a1b
use std::snprintf for C++11
2015-03-31 15:04:24 -05:00
Baruch Siach
9dd77dc0ef
Revert "Use std namespace for snprintf."
...
This reverts commit 1c58876185d2a4ed87dac4a54b82f607e74f55fd.
std::snprintf() is only available in C++11, which is not provided by
all compilers. Since the C library snprintf() can easily be used as a
replacement on Linux systems, this patch changes jsoncpp to use the C
library snprintf() instead of C++11 std::snprintf(), fixing the build error
below:
src/lib_json/json_writer.cpp:33:18: error: 'snprintf' is not a member of 'std'
See #231 , #224 , and #218 .
2015-03-31 15:04:24 -05:00
Christopher Dunn
244b1496e1
Merge pull request #225 from selaselah/master
...
fix find_program() bug: no result in not-win sys
2015-03-31 11:32:06 -05:00
selaselah
c083835261
fix find_program() bug: no result in not-win sys
2015-03-19 19:18:58 +08:00
Christopher Dunn
cbe7e7c9cb
Merge pull request #221 from btolfa/forgotten-virtual-dtor
...
Added forgotten virtual dtor for `Json::CharReader::Factory`.
(Without this, the destructor of the derived `CharReaderBuilder` would not be called, which is a small memory leak.)
1.6.0
2015-03-15 13:49:24 -05:00
Tengiz Sharafiev
be183def8f
Update reader.h
2015-03-14 21:30:00 +03:00
Christopher Dunn
951bd3d05d
Merge pull request #219 from cdunn2001/c-std-headers
...
Close #218 . Fix #214 .
2015-03-11 21:36:51 -05:00
Connor Manning
1c58876185
Use std namespace for snprintf.
2015-03-11 21:33:08 -05:00
Connor Manning
2f2034629e
Constrain MSVC _isfinite to before 2013, remove duplicate includes.
2015-03-11 21:33:08 -05:00
Dani-Hub
7020451b44
Fix isfinite for MSVC.
2015-03-11 21:32:59 -05:00
Connor Manning
80497f102e
Use C++ standard headers.
2015-03-10 18:48:45 -05:00
Dani-Hub
f9feb66be2
Change exception data member
...
from "reference to string" to "string" (Resolves the most serious part of issue #216 )
2015-03-09 18:42:16 -05:00
Christopher Dunn
ed495edcc1
prefer ValueIterator::name() to ::memberName()
...
in case of embedded nulls
2015-03-08 14:35:00 -05:00
Christopher Dunn
3c0a383877
Merge pull request #212 from cdunn2001/macro-deprec
...
close #210
2015-03-08 13:10:37 -05:00
Dani-Hub
5003983029
Make preprocessor query robust against older gcc versions
2015-03-08 13:07:27 -05:00
Dani-Hub
871b311e7e
Provide JSONCPP_DEPRECATED definitions for clang and gcc
2015-03-08 13:07:27 -05:00
Christopher Dunn
cdbc35f6ac
1.6.0
2015-03-08 12:57:13 -05:00
Christopher Dunn
4e30c4fcdb
comments
2015-03-08 12:56:32 -05:00
Christopher Dunn
0d33cb3639
Merge pull request #211 from cdunn2001/except
...
* Add Json::Exception and derivatives.
* Clarify when exceptions are thrown, to avoid crashes caused by malicious input.
* Use our own type (derived fro std::exception) so they are trappable.
2015-03-08 12:50:34 -05:00
Christopher Dunn
2250b3c29d
use Json::RuntimeError
2015-03-08 12:44:55 -05:00
Christopher Dunn
9376368d86
use Json::LogicError in macros
2015-03-08 12:42:53 -05:00
Christopher Dunn
5383794cc9
Runtime/LogicError and throwers
2015-03-08 12:31:57 -05:00
Christopher Dunn
75279ccec2
base Json::Exception
2015-03-08 12:20:06 -05:00
Christopher Dunn
717b08695e
clarify errors
...
* use macros for logic errors, not input errors
* throw on parsing failure in `operator>>()`, not assert
* throw on malloc, not assert
2015-03-08 12:06:22 -05:00
Christopher Dunn
ee4ea0ec3f
delete debug code from test
1.5.4
2015-03-07 15:47:39 -06:00
Christopher Dunn
ce19001238
require length
...
Ugh! I meant to do this long ago. It would have caught my blunder.
2015-03-07 15:12:52 -06:00
Christopher Dunn
078f991c57
1.5.4 <- 1.5.3
...
important bug-fix (thx to datadiode@)
2015-03-07 14:52:01 -06:00
Christopher Dunn
72b5293695
Merge pull request #207 from cdunn2001/fix_CZString_copy_constructor
...
Fix czstring copy constructor
2015-03-07 14:49:54 -06:00
Christopher Dunn
a63d82d78a
drop unused CString ctor case
...
`Value::CZString::CZString(char const* str, unsigned length, DuplicationPolicy allocate)` with `allocate == duplicate` does not happen.
2015-03-07 14:43:37 -06:00
datadiode
ee83f8891c
Trivial fixes in CZString constructors.
2015-03-07 14:43:07 -06:00
Christopher Dunn
5c448687e1
fix ValueTest/zeroes*
2015-03-07 14:41:15 -06:00
Christopher Dunn
401e98269e
old-style enum namespacing
2015-03-06 16:11:55 -06:00
Christopher Dunn
b2a7438d08
Merge pull request #205 from open-source-parsers/reject-dup-keys
...
[Shekhar (shakers007) wrote](https://sourceforge.net/p/jsoncpp/bugs/22/ ):
> As per RFC4627 (section 2.2), names within an object should be unique. When using JSONCPP's strict mode, parsing such an object should fail.
2015-03-06 12:58:55 -06:00
Christopher Dunn
62ad140d18
rejectDupKeys
2015-03-06 12:39:05 -06:00
Christopher Dunn
527332d5d5
add rejectDupKeys feature - not yet impld
2015-03-06 12:38:58 -06:00
Christopher Dunn
cada3b951f
test for repeated key in strictMode
...
https://sourceforge.net/p/jsoncpp/bugs/22/
2015-03-06 12:38:00 -06:00
Christopher Dunn
ff61752444
change str_ for cross-compilation
...
https://sourceforge.net/p/jsoncpp/bugs/59/
2015-03-06 10:31:46 -06:00
Christopher Dunn
7f439f4276
clarify operator=
2015-03-06 09:22:57 -06:00
Christopher Dunn
3976f17ffd
test assignment over-writes comments, but swapPayload() does not
2015-03-06 09:16:19 -06:00
Christopher Dunn
80ca11bb41
test commentBefore
...
for issue #203
2015-03-06 05:55:19 -06:00
Christopher Dunn
2fc08b4ebd
clarify which versions work with old compilers
2015-03-05 21:45:42 -06:00
Christopher Dunn
239c733ab5
1.5.3 <- 1.5.2
2015-03-05 18:27:52 -06:00
Christopher Dunn
295e73ff3c
generate both version.h and version from CMakelists.txt
...
This forces consistency, since they will be re-generated whenever
a git operation alters CMakelists.txt. They are still in the repo
because users might not actually run cmake.
2015-03-05 18:27:39 -06:00
Christopher Dunn
2a840c105c
had trouble finding Python on Windows
...
With this change, `make jsoncpp_check` will still fail if Python
is missing, so our CI tests are unaffected.
2015-03-05 17:42:12 -06:00
Christopher Dunn
7ec98dc9fe
Merge pull request #202 from open-source-parsers/get-with-zero
...
`Value::get(key, default)` with zero
2015-03-05 16:56:56 -06:00
Christopher Dunn
0fd2875a44
fix get() for embedded zeroes in key
...
This method had been overlooked.
2015-03-05 16:47:29 -06:00
Christopher Dunn
d31151d150
test get(key, default)
2015-03-05 16:44:50 -06:00
Christopher Dunn
f50145fbda
Merge pull request #201 from open-source-parsers/vs
...
* Copy .dll for running unit-tests in VisualStudio.
* Stop using `do{}while(0)` idiom b/c VisualStudio warns.
* Fix a warning in a test.
2015-03-05 16:37:42 -06:00
Christopher Dunn
b3e6f3d70f
drop do{}while(0)
idiom
...
Rationale:
* http://stackoverflow.com/questions/154136/do-while-and-if-else-statements-in-c-c-macros/154138#154138
But Visual Studio issues a warning: `warning C4127: conditional expression is constant`
* http://stackoverflow.com/questions/1946445/c-c-how-to-use-the-do-while0-construct-without-compiler-warnings-like-c412
2015-03-05 15:26:29 -06:00
Christopher Dunn
13e063c336
copy .dll for unit-test
...
Fix 2nd problem in issue #200 .
* http://stackoverflow.com/questions/10671916/how-to-copy-dll-files-into-the-same-folder-as-the-executable-using-cmake
Q: What about the Python tests?
A: They are not normally run in Visual Studio. If desired, one can set PATH.
2015-03-05 15:23:20 -06:00
Christopher Dunn
f57da48f48
maybe address warning
...
cmake -DCMAKE_BUILD_TYPE=debug -DJSONCPP_LIB_BUILD_STATIC=OFF
-DJSONCPP_LIB_BUILD_SHARED=ON -G "Visual Studio 10" ../..
`potentially uninitialized local variable 'dist' (line 2212 of
test_lib_json/main.cpp)`
2015-03-05 14:41:42 -06:00
Christopher Dunn
eaa3fd8eca
maybe fix DLL symbols for VS
2015-03-05 10:11:43 -06:00
Christopher Dunn
ff63d034e5
1.5.2 <- 1.5.1
...
* Fixed compile error for VS2013.
* Added `operator[]` to Builders. Recalling previous minor versions for
bug-fixes.
2015-03-05 09:18:44 -06:00
Christopher Dunn
2aa4557e79
Merge pull request #199 from open-source-parsers/set-builders
...
Setting builders
2015-03-05 09:18:06 -06:00
Christopher Dunn
37dde9d29d
fix example in docs
2015-03-05 09:18:06 -06:00
Christopher Dunn
c312dd5ef7
Builder::operator[] plus tests
2015-03-05 09:18:01 -06:00
Christopher Dunn
42d7e59fe0
fix compiler-error and warnings for VS2013
...
fix issue #200
2015-03-05 09:15:10 -06:00
Christopher Dunn
a8104a8035
1.5.1 <- 1.5.0
...
Fixed Builders ::validate(). Added tests.
2015-03-04 21:18:05 -06:00
Christopher Dunn
7b22768c33
test Builders::validate()
2015-03-04 21:17:03 -06:00
Christopher Dunn
19c49a459d
fix Builders::validate()
...
(cherry picked from commit 626cfcdbb83bdc93243d7b64144e88f08c510085)
2015-03-04 21:14:53 -06:00
Christopher Dunn
99822b27cd
clarify python version
2015-03-03 16:17:11 -06:00
Christopher Dunn
8a70297869
fix inline doxygen comments
2015-03-03 16:17:08 -06:00
Christopher Dunn
24f544996f
no struct init
...
The C struct initializer is not standard C++.
GCC and Clang handle this (at least in some versions) but some
compilers might not.
2015-03-03 10:15:09 -06:00
Christopher Dunn
0c91927da2
assertions should be logic_error
2015-03-03 09:45:33 -06:00
Christopher Dunn
493f6dcebe
keep StaticString (!allocated_) for copy ctor
2015-03-03 09:36:22 -06:00
Christopher Dunn
eaa06355e1
test Json::Value::null
2015-03-03 08:45:52 -06:00
Christopher Dunn
effd732aa1
null -> nullRef
2015-03-03 01:25:33 -06:00
Christopher Dunn
70cd04d49a
1.5.0 <- 1.4.4
2015-03-03 00:45:57 -06:00
Christopher Dunn
9e49e3d84a
Merge pull request #197 from cdunn2001/allow-zero
...
allow zeroes in strings
2015-03-03 00:44:19 -06:00
Christopher Dunn
2d653bd15d
fix security hole for string-key-lengths > 2^30
2015-03-03 00:14:54 -06:00
Christopher Dunn
585b267595
tests for zeroes
...
* ValueTest/zeroes
* ValueTest/zeroesInKeys
2015-03-03 00:14:54 -06:00
Christopher Dunn
c28610fb5d
fix StaticString test
...
* support zeroes in string_
* support zeroes in writer; provide getString(char**, unsigned*)
* valueToQuotedStringN(), isCC0(), etc
* allow zeroes for cpptl ConstString
* allocated => non-static
2015-03-03 00:14:54 -06:00
Christopher Dunn
a53283568f
cp duplicateStringValue()
2015-03-03 00:14:53 -06:00
Christopher Dunn
ef21fbc785
doc new behavior
2015-03-03 00:14:53 -06:00
Christopher Dunn
25342bac13
support UTF-8 for const methods
2015-03-03 00:14:53 -06:00
Christopher Dunn
2b9abc3ebf
Merge pull request #195 from cdunn2001/len-in-czstring
...
Store length in CZString
2015-03-03 00:07:03 -06:00
Christopher Dunn
e6b46e4503
stop computing strlen() in CZString
2015-03-02 23:50:59 -06:00
Christopher Dunn
8a77037320
actually store length in CZString
2015-03-02 23:50:59 -06:00
Christopher Dunn
57ad051f67
allow length in CZString
2015-03-02 23:50:59 -06:00
Christopher Dunn
b383fdc61e
use memcmp in CZString
...
This is a loss of efficiency, but it prepares for an increase when we
have stored lengths.
2015-03-02 23:50:59 -06:00
Mattes D
5d79275a5b
Added MSVC+CMake generated files to .gitignore.
...
pull #193
2015-03-02 23:50:14 -06:00
Christopher Dunn
c1e834a110
Merge pull request #194 from cdunn2001/master
...
test StaticString
2015-03-02 17:14:36 -06:00
Christopher Dunn
0570f9eefb
test StaticString
2015-03-02 17:06:09 -06:00