[ANNOUNCE] xwayland (aka Xwayland 22.1.0 rc1)

Olivier Fourdan ofourdan at redhat.com
Wed Jan 19 16:17:08 UTC 2022

As per the schedule, I am please to announce the first release candidate
of the standalone Xwayland 22.1.0 release.

Some notable changes since Xwayland 21.1 include:

  * DRM lease support
  * Enables sRGB fbconfigs in GLX
  * Requires libxcvt
  * Refactoring of the present code in Xwayland
  * Implements support for touchpad gestures
  * Support for xfixes's ClientDisconnectMode and optional terminate delay

Testing of this release candidate would be greatly appreciated.

Please report any issues at https://gitlab.freedesktop.org/xorg/xserver/-/issues

The second release candidate is scheduled in two weeks from now.

The following shortlogs include all changes since the xwayland-21.1 branch
was first created, not all of those changes are relevant to Xwayland though:

Aaron Plattner (3):
       modesetting: Defer crtc gamma size upgrade to drmmode_setup_colormap
       modesetting: Only use GAMMA_LUT if its size is 1024
       xfree86: NUL-terminate strings in hwEnableIO

Adam Jackson (15):
       meson.build: Keep the protocol version looking like xserver 1.20.x did
       glx: Fix error return code in GLXGetDrawableAttributes
       xfixes: Allow the client to upgrade the fixes protocol version
       selinux: Stop using security_context_t
       xinput: Silence a warning from gcc 11
       xkb: Silence a warning from gcc 11
       dmx: Fix some redeclaration warnings from gcc 11
       ephyr/glamor: Port to EGL
       glamor: Don't open-code epoxy_glsl_version()
       ephyr: Don't open-code glamor_compile_glsl_prog
       wayland/streams: Don't open-code glamor_compile_glsl_prog
       glamor: Require EGL_KHR_no_config_context
       glamor: Assume EGL in glamor_context
       xwayland/glx: Enable sRGB fbconfigs
       glx/dri: Filter out fbconfigs that don't have a supported pixmap format

Alex Richardson (2):
       Mark the dixChangeWindowProperty() value argument as const
       dix/privates.c: Avoid undefined behaviour after realloc()

Andrea Monaco (1):
       hw/xfree86/os-support/solaris/sun_vid.c: Fix error message

Boris-Barboris (1):
       Don't hardcode fps for fake screen

Claes Nästén (1):
       os: include unistd.h when HAVE_PSTACK is defined

Daniel Strnad (1):
       hw/xfree86: Propagate physical dimensions from DRM connector

Dave Airlie (3):
       glamor: add glamor_glsl_has_ints wrapper
       glamor: add EXT_gpu_shader4 support
       dri2: add crocus to the list of va_gl users

Demi Marie Obenour (3):
       Add do-while loops to DIX macros
       XFixes: add version check for byteswapped clients
       More missing version checks in SProcs

Drew DeVault (1):
       Xwayland: implement drm-lease-v1

Edouard Gaulué (1):
       French text in Preferences Pane Review

Erik Kurzinger (7):
       xwayland: move formats and modifiers functions to common glamor code
       xwayland: Add check_flip() glamor backend function
       xwayland: implement pixmap_from_buffers for the eglstream backend
       xwayland-eglstream: fix X11 rendering to flipping GL / VK window
       xwayland/eglstream: allow commits to dma-buf backed pixmaps
       xwayland/eglstream: flush stream after eglSwapBuffers
       glx: don't create implicit GLXWindow if one already exists

George Matsumura (1):
       meson: Fix DragonFly BSD identifier in meson build files

Ignacio Casal Quinteiro (1):
       touchevents: set the screen pointer after checking the device is enabled

Jacob Cherry (1):
       xfree86: Fix autoconfig secondary GPU devices

James Jones (1):
       Use EGL_LINUX_DMA_BUF_EXT to create GBM bo EGLImages

Jan Beich (4):
       meson: hide C API if Xorg is disabled (like autotools)
       meson: check pthread_setname_np like autotools
       meson: switch getpeer* checks to autotools style
       meson: provide fallback for *proto dependencies

Jeremie Courreges-Anglas (1):
       xserver/os: safer IPv6 "kame hack" fix, only override sin6_scope_id if zero

