Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/textproc/guile-json textproc/guile-json: Update to 4.1.0



details:   https://anonhg.NetBSD.org/pkgsrc/rev/b29c4cd1ef60
branches:  trunk
changeset: 434817:b29c4cd1ef60
user:      nikita <nikita%pkgsrc.org@localhost>
date:      Mon Jun 22 08:01:49 2020 +0000

description:
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)

diffstat:

 textproc/guile-json/Makefile |   4 ++--
 textproc/guile-json/distinfo |  10 +++++-----
 2 files changed, 7 insertions(+), 7 deletions(-)

diffs (27 lines):

diff -r 644b52fc2d65 -r b29c4cd1ef60 textproc/guile-json/Makefile
--- a/textproc/guile-json/Makefile      Mon Jun 22 07:57:47 2020 +0000
+++ b/textproc/guile-json/Makefile      Mon Jun 22 08:01:49 2020 +0000
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.3 2020/04/28 11:46:30 nikita Exp $
+# $NetBSD: Makefile,v 1.4 2020/06/22 08:01:49 nikita Exp $
 
-DISTNAME=      guile-json-3.3.0
+DISTNAME=      guile-json-4.1.0
 CATEGORIES=    textproc
 MASTER_SITES=  http://download.savannah.gnu.org/releases/guile-json/
 
diff -r 644b52fc2d65 -r b29c4cd1ef60 textproc/guile-json/distinfo
--- a/textproc/guile-json/distinfo      Mon Jun 22 07:57:47 2020 +0000
+++ b/textproc/guile-json/distinfo      Mon Jun 22 08:01:49 2020 +0000
@@ -1,6 +1,6 @@
-$NetBSD: distinfo,v 1.2 2019/12/10 18:16:56 ng0 Exp $
+$NetBSD: distinfo,v 1.3 2020/06/22 08:01:49 nikita Exp $
 
-SHA1 (guile-json-3.3.0.tar.gz) = 201fe91ccf98fda03fca052415f8e654bd1ab029
-RMD160 (guile-json-3.3.0.tar.gz) = 7918490e21786723f64a6825837617422b70c26c
-SHA512 (guile-json-3.3.0.tar.gz) = e4204e0e9649a308b6146c17ef2ed3fc1a804404d4bb6ce09b6fdb0d09823f185c333e87f5cc940e5affc08f5562550785511ca1f220efbc7ecfe15cedc14881
-Size (guile-json-3.3.0.tar.gz) = 122495 bytes
+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



Home | Main Index | Thread Index | Old Index