Hi all, This is the alpha release for Weston 13.0.0.
Notes for packagers: - backend-vnc requires Neat VNC 0.7.0 - launcher-logind has been removed Thanks to all contributors! Full history commit below: Alexandros Frantzis (3): xwayland: Allow shells to make xwayland surfaces fullscreen xwayland: Notify the shell when a window drops the fullscreen state desktop-shell: Don't process surfaces under destruction during output resize Brendan King (1): xwayland: fix segfault when running x11perf Christopher Obbard (2): libweston: Decouple dbus helper to public namespace libweston: Split dbus support into seperate build option Daniel Stone (153): CI: Upgrade ci-templates version CI: Parameterise LLVM version CI: Rename debian jobs to debian-lts CI: Force pip to install packages CI: Bump virtme snapshot version CI: Upgrade Mesa and kernel CI: Add Debian bookworm jobs CI: Require wayland 1.22 for wl_client_add_destroy_late_listener frontend: Move path into weston_process frontend: Remove process_info frontend: Rename weston_process to wet_process frontend: Inline wet_watch_process frontend: Rename weston_client_start to wet_client_start frontend: Add data argument to wet_process cleanup frontend: Allow NULL wet_process cleanup handler frontend: Allocate new wet_process for Xwayland frontend: Make wet_client_launch allocate new wet_process frontend: Inline process_handle_sigchld frontend: Factor out wet_process_destroy xwayland: Only pass Xwayland wl_client to libweston tests/xwayland: Ensure $DISPLAY is correctly set xwayland: Remove process exit status from libweston API xwayland: Rename destroy_listener to be more explicit xwayland: Add client destroy listener frontend: Return user-data pointer from Xwayland init frontend: Explicitly destroy Xwayland from frontend code frontend: Clean up wet_processes on exit libweston: Add weston_compositor.shutting_down backend-drm: Use weston_compositor.shutting_down desktop-shell: Don't restart client on exit text-backend: Don't restart client on exit backend-drm: Don't leak writeback-format property blob tests/drm: Fix leaks in drm-writeback-screenshot-test CI: Enable ASan memory-leak checking surface: Convert a couple of ints to bools surface: Move presentation-feedback discard to commit surface: Start tracking weston_surface_status surface: Only rebuild paint node regions when necessary surface: Convert a couple of bools to dirty flags surface: Inline buffer-size calculation to attach surface: Pass weston_surface_state into attach build: Switch join_paths(foo, bar) to foo / bar build: Run tests with leak-sanitizer suppressions CI: Remove per-test-asan wrapper weston_surface: Add map and unmap signals desktop-shell: shell_surfaces always have a layer desktop-shell: Actually dirty surface regions when moving desktop-shell: Don't damage unmapped views desktop-shell: Make view mapping more consistent desktop-shell: Centralise view mapping for shell_surfaces weston-desktop: Match desktop-shell view mapping semantics libweston: Add weston_view::map_signal desktop-shell: Use weston_view_move_to_layer() for fullscreen switching desktop-shell: Use weston_view_move_to_layer() for fullscreen fades desktop-shell: Use weston_view_move_to_layer() for per-view unfade desktop-shell: Create fade-out views at destroy time desktop-shell: Use weston_view_move_to_layer() for fullscreen background desktop-shell: Use weston_view_move_to_layer() for static views desktop-shell: Use weston_view_to_layer() for lock surface desktop-shell: Be more precise with rotation damage kiosk-shell: Use weston_view_move_to_layer() for activation kiosk-shell: Use weston_view_move_to_layer() for background kiosk-shell: Use weston_view_move_to_layer() for view activation fullscreen-shell: Use weston_view_move_to_layer() weston-test-desktop-shell: Use weston_view_move_to_layer() build: Avoid Meson warning for run_command() without check tests: Remove single case for device destroy test tests: Pass wet_testsuite_data to test runs tests: Track weston_outputs in weston-test plugin tests: Add client<->compositor breakpoint support tests: Add paint-node test tests: Initialise breakpoint list for all test types desktop-shell: Remove unused fullscreen transform surface: Only rebuild surface size where necessary surface: Replace newly_attached with weston_surface_status surface: Replace viewport.changed with weston_surface_status surface: Add comments to weston_surface_status member surface: Add position dirty member surface: Require wl_surface.attach for damage processing surface: Flatten apply_buffer_damage() surface: Add buffer-params dirty flag surface: Add input-region dirty flag Split weston_view_create() into public and internal surface: Use parent_view to find subsurface views surface: Unmap subsurface views when parent is unmapped surface: Unmap subsurface views, not surface, on parent destroy surface: No need to unmap views before destroy surface: Add test for recursive subsurface unmapping surface: Ensure view is unmapped before destroy signal view: Update child view transforms from parent surface: Assert unused subsurface views are not mapped surface: Propagate surface status through commit call tree surface: Only rebuild subsurface lists when necessary view: Add weston_view_geometry_dirty_internal() view: Add view_list_needs_rebuild member view: Create subsurface views in weston_view_create() view: Mark view list as dirty when destroying mapped view view: Add weston_view_set_alpha() view: Add weston_view_add_transform and weston_view_remove_transform view: Destroy subsurface views with their parents surface: Create subsurface views when linking surface to parent surface: Don't create new views in view_list_add() surface: Remove weston_subsurface.unused_views tests: Move surface mapping earlier in surface-shell tests: Use weston_view_move_to_layer() tests: Don't remap surfaces with NULL buffer tests: Check that test-surface unmaps on NULL backend-wayland: Free pixel formats on shutdown frontend: Fix build error when Xwayland disabled view: Schedule view repaint when changing properties desktop-shell: Remove unnecessary repaint schedules input: Remove unnecessary repaint schedules animation: Remove unnecessary repaint schedule input: Don't schedule repaints for drag-and-drop desktop-shell: Use weston_view_move_to_layer() for minimised views desktop-shell: Deduplicate center_on_output() in fullscreen desktop-shell: Deduplicate center_on_output() in fullscreen desktop-shell: Use weston_view_move_to_layer() for fullscreen desktop-shell: Assume fullscreen views are mapped desktop-shell: Delete pointless function wrapper desktop-shell: Flatten and rename shell_configure_fullscreen() desktop-shell: Simplify confusing conditional desktop-shell: Remove yet another center_on_output() desktop-shell: Simplify condition for focus change desktop-shell: Use weston_view_move_to_layer for focus animation desktop-shell: Don't set alpha for unused views desktop-shell: Create focus surfaces for animation up front desktop-shell: Clean up animate_focus_change() desktop-shell: Initialise lists earlier desktop-shell: Reject invalid focus types in configuration desktop-shell: Regularise focus_animation_type checks desktop-shell: Don't open-code animate_focus_change() desktop-shell: Remove manual damage for minimised surfaces desktop-shell: Use weston_view_move_to_layer() in switcher surface: Don't re-map already-mapped surfaces surface: Add weston_surface_is_mapping() surface: Check parents in weston_surface_is_mapped() kiosk-shell: Delete nonsensical is_mapped check desktop-shell: Don't lose track of background/panel views desktop-shell: Don't allow multiple special surfaces desktop-shell: Remove useless surface-gone messages desktop-shell: Clean up surface/view mapping for special surfaces desktop-shell: Store pointers to special-surface views desktop-shell: Pass shell_output as special-surface private desktop-shell: Directly look up output panel view desktop-shell: Regularise panel position desktop-shell: Use saved panel position desktop-shell: Inline configure_static_view for background desktop-shell: Inline configure_static_view for panels desktop-shell: Use consistent surface-has-content check for lock desktop-shell: Create lock surface view when mapped desktop-shell: Use weston_view_move_to_layer() for input panels desktop-shell: Map input panel surfaces before views Derek Foreman (80): libweston: use weston_coord for weston_view_set_position libweston: Use weston_coord in struct weston_output libweston: Use weston_coord in struct weston_touch libweston: Add weston_coord_truncate() libweston: Add getters for view position/offset libweston: Add more weston_coord arithmetic helpers desktop-shell: use weston_coord in weston_move_*_grab kiosk-shell: Use weston_coord for grabs desktop-shell: Pass a weston_coord to calc_input_panel_position toy-toolkit: Fix rotations tests: Don't wait for frame callbacks when a surface is on no outputs data-device: Don't make a weston_coord with no valid space libweston: Build z_order_list after view_list libweston: Build view list for all outputs at once libweston: Only create paint nodes for the correct output libweston: delete paint nodes on view unmap libweston: Cull paint nodes when their views aren't on their outputs libweston,backends: assert if z_order_list contains pnodes for wrong output libweston: Move output damage subtraction out of backends libweston: Replace weston_output_damage() with a flag libweston: Update paint nodes in weston_output_repaint libweston: Add visible region to weston_view libweston: Separate damage accumulation from visibility calculation libweston: Fix up the paint node status bitfield libweston: Track visibility in paint nodes libweston: Post damage intentionally when remapping a subsurface view libweston: Track plane in paint node instead of view libweston: Track damage on paint nodes instead of planes libweston: Add a paint node content dirty bit libweston: Remove view clip region libweston.h: Move struct weston_plane earlier in the file drm: Don't stack sprite planes above primary on init tests: prevent tests from breaking when they use invalid weston_compositor libweston: have one primary_plane per output drm: allow views on more than one output to be on a plane libweston: Remove overlapping output checks xwayland: Fix assert with some parented windows libweston-desktop: Unset use_geometry when unsetting relative_to xwayland: Use weston_coord desktop-shell: Use weston_coord for configure_static_view libweston: Replace struct_weston_position with weston_coords desktop-shell: store xwayland positions in weston_coord libweston: Remove plane clip paint_node: Fix paint_node_damage_below libweston: Fix "fix paint_node_damage_below" libweston: Delete paint nodes when views change layers libweston: Rebuild view list after adding an output desktop-shell: Remove useless setting of shell_fade output desktop-shell: assert if the shell startup animation type is unsupported desktop-shell: Revert 'Enable per-output fade animations' desktop-shell: Use the combined size of all outputs for the fade curtain desktop-shell: Don't try to notice disappearing outputs during fade clients: Add opaque region setting to simple-damage input: Fix pointer hotspot coordinate space matrix: add weston_coord_surface_invert() libweston: Add weston_view_set_position_with_offset libweston: Use weston_coord for touch interfaces kiosk-shell: Use weston_coord for xwayland window position shells: Use weston_coord for shell API input: Use weston_coord in the cursor confinement code desktop-shell: Use weston_coord for constrain_position shell-utils: Use weston_coord in curtain params launcher: Remove launcher-logind Revert "launcher: Remove launcher-logind" launcher-libseat: Don't depend on dbus launcher-libseat: Rename libseat_dep launcher: Drop drm dependency launcher: Remove launcher-logind libweston: Remove dbus helpers libweston: Use weston_coord_surface in weston_surface_state libweston: Make a common helper for clamping a coord to an output libweston: Make better use of global coord helpers libweston: Add and use weston_coord_surface_add/sub helpers libweston: Consider output power state when selecting primary libweston: Reconsider view primary output on output power change libweston: Prefer primary backend when assigning outputs to views backend-drm: Fix visibility calculation libweston: fix output clamp helper input: avoid crash by using surface directly headless: Enable use as a secondary backend Joshua Watt (1): Check weston_head_from_resource for NULL return Leandro Ribeiro (15): color-lcms: do not repeat call to check if log scope is enabled color-lcms: print curve sets on pipeline optimizer debug scope drm: drop disable_planes being false as a condition to support writeback drm: do not pull writeback task if KMS atomic API is not supported tests: assert that capture info was received before trying screenshot backend-drm: fix possible leak of struct drm_output color-lcms: minor indentation fix to pipeline optimizer debug scope color-lcms: move code that depend on cmsGetToneCurveSegment() to new file color-lcms: drop inverse curve sets in sequence color-lcms: merge power-law curve sets tests: add color pipeline optimizer tests color-lcms: rename curve_set_print() to curveset_print() color-lcms: properly print 16-bit sampled curves color-lcms: increase float precision to print segment breaks linux-dmabuf: replace assert with the new weston-assert Liu, Kai1 (1): xwm: WM_TRANSIENT_FOR should not point to override-redirect window Loïc Molinari (9): gl-renderer: Clip and dispatch vertices in surface coord space gl-renderer: Decouple coord space transformation from clipper gl-renderer: Derive texcoords from position in the vertex shader gl-renderer: Store clipped vertices directly into the vertex buffer gl-renderer: Use simple clipper on translated and/or scaled nodes gl-renderer: Get rid of axis-aligned bbox check in simple clipper gl-renderer: Update HTTP links to vertex clipping resources gl-renderer: Move clip_quad() to clipper gl-renderer: Make clip_transformed() surf parameter constant Loïc Yhuel (3): libweston: Do not include private headers in shell-utils.h gl-renderer: Do not attach the first buffer twice gl-renderer: use correct read-back format and support WL_SHM_FORMAT_ABGR8888 Marek Vasut (1): backend-drm: document additional-devices parameter Marius Vlad (25): meson.build: reopen main for regular development libweston,shared/meson:build Add xkbcommon missing depends tests/meson.build: Add missing dependency for xcb-client-helper meson.build: Bump libweston major version to 13 libweston/weston-log: Add a iterator helper for debug scope libweston/backend-headless: Remove cleanup_after_cairo() gitlab-ci/leak-sanitizer.supp: Suppress entire libfontconfig virtme-scripts: Add LSAN_OPTION desktop-shell: Do another update transform clients/window: Update min_allocation for smaller widths/heights desktop-shell: Use a common helper to handle surface resizes desktop-shell: Keep track of shsurf being created/removed desktop-shell: Handle all other shsurfs backend-drm: Make DRM_CAP_ATOMIC_ASYNC_PAGE_FLIP inert Revert "clients/window: Update min_allocation for smaller widths/heights" backend-drm/meson.build: Require at least mesa 21.1.1 desktop-shell: Don't reposition windows on every resize kiosk-shell: Don't attempt to activate a window kiosk-shell: Make sure we have seat focused_surface backend-wayland: Don't signal out resize events for activation desktop-shell: Branch out the set_maxime/unset_full neatvnc.wrap: Update to neatvnc 0.7.0 compositor/main: Re-work plug-in loading to avoid an invalid color manager compositor/main: put remoting/pipewire outputs to the right build: bump to version 12.0.91 for the alpha release Max Ihlenfeldt (2): gl-renderer: Always initialize variable initialize fourcc with DRM_FORMAT_INVALID Michael Olbrich (2): backend-wayland: fix --fullscreen libweston: don't return buffers early with multiple backends Michael Tretter (9): backend-pipewire: remove duplicate empty line backend-pipewire: remove unused fields from pipewire_frame_data backend-pipewire: move pixman setup into helper functions backend-pipewire: move pixman renderbuffer creation to helper backend-pipewire: add local variables for spa_buffer and data backend-pipewire: make renderer initialization depend on renderer backend-drm: print failing output in error message backend-drm: add config option require-outputs backend-drm: change default for required-outputs to any Pekka Paalanen (8): man: make --wait-for-debugger findable doc: set language for Sphinx build: use project_source_root() build: use full_path() backend-drm,pipewire,remoting: do not set monitor serial to "unknown" libweston: use xstrdup for head strings libweston: set default monitor strings shared: add weston-assert Philipp Zabel (86): gl-renderer: split buffer age query out of output_get_damage gl-renderer: track damage on dummy renderbuffers gl-renderer: remove old damage tracking pixman-renderer: Add to_pixman_renderbuffer helper backend-wayland: fix memory leak in wayland_shm_buffer_attach gl-renderer: add framebuffer object name to gl_renderbuffer pixel-formats: Add gl_internalformat gl-renderer: add FBO output support backend-headless: render to FBO instead of pbuffer gl-renderer: remove backend pbuffer support gl-renderer: remove pbuffer dummy surface renderer-gl: drop unused fields from struct gl_fbo_texture gl-renderer: split gl_renderer_do_read_pixels out of gl_renderer_do_capture gl-renderer: support automatically downloading FBO renderbuffers backend-vnc: GL renderer support backend-pipewire: add GL renderer support backend-wayland: track damage on renderbuffers libweston: damage moved outputs gl-renderer: fix FBO renderbuffer download extents backend-rdp: bring back shadow_surface image backend-rdp: move code to prepare for GL renderer support backend-rdp: add pixel format info array backend-rdp: GL renderer support backend-vnc: use weston_region_global_to_output backend-vnc: render bypass support libweston: prefer active, high refresh rate outputs during surface assignment gl-renderer: clear renderer pointer in gl_renderer_destroy backend-wayland: fix error path in wayland_backend_create libweston: add weston_backend::shutdown callback backend-wayland: use to_wayland_backend libweston: move weston_compositor_shutdown call out of backends doc: Add systemd-notify.so module to systemd unit example libweston: deduplicate compositor shutdown in backend_init failure path backend-x11: Prepare for more renderers, reject no-op backend-wayland: Prepare for more renderers, reject no-op backend-rdp: extract weston_output_set_single_mode() backend-vnc: use weston_output_set_single_mode() frontend: Add tls-cert and tls-key config options man: Document tls-cert and tls-key config options hmi-controller: Do not call hmi_controller_destroy() from _create() libweston: Add output parameter to weston_renderer::flush_damage() renderer-gl: only flush damage for surfaces used in the next output repaint libweston: Document struct weston_mode doc: add workaround for doxygen 1.9.6 bug with cairo >= 1.17.6 ivi-layout: Use weston_view_add/remove_transform() ivi-layout: Use weston_view_set_alpha() ivi-layout: Use weston_view_move_to_layer() ivi-layout: Remove weston_view_schedule_repaint() gl-renderer: Stop reading presentation clock without shaders to time libweston: Set the presentation clock in the compositor libweston: Prepare weston_compositor_backends_loaded for extension libweston: Move color manager fallback into weston_compositor_backends_loaded() helpers: Add an integer division helper that rounds up backend-pipewire: make sure to finish frames with timestamps in the past backend-vnc: make sure to finish frames with timestamps in the past backend-rdp: make sure to finish frames with timestamps in the past backend-x11: fix output repaint timing backend-pipewire, libweston: Extract weston_output_arm_frame_timer() backend-rdp: Use weston_output_arm_frame_timer() backend-vnc: Use weston_output_arm_frame_timer() backend-x11: Use weston_output_arm_frame_timer() backend-pipewire, libweston: Extract weston_output_finish_frame_from_timer() backend-vnc: Use weston_output_finish_frame_from_timer() backend-rdp: Use weston_output_finish_frame_from_timer() backend-x11: Use weston_output_finish_frame_from_timer() libweston: store backends in a list libweston: use weston_compositor::backend_list instead of ::backend libweston: intersect all backends' supported presentation clocks libweston: allow loading multiple backends compositor: per-backend head change listener and output configurator compositor: enable loading multiple backends backend-drm: enable multi-backend support backend-headless: enable multi-backend support backend-pipewire: enable multi-backend support backend-rdp: Enable multi-backend support backend-vnc: enable multi-backend support backend-wayland: multi-backend support backend-x11: enable multi-backend support libweston: drop workaround for multi-backend incapable backends doc, man: document multi-backend support libweston, compositor: let weston_compositor_load_backend return backend libweston: add explicit weston_compositor::primary_backend pointer ci, backend-vnc: update to Neat VNC 0.7.0 backend-vnc: Implement output resizing compositor, backend-vnc: Allow to disable output resizing man: Document VNC output section Robert Mader (6): clients/simple-egl: Use interface name variables clients/simple-dmabuf-v4l: Use interface name variables client/simple-dmabuf-v4l: Add fullscreen support clients/simple-dmabuf-v4l: Add pointer support pixel-formats: Add P010/P012/P016 formats renderer-gl: Add YUV format descriptors for P010/P012/P016 Sergio Gómez (16): libweston/input: Move activation signal logic out of keyboard focus function libweston: Store view instead of surface, and add flags, to activation data libweston: Introduce WESTON_ACTIVATE_FLAG_FULLSCREEN in weston_activate_flag desktop-shell: Check that fullscreen surface actually has a black view desktop-shell: Activate shell surface when client requests fullscreen libweston/input: Use WESTON_ACTIVATE_FLAG_FULLSCREEN in activation logic tests: Add a button binding to weston-test-desktop-shell tests: Add basic testing for pointer constraints protocol clients: Replace 'confine' client to showcase pointer constraints in general kiosk-shell: Introduce surface tree lists to the kiosk shell kiosk-shell: Introduce an "active surface tree" for each kiosk shell output kiosk-shell: Handle relinking of surface trees when setting a parent kiosk-shell: Distinguish between 'destroy_signal' and 'parent_destroy_signal' kiosk-shell: Redesign the function 'find_focus_successor()' kiosk-shell: Set the new active surface tree for inactive focus successor kiosk-shell: Implement new view layer handling logic in surface activation Simon Ser (2): clients/simple-dmabuf-egl: do not block until rendering completes clients/simple-dmabuf-feedback: do not block until rendering completes Tomohito Esaki (9): ivi-layout: add description for layer_add_surface clients/simple-dmabuf-feedback: Drop support libgbm older than 21.1.1 clients/meson.build: Require libgbm 21.1.1 for clients using dmabuf clients/simple-dmabuf-egl: Drop support libgbm older than 21.1.1 drm-backend: Drop support libgbm older than 21.1.1 ivi-shell: Properly handle seat hotplugging ivi-shell: activate desktop surface hmi-controller: activate and deactivate sruface ivi-shell-user-interface: change timing to create the launcher surface marius vlad (1): backend-drm: Use resize_output to allow changing the fb git tag: 12.0.91 https://gitlab.freedesktop.org/wayland/weston/-/releases/12.0.91/downloads/weston-12.0.91.tar.xz SHA256: b2cfacb25fda42c59a99ff658c3e8cee9266249917a0238b7bfaa0be57170fc5 weston-12.0.91.tar.xz SHA512: 8e1ceae599344c305e1b65294403d434c4a6ca740f76bdcc67a9f83afe9d352d75ab9cf8bb5091b889ddece43941adf9c4666767098c4c27cb732f8c7f8f738a weston-12.0.91.tar.xz PGP: https://gitlab.freedesktop.org/wayland/weston/-/releases/12.0.91/downloads/weston-12.0.91.tar.xz.sig
signature.asc
Description: PGP signature