Hi all, This is the alpha release for Weston 15.0.0. Initially scheduled for October, we decided to further postpone it to have some additional time for landing protocols support like like fifo, commit-timing and color-representation.
There's quite a few features being added, and apart from protocol
support and further HDR improvements, Weston 15 comes with an
experimental Vulkan-renderer and a brand new shell -- the lua-shell.
Obviously the list is much longer -- users and maintainers alike are
encouraged to give this try and report back if they have found issues.
Unfortunately not all stuff made it and I've rolled those to Weston 16.
Given the delay and the current holidays I've re-worked the scheduled
for potential release date:
- 12 Jan - Beta
- 19 Jan - RC1
- 26 Jan - (potential) Weston 15 release.
As usual the full changelog is below. Thanks to all who contributed to
this release!
Alexey Yerin (1):
clients: don't redraw on xdg_toplevel.configure
Alyssa Ross (3):
libweston: fix error message for missing PAM
backend-headless: fix undeclared FALSE identifier
frontend: don't require XDG_RUNTIME_DIR
Colin Kinloch (2):
clients/fullscreen: Add option to map window fullscreen
clients/window: Save pending allocation if mapping fullscreen
Daniel Stone (46):
pixel-formats: Add NV15/20/30 YUV 10bpc formats
drm: Remove workaround for ancient Mesa GBM issue
core: Short-circuit assign_outputs() during shutdown
libweston: Remove weston_surface_damage() from view-transform
libweston: Remove weston_surface_damage() from view-alpha update
libweston: Remove weston_surface_damage() from view-layer
desktop-shell: Remove weston_surface_damage() from rotate
desktop-shell: Remove damage for curtain
libweston: Remove weston_surface_damage() from subsurface commit
libweston: Damage outputs for content-protection changes
libweston: Remove weston_surface_damage()
libweston: Remove PAINT_NODE_CONTENT_DIRTY
tests/color: Increase sRGB->BT2020 matrix tolerance
gl-renderer: Resolve open question
gl-renderer: Use buffer colour for readback
gl-renderer: Rename prepare_placeholder to generic solid
buffer: Don't lose direct-display when censoring output
paint-node: Set draw_solid for single-pixel buffers
renderer-gl: Merge solid-buffer and placeholder paths
gl-renderer: Remove copy of buffer colour data
renderer-gl: Move checks into ensure_surface_buffer_is_ready
gl-renderer: Ignore transparent paint nodes
gl-renderer: Move pixman_region_to_egl() up
gl-renderer: Use glClear for solid opaque regions
ci: Quieten seatd output
ci: Retry on spurious failures
tests: Document default refresh-rate value
tests: Set optimal refresh rate for tests
tests: Remove struct buffer len
tests: Use pixman_image_t for get_middle_row()
tests: Use buffer for width/height in color-effects
tests: Remove open-coded fill_image_with_color()
tests: Remove open-coded verify_screen_content()
tests: Support decoration capture for screenshots
tests: Fix screenshot assert
tests: Remove impossible condition
tests: Add helper to create solid-filled buffer
core: Remove flush_damage_for_plane return
core: Don't rebuild view list on surface-local changes
paint-node: Expose weston_paint_node_status
output: Record paint_node_changes during repaint
drm-backend: Add separate type for dmabuf renderbuffers
drm: No longer force the use of the first cursor fb
backend-drm: Deprecate DRM VA-API recorder
screenshooter: Emit warning for output recording
drm-backend: Reuse prior state where possible
David Edmundson (1):
libweston: Send seat name before announcing devices
Deborah Brouwer (8):
gitlab-ci: Remove CONFIG_DRM_KMS_FB_HELPER config
gitlab-ci: Update ci-templates
gitlab-ci: Format gitlab logs for build-deps.sh
gitlab-ci: Move build-and-test script to separate file
gitlab-ci: Format gitlab logs for build-and-test.sh
tests: Use new buffer for second screenshot
gitlab-ci: Bump kernel from 6.3 to 6.14
gitlab-ci: Bump tag to rebuild containers
Derek Foreman (169):
libdisplay-info: Bump wrap version
desktop-shell: Don't try to move parented views on output removal
clients/simple-egl: simplify wait for configure loop
desktop-shell: Don't crash if the output is removed in startup
compositor: Prevent startup crash when hdcp mode is set on display
drm: Fix underlay test
compositor: re-order paint node placeholder checks
desktop-shell: Add a placeholder curtain on new outputs
compositor: Ensure the scene graph isn't empty at repaint
desktop-shell: Make backgrounds fully opaque
desktop-shell: Fix background image
timeline: Make an enum for the timepoint strings
compositor: Refactor assign planes into its own function
libweston: Add support for perfetto profiling
compositor: Add a bunch of arbitrary perfetto trace points
timeline: Add weston_timeline_profiling() and use it
timeline: Add the TL_POINTs into perfetto data
timeline: Post core_flush_damage after clearing damage
timeline: Add flow ids for surfaces
doc: Add some very sparse perfetto documentation
compositor: Drop flow id from weston_view_update_transform
drm-backend: Add Variable Refresh Rate modes
drm-backend: Set VRR_ENABLED property based on output configuration
libweston: Add VRR capabilities
frontend: Enable VRR from the config file
compositor: Try an immediate repaint if VRR enabled
kiosk-shell: Store kiosk_shell_output in kiosk_shell_surface
libweston: Add shell_private data
desktop-shell: Store struct shell_output in internal structs
desktop-shell: Use output shell_private data
compositor: Fix a potential crash at shutdown
kiosk-shell: Fix fullscreen_requests
kiosk-shell: Fix fullscreen_requests
frontend: Fix crash in output resize handler
desktop-shell: Remove weston_view_damage_below from desktop_view_destroy
compositor: Remove weston_view_damage_below calls from update_transform
compositor: Schedule a repaint directly in weston_view_unmap
compositor: Remove weston_view_damage_below from transform add/remove
compositor: Remove weston_view_damage_below()
compositor: Add weston_view_move_before_layer_entry
lua-shell: Add lua-shell
drm: Fix pageflip counter crash when using multiple backends
drm: Improve VRR timing at start of repaint loop
cairo-util: Remove dead code
wayland-backend: Remove unused cairo_device_t
compositor: Don't pass a time to weston_output_repaint()
xwm: Clean up windows so we don't crash when Xwayland crashes
xwm: Add command line option to disable window decor
libweston: Add an output capture task destroy listener
gl-renderer: Move destroy_capture_task
gl-renderer: Listen to capture destroy signals
pipewire: Shoot down unsatisfiable capture tasks
screenshooter: Don't fail the first time an output won't capture
compositor: Make subsurface->synchronized a bool
compositor: Rename weston_surface_commit_state
compositor: rename commit_subsurface_order to apply_subsurface_order
compositor: use early return in set sync/desync
compositor: Create a common path for applying surface state
compositor: track subsurface effective sync status
compositor: remove weston_subsurface_is_synchronized
compositor: Simplify weston_subsurface_commit
compositor: Don't pass parent sync status to subsurface_parent_commit
compositor: Don't check for cached data in synchronized_commit
compositor: drop has_cached_data subsurface bit
compositor: move some prototypes
compositor: Rename parent_commit to parent_apply
compositor: Make subsurface state application order consistent
compositor: Move parent_apply call into weston_surface_apply
compositor: Remove weston_subsurface_synchronized_commit
compositor: rename surface_commit_from_cache to apply_from_cache
compositor: Move cache flush into weston_subsurface_set_synchronized
compositor: Move region_init_infinite to a header
compositor: Make weston_surface_commit handle subsurfaces
compositor: internally export weston_surface_to_subsurface
compositor: Move a bunch of surface state handling stuff to another file
compositor: Move some surface state functions
compositor: Move weston_surface_commit()
compositor: Remove unused forward declaration
compositor: replace surface_state->buffer with a buffer_ref
surface-state: Remove weston_subsurface_apply_from_cache
surface-state: remove more subsurface specific paths
surface-state: refactor weston_surface_commit
drm: Test cursor plane transform when finding plane for view
drm: Replace dead code with an assert in plane transform check paths
drm: Better track plane failure reasons
compositor/drm: Move failure reason stringification into compositor
drm: Dump scene graph at end of repaint instead of beginning
compositor: Dump some paint node info with the scene graph
libweston: Move transform string code into libweston
compositor: Add transforms to scene graph debug dump
compositor: Remove view->visible
compositor: Track DIRTY_POS properly
drm: Fix crash on hardware without cursor planes
drm: Add more failure reasons that we can't use the scanout tranche for
compositor: Fix output reflowing when mirroring is in use
xwm: Fix crash when querying position of XWAYLAND windows
compositor: Move paint node censor into early update
compositor: Remove is_direct from paint node
compositor: Move paint node validation into a function
compositor: refactor out placeholder color setting
compositor: Rework paint node update stages to correct recent bugs
drm-backend/gl-renderer: move fully transparent check into paint node
compositor/drm-backend: Move censor check into paint nodes
compositor: Validate that paint node holes have planes
gl-renderer: Fix clear optimization
compositor: Add some comments to paint node members
frontend: Add support for forcing a color format
backend-drm: Add EDID parsing for 'color format'
desktop-shell: Force scale to 1 for single pixel buffer
compositor: Make convert_size_by_transform_scale static inline
compositor: Validate buffer scale
tests: Add tests for scaled single pixel buffers
compositor: Pass region to paint_node_damage_below()
compositor: turn paint_node->visible_next into visible
compositor: Move visibility update to before assign_planes
compositor: store and use a clipped view in the paint node
compositor: Remove obsolete clip region calculation
compositor: Update view transform when setting surface size
compositor: Better instrument transform updates
tests: Add a semi-transparent single pixel buffer test
gl-renderer: Set texture filters before setting input textures
gl-renderer: split out textured draw setup
gl-renderer: Make prepare_solid_draw stand alone
gl-renderer: Set up solids in config_init
gl-renderer: Fix up solid buffer attachments
compositor: Move dirty buffer handling to paint node early update
compositor: Add a WESTON_PAINT_NODE_BUFFER_PARAMS_DIRTY
compositor/shells: Require shells to flag outputs as ready to allow
repaint
Revert "desktop-shell: Add a placeholder curtain on new outputs"
compositor: Conserve paint nodes that leave outputs
animation: Change how we seed the initial time
compositor: Dispatch feedback for all content updates
compositor: Add flow id into surface state
compositor: Add an explicit latch point
tests: Refactor get_subcompositor
tests: Refactor get_presentation
compositor: move weston_surface_schedule_repaint into surface-state.c
compositor: Push subsurface order application into apply_state
compositor: Track view and surface visibility per output
compositor: Try to remove some unnecessary repaints
compositor: Add a deferred content update framework
tests: Bind the fifo protocol
compositor: Add the fifo-v1 protocol
drm: Add whether planes are enabled or not to the drm output state
drm: Refactor some debug statements
drm: Move enum drm_output_propose_state_mode into internal header
drm/state-propose: Add an invalid state
drm/state-propose: Store the type of proposed state
input: move some pointer functions
input: refactor weston_pointer_move_to
input: Don't refocus clients when pointer moves against boundary
compositor: Update to presentation-timing version 2
backend-drm: More aggressively avoid the stale timestamp workaround
compositor: Track repaint time and expected presentation time
compositor: store frame flags from finish frame
compositor: Rearrange weston_output_finish_frame
compositor: Pull repaint time calculation out of finish_frame
compositor: Don't return repaint times in the past
compositor: Improve VRR timings
compositor: Improve timing information in scene graph dump
compositor: Directly use a timerfd instead of a wl_event_source
compositor: Upgrade repaint timer precision to nsec
tests: Listen for the presentation clock id
core: rename and internally share output_repaint_timer_arm
compositor: check repaint_msec with a helper
compositor: Round repaint times down to possible presentation times
compositor: Support the commit-timing protocol
clients: Add a commit-timing test client
compositor: Check for EINTR reading timerfd
EatingSumo (1):
libweston/screenshooter: Fix build when __builtin_clz is not available
Elliot Chen (2):
backend-pipewire: support frame rate configuration
libinput: support ignoring all libinput-based input devices by
configuration
Erico Nunes (44):
gl-renderer: close gbm device fd on destroy
clients/simple-egl: remove duplicated shader program link
clients/simple-egl: destroy tearing_manager on exit
tests: output-decorations: Add arguments to fixture setup
tests: client-buffer: Add arguments to fixture setup
tests: client-buffer: Support must pass list per renderer
libweston: move gl-borders up to weston_renderer
tests: Remove gl_ suffix from force_full_upload
clients/simple-dmabuf-egl: Add missing destructors
gitlab-ci: Prepare base CI images for Vulkan build and tests
libweston: Vulkan renderer
tests: Add support for Vulkan renderer
clients/simple-vulkan: New Vulkan client example
clients/simple-dmabuf-vulkan: New Vulkan client example
gitlab-ci: Create some jobs for Vulkan build coverage
vulkan-renderer: fix read pixels for sub regions
vulkan-renderer: add readback for renderbuffers
backend-vnc: add Vulkan renderer support
backend-rdp: add Vulkan renderer support
backend-pipewire: add Vulkan renderer support
clients/simple-vulkan: move render_done semaphore to image
vulkan-renderer: move render_done semaphore to image
vulkan-renderer: rework render_fence_fd
vulkan-renderer: rework Vulkan dmabuf import
vulkan-renderer: support dmabuf renderbuffers
gitlab-ci: Build Vulkan-Headers for CI
gitlab-ci: Enable vulkan-renderer on debian lts jobs
vulkan-renderer: refactor extensions to extension table
pixel-formats: Use a single __BYTE_ORDER macro name
pixel-formats: Update Vulkan formats
vulkan-renderer: Drop dmabuf format print
vulkan-renderer: Add query to populate shm formats
tests/client-buffer: Update Vulkan format mustpass list for CI
backend-drm: Refactor drm_fb_get_from_dmabuf_attributes
vulkan-renderer: rename output options to surface/surfaceless
backend-drm: use dmabuf renderbuffer for Vulkan
backend-drm: fix vulkan output init format
vulkan-renderer: remove unused allocation in renderbuffer dmabuf
vulkan-renderer: drop fb get from create_renderbuffers
vulkan-renderer: fix gbm_bo destroy in drm backend
vulkan-renderer: make dmabuf import dedicated allocation optional
vulkan-renderer: fix pipeline specialization constant offsets
vulkan-renderer: support fragment debug binding
vulkan-renderer: fix VkMemoryDedicatedRequirements usage
Gyeyoung Baek (1):
clients/ivi-shell-user-interface.c: Add 'command' config
Ian Ray (1):
shared: fix binding-modifier none
Jaeyoon Jung (1):
desktop-shell: Add scale-fit background type
James Le Cuirot (2):
tests: Make the kiosk test dependent on the shell-kiosk option
tests: Make some tests dependent on the shell-desktop option
Jan Alexander Steffens (heftig) (1):
libweston/noop-renderer: Check shm_buffer for NULL
Jan Engelhardt (1):
build: insert missing wayland-server-protocol dependency
Jeri Li (2):
libweston/desktop: avoid weston crash while xdg_surface ack_configure
ivi-shell: print available description of desktop surface
Jeri Li (李杰) (1):
ivi-shell: print surface id with decimalism
Joan Torres (2):
clients/window: Allow rendering frame wihout shadow
clients: Add color
Jonas Ådahl (3):
xdg-shell: Allow poup grab on non-grabbing popup
compositor: Make surface state caching reusable
libweston/desktop: Support constraining popups to monitor region
Joshua Goins (1):
doc: Update to the new --no-resizable RDP flag
Kurt Kanzenbach (1):
frontend: Fix VNC mirror screen rotation
LI Qingwu (2):
ivi-shell: Add desktop surface ping timeout notification
ivi-shell: re-align ivi_layout_interface structure
Leandro Ribeiro (72):
color-lcms: accept ICC profiles of device class ColorSpace
drm: try other planes that may support fences
drm: fix a few dma-buf feedback failure reasons
drm: fix issue with enum being wrongly used
drm: avoid dma-buf feedback endless loop
drm: remove scanout tranche if we detect INADEQUATE_CONTENT_PROTECTION
shared: move bits_to_str() to string-helpers.h
drm: print try_view_on_plane_failure_reasons bitmask as string
drm: print why dma-buf feedback is being updated
drm: log more try_view_on_plane_failure_reasons
color: add getters to primaries_info and tf_info from protocol enum
color: rename COLOR_CHARACTERISTICS_H to COLOR_PROPERTIES_H
color: rename luminance to target luminance
color: accept max_fall and max_cll even for tf different from PQ
color: add WESTON_COLOR_FEATURE_SET_LUMINANCES
color: add weston_color_profile_param_builder_set_primary_luminance()
color: prioritize protocol error instead of graceful failure
color: adjust a few error codes in our parametric creator API
color: allow clients to create image description from parameters
color: cosmetic changes to the CM&HDR protocol implementation
color: change has_parameters to count_parameters
color-lcms: print params from parametric color profiles
tests: add color-management tests for the parametric interface
color: add WL_EXPORT to param builder functions
color: improve code that validates color gamut
frontend: improve error message
shared: add weston_assert_uint32_lt_or_eq()
color: define max number of params for parametric curves and tf's
color-lcms: define max number of params for LittleCMS curves
color: move LINPOW/POWLIN to new enum weston_color_curve_parametric_type
color: add curve type enumerated
color-lcms: recognize LCMS curves that matches transfer functions
color-lcms: rename a few functions
color: add function to create color curve from tf
color: add function to create 3x1D LUT from color curve
color: implement perceptual quantizer transfer function
gl-renderer: rename gl_3d_lut() to gl_color_mapping_lut_3d()
gl-renderer: cosmetic improvement to gl_color_mapping_lut_3d()
gl-renderer: split gl_color_mapping_lut_3d()
gl-renderer: split gl_color_curve_lut_3x1d()
color-lcms: keep fallback LCMS xform even when pipeline is optimized
color: add to_shaper_plus_3dlut() vfunc to struct weston_color_transform
tests: add color-math-test
color: do not use color steps for non-optimized pipelines
color: remove unused WESTON_COLOR_MAPPING_TYPE_3D_LUT
color-lcms: rewrite misleading comment
backend-drm: rename renderer-only to renderer-and-cursor mode
backend-drm: add missing FAILURE_REASONS_FORCE_RENDERER
compositor: let backends handle output->disable_planes
gitlab-ci: drop outdated comments related to virtme
libweston: remove set_gamma()
gl-renderer: add support to query EGL configs with float-point formats
gl-renderer: change params of a few functions
gl-renderer: properly log EGLConfig vis id
gl-renderer: log EGLConfig component type
libweston: rename get_supported_formats to get_supported_dmabuf_formats
gl-renderer: add function to query supported rendering formats
gl-renderer: do not set compositor capabilities on failure
backend-drm: improve code that chooses output->format
backend-drm: do not disable underlay planes based on b->format
color: allow creating LUT from curve even when bad precision may occur
color: fail weston_color_curve_to_3x1D_LUT() when !xform->steps_valid
frontend: avoid unecessary call to get_section()
backend-drm: offload post-blend color transformation to KMS
backend-drm: assert that there's a valid output state before repaint
shared: rename a few weston assert
shared: few cosmetic changes to weston assert file
shared: add many weston assert that were missing
libweston: make use of some of the new weston assert
color: introduce output color effects
test: add color-effects test
frontend: allow creating custom param color profiles from .ini
Leo Li (2):
backend-drm: Use plane's zpos_min to check for underlay ability
backend-drm: Rename mm_has_underlay to mm_underlay_only
Loïc Molinari (123):
gl-renderer: Move versioning utils to internal header
gl-renderer: Add extension flag parser
gl-renderer: Store EGL client extensions as flags
gl-renderer: Store EGL device extensions as flags
gl-renderer: Store EGL display extensions as flags
gl-renderer: Remove EGL extension booleans
gl-renderer: Order EGL function pointers by extensions
gl-renderer: Load EGL function pointers with a new macro
gl-renderer: Add no config context feature flag
gl-renderer: Add swap buffers with damage feature flag
gl-renderer: check for EGL_KHR_image_base extension
gl-renderer: Get function pointer addresses after extension check
gl-renderer: Add explicit sync feature flag
gl-renderer: Require EGL version >= 1.2
gl-renderer: Improve EGL_WL_bind_wayland_display extension handling
gl-renderer: Remove branch never taken
gl-renderer: Store GL extensions as flags
gl-renderer: Add EGL_KHR_get_all_proc_addresses checks
gl-renderer: Slightly improve color transforms check
gl-renderer: Check for GL_OES_EGL_image support
gl-renderer: Remove GL extension booleans
gl-renderer: Order GL function pointers by extensions
gl-renderer: Load GL function pointers with GET_PROC_ADDRESS()
gl-renderer: Add async read-back feature flag
gl-renderer: Add color transforms feature flag
gl-renderer: Add GPU timeline feature flag
gl-renderer: Move list init after feature flags setup
gl-renderer: Add extensions and features section to guidelines
libweston: Let renderers manage renderbuffers' damage
libweston: Use explicit renderbuffer destruction
libweston: Deal with renderbuffer discards using an event handler
backend-vnc: Add renderbuffer's discarded event support
backend-rdp: Add renderbuffer's discarded event support
backend-wayland: Add renderbuffer's discarded event support
backend-x11: Add renderbuffer's discarded event support
backend-drm: Add renderbuffer's discarded event support
gl-renderer: Don't accumulate damages on stale renderbuffers
gl-renderer: Skip non-dummy rbs in get_dummy_renderbuffer()
gl-renderer: Use a union to store type specific renderbuffer data
gl-renderer: Move common renderbuffer init to dedicated func
gl-renderer: Regroup renderbuffer creation functions
gl-renderer: Make surface_copy_content() render to a GL renderbuffer
gl-renderer: Add FBO handling utilities
gl-renderer: Remove glGetError() check from gl_fbo_image_init()
gl-renderer: Adapt gl_fbo_texture_*() to new FBO utilities
gl-renderer: Don't set min/mag filters in gl_fbo_texture_init()
gl-renderer: Leave FBOs bound in init utilities on success
libweston: Unify renderbuffer creation API
libweston: Enforce renderbuffer size
pixman-renderer: Remove renderbuffer_get_image() function
gl-renderer: Rename dummy renderbuffers to window renderbuffers
gl-renderer: Coalesce renderbuffer window retrieval functions
gl-renderer: Update renderbuffers in dedicated function
renderers: Catch backend programming errors with asserts
libweston: Fix doc string
gl-renderer: Make space for upcoming extension flags
gl-renderer: Move utilities to new file gl-utils.c
gl-renderer: Move GLES headers inclusion to common header
gl-renderer: Add OpenGL ES 3 sized internal format table
gl-renderer: Check supported FBO formats
gl-renderer: Check for OES_EGL_image to create FBOs from EGLImages
gl-renderer: Add texture utilities
gl-renderer: Add OpenGL ES 2 support to texture utilities
gl-renderer: Add EXT_texture_storage support to utilities
gl-renderer: Add EXT_texture_rg support to utilities
gl-renderer: Add OES_texture_half_float support to utilities
gl-renderer: Add OES_texture_float support to utilities
gl-renderer: Add EXT_color_buffer_half_float support to utilities
gl-renderer: Add EXT_color_buffer_float support to utilities
gl-renderer: Add NV_packed_float support to utilities
gl-renderer: Add APPLE_texture_packed_float support to utilities
gl-renderer: Add EXT_texture_sRGB_R8 support to utilities
gl-renderer: Add EXT_texture_sRGB_RG8 support to utilities
gl-renderer: Add QCOM_render_sRGB_R8_RG8 support to utilities
gl-renderer: Add EXT_texture_norm16 support to utilities
gl-renderer: Add EXT_texture_type_2_10_10_10_REV support
gl-renderer: Add OES_required_internalformat support to utilities
gl-renderer: Add EXT_texture_format_BGRA8888 support to utilities
gl-renderer: Add ARM_rgba8 support to utilities
gl-renderer: Add 3D support to texture utilities
gl-renderer: Port wireframe code to new texture utilities
gl-renderer: Port border images to new texture utilities
gl-renderer: Port color transformation to new texture utilities
gl-renderer: Port wl_shm code to new texture utilities
gl-renderer: Extend accepted renderbuffer formats
gl-renderer: Adapt gl_fbo_texture_init() to new texture utilities
gl-renderer: Add EXT_EGL_image_storage support
gl-renderer: Add texture parameters utilities
gl-renderer: Add swizzles to texture parameters utilities
gl-renderer: Replace channel ordering with texture swizzles
gl-renderer: Prefer GL_RGBA8 with swizzles over GL_BGRA8_EXT
gl-renderer: Add OpenGL ES 2 support to texture swizzles
gl-renderer: Relax EXT_texture_format_BGRA8888 requirement
gl-renderer: Replace RGBX shader variant with texture swizzles
gl-renderer: Cache and defer blend state update to draw call
gl-renderer: Add wl_shm support to all declared RGB pixel formats
libweston: Extend RGB formats
gl-renderer: Add wl_shm support to all declared YUV pixel formats
gl-renderer: Extend YUV formats
tests: Ensure wl_shm format support before testing
tests: Add tests for swizzled YUV wl_shm format variants
tests: Add support and tests for 16-bit YUV wl_shm format variants
tests: Rename yuv-buffer test to shm-buffer
tests: Add tests for RGB wl_shm format variants
clients: Let simple-shm create buffers of requested RGB format
gl-renderer: Get legacy EGL buffers info from YUV formats table
libweston: Replace pixel format's sampler_type with color_model enum
gl-renderer: Replace Y_XUXV variant by Y_UV with texture swizzles
gl-renderer: Sample XYUV shader variant using .rgb
gl-renderer: Use .r to access red component in samplers
gl-renderer: Add macro to improve YUV formats table readability
gl-renderer: Make YUV formats table static
tests: Add test asserts based on new Weston assert system
shared: Let bit asserts take a bit instead of a position
tests: Port timespec test to Weston testing framework
tests: Port config-parser test to Weston testing framework
tests: Port all test clients to the new test asserts
shared: Rename NULL and not NULL pointer assertions
tests: Remove zunitc testing framework
tests: Remove NDEBUG catcher
tests: Don't abort on failure
gl-renderer: Fix SHM RGB888 and BGR888 endianness
gl-renderer: Init output borders with transparent pixels
Marco Felsch (2):
backend-drm: chek DRM_MODE_ATOMIC_TEST_ONLY before remove from list
backend-drm: set DRM_MODE_ATOMIC_ALLOW_MODESET during head disable
Marius Vlad (77):
meson.build: reopen main for regular development
libweston: Move weston_get_backend_type after enum declaration
desktop-shell: Don't attempt to re-add the view to panel layer
libweston/matrix: Fix narrow conversion with C++
libweston/desktop: Don't destroy the xdg_surface
libweston/desktop: Avoid a potential crash on invalid resource
gitlab-ci: Bump libdrm to 2.4.118 to add NV{15,20,30} fmts
shared/helpers.h: Migrate helpers.h to libweston
windowed-output-api.h: Do an explicit cast to avoid C++ build failure
gl-renderer: Take direct-display into consideration
Revert "shared/helpers.h: Migrate helpers.h to libweston"
windowed-output-api.h: Provide ARRAY_LENGH() for windowed-output-api
gitlab-ci.yml: Bump CI templates and use FDO_DISTRIBUTION_PLATFORM
meson.build: Bump to C11 with GNU extensions
gitlab-ci: Expand CI job for building with a C++ compiler
backend-drm: Abide by the weston-direct-display specification
backend-drm: Clear out the the fb handles
timeline-perfetto: Store disambiguator globally
libweston: Add frame commit frame rate counting
libweston: Add also painted frame rate counters
fontend: Arm the surface counter timer only when using debug
backend-drm: Count and display KMS page flips
backend-drm: Explicitly arm/disarm the page flip timer counter
flightrecorder: Don't subscribe by default to the drm-backend
libweston: Rename LED_* to WESTON_LED*
meson.build: Bump libweston to 15
terminal: Restore SIGPIPE signal handler to oldact (SIG_DFL)
compositor: Mark pnode accordingly when buffer type is direct
backend-drm: Fix count page flips on invalid outputs
gitlab-ci.yml: Limit gcov and perfetto to just x86 build
ivi-shell/layout: Create a temporary background curtain
tests: Add xdg-client-helper library
weston-test-client-helper: Use the helper already avaible
weston-test-client-helper: Move helpers into weston-test-client-helper
xdg-client-helper: Use a default WINDOW size value
doc/sphinx/doxygen.ini.in: Removed deprecated HTML timestampt option
doc/sphinx/conf.py.in: Change sphinx.ext.intersphinx
debug-flight-recorder.rst: Describe how to grab flight recorder
backend-wayland: Remove zwp_fullscreen
fullscreen-shell: Deprecate fullscreen-shell and screenshare module
renderer-vulkan: Allow to compile without Vulkan renderer
weston-drm-fourcc: Add fallback for P030
gl-renderer: Don't hard-stop if debugging scopes aren't enabled
timeline: Check for timelog scope being enabled
launcher-libseat: Don't hard-stop on libseat-debug
cp: Correctly format debug scope for content protection
weston-log: Add a advertised list of debug scopes
frontend: Make use of the advertised debug scopes
backend-drm: Use a local variable to store output frame rate data
compositor, frontend: Allow to configure placeholder-color
shell.lua: Add a helper to re-create background
shell.lua: Add output_resized callback handler
weston-test: Proper release pointer/seat on shutdown path
weston-test: Remove output_destroyed_listener listener on shutdown path
weston-test: Fix mem leak on shutdown path
weston-test: Fix another mem leak on shutdown path
weston-test: Handle missing layer fini on shutdown path
frontend: Explicitly add a check for printing warning
backend-drm: Refactor drm_backend_update_connectors
backend-drm: Allow to pass connector ID
backend-drm: Explicitly set an invalid state
backend-drm: Add some further debug message for hot-plug events
libweston/desktop/xwayland: Add MINIMZE state change
simple-shm: Allow to make simple-shm fullscreen with just the keyboard
ivi-shell: Remove black curtain/set output ready in HMI controller
gitlab-ci: Build mesa without GLX
compositor: De-couple paint node ordered list from the view build list
compositor: Embed the paint node status when rebuilding z-ordered list
compositor: Move repaint_status out of weston_output
tests: Address compilation warns/error on arm32 (format)
gitlab-ci/leak-sanitizer: Add libpangoft2/glib to leak suppression
shell-utils: Ensure committed_private is set
backend-drm: Initialize bo_fd
xwayland: Fix some memory leaks on compositor shutdown path
gitlab-ci: Bump CI to Trixie and LTS to bookworm
gitlab-ci: Switch to using Bookworm (LTS) for doing code coverage
build: bump to version 14.0.91 for the alpha release
Martin Rys (1):
input: Add support for LED_COMPOSE and LED_KANA USB HID LEDs
Michael Olbrich (9):
libweston: fix crash when a client queries a destroyed output
backend-headless: use weston_output_arm_frame_timer()
libweston-desktop: don't try to move child surfaces to not existing layer
backend-drm: make sure outputs are enabled during plane assignment
backend-headless: implement set_dpms
backend-pipewire: implement set_dpms
backend-vnc: implement set_dpms
backend-x11: implement set_dpms
backend-rdp: implement set_dpms
Olivier Fourdan (1):
backend-headless: Add an option to enable a fake seat
Pablo Saavedra (2):
frontend: Assign output before registry shared output init
screen-share: Guard pixman_image_unref call on shared_output_destroy
Paul Pu (2):
libweston: fix crash when a client binds to a destroyed output
desktop-shell: support disallow-output-changed-move
Pekka Paalanen (133):
libweston: refactor update_lowest_free_bucket()
libweston: fix realloc in weston_idalloc
libweston: fix bitshift in weston_idalloc_get_id()
tests: add idalloc
build: make libdisplay-info mandatory
color-lcms: cmsMAT3 is row-major after all
libweston: introduce linalg.h
tests: add linalg-4 tests
libweston: add linalg-3.h
tests: add linalg-3 test cases
libweston, clients, tests: implement weston_matrix in terms of
weston_mat4f
tests: replace lcmsMAT3 with weston_mat3f
tests: change BPC to weston_mat4f
color-lcms: use weston_mat4f for matrix stages
color-noop: improve profile error messages
color-lcms: cmlcms_color_profile_alloc/register()
color-lcms: use alloc/register in profile_from_params
color-lcms: transform_search_param well-formedness
libweston: publish eotf and colorimetry mode to string
gl-renderer: make gl-renderer-internal.h selfcontained
color: structurize parametric curve data
color: use weston_mat3f for mapping step
gl-renderer: share curve union for gl_shader_config
gl-renderer: union gl_shader_color_curve_uniforms
gl-renderer: refactor into gl_shader_load_config_curve()
gl-renderer: name the anonymous union in gl_renderer_color_mapping
gl-renderer: share color mapping union for gl_shader_config
gl-renderer: refactor into gl_shader_load_config_mapping()
gl-renderer: move color mapping asserts to load config
gl-renderer: assert lut_3x1d scale and offset
gl-renderer: de-dup getting curve uniform locations
gl-renderer use struct to de-dup curves in fragment.glsl
gl-renderer: unpack linpow/powlin parameters differently
CI: restore junit results in Gitlab
tests: return status from each test definition
build: install linalg-3.h
libweston: add C++ braces to linalg headers
libweston: move stuff into colorimetry.h
gl-renderer: add offset to the color mapping matrix
color-lcms: accept matrices with offset
tests/client-buffer: handle no-list in format_must_pass()
tests/client-buffer: annotate unintended test cases
tests/client-buffer: reduce the scope of #if
shared: fix matrix type computations
color: check steps_valid in weston_color_transform_string()
color-lcms: do not smooth monotonic shapers
tests: drop EOTF from TRANSFER_FN_SRGB_EOTF
tests/color_util: convert 4 switches into a table
tests/color_util: move lcms2 data into struct tone_curve_info
tests/color_util: add power-2.2 transfer function
color-lcms: change stock sRGB to true power-2.2
tests/color-icc-output: reduce tolerance on BT2020 MAT
color: drop "transfer function" from TF descriptions
color-lcms: clarify ICC-to-ICC pipeline prints
color: shorten the named of primaries
color: refactor to weston_color_gamut_fprint()
color: print CIE xy with 4 decimals
color-lcms: fix lcms matrix printing
color: de-dup curve printing
color: fix count_parameters type
color: print details of the color pipeline
color: fine-tune pipeline printing
backend-rdp: fix build with freerdp 3.15.0
tests/color-icc-output: rename tolerance to max_tol
tests/color-icc-output: re-layout my_setup_args
tests/color-icc-output: remove outdated comment
tests/color-icc-output: gate by average error as well
tests/color-icc-output: relax max error tolerances
color-lcms: remove cmlcms_color_transform.status
color-lcms: call it a color transform recipe
color-lcms: override sRGB two-piece TF on input profile
color: add NPM computation
color: add Bradford matrix computation
color-lcms: re-structure transformation creation
color-lcms: parametric blend-to-output
color-lcms: parametric to parametric transformations
shared: helpers for a generic enum map
frontend: convert vrr_mode to enum map
frontend: use weston_enum_map for renderers
frontend: use weston_enum_map for requires_outputs_modes
frontend: remove trailing whitespace
frontend: use weston_enum_map for transforms
frontend: use weston_enum_map for EOTF modes
frontend: use weston_enum_map for colorimetry modes
frontend: use weston_enum_map for scroll method
color-lcms: rename xform_realize_chain to init_icc_to_icc_chain
color-lcms: split into xform_realize_icc_chain()
color-lcms: prefix color_transform_step values
color-lcms: add mask for allowed steps
color-lcms: renames in_prof/out_prof
color-lcms: return cmsHTRANSFORM from xform_realize_chain()
color-lcms: fix TF_POWER from type 1 inverse
color: drop weston_color_curve_from_tf_info()
color: introduce struct weston_color_tf
color: print name of unsupported TF
frontend,color: print details of the set color profile
color-lcms: compare parameters with tolerance
color: move validate_color_gamut() up the file
color: fix CIE value validation
color: improve profile builder errors
color: validate luminances more
color: check maxCLL and maxFALL against target lum always
color: improve primaries-named builder error
color-lcms: shorten parametric profile description
color: weston_color_profile_params_to_str() const
shared: implement weston_parse_space_separated_list()
frontend: create automatic color profiles from .ini
color-lcms: fix transform destroy on error
shared: add safe_strtofloat()
libweston: export
weston_color_profile_param_builder_set_primary_luminance()
color: add weston_color_profile_param_builder_set_target_primaries_named()
tests/color-metadata-error: use weston_color_profile_init()
tests: add color-output-parsing
tests: add parametric_color_profile_parsing_errors
ci: stop checking allow-collaboration
color,gl-renderer: handle neg. in linpow/powlin
color: run vec3 through weston_color_curve_sample()
color: make 3x1d.fill_in populate a vec3 array
color-lcms: constify build_3d_lut()
color-lcms: optimize build_3d_lut()
tests: break out on client_capture_output() error
compositor: fix finish_frame presentation feedback crash
color-lcms: rename white_point_adaptation to chromatic_adaptation
color-lcms: fix ICC-absolute rendering intent CHAD
color: export weston_CIExy_to_XYZ()
color-lcms: implement media white point scaling
tests: bail on dispatch failure
doc: fix Meson warning about install_subdir
libweston: fix false-positive uninitialized variables sx, sy
tests/client-buffer: fix false-positive uninitialized variables
tests/fifo: fix false-positive uninitialized width
tests/paint-node: fix false-positive uninitialized variable
tests/string: fix false-positive uninitialized val
Philipp Zabel (5):
vnc: Allow neatvnc in version 0.9.0
build: Allow libdisplay-info 0.3.0
shell.lua: Fix layer link assertions
weston-log: Fix warning on 32-bit architectures
compositor: Fix warning on 32-bit architectures
Ray Smith (1):
backend-drm: Fix double-free of pending state in error path
Robert Mader (86):
pixel-formats: Add P030
backend-drm: Add support for YUV plane color properties
pixel-formats: Add is_yuv helper
backend-drm: Set default plane color space and range hints
gl-render: Set default color hints for EGL images
Set default YUV color coefficients and range to BT.709/limited
gitlab-ci: Bump wayland-protocols to 1.41
color: update color-management protocol to wp-v1
gitlab-ci: Rebuild image with libdisplay-info to 0.2.0
meson: require libdisplay-info >= 0.2.0
gitlab-ci: Update Meson
gitlab-ci: Update Mesa for llvmpipe dmabuf support
gitlab-ci: Build kernel with udmabuf support
gitlab-ci: Bump image
tests: Rename shm-buffer to client-buffer
tests: client-buffer: Preparations for dmabuf support
gl-renderer: Add YUV422 and YVU422 to yuv_formats
tests: client-helper: Add dmabuf protocol support
tests: client-buffer: Add dmabuf support
gitlab-ci: Build with llvmpipe multiplanar YCbCr support
gitlab-ci: Bump wayland-protocols to 1.44
tests: client-buffer: Remove llvmpipe workarounds
tests: client-buffer: Return RESULT_SKIP where appropriate
gl-renderer: Add gl_force_import_yuv_fallback test quirk
tests: client-buffer: Use gl_force_import_yuv_fallback quirk
pixel-formats: Remove unimplemented header
pixel-formats: Add Sx1x software decoder formats
pixel-formats: Move FOURCC defines to weston-drm-fourcc.h
tests/client-buffer: Sync dmabufs with DMA_BUF_IOCTL_SYNC
shared: Add client-buffer helpers
tests/client-buffer: Use shared client-buffer utils
weston-test-client-helper: Use shared client-buffer utils
clients: screenshot: Sort imports
clients: screenshot: Use shared client-buffer utils
gitlab-ci: Collapse Vulkan-Headers installation
gitlab-ci: Bump Mesa to 25.2.2
tests: drm-smoke: Stop hardcoding output name to Virtual-1
backend-drm/kms: Log writeback connector format
backend-drm: Populate writeback formats with modifier
output-capture: Allow multiple formats and add formats_done event
output-capture: Add output_get_writeback_formats helper
output-capture: Support writeback connector formats
clients: screenshot: Allow selecting format and capture source
output-capture: Fix assertions in pull_capture_task()
output-capture: Fix protocol event order
ci: Bump kernel and Mesa version
clients: Paint desktop-shell color background with single-pixel-buffer
libweston: Get framebuffer from dma buffer in drm backend
shared/client-buffer-util: Add buffer type enum
tests: client-helper: Add create_buffer() helper
tests: client-helper: Make client_capture_output() take a
client_buffer_type
shared/client-buffer-util: Sync for read as well
tests: drm-writeback-screenshot: Test client dmabuf support
clients: screenshot: Support dmabuf passthrough for writeback connectors
clients: screenshot: Fixup --help command line option
clients: screenshot: YUV support
tests: client-helper: Add various globals by default
tests: xdg-client-helper: Add maybe_ack_configure() helper
weston-test-desktop-shell: Implement
desktop_surface_fullscreen_requested()
weston-test-desktop-shell: Use output size for the background
tests: Add drm offloading test
backend-drm: Ignore views with fully transparent solid buffers
paint-node: Consider view-alpha for is_fully_opaque
backend-drm: Use paint_node->is_fully_opaque in more places
backend-drm: Rename surface_overlap to visible_view
backend-drm: Use visible_view in more cases
backend-drm: Use paint_node->draw_solid in more cases
compositor: Fixes for the opaque region
backend-drm: Use pre-calculated pnode regions from the compositor
backend-drm: Build scene-graph before assigning planes
tests/drm-offload: Add additional tests
backend-drm: Allow plane-less DRM background for opaque black solid
buffers
gitlab-ci: Bump Mesa to 25.3.0
gitlab-ci: Bump kernel to 6.18
gitlab-ci: Bump wayland-protocols to 1.46
libweston: Implement color-representation protocol
gl-renderer: Add coefficients and range support to internal shader
gl-renderer: Simplify EGLImage paths
gl-renderer: Add coefficients and range support to EGLImage paths
gl-renderer: Enable support for color representation protocol
backend-drm: Set coefficients and range plane properties
tests: client-helper: Add color-representation protocol support
tests: Add color-representation tests for DRM and GL
tests: Add color-representation protocol test
gitlab-ci: Bump mesa from 25.3.0 to 25.3.2
tests: color-representation: Skip dmabuf test if not supported
Roland Kaufmann (1):
backend-rdp: Add keyboard mapping for alternate Dvorak layouts
Rémi Bernon (2):
xwayland: Create a dummy no_focus_window to use for non-X window focus
xwayland: Activate no_focus_window when a Wayland window is activated
Septatrix (1):
frontend: Log when exiting due to insufficient active outputs
Taehyeon Jeong (1):
input: improve keyboard keys array traversal in notify_key()
Théo Maillart (1):
gl-renderer: clip subimage dimensions to its buffer ones
Tomek Bury (3):
tests: fix build warnings when backend-drm is not enabled
gl-renderer: make DMABUF allocator optional
tests: fix test build error on older Linux
Victoria Brekenfeld (1):
cliients/dnd: Fix self-only mode
Vlad Zahorodnii (1):
desktop-shell: Fix leaking weston_desktop_surface
gpotter2 (1):
Move shell structures of desktop-shell to the header
kang-sooyeon (1):
libweston/input.c: Fix weston crash with the mouse event
liang zhou (3):
xdg-shell: fix weston crash while send configuration
desktop-shell: Fix crash when fullscreen surface has no output
compositor: prevent crash when moving view with popup on first output
removal
vorlunez (1):
input: fix setting hint_is_pending
xufeng wang (1):
libweston: fix crash when getting connector's property failed
zhou liang (2):
xdg-shell: Reset configure_idle to NULL at first
compositor: prevent weston_surface references a destroyed output
git tag: 14.0.91
https://gitlab.freedesktop.org/wayland/weston/-/releases/14.0.91/downloads/weston-14.0.91.tar.xz
SHA256: ffaf187e264c938a1434abf1de5124b7efedaf1fb7b0f06b619c8d9aa45adeb8
weston-14.0.91.tar.xz
SHA512:
569b2b34bf4d400d7ee6e821fa6e2118e112dba0436597cf31587cb1fae659d8a1b1f3bb59b9b22b264aa733b4c0810b4d5e5c4cfd11a806f777397de9d7c409
weston-14.0.91.tar.xz
PGP:
https://gitlab.freedesktop.org/wayland/weston/-/releases/14.0.91/downloads/weston-14.0.91.tar.xz.sig
signature.asc
Description: PGP signature
