Eric Hawicz
f7e9d8e216
Update the AUTHORS file and add issues_closed_for_0.17.md for the upcoming 0.17 release
2023-08-12 13:53:27 -04:00
Eric Hawicz
85ed501a3d
Update the ChangeLog for 0.17 based on notable commits since 0.16
2023-08-08 17:31:38 -04:00
Eric Hawicz
077661f3d1
Fix issue #823 : add back json_number_chars, but only because it's part of the public API.
2023-08-06 15:36:19 -04:00
Eric Hawicz
87127d31c6
Merge pull request #679 from GitMensch/patch-1
...
Let json-c be used with obsolete compilers
2023-08-05 22:32:37 -04:00
Eric Hawicz
1ee12100b6
PR #679 : add workaround for old compilers w/o stdint.h (i.e. VS2008 and earlier)
2023-08-05 22:11:30 -04:00
Eric Hawicz
0bcfb6bc84
Merge pull request #822 from SSharshunov/master
...
Added option to disable app build
2023-08-04 11:47:23 -04:00
Eric Hawicz
2316dbae85
Merge pull request #702 from commodo/json_patch
...
json_patch: add first implementation only with patch application
2023-07-31 22:19:30 -04:00
Eric Hawicz
612ba56f06
Don't export json_pointer_get_internal, move json_object_array_insert_idx and json_patch_apply to the JSONC_0.17 section in json-c.sym
2023-07-31 22:18:04 -04:00
Eric Hawicz
469bc0e4bb
Work around a somewhat misleading warning about "a function declaration without a prototype is deprecated in all versions of C" in test1.c
2023-07-31 22:18:04 -04:00
Eric Hawicz
ce3184243a
Fix json_patch_apply handling of removing the whole document (i.e. "path":"").
...
Enable all disabled tests, add a few more including some with null documents.
2023-07-31 22:18:04 -04:00
Eric Hawicz
9dbf2880cc
Adjust the behavior of the args passed to json_patch_apply to make it easier to do in place modifications, and add a struct json_patch_error to report more details on failures.
2023-07-31 22:18:04 -04:00
Eric Hawicz
a14a3a680c
Fix an uninitialized memory access in json_pointer.
...
Add comments describing when the fields of the internal struct json_pointer_get_result are valid.
2023-07-31 22:18:03 -04:00
Eric Hawicz
efc530594b
Create a json_pointer_private.h and move a few things there, fix test warnings, note array_list_insert_idx is private.
2023-07-31 22:18:03 -04:00
Eric Hawicz
71d845e819
Issue #668 : add the option to specify "cmake -DUSELOCALE_NEEDS_FREELOCALE=1" to work around a bug in older versions of FreeBSD (<12.4).
2023-07-30 13:38:15 -04:00
Eric Hawicz
c8b0a90e95
Issue #808 : turn off -Wshorten-64-to-32 for clang builds (aka iOS builds) to workaround "implicit conversion loses integer precision" warnings.
2023-07-30 11:38:01 -04:00
Eric Hawicz
9b36c72945
Merge pull request #772 from cosmo-ray/color
...
add JSON_C_TO_STRING_COLOR option
2023-07-13 18:04:48 -04:00
Eric Hawicz
e9d3ab209a
Merge pull request #759 from c3h2-ctf/truncation
...
json_tokener_parse_ex: handle out of memory errors
2023-07-04 11:45:57 -04:00
Eric Haszlakiewicz
4d529f92dc
Issue #688 : Only exclude generated doc/* files, keep the CMakeLists.txt, etc... so the nodoc tarball can still be built.
2023-07-01 18:02:00 +00:00
Eric Haszlakiewicz
d0f32a5a43
Stop linking a copy of _json_c_strerror() (strerror_override.c) into the tests.
...
That hasn't been needed since since commit 6068d3f , which changed that code to
check an env var instead ("_JSON_C_STRERROR_ENABLE").
Fixes issue #812 , about dup symbols in static builds with clang.
2023-03-28 23:08:39 +00:00
Eric Hawicz
efd536af48
Merge pull request #810 from dijonkitchen/patch-1
...
docs: update to Internet Standard reference
2023-03-10 14:54:44 -05:00
Eric Haszlakiewicz
d1716fe431
Bump up the minimum cmake version to 3.9.
...
This gets us up to a version that supports features we're already using
(i.e. add_compile_options), but stops short of a cmake that requires
c++11, which some OSes still don't support.
Closes issue #774
2023-02-23 01:01:14 +00:00
Eric Haszlakiewicz
1741bcd3ea
Issue #570 : note brief instructions for building on Android.
2023-01-05 00:25:09 +00:00
Eric Hawicz
343f24f920
Merge pull request #804 from yrashk/cmp-0042
...
Problem: cmake 3.25.1 warns about CMP0042 not being set
2022-12-27 09:32:33 -05:00
Eric Hawicz
6ec5e5842d
Merge pull request #803 from yrashk/patch-2
...
Problem: confusing error message in snprintf_compat.h
2022-12-27 09:26:30 -05:00
Eric Hawicz
b6ba9429d0
Merge pull request #802 from yrashk/patch-1
...
Problem: modern CMake warns about version 2.8
2022-12-27 09:25:58 -05:00
Eric Hawicz
79c147203e
Merge pull request #796 from fedefrancescon/test-add-int-get
...
Added Test for get int functions
2022-11-16 22:23:11 -05:00
Eric Haszlakiewicz
bc35549f90
Update expected output for test_parse, missed in the previous commit.
2022-10-30 19:42:42 +00:00
Eric Haszlakiewicz
d6f46ae104
Explicitly check for integer overflow/underflow when parsing integers with JSON_TOKENER_STRICT.
2022-10-30 19:39:30 +00:00
Eric Haszlakiewicz
c50bf9df9c
Apply same EINVAL handling to json_parse_uint64() as was done for json_parse_int64(). Document that overflow/underflow for these functions is not an error, but sets errno=ERANGE.
2022-10-30 03:25:32 +00:00
Eric Haszlakiewicz
57bef5edc4
Issue #792 - set errno=EINVAL if parsing the string in json_parse_int64 fails, to match the docs for json_object_get_int.
2022-10-26 02:19:38 +00:00
Eric Hawicz
777dd06be8
Merge pull request #790 from Sarcares/patch-1
...
Small update to README file
2022-09-13 22:15:48 -04:00
Eric Hawicz
81f0807b63
Merge pull request #784 from rouault/get_time_seed_coverity_scan_silence
...
get_time_seed(): silence warning emitted by Coverity Scan static analyzer
2022-08-16 18:10:06 -04:00
Eric Hawicz
9417f4e726
Merge pull request #783 from kraj/master
...
Fix build with clang-15+
2022-08-14 08:19:19 -04:00
Eric Hawicz
ac4dfa44cb
Merge pull request #782 from DimitriPapadopoulos/codespell
...
Fix typos found by codespell
2022-08-13 09:43:50 -04:00
Eric Haszlakiewicz
bdd5e03d6e
Apply some of the fixes from PR #740 , although by using size_t instead of castings.
2022-07-31 19:28:48 +00:00
Eric Hawicz
4b0c6de760
Merge pull request #757 from c3h2-ctf/big
...
json_object_from_fd_ex: fail if file is too large
2022-07-31 14:27:32 -04:00
Eric Haszlakiewicz
253a5fa99d
Issue #705 : disable locale handling when building for a uClibc system because its duplocale() function (intentionally) crashes.
2022-07-30 20:27:35 +00:00
Eric Haszlakiewicz
9749b0cb66
When serializing with JSON_C_TO_STRING_PRETTY set, keep the opening and closing curly or square braces on same line for empty objects or arrays. Issue #778 .
2022-07-30 19:27:14 +00:00
Eric Haszlakiewicz
2e9b7456a5
Update Travis links to point at travis-ci.com instead of travis-ci.org
2022-07-26 23:47:58 +00:00
Eric Haszlakiewicz
5282e73600
Entirely drop mode bits from open(O_RDONLY) to avoid warnings on certain platforms. Fixes issue #779 .
2022-07-26 23:43:30 +00:00
Eric Haszlakiewicz
8b35a78d29
Trim a few travis builds, update others to more recent toolchains.
2022-07-24 20:37:14 +00:00
Eric Haszlakiewicz
22773b1e51
Fix the expected output for test_set_serializer.
2022-07-24 19:00:27 +00:00
Eric Haszlakiewicz
16208fc01a
Add test to check for the memory leak mentioned in issue #781
2022-07-24 18:59:26 +00:00
Eric Hawicz
2a2d861bc0
Merge pull request #781 from dddaniel/master
...
Fix memory leak with emtpy strings in json_object_set_string
2022-07-24 14:15:42 -04:00
Eric Haszlakiewicz
d28ac67dde
Fix issue #775 - use a loop instead of list(TRANSFORM ...) to support cmake < 3.12.
2022-06-27 02:15:24 +00:00
Eric Hawicz
5d98f7825a
Merge pull request #776 from stoeckmann/typo
...
Fix typo
2022-06-21 21:39:00 -04:00
Eric Haszlakiewicz
6ee0a35a20
Fix #771/#768 by marking usage() as "noreturn" instead of using "FALLTHRU" in the case statement where it'd called.
2022-06-13 01:02:53 +00:00
Eric Hawicz
11546bfd07
Merge pull request #769 from An7ar35/issue-768
...
Issue #768
2022-06-03 23:14:16 -04:00
Eric Haszlakiewicz
49c3721a5a
Unset NDEBUG so assert() is enabled in all tests. One more fix there when building with -DCMAKE_BUILD_TYPE=release.
2022-05-30 15:39:54 +00:00
Eric Haszlakiewicz
2f0942bdd7
Specify dependent libraries, including -lbsd, in a more consistent way so linking against a static json-c works better. Related issue #766
...
Use target_link_libraries, plus fill in Libs.private in json-c.pc so pkg-config --static --libs works appropriately.
Also, only link against libbsd when arc4random is actually found there.
2022-05-30 15:30:11 +00:00
Eric Haszlakiewicz
6ba1adf8ef
Include the tests and apps directories at the _end_, since order in the
...
cmake rules matters, and fix compile warnings now that we're building
those sources with all the regular flags.
2022-05-30 14:33:16 +00:00
Eric Haszlakiewicz
86b46cac07
Add --disable-static and --disable-dynamic options to the cmake-configure script.
2022-05-30 14:31:08 +00:00
Eric Haszlakiewicz
f2fc1ca00a
Note the DSIABLE_JSON_POINTER and DISABLE_EXTRA_LIBS build options on the README
2022-04-14 12:57:43 +00:00
Eric Haszlakiewicz
acccefd770
Add a "Getting Help" section to the README.
2022-04-14 12:55:32 +00:00
Eric Haszlakiewicz
de5a64888a
Update the master branch to version 16.99
2022-04-14 12:29:39 +00:00
Eric Haszlakiewicz
7e3eba72db
Clarify how to set the uploaded release tarballs to be publically readable.
2022-04-14 12:17:59 +00:00
Eric Haszlakiewicz
7d303478a4
Update the ChangeLog with recent changes, in preparation for a 0.16 release.
...
Add a list of issues closed for this release.
2022-04-14 01:05:38 +00:00
Eric Haszlakiewicz
66dcdf549e
Add new authors since the 0.15 release, tweak instructions for how to update that list.
2022-04-14 01:04:53 +00:00
Eric Hawicz
4902f9cb87
Merge pull request #765 from jvoisin/patch-1
...
Improve a bit the coverage of the fuzzer
2022-04-13 14:28:51 -04:00
Eric Haszlakiewicz
46b58ad9e7
Fix issue #764 : adjust test_util_file to match new output (changed in 6e53347)
2022-04-08 22:58:24 +00:00
Eric Hawicz
0b937f6173
Merge pull request #758 from c3h2-ctf/context
...
Preserve context if out of memory
2022-04-04 18:01:39 -04:00
Eric Hawicz
65274cf3b5
Update issue templates
2022-04-04 17:10:31 -04:00
Eric Haszlakiewicz
e244146dfd
Remove single quote from #error line. Fixes issue #761
2022-03-25 01:12:07 +00:00
Eric Hawicz
a1c092bd7b
Merge pull request #760 from BonsaiYi/error
...
Code style: removed unneeded double-quotes
2022-03-23 00:14:36 -04:00
Eric Hawicz
79459b2de2
Merge pull request #755 from c3h2-ctf/error
...
Fix error messages
2022-03-19 10:05:48 -04:00
Eric Hawicz
2326e34390
Merge pull request #754 from c3h2-ctf/doc
...
Minor improvements to documentation
2022-03-19 10:04:58 -04:00
Eric Hawicz
f0d93cee14
Merge pull request #748 from c3h2-ctf/printbuf
...
sprintbuf(): test for all vsnprintf error values
2022-03-07 00:06:57 -05:00
Eric Hawicz
9b832c8710
Merge pull request #752 from c3h2-ctf/typos
...
Fix typos
2022-03-06 23:33:42 -05:00
Eric Hawicz
a4389f4f30
Merge pull request #749 from c3h2-ctf/sprintbuf
...
sprintbuf(): handle printbuf_memappend errors
2022-03-03 21:32:09 -05:00
Eric Hawicz
4493db76d6
Merge pull request #750 from c3h2-ctf/clearmem
...
printbuf_memset(): set gaps to zero
2022-03-03 21:29:27 -05:00
Eric Hawicz
1491d92038
Merge pull request #751 from c3h2-ctf/arguments
...
printbuf: do not allow invalid arguments
2022-03-03 21:26:22 -05:00
Eric Hawicz
bd56cc8bf7
Merge pull request #745 from c3h2-ctf/vasprintf
...
vasprintf(): avoid out of memory accesses
2022-02-27 08:34:21 -05:00
Eric Hawicz
723ac8cbb5
Merge pull request #746 from rouault/typo_fixes
...
Fix typos in code comments and ChangeLog
2022-02-26 23:45:15 -05:00
Eric Hawicz
66cce0a1d7
Merge pull request #739 from rouault/avoid_unsigned_integer_overflow
...
json_escape_str(): avoid harmless unsigned integer overflow
2022-02-18 20:21:18 -05:00
Eric Hawicz
b11f79c52c
Merge pull request #741 from rouault/json_type_to_name_formatter
...
json_type_to_name(): use correct printf() formatter
2022-02-18 20:08:31 -05:00
Eric Hawicz
78246db72f
Merge pull request #742 from rouault/json_object_copy_serializer_data_add_assertion
...
json_object_copy_serializer_data(): add assertion
2022-02-18 20:08:02 -05:00
Eric Hawicz
a1ea216878
Merge pull request #744 from Kizuna-Meraki/close-random
...
Close file on error path.
2022-02-18 20:07:33 -05:00
Eric Hawicz
3b4f1e92ad
Merge pull request #737 from tniessen/patch-1
...
Fix typo in README
2022-01-11 21:25:38 -05:00
Eric Haszlakiewicz
a5c2e11460
Cause the cmake include dirs to also have ${CMAKE_INSTALL_INCLUDEDIR}/json-c, so downstream packages that use cmake to link against json-c can choose whether to include headers as just e.g. #include <json_object.h>, if they care to do so.
...
Update the README to better explain this, and make a few other tweaks.
2021-12-22 02:52:37 +00:00
Eric Haszlakiewicz
2d2382d709
Add linkhash accessor functions (lh_table_head(), lh_entry_next(), etc...) to pave the way for making the lh_table and lh_entry structure opaque in the future.
...
Update the docs to mark all members of those structures deprecated, and
suggest what to use instead.
2021-11-30 03:27:55 +00:00
Eric Haszlakiewicz
320548caf6
Drop the REFCOUNT_DEBUG code, it hasn't been used in ages.
2021-11-30 03:08:02 +00:00
Eric Hawicz
9a90b8477b
Merge pull request #734 from json-c/newer-appveyor
...
Newer appveyor config for VS2022 etc...
Update the appveyor config to specify "image" instead of just "os", and build for VS2017, VS2019 and VS2022.
2021-11-29 13:40:41 -05:00
Eric Haszlakiewicz
1cb56e705f
Put the most recent image first in appveyor builds.
2021-11-29 18:21:05 +00:00
Eric Haszlakiewicz
1763edaba3
Skip most "Release" builds. s/b_config/CONFIGURATION/ to fix artifact creation.
2021-11-29 18:18:48 +00:00
Eric Haszlakiewicz
a5fed59756
There doesn't seem to be a way to extend the appveyor build matrix for just one image, so instead list a whole bunch of excluded builds.
2021-11-27 02:55:29 +00:00
Eric Haszlakiewicz
0910e18bbd
Use the newer appveyor images to build for VS2017 and VS2019. Trim the number of builds we do.
2021-11-27 02:29:26 +00:00
Eric Haszlakiewicz
f1fb9abf14
Note the need to also set CTEST_OUTPUT_ON_FAILURE to get test output
2021-11-26 22:49:42 +00:00
Eric Hawicz
42aa6f7257
Merge pull request #732 from DiracResearch/fix/static_include_dirs
...
Fix/static include dirs
2021-11-11 23:52:43 -05:00
Eric Hawicz
9b0fb2b33e
Merge pull request #727 from jobol/propo2
...
Really use prefix JSON_C_OBJECT_ADD_
2021-10-22 19:06:11 -04:00
Eric Hawicz
05c5d15075
Merge pull request #729 from DeX77/patch-1
...
* don't assume includedir
2021-10-17 14:23:28 -04:00
Eric Hawicz
382f9462c2
Merge pull request #726 from leongross/fix/test-cmake3.1
...
fix cmake version for tests
2021-10-09 09:17:25 -04:00
Eric Hawicz
4fc44f32df
Merge pull request #722 from imaami/fix-json_tokener_new_ex-use-after-free
...
Fix use-after-free in json_tokener_new_ex()
2021-09-04 23:16:13 -04:00
Eric Hawicz
dc1ef7d566
Merge pull request #718 from Pawday/master
...
CMake create uninstall target if unix generator is used
2021-07-31 22:46:01 -04:00
Eric Haszlakiewicz
f61f1a7a91
Add workaround for Visual Studio not knowing about "inline".
2021-07-25 20:31:59 +00:00
Eric Haszlakiewicz
db6a6cc2b2
Switch the Travis build to use osx_image: xcode12.5, in an attempt to avoid timeouts with Homebrew.
2021-07-25 20:03:55 +00:00
Eric Haszlakiewicz
6a0df2609e
Merge some old work to include (some of) PR #464 into the current master branch.
2021-07-25 19:07:06 +00:00
Eric Haszlakiewicz
8c727e5ce1
Only define an "uninstall" target if it's not already defined (e.g. by projects that include json-c)
2021-07-25 15:11:11 +00:00
Eric Hawicz
be9671e48a
Merge pull request #714 from Hex052/clang-format_AfterCaseLabel
...
Add AfterCaseLabel to .clang-format
2021-07-05 18:18:06 -04:00
Eric Haszlakiewicz
75bf657cc2
If inttypes.h is present, use it, even on Windows.
2021-06-13 21:12:22 +00:00
Eric Haszlakiewicz
9ca50cf2f8
Issue #709 : adjust some include guards to be a bit more json-c specific.
2021-06-02 23:53:23 +00:00