Bug#1000674: dictionaries-common: Randomness in emacsen-ispell-dicts.el

Roland Clobus rclobus at rclobus.nl
Fri Nov 26 22:47:04 GMT 2021


Package: dictionaries-common
Version: 1.28.12
Severity: wishlist
User: reproducible-builds at lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-bugs at lists.alioth.debian.org

Hello maintainers of dictionaries-common,

While working on the “reproducible builds” effort [1], I have noticed
that the content of the file '/var/cache/dictionaries-common/emacsen-ispell-
dicts.el' is changing randomly.

In the section 'debian-hunspell-equivs-alist', the value for the 'ca' key can
toggle between 'ca' and 'catala8'. Because Perl does not have a reproducible
order in a foreach statement (unless the keyword sort is used), it will be
rather random which value for the key 'ca' will be set last. With the
environment variable PERL_HASH_SEED [2] I've been able to generate a
reproducible test case.

I'm unsure what would be the correct value. If you can tell me the desired
behaviour, I will provide a patch.

Steps to reproduce:
* Install a minimal Debian bookworm (a live image will work fine)
* Ensure that no aspell, hunspell or ispell is present
* Install 'hunspell-ca'
* Run either of the following commands:
** PERL_HASH_SEED=1 update-dictcommon-hunspell
** PERL_HASH_SEED=2 update-dictcommon-hunspell
* Look at the content of the file '/var/cache/dictionaries-common/emacsen-
ispell-dicts.el'

With kind regards,
Roland Clobus

 [1]: https://wiki.debian.org/ReproducibleBuilds
 [2]: https://reproducible-builds.org/docs/stable-outputs/


-- System Information:
Debian Release: bookworm/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'testing-debug'), (50, 'unstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.14.0-4-amd64 (SMP w/8 CPU threads)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages dictionaries-common depends on:
ii  debconf [debconf-2.0]  1.5.79
ii  emacsen-common         3.0.4
ii  libtext-iconv-perl     1.7-7+b1

dictionaries-common recommends no packages.

Versions of packages dictionaries-common suggests:
ii  aspell                0.60.8-4
ii  ispell                3.4.02-2
ii  wamerican [wordlist]  2020.12.07-1

-- debconf information excluded

-- debsums errors found:
debsums: changed file /usr/share/perl5/Debian/DictionariesCommon.pm (from dictionaries-common package)


More information about the Reproducible-bugs mailing list