Subject: bug#51791: closed (done)

From: [email-masked] (GNU bug Tracking System)
Date: Wed, 15 Dec 2021 11:56:02 +0000

Your bug report

#51791: [PATCH 0/2]: Update guile-bash

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
51791: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=51791
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: done
From: david larsson <[email-masked]>
To: [email-masked]
Date: Wed, 15 Dec 2021 12:55:23 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

done

Subject: [PATCH 0/2]: Update guile-bash
From: david larsson <[email-masked]>
To: [email-masked]
Date: Fri, 12 Nov 2021 14:56:27 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi,

The following 2 patches update the guile-bash source url and home-page, 
and adds a patch for it that does 2 things:
   - fixes a bug, see below
   - enables reading newline- or null-separated arguments via stdin to 
guile-bash-defined bash functions.

The bug is that guile-bash can't read string args with whitespaces in 
it. Example:
------------------------
~$ enable -f ~/.guix-profile/lib/bash/libguile-bash.so scm
~$ scm /tmp/printargs
~$ printargs "apa bepa" cepa
In procedure printargs: scm-function called from Bash with args (apa 
bepa cepa) failed to match signature (file1 file2)
~$ cat /tmp/printargs
(use-modules
  (gnu bash))
(define-bash-function (printargs file1 file2)
     (display file1)
     (display "\n")
     (display file2)
     (display "\n"))
-------------------------

After this patch, you can read args "as normal", or via stdin that are 
either newline- or null-separated:
-------------------------
~$ printargs "apa bepa" cepa
apa bepa
cepa
~$ echo "$apa"
aba
aca
~$ printf '%s\0' "$apa" bepa | printargs -z
aba
aca
bepa
~$ echo "$apa" | printargs
aba
aca
-------------------------

Best regards,
David