[Xcb-commit] Changes to 'refs/tags/0.9'

Josh Triplett josh at kemper.freedesktop.org
Mon Sep 25 13:53:00 PDT 2006


Tag '0.9' created by Josh Triplett <josh at freedesktop.org> at 2006-09-25 21:52 -0700

libxcb 0.9 release
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQBFGEGdGJuZRtD+evsRAkN6AJ4yIuYCEMpA6IE5Nss6TWCld0ek0wCff6Mt
g2Kfd3FMvx2isgWGh2fgmCA=
=iaoS
-----END PGP SIGNATURE-----

Changes since the dawn of time:
Alan Coopersmith:
      Only set CWARNFLAGS to gnu flags if $GCC is set. Otherwise check for Sun compiler and use its enhanced warning flag.
      Bugfix: xcb_conn.c included <sys/fcntl.h> instead of the POSIX-standard <fcntl.h>.

Eric Anholt:
      Move .cvsignore to .gitignore.
      Merge branch 'master' of git+ssh://anholt@git.freedesktop.org/git/xcb
      Add missing entries to .gitignore files.
      Remove unnecessary include.  Noticed by jamey.
      Retry a select() if it returns with EINTR.  Fixes IO errors in Xephyr, which is

Ian Osgood:
      Bugfix: null-terminate the path in sockaddr_un before using it.
      Add symbols for error and reply response_types,
      Restructure to remove most deprecation warnings.
      Merge branch 'master' of git+ssh://iano@git.freedesktop.org/git/xcb
      Remove last deprecation warning.
      Remove dependencies on Xmd.h and X.h
      Add an expression construct <bit bit="n"/>
      Merge branch 'master' of git+ssh://iano@git.freedesktop.org/git/xcb
      Fix XCBGetSetup to match prototype.
      Remove xcb-util dependency on proto/X11
      Remove proto/X11 dependencies from xcb-demo.
      Change <bit> syntax to <bit>n</bit> as Jamey and Josh suggested
      Work on the tutorial, and update xproto.xml to match:
      Merge branch 'master' of git+ssh://iano@git.freedesktop.org/git/xcb
      Changes to makefile to build libXCBxtest

