Your message dated Mon, 10 Mar 2025 07:49:35 +0000
with message-id <[email protected]>
and subject line Bug#1098597: fixed in python-django-compressor 4.5.1-4
has caused the Debian Bug report #1098597,
regarding python-django-compressor: FTBFS: with latest bs4 4.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.)


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

Dear maintainer:

During a rebuild of all packages in unstable, your package failed to build:

--------------------------------------------------------------------------------
[...]
 debian/rules clean
make: pyversions: No such file or directory
py3versions: no X-Python3-Version in control file, using supported versions
dh clean --buildsystem=pybuild --with python3
   dh_auto_clean -O--buildsystem=pybuild
I: pybuild base:311: python3.12 setup.py clean 
/<<PKGBUILDDIR>>/setup.py:17: DeprecationWarning: Attribute s is deprecated and 
will be removed in Python 3.14; use value instead
  self.version = node.value.s
running clean
removing '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build' (and everything under 
it)
'build/bdist.linux-x86_64' does not exist -- can't clean it
'build/scripts-3.12' does not exist -- can't clean it
I: pybuild base:311: python3.13 setup.py clean 
/<<PKGBUILDDIR>>/setup.py:17: DeprecationWarning: Attribute s is deprecated and 
will be removed in Python 3.14; use value instead

[... snipped ...]

        compressor/js_preload.html
        compressor/js_file.html
        compressor/css_file.html
        test_compressor_offline.html
        compressor/js_inline.html
Compressing... done
Compressed 1 block(s) from 1 template(s) for 1 context(s).
..Compressing... done
Compressed 1 block(s) from 1 template(s) for 1 context(s).
.Found templates:
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_templatetag/test_compressor_offline.html
Compressing... done
Compressed 1 block(s) from 1 template(s) for 1 context(s).
..Compressing... Invalid template buggy_template.html: Invalid block tag on 
line 12: 'fail'. Did you forget to register or load this tag?
Error parsing template buggy_extends.html: Invalid block tag on line 12: 
'fail'. Did you forget to register or load this tag?
Error parsing template missing_extends.html: missing.html
done
Compressed 2 block(s) from 2 template(s) for 1 context(s).
.Considering paths:
        /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/templates
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates/test_error_handling
Found templates:
        compressor/css_preload.html
        compressor/css_inline.html
        buggy_template.html
        buggy_extends.html
        missing_extends.html
        with_coffeescript.html
        compressor/js_preload.html
        compressor/js_file.html
        compressor/css_file.html
        test_compressor_offline.html
        compressor/js_inline.html
Compressing... Invalid template buggy_template.html: Invalid block tag on line 
12: 'fail'. Did you forget to register or load this tag?
Error parsing template buggy_extends.html: Invalid block tag on line 12: 
'fail'. Did you forget to register or load this tag?
Error parsing template missing_extends.html: missing.html
done
Compressed 2 block(s) from 2 template(s) for 1 context(s).
....Compressing... Invalid template 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/buggy_template.html:
 Encountered unknown tag 'fail'.
done
Compressed 4 block(s) from 4 template(s) for 1 context(s).
Found templates:
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/test_compressor_offline.html
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/missing_extends.html
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/buggy_template.html
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/buggy_extends.html
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/with_coffeescript.html
Compressing... Invalid template 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/buggy_template.html:
 Encountered unknown tag 'fail'.
done
Compressed 4 block(s) from 4 template(s) for 1 context(s).
.Compressing... done
Compressed 1 block(s) from 1 template(s) for 1 context(s).
.Considering paths:
        /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/templates
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates/test_with_context
Found templates:
        compressor/css_preload.html
        compressor/css_inline.html
        compressor/js_preload.html
        compressor/js_file.html
        compressor/css_file.html
        test_compressor_offline.html
        compressor/js_inline.html
Compressing... done
Compressed 1 block(s) from 1 template(s) for 1 context(s).
..Compressing... done
Compressed 1 block(s) from 1 template(s) for 1 context(s).
.Found templates:
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_with_context/test_compressor_offline.html
Compressing... done
Compressed 1 block(s) from 1 template(s) for 1 context(s).
..Compressing... done
Compressed 3 block(s) from 3 template(s) for 3 context(s).
.Considering paths:
        /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/templates
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates/test_with_context
Found templates:
        compressor/css_preload.html
        compressor/css_inline.html
        compressor/js_preload.html
        compressor/js_file.html
        compressor/css_file.html
        test_compressor_offline.html
        compressor/js_inline.html
