unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
* guile-json 4.2.0 released
@ 2020-06-30  7:26 Aleix Conchillo Flaqué
  2020-06-30 20:58 ` Zelphir Kaltstahl
  2020-07-02 13:07 ` Ludovic Courtès
  0 siblings, 2 replies; 9+ messages in thread
From: Aleix Conchillo Flaqué @ 2020-06-30  7:26 UTC (permalink / raw)
  To: guile-user

Hi!

I'm happy to announce guile-json 4.2.0. This new version introduces a new
feature to allow converting a JSON object into a record type and vice
versa. This feature works well, for example, when creating REST APIs. The
code was originally obtained from GNU Guix (thank you Ludo!) and I added
the possibility to convert a record type into a JSON object added as well.

 https://github.com/aconchillo/guile-json/

* About

guile-json is a JSON module for Guile. It supports parsing and
building JSON documents
according to the http://json.org specification.

- Complies with http://json.org specification.
- Builds JSON documents programmatically using scheme data types.
- Allows JSON pretty printing.

* Download

Compressed sources and a GPG detached signature[*]:

http://download.savannah.nongnu.org/releases/guile-json/guile-json-4.2.0.tar.gz
http://download.savannah.nongnu.org/releases/guile-json/guile-json-4.2.0.tar.gz.sig

[*] To verify download both files and then run:

   gpg --keyserver keys.openpgp.org \
        --recv-keys 7CEC5511C8D057A9EF17470C54D4CC6FFC7468F4

   gpg --verify guile-json-4.2.0.tar.gz.sig

* Changes since 4.1.0

https://github.com/aconchillo/guile-json/blob/master/NEWS

Bugs and comments can be reported at https://github.com/aconchillo/guile-
json/issues

Happy hacking!

Aleix


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: guile-json 4.2.0 released
  2020-06-30  7:26 guile-json 4.2.0 released Aleix Conchillo Flaqué
@ 2020-06-30 20:58 ` Zelphir Kaltstahl
  2020-07-02 13:07 ` Ludovic Courtès
  1 sibling, 0 replies; 9+ messages in thread
From: Zelphir Kaltstahl @ 2020-06-30 20:58 UTC (permalink / raw)
  To: Aleix Conchillo Flaqué; +Cc: guile-user

Hi Aleix!

On 6/30/20 9:26 AM, Aleix Conchillo Flaqué wrote:
> Hi!
>
> I'm happy to announce guile-json 4.2.0. This new version introduces a new
> feature to allow converting a JSON object into a record type and vice
> versa. This feature works well, for example, when creating REST APIs. The
> code was originally obtained from GNU Guix (thank you Ludo!) and I added
> the possibility to convert a record type into a JSON object added as well.
>
>  https://github.com/aconchillo/guile-json/

That's quite a nice idea, no matter, where it is from and it is good to
know, that guile-json can do this.

> * About
>
> guile-json is a JSON module for Guile. It supports parsing and
> building JSON documents
> according to the http://json.org specification.
>
> - Complies with http://json.org specification.
> - Builds JSON documents programmatically using scheme data types.
> - Allows JSON pretty printing.
>
> * Download
>
> Compressed sources and a GPG detached signature[*]:
>
> http://download.savannah.nongnu.org/releases/guile-json/guile-json-4.2.0.tar.gz
> http://download.savannah.nongnu.org/releases/guile-json/guile-json-4.2.0.tar.gz.sig
>
> [*] To verify download both files and then run:
>
>    gpg --keyserver keys.openpgp.org \
>         --recv-keys 7CEC5511C8D057A9EF17470C54D4CC6FFC7468F4
>
>    gpg --verify guile-json-4.2.0.tar.gz.sig
>
> * Changes since 4.1.0
>
> https://github.com/aconchillo/guile-json/blob/master/NEWS
>
> Bugs and comments can be reported at https://github.com/aconchillo/guile-
> json/issues
>
> Happy hacking!
>
> Aleix

Thanks for advancing guile-json even further!

Best regards,

Zelphir





^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: guile-json 4.2.0 released
  2020-06-30  7:26 guile-json 4.2.0 released Aleix Conchillo Flaqué
  2020-06-30 20:58 ` Zelphir Kaltstahl
@ 2020-07-02 13:07 ` Ludovic Courtès
  2020-07-02 14:55   ` Bill Markmann
  2020-07-04  6:13   ` Aleix Conchillo Flaqué
  1 sibling, 2 replies; 9+ messages in thread
