Ramp up to D-Bus 0.90

John (J5) Palmieri johnp at redhat.com
Fri Jul 7 09:06:13 PDT 2006


On Fri, 2006-07-07 at 11:15 -0400, Havoc Pennington wrote:
> John (J5) Palmieri wrote:
> > I would love for people to get their patches in and for us to release a
> > 0.90 once the bindings are split out.  0.90 would be a feature/API
> > freeze for the core.  Any comments, concerns?
> > 
> 
> Need to go through the "for 1.0" list in doc/TODO and deal with these 
> things somehow; either say "it's not important because..." and remove it 
> from the list, or fix it...
> 
> Havoc


Notes and patches for the remaining TODO items:

 - add a new return code from dbus_connection_dispatch() called 
   IN_PROGRESS or RECURSED or something, indicating that DATA_REMAINS
   but another dispatch is in progress, so we can't dispatch at 
   this time. OR maybe just switch to recursive locks for the dispatch 
   locks. Fixes the recursive deadlock. See the @todo for more
   and this thread:
http://lists.freedesktop.org/archives/dbus/2006-February/004128.html

Is this important for 1.0?  Right now I think we decided for the
bindings to work around this issue.

====================================================================

 - Remove all deprecated functions 

Patch provided

====================================================================

 - Audit @todo and FIXME for security issues

0.90-1.0 timeframe

====================================================================

 - the "break loader" and valid/invalid message tests are all disabled;
   they need to be fixed and re-enabled with the new message args stuff.
   I think I want to drop the .message files thing and just have code
   that generates messages, more like the tests for
   dbus-marshal-recursive.c (this is mostly done now, just needs some
   cleanup)

Remove this for 1.0 or leave this for 0.90-1.0 timeframe?  Test coverage
is already very good and we have been running without these tests for
awhile now.

====================================================================

 - just before 1.0, try a HAVE_INT64=0 build and be sure it runs

0.90-1.0 timeframe

====================================================================

 - dbus-pending-call.c has some API and thread safety issues to review.
   DBusPendingCall is used from multiple threads with no locks.
   Either DBusConnection's lock has to protect all associated pending
   call (means pending->connection can't ever be set to null) or 
   or DBusPendingCall needs its own lock
   http://lists.freedesktop.org/archives/dbus/2006-June/004945.html

I'm working on this.

====================================================================

 - Add test harness for selinux allow/deny cf. this message
   http://lists.freedesktop.org/archives/dbus/2005-April/002506.html

We can scrap this for now as it is hard to automate.  Steve Grubb has
been doing testing by hand while writing his dbus audit patches.

====================================================================

 - publish the introspection dtd at its URL

0.90-1.0 timeframe (easy fix)

====================================================================
 
 - RequestName flags seem a bit strange; see the docs for
dbus_bus_request_name() 
   and think about use cases in better detail. 
   Proposal on list:
   http://lists.freedesktop.org/archives/dbus/2005-August/003207.html

   Kind of a major API change, but seems high-value.

This was done with no complaints.  We have been using the new system
since 0.60.  Time to move on and accept what we have.

====================================================================

 - dbus_bus_get() should hold a strong reference associated with the
"connected" 
   state (i.e. libdbus drops its reference when the connection
disconnects,
   and sets its internal connection variable to null).
   See http://lists.freedesktop.org/archives/dbus/2006-May/004806.html

Patch attached
-------------- next part --------------
A non-text attachment was scrubbed...
Name: dbus-get-hard-ref-for-internal-connection.patch
Type: text/x-patch
Size: 1256 bytes
Desc: not available
Url : http://lists.freedesktop.org/archives/dbus/attachments/20060707/82288922/dbus-get-hard-ref-for-internal-connection.bin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: dbus-remove-deprecated.patch
Type: text/x-patch
Size: 1434 bytes
Desc: not available
Url : http://lists.freedesktop.org/archives/dbus/attachments/20060707/82288922/dbus-remove-deprecated.bin


More information about the dbus mailing list