Return-Path: X-Original-To: apmail-ant-ivy-user-archive@www.apache.org Delivered-To: apmail-ant-ivy-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 262029B81 for ; Mon, 20 Feb 2012 20:54:35 +0000 (UTC) Received: (qmail 58182 invoked by uid 500); 20 Feb 2012 20:54:34 -0000 Delivered-To: apmail-ant-ivy-user-archive@ant.apache.org Received: (qmail 58119 invoked by uid 500); 20 Feb 2012 20:54:34 -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 58109 invoked by uid 99); 20 Feb 2012 20:54:34 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 20 Feb 2012 20:54:34 +0000 X-ASF-Spam-Status: No, hits=-0.5 required=5.0 tests=FREEMAIL_ENVFROM_END_DIGIT,FSL_RCVD_USER,RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of roger.parkinson35@gmail.com designates 209.85.210.45 as permitted sender) Received: from [209.85.210.45] (HELO mail-pz0-f45.google.com) (209.85.210.45) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 20 Feb 2012 20:54:26 +0000 Received: by dadp14 with SMTP id p14so7572232dad.4 for ; Mon, 20 Feb 2012 12:54:05 -0800 (PST) Received-SPF: pass (google.com: domain of roger.parkinson35@gmail.com designates 10.68.196.195 as permitted sender) client-ip=10.68.196.195; Authentication-Results: mr.google.com; spf=pass (google.com: domain of roger.parkinson35@gmail.com designates 10.68.196.195 as permitted sender) smtp.mail=roger.parkinson35@gmail.com; dkim=pass header.i=roger.parkinson35@gmail.com Received: from mr.google.com ([10.68.196.195]) by 10.68.196.195 with SMTP id io3mr66766610pbc.36.1329771245985 (num_hops = 1); Mon, 20 Feb 2012 12:54:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:content-type:content-transfer-encoding; bh=VP7WOfx/tIlT7XlvFjSA169teuJxRecfaoMcEb45flw=; b=ReItIXs08N56XapJJO/uNyiQYk4d5/lIPWOr4SAalWlzwCyNDJ04OJOrNAhAXLruQG 0z+S5acwCuAHj54k5aMAaVJaCwQjTtePPPcnBTozT46g94YkvsVI9gJzsBVaM9dLi9u9 nsM6Tx7C+wP0xpj1eD4L1c/usDnP7bOgZjkcM= Received: by 10.68.196.195 with SMTP id io3mr55000586pbc.36.1329771245935; Mon, 20 Feb 2012 12:54:05 -0800 (PST) Received: from [192.168.43.39] (95.33.227.49.dyn.cust.vf.net.nz. [49.227.33.95]) by mx.google.com with ESMTPS id j3sm14047371pbb.29.2012.02.20.12.54.02 (version=TLSv1/SSLv3 cipher=OTHER); Mon, 20 Feb 2012 12:54:04 -0800 (PST) Message-ID: <4F42B2E4.6020408@gmail.com> Date: Tue, 21 Feb 2012 09:53:56 +1300 From: Roger User-Agent: Mozilla/5.0 (X11; Linux i686; rv:9.0) Gecko/20111229 Thunderbird/9.0 MIME-Version: 1.0 To: ivy-user@ant.apache.org Subject: Re: avoiding cleaning the cache all the time References: In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit We get past this by always changing the version. So that we can identify interrum versions, as opposed to proper releases, easily we have a convention that looks like 1.2.rc2 1.2.rc3 ... (rc stands for 'release candidate' but you can use whatever convention you like) We do try to minimise the rc releases by adding lots of unit tests to the project. We find that often rc releases are used just to test a change and then the developer goes around again. It is better to write a unit test in the LibX project that reproduces the issue and then do all the developer cycles in LibX rather then generating rc releases. The advantage is that you have the unit test in the project and you can use it in regression tests. It isn't always possible to do what you need to do in a unit test though, so you have to compromise sometimes. R On 20/02/12 13:46, Sugar Bzzz wrote: > Hello, > > I have two projects: LibX and AppY, where AppY depends on LibX. > > I would like to establish the following workflow with Ivy: > 1) make some changes to LibX > 2) rebuild and publish the modified LibX using Ant+Ivy > 3) rebuild AppY using the modified LibX > 4) repeat (goto 1) > > This works the first time around (with a clean cache) but it doesn't work a > second time. When I rebuild AppY a second time around, it uses a cached > LibX from the first iteration of this workflow. The only way I can get the > latest LibX when building AppY after publishing LibX once already, is to > clean the Ivy cache and start over; but this takes a long time since all of > the dependencies of LibX need to be redownloaded. I want AppY to use the > latest LibY that I've built. > > How can I achieve this without having to clean the Ivy cache every time I > modify LibX? > > > Thanks. > > > Here is how I have Ant and Ivy setup: > > in build.xml of LibX: > > > overwrite="true"> > > > > > in ivy.xml of LibX: > > > > > > > > <... several dependencies here ...> > > > > in build.xml of AppY: > > > > > > in ivy.xml of AppY: > > > > > > > >