./textproc/json-c, JSON library in C

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 0.18, Package name: json-c-0.18, Maintainer: ryoon

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.


Master sites:

Filesize: 392.371 KB

Version history: (Expand)


CVS history: (Expand)


   2025-01-11 15:31:24 by Ryo ONODERA | Files touched by this commit (3)
Log message:
textproc/json-c: Update to 0.18

Changelog:
0.18 (up to commit 6bfab90, 2023-09-15)
========================================

Deprecated and removed features:
--------------------------------
* Clean up pre-3.9 CMake support in CMakeLists.txt

New features
------------
* Build pkg-config for msvc as well

Significant changes and bug fixes
---------------------------------
* 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
   2024-08-25 08:19:21 by Thomas Klausner | Files touched by this commit (575)
Log message:
*: replace CMAKE_ARGS with CMAKE_CONFIGURE_ARGS
   2024-06-10 08:16:04 by Thomas Klausner | Files touched by this commit (2)
Log message:
json-c: fix PLIST for doc option

From Robert Whitlock in PR 58332.
   2023-08-24 11:23:14 by Thomas Klausner | Files touched by this commit (4) | Package updated
Log message:
json-c: update to 0.17.

Upstream provides no change summaries.
   2023-01-24 19:36:36 by Thomas Klausner | Files touched by this commit (103)
Log message:
*: convert to cmake/build.mk
   2023-01-09 19:16:14 by Pierre Pronchery | Files touched by this commit (3)
Log message:
json-c: introduce an option to build the documentation

The option is left off by default; hence no functional change nor
PKGREVISION bump necessary.

Tested on NetBSD/amd64.
   2022-04-20 22:32:32 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
json-c: update to 0.16.

0.16 (up to commit 66dcdf5, 2022-04-13)
========================================

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.

New features
------------
* The 0.16 release introduces no new features

Build changes
-------------
* Add a DISABLE_EXTRA_LIBS option to skip using libbsd
* Add a DISABLE_JSON_POINTER option to skip compiling in json_pointer support.

Significant 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

Optimizations
--------------
* 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.

Other changes
-------------
* 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()
   2021-10-26 13:23:42 by Nia Alarie | Files touched by this commit (1161)
Log message:
textproc: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes

Unfetchable distfiles (fetched conditionally?):
./textproc/convertlit/distinfo clit18src.zip