From: Ludovic Courtès @ 2020-07-02 13:07 UTC (permalink / raw)
  To: guile-user

Hi,

Aleix Conchillo Flaqué <aconchillo@gmail.com> skribis:

> * Changes since 4.1.0
>
> https://github.com/aconchillo/guile-json/blob/master/NEWS

--8<---------------cut here---------------start------------->8---
 - Introduce (define-json-mapping) which allows converting a JSON object into
    a record type and vice versa. The initial code for this feature was copied
    from the GNU Guix project.
--8<---------------cut here---------------end--------------->8---

Nice!  :-)

There’s a bidirectional version here, but it’s slightly incompatible:

  https://gitlab.inria.fr/guix-hpc/guix-kernel/-/blob/master/jupyter/json.scm

It relies on (guix records), which is not great for Guile-JSON.

Ludo’.




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: guile-json 4.2.0 released
  2020-07-02 13:07 ` Ludovic Courtès
@ 2020-07-02 14:55   ` Bill Markmann
  2020-07-02 15:55     ` Nala Ginrut
  2020-07-02 16:10     ` Linus Björnstam
  2020-07-04  6:13   ` Aleix Conchillo Flaqué
  1 sibling, 2 replies; 9+ messages in thread
From: Bill Markmann @ 2020-07-02 14:55 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guile-user

It looks like the surface API is different, but the internal json <-->
scheme records functionality overlaps... Any thoughts on whether
guile-json  would serve as the underpinnings of an implementation of
srfi-180?

https://srfi.schemers.org/srfi-180/srfi-180.html

https://github.com/scheme-requests-for-implementation/srfi-180

- Bill

On Thu, Jul 2, 2020 at 9:08 AM Ludovic Courtès <ludo@gnu.org> wrote:

> Hi,
>
> Aleix Conchillo Flaqué <aconchillo@gmail.com> skribis:
>
> > * Changes since 4.1.0
> >
> > https://github.com/aconchillo/guile-json/blob/master/NEWS
>
> --8<---------------cut here---------------start------------->8---
>  - Introduce (define-json-mapping) which allows converting a JSON object
> into
>     a record type and vice versa. The initial code for this feature was
> copied
>     from the GNU Guix project.
> --8<---------------cut here---------------end--------------->8---
>
> Nice!  :-)
>
> There’s a bidirectional version here, but it’s slightly incompatible:
>
>
> https://gitlab.inria.fr/guix-hpc/guix-kernel/-/blob/master/jupyter/json.scm
>
> It relies on (guix records), which is not great for Guile-JSON.
>
> Ludo’.
>
>
>


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: guile-json 4.2.0 released
  2020-07-02 14:55   ` Bill Markmann
@ 2020-07-02 15:55     ` Nala Ginrut
  2020-07-02 16:10     ` Linus Björnstam
  1 sibling, 0 replies; 9+ messages in thread
From: Nala Ginrut @ 2020-07-02 15:55 UTC (permalink / raw)
  To: Bill Markmann; +Cc: Ludovic Courtès, Guile User

srfi-180 +1

On Thu, Jul 2, 2020, 22:56 Bill Markmann <bmarkmann@gmail.com> wrote:

> It looks like the surface API is different, but the internal json <-->
> scheme records functionality overlaps... Any thoughts on whether
> guile-json  would serve as the underpinnings of an implementation of
> srfi-180?
>
> https://srfi.schemers.org/srfi-180/srfi-180.html
>
> https://github.com/scheme-requests-for-implementation/srfi-180
>
> - Bill
>
> On Thu, Jul 2, 2020 at 9:08 AM Ludovic Courtès <ludo@gnu.org> wrote:
>
> > Hi,
> >
> > Aleix Conchillo Flaqué <aconchillo@gmail.com> skribis:
> >
> > > * Changes since 4.1.0
> > >
> > > https://github.com/aconchillo/guile-json/blob/master/NEWS
> >
> > --8<---------------cut here---------------start------------->8---
> >  - Introduce (define-json-mapping) which allows converting a JSON object
> > into
> >     a record type and vice versa. The initial code for this feature was
> > copied
> >     from the GNU Guix project.
> > --8<---------------cut here---------------end--------------->8---
> >
> > Nice!  :-)
> >
> > There’s a bidirectional version here, but it’s slightly incompatible:
> >
> >
> >
> https://gitlab.inria.fr/guix-hpc/guix-kernel/-/blob/master/jupyter/json.scm
> >
> > It relies on (guix records), which is not great for Guile-JSON.
> >
> > Ludo’.
> >
> >
> >
>


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: guile-json 4.2.0 released
  2020-07-02 14:55   ` Bill Markmann
  2020-07-02 15:55     ` Nala Ginrut
