Make *_unserialize safe to use on buffers in-place
[free-sw/xcb/libxcb] / NEWS
diff --git a/NEWS b/NEWS
index 243079c..7969813 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,188 @@
+Release 1.7 (2010-08-13)
+========================
+- Always wake up readers after writing
+- Get rid of PATH_MAX and MAXPATHLEN
+- Add ~ operator support in code generator
+- xcb_open: Improve protocol/host parsing
+- xcb_connect_to_display_with_auth_info: Fix memory leak
+- Report which extensions are being built
+
+Release 1.6 (2010-04-09)
+========================
+- darwin: xnu doesn't support poll on ttys on the master side
+- Fix descriptor leak on memory error path
+- Support xcb_discard_reply
+- Open the X11 socket with close-on-exec flag
+- Fix authentication on hpux and Hurd
+
+Release 1.5 (2009-12-03)
+========================
+- setsockopt(SO_KEEPALIVE) on TCP display connections
+- Add DRI2 support
+- Fix check dependency
+- Cygwin build fix: Add -no-undefined to libtool flags
+
+Release 1.4 (2009-07-15)
+========================
+* Add majorCode, minorCode and resourceID fields to X generic error
+* Fix precedence bug: wrong length for big-requests preceded by sync
+* Fix libxcb-randr version info
+
+Release 1.3 (2009-05-29)
+========================
+* Copy full IPv4 mapping (Bug #20665)
+* Fix XID allocation
+* Use poll() instead of select() when available
+* Fix local socket connection on Hurd
+* Fix XDM-AUTHORIZATION-1
+* Disable Nagle on TCP socket
+
+Release 1.2 (2009-02-17)
+========================
+* Stop packaging auto-generated C files into tarball.
+
+Release 1.1.93 (2008-12-11)
+===========================
+Enhancements:
+* Apple: Enable support for launchd DISPLAY socket
+* Treat XIDs the same as other cardinal values.
+
+Release 1.1.92 (2008-11-01)
+===========================
+Enhancements:
+* Added small fix to support trailing fixed fields; also warning for non-pad fixed fields
+* Fixed overly aggressive warning about fixed field following variable
+* Added generation of extern "C" for compatibility with C++
+* Remove libxcb-xlib and xcbxlib.h.
+* Inline _xcb_lock_io, _xcb_unlock_io, and _xcb_wait_io.
+* Track 64-bit sequence numbers internally.
+* Use sequence number ranges in pending replies
+* Remove duplicate XCB_EXTENSION calls for Composite extension
+* Factorize m4 macros and add one to set X extensions
+* Allow compile-time setting for XCB queue buffer size
+* Support handing off socket write permission to external code.
+* Add support for the abstract socket namespace under Linux
+
+Bug fixes:
+* Fix tiny memory leak in read_packet
+* Fix some fd leaks in _xcb_open_*()
+
+Release 1.1 (2007-11-04)
+========================
+
+This release requires xcb-proto 1.1, due to the addition of the
+extension-multiword attribute to the XML schema.
+
+This release contains several important bug fixes, summarized below. It
+also contains a patch much like Novell's libxcb-sloppy-lock.diff.
+Rationale from the commit message follows. The patch and this rationale
+were authored by Jamey Sharp <jamey@minilop.net>, with agreement from
+Josh Triplett <josh@freedesktop.org>.
+
+    I strongly opposed proposals like this one for a long time.
+    Originally I had a very good reason: libX11, when compiled to use
+    XCB, would crash soon after a locking correctness violation, so it
+    was better to have an informative assert failure than a mystifying
+    crash soon after.
+
+    It took some time for me to realize that I'd changed the libX11
+    implementation (for unrelated reasons) so that it could survive most
+    invalid locking situations, as long as it wasn't actually being used
+    from multiple threads concurrently.
+
+    The other thing that has changed is that most of the code with
+    incorrect locking has now been fixed. The value of the assert is
+    accordingly lower.
+
+    However, remaining broken callers do need to be fixed. That's why
+    libXCB will still noisily print a stacktrace (if possible) on each
+    assertion failure, even when assert isn't actually invoked to
+    abort() the program; and that's why aborting is still default. This
+    environment variable is provided only for use as a temporary
+    workaround for broken applications.
+
+Enhancements:
+* Print a backtrace, if possible, on locking assertion failures.
+* Skip abort() on locking assertions if LIBXCB_ALLOW_SLOPPY_LOCK is set.
+* xcb_poll_for_event: Return already-read events before reading again.
+* Output a configuration summary at the end of ./configure.
+
+Bug fixes:
+* Don't hold the xlib-xcb lock while sleeping: that allows deadlock.
+* Allow unix:<screen> style display names again.
+* Bug #9119: test xcb_popcount
+* Fix unit tests for FreeBSD
+* NetBSD doesn't have AI_ADDRCONFIG: use it only if it's available.
+* Require libXau >= 0.99.2; earlier versions have a broken .pc file
+* Use substitition variables in xcb-xinerama.pc.in
+* Update autogen.sh to one that does objdir != srcdir
+* Add tools/* and autogen.sh to EXTRA_DIST.
+* Doxygen can now be fully disabled if desired.
+
+Documentation improvements:
+* Many fixes and updates to the tutorial.
+* Iterators, requests, and replies get partial Doxygen documentation.
+
+
+Release 1.0 (2006-11-23)
+========================
+
+The "Thanksgiving" release: We feel thankful to have it released.  Five years
+have passed since XCB's initial commit on September 3rd, 2001:
+    <http://gitweb.freedesktop.org/?p=xcb.git;a=commit;h=09e54c4a3c>
+
+* Support IPv6.  XCB now supports displays with IPv6 addresses, with or without
+  enclosing square brackets, or with hosts which resolve to IPv6 addresses, by
+  using getaddrinfo instead of gethostbyname, and by including support for
+  authentication for such connections.  This allows such displays as "::1:1.1".
+
+* XCB now uses the libpthread-stubs, to properly support optional use of
+  pthreads even on platforms which do not have all the necessary pthread stubs
+  in libc or otherwise available by default.
+
+* Switch from the old AM_PATH_CHECK macro to pkg-config.  check 0.9.4 is now
+  required to build XCB's unit tests.  The version that we were requiring was
+  not actually new enough to let our unit tests compile, and the AM_PATH_CHECK
+  macro is now considered deprecated.  We know that versions of check using
+  pkg-config are new enough to work, and the check dependency was optional
+  anyway, so we've dropped support for older versions.
+
+* Provide a xcb_prefetch_maximum_request_length counterpart to
+  xcb_get_maximum_request_length.
+
+* Fix Bug #5958: zero out padding bytes in requests.
+
+* Change xcb_connect to pass the display number to _xcb_get_auth_info, which
+  passes it to get_authptr.  This allows get_authptr to stop hacking the
+  display number out of the sockaddrs of various address families, such as
+  port - X_TCP_PORT, or the number after the last X in the UNIX socket path.
+
+* Remove --with-opt and --with-debug options from configure.ac; configure
+  supports the use of custom CFLAGS, so please use that instead.
+
+* Reove support for the <localfield> tag in protocol descriptions, since they
+  no longer use it, and since new protocol descriptions should not need it
+  either.
+
+* xcb-proto has no libraries or headers, so don't use XCBPROTO_CFLAGS or
+  XCBPROTO_LIBS.
+
+* XCB builds which use xdmcp now include it in Requires.private, to support
+  static linking.
+
+* Replace "long" with uint32_t when used for a 32-bit quantity
+
+* Various enhancements to the generation of documentation with Doxygen:
+  * Check for doxygen in configure.ac
+  * Fix some Doxygen warnings.
+  * Install documentation.
+  * Handle out-of-tree builds, with srcdir != builddir.  xcb.doxygen now gets
+    generated from xcb.doxygen.in, so that it can use top_builddir and
+    top_srcdir to find source and to output documentation.
+  * Fill in PROJECT_NUMBER from @VERSION@, now that we have it readily
+    available via autoconf.
+
+
 Release 1.0 RC3 (2006-11-02)
 ============================