Remove xcl and CVSROOT.
[free-sw/xcb/libxcb] / ChangeLog
1 2005-12-28  Jamey Sharp  <jamey@minilop.net>
2
3         * configure.ac:
4         Replace obsolete AC_OUTPUT(...) call with AC_CONFIG_FILES(...)
5         and the no-argument AC_OUTPUT macro.
6
7 2005-12-24  Jamey Sharp  <jamey@minilop.net>
8
9         * src/xcb_xlib.c, src/xcbxlib.h, src/Makefile.am:
10         New header and two functions specifically for Xlib's use, so
11         we can quit installing xcbint.h.
12
13         * src/xcb_out.c, src/xcbint.h:
14         Now that Xlib uses entirely public API, force_sequence_wrap is
15         purely internal to xcb_out.
16
17 2005-12-20  Jamey Sharp  <jamey@minilop.net>
18
19         * src/xcb_util.c:
20         Use AF_UNIX instead of PF_UNIX, because they're interchangeable
21         on Linux (and 4.x BSD?) but on MacOS X the latter is not
22         available. Thanks to Ian Osgood for testing.
23
24 2005-12-12  Jamey Sharp  <jamey@minilop.net>
25
26         * src/xcb_util.c:
27         Rewrite XCBParseDisplay to handle all error cases correctly.
28         Thanks to Travis Spencer for pointing out a problem with
29         the previous sscanf call; turns out that sscanf won't do what
30         I want anyway, so this version just uses strtoul.
31
32 2005-12-12  Jamey Sharp  <jamey@minilop.net>
33
34         * tests/check_public.c:
35         Fix segfault in fail_unless calls and provide more useful error
36         messages. Also remove DISPLAY from the environment and test
37         ParseDisplay on a null pointer.
38
39 2005-12-07  Jamey Sharp  <jamey@minilop.net>
40
41         * src/xcb.h, src/xcb_in.c:
42         Use GCC attribute extension, if available, to mark some
43         functions deprecated; and rename XCBWaitEvent to
44         XCBWaitForEvent, with a deprecated backwards compatibility
45         function.
46
47 2005-12-07  Jamey Sharp  <jamey@minilop.net>
48
49         * src/xcb.h, src/xcb_conn.c, src/xcb_util.c:
50         Rename XCBConnect to XCBConnectToFD, and implement XCBConnect
51         and XCBConnectToDisplayWithAuthInfo, as specified by the XcbApi
52         documentation. Provide a trivial implementation of deprecated
53         XCBConnectBasic for backwards compatibility. Fix XCBParseDisplay
54         to accept a null screen pointer.
55
56 2005-09-30  Trevor Woerner <twoerner.x@gmail.com>
57
58         reviewer: Jamey Sharp <jamey@minilop.net>
59
60         * Makefile.am, configure.ac, src/Makefile.am, tests/Makefile.am,
61           src/check_all.c, src/check_public.c, src/check_suites.h:
62         Created a new directory called "tests" where the unit tests
63         will reside, separate from other files. Moved the unit
64         test files from the "src" directory into the new "tests"
65         directory.
66
67         * configure.ac, tests/CheckLog.xsl, tests/.cvsignore,
68           tests/Makefile.am, tests/check_all.c:
69         Added an XSLT transform to post-process the XML log file which
70         is generated by the unit test suite into an HTML page. Added
71         the necessary hooks into the build system to have this
72         translation occur when necessary as part of the build process.
73
74 2005-08-15  Trevor Woerner <twoerner.x@gmail.com>
75
76         reviewer: Jamey Sharp <jamey@minilop.net>
77
78         * src/Makefile.am:
79         Make builds work when the source and build directories
80         are different.
81
82 2005-08-03  Trevor Woerner <twoerner.x@gmail.com>
83
84         reviewer: Jamey Sharp <jamey@minilop.net>
85
86         * configure.ac:
87         Allow people to not have check as long as they have at
88         least automake version 1.9. Older versions of automake
89         still work as long as check is installed or the NoCheck
90         instructions are followed.
91
92 2005-07-21  Jamey Sharp  <jamey@minilop.net>
93
94         * src/xcb_conn.c:
95         Fix one uninitialized memory warning from Valgrind.
96         More will have to wait.
97
98 2005-07-21  Jamey Sharp  <jamey@minilop.net>
99
100         * src/xcb_ext.c:
101         Fix memory leak reported by Carl Worth (thanks Carl!).
102
103 2005-05-22  Josh Triplett  <josh@freedesktop.org>
104
105         * src/c-client.xsl:
106         Permit unions to have fixed-length list fields.
107
108 2005-05-21  Josh Triplett  <josh@freedesktop.org>
109
110         * src/c-client.xsl:
111         In function parameters and structure fields, line up field names in
112         the same starting column.
113
114 2005-05-17  Josh Triplett  <josh@freedesktop.org>
115
116         * src/c-client.xsl:
117         Make header files self-sufficient, by including xcb.h in the
118         generated headers rather than the generated sources.
119
120         * src/xcbext.h:
121         Make xcbext.h self-sufficient, by including xcb.h.
122
123 2005-05-17  Josh Triplett  <josh@freedesktop.org>
124
125         * src/c-client.xsl:
126         Line up function parameters with opening parenthesis.
127
128 2005-05-17  Jamey Sharp  <jamey@minilop.net>
129
130         * src/c-client.xsl:
131         Improve whitespace output on function declarations.
132
133 2005-04-23  Jeremy Kolb  <jkolb@brandeis.edu>
134         * src/c-client.xsl:
135         Added list support for typedefs.
136         GLX now compiles.
137
138 2005-04-23  Josh Triplett  <josh@freedesktop.org>
139
140         * src/c-client.xsl:
141         Allow protocol descriptions to explicitly qualify types with a
142         namespace, which should be the value of the header attribute from
143         the protocol description containing the desired type.
144
145 2005-04-10  Jamey Sharp  <jamey@minilop.net>
146
147         * src/xcb.h, src/xcb_in.c:
148         New public function XCBGetRequestRead: returns the last sequence
149         number that the server is known to have processed. This function
150         enables apps to determine whether forcing a cookie is going to
151         block.
152
153 2005-04-09  Jamey Sharp  <jamey@minilop.net>
154
155         * src/xcb_ext.c:
156         Implement XCBPrefetchExtensionData. An extension can now be in
157         one of three states in a particular connection's cache: not
158         queried; query cookie available; and query reply available.
159
160 2005-04-09  Jamey Sharp  <jamey@minilop.net>
161
162         * src/xcb_ext.c, src/xcbint.h:
163         Assign a display-independent unique integer to each XCBExtension
164         structure. Use a map instead of a list for the extension cache.
165         Key the map on the assigned integer.
166
167 2005-04-06  Jeremy Kolb  <jkolb@brandeis.edu>
168
169         * src/c-client.xsl:
170         Added support for c types float and double.
171         Needed for GLX extension.
172
173 2005-04-02  Jamey Sharp  <jamey@minilop.net>
174
175         * src/c-client.xsl:
176         Workaround for XSLT processors that can't understand attribute
177         values of the form '{{ "{...}" }}'. (What? That looks completely
178         clear to me. *grin*)
179
180 2005-04-01  Jamey Sharp  <jamey@minilop.net>
181
182         * src/xcb_list.c:
183         Make the _destroy operations no-op on null pointers.
184
185 2005-03-31  Jamey Sharp  <jamey@minilop.net>
186
187         * src/xcb.h, src/xcb_conn.c, src/xcb_out.c, src/xcbint.h:
188         Lazily check for BIG-REQUESTS support. The first call to
189         XCBGetMaximumRequestLength takes the two-round-trip penalty for
190         discovering BIG-REQUESTS support, and caches the result for
191         subsequent calls. Also XCBSendRequest is now careful to only ask
192         for the true maximum request length if the length from the
193         connection setup data isn't sufficient for the current request.
194
195 2005-03-31  Jamey Sharp  <jamey@minilop.net>
196
197         * src/xcb_in.c:
198         Fix X error handling to, uh, not hang.
199
200 2005-03-30  Jamey Sharp  <jamey@minilop.net>
201
202         * src/xcb_in.c, src/xcbint.h:
203         Accept zero or more replies to any request. Eliminates, for the
204         moment, nearly all run-time error checking regarding the number
205         of replies expected for a particular request. Also breaks the
206         unexpected reply callback, which is OK because I was going to
207         remove it anyway, and now I've done so.
208
209 2005-03-30  Jamey Sharp  <jamey@minilop.net>
210
211         * src/xcb_list.c, src/xcbint.h:
212         Add a map ADT implemented using the list ADT.
213
214 2005-03-28  Vincent Torri  <torri@iecn.u-nancy.fr>
215
216         * doc/tutorial/index.html, doc/tutorial/xcb.css:
217         Add a tutorial
218
219 2005-03-27  Jeremy Kolb  <jkolb@brandeis.edu>
220
221         * src/Makefile.am:
222         Added xf86dri (xcb-proto/src/extensions/xf86dri.h).
223         Removed compilation of record as it's broken.
224
225 2005-03-25  Jamey Sharp  <jamey@minilop.net>
226
227         * src/xcb_in.c:
228         Instead of storing a pending flag per reply record, look in the
229         readers list to find out whether there's a reader waiting for
230         the reply we've just been asked to wait for.
231
232 2005-03-25  Jamey Sharp  <jamey@minilop.net>
233
234         * src/xcb_list.c, src/xcbint.h:
235         Add _xcb_queue_is_empty.
236
237 2005-03-25  Jamey Sharp  <jamey@minilop.net>
238
239         * src/xcb_in.c, src/xcb_list.c, src/xcbint.h:
240         Add a queue ADT. Currently implemented using the list ADT, but
241         analysis will probably suggest a better data structure. The
242         split is intended to help that analysis.
243
244 2005-03-25  Jamey Sharp  <jamey@minilop.net>
245
246         * src/xcb_in.c, src/xcb_list.c, src/xcbint.h:
247         Remove _xcb_list_length. (Two callers in xcb_in didn't actually
248         care about the returned value beyond "empty" or "non-empty",
249         which they can get other ways.) _xcb_in_events_length became
250         obsolete in the process, and I took _xcb_list_clear out of
251         xcbint.h while I was at it because only _xcb_list_delete calls
252         it these days.
253
254 2005-03-25  Jamey Sharp  <jamey@minilop.net>
255
256         * src/xcb.h, src/xcb_in.c:
257         Remove XCBEventQueueLength and XCBEventQueueClear: they're not
258         part of the new API, and they interfere with analysis of the
259         _xcb_list implementation.
260
261 2005-03-24  Josh Triplett  <josh@freedesktop.org>
262
263         * configure.ac:
264         Change pdx.freedesktop.org to lists.freedesktop.org in package
265         email address.
266
267 2005-03-23  Jamey Sharp  <jamey@minilop.net>
268
269         * src/xcb_conn.c, src/xcb_in.c:
270         avn@daemon.hole.ru pointed out two memory leaks in XCB, which
271         this update fixes. I also introduced a third a couple of days
272         ago, which this fixes as well.
273
274 2005-03-23  Jamey Sharp  <jamey@minilop.net>
275
276         * src/xcb_in.c:
277         Quit storing an "error" flag: it's redundant with the contents
278         of the packet that it was stored with.
279
280 2005-03-22  Jamey Sharp  <jamey@minilop.net>
281
282         * src/xcb_in.c, src/xcbint.h:
283         My recent Xlib patch stressed XCB's pending reply queue in ways
284         it has never been stressed before, with thousands of entries.
285         Profiling revealed that wake_up_next_reader was taking most of
286         the cycles of my test app with its linear search of the reply
287         queue. So I gave it its own 'readers' queue, which can have at
288         most one entry per thread, and which can be no more than the
289         number of pending replies. In the current implementation the
290         readers queue uses only constant-time operations, too.
291
292 2005-03-20  Jamey Sharp  <jamey@minilop.net>
293
294         * src/xcb_in.c:
295         Wait for the last known read sequence number to pass the request
296         we're waiting for, instead of checking whether data has arrived
297         for the current request. Causes null to be returned if somebody
298         screwed up by expecting a reply when none can come; relied on by
299         new Xlib/XCB bits that intentionally and routinely screw up this
300         way because the API doesn't give them enough information.
301
302         * src/xcb_list.c, src/xcbint.h:
303         Add _xcb_list_peek_head so Xlib doesn't have to repeatedly
304         remove and re-insert the item at the head of its new
305         pending_requests queue. Profiling showed that was a significant
306         performance hit for the above-mentioned patch and with this
307         three-line function apps are actually usable again.
308
309 2004-11-26  Josh Triplett  <josh@freedesktop.org>
310
311         * src/c-client.xsl:
312         In do-request processing, use the existing num-parts variable
313         rather than recalculating the same expression.
314
315 2004-11-26  Josh Triplett  <josh@freedesktop.org>
316
317         * src/c-client.xsl:
318           * Add a list of known core types, and don't search all the
319             protocol descriptions for types in that list.  This
320             significantly shortens the processing time.
321           * Search for all definitions of a non-core type, not just the
322             first, in order to check for duplicate definitions.
323           * Add an error message for non-core types with no definitions
324             found.
325
326 2004-11-10  Josh Triplett  <josh@freedesktop.org>
327
328         * src/c-client.xsl:
329         Don't create a separate local variable for exprfields, and change
330         an explicit xsl:for-each to an xsl:apply-templates.
331
332 2004-11-10  Josh Triplett  <josh@freedesktop.org>
333
334         * src/c-client.xsl:
335         Prefix variables in request functions with "xcb_" to avoid
336         collisions with field names.
337
338 2004-11-09  Josh Triplett  <josh@freedesktop.org>
339
340         * src/c-client.xsl:
341         * src/xcb_out.c:
342         * src/xcbext.h:
343         More API changes: Put constant request-specific data into a static
344         const structure in each request function.
345
346 2004-11-09  Josh Triplett  <josh@freedesktop.org>
347
348         * src/c-client.xsl:
349         Add support for an <indent> tag in a function body, which indents
350         the <l>s it contains.
351
352         * debian/.cvsignore:
353         debian/copyright is a generated file, so add it to
354         debian/.cvsignore
355         
356 2004-11-08  Jamey Sharp  <jamey@minilop.net>
357
358         * src/xcb_conn.c:
359         Make the __thread-based assertion a compile-time
360         option, defaulting to off. It breaks on many systems
361         and isn't critical to XCB's functionality.
362
363 2004-11-07  Josh Triplett  <josh@freedesktop.org>
364
365         * c-client.xsl:
366         Update XSLT to deal with change from extension element to
367         extension-name and extension-xname attributes on xcb element.
368
369 2004-11-06  Josh Triplett  <josh@freedesktop.org>
370
371         * xcb.h:
372         * xcb_auth.c:
373         * xcb_conn.c:
374         * xcb_ext.c:
375         * xcb_in.c:
376         * xcb_list.c:
377         * xcb_out.c:
378         * xcb_util.c:
379         * xcb_xid.c:
380         * xcbext.h:
381         * xcbint.h:
382         Include license in every file rather than referencing COPYING.
383         Update copyright notices to 2004.
384
385         * COPYING:
386         Remove non-applicable licenses from COPYING file.
387
388 2004-11-06  Josh Triplett  <josh@freedesktop.org>
389
390         * configure.ac:
391         * src/.cvsignore:
392         * src/Makefile.am:
393         * src/xcb.h:
394         Merged changes for XML-XCB project.
395
396         * src/c-client.xsl:
397         * src/xcb.h:
398         Add XSLT binding generator and non-M4 version of xcb.h.
399         
400         * src/client-c.xcb:
401         * src/xcb.h.m4:
402         Remove M4 binding generator and M4 version of xcb.h.
403
404         * debian/changelog:
405         * debian/control:
406         * debian/copyright.debian:
407         * debian/rules:
408         Updated Debian packaging.
409
410 2004-09-30  Jamey Sharp  <jamey@minilop.net>
411
412         * src/xcbext.h:
413         * src/xcb_in.c:
414         * src/client-c.xcb:
415         Renamed XCBWaitReply to XCBWaitForReply for new API.
416
417 2004-09-30  Jamey Sharp  <jamey@minilop.net>
418
419         * src/Makefile.am:
420         Fix build failure when compiling tests.
421
422 2004-09-29  Jamey Sharp  <jamey@minilop.net>
423
424         * src/xcb.h.m4:
425         * src/xcb_in.c:
426         Added XCBPollForEvent function from new API.
427
428 2004-09-29  Jamey Sharp  <jamey@minilop.net>
429
430         * src/xcb.h.m4:
431         * src/xcbext.h:
432         * src/client-c.xcb:
433         * src/xcb_ext.c:
434         Update the extension cache for its new API. The
435         optimizations that this API enables are not yet
436         implemented, but the current implementation should
437         at least function correctly.
438
439 2004-09-29  Jamey Sharp  <jamey@minilop.net>
440
441         * src/xcb_util.c:
442         * src/xcbext.h:
443         Oops, XCBPopcount was supposed to change argument
444         types too.
445
446 2004-09-29  Jamey Sharp  <jamey@minilop.net>
447
448         * src/client-c.xcb:
449         * src/xcb_util.c:
450         * src/xcbext.h:
451         Renamed XCBOnes to XCBPopcount as per new API spec.
452
453 2004-09-29  Jamey Sharp  <jamey@minilop.net>
454
455         * src/xcbext.h:
456         * src/xcb.h.m4:
457         * src/Makefile.am:
458         * src/client-c.xcb:
459         * src/xcb_in.c:
460         * src/xcb_out.c:
461         * src/xcb_util.c:
462         * src/xcb_xid.c:
463         Moved declarations that are only useful to protocol
464         implementations into a separate header file,
465         xcbext.h.
466
467 2004-09-28  Jamey Sharp  <jamey@minilop.net>
468
469         * src/xcbint.h:
470         * src/xcb_conn.c:
471         Add internal sanity check macros for sequence
472         numbers, and invoke them every time _xcb_conn_wait
473         is entered.
474
475 2004-09-28  Jamey Sharp  <jamey@minilop.net>
476
477         * src/client-c.xcb:
478         Allow LISTPARAMs to omit the length argument. When
479         generating C code, a LOCALPARAM is automatically
480         generated for the length if the length argument is
481         omitted.
482
483 2004-08-13  Jamey Sharp  <jamey@minilop.net>
484
485         * configure.ac:
486         * src/Makefile.am:
487         * src/.cvsignore:
488         * src/check_all.c:
489         * src/check_suites.h:
490         * src/check_public.c:
491         Add the first unit tests for XCB. This adds a build
492         dependency on 'check'; I hope somebody will make it
493         more of a build recommendation.
494
495 2004-08-13  Jamey Sharp  <jamey@minilop.net>
496
497         * src/xcb_conn.c:
498         Add a sanity check: assert() that _xcb_conn_wait
499         will not be re-entered within the same thread. This
500         turns out not to be true in some current buggy code.
501         Xlib re-enters from _XAsyncReplyHandler in
502         src/xcl/display.c; and the X Test Suite seems to
503         catch SIGABRT and continue running.
504
505 2004-08-10  Jamey Sharp  <jamey@minilop.net>
506
507         * src/xcb_out.c:
508         I misread the BIG-REQUESTS specification. The long
509         length field needs to count itself too.
510
511 2004-07-24  Jamey Sharp  <jamey@minilop.net>
512
513         * src/client-c.xcb:
514         Renamed functions that return new iterators to
515         *Iter, to avoid conflict with similar functions that
516         return arrays.
517
518         Deprecating ARRAYFIELD in favor of LISTFIELD, which
519         now generates both array and iterator accessors. You
520         get an array accessor as long as the element type is
521         fixed length; you get an interator accessor as long
522         as the base type has an iterator. You always get a
523         'Length' function.
524
525 2004-07-24  Jamey Sharp  <jamey@minilop.net>
526
527         * src/xcb_auth.c:
528         Bart cleaned up some code that I made ugly, and
529         I'm fixing a warning that resulted from a static
530         function being created but not necessarily used.
531
532 2004-07-07  Jamey Sharp  <jamey@minilop.net>
533
534         * src/xcb_xid.c:
535         OK, it might be a good idea to commit something
536         that compiles. I thought I'd tested this change...
537
538 2004-07-06  Jamey Sharp  <jamey@minilop.net>
539
540         * src/xcbint.h:
541         * src/xcb_xid.c:
542         Added support for the XC-Misc extension's ability
543         to request more XIDs from the server when the
544         client runs out of them.
545
546 2004-07-06  Jamey Sharp  <jamey@minilop.net>
547
548         * src/xcb.h.m4:
549         * src/xcb_auth.c:
550         * src/xcb_util.c:
551         Removed XCBNextNonce, and the nonce parameter of
552         XCBGetAuthInfo, from the API. XCB can compute
553         that just fine without help from the application.
554
555 2004-07-06  Jamey Sharp  <jamey@minilop.net>
556
557         * src/Makefile.am:
558         Importing part of patches, adding SYNC, by
559         Mikko Markus Torni <mikko.markus.torni@iki.fi>.
560         This needed better padding computation in XCB
561         before it could be implemented cleanly.
562
563 2004-07-02  Jamey Sharp  <jamey@minilop.net>
564
565         * src/Makefile.am:
566         Importing part of patches, adding XC-MISC, by
567         Mikko Markus Torni <mikko.markus.torni@iki.fi>.
568
569 2004-07-02  Jamey Sharp  <jamey@minilop.net>
570
571         * src/xcb.h.m4:
572         * src/xcb_in.c:
573         Remove XCBEventQueueRemove and XCBEventQueueFind.
574         Their existence in the API constrains the
575         implementation, and they're not useful for real
576         code, like toolkits, anyway.
577
578 2004-07-02  Jamey Sharp  <jamey@minilop.net>
579
580         * src/client-c.xcb:
581         * src/xcb.h.m4:
582         XCB headers are now compatible with C++ source.
583
584 2004-07-02  Jamey Sharp  <jamey@minilop.net>
585
586         * src/client-c.xcb:
587         * src/xcb.h.m4:
588         Keith's fix for padding didn't quite work, despite
589         looking quite sensible at the time. Replaced
590         XCB_TYPE_CEIL with XCB_TYPE_PAD and made all the
591         iterators, lists, and arrays count the number of
592         bytes from the beginning of the current request.
593
594 2004-07-02  Jamey Sharp  <jamey@minilop.net>
595
596         * src/xcb_out.c:
597         * src/xcbint.h:
598         Force a response from the server if we haven't seen
599         one in 65530 requests. If you don't do this, XCB
600         gets confused the next time it waits for a reply.
601
602 2004-06-16  Keith Packard  <keithp@keithp.com>
603
604         * src/client-c.xcb:
605         * src/xcb.h.m4:
606         Must round datatype lengths to 4-byte boundary for
607         NEXTFIELD and End macros.  Created new XCB_TYPE_CEIL
608         macro for this purpose and used it in a couple of
609         places.  It is to be hoped that this represents all
610         of the locations that need changing...