Commit graph

10 commits

Author SHA1 Message Date
adam
a4085cedb4 jansson: updated to 2.12
Version 2.12

* Bug fixes:
  - Fix error message in `json_pack()` for NULL object.
  - Avoid invalid memory read in `json_pack()`.
  - Call va_end after va_copy in `json_vsprintf()`.
  - Improve handling of formats with '?' and '*' in `json_pack()`.
  - Remove inappropriate `jsonp_free()` which caused segmentation fault in
    error handling.

* Build:
  - Add function attributes for GCC and CLANG to provide warnings on improper
    use of jansson routines.
  - Many CMake fixes.
  - Enable -Bsymbolic-functions linker flag whenever possible.
  - Resolve various compiler warnings.
  - Fix code coverage ignored paths.

* Other:
  - Test coverage improvements.
  - Add VS 2017 to appveyor, update Visual Studio documentation.
  - Update copyright for 2018.
  - Update install instructions in README
2018-12-09 20:33:12 +00:00
adam
20c121f0ae jansson: updated to 2.11
Version 2.11

* New features:
  - Add json_pack() format specifiers s*, o* and O* for values that
    can be omitted if null
  - Add json_error_code() to retrieve numeric error codes
  - Enable thread safety for json_dump() on all systems.  Enable thread
    safe json_decref() and json_incref() for modern compilers
  - Add json_sprintf() and json_vsprintf()
* Bug Fixes:
  - Fix incorrect report of success from json_dump_file() when an error
    is returned by fclose()
  - Make json_equal() const-correct
  - Fix incomplete stealing of references by json_pack()
* Build:
  - Work around gcc's -Wimplicit-fallthrough.
  - Fix CMake detection of sys/types.h header
  - Fix jansson.pc generated by CMake to be more consistent with the one
    generated using GNU Autotools
* Other:
  - Miscellaneous documentation fixes
  - Remove unnecessary reference actions from parsers


Version 2.10

* New features:
  - Add JSON_EMBED encoding flag allowing arrays and objects to be encoded
    into existing streams
  - Add json_dumpb() function for dumping to a pre-allocated buffer
  - Add json_dumpfd() and json_loadfd() functions for dumping to streaming
    file descriptors
  - Add support for parsing buffers larger than 2GB
* Build:
  - Fix CMake build when LONG_LONG_INT is defined as ""
* Other:
  - Internal code cleanup

Version 2.9

* New features:
  - Add json_auto_t to automatically decref a value that goes out
    of scope. Available only on GCC and Clang.
* Build:
  - Fix CMake build (at least on Linux) by removing conflicting
    jansson_config.h from the distribution
  - Change CMake install target generation to be optional
* Documentation:
  - Small documentation fixes.


Version 2.8

* New features:
  - Always preserve insertion order of object items.
    json_object_iter() and friends, json_object_foreach() and
    json_dumps() and friends now always work in the insertion order of
    object items
  - Add json_object_foreach_safe() macro that allows
    json_object_del() calls during iteration
  - Add json_get_alloc_funcs() to allow reading the allocation
    functions set by json_set_alloc_funcs()
  - Add json_pack() format specifiers s?, o? and O? for values that
    can be null
* Bug fixes:
  - Fix a crash when parsing inputs consisting of very deeply nested
    arrays or objects
  - Never convert numbers to integers in the parser when
    JSON_DECODE_INT_AS_REAL is set. This fixes error messages for
    overflowing numbers when JSON_DECODE_INT_AS_REAL is set
  - Fix a use-after-free in json_pack() error handling.
  - Fix subnormal number parsing on mingw32.
  - Handle out-of-memory situations gracefully in the hashtable
    implementation
* Build:
  - Fix build with CMake on all versions of Visual Studio up to 2015
  - Fix pkgconfig libdir when using CMake
  - Fix CMake config for static CRT builds on Windows
  - Fix warnings on LLVM 6.0 targeting iOS arm64
  - Add coverlls.io support via Travis for a nice test coverage badge
  - Don't expect jansson_config.h to be in the compiler's include
    path
  - Add a build-time option to set initial hashtable size
  - Use snprintf and strncpy in place of sprintf and strcpy to silence
    linker warnings on OpenBSD
* Documentation:
  - Fix various typos in documentation, and a broken link
  - Add an example program in examples/
  - Fix building of documentation man pages
  - Document the fact that copying objects doesn't preserve the
    insertion order of keys
* Tests:
  - Don't use the nonstandard __FUNCTION__ macro in tests.
  - Use expr instead of $((...)) in shell scripts for Solaris 10
    compatibility.
  - Disable Visual Studio warning C4756 when triggered deliberately in
    tests
  - Other minor fixes
* Other changes:
  - List all unrecognized object keys when strict unpacking fails
  - Alter the order of the members of the hashtable_pair struct for
    easier debugging.
  - Minor performance improvement to json_dump() and friends
  - Minor style fixes
2018-10-04 12:53:07 +00:00
rillig
17e39f419d Fix indentation in buildlink3.mk files.
The actual fix as been done by "pkglint -F */*/buildlink3.mk", and was
reviewed manually.

There are some .include lines that still are indented with zero spaces
although the surrounding .if is indented. This is existing practice.
2018-01-07 13:03:53 +00:00
agc
2eddae48e5 Add SHA512 digests for distfiles for textproc category
Problems found locating distfiles:
	Package cabocha: missing distfile cabocha-0.68.tar.bz2
	Package convertlit: missing distfile clit18src.zip
	Package php-enchant: missing distfile php-enchant/enchant-1.1.0.tgz

Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden).  All existing
SHA1 digests retained for now as an audit trail.
2015-11-04 01:59:17 +00:00
wiz
ecfb3023af Update to 2.7:
Version 2.7
===========

