Re: [Evolution-hackers] Heads-up: EBookBackend/EBook ECalBackend/ECal ongoing API changes



On Thu, 2010-07-01 at 14:57 +0200, Milan Crha wrote:
> On Thu, 2010-07-01 at 14:42 +0200, Patrick Ohly wrote:
> > Will that break libebook and libecal APIs? The issue only mentions
> > backends, but the subject of your emails includes "EBook" and "ECal".
> 
> 	Hi,
> for EBook it is, all the async API there uses 'status' as an indicator
> of the operation result in the async callback. I'm changing it to GError
> too. I'm still on ECalBackend, but it seems some similar change will be
> in ECal too, though I'm not sure yet, I'm not that far. I'll summarize
> changes in the bug report when I'll be done with it, to have them
> written somewhere.

If this was about the synchronous APIs that SyncEvolution depends on,
then I'd be really worried about this change. If those functions are not
changed, SyncEvolution binaries from syncevolution.org  will continue to
work (full list of called functions attached).

Having said that, are you sure that there is no way to preserve the old
APIs? Perhaps the new implementation can be made available under a new
name and the old one be implemented by mapping the GError to the old
error code?

I suspect that quite a few projects will have to adapt their source code
if that's not the case. OpenOffice might be another candidate which
tries to be binary compatible with different versions of Evolution.

-- 
Bye, Patrick Ohly
--  
Patrick Ohly gmx de
http://www.estamos.de/

e_book_add_contact
e_book_authenticate_user
e_book_commit_contact
e_book_error_quark
e_book_get_addressbooks
e_book_get_changes
e_book_get_contact
e_book_get_contacts
e_book_get_supported_auth_methods
e_book_get_uri
e_book_new
e_book_new_default_addressbook
e_book_new_from_uri
e_book_new_system_addressbook
e_book_open
e_book_query_any_field_contains
e_book_query_unref
e_book_remove_contact
e_cal_add_timezone
e_cal_component_get_icalcomponent
e_cal_component_get_last_modified
e_cal_component_get_type
e_cal_create_object
e_calendar_error_quark
e_cal_get_component_as_string
e_cal_get_object
e_cal_get_object_list_as_comp
e_cal_get_sources
e_cal_get_timezone
e_cal_get_uri
e_cal_modify_object
e_cal_new
e_cal_new_from_uri
e_cal_new_system_calendar
e_cal_new_system_tasks
e_cal_open
e_cal_remove_object
e_cal_remove_object_with_mod
e_cal_set_auth_func


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]