]>
granicus.if.org Git - json-c/log
Eric Haszlakiewicz [Mon, 6 Apr 2020 02:47:34 +0000 (02:47 +0000)]
Don't let clang-format rearrange Windows includes, since they need to be in a particular order.
Eric Haszlakiewicz [Mon, 6 Apr 2020 01:52:28 +0000 (01:52 +0000)]
Format random_seed.c with clang-format, with key asm sections excluded.
Eric Haszlakiewicz [Mon, 6 Apr 2020 01:49:14 +0000 (01:49 +0000)]
Update the style guide to mention that we're using clang-format now.
Eric Haszlakiewicz [Fri, 3 Apr 2020 04:13:34 +0000 (00:13 -0400)]
Merge pull request #555 from dota17/chang_format_3
Format json-c with clang-format tool
dota17 [Sat, 28 Mar 2020 02:25:00 +0000 (10:25 +0800)]
clang-format the files
dota17 [Fri, 27 Mar 2020 05:04:50 +0000 (13:04 +0800)]
add the disabling formatting coments and adjust the partial code manuly
dota17 [Tue, 10 Mar 2020 07:47:53 +0000 (15:47 +0800)]
add options
dota17 [Fri, 6 Mar 2020 09:15:05 +0000 (17:15 +0800)]
clang-format
Eric Haszlakiewicz [Fri, 3 Apr 2020 02:35:21 +0000 (22:35 -0400)]
Merge pull request #563 from robybeen/master
Changed order of calloc args to match stdlib
Robert [Thu, 2 Apr 2020 17:28:55 +0000 (19:28 +0200)]
Changed order of calloc args to match stdlib (2)
Although it is currently working, it's worth to stick with the stdlib definition to avoid further problems
Robert [Thu, 2 Apr 2020 17:23:10 +0000 (19:23 +0200)]
Changed order of calloc args to match stdlib
Although it is currently working, it's worth to stick with the stdlib definition to avoid further problems
Eric Haszlakiewicz [Thu, 2 Apr 2020 15:23:39 +0000 (11:23 -0400)]
Merge pull request #562 from dota17/testcase_add
Bugfix and testcases supplements
dota17 [Mon, 30 Mar 2020 09:32:06 +0000 (17:32 +0800)]
add test cases
Chen [Tue, 31 Mar 2020 02:54:45 +0000 (10:54 +0800)]
Merge pull request #561 from dota17/add_badge
add the badge in README.md and test the coveralls
dota17 [Mon, 30 Mar 2020 07:43:50 +0000 (15:43 +0800)]
add the badge in README.md and test the coveralls
Chen [Sat, 28 Mar 2020 02:42:17 +0000 (10:42 +0800)]
Merge pull request #541 from dota17/coveralls_final
add coveralls auto tool to json-c
dota17 [Wed, 19 Feb 2020 10:13:28 +0000 (18:13 +0800)]
modify the coveralls configuration file
Chen [Fri, 20 Mar 2020 03:17:20 +0000 (11:17 +0800)]
Merge pull request #558 from dota17/doc_message_modify
modify the doc target message
dota17 [Thu, 19 Mar 2020 02:23:29 +0000 (10:23 +0800)]
modify the doc target message
Eric Haszlakiewicz [Tue, 17 Mar 2020 02:24:14 +0000 (21:24 -0500)]
Merge pull request #556 from Jehan/wip/Jehan/fix-broken-mingw-w64
Fixes various Wreturn-type and Wimplicit-fallthrough errors on Mingw-w64
Jehan [Sun, 15 Mar 2020 22:29:37 +0000 (23:29 +0100)]
Fixes various Wreturn-type and Wimplicit-fallthrough errors on Mingw-w64
This is a recent regression since commit
6359b798479d379a3202e02c6a938d9b40c0d856 which added various assert(0)
calls (often replacing return-s).
With Ming-W64 compiler, json-c build was failing with various errors of
the sort:
> /home/jehan/dev/src/json-c/json_object.c: In function 'json_object_int_inc':
> /home/jehan/dev/src/json-c/json_object.c:841:1: error: control reaches end of non-void function [-Werror=return-type]
> 841 | }
> | ^
> In file included from /home/jehan/dev/src/json-c/json_object.c:17:
> /home/jehan/dev/src/json-c/json_object.c: In function 'json_object_get_double':
> /home/jehan/.local/share/crossroad/roads/w64/json-c/include/assert.h:76:4: error: this statement may fall through [-Werror=implicit-fallthrough=]
> 76 | (_assert(#_Expression,__FILE__,__LINE__),0))
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /home/jehan/dev/src/json-c/json_object.c:1070:7: note: in expansion of macro 'assert'
> 1070 | assert(0);
> | ^~~~~~
> /home/jehan/dev/src/json-c/json_object.c:1072:3: note: here
> 1072 | case json_type_boolean:
> | ^~~~
The problem is that Mingw-w64 does not consider assert() as a noreturn
(even assert(0)), because it has to be compatible by Microsoft
libraries. See the discussion here:
https://sourceforge.net/p/mingw-w64/bugs/306/
Instead let's create a new json_abort() function which is basically just
an abort() function with an optional message, for such cases where
abortion was non-conditional (using assert() and using the assertion
condition as a message here was clearly a misuse of the function). And
mark json_abort() as 'noreturn', as well as 'cold' for optimization
purpose (this is code we expect to never run, unless there is a bug,
that is).
Finally let's use this json_abort() instead of previous misused assert()
calls.
Eric Haszlakiewicz [Wed, 11 Mar 2020 03:12:13 +0000 (22:12 -0500)]
Merge pull request #546 from dota17/make_unistall
Add uninstall target in cmake
dota17 [Wed, 11 Mar 2020 02:47:04 +0000 (10:47 +0800)]
delete -r in uninstall
Eric Haszlakiewicz [Tue, 3 Mar 2020 13:54:21 +0000 (07:54 -0600)]
Merge pull request #547 from dota17/assert_test
modify json-c default build type, and fix up the assert() errors in t…
dota17 [Tue, 3 Mar 2020 06:16:13 +0000 (14:16 +0800)]
modify RELEASE
dota17 [Mon, 2 Mar 2020 12:19:35 +0000 (20:19 +0800)]
update testcase and delete debug -O0 build
Eric Haszlakiewicz [Mon, 2 Mar 2020 02:08:49 +0000 (02:08 +0000)]
Follow up the PR#542: improve assert() calls, simplify code in json_object_equal().
Eric Haszlakiewicz [Sun, 1 Mar 2020 13:51:26 +0000 (08:51 -0500)]
Merge pull request #542 from dota17/adduint64_final
add uint64 data to json-c
dota17 [Sat, 29 Feb 2020 07:32:42 +0000 (15:32 +0800)]
modify json-c default build type, and fix up the assert() errors in testcase
dota17 [Fri, 28 Feb 2020 03:18:48 +0000 (11:18 +0800)]
update json_object.c and testcase, delete json_object_uint_inc()
dota17 [Thu, 27 Feb 2020 07:01:06 +0000 (15:01 +0800)]
modify partial functions and testcase, in order to support automatic conversion for int64/uint64
dota17 [Thu, 27 Feb 2020 08:00:09 +0000 (16:00 +0800)]
Add uninstall target in cmake
dota17 [Wed, 26 Feb 2020 12:54:36 +0000 (20:54 +0800)]
modify the json_object, replace c_int64/c_uint64 with struct{union{int64, uint64},...}
Eric Haszlakiewicz [Thu, 27 Feb 2020 01:56:22 +0000 (20:56 -0500)]
Merge pull request #545 from dota17/make_doc
add doc target in cmake
dota17 [Wed, 26 Feb 2020 07:39:27 +0000 (15:39 +0800)]
add doc target on cmake
Eric Haszlakiewicz [Wed, 26 Feb 2020 02:48:35 +0000 (21:48 -0500)]
Merge pull request #544 from dota17/distcheck
Increase distcheck target in cmake
Eric Haszlakiewicz [Wed, 26 Feb 2020 02:38:18 +0000 (21:38 -0500)]
Merge pull request #543 from dota17/readme
Readme
dota17 [Fri, 21 Feb 2020 04:16:51 +0000 (12:16 +0800)]
Increase distcheck target in cmake
Chen [Tue, 25 Feb 2020 08:20:41 +0000 (16:20 +0800)]
Update README.md
dota17 [Tue, 25 Feb 2020 07:01:05 +0000 (15:01 +0800)]
Added documentation for camke-configure
dota17 [Thu, 20 Feb 2020 07:17:05 +0000 (15:17 +0800)]
add uint64 data to json-c
dota17 [Mon, 17 Feb 2020 10:15:15 +0000 (18:15 +0800)]
add coveralls auto tool to json-c
Eric Haszlakiewicz [Fri, 14 Feb 2020 03:48:02 +0000 (03:48 +0000)]
Issue #539: use a internal-only serializer function in json_object_new_double_s() to avoid potential conflicts with user code that uses the json_object_userdata_to_json_string serializer. Also, document the serializer-resetting behavior of json_object_set_double().
Eric Haszlakiewicz [Fri, 14 Feb 2020 03:25:46 +0000 (03:25 +0000)]
Issue #539: be sure to clean up at the end of test_set_value.
Eric Haszlakiewicz [Thu, 13 Feb 2020 03:11:10 +0000 (03:11 +0000)]
Issue #539: reset the serializer when json_object_set_double() is called and the current serializer is the one that json_object_new_double_s() used.
Eric Haszlakiewicz [Thu, 6 Feb 2020 02:56:06 +0000 (21:56 -0500)]
Merge pull request #531 from dota17/utf8test
validate utf-8 string
Eric Haszlakiewicz [Wed, 22 Jan 2020 04:23:53 +0000 (23:23 -0500)]
Merge pull request #536 from dota17/new_null
add json_object_new_null()
dota17 [Wed, 22 Jan 2020 01:56:52 +0000 (09:56 +0800)]
update comment
dota17 [Mon, 20 Jan 2020 07:00:11 +0000 (15:00 +0800)]
add json_object_new_null
dota17 [Fri, 17 Jan 2020 07:33:44 +0000 (15:33 +0800)]
update code
Eric Haszlakiewicz [Mon, 13 Jan 2020 03:42:02 +0000 (22:42 -0500)]
Merge pull request #533 from sunpoet/master
Fix "make check"
Po-Chuan Hsieh [Sat, 11 Jan 2020 07:20:44 +0000 (07:20 +0000)]
Fix make check
cc -DHAVE_CONFIG_H -I. -I.. -I.. -I../tests -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -Wall -Werror -Wcast-qual -Wno-error=deprecated-declarations -Wextra -Wno-unused-parameter -D_GNU_SOURCE -D_REENTRANT -MT test_parse.o -MD -MP -MF .deps/test_parse.Tpo -c -o test_parse.o test_parse.c
test_parse.c:256:14: error: adding 'int' to a string does not append to the string [-Werror,-Wstring-plus-int]
{ "null123" + 4, 4, 3, json_tokener_success, 1 },
~~~~~~~~~~^~~
test_parse.c:256:14: note: use array indexing to silence this warning
{ "null123" + 4, 4, 3, json_tokener_success, 1 },
^
& [ ]
test_parse.c:258:12: error: adding 'int' to a string does not append to the string [-Werror,-Wstring-plus-int]
{ "nullx" + 4, 2, 0, json_tokener_error_parse_unexpected, 1 },
~~~~~~~~^~~
test_parse.c:258:12: note: use array indexing to silence this warning
{ "nullx" + 4, 2, 0, json_tokener_error_parse_unexpected, 1 },
^
& [ ]
test_parse.c:260:25: error: adding 'int' to a string does not append to the string [-Werror,-Wstring-plus-int]
{ "{\"a\":1}{\"b\":2}" + 7,
~~~~~~~~~~~~~~~~~~~~~^~~
test_parse.c:260:25: note: use array indexing to silence this warning
{ "{\"a\":1}{\"b\":2}" + 7,
^
& [ ]
3 errors generated.
*** Error code 1
Stop.
dota17 [Wed, 8 Jan 2020 11:42:05 +0000 (19:42 +0800)]
test utf8
Eric Haszlakiewicz [Fri, 3 Jan 2020 13:32:53 +0000 (08:32 -0500)]
Merge pull request #526 from dota17/addTestCase_printbuf
Increased the test coverage of printbuf.c 82% to 92%.
Eric Haszlakiewicz [Fri, 3 Jan 2020 13:31:41 +0000 (08:31 -0500)]
Merge pull request #525 from dota17/addPointerTestcase
update pointer test case
chenguoping [Fri, 3 Jan 2020 06:34:35 +0000 (14:34 +0800)]
Increased the test coverage of printbuf.c 82% to 92%.
Eric Haszlakiewicz [Fri, 3 Jan 2020 03:22:57 +0000 (22:22 -0500)]
Merge pull request #523 from dota17/updatetestcase
update tsetcase for tokener_c
Eric Haszlakiewicz [Fri, 3 Jan 2020 03:22:09 +0000 (22:22 -0500)]
Merge pull request #522 from dota17/addVisitTestcase
update json_visit testcase
dota17 [Thu, 2 Jan 2020 08:18:59 +0000 (16:18 +0800)]
update tsetcase for tokener_c
dota17 [Tue, 31 Dec 2019 03:27:09 +0000 (11:27 +0800)]
update json_visit testcase
dota17 [Mon, 30 Dec 2019 01:45:28 +0000 (09:45 +0800)]
update pointer test case
Eric Haszlakiewicz [Sun, 29 Dec 2019 21:02:04 +0000 (16:02 -0500)]
Merge pull request #519 from dota17/addTestCase_obj_token
Add test case obj token
chenguoping [Fri, 27 Dec 2019 07:39:31 +0000 (15:39 +0800)]
pointer types discards qualifiers
chenguoping [Fri, 27 Dec 2019 07:07:00 +0000 (15:07 +0800)]
add testcases of object and token
Eric Haszlakiewicz [Fri, 13 Dec 2019 03:30:15 +0000 (22:30 -0500)]
Merge pull request #512 from JaapKeuter/cmake_test
Properly append to CMAKE_C_FLAGS string
Jaap Keuter [Thu, 12 Dec 2019 20:28:03 +0000 (21:28 +0100)]
Properly append to CMAKE_C_FLAGS string
Contrary to other CMAKE variables the CMAKE_C_FLAGS variable is the
composed string of flags for the C compiler. It is therefore not a list
to append to. Current implementation results in these incorrect CFLAGS,
e.g., "-O2 -g -fblahblah;-UNDEBUG". Extending the CFLAGS this way
results in the proper CFLAGS, e.g., "-O2 -g -fblahblah -UNDEBUG".
Eric Haszlakiewicz [Fri, 6 Dec 2019 05:15:14 +0000 (00:15 -0500)]
Set cmake policy CMP0075, to have check_include_file use the value of CMAKE_REQUIRED_LIBRARIES (currently, adds -lm). See issue #510.
Eric Haszlakiewicz [Fri, 6 Dec 2019 04:18:59 +0000 (23:18 -0500)]
Undefine NDEBUG for tests - cmake version. See issue #501.
Eric Haszlakiewicz [Fri, 6 Dec 2019 04:18:46 +0000 (23:18 -0500)]
Merge pull request #501 from andy5995/iss_406-2
undefine NDEBUG for tests
Eric Haszlakiewicz [Mon, 2 Dec 2019 04:42:40 +0000 (23:42 -0500)]
Add a shim script to ease shift from autoconf to cmake.
Eric Haszlakiewicz [Wed, 27 Nov 2019 04:01:27 +0000 (23:01 -0500)]
Add a few missing features to the cmake setup that are present in configure.ac:
Include all compiler warnings, and provide DISABLE_WERROR to make them not be errors.
Define _REENTRANT, if setting it works.
Set -Bsymbolic-functions, and provide DISABLE_BSYMBOLIC to turn that off.
Implement the check for HAS_GNU_WARNING_LONG
Eric Haszlakiewicz [Tue, 26 Nov 2019 04:26:48 +0000 (23:26 -0500)]
Set the soversion in the cmake built library, and arrange for the file name to be generated appropriately too.
Eric Haszlakiewicz [Sun, 24 Nov 2019 04:55:04 +0000 (23:55 -0500)]
Fix test_util_file for VS2013 too, but skip all the tests for anything older than that because the limitations are too inconvenient.
Eric Haszlakiewicz [Sun, 24 Nov 2019 04:14:24 +0000 (23:14 -0500)]
Fix up the test_util_file test for builds on Windows VS2015.
Eric Haszlakiewicz [Sun, 24 Nov 2019 01:31:14 +0000 (20:31 -0500)]
Fix some Windows compile issues, add JSON_EXPORT's, fix bogus character escapes, define __func__ and omit unistd.h if needed.
Eric Haszlakiewicz [Sat, 23 Nov 2019 20:34:23 +0000 (15:34 -0500)]
Get the cmake build a bit closer to the autoconf one: include json_visit.h, and fix the version stamped in json-c.pc.
Eric Haszlakiewicz [Sat, 23 Nov 2019 20:15:48 +0000 (15:15 -0500)]
Build and run the tests as part of the cmake build.
Eric Haszlakiewicz [Sat, 23 Nov 2019 17:05:28 +0000 (12:05 -0500)]
Fix memory leaks in test_double_serializer, and make sure all tests return 0 at the end of main().
Eric Haszlakiewicz [Sat, 23 Nov 2019 17:03:27 +0000 (12:03 -0500)]
Add a quick way (JSONC_TEST_TRACE=1) to turn on shell tracing in tests.
Eric Haszlakiewicz [Sat, 23 Nov 2019 03:56:33 +0000 (22:56 -0500)]
Extend test_double_serializer to check NaN and Infinity handling.
Eric Haszlakiewicz [Mon, 11 Nov 2019 01:35:30 +0000 (20:35 -0500)]
Define vars earlier to fix old Windows builds.
Eric Haszlakiewicz [Sun, 10 Nov 2019 05:12:27 +0000 (00:12 -0500)]
Add a json_object_from_fd_ex() function, to allow the max nesting depth to be specified.
Eric Haszlakiewicz [Sun, 10 Nov 2019 05:10:28 +0000 (00:10 -0500)]
Add a test for serializing the double value -1.0.
Eric Haszlakiewicz [Fri, 27 Sep 2019 02:23:52 +0000 (22:23 -0400)]
Merge pull request #505 from grdowns/vcpkg-instructions
Add vcpkg installation instructions
grdowns [Fri, 27 Sep 2019 00:11:49 +0000 (17:11 -0700)]
Update dependencies
grdowns [Fri, 27 Sep 2019 00:09:39 +0000 (17:09 -0700)]
Add vcpkg installation instructions
Eric Haszlakiewicz [Mon, 9 Sep 2019 02:42:36 +0000 (22:42 -0400)]
Issue #488: use JSON_EXPORT on functions so they are properly exported on Windows.
Eric Haszlakiewicz [Mon, 9 Sep 2019 02:27:30 +0000 (22:27 -0400)]
Issue #463: fix newlocale() call to use LC_NUMERIC_MASK instead of LC_NUMERIC, and remove incorrect comment.
The second call to newlocale() with LC_TIME accidentally made things
work because LC_TIME == LC_NUMERIC_MASK on some platforms.
Eric Haszlakiewicz [Mon, 9 Sep 2019 01:35:37 +0000 (21:35 -0400)]
Add a json_tokener_get_parse_end() function to replace direct access of tok->char_offset.
Eric Haszlakiewicz [Mon, 9 Sep 2019 01:34:13 +0000 (21:34 -0400)]
Minor cleanup of includes in a couple of tests.
Eric Haszlakiewicz [Mon, 12 Aug 2019 00:30:45 +0000 (00:30 +0000)]
Add an explicit cast to double to squash a -Wimplicit-int-float-conversion warning.
Though we will no longer be comparing exactly against INT64_MAX, this is ok
because any value of that magnitude stored in a double will *also* have been
rounded up, so the comparison will work appropriately.
andy5995 [Mon, 29 Jul 2019 19:51:21 +0000 (14:51 -0500)]
undefine NDEBUG for tests
(closes #406)
Eric Haszlakiewicz [Sat, 27 Jul 2019 13:29:57 +0000 (09:29 -0400)]
Merge pull request #499 from andy5995/travis_valgrind
.travis.yml:test on more recent clang and gcc versions
andy5995 [Sat, 27 Jul 2019 04:51:18 +0000 (23:51 -0500)]
add xenial default clang with CHECK enabled
andy5995 [Sat, 27 Jul 2019 04:36:01 +0000 (23:36 -0500)]
add missing dist
andy5995 [Sat, 27 Jul 2019 04:15:06 +0000 (23:15 -0500)]
manually use apt-get to install packages on bionic
andy5995 [Sat, 27 Jul 2019 03:42:53 +0000 (22:42 -0500)]
add tests on bionic beaver
andy5995 [Fri, 26 Jul 2019 04:16:09 +0000 (23:16 -0500)]
revert toolchain back to "test"
andy5995 [Fri, 26 Jul 2019 04:10:14 +0000 (23:10 -0500)]
change key
andy5995 [Fri, 26 Jul 2019 04:00:50 +0000 (23:00 -0500)]
use "non-test" ppa
Maybe something weird about how gcc is configured with the test
toolchain?