Your message dated Thu, 01 Jan 2026 18:19:09 +0000
with message-id <[email protected]>
and subject line Bug#1123218: fixed in python-django-imagekit 6.0-1
has caused the Debian Bug report #1123218,
regarding python-django-imagekit: FTBFS: dh_auto_test: error: pybuild --test 
--test-pytest -i python{version} -p "3.14 3.13" returned exit code 13
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
1123218: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1123218
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: src:python-django-imagekit
Version: 5.0-3
Severity: serious
Tags: ftbfs forky sid

Dear maintainer:

During a rebuild of all packages in unstable, this package failed to build.

Below you will find the last part of the build log (probably the most
relevant part, but not necessarily). If required, the full build log
is available here:

https://people.debian.org/~sanvila/build-logs/202512/

About the archive rebuild: The build was made on virtual machines from AWS,
using sbuild and a reduced chroot with only build-essential packages.

If you cannot reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and add an affects on src:python-django-imagekit, so that this is still
visible in the BTS web page for this package.

Thanks.

--------------------------------------------------------------------------------
[...]
 debian/rules clean
dh clean --with python3,sphinxdoc --buildsystem=pybuild
   dh_auto_clean -O--buildsystem=pybuild
   dh_autoreconf_clean -O--buildsystem=pybuild
   debian/rules override_dh_clean
make[1]: Entering directory '/<<PKGBUILDDIR>>'
rm -rf docs/.build
dh_clean
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
 debian/rules binary
dh binary --with python3,sphinxdoc --buildsystem=pybuild
   dh_update_autotools_config -O--buildsystem=pybuild
   dh_autoreconf -O--buildsystem=pybuild
   dh_auto_configure -O--buildsystem=pybuild
   debian/rules override_dh_auto_build

[... snipped ...]

    name = generator.cachefile_name
           ^^^^^^^^^^^^^^^^^^^^^^^^
imagekit/specs/__init__.py:97: in cachefile_name
    return fn(self)
           ^^^^^^^^
imagekit/cachefiles/namers.py:42: in source_name_as_path
    '%s%s' % (generator.get_hash(), ext)))
              ^^^^^^^^^^^^^^^^^^^^
