[Xcb] New libxcb and xcb-proto releases (code name: "Oh, shit")

Uli Schlachter psychon at znc.in
Thu Nov 14 09:52:22 PST 2013


as you may have noticed, things went a little downhill after the latest
releases. Let's try to fix this without breaking more stuff. Since no one showed
up for a week (and I am trying to avoid doing the things I am supposed to do),
here is what I thought about and wrote down:

First some more emergency releases (based on branches ontop of the latest releases):
- Create branches based on the latest releases for both libxcb and xcb-proto
- proto:
  - Remove that evil tab (python 3 compatibility)
  - revert the introduction of GE events to the XML
   - revert the XKB ABI issue (we end up with a broken definition for GetNames
and GetMap, but at least it will be as broken as in 1.9)
   - ("remove reference to nonexistant enum" since Peter asked for it)
- libxcb:
  - Revert the removal of xcb_ge_event_t
  - depend on the next proto release

I prepared the above and the git repos can be found here:
- http://cgit.freedesktop.org/~psychon/proto/log/?h=1.9-cleanup
- http://cgit.freedesktop.org/~psychon/libxcb/log/?h=xcb-1.9

For the actual release:
- Follow the steps from the ReleasingXcb wiki page!

Open issues:
- Get someone from the list to agree with this ;-)
- What should the tags be called? Previously, we just used the version numbers,
but Keith included the project name. (Bike shedding? :-) )
- Should we get 1.9 and 1.9.2 tags matching the previous convention?
- The NEWS file was terribly neglected. Entries for proto 1.9 (and 1.9.1) and
libxcb 1.9.1, 1.9.2 (and 1.9.3) are missing (See ReleasingXcb for details on how
to create these; amend into the version bump commit)

After the release:
- xcb-proto master:
  - Merge all the NEWS entries from the releases
  - revert GE introduction (cherry-pick from release?)
- libxcb master:
  - Merge all the NEWS entries from the releases
  - revert GE removal (cherry-pick from release?)
  - bump XKB soname
  - revert 9ae84ad187e2ba440c40f44b8eb21c82c2fdbf12 ("fix deadlock with
xcb_take_socket/return_socket v3")

If I didn't forget anything, the result of all of this is that master ends up in
a releasable state and all of this madness ends (this assumes that XKB is in a
usable state in master). I did not check really check this yet, but hope for the

This means that we can wait some months until the dust settles and then
hopefully do a 1.10 releases.

I hope for lots of comments on the above lists. It would also be nice if someone
else would want to handle this, but I guess I am stuck with this job....

If no one complaints (or is faster than me), I guess that I will do all of this
next weekend. Missing complaints will be interpreted as agreement.


who will complain more loudly the next time he reads "XCB is blocking the
availability of a significant improvement to Mesa."

P.S.: The above is also a reminder for myself on which steps are necessary, so
anything which I forgot won't be done (hence the hint to ReleasingXcb).

P.P.S.: After the above is done, I'll try to keep my hands out of xcb and do
more productive things for a while. Cairo-xlib is still waiting for a rewrite
that I promised ages ago...

P.P.P.S.: FDO bug #44690 "Add xcb to patchwork" was resolved. Sadly, I cannot
mark patches as "merged" yet, but at least it now tracks patches sent to the ML.
See http://patchwork.freedesktop.org/project/xcb/list/
Who needs a ~/.signature anyway?

More information about the Xcb mailing list