[bug] Integration tests started failing
See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1077416 for the full log. All integration tests started failing; they passed before. I will look into this but would appreciate some pointers
libwayland changed its logging format: https://gitlab.freedesktop.org/wayland/wayland/-/merge_requests/319
https://github.com/wmww/gtk4-layer-shell/blob/a689a399d37d174f2e93442e3adc931a9d8dee90/test/run-integration-test.py#L227
E.g. something like and ('@' in line or '#' in line) should fix it and support earlier and newer versions of libwayland.
thanks, this fixed all tests except one:
test: integration-test-menu-popup
start time: 14:22:06
duration: 1.23s
result: exit status 1
command: MSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1 MALLOC_PERTURB_=231 ASAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1 GTK4_LAYER_SHELL_BUILD=/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu MESON_TEST_ITERATION=1 UBSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1 /usr/bin/python3 /<<PKGBUILDDIR>>/test/run-integration-test.py /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/test/test-menu-popup
----------------------------------- stdout -----------------------------------
╭─────────────────┤ test-menu-popup stderr ├─────────────────┈
│ EXPECT: wl_display .get_registry
│ [4017835.368] {Default Queue} -> wl_display#1.get_registry(new id wl_registry#2)
│ [4017835.376] {Default Queue} -> wl_display#1.sync(new id wl_callback#3)
│ [4017835.545] {Display Queue} wl_display#1.delete_id(3)
│ [4017835.564] {Default Queue} wl_registry#2.global(1, "wl_seat", 6)
│ [4017835.569] {Default Queue} wl_registry#2.global(2, "wl_output", 2)
│ [4017835.573] {Default Queue} -> wl_registry#2.bind(2, "wl_output", 2, new id [unknown]#4)
│ [4017835.606] {Default Queue} -> wl_display#1.sync(new id wl_callback#5)
│ [4017835.609] {Default Queue} wl_registry#2.global(3, "wl_shm", 1)
│ [4017835.611] {Default Queue} -> wl_registry#2.bind(3, "wl_shm", 1, new id [unknown]#6)
│ [4017835.614] {Default Queue} wl_registry#2.global(4, "wl_data_device_manager", 2)
│ [4017835.616] {Default Queue} -> wl_registry#2.bind(4, "wl_data_device_manager", 2, new id [unknown]#7)
│ [4017835.618] {Default Queue} wl_registry#2.global(5, "wl_compositor", 4)
│ [4017835.620] {Default Queue} -> wl_registry#2.bind(5, "wl_compositor", 4, new id [unknown]#8)
│ [4017835.622] {Default Queue} wl_registry#2.global(6, "wl_subcompositor", 1)
│ [4017835.624] {Default Queue} -> wl_registry#2.bind(6, "wl_subcompositor", 1, new id [unknown]#9)
│ [4017835.627] {Default Queue} wl_registry#2.global(7, "xdg_wm_base", 2)
│ [4017835.628] {Default Queue} wl_registry#2.global(8, "zwlr_layer_shell_v1", 4)
│ [4017835.631] {Default Queue} wl_callback#3.done(0)
│ [4017835.676] {Default Queue} -> wl_shm#6.create_pool(new id wl_shm_pool#3, fd 7, 4096)
│ [4017835.680] {Default Queue} -> wl_registry#2.bind(1, "wl_seat", 6, new id [unknown]#10)
│ [4017838.025] {Default Queue} -> wl_data_device_manager#7.get_data_device(new id wl_data_device#11, wl_seat#10)
│ [4017838.056] {Default Queue} -> wl_compositor#8.create_surface(new id wl_surface#12)
│ [4017838.061] {Default Queue} -> wl_display#1.sync(new id wl_callback#13)
│ [4017838.225] {Display Queue} wl_display#1.delete_id(5)
│ [4017838.230] {Display Queue} wl_display#1.delete_id(13)
│ [4017838.232] {Default Queue} wl_output#4.done()
│ [4017838.243] {Default Queue} wl_callback#5.done(0)
│ [4017838.248] {Default Queue} wl_seat#10.capabilities(3)
│ [4017838.251] {Default Queue} -> wl_seat#10.get_pointer(new id wl_pointer#5)
│ [4017838.258] {Default Queue} -> wl_seat#10.get_keyboard(new id wl_keyboard#14)
│ [4017838.262] {Default Queue} wl_callback#13.done(0)
│ [4017838.265] {Default Queue} -> wl_registry#2.bind(7, "xdg_wm_base", 2, new id [unknown]#13)
│ CHECK EXPECTATIONS COMPLETED
│ EXPECT: zwlr_layer_shell_v1 .get_layer_surface
│
│ (process:947): Gtk-WARNING **: 14:22:06.747: Unable to acquire session bus: Failed to execute child process “dbus-launch” (No such file or directory)
│ [4017854.102] {Default Queue} -> wl_display#1.get_registry(new id wl_registry#15)
│ [4017854.116] {Default Queue} -> wl_display#1.sync(new id wl_callback#16)
│ [4017854.276] {Display Queue} wl_display#1.delete_id(16)
│ [4017854.285] {Default Queue} wl_registry#15.global(1, "wl_seat", 6)
│ [4017854.288] {Default Queue} wl_registry#15.global(2, "wl_output", 2)
│ [4017854.290] {Default Queue} wl_registry#15.global(3, "wl_shm", 1)
│ [4017854.293] {Default Queue} wl_registry#15.global(4, "wl_data_device_manager", 2)
│ [4017854.294] {Default Queue} wl_registry#15.global(5, "wl_compositor", 4)
│ [4017854.296] {Default Queue} wl_registry#15.global(6, "wl_subcompositor", 1)
│ [4017854.299] {Default Queue} wl_registry#15.global(7, "xdg_wm_base", 2)
│ [4017854.301] {Default Queue} wl_registry#15.global(8, "zwlr_layer_shell_v1", 4)
│ [4017854.303] {Default Queue} -> wl_registry#15.bind(8, "zwlr_layer_shell_v1", 4, new id [unknown]#17)
│ [4017854.307] {Default Queue} wl_callback#16.done(0)
│ [4017854.488] {Default Queue} -> wl_compositor#8.create_surface(new id wl_surface#16)
│ [4017855.671] -> wl_display#1.get_registry(new id wl_registry#18)
│ [4017855.682] -> wl_display#1.sync(new id wl_callback#19)
│ [4017855.779] {Display Queue} wl_display#1.delete_id(19)
│ [4017855.795] wl_registry#18.global(1, "wl_seat", 6)
│ [4017855.798] wl_registry#18.global(2, "wl_output", 2)
│ [4017855.800] wl_registry#18.global(3, "wl_shm", 1)
│ [4017855.801] wl_registry#18.global(4, "wl_data_device_manager", 2)
│ [4017855.803] wl_registry#18.global(5, "wl_compositor", 4)
│ [4017855.805] wl_registry#18.global(6, "wl_subcompositor", 1)
│ [4017855.806] wl_registry#18.global(7, "xdg_wm_base", 2)
│ [4017855.808] wl_registry#18.global(8, "zwlr_layer_shell_v1", 4)
│ [4017855.809] wl_callback#19.done(0)
│ [4017855.812] -> wl_display#1.sync(new id wl_callback#19)
│ [4017855.867] {Display Queue} wl_display#1.delete_id(19)
│ [4017855.870] wl_callback#19.done(0)
│ [4017855.881] -> wl_display#1.get_registry(new id wl_registry#19)
│ [4017855.885] -> wl_display#1.sync(new id wl_callback#20)
│ [4017855.989] {Display Queue} wl_display#1.delete_id(20)
│ [4017855.998] wl_registry#19.global(1, "wl_seat", 6)
│ [4017856.001] wl_registry#19.global(2, "wl_output", 2)
│ [4017856.004] wl_registry#19.global(3, "wl_shm", 1)
│ [4017856.007] -> wl_registry#19.bind(3, "wl_shm", 1, new id [unknown]#21)
│ [4017856.010] wl_registry#19.global(4, "wl_data_device_manager", 2)
│ [4017856.013] wl_registry#19.global(5, "wl_compositor", 4)
│ [4017856.015] wl_registry#19.global(6, "wl_subcompositor", 1)
│ [4017856.017] wl_registry#19.global(7, "xdg_wm_base", 2)
│ [4017856.019] wl_registry#19.global(8, "zwlr_layer_shell_v1", 4)
│ [4017856.021] wl_callback#20.done(0)
│ [4017856.024] -> wl_display#1.sync(new id wl_callback#20)
│ [4017856.072] {Display Queue} wl_display#1.delete_id(20)
│ [4017856.080] wl_callback#20.done(0)
│ [4017856.089] -> wl_display#1.get_registry(new id wl_registry#20)
│ [4017856.095] -> wl_display#1.sync(new id wl_callback#22)
│ [4017856.145] {Display Queue} wl_display#1.delete_id(22)
│ [4017856.149] wl_registry#20.global(1, "wl_seat", 6)
│ [4017856.153] wl_registry#20.global(2, "wl_output", 2)
│ [4017856.157] wl_registry#20.global(3, "wl_shm", 1)
│ [4017856.161] -> wl_registry#20.bind(3, "wl_shm", 1, new id [unknown]#23)
│ [4017856.165] wl_registry#20.global(4, "wl_data_device_manager", 2)
│ [4017856.168] wl_registry#20.global(5, "wl_compositor", 4)
│ [4017856.171] wl_registry#20.global(6, "wl_subcompositor", 1)
│ [4017856.173] wl_registry#20.global(7, "xdg_wm_base", 2)
│ [4017856.177] wl_registry#20.global(8, "zwlr_layer_shell_v1", 4)
│ [4017856.179] wl_callback#22.done(0)
│ [4017856.183] -> wl_display#1.sync(new id wl_callback#22)
│ [4017856.209] {Display Queue} wl_display#1.delete_id(22)
│ [4017856.213] wl_callback#22.done(0)
│ Gsk-Message: 14:22:06.753: Failed to realize renderer of type 'GskNglRenderer' for surface 'GdkWaylandToplevel': Could not initialize EGL display
│
│ Gsk-Message: 14:22:06.753: Failed to realize renderer of type 'GskGLRenderer' for surface 'GdkWaylandToplevel': Could not initialize EGL display
│
│ Gsk-Message: 14:22:06.754: Failed to realize renderer of type 'GskVulkanRenderer' for surface 'GdkWaylandToplevel': Could not create a Vulkan instance: The requested version of Vulkan is not supported by the driver or is otherwise incompatible for implementation-specific reasons. (VK_ERROR_INCOMPATIBLE_DRIVER)
Any idea who the culprit might be here ?
No, not sure. It binds the layershell global but I don't see any follow-up requests on object id 17.
│ [4017854.303] {Default Queue} -> wl_registry#15.bind(8, "zwlr_layer_shell_v1", 4, new id [unknown]#17)
@Consolatis thanks for your help. I will skip this test then and create a MR for the other tests