Jamey Sharp:
      Workaround X server bug, fd.o #3210: if a GLXGetFBConfigs request is sent, fix the length field in the reply.
      Remove the old ChangeLog file. GIT makes that obsolete.
      Quit defining _XOPEN_SOURCE. We never needed it...
      Update .gitignores for .o files and autofoo stuff.
      Merge branch 'master' of git+ssh://git.freedesktop.org/git/xcb
      Control debugging, optimization, and warning flags all independently.
      Remove vestiges of adjacent request combining implementation. It is very dead.
      Remove USE_THREAD_ASSERT compile option. _xcb_conn_wait can no longer be re-entered, since we have no callback hooks now.
      Bugfix: move request_written update *before* _xcb_conn_wait in _xcb_out_flush. Otherwise a reply may be read before we record that we have sent the request, and then XCB gets... confused.
      Make the return value of _xcb_conn_wait boolean, instead of syscall-like.
      More return value changes.
      More return value changes, and make _xcb_in_read_packet static since it is not called from outside xcb_in.c.
      Ignore test byproducts.
      Move _xcb_write and _xcb_writev to xcb_out.c and make them static, since only _xcb_out_write calls them.
      Remove _xcb_assert_valid_sequence. One test is trivially true, and the other may be temporarily violated without anything bad happening.
      Move request_written update back where it was for now: doing it early can cause XCBWaitForReply to wrongly believe that the request has been flushed. Eventually, we should fix bug #6021.
      Minor performance fix: Only rearrange buffers for BIG-REQUESTs.
      Minor performance fix: Change the contract on XCBGetRequestSent so that it does not waste time re-locking. This is for Xlib, and Xlib has already locked.
      Add XCBGetQueuedRequestRead for Xlib that does no syscalls, just returns whatever XCB already knows about.
      Factor padding out of _xcb_out_write_block and into its callers, XCBSendRequest and write_setup.
      Simplify: Always use writev. (In _xcb_out_flush, convert the output queue to a single iovec if needed.)
      Bugfix: protect the output queue from being written while another thread is flushing it.
      Move _xcb_readn to xcb_in.c and make it static. Minor change to _xcb_read_block to not depend on _xcb_readn.
      Coalesce readn into _xcb_in_read and simplify.
      Quit using "-include config.h": use #ifdef HAVE_CONFIG_H etc. like everyone else.
      Remove XCB_CEIL and use a simpler definition for XCB_PAD.
      Move _xcb_read_block to xcb_in.c and make it static. Change calls in xcb_conn.c to _xcb_in_read_block instead.
      Move _xcb_set_fd_flags to xcb_conn.c and make it static. xcb_util.c now has only public functions.
      Take advantage of Requires and *.private fields for a more accurate pkg-config file.
      Coalesce _xcb_writev into _xcb_out_write and simplify.
      Rearrange an if statement that's been bothering me.
      XCB has not had tracing features for a long time: remove the remnants.
      Replace my old generic map ADT with a growable array for the extension cache.
      Replace pending_replies generic queue with a hand-implemented typesafe version.
      API/ABI break: Add flags to XCBSendRequest, first for error-checked requests.
      Replace events generic queue with hand-written typesafe version.
      Replace current_reply generic queue with hand-written version. No generic queues remain so delete their implementation.
      Delete unused xcb_list functions and refactor others.
      In struct XCBReplyData, change void *data to pthread_cond_t *data. That was dumb.
      Rename struct XCBReplyData to reader_list to follow my naming conventions and better reflect its purpose.
      Replace readers generic list with hand-written typesafe version.
      _xcb_list is no longer used, so remove it. Simplify _xcb_map.
      Move test for other writing threads *before* allocating a sequence number.
      Bugfix: how about *not* leaking all pending_replies when no reply matches, as often happens with Xlib?
      Add XCB_REQUEST_RAW flag for XCBSendRequest.
      Buffer a couple CARD32s on the stack instead of using an extra iovec. Also a bugfix: do not hold a reference to longlen after it goes out of scope.
      Separate notion of request-completed from current-request, and mark requests completed more aggressively. Detects some usage errors that are otherwise undetectable.
      API/ABI change: XCBSendRequest callers must pad to 4-byte boundaries now. When not in RAW mode, a null pointer for iov_base is replaced by up to 3 padding bytes.
      Use XPath position() function instead of xsl:number, to evaluate array indices while generating code for easier readability.
      Bugfix: The fixed-length part needs two iovecs reserved, just like all the other parts.
      assert() that XCBSendRequest was handed enough space to set opcodes and short length fields.
      Tweak to previous API change: Require that spare iovecs fall before vector[0]. Leave vector in well-defined state.
      Add 32-bit full_sequence fields to generic errors and events, so callers can always correlate events and errors with requests correctly.
      API/ABI change: XCBSendRequest returns the sequence number instead of using an out-parameter. Now 0 is a special sequence number indicating failure.
      Implement provably-correct sequence wrap handling. Add flag XCB_REQUEST_DISCARD_REPLY.
      Off-by-one error in the sequence-wrapping proof, and therefore in the corresponding code.
      Merge branch 'master' of git+ssh://git.freedesktop.org/git/xcb
      Fix off-by-one error that kept the last byte(s) of the output queue from being used.
      Move c->out.vec refs out of _xcb_out_write up to _xcb_conn_wait.
      Unify autofoo .gitignore bits into one top-level file, and remove resulting redundancies.
      Merge branch 'master' of git+ssh://git.freedesktop.org/git/xcb
      Move c->out.vec refs out of _xcb_conn_wait up to _xcb_out_flush.
      Portability fixes. Should help DragonFly and Solaris, and should not hurt anything else. Tested only on linux so far though.
      Remove c->out.vec. Pass iovecs directly down the call tree. Add _xcb_out_flush_to, refactor other functions, make write_block static.
      Only _xcb_conn_wait calls _xcb_out_write now, so move it to xcb_conn.c and make it static.
      Merge branch 'master' of git+ssh://git.freedesktop.org/git/xcb
      Use libXdmcp, if available with XdmcpWrap, for XDM-AUTHORIZATION-1. Closes bug #6106.
      The typedefs replacing Xmd.h conflict with Xmd.h. Here is a hacky workaround: FIXME!
      Add XCBPollForReply and deprecate XCBGetRequestRead and XCBGetQueuedRequestRead.
      Fixed poll_for_reply, added comments, and refactored XCBWaitForReply to call poll_for_reply.
      Restructure XCBWaitForReply to eliminate two gotos.
      Remove the last goto in XCB: XCBWaitForReply now permits multiple threads to force the same cookie.
      Add <sys/select.h> to xcb_in.c to fix bug #6122.
      Minor performance improvement: do not call _xcb_in_expect_reply unless it is needed. It is not often needed.
      Rename ConnSetup* to Setup*, Setup*Rep to Setup*, and SetupSuccess* to Setup*. Provide deprecated backwards-compatability functions and typedefs for the old names, to be removed before 1.0.
      Declare arguments const in the various structure accessors, so XCBGetSetup is not so painful to use.

