Return-Path: Delivered-To: apmail-incubator-ivy-user-archive@locus.apache.org Received: (qmail 6072 invoked from network); 20 Nov 2007 14:56:07 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 20 Nov 2007 14:56:07 -0000 Received: (qmail 61196 invoked by uid 500); 20 Nov 2007 14:55:54 -0000 Delivered-To: apmail-incubator-ivy-user-archive@incubator.apache.org Received: (qmail 61174 invoked by uid 500); 20 Nov 2007 14:55:53 -0000 Mailing-List: contact ivy-user-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: ivy-user@incubator.apache.org Delivered-To: mailing list ivy-user@incubator.apache.org Received: (qmail 61165 invoked by uid 99); 20 Nov 2007 14:55:53 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 20 Nov 2007 06:55:53 -0800 X-ASF-Spam-Status: No, hits=-2.8 required=10.0 tests=RCVD_IN_DNSWL_MED,SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (nike.apache.org: local policy) Received: from [192.6.10.60] (HELO tobor.hpl.hp.com) (192.6.10.60) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 20 Nov 2007 14:55:53 +0000 Received: from localhost (localhost [127.0.0.1]) by tobor.hpl.hp.com (Postfix) with ESMTP id E85BDB7B55 for ; Tue, 20 Nov 2007 14:55:31 +0000 (GMT) X-Virus-Scanned: amavisd-new at hplb.hpl.hp.com Received: from tobor.hpl.hp.com ([127.0.0.1]) by localhost (tobor.hpl.hp.com [127.0.0.1]) (amavisd-new, port 10024) with LMTP id GMzzVy89UKsX for ; Tue, 20 Nov 2007 14:55:29 +0000 (GMT) Received: from ha-node-br3.hpl.hp.com (ha-node-br3.hpl.hp.com [16.25.144.58]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tobor.hpl.hp.com (Postfix) with ESMTPS id B98B4B7B3D for ; Tue, 20 Nov 2007 14:55:29 +0000 (GMT) Received: from [16.25.171.118] (morzine.hpl.hp.com [16.25.171.118]) by ha-node-br3.hpl.hp.com (8.14.1/8.13.4) with ESMTP id lAKEtEcu022165 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Tue, 20 Nov 2007 14:55:14 GMT Message-ID: <4742F545.10701@apache.org> Date: Tue, 20 Nov 2007 14:55:01 +0000 From: Steve Loughran User-Agent: Thunderbird 2.0.0.9 (X11/20071031) MIME-Version: 1.0 To: ivy-user@incubator.apache.org Subject: Re: retrieving 'profiled' m2 artifacts References: <474198F3.30001@apache.org> <00ec01c82ab6$81e56c90$0920a8c0@isabelteam.be> <635a05060711190635j7c78e242j53dc24a06faac12e@mail.gmail.com> <4741A3A6.8070604@apache.org> <635a05060711190733l273557b4v2d6116a25ecd789f@mail.gmail.com> In-Reply-To: <635a05060711190733l273557b4v2d6116a25ecd789f@mail.gmail.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-HPL-MailScanner-Information: Please contact the ISP for more information X-HPL-MailScanner: Found to be clean X-HPL-MailScanner-From: stevel@apache.org X-Virus-Checked: Checked by ClamAV on apache.org Xavier Hanin wrote: > On Nov 19, 2007 3:54 PM, Steve Loughran wrote: > >> Xavier Hanin wrote: >>> I think Steve's asking for the same setting in Ivy. If that's the >> question, >>> the answer is no, we don't have support for profiles so far in Ivy. >>> >>> IMO a good way to implement this kind of thing would be to implement >>> conditionnal configurations and/or conditionnal dependencies. >>> Something like: >>> >>> >>> I remember this has already been discussed, but I don't remember if >> someone >>> opened an issue for that. With conditional dependencies/confs, we could >> map >>> each profile to a simple variable (for instance profile.) >> then >>> activating the profile would be as simple as: >>> ant -Dprofile. resolve >>> >>> Implementing conditional dependencies/confs shouldn't be too hard, we >> just >>> have to ignore them when the condition is not matched. Parsing poms to >>> support this shouldn't be too hard either. >>> >>> If we want to go further, we could deal with jdk enabled profiles (which >> is >>> one of the most common use case behind m2 profiles AFAIK) and set the >>> corresponding variables automatically depending on the jdk, to more >> closely >>> mimic m2. >> I can see JDK/java version profiles being good, but it gets complex fast. >> >> I'm currently mainly in need of a way of referring to profiled >> artifacts, which come out testng-5.7-java14 and testing-5.7-java15 >> >> I need a way of selecting one of these >> >> >> actually choosing which one to use dynamically is feature creep that >> doesnt concern me (right now) > > I'm not sure we understand each other correctly. What I suggest is adding > conditional dependencies to Ivy, and using this to implement m2 profiles. > Then I say that we might have automatic condition matching based on jdk, but > this is only for a later implementation, at first conditional dependencies > is enough IMO (and if I understand correctly you seem to agree with that). > After all profile="java1.5" is not much different from if="profile.java1.5", > the latter being only slightly more flexible and matching a similar concept > in Ant targets. > > What do you think? oh, if you want go ahead and do the conditions, then yes please :). But we also need to be able to resolve artifacts in the m2 repository that have a profile suffix. Have a look at the files in http://repo1.maven.org/maven2/org/testng/testng/5.7/ to see what I mean. I need the -jdk15 files; no need for a condition there, as I dont build on java1.4 -- Steve Loughran http://www.1060.org/blogxter/publish/5 Author: Ant in Action http://antbook.org/