On Mon, 2008-10-06 at 13:29 +0100, Martyn Russell wrote: > Ivan Frade wrote: > > Hi all, > > > > A lot of tools in tracker-utils use the hardcoded ServiceType enum in > > libtracker (through tracker_type_to_service_name and > > tracker_service_name_to_type). It means when you add a new category in > > the daemon it is invisible for the tools unless you recompile > > everything. > > > > To fix it, my plan is to retrieve those service types from the daemon > > (getting rid of the ServiceType enum). To do this, i need to modify > > the libtracker API. Is there any problem with this? Is libtracker used > > by external applications or only by our tools? > > I see 2 problems. > > First we break ABI if we append the enum. > Second we break API if we remove it altogether. > > Regardless of these two issues, application developers need some defined > way of identifying common categories ... like "Audio" and if we remove > that then it means ALL applications have to do special handling (as I > understand it). > > I think we would probably want to keep some "base" service types as > "static" in the enum and possibly be able to extend it the way you > suggest Ivan. Not sure really. >
the enum has to stay but can be extended for now. In the end we will have to make it a string to make it extensible the dbus calls take a string for service type so there is nothing stoppping us from having two parallel installable libtrackers (one for backwards compatibility and one for a better more future proof api) jamie _______________________________________________ tracker-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/tracker-list
