GNOME Bugzilla – Bug 743934
FTBFS after EDS commit 884fb8d8
Last modified: 2015-02-16 12:21:14 UTC
See log at http://build.gnome.org/continuous/buildmaster/builds/2015/02/03/22/build/log-folks.txt
Please revert https://git.gnome.org/browse/gnome-continuous/commit/?id=63b44ca69ebd77f44bac297a78c9b2bcafd610e7 after the issue is fixed
I’m not really sure this should be fixed in folks: it’s an API break in EDS which has been put in place without a deprecation path. If folks changes to use the new parameter in e_book_client_connect(), we will have to bump our EDS dependency to master, which will cause all sorts of distribution problems. Milan, why was this change made in EDS without deprecating the old API and introducing the new one in parallel?
Created attachment 296045 [details] [review] proposed patch I suggest to use 1 second timeout for the connected state. If the backend in already connected, then it'll mean no problem, the same as when it is not connected, the book will be opened in an offline mode, at least till the credentials are provided by any client. As the Folks is a library, and cannot provide credentials on its own due to no UI, it is a sane default. The backend will claim issues when any operation which requires fully connected state would happen, thus it's a safe default. also, users with stored credentials will not notice any issue. The reason to use 1 second timeout for the connected state is to have also updated internal properties.
Review of attachment 296045 [details] [review]: folks’ EDS dependency in configure.ac needs bumping, but I would actually prefer it to compile conditionally, passing in the new parameter iff compiling with the latest version of EDS, and omitting it otherwise. Other than that, I agree with your reasoning.
Created attachment 296047 [details] [review] proposed patch ][ You are right, I missed that change.
Review of attachment 296047 [details] [review]: ++ ::: configure.ac @@ +264,3 @@ TRACKER_SPARQL_REQUIRED=0.15.2 +EBOOK_REQUIRED=3.13.90 +EBOOK_REQUIRED_FOR_BLUEZ=3.13.90 Can you please do a second commit which drops all the EBOOK_REQUIRED_FOR_BLUEZ machinery, since that version is now the same as EBOOK_REQUIRED? But you can commit this one first.
Created attachment 296070 [details] [review] follow-up patch as suggested above
Review of attachment 296070 [details] [review]: ++ I’ll push both.
Created attachment 296074 [details] [review] eds: Update to new EDS address book timeout API Add a timeout parameter to handle the new EDS authentication process. This means that folks no longer triggers authentication dialogues from EDS, which will prevent them popping up unexpectedly (particularly from GNOME Shell). However, it does mean that external processes using folks which _do_ want to display authentication dialogues should manually create an ECredentialsPrompter and use that to display the dialogues. This bumps the EDS dependency to 3.13.90 unconditionally.
Created attachment 296075 [details] [review] build: Drop outdated BlueZ conditional dependency checks Since our overall EDS dependency is now higher than that needed for the BlueZ backend, we can drop the conditional EDS version checks which could previously disable building the BlueZ backend.
All pushed, thanks Milan. Attachment 296074 [details] pushed as baa67c2 - eds: Update to new EDS address book timeout API Attachment 296075 [details] pushed as ef70ba9 - build: Drop outdated BlueZ conditional dependency checks
This was released with folks 0.11.0, but there has not been a corresponding evolution-data-server release (3.11.90). This means that 0.11.0 failed to build for Rawhide: http://koji.fedoraproject.org/koji/buildinfo?buildID=611058 Can there be an evolution-data-server release (maybe for Monday, which is for the 3.15.90 release), or is it possible to back out these changes and put out a folks 0.11.1?
I see that there has now been an evolution-data-server 3.11.90 release. Thanks!