Jeremy Huddleston Sequoia (27):
       xquartz: Ensure we call into TIS on the main thread
       xquartz: Update the about box copyright to 2021
       xquartz: Apply Xcode 12.4 automatic updates to nibs
       xquartz: Fix applications menu table background color for dark mode
       xquartz: Remove a workaround for AppKit versions older than Lion
       xquartz: Remove some dead code for compatibility with older nibs
       xquartz: Minor code modernization -- @autoreleasepool adoption
       xquartz: Use objc_autoreleasePoolPush / objc_autoreleasePoolPop directly in QuartzBlockHandler
       xqaurtz: Remove message_kit_thread() and use dispatch instead
       xquartz: Fold away array_with_strings_and_numbers and simplify with more modern Objective-C
       xquartz: Fold away some unnecessary hops to X11Controller through X11Application
       xquartz: Fold quartzCommon.h into quartz.h
       xquartz: Convert X11Application ivars into @properties
       xquartz: Convert X11Controller ivars into @properties
       xquartz: Rewrite Window menu handling to not depend on X11App.windowsMenu.numberOfItems being correct in -awakeFromNib
       xquartz: Silence a compiler warning about missing internal methods on NSApplication
       xquartz: Fix build with sparkle enabled
       xquartz: Fix a compiler warning about const incompatible pointer assignment
       xquartz: Allocate each fbconfig separately
       xquartz: Don't process AppKit events if we haven't finished initializing
       xquartz: Add a launch trampoline to better integrate with modern versions of macOS
       xquartz: Don't include strndup.c any more since we no longer support 10.8 and older
       xquartz: Remove a check for NSAppKitVersionNumber >= NSAppKitVersionNumber10_7
       xquartz: Fix appFlags build failure with macOS 10.15+ SDKs
       xquartz: Update meson build to remove deleted files
       xquartz: Ensure the mouse pointer is shown when switching to a native macOS alert or window
       xquartz: Call PseudoramiXExtensionInit() through InitOutput() just like xwin

Jocelyn Falempe (4):
       xf86/logind: fix call systemd_logind_vtenter after receiving drm device resume
       xf86/logind: Fix drm_drop_master before vt_reldisp
       xf86/logind: Fix compilation error when built without logind/platform bus
       xf86/logind: fix missing call to vtenter if the platform device is not paused

Jon Turney (8):
       CI: Add an x86 MinGW-w64 cross build
       Fix compilation with windows.h from latest w32api
       Don't underlink inputtest on targets which require complete linkage
       s/__/@/ in inputtestdrv manpage
       meson: Add dependencies for hw/xwin/ resource compilation
       meson: Correctly set Libs: in xorg-server.pc for Windows
       meson: Fix build of xwinclip tool when xcb is installed in non-default location
       appveyor: Add libxcvt build dep

Jonathan Gray (1):
       glamor: fix free of uninitialised pointers

Jose Maria Casanova Crespo (1):
       glamor: Avoid using GL_QUADS on V3D

Lukasz Spintzyk (1):
       modesetting: Disable reverse prime offload mode for displays running on evdi,udl

Mario Kleiner (11):
       modesetting: Fix VRR window property handling.
       Revert "glamor: Enable modifier support for xfree86 too"
       modesetting: Allow Present flips with mismatched stride on atomic drivers.
       modesetting: Add option for non-vsynced flips for "secondary" outputs.
       xfree86: Avoid crash in xf86RandR12CrtcSetGamma() memcpy path.
       xfree86: Let xf86RandR12CrtcComputeGamma() deal with non-power-of-2 sizes.
       Revert "modesetting: Only use GAMMA_LUT if its size is 1024"
       modesetting: Enable GAMMA_LUT for lut's with up to 4096 slots.
       modesetting: Handle mixed VRR and non-VRR display setups better.
       modesetting: Consider RandR primary output for selectioh of sync crtc.
       Fix RandR leasing for more than 1 simultaneously active lease.

Matt Turner (2):
       Build xz tarballs instead of bzip2
       test: #undef NDEBUG so assert is not compiled away

Matthieu Herrb (7):
       Avoid sequences of malloc(0) / free() by checking the length.
       Fix XChangeFeedbackControl() request underflow
       Make xf86CompatOutput() return NULL when there are no privates
       Initialize Mode->name in xf86CVTMode()
       Better fix for xf86CompatOut() when there are no privates
       remove the PRE_RELEASE message.
       Convert more funcs to use InternalEvent.

Mazlan, Hazwan Arif (1):
       dri2: Sync i965_pci_ids.h from mesa iris_pci_ids.h

