pkgsrc/textproc/guile-json/distinfo
nikita c7aaac0514 textproc/guile-json: Update to 4.1.0
* Version 4.1.0 (Jun 6, 2020)

  - Speed up number parsing by a 2x factor by avoiding using textual ports.

  - Simplify unicode string builder.

  - Improve string builder performance by not going back and forth with lists,
    strings and characters.


* Version 4.0.1 (May 17, 2020)

  - (scm->json-string) #:validate keyword argument should default to true as
    stated in the documentation.


* Version 4.0.0 (May 16, 2020)

Breaking changes:

  - (scm->json) and (scm->json-string) #:espace keyword argument has been
    renamed to #:solidus.

  - JSON null now defaults to the null symbol. This can be changed in all
    public functions with the #:null keyword argument.

Bug fixes and improvements:

  - Fix parsing of invalid numbers (e.g. "-").

  - Go back to using (cond) instead of (match) since (match) reduces
    performance.

  - The json-parser record type has been removed as the record only contained
    the port. Removing the need to access records also had a slight
    performance increase.

  - Use a plain list to read strings which brings significant speed
    improvements.

  - Replace `display` with `put-string` on JSON builder.

  - Don't use map to parse expected string, simply use (string-ref).
    (thanks to Linus Björnstam)

  - Build array list with (cons) and (reverse). Big performance increase.
    (suggested by Linus Björnstam)

  - Check (eof-object?) last instead of first. This avoids unnecessary checks
    which is the regular use-case.
    (suggested by Linus Björnstam)

  - Use string ports to parse numbers.
    (suggested by Linus Björnstam)

  - Don't need to use character-sets to detect whitespaces. JSON only defines
    four possible types of whitespaces: space, linefeed, carriage return and
    horizontal tab.
    (suggested by Linus Björnstam)


* Version 3.5.0 (Apr 21, 2020)

  - Simplify parser by using `match`. Idea taken from Chickadee's JSON parser
    (https://dthompson.us/projects/chickadee.html). This also made it easier
    to clean up some functions.

  - Better handling of invalid numbers.

  - Improve handling of EOF. Most parsing functions were not taking care of
    it.

  - Fix error when parsing objects with commas and no following elements are
    found.


* Version 3.4.0 (Apr 11, 2020)

  - Fix parsing 0 with an exponent.
    (Fixes #55)

  - Fix cross compilation.
    (thanks to Jan Nieuwenhuizen)
2020-06-22 08:01:49 +00:00

6 lines
418 B
Text

$NetBSD: distinfo,v 1.3 2020/06/22 08:01:49 nikita Exp $
SHA1 (guile-json-4.1.0.tar.gz) = 102ec2518f596e43722e8e10b9cdec1eac541f00
RMD160 (guile-json-4.1.0.tar.gz) = 1476ceac09fb600cb9679a274c46a8fb0fe1fac7
SHA512 (guile-json-4.1.0.tar.gz) = ea8eef22d027968bd9faf3170eee7f781837e3a614a5523afe8f89c450408966de11e8082e7ebeacb6c3c50f52c1a033526b9c2491e1cb625ef985ad16eed9b2
Size (guile-json-4.1.0.tar.gz) = 150870 bytes