From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christian Egli Subject: Re: Item task_id not being used in taskjuggler export & tj prefixing Date: Thu, 25 Apr 2013 09:52:04 +0200 Message-ID: <87k3nrrqsb.fsf@sbs.ch> References: <87eheutjpz.fsf@gmail.com> <876206th04.fsf@gmail.com> <87wqsmryt0.fsf@gmail.com> <5159F480.3030100@web.de> <877gkl29m5.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([208.118.235.92]:40863) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UVGyS-0007G7-4r for emacs-orgmode@gnu.org; Thu, 25 Apr 2013 03:52:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UVGyR-00062Z-52 for emacs-orgmode@gnu.org; Thu, 25 Apr 2013 03:52:12 -0400 Received: from plane.gmane.org ([80.91.229.3]:41397) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UVGyQ-00062U-Ud for emacs-orgmode@gnu.org; Thu, 25 Apr 2013 03:52:11 -0400 Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1UVGyP-00023F-Px for emacs-orgmode@gnu.org; Thu, 25 Apr 2013 09:52:09 +0200 Received: from alouette.sbs.ch ([194.29.12.218]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 25 Apr 2013 09:52:09 +0200 Received: from christian.egli by alouette.sbs.ch with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 25 Apr 2013 09:52:09 +0200 List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org John Hendy writes: > On Mon, Apr 1, 2013 at 5:01 PM, Nicolas Goaziou wrote: >> You can already do so. IDs only have to be unique within the task >> siblings. > > True, one can name tasks identically as long as they have no identical > siblings... but the point was the since one can only specify the > lowest level of id (e.g. "T1" instead of "T.T1"), Org doesn't know how > to resolve them properly. AFAIK task_ids have to be globally unique if you want to use them for dependencies. > Task M1 ends up depending on both M.T1 (represented as !T1) /and/ > T.T1. It won't fail since both T.T1 and M.T1 exist, but the user has > no way to set a depends option to target the specific T1 they wanted. > Setting =:depends: !!T.T1= ignores the :depends: property entirely. The TaskJuggler exporter gives you 3 ways to express a dependency: 1. using ORDERED on the parent task 2. using "previous-sibling" 3. using a task_id of another task. This has to be a unique id, otherwise you end up depending all the other tasks that have this task_id. >> You don't have to name parents either. You only need to name tasks that >> will be used as a dependency. > > True, which is nice. But we're torn between: > - Letting Org name the parent whatever it wants, but then having to > figure out the org-generated parent id so we can do =:depends: > parent.subtask=, or > > - Specifically naming the parent to have control over the task_id, but > having to change it because we move it later (and then updating all > =:depends: parent.task_id= properties accordingly) > > And in either case, there's still no way to depend on a specific > =parent.task_id= combination. I don't understand this. Why do you need to name parents (or assign them a task_id)? As Nicolas says: all you have to do is to give the task you want to depend on a task_id. As an aside I thought you could also use plain ID to express dependencies. But from looking at the code this doesn't seem supported. I think the reason why yet another id (namely task_id) is used, is that this allows for short human readable ids where as the standard ID is generally generated by org mode and is cryptic and much longer. HTH Christian -- Christian Egli Swiss Library for the Blind, Visually Impaired and Print Disabled Grubenstrasse 12, CH-8045 Zürich, Switzerland