On Fri, 2012-10-26 at 21:04 +0200, Patrick Ohly wrote:
On Mon, 2012-09-17 at 11:32 +0200, Patrick Ohly wrote:
> On Wed, 2012-09-12 at 14:51 +0200, Patrick Ohly wrote:
> > I have some partial implementation of the API ready and will push it
> > shortly to the new SyncEvolution git repo on freedesktop.org
> The code is now in the for-master/pim branch, see the
> src/dbus/server/manager directory. The API text is in
> src/dbus/server/pim/pim-manager-api.txt. I decided to avoid using IVI in
> the code because it might turn out to be useful elsewhere.
The code now fully implements the proposed API and has been tested by me
for a while. The nightly testing includes the testpim.py tests. Manual
testing with a Nokia N97 Mini also passed (with the caveats below). This
is a good time to make it available to people who do not want to compile
source from a git repo.
Therefore I have merged the code into the master branch, tagged it as
184.108.40.206 and prepared the usual source .tar.gz:
The benefits for traditional users are fairly small (except perhaps for
the new caching mode) and the binaries would not contain the IVI
features anyway, because the binaries target EDS < 3.6 and older
distros. For these reasons I am not publishing binaries of 220.127.116.11.
There are a few known issues regarding the PIM Manager in this release:
- updating a contact is inefficient and can cause deadlocks in EDS:
- some minor memory leaks:
- in violation of the API spec, colon and upper case characters in the
peer UID are not properly supported and should be avoided for now; I'm
undecided whether I should fix the API to match the implementation or
make the implementation more complicated to support the proposed API:
All of these issues are resolved in SyncEvolution 18.104.22.168, which is
available from git and syncevolution.org
A full overview of issues is here:
I'm attaching the current API revision, a README which gives
SyncEvolution specific information and two example scripts. All of this
is also in the release and in the git repo.
Again I'm attaching the new API and SyncEvolution README for its
implementation. Instead of the examples (which you can get from git or
the source archive) I'm attaching the NEWS entry for 22.214.171.124.
Regarding documentation, I'm still undecided whether specific
config options, search capabilities and ordering really should be
specified in the API documentation. I'm inclined to make this completely
implementation specific and thus at best give examples in the API
documentation. App developers need to consult their system documentation
anyway to learn which version of the API is supported by the system.
As hinted above, I've restructured the documentation so that the
abstract API is covered by one document and the implementation by
Senior Software Engineer
Open Source Technology Center
Pützstr. 5 Phone: +49-228-2493652