@ 2020-07-02 16:10     ` Linus Björnstam
  2020-07-03  0:10       ` Aleix Conchillo Flaqué
  1 sibling, 1 reply; 9+ messages in thread
From: Linus Björnstam @ 2020-07-02 16:10 UTC (permalink / raw)
  To: Bill Markmann, Ludovic Courtès; +Cc: guile-user

With the current api, no. The code of guile-json could be used to implement srfi-180, but the current guile-json API could not efficiently implement srfi-180.

I am not Aleix, but I helped making it faster for the 4.0 release. 

-- 
  Linus Björnstam

On Thu, 2 Jul 2020, at 16:55, Bill Markmann wrote:
> It looks like the surface API is different, but the internal json <-->
> scheme records functionality overlaps... Any thoughts on whether
> guile-json  would serve as the underpinnings of an implementation of
> srfi-180?
> 
> https://srfi.schemers.org/srfi-180/srfi-180.html
> 
> https://github.com/scheme-requests-for-implementation/srfi-180
> 
> - Bill
> 
> On Thu, Jul 2, 2020 at 9:08 AM Ludovic Courtès <ludo@gnu.org> wrote:
> 
> > Hi,
> >
> > Aleix Conchillo Flaqué <aconchillo@gmail.com> skribis:
> >
> > > * Changes since 4.1.0
> > >
> > > https://github.com/aconchillo/guile-json/blob/master/NEWS
> >
> > --8<---------------cut here---------------start------------->8---
> >  - Introduce (define-json-mapping) which allows converting a JSON object
> > into
> >     a record type and vice versa. The initial code for this feature was
> > copied
> >     from the GNU Guix project.
> > --8<---------------cut here---------------end--------------->8---
> >
> > Nice!  :-)
> >
> > There’s a bidirectional version here, but it’s slightly incompatible:
> >
> >
> > https://gitlab.inria.fr/guix-hpc/guix-kernel/-/blob/master/jupyter/json.scm
> >
> > It relies on (guix records), which is not great for Guile-JSON.
> >
> > Ludo’.
> >
> >
> >
>



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: guile-json 4.2.0 released
  2020-07-02 16:10     ` Linus Björnstam
@ 2020-07-03  0:10       ` Aleix Conchillo Flaqué
  0 siblings, 0 replies; 9+ messages in thread
From: Aleix Conchillo Flaqué @ 2020-07-03  0:10 UTC (permalink / raw)
  To: Linus Björnstam; +Cc: Ludovic Courtès, guile-user

Hi!

I briefly looked at srfi-180, it seems I could take guile-json internals to
implement that srfi-180 API and then implement current guile-json API on
top of that. It would be nice to still support both.

Maybe I will give it a try at some point in the near future.

Aleix

On Thu, Jul 2, 2020 at 9:24 AM Linus Björnstam <linus.internet@fastmail.se>
wrote:

> With the current api, no. The code of guile-json could be used to
> implement srfi-180, but the current guile-json API could not efficiently
> implement srfi-180.
>
> I am not Aleix, but I helped making it faster for the 4.0 release.
>
> --
>   Linus Björnstam
>
> On Thu, 2 Jul 2020, at 16:55, Bill Markmann wrote:
> > It looks like the surface API is different, but the internal json <-->
> > scheme records functionality overlaps... Any thoughts on whether
> > guile-json  would serve as the underpinnings of an implementation of
> > srfi-180?
> >
> > https://srfi.schemers.org/srfi-180/srfi-180.html
> >
> > https://github.com/scheme-requests-for-implementation/srfi-180
> >
> > - Bill
> >
> > On Thu, Jul 2, 2020 at 9:08 AM Ludovic Courtès <ludo@gnu.org> wrote:
> >
> > > Hi,
> > >
> > > Aleix Conchillo Flaqué <aconchillo@gmail.com> skribis:
> > >
> > > > * Changes since 4.1.0
> > > >
> > > > https://github.com/aconchillo/guile-json/blob/master/NEWS
> > >
> > > --8<---------------cut here---------------start------------->8---
> > >  - Introduce (define-json-mapping) which allows converting a JSON
> object
> > > into
> > >     a record type and vice versa. The initial code for this feature was
> > > copied
> > >     from the GNU Guix project.
> > > --8<---------------cut here---------------end--------------->8---
> > >
> > > Nice!  :-)
> > >
> > > There’s a bidirectional version here, but it’s slightly incompatible:
> > >
> > >
> > >
> https://gitlab.inria.fr/guix-hpc/guix-kernel/-/blob/master/jupyter/json.scm
> > >
> > > It relies on (guix records), which is not great for Guile-JSON.
> > >
> > > Ludo’.
> > >
> > >
> > >
> >
>
>


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: guile-json 4.2.0 released
  2020-07-02 13:07 ` Ludovic Courtès
  2020-07-02 14:55   ` Bill Markmann
