[ANNOUNCE] weston 1.10.93

Bryce Harrington bryce at osg.samsung.com
Tue May 24 21:37:57 UTC 2016


This first release candidate for Weston 1.11 includes a few fixes for
builds against FreeRDP 2.0, a change to how we check the wayland version
prerequisites, and a handful of other fixes and minor refactorings.

A brief summary of some of the main changes for 1.11 follows.

== libweston ==

A concerted effort to push the libweston development along reworked how
backends are configured to permit them to be initialized independent of
Weston's main.c.  This was a relatively major change this cycle,
restructuring the setup logic for most of the backends and adding a new
backend loading routine.  Config parsing is still done in main.c but the
config data is passed as a structure to the (dynamically loaded) backend
module and used or copied into its internal data storage (the config
object provided by main.c has a lifetime that ends at the completion of
initialization).  This passed structure is defined in a header and
versioned to enable compatibility validation between frontend and
backend.

The following backends received this treatment:  wayland, drm, x11,
headless, fbdev, and rdp.


== IVI ==

Another major area of development focused on the IVI shell and related
code.  Huge amounts of cleanup, refactoring, and documentation
copyediting are helping polish this codebase.

A large number of unnecessary API calls were dropped or simplified.
Limitations such as seat handling were improved or at least worked
around to avoid crashing or other misbehaviors.  Dynamic memory
allocation was changed to use the stack where possible.  NULL pointer
checks were added for sanity checking in some APIs, and dropped
elsewhere where not strictly needed.

Other IVI changes:

* When destroying ivi-layout layers, invalidate on_layout handler

* Add a 'get_label' functionality for debugging purposes in ivi-shell

* Straighten out configuration calls from ivi-layout.c to ivi-shell.c,
  allowing configure events to be sent more directly.

* Remove ivi-shell surface transitions when the surface itself gets
  removed.


== Build system ==

* Standardize build to use AC_SEARCH_LIBS macro, and cleanup unnecessary
  alternatives.

* More efficiently check for and properly use librt's clock_gettime() in
  build system

* Fix build to not enable systemd-login unless dbus is present.

* Straighten out the handling of systemd CFLAGS

* Make jpeglib an optional dependency (--with-jpeg/--without-jpeg)

* Make WebP an optional dependency (--with-webp/--without-webp) and
  improve error messages

* Instead of tracking the version requirements on wayland-server and
  wayland-client separately, we now check just a single common version
  for both.

* Various other cleanups to build logic.


== Client fixes and improvements ==

* Add new icons for weston terminal, flower, and editor clients

* Cleanup eventdemo output and minor refactoring

* Fix weston-info report of clock times and improve its output
  formatting

* Fix crash in weston-simple-egl client when lacking shell and/or
  ivi-shell objects

* Make the panel clock configurable through the config file
  (Fixes https://bugs.freedesktop.org/show_bug.cgi?id=57583)


== Noteworthy Bug Fixes ==

* Fix crash when focused client doesn't have pointer resources
  (Fixes https://bugs.freedesktop.org/show_bug.cgi?id=94899)

* Fix bad pointer passed to memcpy in drm_output_choose_initial_mode
  (Fixes https://bugs.freedesktop.org/show_bug.cgi?id=94562)

* Fix crash on destruction of clients with two or more surfaces

* Fix wrong background surface size and wrong panel width in
  hmi-controller

* Fix crash with wl_seat.release when listener is NULL

* Fix incorrect assumptions with the wl_shm_format

* Fix a few build issues against FreeRDP 2.0.


== Other changes ==

* Avoid various dependency headers in compositor.h for better
  encapsulation when writing plugins.

* Add shell_interface.get_output_work_area to enable plugins to be
  better aware of their surroundings (e.g. panels)

* Improve lseek checks when testing multi-plane buffers.

* Improve drag-and-drop updates for old source versions

* Improve handling of systemd sockets for wayland displays.  Useful when
  weston and an early rendering client are started in parallel.

* Stop using the input_loop in the x11 backend, as this concept assumed
  a single output, resulting in random behavior when multiple outputs
  were present.

* Continued work sanitizing wl_fixed_t internals to switch over to the
  use of doubles.

* Rename several gbm fields with gbm_ prefixes to disambiguate them from
  proposed additions from Nvidia.

* Add a check_extension() function for checking for GL extensions
  instead of using error-prone strstr() tests.

* Make option-parser handle short double-arg options

* Add the newly stable presentation-time protocol, and in general enable
  tracking of stable protocols from the wayland-protocols package.

* Streamline click handling for surfaces already active

Along with the above are the usual vast number of minor changes.
Various warnings text improvements, whitespace cleanup, spelling fixes,
and grammar corrections.  Various error handling improvements, NULL
Pointer checks, and leak fixes.  Various improvements to usage of
x*alloc and related functions.  Various codebase refactoring, removal of
unneeded functions, casting cleanups, etc.

One crash bug relating to xwayland drag-and-drop is being tracked for
possible inclusion in the release, but no other major changes are
anticipated between now and the release.

See the alpha and beta release announcements for previous changes.

Changes since beta:
-------------------

    Bryce Harrington (4):
      ivi: Fix spellings in comments
      build: Define wayland prereq version
      releasing: Update release docs in regards to the wayland versioned dependency
      configure.ac: bump to version 1.10.93 for the RC1 release

    Emmanuel Gil Peyrot (2):
      zunitc: use platform-independent macros for integer formatting
      desktop-shell: Don’t reconfigure an already fullscreen surface

    FORT David (3):
      rdp: allow to compile against FreeRDP 2.0
      rdp: Fix the ContextNew callback with recent FreeRDP versions
      compositor: use generated constant instead of hardcoded value

git tag: 1.10.93
http://wayland.freedesktop.org/releases/weston-1.10.93.tar.xz
MD5:  b981951c8b5c9116aec89581f595971e  weston-1.10.93.tar.xz
SHA1: 6247c9afa046788132708e85e8a6d37f02593159  weston-1.10.93.tar.xz
SHA256: bc671b18cf1872f50c9dc39cd89b3b2dc9f785760d465a51f38b28f925503ee4  weston-1.10.93.tar.xz
PGP:  http://wayland.freedesktop.org/releases/weston-1.10.93.tar.xz.sig
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20160524/aacd951a/attachment.sig>


More information about the wayland-devel mailing list