Compressing... done
Compressed 3 block(s) from 3 template(s) for 3 context(s).
..Compressing... done
Compressed 3 block(s) from 3 template(s) for 3 context(s).
.Found templates:
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_with_context/test_compressor_offline.html
Compressing... done
Compressed 3 block(s) from 3 template(s) for 3 context(s).
..Compressing... done
Compressed 3 block(s) from 3 template(s) for 3 context(s).
.Considering paths:
        /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/templates
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates/test_with_context
Found templates:
        compressor/css_preload.html
        compressor/css_inline.html
        compressor/js_preload.html
        compressor/js_file.html
        compressor/css_file.html
        test_compressor_offline.html
        compressor/js_inline.html
Compressing... done
Compressed 3 block(s) from 3 template(s) for 3 context(s).
..Compressing... done
Compressed 3 block(s) from 3 template(s) for 3 context(s).
.Found templates:
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_with_context/test_compressor_offline.html
Compressing... done
Compressed 3 block(s) from 3 template(s) for 3 context(s).
..Compressing... done
Compressed 3 block(s) from 3 template(s) for 3 context(s).
.Considering paths:
        /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/templates
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates/test_with_context_super
Found templates:
        compressor/css_preload.html
        compressor/css_inline.html
        base.html
        compressor/js_preload.html
        compressor/js_file.html
        compressor/css_file.html
        test_compressor_offline.html
        compressor/js_inline.html
Compressing... done
Compressed 3 block(s) from 3 template(s) for 3 context(s).
.sss.Compressing... done
Compressed 3 block(s) from 3 template(s) for 3 context(s).
.Considering paths:
        /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/templates
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates/test_with_context
Found templates:
        compressor/css_preload.html
        compressor/css_inline.html
        compressor/js_preload.html
        compressor/js_file.html
        compressor/css_file.html
        test_compressor_offline.html
        compressor/js_inline.html
Compressing... done
Compressed 3 block(s) from 3 template(s) for 3 context(s).
..Compressing... done
Compressed 3 block(s) from 3 template(s) for 3 context(s).
.Found templates:
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_with_context/test_compressor_offline.html
Compressing... done
Compressed 3 block(s) from 3 template(s) for 3 context(s).
..Compressing... done
Compressed 3 block(s) from 3 template(s) for 3 context(s).
.Considering paths:
        /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/templates
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates/test_with_context_super
Found templates:
        compressor/css_preload.html
        compressor/css_inline.html
        base.html
        compressor/js_preload.html
        compressor/js_file.html
        compressor/css_file.html
        test_compressor_offline.html
        compressor/js_inline.html
Compressing... done
Compressed 3 block(s) from 3 template(s) for 3 context(s).
.sss.Compressing... done
Compressed 1 block(s) from 1 template(s) for 1 context(s).
.Considering paths:
        /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/templates
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates/test_with_context_super
Found templates:
        compressor/css_preload.html
        compressor/css_inline.html
        base.html
        compressor/js_preload.html
        compressor/js_file.html
        compressor/css_file.html
        test_compressor_offline.html
        compressor/js_inline.html
Compressing... done
Compressed 1 block(s) from 1 template(s) for 1 context(s).
.sss.Compressing... done
Compressed 1 block(s) from 2 template(s) for 1 context(s).
.Considering paths:
        /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/templates
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates/test_with_context_variable_inheritance
Found templates:
        compressor/css_preload.html
        compressor/css_inline.html
        base.html
        compressor/js_preload.html
        compressor/js_file.html
        compressor/css_file.html
        test_compressor_offline.html
        compressor/js_inline.html