imagekit/specs/__init__.py:135: in get_hash
    return hashers.pickle([
imagekit/hashers.py:29: in pickle
    CanonicalizingPickler(file, 0).dump(obj)
/usr/lib/python3.14/pickle.py:498: in dump
    self.save(obj)
/usr/lib/python3.14/pickle.py:572: in save
    f(self, obj)  # Call unbound method with explicit self
    ^^^^^^^^^^^^
/usr/lib/python3.14/pickle.py:1015: in save_list
    self._batch_appends(obj, obj)
/usr/lib/python3.14/pickle.py:1029: in _batch_appends
    save(x)
/usr/lib/python3.14/pickle.py:572: in save
    f(self, obj)  # Call unbound method with explicit self
    ^^^^^^^^^^^^
/usr/lib/python3.14/pickle.py:1015: in save_list
    self._batch_appends(obj, obj)
/usr/lib/python3.14/pickle.py:1029: in _batch_appends
    save(x)
/usr/lib/python3.14/pickle.py:615: in save
    self.save_reduce(obj=obj, *rv)
/usr/lib/python3.14/pickle.py:761: in save_reduce
    save(state)
/usr/lib/python3.14/pickle.py:572: in save
    f(self, obj)  # Call unbound method with explicit self
    ^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <imagekit.hashers.CanonicalizingPickler object at 0x7f719dd4f750>
obj = {'anchor': 'c', 'crop': True, 'height': 100, 'upscale': None, ...}

    def save_dict(self, obj):
        write = self.write
        write(MARK + DICT)
    
        self.memoize(obj)
>       self._batch_setitems(sorted(obj.items()))
E       TypeError: _Pickler._batch_setitems() missing 1 required positional 
argument: 'obj'
E       when serializing pilkit.processors.resize.Thumbnail state
E       when serializing pilkit.processors.resize.Thumbnail object
E       when serializing list item 0
E       when serializing list item 1

imagekit/hashers.py:22: TypeError
____________________________ test_single_dimension _____________________________

    def test_single_dimension():
        ttag = r"""{% thumbnail '100x' img as th %}{{ th.width }}"""
        clear_imagekit_cache()
>       html = render_tag(ttag)
               ^^^^^^^^^^^^^^^^

tests/test_thumbnail_tag.py:81: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/utils.py:68: in render_tag
    return template.render(context)
           ^^^^^^^^^^^^^^^^^^^^^^^^
/usr/lib/python3/dist-packages/django/template/base.py:175: in render
    return self._render(context)
           ^^^^^^^^^^^^^^^^^^^^^
/usr/lib/python3/dist-packages/django/test/utils.py:112: in 
instrumented_test_render
    return self.nodelist.render(context)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/usr/lib/python3/dist-packages/django/template/base.py:1005: in render
    return SafeString("".join([node.render_annotated(context) for node in 
self]))
                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/usr/lib/python3/dist-packages/django/template/base.py:966: in render_annotated
    return self.render(context)
           ^^^^^^^^^^^^^^^^^^^^
imagekit/templatetags/imagekit.py:102: in render
    context[variable_name] = ImageCacheFile(generator)
                             ^^^^^^^^^^^^^^^^^^^^^^^^^
imagekit/cachefiles/__init__.py:42: in __init__
    name = generator.cachefile_name
           ^^^^^^^^^^^^^^^^^^^^^^^^
imagekit/specs/__init__.py:97: in cachefile_name
    return fn(self)
           ^^^^^^^^
imagekit/cachefiles/namers.py:42: in source_name_as_path
    '%s%s' % (generator.get_hash(), ext)))
              ^^^^^^^^^^^^^^^^^^^^
imagekit/specs/__init__.py:135: in get_hash
    return hashers.pickle([
imagekit/hashers.py:29: in pickle
    CanonicalizingPickler(file, 0).dump(obj)
/usr/lib/python3.14/pickle.py:498: in dump
    self.save(obj)
/usr/lib/python3.14/pickle.py:572: in save
    f(self, obj)  # Call unbound method with explicit self
    ^^^^^^^^^^^^
/usr/lib/python3.14/pickle.py:1015: in save_list
    self._batch_appends(obj, obj)
/usr/lib/python3.14/pickle.py:1029: in _batch_appends
    save(x)
/usr/lib/python3.14/pickle.py:572: in save
    f(self, obj)  # Call unbound method with explicit self
    ^^^^^^^^^^^^
/usr/lib/python3.14/pickle.py:1015: in save_list
    self._batch_appends(obj, obj)
/usr/lib/python3.14/pickle.py:1029: in _batch_appends
    save(x)
/usr/lib/python3.14/pickle.py:615: in save
    self.save_reduce(obj=obj, *rv)
/usr/lib/python3.14/pickle.py:761: in save_reduce
    save(state)
/usr/lib/python3.14/pickle.py:572: in save
    f(self, obj)  # Call unbound method with explicit self
    ^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <imagekit.hashers.CanonicalizingPickler object at 0x7f719dd8a170>
obj = {'anchor': None, 'crop': False, 'height': None, 'upscale': None, ...}

    def save_dict(self, obj):
        write = self.write
        write(MARK + DICT)
    
        self.memoize(obj)
>       self._batch_setitems(sorted(obj.items()))
E       TypeError: _Pickler._batch_setitems() missing 1 required positional 
argument: 'obj'
E       when serializing pilkit.processors.resize.Thumbnail state
E       when serializing pilkit.processors.resize.Thumbnail object
E       when serializing list item 0
E       when serializing list item 1

imagekit/hashers.py:22: TypeError
___________________________ test_alternate_generator ___________________________

    def test_alternate_generator():
        ttag = r"""{% thumbnail '1pxsq' '100x' img as th %}{{ th.width }}"""
        clear_imagekit_cache()
>       html = render_tag(ttag)
               ^^^^^^^^^^^^^^^^

tests/test_thumbnail_tag.py:88: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/utils.py:68: in render_tag
    return template.render(context)
           ^^^^^^^^^^^^^^^^^^^^^^^^
/usr/lib/python3/dist-packages/django/template/base.py:175: in render
    return self._render(context)
           ^^^^^^^^^^^^^^^^^^^^^
/usr/lib/python3/dist-packages/django/test/utils.py:112: in 
instrumented_test_render
    return self.nodelist.render(context)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/usr/lib/python3/dist-packages/django/template/base.py:1005: in render
    return SafeString("".join([node.render_annotated(context) for node in 
self]))
                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/usr/lib/python3/dist-packages/django/template/base.py:966: in render_annotated
    return self.render(context)
           ^^^^^^^^^^^^^^^^^^^^
imagekit/templatetags/imagekit.py:102: in render
    context[variable_name] = ImageCacheFile(generator)
                             ^^^^^^^^^^^^^^^^^^^^^^^^^
imagekit/cachefiles/__init__.py:42: in __init__
    name = generator.cachefile_name
           ^^^^^^^^^^^^^^^^^^^^^^^^
imagekit/specs/__init__.py:97: in cachefile_name
    return fn(self)
           ^^^^^^^^
imagekit/cachefiles/namers.py:42: in source_name_as_path
    '%s%s' % (generator.get_hash(), ext)))
              ^^^^^^^^^^^^^^^^^^^^