Josh Triplett:
      Remove xcl and CVSROOT.
      Add *.tar.{bz2,gz} to .gitignore for the benefit of "make distcheck".
      Remove outdated fd.o-* entries from */debian/.gitignore (obsolete since before they came from .cvsignore).
      Split all non-essential extensions into their own separate libraries, named
      Put EXTHEADERS and EXTSOURCES in order.
      Use screensaver.xml
      Add xcbint.h to noinst_HEADERS, so it gets distributed.
      Stop running autoreconf in debian/rules, and remove Build-Depends for
      Update -dbg package handling to work with debhelper compat level 5.
      Stop installing the libtool .la files.
        * Debian X11R7 transition:
      Add Build-Depends on libxdmcp-dev.
      Change Depends on x-dev to x11proto-core-dev.
      Improve package descriptions.
      Merge branch 'master' of git+ssh://git.freedesktop.org/git/xcb
      Add .pc.in files for all the new extension libraries.  Generate .pc files from the new .pc.in files in configure.ac.  Install the new .pc files in Makefile.am, and add the new .pc.in files to EXTRA_DIST.
      Fix typo and rephrase checking message.
      Rename xcb-xfree86dri.pc.in to xcb-xf86dri.pc.in to match libXCBxf86dri, change its Libs line to use -lXCBxf86dri, and change configure.ac and Makefile.am accordingly.
      Fix a comment for the renaming of XCBConnSetupSuccessRep to XCBSetup, and fix another comment which had a copy-paste error.
      Remove execute bit on tutorial.
      Fix tutorial to use XCBSetup rather than the previous deprecated name XCBConnSetupSuccessRep.
      Add an explanation of libtool -version-info to src/Makefile.am, and add an explicit -version-info 0:0:0 for all libraries.
      Fix the year in COPYING.
      Update debian packaging to create library, -dev, and -dbg packages for each new extension library.
      Change libxcbxvmc0-dev Depends to libxcbxv0-dev, not libxv0-dev.

Patrick Caulfield:
      Add support for DECnet. Still needs configure-script options to enable.

TORRI Vincent:
      lots of fixes. Thanks to Indan Zupancic
      lots of fixes. Thanks to Indan Zupancic
      fixes + valid css
      fixes + valid css
      fix some font sizes
      wrong spaces
      Use the GCC 4 visibility extension to mark everything in xcbint.h hidden.
      doxygen documentation of the API



More information about the xcb-commit mailing list