Compressing... done
Compressed 1 block(s) from 2 template(s) for 1 context(s).
..Compressing... done
Compressed 1 block(s) from 1 template(s) for 1 context(s).
.Found templates:
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_with_context_variable_inheritance/base.html
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_with_context_variable_inheritance/test_compressor_offline.html
Compressing... done
Compressed 1 block(s) from 1 template(s) for 1 context(s).
..Compressing... done
Compressed 2 block(s) from 2 template(s) for 2 context(s).
.Considering paths:
        /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/templates
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates/test_with_context_variable_inheritance_super
Found templates:
        compressor/css_preload.html
        compressor/css_inline.html
        base1.html
        base2.html
        compressor/js_preload.html
        compressor/js_file.html
        compressor/css_file.html
        test_compressor_offline.html
        compressor/js_inline.html
Compressing... done
Compressed 2 block(s) from 2 template(s) for 2 context(s).
.sss.Compressing... Invalid template buggy_template.html: Invalid block tag on 
line 12: 'fail'. Did you forget to register or load this tag?
Error parsing template buggy_extends.html: Invalid block tag on line 12: 
'fail'. Did you forget to register or load this tag?
Error parsing template missing_extends.html: missing.html
Compressing... Invalid template buggy_template.html: Invalid block tag on line 
12: 'fail'. Did you forget to register or load this tag?
Error parsing template buggy_extends.html: Invalid block tag on line 12: 
'fail'. Did you forget to register or load this tag?
Error parsing template missing_extends.html: missing.html
.Considering paths:
        /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/templates
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates/test_error_handling
Found templates:
        compressor/css_preload.html
        compressor/css_inline.html
        buggy_template.html
        buggy_extends.html
        missing_extends.html
        with_coffeescript.html
        compressor/js_preload.html
        compressor/js_file.html
        compressor/css_file.html
        test_compressor_offline.html
        compressor/js_inline.html
Compressing... Invalid template buggy_template.html: Invalid block tag on line 
12: 'fail'. Did you forget to register or load this tag?
Error parsing template buggy_extends.html: Invalid block tag on line 12: 
'fail'. Did you forget to register or load this tag?
Error parsing template missing_extends.html: missing.html
Considering paths:
        /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/templates
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates/test_error_handling
Found templates:
        compressor/css_preload.html
        compressor/css_inline.html
        buggy_template.html
        buggy_extends.html
        missing_extends.html
        with_coffeescript.html
        compressor/js_preload.html
        compressor/js_file.html
        compressor/css_file.html
        test_compressor_offline.html
        compressor/js_inline.html
Compressing... Invalid template buggy_template.html: Invalid block tag on line 
12: 'fail'. Did you forget to register or load this tag?
Error parsing template buggy_extends.html: Invalid block tag on line 12: 
'fail'. Did you forget to register or load this tag?
Error parsing template missing_extends.html: missing.html
..Compressing... Invalid template 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/buggy_template.html:
 Encountered unknown tag 'fail'.
Compressing... Invalid template 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/buggy_template.html:
 Encountered unknown tag 'fail'.
..Found templates:
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/test_compressor_offline.html
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/missing_extends.html
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/buggy_template.html
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/buggy_extends.html
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/with_coffeescript.html
Compressing... Invalid template 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/buggy_template.html:
 Encountered unknown tag 'fail'.
Found templates:
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/test_compressor_offline.html
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/missing_extends.html
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/buggy_template.html
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/buggy_extends.html
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/with_coffeescript.html
Compressing... Invalid template 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_error_handling/buggy_template.html:
 Encountered unknown tag 'fail'.
.Compressing... done
Compressed 1 block(s) from 1 template(s) for 1 context(s).
.Considering paths:
        /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/templates
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates/test_static_templatetag
Found templates:
        compressor/css_preload.html
        compressor/css_inline.html
        compressor/js_preload.html
        compressor/js_file.html
        compressor/css_file.html
        test_compressor_offline.html
        compressor/js_inline.html
Compressing... Looking for 'js/one.js' in storage
done
Compressed 1 block(s) from 1 template(s) for 1 context(s).
..Compressing... done
Compressed 1 block(s) from 1 template(s) for 1 context(s).
.Found templates:
        
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_templates_jinja2/test_static_templatetag/test_compressor_offline.html
Compressing... done
Compressed 1 block(s) from 1 template(s) for 1 context(s).
..ssssss............................................................................................................................E.EEEEEEEEE.....................................................................................
======================================================================
ERROR: test_cachekey 
(compressor.tests.test_parsers.BeautifulSoupParserTests.test_cachekey)
----------------------------------------------------------------------
Traceback (most recent call last):
  File 
