[Xcb] proto/lib: branches prepared for pulling

Daniel Martin consume.noise at gmail.com
Sun Aug 11 08:29:00 PDT 2013


On Sun, Aug 11, 2013 at 04:22:30PM +0200, Uli Schlachter wrote:
> Hi,
> 
> On 11.08.2013 15:51, Daniel Martin wrote:
> > I've collected a few outstanding patches and put them together in
> > branches. The branches are called 'for-master' and can be found on
> > github:
> >     https://github.com/bartsch/xcb-proto/
> > and
> >     https://github.com/bartsch/xcb-libxcb/
> 
> Yay, thanks! :-)
> 
> However, there is no "for-master" branch in your xcb-proto repository.

Hmm, I see, it doesn't show up at the "branches" tab. But it shows up in
the pull down menu of the "commits" tab. And there's a message above the
first commit:
    We're still calculating information about this branch, hang tight.
That might be the reason?

> > Just wanted to include the 2 patches for libxcb Alan wrote lately, until
> > I saw that they're already in master. So, I didn't found any other
> > outstanding patches then mine. If I missed something, please point me to
> > it and I'll include it.
> 
> Niclas Zeising sent in some patches yesterday, but those aren't for libxcb nor
> proto.
> 
> There are also a couple of xkb-related patches by Ran Benita around which I am
> trying hard to avoid looking at (sorry, but I'm not good at protocol stuff and
> XKB scares me).
> 
> There is still one patch by Christian König called "[PATCH 3/3] fix
> pthread_cond_wait and get_socket_back dependency" where we haven't reached
> consensus.
> 
> None of these look like obvious candidates for inclusion...
> 
> > I've put some flags behind the subjects to reflect there state if any:
> >     r ... reviewed
> >     t ... tested
> > 
> > For the XInput series Peter Harris wrote:
> >     "The parts I've looked at appear reasonable, but I don't know the
> >      python well enough to give an honest reviewed-by."
> > 
> > Patches in the misc. stuff are usually oneliners/easy cleanups.
> > 
> > 
> > xcb-proto/for-master includes:
> >   * XInput series:
> >       xinput: Cleanup implementation of XI up to v1.4
> >       xinput: Add XI v1.5
> >       xinput: Add XI v2.0
> >       xinput: Add XI v2.1
> >       xinput: Add XI v2.2
> >       xinput: Add XI v2.3
> >       xinput: Unlock uninterpreted lists
> >       Add support for reference to list to <popcount>
> >       xinput: Use <popcount> with reference on a list
> >       xinput: Use BARRIER from xfixes
> >   * misc.:
> >       xproto: Fix GContext error references in documentation
> 
> I still have a series titled "Fix #23403 - compiler padding causes reply parsing
> to use incorrect offsets" with one patch for lib and three for proto laying
> around. What happened to that?
> 
> > xcb-libxcb/for-master includes:
> >   * misc.:
> >       c_client.py: Always initialize xcb_align_to
> >       c_client.py: Do not create pointers in unions           [r]
> >       Make xsltproc optional
> >   * XInput series:
> >       xcb_util: Add xcb_popcount_len()
> 
> NAK. I can't see why this would belong into libxcb. We only have xcb_popcount()
> because the extensions need it to properly serialize requests.

In XI2 there're a lot of lists of masks followed by list of values. The
length of the list of values is the sum of popcount() on the masks.

I.e. valuator_mask + axisvalues in the KeyPress event:

    <event name="KeyPress" number="2" xge="true">
        <field type="DeviceId"  name="deviceid" altenum="Device" />
        <field type="TIMESTAMP" name="time" altenum="Time" />
        <!-- event specific fields -->
        <field type="CARD32"    name="detail" />
        <field type="WINDOW"    name="root" />
        <field type="WINDOW"    name="event" />
        <field type="WINDOW"    name="child" />
        <!-- 32 byte boundary -->
        <field type="FP1616"    name="root_x" />
        <field type="FP1616"    name="root_y" />
        <field type="FP1616"    name="event_x" />
        <field type="FP1616"    name="event_y" />
        <field type="CARD16"    name="buttons_len" />
        <field type="CARD16"    name="valuators_len" />
        <field type="DeviceId"  name="sourceid" altenum="Device" />
        <pad bytes="2" />
        <field type="CARD32"       name="flags" mask="KeyEventFlags" />
        <field type="ModifierInfo" name="mods" />
        <field type="GroupInfo"    name="group" />
        <list type="CARD32" name="button_mask">
            <fieldref>buttons_len</fieldref>
        </list>
        <list type="CARD32" name="valuator_mask"> <---+
            <fieldref>valuators_len</fieldref>        | popcount() on
        </list>                                       | masks in a list
        <list type="FP3232" name="axisvalues">        |
            <popcount ref="valuator_mask" /> ---------+
        </list>
    </event>

Or do you mean that I should generate code to iterate over the list of
masks and call xcb_popcount() directly?

> I can't find this patch on the mailing list. Did you ever send it in?

"Yes, sure, that was some time ago." That's what I first thought. But,
it looks like I realy didn't.

> >       c_client.py: Add support for <popcount> on a list
> >   * Autofoo series:
> >       Initialize automake earlier (bugfix for #66413)         [rt]
> >       Remove second AC_PREREQ, require version 2.60           [rt]
> >       Set AC_CONFIG_AUX_DIR to build-aux                      [rt]
> >       Use build-aux as autom4te cache directory               [rt]
> >       Use m4 directory                                        [rt]
> >       Sort gitignore, adjust pattern for config.h             [rt]
> >       tests: Add files to .gitignore
> 
> Wow, someone is actually running the test suite. :-)

I didn't, Ran Benita did. ;)

> > If noone objects against including the branches within a week, could
> > someone with write access pull them in, please?
> 
> I'll happily push the Autofoo series and (a newer version of?) "Make xsltproc
> optional", but I don't feel qualified for some of the other patches. Sorry.

Okay, I'll rip of the XI stuff and (re)send it _completly_ on the list
and I'll adjust the "Make xsltproc optional" patch.

> P.S.: Thanks for making me go through my mails. :-)

It wasn't that difficult. .o0( Note to myself: To poke Uli that there's
something on the list, remind him todo university stuff. )


More information about the Xcb mailing list