<?xml version="1.0" encoding="UTF-8"?> 
<?xml-stylesheet href="/h/themes/default/feed-rss.xsl" type="text/xsl"?> 
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"> 
 <channel> 
  <title>Request: Support for task relations in SyncML</title> 
  <pubDate>Mon, 20 May 2013 16:40:22 +0000</pubDate> 
  <link>http://bugs.horde.org/ticket/7989</link> 
  <atom:link rel="self" type="application/rss+xml" title="Request: Support for task relations in SyncML" href="http://bugs.horde.org/ticket/7989/rss" /> 
  <description>Request: Support for task relations in SyncML</description> 
 
   
   
  <item> 
   <title>Nag supports task-relations, i.e. a task can have child task</title> 
   <description>Nag supports task-relations, i.e. a task can have child tasks. However, when syncing tasks with SynML those relations are not preserved.

That is because horde does not fill the UID and RELATED-TO fields properly.

The effect is, that nested tasks loose their relations when synced.



A Synthesis developer has tracked down and described the issue in a forum post:

http://forum.synthesis.ch/showthread.php?p=3204#post3204</description> 
   <pubDate>Sun, 15 Feb 2009 13:15:08 +0000</pubDate> 
   <link>http://bugs.horde.org/ticket/7989#t52583</link> 
  </item> 
   
  <item> 
   <title>I've made an interesting observation: When I export my task </title> 
   <description>I've made an interesting observation: When I export my task list in the vTodo format the UID and RELATED-TO attributes are set correctly.
But when I sync via a SyncML client and sniff the network traffic I see that the UID and RELATED-TO are missing as described in the synthesis forum post linked below.

Any clues?</description> 
   <pubDate>Mon, 01 Mar 2010 20:25:11 +0000</pubDate> 
   <link>http://bugs.horde.org/ticket/7989#t58104</link> 
  </item> 
   
  <item> 
   <title>We can't use the client's UID because many clients don't rea</title> 
   <description>We can't use the client's UID because many clients don't really create GUIDs, but simply some incrementing number for this field. Thus we don't write or read UID fields during import/export, because they won't be used anyway, and wouldn't match the UIDs we use in the SyncML protocol.</description> 
   <pubDate>Mon, 01 Mar 2010 21:03:08 +0000</pubDate> 
   <link>http://bugs.horde.org/ticket/7989#t58105</link> 
  </item> 
   
  <item> 
   <title>Hi Jan,

&gt; We can't use the client's UID because many clie</title> 
   <description>Hi Jan,

&gt; We can't use the client's UID because many clients don't really 
&gt; create GUIDs
I'm not sure how you mean this. As far as I understand the server needs to assign and send the UID (not GUID) and the client just uses them.

&gt; Thus we don't write or read UID fields during import/export [...] 
Interestingly, when I *export* tasks the UID and RELATED-TO *are* written properly. Only when syncing they are not.

I found this analysis of the problem by the synthesis developers helpful:
http://forum.synthesis.ch/showpost.php?p=3204&amp;postcount=7

So this seems like a horde bug to me, or am I missing something?</description> 
   <pubDate>Sat, 06 Mar 2010 07:09:09 +0000</pubDate> 
   <link>http://bugs.horde.org/ticket/7989#t58145</link> 
  </item> 
   
  <item> 
   <title>&gt; Hi Jan,
&gt;
&gt;&gt; We can't use the client's UID because many </title> 
   <description>&gt; Hi Jan,
&gt;
&gt;&gt; We can't use the client's UID because many clients don't really
&gt;&gt; create GUIDs
&gt; I'm not sure how you mean this. As far as I understand the server 
&gt; needs to assign and send the UID (not GUID) and the client just uses 
&gt; them.

I'm talking about objects created by the device. Some devices assign them UIDs that are simply incrementing integers. These are of course not globally unique IDs so we can't rely on them.

&gt;&gt; Thus we don't write or read UID fields during import/export [...]
&gt; Interestingly, when I *export* tasks the UID and RELATED-TO *are* 
&gt; written properly. Only when syncing they are not.

Yes, because they are explicitly removed during synchronization.

&gt; I found this analysis of the problem by the synthesis developers helpful:
&gt; http://forum.synthesis.ch/showpost.php?p=3204&amp;postcount=7
&gt;
&gt; So this seems like a horde bug to me, or am I missing something?

No, it's rather a side-effect of a workaround in Horde for broken SyncML clients.</description> 
   <pubDate>Sat, 06 Mar 2010 10:03:37 +0000</pubDate> 
   <link>http://bugs.horde.org/ticket/7989#t58146</link> 
  </item> 
   
  <item> 
   <title>&gt;&gt;&gt; Thus we don't write or read UID fields during import/exp</title> 
   <description>&gt;&gt;&gt; Thus we don't write or read UID fields during import/export [...]