"/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_base.py", 
line 250, in test_cachekey
    is_cachekey.match(self.css_node.cachekey),
                      ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/django/utils/functional.py", line 57, in 
__get__
    res = instance.__dict__[self.name] = self.func(instance)
                                         ~~~~~~~~~^^^^^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/base.py", line 
240, in cachekey
    "".join([self.content] + self.mtimes).encode(self.charset), 12
                             ^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/django/utils/functional.py", line 57, in 
__get__
    res = instance.__dict__[self.name] = self.func(instance)
                                         ~~~~~~~~~^^^^^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/base.py", line 
233, in mtimes
    for kind, value, basename, elem in self.split_contents()
                                       ~~~~~~~~~~~~~~~~~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/css.py", line 
20, in split_contents
    and elem_attribs["rel"].lower() == "stylesheet"
        ^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'AttributeValueList' object has no attribute 'lower'

======================================================================
ERROR: test_css_hunks 
(compressor.tests.test_parsers.BeautifulSoupParserTests.test_css_hunks)
----------------------------------------------------------------------
Traceback (most recent call last):
  File 
"/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_base.py", 
line 219, in test_css_hunks
    self.assertEqual(out, list(self.css_node.hunks()))
                          ~~~~^^^^^^^^^^^^^^^^^^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/base.py", line 
252, in hunks
    for kind, value, basename, elem in self.split_contents():
                                       ~~~~~~~~~~~~~~~~~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/css.py", line 
20, in split_contents
    and elem_attribs["rel"].lower() == "stylesheet"
        ^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'AttributeValueList' object has no attribute 'lower'

======================================================================
ERROR: test_css_mtimes 
(compressor.tests.test_parsers.BeautifulSoupParserTests.test_css_mtimes)
----------------------------------------------------------------------
Traceback (most recent call last):
  File 
"/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_base.py", 
line 236, in test_css_mtimes
    for date in self.css_node.mtimes:
                ^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/django/utils/functional.py", line 57, in 
__get__
    res = instance.__dict__[self.name] = self.func(instance)
                                         ~~~~~~~~~^^^^^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/base.py", line 
233, in mtimes
    for kind, value, basename, elem in self.split_contents()
                                       ~~~~~~~~~~~~~~~~~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/css.py", line 
20, in split_contents
    and elem_attribs["rel"].lower() == "stylesheet"
        ^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'AttributeValueList' object has no attribute 'lower'

======================================================================
ERROR: test_css_output 
(compressor.tests.test_parsers.BeautifulSoupParserTests.test_css_output)
----------------------------------------------------------------------
Traceback (most recent call last):
  File 
"/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_base.py", 
line 223, in test_css_output
    hunks = "\n".join([h for h in self.css_node.hunks()])
                                  ~~~~~~~~~~~~~~~~~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/base.py", line 
252, in hunks
    for kind, value, basename, elem in self.split_contents():
                                       ~~~~~~~~~~~~~~~~~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/css.py", line 
20, in split_contents
    and elem_attribs["rel"].lower() == "stylesheet"
        ^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'AttributeValueList' object has no attribute 'lower'

======================================================================
ERROR: test_css_output_with_bom_input 
(compressor.tests.test_parsers.BeautifulSoupParserTests.test_css_output_with_bom_input)
----------------------------------------------------------------------
Traceback (most recent call last):
  File 
"/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_base.py", 
line 231, in test_css_output_with_bom_input
    hunks = "\n".join([h for h in css_node_with_bom.hunks()])
                                  ~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/base.py", line 
252, in hunks
    for kind, value, basename, elem in self.split_contents():
                                       ~~~~~~~~~~~~~~~~~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/css.py", line 
20, in split_contents
    and elem_attribs["rel"].lower() == "stylesheet"
        ^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'AttributeValueList' object has no attribute 'lower'

======================================================================
ERROR: test_css_override_url 
(compressor.tests.test_parsers.BeautifulSoupParserTests.test_css_override_url)
----------------------------------------------------------------------
Traceback (most recent call last):
  File 
"/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_base.py", 
line 305, in test_css_override_url
    self.assertEqual(output, self.css_node.output().strip())
                             ~~~~~~~~~~~~~~~~~~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/css.py", line 
