Source: luma.core
Version: 2.4.1-2
Severity: serious
Justification: FTBFS
Tags: trixie sid ftbfs
User: lu...@debian.org
Usertags: ftbfs-20240420 ftbfs-trixie ftbfs-t64-arm64

Hi,

During a rebuild of all packages in sid, your package failed to build
on arm64.


Relevant part (hopefully):
>  debian/rules build
> dh build --with python3 --with sphinxdoc --buildsystem=pybuild
>    dh_update_autotools_config -O--buildsystem=pybuild
>    dh_autoreconf -O--buildsystem=pybuild
>    dh_auto_configure -O--buildsystem=pybuild
> I: pybuild base:311: python3.11 setup.py config 
> running config
>    dh_auto_build -O--buildsystem=pybuild
> I: pybuild base:311: /usr/bin/python3 setup.py build 
> running build
> running build_py
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core
> copying luma/core/mixin.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core
> copying luma/core/ansi_color.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core
> copying luma/core/lib.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core
> copying luma/core/virtual.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core
> copying luma/core/util.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core
> copying luma/core/threadpool.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core
> copying luma/core/sprite_system.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core
> copying luma/core/render.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core
> copying luma/core/framebuffer.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core
> copying luma/core/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core
> copying luma/core/error.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core
> copying luma/core/bitmap_font.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core
> copying luma/core/cmdline.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core
> copying luma/core/image_composition.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core
> copying luma/core/const.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core
> copying luma/core/device.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core
> creating 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core/legacy
> copying luma/core/legacy/font.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core/legacy
> copying luma/core/legacy/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core/legacy
> creating 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core/interface
> copying luma/core/interface/serial.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core/interface
> copying luma/core/interface/parallel.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core/interface
> copying luma/core/interface/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/luma/core/interface
>    dh_auto_test -O--buildsystem=pybuild
> I: pybuild base:311: cd 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build; python3.11 -m pytest 
> tests
> ============================= test session starts 
> ==============================
> platform linux -- Python 3.11.9, pytest-8.1.1, pluggy-1.4.0 -- 
> /usr/bin/python3.11
> cachedir: .pytest_cache
> rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build
> configfile: pytest.ini
> collecting ... collected 210 items
> 
> tests/test_ansi_color.py::test_parse_str_no_escape PASSED
> tests/test_ansi_color.py::test_parse_str_valid_ansi_colors PASSED
> tests/test_ansi_color.py::test_parse_str_valid_ansi_colors_extended_codeset 
> PASSED
> tests/test_ansi_color.py::test_parse_str_multiple_ansi_colors PASSED
> tests/test_ansi_color.py::test_parse_str_unknown_ansi_colors_ignored PASSED
> tests/test_ansi_color.py::test_strip_ansi_codes PASSED
> tests/test_bitbang.py::test_data PASSED
> tests/test_bitbang.py::test_cleanup PASSED
> tests/test_bitbang.py::test_cleanup_custom_pins PASSED
> tests/test_bitbang.py::test_unsupported_gpio_platform SKIPPED (RPi.G...)
> tests/test_bitmap_font.py::test_load_from_pillow_font SKIPPED
> tests/test_bitmap_font.py::test_load_from_pillow_exceptions SKIPPED
> tests/test_bitmap_font.py::test_mapping SKIPPED
> tests/test_bitmap_font.py::test_load_sprite_table SKIPPED
> tests/test_bitmap_font.py::test_load_sprite_table_exceptions_1 FAILED
> tests/test_bitmap_font.py::test_load_sprite_table_exceptions_2 SKIPPED
> tests/test_bitmap_font.py::test_dumps_loads_saves_load SKIPPED
> tests/test_bitmap_font.py::test_loads_exception PASSED
> tests/test_bitmap_font.py::test_combine PASSED
> tests/test_bitmap_font.py::test_embedded_font PASSED
> tests/test_bitmap_font.py::test_embedded_font_exceptions PASSED
> tests/test_bitmap_font.py::test_metrics PASSED
> tests/test_bitmap_font.py::test_glyph_index PASSED
> tests/test_canvas.py::test_canvas_background PASSED
> tests/test_canvas.py::test_canvas_wrong_size PASSED
> tests/test_character.py::test_init SKIPPED
> tests/test_character.py::test_setter_getter SKIPPED
> tests/test_cmdline.py::test_get_interface_types PASSED
> tests/test_cmdline.py::test_ensure_cmdline_opt_contains_all_interfaces PASSED
> tests/test_cmdline.py::test_get_display_types PASSED
> tests/test_cmdline.py::test_get_choices_unknown_module PASSED
> tests/test_cmdline.py::test_get_library_version PASSED
> tests/test_cmdline.py::test_get_library_for_display_type PASSED
> tests/test_cmdline.py::test_load_config_file_parse PASSED
> tests/test_cmdline.py::test_create_parser PASSED
> tests/test_cmdline.py::test_make_interface_noop PASSED
> tests/test_cmdline.py::test_make_interface_i2c PASSED
> tests/test_cmdline.py::test_make_interface_spi SKIPPED (RPi.GPIO is ...)
> tests/test_cmdline.py::test_make_interface_gpio_cs_spi SKIPPED (RPi....)
> tests/test_cmdline.py::test_make_interface_spi_alt_gpio SKIPPED (spi...)
> tests/test_cmdline.py::test_make_interface_bitbang SKIPPED (RPi.GPIO...)
> tests/test_cmdline.py::test_make_interface_pcf8574 PASSED
> tests/test_cmdline.py::test_make_interface_bitbang_6800 SKIPPED (RPi...)
> tests/test_cmdline.py::test_make_interface_bitbang_6800_alt_gpio PASSED
> tests/test_cmdline.py::test_create_device PASSED
> tests/test_cmdline.py::test_create_device_oled SKIPPED (RPi.GPIO is ...)
> tests/test_cmdline.py::test_create_device_lcd PASSED
> tests/test_cmdline.py::test_create_device_led_matrix PASSED
> tests/test_cmdline.py::test_create_device_emulator PASSED
> tests/test_cmdline.py::test_create_device_core PASSED
> tests/test_cmdline.py::test_make_interface_ftdi_spi PASSED
> tests/test_cmdline.py::test_make_interface_ftdi_i2c PASSED
> tests/test_dummy_device.py::test_capture_noops PASSED
> tests/test_dummy_device.py::test_portrait PASSED
> tests/test_dummy_device.py::test_dither PASSED
> tests/test_framebuffer.py::test_full_frame PASSED
> tests/test_framebuffer.py::test_diff_to_previous PASSED
> tests/test_framebuffer.py::test_diff_to_previous_debug PASSED
> tests/test_framerate_regulator.py::test_init_default PASSED
> tests/test_framerate_regulator.py::test_init_unlimited PASSED
> tests/test_framerate_regulator.py::test_init_30fps PASSED
> tests/test_framerate_regulator.py::test_sleep PASSED
> tests/test_framerate_regulator.py::test_effective_FPS PASSED
> tests/test_framerate_regulator.py::test_average_transit_time PASSED
> tests/test_ftdi_i2c.py::test_init PASSED
> tests/test_ftdi_i2c.py::test_command PASSED
> tests/test_ftdi_i2c.py::test_data PASSED
> tests/test_ftdi_i2c.py::test_cleanup PASSED
> tests/test_ftdi_i2c.py::test_init_device_address_error PASSED
> tests/test_ftdi_spi.py::test_init PASSED
> tests/test_ftdi_spi.py::test_command PASSED
> tests/test_ftdi_spi.py::test_data PASSED
> tests/test_ftdi_spi.py::test_cleanup PASSED
> tests/test_gpio_cs_spi.py::test_init PASSED
> tests/test_gpio_cs_spi.py::test_init_invalid_bus_speed PASSED
> tests/test_gpio_cs_spi.py::test_command PASSED
> tests/test_gpio_cs_spi.py::test_data PASSED
> tests/test_gpio_cs_spi.py::test_cleanup PASSED
> tests/test_gpio_cs_spi.py::test_init_device_not_found SKIPPED (spide...)
> tests/test_gpio_cs_spi.py::test_unsupported_gpio_platform SKIPPED (R...)
> tests/test_history.py::test_restore_throws_error_when_empty PASSED
> tests/test_history.py::test_save_and_restore_reverts_image PASSED
> tests/test_history.py::test_drop_and_restore PASSED
> tests/test_i2c.py::test_init_device_not_found PASSED
> tests/test_i2c.py::test_init_device_permission_error PASSED
> tests/test_i2c.py::test_init_device_address_error PASSED
> tests/test_i2c.py::test_init_no_bus PASSED
> tests/test_i2c.py::test_init_bus_provided PASSED
> tests/test_i2c.py::test_command PASSED
> tests/test_i2c.py::test_i2c_command_device_not_found_error PASSED
> tests/test_i2c.py::test_i2c_data PASSED
> tests/test_i2c.py::test_i2c_data_chunked PASSED
> tests/test_i2c.py::test_cleanup PASSED
> tests/test_image_composition.py::test_composable_image_none PASSED
> tests/test_image_composition.py::test_composable_image_image PASSED
> tests/test_image_composition.py::test_composable_image_ctor PASSED
> tests/test_image_composition.py::test_composable_image_crop_same PASSED
> tests/test_image_composition.py::test_composable_image_crop_size_smaller_than_image_size
>  PASSED
> tests/test_image_composition.py::test_composable_image_crop_size_greater_than_image_size
>  PASSED
> tests/test_image_composition.py::test_composable_image_crop_offset PASSED
> tests/test_image_composition.py::test_image_composition_ctor PASSED
> tests/test_image_composition.py::test_image_add_image_none PASSED
> tests/test_image_composition.py::test_image_remove_image_none PASSED
> tests/test_image_composition.py::test_image_count PASSED
> tests/test_image_composition.py::test_refresh_no_images PASSED
> tests/test_image_composition.py::test_refresh PASSED
> tests/test_legacy.py::test_textsize PASSED
> tests/test_legacy.py::test_text_space PASSED
> tests/test_legacy.py::test_text_char PASSED
> tests/test_legacy.py::test_show_message PASSED
> tests/test_legacy_fonts.py::test_font[ATARI_FONT] PASSED
> tests/test_legacy_fonts.py::test_font[CP437_FONT] PASSED
> tests/test_legacy_fonts.py::test_font[SINCLAIR_FONT] PASSED
> tests/test_legacy_fonts.py::test_font[SPECCY_FONT] PASSED
> tests/test_legacy_fonts.py::test_font[LCD_FONT] PASSED
> tests/test_legacy_fonts.py::test_font[UKR_FONT] PASSED
> tests/test_legacy_fonts.py::test_font[TINY_FONT] PASSED
> tests/test_legacy_fonts.py::test_font[SEG7_FONT] PASSED
> tests/test_lib.py::test_rpio_gpio PASSED
> tests/test_lib.py::test_spidev PASSED
> tests/test_lib.py::test_multi PASSED
> tests/test_linux_framebuffer_device.py::test_display_id_as_dev_fb_number 
> SKIPPED
> tests/test_linux_framebuffer_device.py::test_display_id_from_environ PASSED
> tests/test_linux_framebuffer_device.py::test_unknown_display_id PASSED
> tests/test_linux_framebuffer_device.py::test_read_screen_resolution PASSED
> tests/test_linux_framebuffer_device.py::test_read_bits_per_pixel PASSED
> tests/test_linux_framebuffer_device.py::test_display[16-False] SKIPPED
> tests/test_linux_framebuffer_device.py::test_display[24-False] SKIPPED
> tests/test_linux_framebuffer_device.py::test_display[24-True] SKIPPED
> tests/test_linux_framebuffer_device.py::test_display[32-False] SKIPPED
> tests/test_linux_framebuffer_device.py::test_display[32-True] SKIPPED
> tests/test_linux_framebuffer_device.py::test_unsupported_bit_depth PASSED
> tests/test_linux_framebuffer_device.py::test_cleanup PASSED
> tests/test_mixin.py::test_display_not_implemented PASSED
> tests/test_observable.py::test_length PASSED
> tests/test_observable.py::test_iteration PASSED
> tests/test_observable.py::test_getattribute PASSED
> tests/test_observable.py::test_getitem PASSED
> tests/test_observable.py::test_setitem PASSED
> tests/test_observable.py::test_setslice PASSED
> tests/test_observable.py::test_delitem PASSED
> tests/test_observable.py::test_getslice PASSED
> tests/test_observable.py::test_repr PASSED
> tests/test_parallel.py::test_data PASSED
> tests/test_parallel.py::test_wrong_number_of_pins PASSED
> tests/test_parallel.py::test_cleanup PASSED
> tests/test_parallel.py::test_unsupported_gpio_platform SKIPPED (RPi....)
> tests/test_parallel_device.py::test_4bit PASSED
> tests/test_parallel_device.py::test_8bit PASSED
> tests/test_pcf8574.py::test_command PASSED
> tests/test_pcf8574.py::test_i2c_command_device_not_found_error PASSED
> tests/test_pcf8574.py::test_i2c_data PASSED
> tests/test_pcf8574.py::test_cleanup PASSED
> tests/test_persist.py::test_persist PASSED
> tests/test_proportional.py::test_narrow_char PASSED
> tests/test_proportional.py::test_wide_char PASSED
> tests/test_proportional.py::test_space_char PASSED
> tests/test_proportional.py::test_doublequote_char PASSED
> tests/test_proportional.py::test_trim_not_nonzero PASSED
> tests/test_proportional.py::test_unicode_not_supported PASSED
> tests/test_sevensegment.py::test_init PASSED
> tests/test_sevensegment.py::test_overflow PASSED
> tests/test_sevensegment.py::test_setter_getter PASSED
> tests/test_spi.py::test_init PASSED
> tests/test_spi.py::test_init_invalid_bus_speed PASSED
> tests/test_spi.py::test_command PASSED
> tests/test_spi.py::test_data PASSED
> tests/test_spi.py::test_cleanup PASSED
> tests/test_spi.py::test_init_device_not_found SKIPPED (spidev is not...)
> tests/test_spi.py::test_unsupported_gpio_platform SKIPPED (RPi.GPIO ...)
> tests/test_spi.py::test_cs_high_ignored PASSED
> tests/test_spritesheet.py::test_init PASSED
> tests/test_spritesheet.py::test_len PASSED
> tests/test_spritesheet.py::test_caching PASSED
> tests/test_spritesheet.py::test_get PASSED
> tests/test_spritesheet.py::test_get_string PASSED
> tests/test_spritesheet.py::test_get_outofrange PASSED
> tests/test_spritesheet.py::test_animate_unknown_seq PASSED
> tests/test_spritesheet.py::test_animate_finite_seq PASSED
> tests/test_spritesheet.py::test_animate_slow_seq PASSED
> tests/test_spritesheet.py::test_animate_infinite_seq PASSED
> tests/test_spritesheet.py::test_animate_subroutine PASSED
> tests/test_terminal.py::test_default_text PASSED
> tests/test_terminal.py::test_wrapped_text PASSED
> tests/test_terminal.py::test_tab_alignment PASSED
> tests/test_terminal.py::test_control_chars PASSED
> tests/test_terminal.py::test_scrolling PASSED
> tests/test_terminal.py::test_alt_colors PASSED
> tests/test_terminal.py::test_ansi_colors PASSED
> tests/test_terminal.py::test_ansi_colors_wrapped PASSED
> tests/test_terminal.py::test_ansi_colors_scroll PASSED
> tests/test_terminal.py::test_accented_charset SKIPPED
> tests/test_tolerant.py::test_default PASSED
> tests/test_tolerant.py::test_custom_missing PASSED
> tests/test_tolerant.py::test_with_proportional PASSED
> tests/test_util.py::test_mutablestring PASSED
> tests/test_util.py::test_mutablestring_unicode PASSED
> tests/test_util.py::test_from_16_to_8_to_16 PASSED
> tests/test_util.py::test_bytes_to_nibbles PASSED
> tests/test_viewport.py::test_range_overlap_over12 PASSED
> tests/test_viewport.py::test_range_overlap_over123 PASSED
> tests/test_viewport.py::test_range_overlap_over23 PASSED
> tests/test_viewport.py::test_range_overlap_over234 PASSED
> tests/test_viewport.py::test_range_overlap_over34 PASSED
> tests/test_viewport.py::test_range_overlap_over4 PASSED
> tests/test_viewport.py::test_range_overlap_over_none PASSED
> tests/test_viewport.py::test_snapshot_last_updated PASSED
> tests/test_viewport.py::test_viewport_set_position PASSED
> tests/test_viewport.py::test_viewport_hotspot PASSED
> tests/test_viewport.py::test_viewport_dithering PASSED
> 
> =================================== FAILURES 
> ===================================
> _____________________ test_load_sprite_table_exceptions_1 
> ______________________
> 
>     def test_load_sprite_table_exceptions_1():
>         """
>         Test that exceptions are thrown as appropriate if bitmap_font is 
> asked to
>         load from a sprite table from a filename that does not exist, is not a
>         PIL.Image file, or is damaged.
>         """
>         with pytest.raises(FileNotFoundError) as ex:
>             filename = 'badfile'
>             bitmap_font.load_sprite_table(filename, range(16, 256), 5, (5, 
> 8), (5, 8), FONTDATA['mappings'][1])
> >       assert ex.value.filename == filename
> E       AssertionError: assert '/build/luma....build/badfile' == 'badfile'
> E         
> E         - badfile
> E         + /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build/badfile
> 
> tests/test_bitmap_font.py:242: AssertionError
> =========================== short test summary info 
> ============================
> SKIPPED [1] tests/test_bitbang.py:75: RPi.GPIO is not supported on this 
> platform: Linux
> SKIPPED [1] tests/test_bitmap_font.py:152: Skipped
> SKIPPED [1] tests/test_bitmap_font.py:169: Skipped
> SKIPPED [1] tests/test_bitmap_font.py:198: Skipped
> SKIPPED [1] tests/test_bitmap_font.py:219: Skipped
> SKIPPED [1] tests/test_bitmap_font.py:246: Skipped
> SKIPPED [1] tests/test_bitmap_font.py:262: Skipped
> SKIPPED [1] tests/test_character.py:16: Skipped
> SKIPPED [1] tests/test_character.py:25: Skipped
> SKIPPED [1] tests/test_cmdline.py:192: RPi.GPIO is not supported on this 
> platform: Linux
> SKIPPED [1] tests/test_cmdline.py:212: RPi.GPIO is not supported on this 
> platform: Linux
> SKIPPED [1] tests/test_cmdline.py:233: spidev is not supported on this 
> platform: Linux
> SKIPPED [1] tests/test_cmdline.py:248: RPi.GPIO is not supported on this 
> platform: Linux
> SKIPPED [1] tests/test_cmdline.py:283: RPi.GPIO is not supported on this 
> platform: Linux
> SKIPPED [1] tests/test_cmdline.py:342: RPi.GPIO is not supported on this 
> platform: Linux
> SKIPPED [2] tests/helpers.py:66: spidev is not supported on this platform: 
> Linux
> SKIPPED [1] tests/test_gpio_cs_spi.py:104: RPi.GPIO is not supported on this 
> platform: Linux
> SKIPPED [1] tests/test_linux_framebuffer_device.py:35: Skipped
> SKIPPED [5] tests/test_linux_framebuffer_device.py:83: Skipped
> SKIPPED [1] tests/test_parallel.py:83: RPi.GPIO is not supported on this 
> platform: Linux
> SKIPPED [1] tests/test_spi.py:103: RPi.GPIO is not supported on this 
> platform: Linux
> SKIPPED [1] tests/test_terminal.py:138: Skipped
> ================== 1 failed, 182 passed, 27 skipped in 6.28s 
> ===================
> E: pybuild pybuild:389: test: plugin distutils failed with: exit code=1: cd 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_luma.core/build; python3.11 -m pytest 
> tests
> dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.11 
> returned exit code 13


The full build log is available from:
http://qa-logs.debian.net/2024/04/20/luma.core_2.4.1-2_unstable-arm64.log

All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20240420;users=lu...@debian.org
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20240420&fusertaguser=lu...@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

If you reassign this bug to another package, please mark it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects

If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.

Reply via email to