1Release 1.14.1 (2020-10-08)
2===========================
3* Python 3.9 compatibility (stop using removed interfaces)
4* Fix handling of enum attributes in fields
5
6Release 1.14 (2020-02-22)
7=========================
8* Fix size computation of imported lists
9* Allow access to the original type in the XML
10* Add sysroot prefix to pkgconfig file (Fixes #9)
11
12Release 1.13 (2018-02-28)
13=========================
14* dri3: Add multi-plane/modifier protocol for v1.2
15* present: Add suboptimal-copy protocol for v1.2
16* randr: Add output-lease protocol for v1.6
17* Add support for variable-sized lists of FDs
18* xge: Add safe generic-event sending support
19* Fix initial connection handshaking
20* Updated XML DTD
21* Python 3.x cleanups and compatibility
22
23Release 1.12 (2016-05-18)
24=========================
25* xinput: Various padding-related additions and fixes
26* xinput: Various type fixes
27* xinput: Various mask fixes
28* xinput: Various additions of enums
29* Define new "altmask" attribute
30* Define new switch-case construct
31* xinput: Convert various construct from bitcase to case
32* xinput: Add full support for various requests
33* Define new sumof with nested expressions
34* present: Specify length of RedirectNotify.notifies
35* Define new listelement-ref construct
36* xinput: Support list axisvalues in events
37* Define new paramref construct
38* xfixes: Fix GetCursorImageAndName cursor image support
39* Replace valueparam with other construct in various extensions
40* Remove support for the valueparam construct
41* xprint: Fix some list definitions
42* randr: Add RandR 1.5 requests and data types
43* shm: Mark PutImage.send_event field as boolean
44* glx: Add IsEnabled request
45* Make padding explicit in various places
46* Fix typos in some documentation examples
47* Add an automatic alignment checker
48* Optionally enforce serilization of pads for ABI compatibility
49
50Release 1.11 (2014-08-01)
51=========================
52* Add support for <pad align="n" />
53* xkb: Fix padding bug in GetMap
54* xcbgen: Track directly included modules
55* xprint: Fix PrintGetAttributes reply
56* xkb: Fix use of nKTLevels
57* xv: Fix padding in struct AdaptorInfo
58* xproto: Fix EnterNotify documentation
59* Update the protocol schema
60* xinput: Add missing pad in DeviceResolutionCtl
61* xinput: Add missing pad in XIChangeHierarchy
62* xinput: Add missing modLatches as comment in LatchLockState
63
64Release 1.10 (2013-12-22)
65=========================
66* xkb: comment out portions that libxcb doesn't handle properly
67* Present: Remove reference to nonexistent enum
68* sync: Add missing namespace for the INT64 struct
69* sync: VALUETYPE and TESTTYPE are enum
70* xinput: Add XI2 event enum. for event selection
71* Rename ge events to GeGeneric events to avoid clash with libxcb
72
73Release 1.9 (2013-11-07)
74========================
75* Add Present protocol specification
76* Add DRI3
77* Add MIT-SHM AttachFd and CreateSegment requests
78* Add support for file descriptor request fields
79* Define X generic event structure
80* Add CARD64/INT64 protocol types
81* XKB: Rewrite AXOption
82* XKB: Fix values of AXFBOpt enum
83* xkb: Fix struct ExtensionDeviceNotify
84* xkb: Pad structs CommonDoodad and SALockDeviceBtn
85* randr: Fix GetProviderProperty reply
86* Enforce a bit or value in enum items
87* xkb: Add missing LedClass and BellClass enum values
88* xkb: Add missing 'supported' field to GetNamedIndicator reply
89* xkb: Unify Overlay1Behavior and Overlay2Behavior
90* xkb: Change DfltBtnAbsolute to the value used by the server
91* xkb: Fix key type map entry field order
92* xkb: Work around alignment problems in GetNames and GetMap replies
93* xinput: Use BARRIER from xfixes
94* xinput: Unlock uninterpreted lists
95* xinput: Add XI v2.3
96* xinput: Add XI v2.2
97* xinput: Add XI v2.1
98* xinput: Add XI v2.0
99* xinput: Add XI v1.5
100* xinput: Cleanup implementation of XI up to v1.4
101* Add support for X Generic Extension events
102* sync: Change value list param of CreateAlarm and ChangeAlarm into switch
103* res: Add ClientIdMask enum
104* res: Fix and rename list in ClientIdValue
105* randr: Add provider object support (RandR v1.4)
106* xtest: Version bump 2.1..2.2
107* glx: Version bump 1.3..1.4
108* composite: Version bump 0.3..0.4
109* xfixes: Rename enum DirectionMask to BarrierDirec.
110* XKB: Correct enum to mask
111* screensaver: Use enum and mask attributes
112* screensaver: Remove wrong fields from Notify event
113* Prototype for XRes v1.2
114* XKB: Fix calculation in GetIndicatorMap
115* XKB: Fix GetKbdByName
116* Allow multiple <enumref> in a <bitcase>
117* XKB: Change CARD8 to char where ASCII is expected
118* XKB: Fix VirtualMods
119* XKB: Fix SymInterpret
120* XKB: Fix CountedString16 padding
121* xkb: Revert half of d42d791 XKB: Fix broken events
122* xfixes: Update to version 5
123* autogen.sh: Implement GNOME Build API
124
125Release 1.8 (2012-10-05)
126========================
127* dri2: Update to DRI2 1.4
128* XKB: Fix broken events
129* xproto: add doc tags, xcbgen: handle doc tags
130
131Release 1.7.1 (2012-03-23)
132==========================
133* Add ge and xf86vidmode protocol descriptions
134* Remove now unnecessary files as everything is implemented in xcbgen
135* Rename the ExprType "parent" attribute to "parents"
136
137Release 1.7 (2012-01-11)
138========================
139* Add missing padding bytes to ChangeKeyboardMapping request
140* Corrected type of FakeInput rootX & rootY fields
141* Changed Exception message in case of unknown/unhandled XML tags
142* xcbgen: perform lenfield lookup within all anchestors
143* Add support for new expr tags popcount, enumref, sumof
144* Changed handling of anchestor types
145* Assign switch name to bitcases
146* Support name attribute for bitcases and set BitcaseType.has_name accordingly
147* Use absolute imports in xcbgen for Python 3 compatibilit
148* dri2: Update to version 1.3 (v2)
149* glx: Replace some 'reserved' fields with explicit padding
150* glx: Use glx:CONTEXT for share_list parameter of CreateNewContext
151* glx: Use FBCONFIG type for fbconfig parameter of CreateNewContext and CreatePixmap
152* glx: Add protocol for GLX_ARB_create_context and GLX_ARB_create_context_profile
153* Add support for fence sync objects
154* xf86dri: fix GetDrawableInfo reply
155* xproto: fix TranslateCoordinates reply
156* xcbgen: Add unop support
157* xf86vidmode: Fix padding expressions
158* dri2: Add proper padding before driver_name
159* Add libdir/exec_prefix to xcb-xproto.pc
160* Revive support for hex literals in protocol
161* Add description of new protocol elements
162* Add XKEYBOARD protocol description
163* Fix ChangeHosts address string
164* Fix SetFontPath path string encoding
165* Fix some fields name
166* Fix XKB GetState missing lookupMods field
167* Add RENDER 0.11 definitions
168
169Release 1.6 (2009-12-02)
170========================
171* Add DRI2 protocol, based off of dri2proto.h and the server code. (v2)
172* xf86dri.xml seems to have been wrong forever. Fixes bug #16894.
173* shape: add missing padding bytes to GetRectangles
174* Add XML description for the Generic Event extension.
175* Add XML description for the XFree86VidMode extension.
176* Fix typo in xf86vidmode.xml
177* Fix length calculation for xfixes/FetchRegion reply
178* Add pre-defined atoms to Atom enum
179
180Release 1.5 (2009-05-09)
181========================
182* Add support for mod mask Any
183* Add and use altenum (non-exhaustive enum)
184* Tweak some XInput specs
185* Fix milter spelling
186* Correct the length calculation for the value field of GetPropertyReply
187* xtest: rename window field to root
188* randr: add version 1.3 requests
189* shm: fix ShmCompletion event
190
191Release 1.4 (2009-02-16)
192========================
193* Add explicit padding in various protocol description.
194* Associate fields with the enum which describes their allowed values.
195
196Release 1.3 (2008-12-10)
197========================
198Explicit padding was added in various protocol description.
199
200Protcol fixes:
201* RandR
202* X proto
203* Change CARD8 to char when specs requires STRING8
204
205Release 1.2 (2008-07-17)
206========================
207New extensions:
208* XInput 1.4
209* SELinux 1.0
210
211Various fixes in protocol description:
212* X proto
213* X-Resource
214* XVMC
215* GLX
216
217New Python parser language-independent parts.
218
219Release 1.1 (2007-11-04)
220========================
221
222Incompatible change to the XML schema: rather than special-casing the
223treatment of protocol extension names, use the new extension-multiword
224attribute.  Normally, XCB prefixes C extension functions with
225xcb_extname_.  However, some of the existing extensions used multi-word
226names, such as xcb_big_requests_ or xcb_xc_misc_. Those extensions now
227use this attribute to match their existing defined API.  This allows the
228XCB code generator to avoid special-casing those extension names.
229
230Protocol updates:
231* Update DAMAGE to 1.1
232* Update RandR to version 1.2
233
234Bug fixes:
235* fix XSync Initialize call
236* Update autogen.sh to one that does objdir != srcdir.
237
238
239Release 1.0 (2006-11-23)
240========================
241
242The "Thanksgiving" release: We feel thankful to have it released.
243
244* Fix Bug #8990: randr type fixes
245* Fixed screen parameter type in several GLX requests to use CARD32 instead
246  of the SCREEN structure.
247* Corrected valueparam arguments to attribute lists in several requests and
248  a reply.
249* Estethic change for attribute parameter name
250* Remove support for the <localfield> tag: nothing needs it.
251* Fix Bug #8973: In UngrabKey, the 'key' field should have type KEYCODE, not
252  the more general CARD8.
253
254
255Release 1.0 RC3 (2006-11-02)
256============================
257
258* Add support for the Xinerama extension, version 1.1
259* Protocol descriptions now document the major and minor version numbers
260  of the extension version they support, through major-version and
261  minor-version attributes on the xcb tag.  XML Schema updated
262  accordingly.
263* Minor source reorganization: Now that the extensions do not get
264  installed to an extensions/ subdirectory, move them out of the
265  extensions/ subdirectory in the source as well.
266* Various protocol description fixes:
267    * Add REPEAT enumeration to Render extension to fix bug #8535
268    * Fix core xproto GrabMode enumeration (reported by Yang JianJun)
269    * Fix core xproto cap style enumeration (bug #8857).
270
271
272Release 1.0 RC2 (2006-10-07)
273============================
274
275* Add <import>xproto</import> explicitly to extensions that use xproto;
276  this goes along with the change in the code generator for libxcb 1.0 RC2 to
277  stop implicitly importing xproto.
278* Change "union" to "xidunion" for XID unions like DRAWABLE and FONTABLE,
279  so that the code generator can more easily declare these XID unions as
280  integer typedefs rather than unions.
281* Replace structures attempting to provide C type safety with CARD32 typedefs
282* render.xml no longer describes the CompositeGlyphs* requests as taking lists
283  of complicated unions of structures of lists: it says instead that they take
284  a LISTofBYTE. The caller is responsible for constructing an appropriate
285  sequence of glyph elements. Previously, the requests could not actually be
286  used because XCB did not correctly compute the length of the provided data.
287
288
289Release 1.0 RC1 (2006-09-25)
290============================
291
292The Great XCB Renaming
293----------------------
294
295* Rename shape_op and shape_kind to drop the "shape_" prefix, since
296  otherwise these types end up as xcb_shape_shape_{op,kind}_t.
297* Remove leading underscores from enums in the GLX protocol description,
298  previously needed to ensure a word separator, but now redundant.
299* The XML-XCB protocol descriptions have moved to /usr/share/xcb, with
300  extension descriptions no longer relegated to an extensions/ subdirectory.
301
302GIT Repository split
303--------------------
304
305Previously, several XCB-related projects all existed under the umbrella
306of a single monolithic GIT repository with per-project subdirectories.
307We have split this repository into individual per-project repositories.
308
309Josh Triplett and Jamey Sharp wrote a tool called git-split to
310accomplish this repository split. git-split reconstructs the history of
311a sub-project previously stored in a subdirectory of a larger
312repository. It constructs new commit objects based on the existing tree
313objects for the subtree in each commit, and discards commits which do
314not affect the history of the sub-project, as well as merges made
315unnecessary due to these discarded commits.
316
317We would like to acknowledge the work of the gobby team in creating a
318collaborative editor which greatly aided the development of git-split
319(as well as these release notes).
320