| Index | index by Group | index by Distribution | index by Vendor | index by creation date | index by Name | Mirrors | Help | Search |
| Name: libjson-c5 | Distribution: openSUSE Tumbleweed |
| Version: 0.19 | Vendor: openSUSE |
| Release: 1.1 | Build date: Thu Jul 2 19:19:29 2026 |
| Group: System/Libraries | Build host: reproducible |
| Size: 135631 | Source RPM: json-c-0.19-1.1.src.rpm |
| Packager: http://bugs.opensuse.org | |
| Url: https://github.com/json-c/json-c | |
| Summary: JSON-C shared library | |
JSON-C implements a reference counting object model that allows you to easily construct JSON objects in C, output them as JSON formatted strings and parse JSON formatted strings back into the C representation of JSON objects. This package includes the JSON library.
MIT
* Thu Jul 02 2026 Jan Engelhardt <jengelh@inai.de>
- Add no-xxd.patch and bring back the full testsuite.
- Name the -devel and -doc subpackages based on the SRPM and
nothing else.
* Thu Jul 02 2026 Paolo Stivanin <info@paolostivanin.com>
- Drop xxd BuildRequires to break an OBS build cycle; exclude the
test_json_parse_cli test (its only consumer) from %check.
* Mon Jun 29 2026 Paolo Stivanin <info@paolostivanin.com>
- Update to 0.19:
New features
- -----------
* Add support for Commodore Amiga and MorphOS
* Allow builds with CMake 4 - sync minimum version across all
CMakeLists.txt files
* Update openssl command to work for newer versions of openssl.
* Add support for building json-c with meson
* Support MSVC in packages that use GNU Autoconf.
* Add VERSIONINFO to libjson-c.dll
* Make json_tokener_free(NULL) a no-op, to simplify cleanup paths.
* Explicitly handle NaN values when converting to int
* Set errno=RANGE in json_object_get_int/int64/uint64() when the
source value can't be represented in the target type.
* Make json_parse a bit more useful by adding -u (validate UTF8)
and -P (specify arbitrary tokener parse flags), and read from
stdin if no filename is provided.
* Fix the apps/json_parse "-s" (strict) option so it actually does
something, and default to non-strict.
Significant changes and bug fixes
- --------------------------------
* Issue #867 - also disallow control characters in keys in
JSON_TOKENER_STRICT mode
* Issue #875: cast to unsigned char so bytes above 0x7f aren't
interpreted as negative, which was causing the strict-mode
control characters check to incorrectly trigger.
* Issue #881: don't allow json_tokener_new_ex() with a depth < 1
* Fix linkhash breaking -std=c89
* Fixing Cmake build when using clang-cl, avoids errors about
redefining existing symbols
* Fix AIX build failure - Add CMake detection for getopt.h
* Fix bug involving supplemental code points that look like high
surrogates
* Fix runtime issue with test_util_file.c in Windows (add O_BINARY)
* Fix macro WIN32_LEAN_AND_MEAN redefined
* Issue #914: Fix Memory usage regression due to newlocale() on
macOS
* Issue #916: Fix OOM via large array index in json_pointer_set
* Issue #923: Avoid stack recursion in json_object_put()
* Issue #927: CVE-2026-9146 - update json_object_iterator
documentation
* Issue #929: CVE-2026-11322 - fix information disclosure bug in
apps/json_parse (not installed by default)
* Issue #930: fix locale-dependent strtod in json_object_get_double
* Issue #931: deep copy values in json_patch copy op to avoid
aliasing and cycles
* Tue Feb 25 2025 Dirk Müller <dmueller@suse.com>
- update to 0.18:
* Clean up pre-3.9 CMake support in CMakeLists.txt
* Build pkg-config for msvc as well
* Critical fix for binary compatibility with 0.16: Move the
json_tokener_error_memory entry to the end of enum
json_tokener_error.
* Issue #829: attempt to detect clang-cl.exe and pass MSVC-
compatile command line arguments.
* PR #831 - rename WIN32 to _WIN32
* PR #839 - Fix gcc 5 "may be used uninitialized" failure in
json_pointer.c
* PR #849 - random_seed.c: add a Coverity Scan suppression
* Issue #854: Set error=json_tokener_error_memory in
json_tokener_parser_verbose() when allocating the tokener
fails.
* Issue #857: fix a few places where json_tokener should have
been returning json_tokener_error_memory but wasn't.
* Handle yet another out-of-memory condition in json_tokener,
duplocate can return NULL.
* Various fixes in the fuzzers
* A few minor doc fixes
* Wed Dec 06 2023 Guillaume GARDET <guillaume.gardet@opensuse.org>
- Drop unneeded -DCMAKE_C_FLAGS=-std=gnu99 to use distro CFLAGS
* Fri Nov 03 2023 Paolo Stivanin <info@paolostivanin.com>
- Update to 0.17:
+ New features:
* json_patch: add first implementation only with patch application
* Add --disable-static and --disable-dynamic options to the cmake-configure script.
* Add -DBUILD_APPS=NO option to disable app build
* Minimum cmake version is now 3.9
+ Significant changes and bug fixes:
* 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.
* Disable locale handling when targeting a uClibc system due to problems
with its duplocale() function.
* When parsing with JSON_TOKENER_STRICT set, integer overflow/underflow
now result in a json_tokener_error_parse_number. Without that flag
values are capped at INT64_MIN/UINT64_MAX.
* Fix memory leak with emtpy strings in json_object_set_string
* json_object_from_fd_ex: fail if file is too large (>=INT_MAX bytes)
* Add back json_number_chars, but only because it's part of the public API.
* Entirely drop mode bits from open(O_RDONLY) to avoid warnings on certain
platforms.
* Specify dependent libraries, including -lbsd, in a more consistent way so
linking against a static json-c works better
* Fix a variety of build problems and add & improve tests
* Update RFC reference to https://www.rfc-editor.org/rfc/rfc8259
- Remove deprecated suse_version checks
* Wed Apr 20 2022 Paolo Stivanin <info@paolostivanin.com>
- Update to 0.16:
+ Deprecated and removed features:
* JSON_C_OBJECT_KEY_IS_CONSTANT is deprecated in favor of
JSON_C_OBJECT_ADD_CONSTANT_KEY
* Direct access to lh_table and lh_entry structure members is deprecated.
Use access functions instead, lh_table_head(), lh_entry_next(), etc...
* Drop REFCOUNT_DEBUG code.
+ Changes and bug fixes
* Cap string length at INT_MAX to avoid various issues with very long strings.
* json_object_deep_copy: fix deep copy of strings containing '\0'
* Fix read past end of buffer in the "json_parse" command
* Avoid out of memory accesses in the locally provided vasprintf() function
(for those platforms that use it)
* Handle allocation failure in json_tokener_new_ex
* Fix use-after-free in json_tokener_new_ex() in the event of printbuf_new() returning NULL
* printbuf_memset(): set gaps to zero - areas within the print buffer which
have not been initialized by using printbuf_memset
* printbuf: return -1 on invalid arguments (len < 0 or total buffer > INT_MAX)
* sprintbuf(): propagate printbuf_memappend errors back to the caller
* Validate size arguments in arraylist functions.
* Use getrandom() if available; with GRND_NONBLOCK to allow use of json-c
very early during boot, such as part of cryptsetup.
* Use arc4random() if it's available.
* random_seed: on error, continue to next method instead of exiting the process
* Close file when unable to read from /dev/urandom in get_dev_random_seed()
* Speed up parsing by replacing ctype functions with simplified, faster
non-locale-sensitive ones in json_tokener and json_object_to_json_string.
* Neither vertical tab nor formfeed are considered whitespace per the JSON spec
* json_object: speed up creation of objects, calloc() -> malloc() + set fields
* Avoid needless extra strlen() call in json_c_shallow_copy_default() and
json_object_equal() when the object is known to be a json_type_string.
* Wed May 19 2021 Fridrich Strba <fstrba@suse.com>
- Add -std=gnu99 to fix build with some gcc versions
* Mon Aug 17 2020 Dirk Mueller <dmueller@suse.com>
- update to 0.15:
* Deprecate `array_list_new()` in favor of `array_list_new2()`
* Remove the THIS_FUNCTION_IS_DEPRECATED define.
* Remove config.h.win32
* Add a `JSON_TOKENER_ALLOW_TRAILING_CHARS` flag to allow multiple objects
to be parsed even when `JSON_TOKENER_STRICT` is set.
* Add `json_object_new_array_ext(int)` and `array_list_new_2(int)` to allow
arrays to be allocated with the exact size needed, when known.
* Add `json_object_array_shrink()` (and `array_list_shrink()`) and use it in
json_tokener to minimize the amount of memory used.
* Add a json_parse binary, for use in testing changes (not installed, but
available in the apps directory).
* Split the internal json_object structure into several sub-types, one for
each json_type (json_object_object, json_object_string, etc...).
This improves memory usage and speed, with the benchmark under
bench/ report 5.8% faster test time and 6%(max RSS)-12%(peak heap)
less memory usage.
Memory used just for json_object structures decreased 27%, so use cases
with fewer arrays and/or strings would benefit more.
* Minimize memory usage in array handling in json_tokener by shrinking
arrays to the exact number of elements parsed. On bench/ benchmark:
9% faster test time, 39%(max RSS)-50%(peak heap) less memory usage.
Add json_object_array_shrink() and array_list_shrink() functions.
* #616 - Parsing of surrogate pairs in unicode escapes now properly handles
incremental parsing.
* Fix incremental parsing of numbers, especially those with exponents, e.g.
so parsing "[0", "e+", "-]" now properly returns an error.
Strict mode now rejects missing exponents ("0e").
* Successfully return number objects at the top level even when they are
followed by a "-", "." or "e". This makes parsing things like "123-45"
behave consistently with things like "123xyz".
* #589 - Detect broken RDRAND during initialization; also, fix segfault
in the CPUID check.
* #592 - Fix integer overflows to prevert out of bounds write on large input.
* Protect against division by zero in linkhash, when creaed with zero size.
* #602 - Fix json_parse_uint64() internal error checking, leaving the retval
untouched in more failure cases.
* #614 - Prevent truncation when custom double formatters insert extra \0's
- remove 0001-Detect-broken-RDRAND-during-initialization.patch (upstream)
* Wed Jun 17 2020 Dan Čermák <dcermak@suse.com>
- Add upstream fix for boo#1173022
* Added patch 0001-Detect-broken-RDRAND-during-initialization.patch
* use URL from the releases page on github
* run spec-cleaner over the spec file
/usr/lib64/libjson-c.so.5 /usr/lib64/libjson-c.so.5.5.0 /usr/share/licenses/libjson-c5 /usr/share/licenses/libjson-c5/COPYING
Generated by rpm2html 1.8.1
Fabrice Bellet, Sun Aug 2 05:00:51 2026