@ 2020-07-04  6:13   ` Aleix Conchillo Flaqué
  2020-07-04 19:50     ` Ludovic Courtès
  1 sibling, 1 reply; 9+ messages in thread
From: Aleix Conchillo Flaqué @ 2020-07-04  6:13 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guile-user

On Thu, Jul 2, 2020 at 6:08 AM Ludovic Courtès <ludo@gnu.org> wrote:

> Hi,
>
> Aleix Conchillo Flaqué <aconchillo@gmail.com> skribis:
>
> > * Changes since 4.1.0
> >
> > https://github.com/aconchillo/guile-json/blob/master/NEWS
>
> --8<---------------cut here---------------start------------->8---
>  - Introduce (define-json-mapping) which allows converting a JSON object
> into
>     a record type and vice versa. The initial code for this feature was
> copied
>     from the GNU Guix project.
> --8<---------------cut here---------------end--------------->8---
>
> Nice!  :-)
>
> There’s a bidirectional version here, but it’s slightly incompatible:
>
>
> https://gitlab.inria.fr/guix-hpc/guix-kernel/-/blob/master/jupyter/json.scm
>
> It relies on (guix records), which is not great for Guile-JSON.
>

Nice! And thank you! I actually released guile-json 4.3.0 making [<=>
RECORD->JSON] optional as in the code you linked. If guix moves to
guile-json 4.3.0 I guess you could now remove guix/json.scm, unless you are
planning to use guix records there.

Best,

Aleix


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: guile-json 4.2.0 released
  2020-07-04  6:13   ` Aleix Conchillo Flaqué
@ 2020-07-04 19:50     ` Ludovic Courtès
  0 siblings, 0 replies; 9+ messages in thread
From: Ludovic Courtès @ 2020-07-04 19:50 UTC (permalink / raw)
  To: Aleix Conchillo Flaqué; +Cc: guile-user

Hi,

Aleix Conchillo Flaqué <aconchillo@gmail.com> skribis:

> On Thu, Jul 2, 2020 at 6:08 AM Ludovic Courtès <ludo@gnu.org> wrote:

[...]

>> There’s a bidirectional version here, but it’s slightly incompatible:
>>
>>
>> https://gitlab.inria.fr/guix-hpc/guix-kernel/-/blob/master/jupyter/json.scm
>>
>> It relies on (guix records), which is not great for Guile-JSON.
>>
>
> Nice! And thank you! I actually released guile-json 4.3.0 making [<=>
> RECORD->JSON] optional as in the code you linked. If guix moves to
> guile-json 4.3.0 I guess you could now remove guix/json.scm, unless you are
> planning to use guix records there.

Awesome, thank you!  We’ll probably move to Guile-JSON, at least in Guix
proper.

Ludo’.



^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2020-07-04 19:50 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-30  7:26 guile-json 4.2.0 released Aleix Conchillo Flaqué
2020-06-30 20:58 ` Zelphir Kaltstahl
2020-07-02 13:07 ` Ludovic Courtès
2020-07-02 14:55   ` Bill Markmann
2020-07-02 15:55     ` Nala Ginrut
2020-07-02 16:10     ` Linus Björnstam
2020-07-03  0:10       ` Aleix Conchillo Flaqué
2020-07-04  6:13   ` Aleix Conchillo Flaqué
2020-07-04 19:50     ` Ludovic Courtès

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).