Wayland and Weston 1.4 is out

Kristian Høgsberg hoegsberg at gmail.com
Fri Jan 24 00:22:36 PST 2014


We have a 1.4.0 release.  Tagged in git and tarballs available from
http://wayland.freedesktop.org/releases.html as usual:

  49b0b6d5e2366a7bad5158b29998213e5ca7f254  weston-1.4.0.tar.xz
  181131253747500c4759a117ee312262fbb6ed19  weston 1.4.0 tag

  bc91befb8386ec5c1ff4f24ad8464c24a7496ae2  wayland-1.4.0.tar.xz
  4b4cd00621d64311a64108cc921e25e0c9e4767b  wayland 1.4.0 tag

We didn't have a lot of activity since the release candidate (1.3.93).
There was a test suite fix in Wayland and fixes for 4 bugs in Weston.

The wayland repository continues to mature and moves slowly.  This
cycle again only saw a few wayland changes, most of wich where fairly

 • SHM Buffer SIBGUS protection.  We added and couple of utility
   functions to help compositors guard against broken or malicious
   clients who could truncate the backing file for shm buffers and
   thus trigger SIGBUS in the compositor (Neil Roberts).

 • Subsurfaces protocol moved to wayland repo and as such promoted to
   official wayland protocol (Pekka Paalanen).

 • wl_proxy_set_queue() can take a NULL queue to reset back to default
   queue. (Neil Roberts).

 • A few bug fixes, in particular, I'd like highlight the fix for the
   race between wl_proxy_create() and wl_proxy_marshal().

 • A few scanner error message improvements and documentation tweaks
   and polish.


We came pretty close to doing exactly what we had planned for 1.4

 • Window buttons for xwayland windows and proper decorations for the
   nested compositor (wayland backend) (Jason Ekstrand).

 • Make the gl-renderer a loadable module and make it possible to
   switch from pixman to gl renderer at runtime.  This lets the
   compositor start up faster, since we can load the gl-renderer and
   initialize EGL+GLES2 later in the startup (Ander Conselvan de

 • Support framebuffer formats other than XRGB8888 (gbm-format config
   value under [core] section). (Kristian Høgsberg)

 • Use logind for privileged access.  logind can now do the this that
   weston-launch used to do: drm drop/set master and opening input
   devices.  With this, weston can run on KMS without the
   weston-launch setuid helper (David Herrmann).

 • struct weston_surface split into struct weston_surface and struct
   weston_view.  This is a weston-internal feature, that makes it
   possible to display a surface in multiple places in the compositor.
   (Jason Ekstrand)

 • Better output unplug handling.  We used to crash and in general not
   handle output (monitor) unplug at all.  We now clean up properly
   and move windows back into the visible region when their output is
   unplugged.  (Ander Conselvan de Oliveira and Xiong Zhang)

 • Keyboard focus animation and exposay (exposé-like window picker)
   from Collabora.

 • More touch screen support, including touch-to-move and
   touch-to-activate for surfaces, touch screen drag-and-drop (Xiong Zhang).

 • Started work on xdg-shell protocol.  The xdg-shell is a more format
   attempt at developing a protocol for the interaction between
   applications and a desktop environmet.  The wl_shell protocol
   currently in wayland was always only a place-holder to help
   boot-strap toolkit support.  Now that GNOME Shell is moving to
   Wayland, we have a full-featured desktop to drive the work and we
   can start the effort in earnest  (Jasper St. Pierre, Rafael Antognolli).

 • Nested compositor buffer pass-through.  We specified a new EGL
   extension to allow a nested compositor to pass buffers through to
   the underlying compositor.  This lets the nested compositor skip
   rendering and instead present the contents using a subsurface or
   such in the underlying compositor (Neil Roberts).

 • Crop and scale protocol.  This protocol, which we're initially
   staging in weston, lets a client specify that a only sub-rectangle
   of it's surface should be presented, and potentially scaled
   up.  (Jonny Lamb and Pekka Paalanen)

 • weston-terminal gained scrollback history, use Ctrl+Shift UP/DOWN
   to scroll.  Added a context menu for easy access to copy/paste/new
   terminal (which have always been available as Ctrl-Shift-C/V/N)
   (Kristian Høgsberg).  Touch screen selection support (Xiong Zhang).


A couple of features that we did in the 1.4 timeframe landed in mesa
and will be released with the next major mesa release (10.1):

 • Support for eglSwapInterval(dpy, 0).  Setting this lets an
   application render as fast as possible, that is, not synced to
   vblank. weston-simple-egl has a new -b option that makes it set
   swap interval to 0 and render as fast as possible.

 • Support for RGB565 EGLConfigs, even if the compositor is using a
   different pixel format for its framebuffers.

 • Now uses the __DRIimageLoaderExtension that lets the driver
   allocate buffers without using flink.  This in turn means that the
   clients can use drm render nodes.  The support is not completely
   there yet, but should be able to get that in place for mesa 10.1.

 • eglSwapBuffers() now flushes the wl_display(), which was always the
   most sensible behaviour, consider the EGL eglSwapBuffer() language.

And that's about it for 1.4.0.  We had 425 weston commits, 46 wayland
commits, and 40 individual committers this time:

  Adrian Negreanu, Alexandru DAMIAN, Ander Conselvan de Oliveira,
  Armin K, Axel Davy, Bryce W. Harrington, Cameron Stewart, Chi Ding
  Chris Michael, Daniel Stone, David Herrmann, Dima Ryazanov,
  Emilio Pozuelo Monfort, Fabien DESSENNE, Giulio Camuffo, Hardening,
  Jason Ekstrand, Jasper St. Pierre, Jonas Ådahl, Jonas 'Sortie' Termansen,
  Jonny Lamb, José Bollo, Kristian Høgsberg, Louis-Francis Ratté-Boulianne,
  Lubomir Rintel, Marco Barisione, MoD, Neil Roberts, Pekka Paalanen,
  Peter Hutterer, Philip Withnall, Rafael Antognolli, Rafal Mielniczuk,
  Ricardo Vieira, Rui Matos, Stefan Schmidt, Tomeu Vizoso, U. Artie Eoff,
  Wieland Hoffmann, Xiong Y Zhang.

Thanks for helping out, let's get started on 1.5.  I'll send out an
update on some of the things we're looking at here at Intel and what
kind of schedule we'd like to do for 1.5 shortly.


More information about the wayland-devel mailing list