We've been talking for a bit now on the Xorg release-wranglers calls and mailing lists (and at the recent X Developer's Conference) about what should be in the future releases of the Xorg distribution. We've tossed around the idea having another release sometime this summer, but nothing has been decided for sure yet. Some of these are already in either branches off the Xorg CVS tree on freedestkop.org or in the experimental Xserver CVS tree on freedesktop.org.
Features that are being discussed as candidates for inclusion in the next release at this point include:
- Composite Extension
- Redirects window drawing to an offscreen pixmap so another client (a "composite manager") can transform the contents before displaying it.
- Damage Extension
- Sends notice when a client updates its windows with the "damaged" region so that a client such as a composite manager or screen magnifier or remote redirector (like VNC) can update the transformed actual output.
- X Event Interception Extension (XEvIE)
- Allows a client such as a composite manager or accessibility helper to intercept and modify events from input devices before delivering them to the final destination clients.
- XFixes Extension
- Grab bag of miscellaneous fixes to correct oversights in the original X protocol design.
- Distributed Multihead X (DMX)
- A single virtual server that displays onto video cards in multiple machines (similar things are done in existing commercial products such as Sun Fire Visual Grid System and X-Software's X-Meta-X).
The first four extensions are most interesting as a group, where they will enable both accessibility projects such as the magnifier and on-screen keyboard portions of the GNOME Accessibility Project, and eye-candy projects such as Project Looking Glass and translucent windows.
There's some longer-term projects that have been discussed and which the early work on may appear as well:
- Document Conversion
- The documents in the Xorg tree are in a variety of formats, including troff with several different macro packages, FrameMaker, TeX, and a few others. To make it easier to deal with them in the future, and allow editing and manipulations with free software tools, it's been proposed to convert them all to a common, standard format such as the DocBook XML format.
- GNU Autotool Support
- X has been built for years with the Imake build tool, but these days few other projects use it, while many use the GNU Autotools (autoconf, automake, libtool, pkgconfig, etc.) so many more developers know how to use them. Making the tree build with either Imake or the autotools so that developers can work with the toolchain they know best has been proposed as a way to help bring more developers in and get them up to speed faster.
- The X tree is a really big tree, currently released as one huge monolithic entity which results in large amounts of work for distributors to integrate new releases, spaced well apart at irregular intervals. Several people who work in packaging and distributing the releases would like to see the tree broken down into smaller components which can be released separately, so they can have smaller integration projects spread out over time to bring in the latest changes into their releases. Exactly how to accomplish this is still a topic of considerable debate.
And of course there's a variety of bug fixes and smaller enhancements that have gone in already and that will continue to go in (see the CVS ChangeLog and the freedesktop.org Bugzilla for details).
If even some of these make it, it looks like the next Xorg release will emerge from being perceived as "just a fork of XFree86" into an identity of it's own.