imagekit/specs/__init__.py:135: in get_hash
    return hashers.pickle([
imagekit/hashers.py:29: in pickle
    CanonicalizingPickler(file, 0).dump(obj)
/usr/lib/python3.14/pickle.py:498: in dump
    self.save(obj)
/usr/lib/python3.14/pickle.py:572: in save
    f(self, obj)  # Call unbound method with explicit self
    ^^^^^^^^^^^^
/usr/lib/python3.14/pickle.py:1015: in save_list
    self._batch_appends(obj, obj)
/usr/lib/python3.14/pickle.py:1029: in _batch_appends
    save(x)
/usr/lib/python3.14/pickle.py:572: in save
    f(self, obj)  # Call unbound method with explicit self
    ^^^^^^^^^^^^
/usr/lib/python3.14/pickle.py:1015: in save_list
    self._batch_appends(obj, obj)
/usr/lib/python3.14/pickle.py:1029: in _batch_appends
    save(x)
/usr/lib/python3.14/pickle.py:615: in save
    self.save_reduce(obj=obj, *rv)
/usr/lib/python3.14/pickle.py:761: in save_reduce
    save(state)
/usr/lib/python3.14/pickle.py:572: in save
    f(self, obj)  # Call unbound method with explicit self
    ^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <imagekit.hashers.CanonicalizingPickler object at 0x7f719dd8b750>
obj = {'anchor': None, 'height': 1, 'upscale': True, 'width': 1}

    def save_dict(self, obj):
        write = self.write
        write(MARK + DICT)
    
        self.memoize(obj)
>       self._batch_setitems(sorted(obj.items()))
E       TypeError: _Pickler._batch_setitems() missing 1 required positional 
argument: 'obj'
E       when serializing pilkit.processors.resize.ResizeToFill state
E       when serializing pilkit.processors.resize.ResizeToFill object
E       when serializing list item 0
E       when serializing list item 1

imagekit/hashers.py:22: TypeError
=============================== warnings summary ===============================
../../../../../../usr/lib/python3/dist-packages/django/conf/__init__.py:241
  /usr/lib/python3/dist-packages/django/conf/__init__.py:241: 
RemovedInDjango50Warning: The default value of USE_TZ will change from False to 
True in Django 5.0. Set USE_TZ to False in your project settings if you want to 
keep the current default behavior.
    warnings.warn(

tests/test_settings.py::test_custom_default_file_storage
  /usr/lib/python3/dist-packages/django/conf/__init__.py:343: 
RemovedInDjango51Warning: The DEFAULT_FILE_STORAGE setting is deprecated. Use 
STORAGES instead.
    warnings.warn(DEFAULT_FILE_STORAGE_DEPRECATED_MSG, RemovedInDjango51Warning)

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=========================== short test summary info ============================
FAILED tests/test_closing_fieldfiles.py::test_do_not_leak_open_files - TypeEr...
FAILED 
tests/test_closing_fieldfiles.py::test_do_not_close_open_files_after_generate
FAILED tests/test_serialization.py::test_imagespecfield - TypeError: _Pickler...
FAILED tests/test_serialization.py::test_circular_ref - TypeError: _Pickler._...
FAILED tests/test_thumbnail_tag.py::test_img_tag - TypeError: _Pickler._batch...
FAILED tests/test_thumbnail_tag.py::test_img_tag_anchor - TypeError: _Pickler...
FAILED tests/test_thumbnail_tag.py::test_img_tag_attrs - TypeError: _Pickler....
FAILED tests/test_thumbnail_tag.py::test_assignment_tag - TypeError: _Pickler...
FAILED tests/test_thumbnail_tag.py::test_assignment_tag_anchor - TypeError: _...
FAILED tests/test_thumbnail_tag.py::test_single_dimension - TypeError: _Pickl...
FAILED tests/test_thumbnail_tag.py::test_alternate_generator - TypeError: _Pi...
================== 11 failed, 36 passed, 2 warnings in 1.71s ===================
E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_django-imagekit/build; python3.14 -m 
pytest tests
I: pybuild base:317: cd 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_django-imagekit/build; python3.13 -m 
pytest tests
============================= test session starts ==============================
platform linux -- Python 3.13.11, pytest-9.0.2, pluggy-1.6.0
django: version: 4.2.26, settings: tests.settings (from ini)
rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_django-imagekit/build
configfile: pytest.ini
plugins: typeguard-4.4.4, django-4.11.1
collected 47 items

tests/test_closing_fieldfiles.py ..                                      [  4%]
tests/test_fields.py ...                                                 [ 10%]
tests/test_serialization.py ..                                           [ 14%]
tests/test_sourcegroups.py ...                                           [ 21%]
tests/test_abstract_models.py .                                          [ 23%]
tests/test_cachefiles.py .......                                         [ 38%]
tests/test_generateimage_tag.py ......                                   [ 51%]
tests/test_no_extra_queries.py .                                         [ 53%]
tests/test_optimistic_strategy.py ..                                     [ 57%]
tests/test_serialization.py .                                            [ 59%]
tests/test_settings.py .....                                             [ 70%]
tests/test_thumbnail_tag.py ...........                                  [ 93%]
tests/test_utils.py ...                                                  [100%]

=============================== warnings summary ===============================
../../../../../../usr/lib/python3/dist-packages/django/conf/__init__.py:241
  /usr/lib/python3/dist-packages/django/conf/__init__.py:241: 
RemovedInDjango50Warning: The default value of USE_TZ will change from False to 
True in Django 5.0. Set USE_TZ to False in your project settings if you want to 
keep the current default behavior.
    warnings.warn(

tests/test_settings.py::test_custom_default_file_storage
  /usr/lib/python3/dist-packages/django/conf/__init__.py:343: 
RemovedInDjango51Warning: The DEFAULT_FILE_STORAGE setting is deprecated. Use 
STORAGES instead.
    warnings.warn(DEFAULT_FILE_STORAGE_DEPRECATED_MSG, RemovedInDjango51Warning)

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
======================== 47 passed, 2 warnings in 0.43s ========================
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.14 
3.13" returned exit code 13
make: *** [debian/rules:9: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------

--- End Message ---
--- Begin Message ---
Source: python-django-imagekit
Source-Version: 6.0-1
Done: Colin Watson <[email protected]>

We believe that the bug you reported is fixed in the latest version of
python-django-imagekit, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Colin Watson <[email protected]> (supplier of updated python-django-imagekit 
package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Thu, 01 Jan 2026 17:52:41 +0000
Source: python-django-imagekit
Architecture: source
Version: 6.0-1
Distribution: unstable
Urgency: medium
Maintainer: Debian Python Team <[email protected]>
Changed-By: Colin Watson <[email protected]>
Closes: 1123218
Changes:
 python-django-imagekit (6.0-1) unstable; urgency=medium
 .
   * Team upload.
   * New upstream release:
     - Support Python 3.14 (closes: #1123218).
   * Drop "Rules-Requires-Root: no", default as of dpkg-dev 1.22.13.
Checksums-Sha1:
 5e5ddc5ca3151c6197a1e27cb0720f0d33ab31c6 2531 python-django-imagekit_6.0-1.dsc
 565dffa03f787fb7205cf28bc484b0d8095fb0ab 180297 
python-django-imagekit_6.0.orig.tar.gz
 a83afb526b467a51fa3a1f2d18ab745cbc3f7630 4788 
python-django-imagekit_6.0-1.debian.tar.xz
Checksums-Sha256:
 5ab7bff91b33c5a6438f412bd71108f8fdd6424e37958717d202efb4efa39435 2531 
python-django-imagekit_6.0-1.dsc
 593daf9ddd73c7a2c86d124acd5ce55500e1cffd958b3bc723b06907611b24c2 180297 
python-django-imagekit_6.0.orig.tar.gz
 2d1249f6f8b465e5da4fbb202ef465e79240a7a3be8144c2b38198a872aec9a6 4788 
python-django-imagekit_6.0-1.debian.tar.xz
Files:
 ef74e97eca1db9db76929a442ac064a3 2531 python optional 
python-django-imagekit_6.0-1.dsc
 5c1fb5b951a6aee1877d4b369eb7cefb 180297 python optional 
python-django-imagekit_6.0.orig.tar.gz
 62231e1297fa9f6342359c0d293d43ef 4788 python optional 
python-django-imagekit_6.0-1.debian.tar.xz

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEErApP8SYRtvzPAcEROTWH2X2GUAsFAmlWtRUACgkQOTWH2X2G
UAvEuRAAos6aAMiY+PEGKbgO7eAgAtXFJGm+uzz+6wSPNSeWz0YXnUI3HGPgLkpU
j3J7f9AEP5UcfPIY5tS8YzuIbfb3STW/sNmcr7++V6Vl8A25aZJvxf9//jUgQS+w
VHkAt3Cms03edetk6r4//JUJuv4MB0x7OAO4A+5bMvXy7g0FNOvN9EinuQmWTQ8l
Djp1UhkVEYsiuj5Ty6bJscqujPJK+aNCO0/Qo6Yc+vbru66HHT1rPBlHjRFwSjzD
6zAG1yYQlZTSeFI3IWuWLpNzF+3a9Dodil8nLSJzzJO3rQYjyTpzSX8A7pWDcGs2
MiAZapP0supiuKPPW+CfAKjFTVagN36Q6f+8d+RSQNoBCHrHt/+iFAeKdGYBhhIK
BNZjnD1w/r6SC9o54BQ93NUuhFJvTq0/mC7sl9DpiD9f5Yb1adwEhlgNvvZq9nkm
mP0RpnWbrN4e1Fjn8U2Ga7tavfQbwqSOVe8UOKuTSDFyG4kjq6CI3CqDaSM/HXtZ
VpxlcR/AsP3tXwzgVfayHsgnkloxG0d3ODM3X0K6lKkhXaOVJwYv7Q4hiu9dk1J2
wXvRaGViJp28cfZJr4EcSRjuqWoBAPqlFdbN1kX99mKyv4nDyqT3zrS6/XuDxRH+
ZB9ey7X86aAX5UhyMd1dNn8mZ//49fuldOPMz1pE3e8UF6lzH8g=
=Kb9b
-----END PGP SIGNATURE-----

Attachment: pgpnVfDEwRiT6.pgp
Description: PGP signature


--- End Message ---

Reply via email to