Source: pygame
Version: 2.6.1-3
Severity: normal
Tags: ftbfs forky sid
User: [email protected]
Usertags: ftbfs
Forwarded: https://github.com/pygame/pygame/pull/4497

sdl2-compat is a reimplementation of the SDL 2 API using SDL 3. 
It can be tested by installing the libsdl2-compat-shim and 
libsdl2-compat-dev packages from testing/unstable, or by installing the 
libsdl2-2.0-0 and libsdl2-dev packages built by src:sdl2-compat in 
experimental.

After discussion with SDL upstream, I'm looking into what needs to 
happen for Debian (and indirectly Ubuntu) to replace "classic" SDL2 
(src:libsdl2) with sdl2-compat, following in the footsteps of other 
distros like Arch and Fedora that have already done this transition.

pygame failed to build from source with libsdl2-dev provided by 
src:sdl2-compat, with unit test failures related to RLE-encoded images 
(log output with Python 3.14.x below, the same 8 failures are seen with 
Python 3.13.x).

It is not yet clear to me whether this is an intentional behaviour 
change in sdl2-compat combined with pygame being too strict in its 
expectations, or whether this is an unintended regression in 
sdl2-compat.

See also https://github.com/pygame/pygame/pull/4497 upstream.

    smcv

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

======================================================================
FAIL: test_copy_rle (pygame.tests.surface_test.SurfaceTypeTest.test_copy_rle)
Test copying a surface set to use run length encoding
----------------------------------------------------------------------
Traceback (most recent call last):
  File 
"/build/reproducible-path/pygame-2.6.1/.pybuild/cpython3_3.14_pygame/build/pygame/tests/surface_test.py",
 line 284, in test_copy_rle
    self.assertTrue(s1.get_flags() & pygame.RLEACCELOK)
    ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: 0 is not true

======================================================================
FAIL: test_fill_rle (pygame.tests.surface_test.SurfaceTypeTest.test_fill_rle)
Test RLEACCEL flag with fill()
----------------------------------------------------------------------
Traceback (most recent call last):
  File 
"/build/reproducible-path/pygame-2.6.1/.pybuild/cpython3_3.14_pygame/build/pygame/tests/surface_test.py",
 line 250, in test_fill_rle
    self.assertTrue(blit_surf.get_flags() & pygame.RLEACCELOK)
    ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: 0 is not true

======================================================================
FAIL: test_mustlock_rle 
(pygame.tests.surface_test.SurfaceTypeTest.test_mustlock_rle)
Test RLEACCEL flag with mustlock()
----------------------------------------------------------------------
Traceback (most recent call last):
  File 
"/build/reproducible-path/pygame-2.6.1/.pybuild/cpython3_3.14_pygame/build/pygame/tests/surface_test.py",
 line 263, in test_mustlock_rle
    self.assertTrue(blit_surf.get_flags() & pygame.RLEACCELOK)
    ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: 0 is not true

======================================================================
FAIL: test_mustlock_surf_alpha_rle 
(pygame.tests.surface_test.SurfaceTypeTest.test_mustlock_surf_alpha_rle)
Test RLEACCEL flag with mustlock() on a surface
----------------------------------------------------------------------
Traceback (most recent call last):
  File 
"/build/reproducible-path/pygame-2.6.1/.pybuild/cpython3_3.14_pygame/build/pygame/tests/surface_test.py",
 line 274, in test_mustlock_surf_alpha_rle
    self.assertTrue(blit_surf.get_flags() & pygame.RLEACCELOK)
    ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: 0 is not true

======================================================================
FAIL: test_set_alpha__set_colorkey_rle 
(pygame.tests.surface_test.SurfaceTypeTest.test_set_alpha__set_colorkey_rle)
----------------------------------------------------------------------
Traceback (most recent call last):
  File 
"/build/reproducible-path/pygame-2.6.1/.pybuild/cpython3_3.14_pygame/build/pygame/tests/surface_test.py",
 line 403, in test_set_alpha__set_colorkey_rle
    self.assertAlmostEqual(sample_pixel_rle.r, sample_pixel_no_rle.r, delta=2)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: 165 != 194 within 2 delta (29 difference)

======================================================================
FAIL: test_solarwolf_rle_usage 
(pygame.tests.surface_test.SurfaceTypeTest.test_solarwolf_rle_usage)
Test for error/crash when calling set_colorkey() followed
----------------------------------------------------------------------
Traceback (most recent call last):
  File 
"/build/reproducible-path/pygame-2.6.1/.pybuild/cpython3_3.14_pygame/build/pygame/tests/surface_test.py",
 line 342, in test_solarwolf_rle_usage
    self.assertTrue(image.get_flags() & pygame.RLEACCELOK)
    ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: 0 is not true

======================================================================
FAIL: test_solarwolf_rle_usage_2 
(pygame.tests.surface_test.SurfaceTypeTest.test_solarwolf_rle_usage_2)
Test for RLE status after setting alpha
----------------------------------------------------------------------
Traceback (most recent call last):
  File 
"/build/reproducible-path/pygame-2.6.1/.pybuild/cpython3_3.14_pygame/build/pygame/tests/surface_test.py",
 line 363, in test_solarwolf_rle_usage_2
    self.assertTrue(image.get_flags() & pygame.RLEACCELOK)
    ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: 0 is not true

======================================================================
FAIL: test_subsurface_rle2 
(pygame.tests.surface_test.SurfaceTypeTest.test_subsurface_rle2)
Ensure an RLE sub-surface works independently of its parent.
----------------------------------------------------------------------
Traceback (most recent call last):
  File 
"/build/reproducible-path/pygame-2.6.1/.pybuild/cpython3_3.14_pygame/build/pygame/tests/surface_test.py",
 line 318, in test_subsurface_rle2
    self.assertTrue(s1.get_flags() & pygame.RLEACCELOK)
    ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: 0 is not true

----------------------------------------------------------------------
Ran 130 tests in 1.768s

FAILED (failures=8, skipped=6)

Reply via email to