Author: maartenc Date: Thu Apr 3 14:42:27 2008 New Revision: 644522 URL: http://svn.apache.org/viewvc?rev=644522&view=rev Log: IMPROVEMENT: Load Ivy version number into some Ant property (IVY-790)
Modified: ant/ivy/core/trunk/CHANGES.txt ant/ivy/core/trunk/doc/ant.html ant/ivy/core/trunk/src/java/org/apache/ivy/Ivy.java ant/ivy/core/trunk/src/java/org/apache/ivy/ant/IvyTask.java ant/ivy/core/trunk/test/java/org/apache/ivy/ant/IvyTaskTest.java Modified: ant/ivy/core/trunk/CHANGES.txt URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/CHANGES.txt?rev=644522&r1=644521&r2=644522&view=diff ============================================================================== --- ant/ivy/core/trunk/CHANGES.txt (original) +++ ant/ivy/core/trunk/CHANGES.txt Thu Apr 3 14:42:27 2008 @@ -69,6 +69,7 @@ - NEW: Add a new resolve mode (optionally per module) to utilize dynamic constraint rule metadata (IVY-740) - NEW: Add transitive dependency version and branch override mechanism (IVY-784) +- IMPROVEMENT: Load Ivy version number into some Ant property (IVY-790) - IMPROVEMENT: Make Ivy standalone runnable with no required dependencies (IVY-757) - IMPROVEMENT: add branch attribute in ivy:install task (IVY-727) - IMPROVEMENT: Parse description information in ivy files (IVY-766) Modified: ant/ivy/core/trunk/doc/ant.html URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/doc/ant.html?rev=644522&r1=644521&r2=644522&view=diff ============================================================================== --- ant/ivy/core/trunk/doc/ant.html (original) +++ ant/ivy/core/trunk/doc/ant.html Thu Apr 3 14:42:27 2008 @@ -102,6 +102,8 @@ </code> <em>For the latest version of these properties, you can check the [[svn:src/java/org/apache/ivy/core/settings/ivy.properties svn version]].</em> +<span class="since">since 2.0</span> After calling the first Ivy task, the property ivy.version will be available and contains the version of the used Ivy library. + <h1>Ivy tasks attributes : generalities</h1> Some tasks attributes values may be given through different places. The three possible places are : <ol> Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/Ivy.java URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/Ivy.java?rev=644522&r1=644521&r2=644522&view=diff ============================================================================== --- ant/ivy/core/trunk/src/java/org/apache/ivy/Ivy.java (original) +++ ant/ivy/core/trunk/src/java/org/apache/ivy/Ivy.java Thu Apr 3 14:42:27 2008 @@ -164,7 +164,6 @@ * Ivy is initialized. * * @return the current version of Ivy - * @see #getIvyVersion() */ public static String getIvyVersion() { return IVY_VERSION; @@ -176,7 +175,6 @@ * May be empty if unknown. * * @return the date at which this version of Ivy has been built - * @see #getIvyVersion() */ public static String getIvyDate() { return IVY_DATE; Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/ant/IvyTask.java URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/ant/IvyTask.java?rev=644522&r1=644521&r2=644522&view=diff ============================================================================== --- ant/ivy/core/trunk/src/java/org/apache/ivy/ant/IvyTask.java (original) +++ ant/ivy/core/trunk/src/java/org/apache/ivy/ant/IvyTask.java Thu Apr 3 14:42:27 2008 @@ -249,6 +249,8 @@ * Called when task starts its execution. */ protected void prepareTask() { + getProject().setProperty("ivy.version", Ivy.getIvyVersion()); + // push current project and Ivy on the stack in context IvyContext.pushNewCopyContext(); IvyContext.getContext().setIvy(getIvyInstance()); Modified: ant/ivy/core/trunk/test/java/org/apache/ivy/ant/IvyTaskTest.java URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/test/java/org/apache/ivy/ant/IvyTaskTest.java?rev=644522&r1=644521&r2=644522&view=diff ============================================================================== --- ant/ivy/core/trunk/test/java/org/apache/ivy/ant/IvyTaskTest.java (original) +++ ant/ivy/core/trunk/test/java/org/apache/ivy/ant/IvyTaskTest.java Thu Apr 3 14:42:27 2008 @@ -33,7 +33,6 @@ public void testDefaultSettings() throws MalformedURLException { Project p = new Project(); p.setBasedir("test/repositories"); - // p.setProperty("ivy.settings.file" , "ivysettings.xml"); p.setProperty("myproperty", "myvalue"); IvyTask task = new IvyTask() { public void doExecute() throws BuildException { @@ -61,8 +60,6 @@ public void testReferencedSettings() throws MalformedURLException { Project p = new Project(); - // p.setBasedir("test/repositories"); - // p.setProperty("ivy.settings.file" , "ivysettings.xml"); p.setProperty("myproperty", "myvalue"); IvyAntSettings antSettings = new IvyAntSettings(); @@ -90,7 +87,18 @@ assertEquals(new File("test/repositories").getAbsolutePath(), settings.getVariables().getVariable( "ivy.settings.dir")); assertEquals("myvalue", settings.getVariables().getVariable("myproperty")); - } + public void testIvyVersionAsAntProperty() { + Project p = new Project(); + p.setBasedir("test/repositories"); + IvyTask task = new IvyTask() { + public void doExecute() throws BuildException { + } + }; + task.setProject(p); + task.execute(); + + assertNotNull(p.getProperty("ivy.version")); + } }