Released 2014-10-02

* New features:

  - `json_pack()` and friends: Add format specifiers ``s%`` and ``+%``
    for a size_t string length (#141).

  - `json_unpack()` and friends: Add format specifier ``s%`` for
    unpacking the string length along with the string itself (#141).

  - Add length-aware string constructors `json_stringn()` and
    `json_stringn_nocheck()`, length-aware string mutators
    `json_string_setn()` and `json_string_setn_nocheck()`, and a
    function for getting string's length `json_string_length()` (#141,
    #143).

  - Support ``\u0000`` escapes in the decoder. The support can be
    enabled by using the ``JSON_ALLOW_NUL`` decoding flag (#141).

  - Add `json_boolean_value()` as an alias for `json_is_true()`
    (#146).

  - Add JSON_REAL_PRECISION encoding flag/macro for controlling real
    number precision (#178).

  - Define the maximum indentation as JSON_MAX_INDENT (#191).

* Bug fixes:

  - Some malformed ``\uNNNN`` escapes could crash the decoder with an
    assertion failure.

  - Avoid integer overflows with very long strings in UTF-8 decoder and
    hashtable.

  - Check for *NULL* key in `json_object_get()` and
    `json_object_del()` (#151).

  - Enhance hashtable seeding on Windows (#162).

  - `json_unpack()`: Allow mixing JSON_STRICT with optional keys
    (#162, #163).

  - Fix int/int32 mismatch (#142).

  - Parse subnormal numbers correctly (#202).

* Build:

  - Remove VS2010 build files. CMake should be used on Windows instead
    (#165).

  - Fix CMake build flags for MinGW (#193).

  - Add CMake config files for find_package. Rename config.h to
    jansson_private_config.h (#157, #159).

  - Make Valgrind checks work with CMake (#160).

  - Fix feature checks to use correct __ATOMIC flags.

  - Fix CMake checks for uint16_t and uint8_t support (#177).

  - Make Jansson build on SmartOS/Solaris (#171).

  - Work around a GCC bug on Solaris (#175).

  - Fix autoreconf on Debian (#182).

  - Don't use GNU make specific export for global AM_CFLAGS (#203,
    #204).

  - Fix building on Android using the supplied Android.mk (#166,
    #174).

  - Android.mk: Add -DHAVE_STDINT_H to LOCAL_CFLAGS (#200).

* Documentation:

  - Document JANSSON_BUILD_SHARED_LIBS CMake option (#187).

* Tests:

  - Close file handles correctly (#198).

* Other changes:

  - ``\uNNNN`` escapes are now encoded in upper case for better
    readability.

  - Enable usage of AddressSanitizer (#180).


Version 2.6
===========

Released 2014-02-11

* Security:

  - CVE-2013-6401: The hash function used by the hashtable
    implementation has been changed, and is automatically seeded with
    random data when the first JSON object is created. This prevents
    an attacker from causing large JSON objects with specially crafted
    keys perform poorly.

* New features:

  - `json_object_seed()`: Set the seed value of the hash function.

* Bug fixes:

  - Include CMake specific files in the release tarball.

* Documentation:

  - Fix tutorial source to send a User-Agent header, which is now
    required by the GitHub API.

  - Set all memory to zero in secure_free() example.


Version 2.5
===========

Released 2013-09-19

* New features:

  - `json_pack()` and friends: Add format specifiers ``s#``, ``+`` and
    ``+#``.

  - Add ``JSON_DECODE_INT_AS_REAL`` decoding flag to treat all numbers
    as real in the decoder (#123).

  - Add `json_array_foreach()`, paralleling `json_object_foreach()`
    (#118).

* Bug fixes:

  - `json_dumps()` and friends: Don't crash if json is *NULL* and
    ``JSON_ENCODE_ANY`` is set.

  - Fix a theoretical integer overflow in `jsonp_strdup()`.

  - Fix `l_isxdigit()` macro (#97).

  - Fix an off-by-one error in `json_array_remove()`.

* Build:

  - Support CMake in addition to GNU Autotools (#106, #107, #112,
    #115, #120, #127).

  - Support building for Android (#109).

  - Don't use ``-Werror`` by default.

  - Support building and testing with VPATH (#93).

  - Fix compilation when ``NDEBUG`` is defined (#128)

* Tests:

  - Fix a refleak in ``test/bin/json_process.c``.

* Documentation:

  - Clarify the return value of `json_load_callback_t`.

  - Document how to circumvent problems with separate heaps on Windows.

  - Fix memory leaks and warnings in ``github_commits.c``.

  - Use `json_decref()` properly in tutorial.

* Other:

  - Make it possible to forward declare ``struct json_t``.
2015-01-16 11:50:28 +00:00
asau
5087158ab6 Failing tests is no reason to turn them off. 2014-07-23 09:42:55 +00:00
wiedi
1172896428 use c99 to fix build on SunOS 2014-02-15 22:08:47 +00:00
tron
c64e9eb269 Recursive PKGREVISION bump for OpenSSL API version bump. 2014-02-12 23:18:26 +00:00
mef
06d66831e1 Add buildlink3.mk, net/lldpd will want this. 2013-11-27 01:54:19 +00:00
wiz
57bf50a1d9 Import jansson-2.4 as textproc/jansson.
Jansson is a C library for encoding, decoding and manipulating JSON
data. It features:

* Simple and intuitive API and data model
* Comprehensive documentation
* No dependencies on other libraries
* Full Unicode support (UTF-8)
* Extensive test suite
2013-07-13 10:38:32 +00:00