Michel Dänzer (59):
       meson: Make sure XKM_OUTPUT_DIR has a trailing slash
       xwayland/eglstream: Handle xwl_pixmap_get returning NULL
       xwayland/present: Move wl_buffer check into xwl_glamor_check_flip
       randr: Bail from RRTellChanged if there's no root window yet
       xwayland: Call RRTellChanged if the RandR configuration may have changed
       xwayland/eglstream: Consolidate pending_cb destruction
       xwayland/eglstream: Drop xwl_eglstream_set_window_pixmap
       present: Pass capabilities to present_vblank_create by value
       present: Remove create_event_id hook
       present: Dispatch clear_window_flip via present_screen_priv hook
       present: Move present_wnmd_screen_init to present_wnmd.c
       present: Fold wnmd_init_mode_hooks into wnmd_screen_init
       present: Move present_wnmd.c contents to hw/xwayland/xwayland-present.c
       xwayland/present: Fold present_wnmd_screen_init into xwl_present_init
       xwayland/present: Fold present_wnmd_flip into present_wnmd_execute
       xwayland/present: Drop present_wnmd_flush in favour of xwl_present_flush
       xwayland/present: Fold present_wnmd_abort_vblank into its only caller
       xwayland/present: Simplify query_capabilities
       xwayland/present: Fold present_wnmd_check_flip into its callers
       xwayland/present: Fold present_wnmd_get_crtc into present_wnmd_pixmap
       xwayland/present: Fold present_wnmd_queue_vblank into its callers
       xwayland/present: Fold present_wnmd_get_ust_msc into its callers
       xwayland/present: Merge present_wnmd_flips_stop & xwl_present_flips_stop
       present: Remove present_wnmd_info_rec
       xwayland/present: Rename present_wnmd_* functions to xwl_present_*
       xwayland/present: Simplify calls to Xwayland-private functions
       xwayland/present: Drop abort member of struct xwl_present_event
       present: Refactor present_vblank_init helper ouf of _vblank_create
       xwayland/present: Embed present_vblank_rec in xwl_present_event
       xwayland/present: Fold xwl_present_flip_notify into its callers
       xwaland/present: Drop flip_pending member of struct xwl_present_window
       xwayland/present: Drop sync_flip member of struct xwl_present_window
       xwayland/present: Fold xwl_present_idle_notify into its caller
       xwayland/present: Use exec_queue for deferring completion events
       xwayland/present: Fold xwl_present_event_notify into its caller
       xwayland/present: Drop exec_queue member from struct xwl_present_window
       xwayland/present: Drop list member from struct xwl_present_event
       xwayland/present: Drop pending member from struct xwl_present_event
       xwayland/present: Drop target_msc member from struct xwl_present_event
       xwayland/present: Fold xwl_present_release_event into _free_event
       xwayland/present: Use present_vblank_ptr instead of xwl_present_event*
       present: Drop flip_idler member from present_vblank_rec
       xwayland/present: Move xwl_present_reset_timer call out of xwl_present_flip
       xwayland: Store EGLContext pointer in lastGLContext
       Fix spelling of Xwayland
       xwayland/present: Run fallback timer callback after more than a second
       xwayland/glx: Flip order of sRGB & non-sRGB fbconfigs
       Drop Xquartz DDX
       Drop Xnest DDX
       Drop Xwin DDX and x86 MinGW-w64 cross build
       Drop Xorg DDX
       Drop Xephyr / kdrive DDX
       Drop config directory
       Drop EXA code
       Drop miext/shadow directory
       meson: Build Xwayland unconditionally
       Don't install Xvfb
       meson: Change project name to xwayland

Niveditha Rau (1):
       glx: Check for byte-swapping in SetReplyHeader

Olivier Certner (1):
       os: Properly report failure to link lock file