&gt;&gt; Interestingly, when I *export* tasks the UID and RELATED-TO *are*
&gt;&gt; written properly. Only when syncing they are not.
&gt;
&gt; Yes, because they are explicitly removed during synchronization.

OK, so this is work-around for broken clients. I believe the iPhone Synthesis client does not belong in that category.
I want to create a patch to selectively disable that work-around for known-good clients. I'm currently digging into the lib/SyncML/ folder and my only uncertainty is:
I don't see the RELATED-TO field being removed anywhere.
Any clue as to why they are missing?

Also, are you interested in such a patch?</description> 
   <pubDate>Sat, 06 Mar 2010 20:11:55 +0000</pubDate> 
   <link>http://bugs.horde.org/ticket/7989#t58147</link> 
  </item> 
   
  <item> 
   <title>&gt; I don't see the RELATED-TO field being removed anywhere.
</title> 
   <description>&gt; I don't see the RELATED-TO field being removed anywhere.

I don't think we remove it. Off my head I'm pretty sure we only remove the UID attribute.

&gt; Also, are you interested in such a patch?

I can barely imagine a clean solution with the current SyncML library, but we would definitely look at a patch.</description> 
   <pubDate>Wed, 17 Mar 2010 16:03:08 +0000</pubDate> 
   <link>http://bugs.horde.org/ticket/7989#t58203</link> 
  </item> 
   
  <item> 
   <title>Haven't found the time to work on this yet, but I'm wonderin</title> 
   <description>Haven't found the time to work on this yet, but I'm wondering whether it is useful at all, since from what I hear horde 4 will have a new Active Sync component:

&quot;Horde 4 will also sport more mobile device features with an ActiveSync server component entering the main development tree in time for the final release.&quot; (from http://www.techworld.com.au/article/342104/horde_open_source_groupware_preps_version_4_release)

Do you anticipate that task relations will work out of the box in Horde 4?

&gt;&gt; I don't see the RELATED-TO field being removed anywhere.
&gt;
&gt; I don't think we remove it. Off my head I'm pretty sure we only 
&gt; remove the UID attribute.
&gt;
&gt;&gt; Also, are you interested in such a patch?
&gt;
&gt; I can barely imagine a clean solution with the current SyncML 
&gt; library, but we would definitely look at a patch.
</description> 
   <pubDate>Sat, 17 Apr 2010 08:55:25 +0000</pubDate> 
   <link>http://bugs.horde.org/ticket/7989#t58542</link> 
  </item> 
   
  <item> 
   <title>&gt; Haven't found the time to work on this yet, but I'm wonder</title> 
   <description>&gt; Haven't found the time to work on this yet, but I'm wondering whether 
&gt; it is useful at all, since from what I hear horde 4 will have a new 
&gt; Active Sync component:
&gt;
&gt; &quot;Horde 4 will also sport more mobile device features with an 
&gt; ActiveSync server component entering the main development tree in 
&gt; time for the final release.&quot; (from 
&gt; http://www.techworld.com.au/article/342104/horde_open_source_groupware_preps_version_4_release)

ActiveSync and SyncML are completely separate protocols. Not all devices support ActiveSync (most notable blackberry devices) and not all devices support SyncML, so we do still need to support both.

&gt; Do you anticipate that task relations will work out of the box in Horde 4?

As far as ActiveSync goes, no.  There is no support for child tasks in the AS protocol. There are also quite a few clients (iPhone included) that have NO support for tasks whatsoever. 
</description> 
   <pubDate>Sat, 17 Apr 2010 16:14:06 +0000</pubDate> 
   <link>http://bugs.horde.org/ticket/7989#t58543</link> 
  </item> 
   
  <item> 
   <title>&gt;&gt; Do you anticipate that task relations will work out of th</title> 
   <description>&gt;&gt; Do you anticipate that task relations will work out of the box in Horde 4?
&gt;
&gt; As far as ActiveSync goes, no.  There is no support for child tasks 
&gt; in the AS protocol. There are also quite a few clients (iPhone 
&gt; included) that have NO support for tasks whatsoever.

Yea you're right, I'm managing tasks on the iPhone only through the SyncML TODO+Cal application and that will still require SyncML.
So I'll come up with a patch for this request when I find the time.</description> 
   <pubDate>Sat, 17 Apr 2010 17:39:15 +0000</pubDate> 
   <link>http://bugs.horde.org/ticket/7989#t58545</link> 
  </item> 
   
   
 
 </channel> 
</rss> 
