Return-Path: Delivered-To: apmail-ant-ivy-user-archive@www.apache.org Received: (qmail 24565 invoked from network); 24 Aug 2009 16:45:32 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 24 Aug 2009 16:45:32 -0000 Received: (qmail 42527 invoked by uid 500); 24 Aug 2009 15:45:57 -0000 Delivered-To: apmail-ant-ivy-user-archive@ant.apache.org Received: (qmail 42502 invoked by uid 500); 24 Aug 2009 15:45:57 -0000 Mailing-List: contact ivy-user-help@ant.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: ivy-user@ant.apache.org Delivered-To: mailing list ivy-user@ant.apache.org Received: (qmail 42486 invoked by uid 99); 24 Aug 2009 15:45:57 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 24 Aug 2009 15:45:57 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: local policy) Received: from [213.73.82.19] (HELO nmhq.net) (213.73.82.19) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 24 Aug 2009 15:45:49 +0000 Received: from matthies by abode.nmhq.net with local (Exim 4.69 (FreeBSD)) (envelope-from ) id 1Mfbjc-000CgZ-7A for ivy-user@ant.apache.org; Mon, 24 Aug 2009 17:45:28 +0200 Date: Mon, 24 Aug 2009 17:45:28 +0200 From: Niklas Matthies To: ivy-user@ant.apache.org Subject: Re: Provided conf Message-ID: <20090824154528.GB89898@nmhq.net> Mail-Followup-To: ivy-user@ant.apache.org References: <0BDC5E8B8C50C7459F4428B214F6105E313CA7@mail.hq.rjlg.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <0BDC5E8B8C50C7459F4428B214F6105E313CA7@mail.hq.rjlg.com> User-Agent: Mutt/1.4.2.3i X-Operating-System: FreeBSD 4.11-STABLE i386 X-Editor: VIM - Vi IMproved 6.4 X-Virus-Checked: Checked by ClamAV on apache.org On Mon 2009-08-24 at 11:16h, Jonathan Roberts wrote on ivy-user: : > I just don't really get how this is done in a nice way. Is there a > way to say get me all the "compile" dependencies, except the ones > are that are in the "provided" conf? At my place we normally use the following basic configurations: common (private) api (public) extends common runtime (public) extends common compile (private) extends api, runtime "Api" are the API dependencies of the module, i.e. what client modules need to compile against the module. "Runtime" dependencies are what the implementation of the module needs at runtime. "Common" is for convenience when declaring artifacts that belong both to api and runtime (which is the common case). "Compile" is what is needed to compile the module itself. Dependencies that are provided by the runtime environment are either placed into the "api" or into the "compile" configuration, depending on whether the module's API or just its implementation depends on them. Packaging uses the "runtime" configuration, hence it doesn't include such "provided" dependencies. There is no explicit "provided" conf, because there is no need for it. (And in our case there would need to be two different "provided" to make the distinction between API vs. implementation dependencies). -- Niklas Matthies