Olivier Fourdan (60):
       dix: Add POINTER_RAWONLY flag
       xwayland: Use a resolution of 0 for relative motion
       xwayland: Use relative values for raw events
       xwayland: Split dispatch_pointer_motion_event
       xwayland: Add wheel axis to relative pointer
       xwayland: Use relative device for buttons/axis
       xwayland: Add PtrFeedback to the touch device
       dix: Guard against non-existing PtrFeedbackPtr
       xwayland: Delay cursor visibility update
       xwayland: Fix LeaveNotify for relative pointer
       xwayland: Fix path in pkg-config with autoconf
       xwayland: Move dmabuf interface to common glamor code
       xwayland/eglstream: Check buffer creation
       xwayland: Check buffer prior to attaching it
       glamor: Dump backtrace on GL error
       xwayland/glamor: Add return status to post_damage
       xwayland/eglstream: Check framebuffer status
       xwayland/eglstream: Small refactoring
       xwayland/eglstream: Add more error checking
       xwayland/eglstream: Dissociate pending stream from window
       xwayland/eglstream: Keep a reference to the pixmap
       xwayland/eglstream: Drop the list of pending streams
       xwayland/eglstream: Do not commit without surface
       xwayland/eglstream: Fix calloc/malloc
       xwayland/eglstream: Check eglSwapBuffers()
       xwayland/eglstream: Do not always increment pixmap refcnt on commit
       xwayland/eglstream: Set ALU to GXCopy for blitting
       xwayland: Add preferred GLVND vendor to xwl_screen
       xwayland/eglstream: Use "nvidia" for GLVND
       xwayland/eglstream: Log when GL_OES_EGL_image is missing
       xfixes: Add ClientDisconnectMode
       dix: Add optional terminate delay
       glx: Set ContextTag for all contexts
       glx: Fix use after free in MakeCurrent
       xwayland/eglstream: Keep pending stream if the pixmap didn't change
       xwayland/eglstream: Remove stream validity
       ci: Install libxcvt from git
       build: Add dependency on libxcvt
       xwayland: Use libxcvt
       xfree86: Use libxcvt
       xfree86/cvt: Drop cvt utility
       xfree86: Move xf86CVTMode() function
       xwayland: Fix leak of xwl_screen on init
       xwayland: Fix memory allocation test
       glamor: Fix leak in glamor_build_program()
       xwayland/shm: Avoid integer overflow on large pixmaps
       xwayland: Set GLVND driver based on GBM backend name
       xwayland: Notify of root size change with XRandR emulation
       xwayland: Clear tablet cursor pending frame cb
       xwayland/test: Don't catch errors in run-piglit.sh
       xwayland: Rename xwl_seat_update_cursor()
       xwayland: Move xwl_cursor_release() to xwayland-cursor.c
       xwayland: Add xwl_cursor_clear_frame_cb()
       xwayland/eglstream: Demote EGLstream device warning
       xwayland/glamor: Change errors to verbose messages
       xwayland/glamor: Log backend selected for debug
       xwayland/eglstream: Prefer EGLstream if available
       xwayland: Raise the FD limit to the max
       Bump version to
       Bump version to

Pascal VITOUX (1):
       xfree86: fix gtf support detection for EDID 1.4

Patrik Jakobsson (1):
       modesetting: Fix dirty updates for sw rotation

Peter Hutterer (4):
       xwayland: use get_pointer_device() for enter/leave handling too
       xkb: don't require a trailing slash for the XKM output dir
       xkb: silence a compiler warning
       xkb: fix XkbSetMap check for the keytypes count

Povilas Kanapickas (63):
       dix: Send touch end to clients that do async grab without touch events
       Revert "Xi: Use current device active grab to deliver touch events if any"
       Xi: Deliver pointer emulated touch events to grabbing client
       dix: Use correct listener to deliver touch end events
       dix: Fix URL to description of focus in/out model
       miext: Remove if check which is always true
       xfree86: Fix meson overwriting suid wrapper with the wrapped executable
       meson: Bump min meson version to 0.47 to get install_mode support
       xfree86: Set appropriate install_mode for suid_wrapper
       xfree86: Create a symlink X -> Xorg when installing using meson
       xkb: Fix parsing of XkbSA_DeviceValuator action type
       meson: Drop version subpatch handling
       meson: Switch project version to 20.x.y style
       meson: Fix typo in libxserver_os dependencies for openbsd
       meson: Add missing pthread dependency for libxserver_os library
       meson: Sync the name of INPUTTHREAD conf macro with autotools build
       meson: Make sure defines are either set to 1 or not defined
       meson: Disable LTO for tests
       .gitlab-ci: Install xorgproto 2021.4.99.2 from git
       meson: Depend on inputproto
       dix: Add new internal event enums for gesture events
       xi: Implement internal gesture event struct
       xi: Implement grab support for new gesture event types
       xi: Implement selection logic for gesture event types
       xi: Bump max supported XI2 event type
       test/xi2: Update tests for gesture event types
       test/xi2: Verify that XI_GestureSwipeEnd is ignored when outside mask
       xi: Implement conversions from internal to Xi2 gesture event structs
       dix: Implement gesture event fixups before delivery
       dix: Implement internal gesture state handling
       dix: Implement gesture event submission code path
       hw/xfree86: Implement public APIs to submit gesture events
       Implement gesture processing logic
       Xi: Include gestures among events that may freeze device
       Bump XI protocol version to 2.4
       xfree86: Implement gesture support for test input driver
       xfree86: Bump input minor ABI due to addition touchpad gestures
       Xi: Implement gesture support for XIQueryDevice
       Xi: Work around broken libxcb that doesn't ignore unknown device classes
       modesetting: Extract flip failure logging to a single place
       modesetting: Add a limit on async page flip error log frequency
       configure.ac: Bump inputproto dep to
       configure.ac: Switch project version to 20.x.y style
       xfree86: Consistently check for reference to primaryBus pci_device
       xfree86: Fix potentially NULL reference to platform device's PCI device
       config: Fix platform busid parsing when there is no ID_PATH prop
       meson: Fix warnings when reading back and checking feature flags
       meson: Add option to disable libdrm support
       meson: Implement developer documentation build
       Drop DMX DDX
       glamor: Fix handling of 1-bit pixmaps
       Remove autotools support
       meson: Bump version after X server 21.1 branch off
       Revert "hw/xfree86: Propagate physical dimensions from DRM connector"
       meson: Correctly set DDXOSVERRORF and DDXBEFORERESET on xwin
       xwayland: Implement support for touchpad gestures
       xwayland: Fix a race condition when setting up input devices
       record: Fix out of bounds access in SwapCreateRegister()
       xfixes: Fix out of bounds access in *ProcXFixesCreatePointerBarrier()
       Xext: Fix out of bounds access in SProcScreenSaverSuspend()
       render: Fix out of bounds access in SProcRenderCompositeGlyphs()
       Remove *-config.h.in which were only used by autotools

