[ANNOUNCE] wayland 1.7.0

Bryce Harrington bryce at osg.samsung.com
Sat Feb 14 01:18:49 PST 2015

The 1.7 release of Wayland is now available for download.  Thanks to all
who have contributed, and especially to the desktop environments and
client applications that now converse using Wayland.

git tag: 1.7.0

MD5:  6f46ac47c3a18c6503a40b5fa58a1066  wayland-1.7.0.tar.xz
SHA1: a731201534dcf6ec76a1184411724376cbf1acb6  wayland-1.7.0.tar.xz
SHA256: bdea47a2db96f7e53f1ce0351559c0af5b7f7aae7e95f0a884a78af9f1057c9c  wayland-1.7.0.tar.xz
PGP:  http://wayland.freedesktop.org/releases/wayland-1.7.0.tar.xz.sig

The Wayland protocol may be considered "done" but that doesn't mean
there's not work to be done.  This release focused on major improvements
to Wayland's documentation, minor improvements to the testsuite, and
some scattered bugfixes to the code itself.

Wayland's developer documentation is comprised of three different
pieces.  First is a manually written prose, which includes diagrams and
a high level description of everything.  Second is the protocol
documentation, which is mechanically generated from the protocol
definitions and works more like a reference manual.  Third is the code
documentation, which is also mechanically generated but from the library
source code itself.

We've moved the written prose from being generated by publican to xmlto.
xmlto provides the same functionality and is more widely available.
Publican's advantage was its nicer stylesheets, but we ported these to
run on xmlto, and polished them up while we were at it.  Architectural
diagrams in the developer documentation is now mechanically generated
with graphviz - this both improves its look a little and makes it easier
to maintain going forward.

For the protocol documentation, the recently added wl_surface role
concept is defined and given several examples.  wl_display_destroy and
wl_display_add_socket are now documented, and some aspects of
threading clarified.  It's also been reorganized, with deprecated
functions dropped and all validation errors fixed.

The auto-generated code documentation is prettier now thanks to
a lot of polishing work done to the xslt files, and markup
improvements done to code comments.

The protocol documentation content is tightened up:  We've dropped
long-deprecated functions, hidden private functionality like wl_map, and
recategorized functions more accurately with the objects they modify.

You can check out this spiffed up documentation at:


A number of potential memory and event leaks in tests and clients have
been cleaned up, and leak checking is now enforced by the test suite
infrastructure.  Leak checking is also added to the sample clients.

The testsuite now has a way to set timeouts for test completion.  The
timeouts can be turned off by setting the environment variable
timeouts and leak checks are disabled when a debugger is attached.

There's a new C++ compilation test; even though Wayland and Weston are
in C, we want to make sure Wayland can be linked with compositors
written in C++ without incurring basic compilation failures.

Apart from tests and docs, there were a handful of changes to the
codebase itself.  Notably, the client listen queue is increased to
128,to allow numerous clients to be connected simultaneously without
connection refused errors.  Some cross-platform fixes, such as a FreeBSD
bug with sendmsg() usage, have been addressed.  The remaining fixes
improve error checking and handling in various places.

Our next release will be version 1.8, planned as follows:

  - Development of the 1.8 cycle starts immediately.  A focus will be
    major testing infrastructure enhancements, and cross-compositor
    testing utilities.

  - 1.8-alpha around May 1st.  Major features should be in by this

  - 1.8-rc1 around May 15th.

  - 1.8-rc2 around May 22nd.

  - 1.8.0 release around May 29th

Bryce Harrington
Senior Open Source Developer  -  bryce at osg.samsung.com
Open Source Group             -  Samsung Research America

Andrew Oakley (1):
      configure.ac: use pkg-config to find expat

Benjamin Herr (4):
      doc: Mark up some code examples
      doc: Mostly use apply-templates over value-of
      doc: Translate doxygen <sp/> tags to spaces
      connection: Leave fd open in wl_connection_destroy

Bill Spitzak (34):
      doc: make rebuilds doxygen output on code changes
      doc: Preserve spaces
      doc: preserve links produced by Doxygen
      doc: Don't print dash if doxygen brief description missing
      doc: removed some unnecessary nested listing from doxygen output
      doc: Added \code tags around sample code in doxygen comments
      v4 doc: fixed reference to non-existent function
      doc: fixed a typo
      doc: Removed \ref when it refers to the subject the text is attached to
      doc: Removed extra indentation from wl_list code sample
      doc: removed redundant dependency
      doc: Remove duplicated descriptions of wayland objects
      doc: fix doxygen->man command line
      doc: Split libwayland-client and -server into different pages
      doc: fix for parallel make
      doc: Make it easier to add a new doxygen page
      fixup doc: Make it easier to add a new doxygen page
      doc: Reduce the validation errors of the docbook input
      doc: removed the word "interface" from the link names
      doc: Each class in doxygen output is a section
      doc: Document structures and unions in addition to classes
      doc: make itemized lists from doxygen work
      doc: add missing \memberof to wl_display_get_protocol_error
      doc: Remove deprecated functions from documentation
      doc: Remove wl_map from documentation
      doc: made functions taking wl_event_queue arg belong to wl_event_queue
      doc: compress the lists in the protocol docs some
      doc: Add object types and links to arguments int protocol documentation
      doc: remove redundant subtitles
      doc: there is no need to move the _8h files
      doc: Add macros and typedefs to the documentation
      doc: Put a dash between type/enum value and description
      doc: Intro text for doxygen output in it's own file
      configure.ac: Fallback to older detection code if pkg-config can't find expat

