Hi all, This is the official release for weston 12.0.0.
Highlights for this release: - backend-drm: multiple GPU support, by using --additional-devices to specify secondary DRM devices, in the form of a comma-separated list of devices. Inteded as separated output devices (KMS), not as render devices - backend-drm: add support for HDMI content type: graphics, photo, cinema and game. - backend-drm: Added support for tearing-control protocol - backend-drm: Added plane rotation property and make use of when possible - backend-drm: Added supported formats for writeback connectors, and with it a writeback screen shooter - backend-drm: Added plane alpha DRM-property - backend-drm: use libdisplay-info as a better alternative for parsing EDID - backed-vnc: a new backend similar to backend-rpd, based on aml and neatvnc, with TLS support and user authentication. Both aml and neatvnc are set-up as subprojects - backend-pipewire: added PipeWire backend - backend-wayland: allow resizing with xdg-shell - backend-rdp: preliminary rdp multi-head support (and many other bug-fixes in-between) - backend-headless: added output decorations for testing out the color-lcms plugin. - launcher-logind has been deprecated and disabled by default. As launcher-libseat supports logind, this shouldn't cause any regressions - libweston/desktop (formally libweston-desktop) would take into account client pending state, when there's no buffer attached. Useful in situations where the clients would like to start from the beginning in a maximized/fullscreen state - protocol: new screenshooter protocol: weston-output-capture. This new protocol is as a Weston public extension. The older weston-screenshooter protocol has been removed. - xwayland: multiple fixes related to seat handling, selection and window state modifications - xwayland: Add support for xwayland_shell_v1 protocol - libweston: Add user authentication support via PAM - libweston: update wl_output to version 4, to also include name and description events. - compositor: added a short-form for loading backends -- this allows the use of "--backend=headless" instead of "--backend=headless-backend.so". Short-form for shells was also added: pass "--shell=foo", rather than "--shell=foo-shell.so". Renderers can be specified the same, by using "--renderer=gl|pixman" Backwards compatible with the older form still supported. - clients/simple-egl: Dropped Y_INVERT linux-dmabuf flag. In order to keep the same orientation we had with that flag the client is now rendered up-side down (explicitly) - clients/simple-egl: Implement fractional-scale protocol support - clients/simple-egl: adds a vertical bar drawing mode, if started with -v, for testing out tearing - simple-dmabuf-v4l: Add support to NV12 devices that combine planes - ivi-shell: activate keyboard focus for xdg-shell surface, similar to how we handle keyboard input activation in desktop-shell and kiosk-shell. A few more updates have landed, as well as bug-fixes. Includes additional signal event handling (output creation and destruction) but also specific signals for controller destruction. Added input panel support - many more bug-fixes across the board: desktop-shell, kiosk-shell, DRM virtual API (remoting/pipewire plugins) and screen-share module Internal changes: - backend-drm: avoid doing a modeset if max_bpc connector property is set, while the output is set to current - Pixman/GL renderer and x11, rdp, wayland backends: the Pixman and GL renderer now supports resizing its shadow buffer, and with it the rdp, x11 and wayland backends now make use of it - color-lcms: improvements in color transformation precision and performance API changes: - weston_log_paced() has been added which can help out to throttle messages - added weston_shell_utils namespace: common shell-utils API which can be reused by other shell clients. desktop-shell/kiosk-shell has been using these for some time, but it wasn't part of libweston until now - make weston_head_set_device_changed() public - introduction of weston_coord_surface_to_global(), weston_coord_global_to_surface(), weston_coord_surface_to_buffer(), weston_coord_global_from_output_point() and weston_matrix_transform_coord(). These are a family of coordinate vector structures for coordinate pairs. These have been extensively used in all compositor code and in libweston, together with the introduction of weston_coord - added weston_surface_is_unmapping() for cases where the client is attaching an empty buffer (after having a previously valid one). This would also cause libweston/desktop to emit a weston_desktop_api_committed() call that can be handled by a shell client implementing weston_desktop_api - added weston_output_power_on() and its counter-part weston_output_power_off() in order to handle multiple weston_output independently using their power state (DPMS on/off) Breaking changes for users: - libweston-desktop DSO has been incorporated into libweston. Linking now with libweston would provide access to the former libweston-desktop library. Users of libweston-desktop would need to adjust their headers to <libweston/desktop.h> rather than using <libweston-desktop/libweston-desktop.h>. Otherwise, the API itself remains the same - ivi-layout: simplify API - all struct ivi_layout_interface function pointers have their return values removed Marius Vlad (1): build: bump to version 12.0.0 for the official release git tag: 12.0.0 https://gitlab.freedesktop.org/wayland/weston/-/releases/12.0.0/downloads/weston-12.0.0.tar.xz SHA256: 91853c86472cc1311465d29cda5abbe987aff01af53a4406c4513b7a023aba8b weston-12.0.0.tar.xz SHA512: a3079be86e173ea3a216cf9c30738097fcf5e1b7c2de4c413a0fd4eb9f28d97fa4e378359a3f59485d282f9b2d7914584d0497a3436d4c3f22bc9bebf9733157 weston-12.0.0.tar.xz PGP: https://gitlab.freedesktop.org/wayland/weston/-/releases/12.0.0/downloads/weston-12.0.0.tar.xz.sig
signature.asc
Description: PGP signature