Re: [Evolution-hackers] Rethinking account management
- From: Matthew Barnes <mbarnes redhat com>
- To: evolution-hackers gnome org
- Subject: Re: [Evolution-hackers] Rethinking account management
- Date: Tue, 25 Jan 2011 16:54:36 -0500
On Mon, 2010-11-15 at 11:45 -0500, Matthew Barnes wrote:
> I kinda wanted to tweak the names anyway, so here's my proposal for the
> new D-Bus interface names:
>
> Old: org.gnome.evolution.dataserver.addressbook.BookFactory
> org.gnome.evolution.dataserver.calendar.CalFactory
> org.gnome.evolution.dataserver.addressbook.Book
> org.gnome.evolution.dataserver.calendar.Cal
>
> New: org.gnome.evolution.dataserver.AddressBookFactory.0
> org.gnome.evolution.dataserver.CalendarFactory.0
> org.gnome.evolution.dataserver.AddressBook.0
> org.gnome.evolution.dataserver.Calendar.0
>
> In the future, if we have to break a D-Bus interface again we'll
> increment the digit. Then if the user upgrades E-D-S to a version that
> implements "Calendar.1" but is still running an e-calendar-factory that
> implements "Calendar.0", then when Evolution is launched the session bus
> will have to relaunch the upgraded e-calendar-factory binary and the old
> e-calendar-factory process will lose its well-known D-Bus name (at least
> I think that's how it works... in any case, D-Bus knows what to do).
>
> If there's no objections I'd like to get new interface names into 2.91
> now so I can increment the interface versions on my account-management
> branch and not have to worry about this anymore.
Milan reminded me about this today so I went ahead with it.
It turns out just the D-Bus service names need to be versioned, not the
interface names. But the same rules for incrementing the version apply.
The new names are (with both versions at '0'):
Bus Name: org.gnome.evolution.dataserver.AddressBook0
Object Path: org/gnome/evolution/dataserver/AddressBookFactory
Interface: org.gnome.evolution.dataserver.AddressbookFactory
Bus Name: org.gnome.evolution.dataserver.Calendar0
Object Path: org/gnome/evolution/dataserver/CalendarFactory
Interface: org.gnome.evolution.dataserver.CalendarFactory
More details in the commit message:
http://git.gnome.org/browse/evolution-data-server/commit/?id=89b130c3d75cd0fa023af4064b0d0e3ce2147519
Matthew Barnes
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]