Ray Strode (1):
       xkb: Drop check for XkbSetMapResizeTypes

Roman Gilg (1):
       Remove build-only include from public header

Sam James (1):
       hw/xfree86: fix sbus build for SPARC

Simon Ser (7):
       xwayland: remove wl_log_set_handler_client workaround
       xwayland: enable MIT-SHM shared pixmaps
       xwayland: fix xdg_output leak
       xwayland: add -noTouchPointerEmulation
       xwayland: fix -noTouchPointerEmulation
       meson: use add_project_arguments instead of add_global_arguments
       meson: add subproject fallback for libxcvt

Xaver Hugl (3):
       Update the CI to provide wayland-protocols 1.22
       require wayland-protocols 1.22
       randr: add new interface to allow delaying lease responses

Zoltán Böszörményi (4):
       xfree86: Fix NULL pointer dereference crash
       xf86: Extract screen configuration matching into its own function
       xf86: Assign GPUs to screens according to configuration
       glamoregl: Initialize glamor on the main device

luporl (1):
       xserver: fix RGB mask handling

nerdopolis (3):
       xf86: Accept devices with the 'simpledrm' driver.
       os: Try to discover the current seat with the XDG_SEAT var first
       xfree86: On Linux, while only seat0 can have TTYs, don't assmume all seat0s have TTYs

orbea (1):
       hw/dmx/config: Link directly with libdmxconfig.a

qarmin (1):
       glxcmds: Fix possible out of bounds

Łukasz Spintzyk (10):
       modesetting: Initialize present extension despite glamor is disabled
       present: Use crtc's screen present operation for syncing
       present: fix msc offset calculation in screen mode
       modesetting: Find crtc on secondary outputs as fallback instead of returning primary crtc
       modesetting: remove unnecessary ms_covering_xf86_crtc dup of ms_covering_randr_crtc
       modesetting: Remove few common functions from ms namespace
       xfree86: Change displays array to pointers array to fix invalid pointer issues after table reallocation
       xfree86: Fix out of array bound access to xf86Entities
       present: fallback get_crtc to return crtc belonging to screen with present extension
       modesetting: unflip not possible when glamor is not set

git tag: xwayland-

SHA256: b2000fb40728cb12b1d888d2c351c75e4031325fc33b973b4f5313138f2eaa77  xwayland-
SHA512: ac1c947b7212bcc0b86433bbf30478173ff8499dab0175fea4a9fb2892706c96631243da7f2f82cf812d2df6efb5cd3534d394f958ba3c47aa2014b2a8120159  xwayland-
PGP:  https://xorg.freedesktop.org/archive/individual/xserver/xwayland-
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_0x14706DBE1E4B4540.asc
Type: application/pgp-keys
Size: 3182 bytes
Desc: OpenPGP public key
URL: <https://lists.x.org/archives/xorg-announce/attachments/20220119/9c017066/attachment-0001.key>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 203 bytes
Desc: OpenPGP digital signature
URL: <https://lists.x.org/archives/xorg-announce/attachments/20220119/9c017066/attachment-0001.sig>

More information about the xorg-announce mailing list