50, in output
    self.split_contents()
    ~~~~~~~~~~~~~~~~~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/css.py", line 
20, in split_contents
    and elem_attribs["rel"].lower() == "stylesheet"
        ^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'AttributeValueList' object has no attribute 'lower'

======================================================================
ERROR: test_css_preload_output 
(compressor.tests.test_parsers.BeautifulSoupParserTests.test_css_preload_output)
----------------------------------------------------------------------
Traceback (most recent call last):
  File 
"/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_base.py", 
line 261, in test_css_preload_output
    self.assertEqual(out, self.css_node.output(mode="preload"))
                          ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/css.py", line 
50, in output
    self.split_contents()
    ~~~~~~~~~~~~~~~~~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/css.py", line 
20, in split_contents
    and elem_attribs["rel"].lower() == "stylesheet"
        ^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'AttributeValueList' object has no attribute 'lower'

======================================================================
ERROR: test_css_return_if_off 
(compressor.tests.test_parsers.BeautifulSoupParserTests.test_css_return_if_off)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/django/test/utils.py", line 461, in inner
    return func(*args, **kwargs)
  File 
"/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_parsers.py",
 line 145, in test_css_return_if_off
    self.assertEqual(len(self.css), len(self.css_node.output()))
                                        ~~~~~~~~~~~~~~~~~~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/css.py", line 
57, in output
    return super().output(*args, **kwargs)
           ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/base.py", line 
367, in output
    output = "\n".join(self.filter_input(forced))
                       ~~~~~~~~~~~~~~~~~^^^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/base.py", line 
294, in filter_input
    for hunk in self.hunks(forced):
                ~~~~~~~~~~^^^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/base.py", line 
252, in hunks
    for kind, value, basename, elem in self.split_contents():
                                       ~~~~~~~~~~~~~~~~~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/css.py", line 
20, in split_contents
    and elem_attribs["rel"].lower() == "stylesheet"
        ^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'AttributeValueList' object has no attribute 'lower'

======================================================================
ERROR: test_css_return_if_on 
(compressor.tests.test_parsers.BeautifulSoupParserTests.test_css_return_if_on)
----------------------------------------------------------------------
Traceback (most recent call last):
  File 
"/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_base.py", 
line 256, in test_css_return_if_on
    self.assertEqual(output, self.css_node.output().strip())
                             ~~~~~~~~~~~~~~~~~~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/css.py", line 
50, in output
    self.split_contents()
    ~~~~~~~~~~~~~~~~~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/css.py", line 
20, in split_contents
    and elem_attribs["rel"].lower() == "stylesheet"
        ^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'AttributeValueList' object has no attribute 'lower'

======================================================================
ERROR: test_css_split 
(compressor.tests.test_parsers.BeautifulSoupParserTests.test_css_split)
----------------------------------------------------------------------
Traceback (most recent call last):
  File 
"/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/tests/test_parsers.py",
 line 116, in test_css_split
    split = self.css_node.split_contents()
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/compressor/css.py", line 
20, in split_contents
    and elem_attribs["rel"].lower() == "stylesheet"
        ^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'AttributeValueList' object has no attribute 'lower'

----------------------------------------------------------------------
Ran 509 tests in 2.671s

