GNU bug report logs - #40388
Calibre test suite fails

Previous Next

Package: guix;

Reported by: Josh Holland <josh <at> inv.alid.pw>

Date: Thu, 2 Apr 2020 12:11:02 UTC

Severity: normal

Done: Marius Bakke <mbakke <at> fastmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 40388 in the body.
You can then email your comments to 40388 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#40388; Package guix. (Thu, 02 Apr 2020 12:11:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Josh Holland <josh <at> inv.alid.pw>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Thu, 02 Apr 2020 12:11:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Josh Holland <josh <at> inv.alid.pw>
To: "bug-guix\\\@gnu.org" <bug-guix <at> gnu.org>
Subject: Calibre test suite fails
Date: Thu, 02 Apr 2020 13:09:50 +0100
Hi,

Both on my local machine and on the CI[0], the Calibre test suite has
been failing with the following error:

======================================================================
ERROR: test_msgpack (calibre.test_build.BuildTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/tmp/guix-build-calibre-3.42.0.drv-0/calibre-3.42.0/src/calibre/test_build.py", line 124, in test_msgpack
    self.assertEqual(obj, msgpack_loads(s))
  File "/tmp/guix-build-calibre-3.42.0.drv-0/calibre-3.42.0/src/calibre/utils/serialize.py", line 113, in msgpack_loads
    return msgpack.unpackb(dump, ext_hook=msgpack_decoder, raw=False, use_list=use_list)
  File "/gnu/store/z7dz4iiaivmadhk0x50qs5zv3rwykrmd-python2-msgpack-1.0.0/lib/python2.7/site-packages/msgpack/fallback.py", line 129, in unpackb
    ret = unpacker._unpack()
  File "/gnu/store/z7dz4iiaivmadhk0x50qs5zv3rwykrmd-python2-msgpack-1.0.0/lib/python2.7/site-packages/msgpack/fallback.py", line 666, in _unpack
    "%s is not allowed for map key" % str(type(key))
ValueError: <type 'int'> is not allowed for map key

----------------------------------------------------------------------

This is happening on both staging and master.  There have been no
changes to the calibre package itself since January.  I have run a git
bisect and the offending change appears to be in commit
66ab2f5e3a0df665f6e39203aedd2bf4812e6a71, when python-msgpack was
updated to version 1.0.0.

[0]: e.g. http://ci.guix.gnu.org/build/2485977/details

--
Josh Holland




Information forwarded to bug-guix <at> gnu.org:
bug#40388; Package guix. (Fri, 03 Apr 2020 13:06:01 GMT) Full text and rfc822 format available.

Message #8 received at 40388 <at> debbugs.gnu.org (full text, mbox):

From: Josh Holland <josh <at> inv.alid.pw>
To: 40388 <at> debbugs.gnu.org
Subject: Reported upstream to Calibre
Date: Fri, 03 Apr 2020 14:05:29 +0100
I've reported this bug as
https://bugs.launchpad.net/calibre/+bug/1870541.  I also found the
backwards-incompatible change in msgpack which is the culprit of this:

* Default value of strict_map_key is changed to True to avoid
  hashdos. You need to pass strict_map_key=False if you have data which
  contain map keys which type is not bytes or str.

(from <https://pypi.org/project/msgpack/>)

I can prepare a patch (both within the Guix build system and to send
upstream) which fixes this, though I'm not sure what hashdos are or
whether they are actually important to avoid in this case.

--
Josh Holland




Reply sent to Marius Bakke <mbakke <at> fastmail.com>:
You have taken responsibility. (Fri, 03 Apr 2020 13:33:03 GMT) Full text and rfc822 format available.

Notification sent to Josh Holland <josh <at> inv.alid.pw>:
bug acknowledged by developer. (Fri, 03 Apr 2020 13:33:03 GMT) Full text and rfc822 format available.

Message #13 received at 40388-done <at> debbugs.gnu.org (full text, mbox):

From: Marius Bakke <mbakke <at> fastmail.com>
To: Josh Holland <josh <at> inv.alid.pw>, 40388-done <at> debbugs.gnu.org
Subject: Re: bug#40388: Reported upstream to Calibre
Date: Fri, 03 Apr 2020 15:31:49 +0200
[Message part 1 (text/plain, inline)]
Josh Holland <josh <at> inv.alid.pw> writes:

> I've reported this bug as
> https://bugs.launchpad.net/calibre/+bug/1870541.  I also found the
> backwards-incompatible change in msgpack which is the culprit of this:
>
> * Default value of strict_map_key is changed to True to avoid
>   hashdos. You need to pass strict_map_key=False if you have data which
>   contain map keys which type is not bytes or str.
>
> (from <https://pypi.org/project/msgpack/>)

Thanks for reporting it!  I was just looking into the issue and found
that it was fixed upstream 3 days ago:

https://github.com/kovidgoyal/calibre/commit/0ff41ac64994ec11b7859fc004c94d08769e3af3

I adopted the patch to Guix in 3e4ce1cc3eb7b35405c4d2c4f837e53ec9952c99.
[signature.asc (application/pgp-signature, inline)]

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 02 May 2020 11:24:07 GMT) Full text and rfc822 format available.

This bug report was last modified 5 years and 43 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.