Bryce Harrington (12):
      Don't document an absent parameter.
      configure.ac: bump version to 1.6.91 for the alpha release
      cosmetic: Cleanup trailing whitespace
      tests: Fix typo "evnironment"
      tests: Correct return code handling
      gitignore:  Add the new cpp-compile-test
      configure.ac: bump version to 1.6.92 for rc1 release
      configure.ac: re-bump version to 1.6.92 for rc1 release
      doc: Fill in high level description for Surfaces
      tests: Fix FAIL in sanity-test (*timeout*) when Yama LSM enabled
      configure.ac: bump to version 1.6.93 for rc2 release
      configure.ac: bump to version 1.7.0 for release

Carlos Olmedo Escobar (1):
      Remove useless semicolon.

Daniel Stone (1):
      README: Tiny cosmetic change

Derek Foreman (4):
      cosmetic: convert some function returns from int to bool
      doc: fixed grammar and a typo
      cosmetic: Move the deprecated functions back to the end of the file
      event-loop: Dispatch idle callbacks twice

Imran Zaman (2):
      scanner, client: Added more error checks when strtol function is used
      server: increase listen queue to 128

Jon A. Cruz (5):
      doc: Removed redundant xslt output elements.
      doc: Invoke doxygen via the defined make variable.
      doc: Add config check for doxygen 1.6.0+.
      doc: General makefile cleanup.
      doc: Minor makefile cleanup.

Jon Cruz (4):
      doc: Switch from static image files to generated diagrams.
      doc: Create hot-linked areas in documents.
      doc: update diagrams for compatibility.
      doc: Fix out-of-tree build and also distcheck

Jonas Ã…dahl (5):
      scanner: Improve XML parse error reporting
      scanner: Remove stray newline
      protocol: Fix typo in wl_data_offer
      protocol: Clarify selection data offer destruction requirement
      server: Use existing id variable when inserting created object

Marek Chalupa (25):
      tests: use our own XDG_RUNTIME_DIR for tests
      tests: add timeout
      tests: add test_usleep and test_sleep functions
      tests: add timeout tests
      tests: use test_set_timeout in display-test
      queue-test: put back timeout
      tests: don't print '\0' character
      client: read_events should return -1 after an error
      tests: rename env vars for tests
      test-runner: print separator line after each test-case
      tests: use color when printing on terminal
      tests: detect if debugger is attached
      tests: split queue-test testcases
      tests: fix memory leak
      client: update obsolete comments
      client: update documentation about threading
      test-runner: move leak checking into function
      test-compositor: extend leak checks into clients
      tests: add tests for leak check in clients
      connection-test: add tests for closure leaks
      client: release display queue in wl_display_disconnect()
      client: unref or destroy proxy when releasing queue
      tests: add possibility to disable leak check for single test
      display-test: disable leak check in tests that use pthread
      test-runner: wait for concrete pid

Mariusz Ceier (2):
      tests: C++ compilation test
      scanner: Fix header generation for server protocols

Olivier Blin (1):
      gitignore: adpat to scanner and protocol path changes

Pekka Paalanen (7):
      configure.ac: bump version to 1.6.90
      protocol: define the concept of wl_surface role
      protocol: wl_pointer.set_cursor gives a role
      protocol: wl_data_device.start_drag may give a role
      protocol: wl_subcompositor.get_subsurface gives a role
      protocol: wl_shell.get_shell_surface gives a role
      protocol: define error codes for role reassignment

Peter Hutterer (1):
      doc: replace publican with xmlto

Philip Withnall (4):
      connection: Fix sendmsg() on FreeBSD
      event-loop.c: Use correct OS abstraction function for dupfd()
      wayland-server: Abort if a read from a client gives 0 length
      queue-test: Add another assertion

Rui Matos (1):
      doc/publican/Makefile.am: Add a missing order-only prerequisite

Ryo Munakata (1):
      connection: abort if a listener function is NULL

Seedo Eldho Paul (1):
      scanner.c: Use WL_PRINTF instead of __attribute__((format(printf)))

Srivardhan Hebbar (1):
      doc: Added API documentation for wl_display_destroy and wl_display_add_socket functions.

kabeer khan (1):
      Protocol : Added destructor to wl_data_device interface

More information about the wayland-devel mailing list