Subject: Re: [bug#49408] [PATCH 2/2] gnu: biber: Update to 2.16

From: Thiago Jung Bauermann <[email-masked]>
Date: Sun, 11 Jul 2021 22:42:10 -0300

Hi Nathan,

Em sexta-feira, 9 de julho de 2021, às 10:45:16 -03,
Nathan Benedetto Proença escreveu:
> Add perl-unicode-collate as biber input
> 
> Upstream appears to have fixed this: recent issue was closed after

It took me a while to understand that “this” referred to being able to add
perl-unicode-collate as input. I suggest joining the two phrases above or
otherwise rewording them to make it clearer.

> telling user to use perl-unicode-collate 1.29, which is the one
> available.
> 
> https://github.com/plk/biber/issues/378

I also suggest mentioning that the resolution of the issue above is why you 
are able to drop ‘biber-sortinithash.patch’.

Similarly, I suggest mentioning that issue 239 is also fixed and thus you 
can drop ‘biber-fix-encoding-write.patch’.

On the other hand, I’m new to the Guix community myself and I noticed that 
most patches don’t have any description beyond the changelog entry, so an 
alternate course of action is to remove the description and just using the 
changelog entry. I have the impression that I’m more attached to commit 
descriptions than most here.  :-)

Either way, this patch is also missing a changelog entry.

> ---
>  gnu/packages/tex.scm | 15 +++++----------
>  1 file changed, 5 insertions(+), 10 deletions(-)
> 
> diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
> index b8059b7b73..d86435e1bd 100644
> --- a/gnu/packages/tex.scm
> +++ b/gnu/packages/tex.scm
> @@ -6927,20 +6927,16 @@ values (strings, macros, or numbers) pasted
> together.") ;; checking the Biber/BibLaTeX compatibility matrix in the
> BibLaTeX manual ;; at <https://ctan.org/pkg/biblatex>.
>      (name "biber")
> -    (version "2.12")
> +    (version "2.16")
>      (source (origin
>                (method git-fetch)
>                (uri (git-reference
>                      (url "https://github.com/plk/biber/")
>                      (commit (string-append "v" version))))
>                (file-name (git-file-name name version))
> -              ;; TODO: Patch awaiting inclusion upstream (see:
> -              ;; https://github.com/plk/biber/issues/239).
> -              (patches (search-patches "biber-fix-encoding-write.patch"
> -                                       "biber-sortinithash.patch"))

Since these patches aren’t used anymore, you should also `git rm` them and
remove them from `gnu/local.mk`.

>                (sha256
>                 (base32
> -               
"1g1hi6zvf2hmrjly1sidjaxy5440gfqm4p7p3n7kayshnjsmlskx"))))
> +               
"0586q8y1f2k23mvb02ccm3qsb35cwskafksixsjaih7a7xcf5gxx"))))
>      (build-system perl-build-system)
>      (arguments
>       `(#:phases
> @@ -6963,6 +6959,7 @@ values (strings, macros, or numbers) pasted 
together.")
>         ("perl-datetime-format-builder" ,perl-datetime-format-builder)
>         ("perl-datetime-calendar-julian" ,perl-datetime-calendar-julian)
>         ("perl-file-slurper" ,perl-file-slurper)
> +       ("perl-io-string" ,perl-io-string)
>         ("perl-ipc-cmd" ,perl-ipc-cmd)
>         ("perl-ipc-run3" ,perl-ipc-run3)
>         ("perl-list-allutils" ,perl-list-allutils)

I removed perl-io-string from the inputs and I was still able to build the 
package. If it is needed, can you add a comment somewhere (not sure if it’s 
better to mention it in the commit message or put it as a comment in the 
code) explaining why it’s necessary?

> @@ -6970,10 +6967,8 @@ values (strings, macros, or numbers) pasted
> together.") ("perl-mozilla-ca" ,perl-mozilla-ca)
>         ("perl-regexp-common" ,perl-regexp-common)
>         ("perl-log-log4perl" ,perl-log-log4perl)
> -       ;; We cannot use perl-unicode-collate here, because otherwise the
> -       ;; hardcoded hashes in the tests would differ.  See
> -       ;; https://mail-archive.com/[email-masked]/
msg1469249.html
> -       ;;("perl-unicode-collate" ,perl-unicode-collate)
> +       ("perl-parse-recdescent" ,perl-parse-recdescent)
> +       ("perl-unicode-collate" ,perl-unicode-collate)
>         ("perl-unicode-normalize" ,perl-unicode-normalize)
>         ("perl-unicode-linebreak" ,perl-unicode-linebreak)
>         ("perl-encode-eucjpascii" ,perl-encode-eucjpascii)

I applied the patch and verified that perl-text-bibtex builds. You 
mentioned in my GitLab repo that you use biber for your dissertation.
With these patches applied, is it working well for you?

-- 
Thanks,
Thiago