FAILED (errors=10, skipped=36)
Destroying test database for alias 'default'...
E: pybuild pybuild:389: test: plugin distutils failed with: exit code=1: cd 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build; rm -rf {build_dir}/.tmp; mkdir 
{build_dir}/.tmp; cp -a {dir}/compressor/tests/static {build_dir}/.tmp/static; 
env TMP_TEST_DIR={build_dir}/.tmp {interpreter} -m coverage run --branch 
--source=compressor /usr/bin/django-admin test 
--settings=compressor.test_settings compressor
dh_auto_test: error: pybuild --test -i python{version} -p "3.12 3.13" returned 
exit code 13
make: *** [debian/rules:10: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------

The above is just how the build ends and not necessarily the most relevant part.
If required, the full build log is available here:

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

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 could not 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-compressor, so that this is 
still
visible in the BTS web page for this package.

Thanks.

--- End Message ---
--- Begin Message ---
Source: python-django-compressor
Source-Version: 4.5.1-4
Done: Thomas Goirand <[email protected]>

We believe that the bug you reported is fixed in the latest version of
python-django-compressor, 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.
Thomas Goirand <[email protected]> (supplier of updated python-django-compressor 
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: SHA256

Format: 1.8
Date: Fri, 28 Feb 2025 11:27:15 +0100
Source: python-django-compressor
Architecture: source
Version: 4.5.1-4
Distribution: unstable
Urgency: medium
Maintainer: Debian OpenStack <[email protected]>
Changed-By: Thomas Goirand <[email protected]>
Closes: 1098597
Changes:
 python-django-compressor (4.5.1-4) unstable; urgency=medium
 .
   * Add Fix-stylesheet-detection-in-CssComproessor-with-bs4.13.patch
     (Closes: #1098597).
Checksums-Sha1:
 9a9d6a914c8804943d8faa1a1a75b1fb804263bd 2530 
python-django-compressor_4.5.1-4.dsc
 2a38016f381ccfae51b47c51443c1f9378d3c3cc 5968 
python-django-compressor_4.5.1-4.debian.tar.xz
 5bc36ad2f5b6a60e4c37ae825ed8672ee3ad9c20 7939 
python-django-compressor_4.5.1-4_amd64.buildinfo
Checksums-Sha256:
 d2d50f8c6ffaa77e1a89ab6db31068bbfe3a215bfd4ebf58f90e649513f21012 2530 
python-django-compressor_4.5.1-4.dsc
 868a7a7bfefdcaa18c74f2773f04f48b5f5cc9a75747cc41b8c1d62f4a4201e7 5968 
python-django-compressor_4.5.1-4.debian.tar.xz
 002b21f1b5e218763184cf68e86134e7686d1797d838996a2b91516e5f2da891 7939 
python-django-compressor_4.5.1-4_amd64.buildinfo
Files:
 4bfe14d13cfb69ad086342d2e48eac48 2530 python optional 
python-django-compressor_4.5.1-4.dsc
 d180e4f62400cc4869ccd02acdca3a9d 5968 python optional 
python-django-compressor_4.5.1-4.debian.tar.xz
 389f00ff2aaff234b5bf823b2802d583 7939 python optional 
python-django-compressor_4.5.1-4_amd64.buildinfo

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

iQIzBAEBCAAdFiEEoLGp81CJVhMOekJc1BatFaxrQ/4FAmfOlLoACgkQ1BatFaxr
Q/7RhA//YmMyYdNGhWubQ6Ig8ROE2KNYRBrzFXsWwf1hfqZAQpH/aUVma1Mvflzd
WvizQC7nKpmQI14/u2ic1QgZm5RISihb4CVr+NcwDrnf8UNRYbOy7K+5WSAYYe3I
3HTtpX9OPmBJ5gBYIiWmNvtRg41vSypZ17t7Tp9eyVMo/FTUbD/FkS53a9ERxUKz
cTJFEe9S0sxc/vbUSq0j7ya7hViIbCmgzsCDoh98WpbmUYif2KspXiX9dDMFny8a
FB1CCGUPh0QDwu1UtJC+9J7TQclnSb1Lg2s57w44mwLJks1QuZrfUPgm2OB8+HH6
25YqsZmngzBTeKPaWnJEaO+i77j3yABZDiVwhVQT7OcBUesryFMbZify7wo46wyb
Nc53QsTaDOKZwfpqg9kuzfauyeHwWyOJsAp+MB63HiTq8qWPM7EPL6Dy9hZTGyqS
LvLKR5OO8cZ8EcEpWkzvLs0aFDcXItKUJE0cpTB+j7MkgInqsOemDXEqM8Owb15t
8xNHHZSk1G8OQSOM2NKdlXsSL/DhlhKqtCjc+berD9g1r/fwT9acWvacIadB3Yaz
/QB0m2rr0/4rueD01ZaI5027NAj5WPct9jDgVEU7/8/7vysnUvpBhGISvcluIxlV
qIGqr6pd1KWEFsCWdjGws6CJeMH07QisiDO+i2lh8c9alxLOMJQ=
=foZQ
-----END PGP SIGNATURE-----

Attachment: pgpzLfBIP4xte.pgp
Description: PGP signature


--- End Message ---

Reply via email to