ant-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From maart...@apache.org
Subject svn commit: r691071 - in /ant/ivy/core/trunk: ./ src/java/org/apache/ivy/plugins/parser/xml/ test/java/org/apache/ivy/plugins/parser/xml/
Date Mon, 01 Sep 2008 21:52:36 GMT
Author: maartenc
Date: Mon Sep  1 14:52:35 2008
New Revision: 691071

URL: http://svn.apache.org/viewvc?rev=691071&view=rev
Log:
FIX: Ivy Publish Task Fails When XML Comments Exist Next to Dependency Declarations (IVY-888)

Added:
    ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/test-with-comments.xml
Modified:
    ant/ivy/core/trunk/   (props changed)
    ant/ivy/core/trunk/CHANGES.txt
    ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorUpdater.java
    ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/XmlModuleUpdaterTest.java

Propchange: ant/ivy/core/trunk/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Mon Sep  1 14:52:35 2008
@@ -1,4 +1,5 @@
-.classpath
-build
-lib
-bin
+.classpath
+build
+lib
+bin
+nbproject

Modified: ant/ivy/core/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/CHANGES.txt?rev=691071&r1=691070&r2=691071&view=diff
==============================================================================
--- ant/ivy/core/trunk/CHANGES.txt (original)
+++ ant/ivy/core/trunk/CHANGES.txt Mon Sep  1 14:52:35 2008
@@ -108,6 +108,7 @@
 - IMPROVEMENT: Add a memory cache for the module descriptor that are parsed from the cache
(IVY-883)
 - IMPROVEMENT: Improve performance (IVY-872)
 
+- FIX: Ivy Publish Task Fails When XML Comments Exist Next to Dependency Declarations (IVY-888)
 - FIX: Incorrect directory path resolve when running from a different directory (IVY-232)
 - FIX: Ivy#listTokenValues(String, Map) does not filter returned values, and does not use
maven-metadata.xml files with IBiblio resolver (IVY-886)
 - FIX: Circular Dependency messages in a resolve do not reflect the configuration used during
the resolve (IVY-708)

Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorUpdater.java
URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorUpdater.java?rev=691071&r1=691070&r2=691071&view=diff
==============================================================================
--- ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorUpdater.java
(original)
+++ ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorUpdater.java
Mon Sep  1 14:52:35 2008
@@ -704,6 +704,10 @@
         }
 
         public void comment(char[] ch, int start, int length) throws SAXException {
+            if (justOpen != null) {
+                write(">");
+                justOpen = null;
+            }
             if (!inHeader) {
                 StringBuffer comment = new StringBuffer();
                 comment.append(ch, start, length);

Modified: ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/XmlModuleUpdaterTest.java
URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/XmlModuleUpdaterTest.java?rev=691071&r1=691070&r2=691071&view=diff
==============================================================================
--- ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/XmlModuleUpdaterTest.java
(original)
+++ ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/XmlModuleUpdaterTest.java
Mon Sep  1 14:52:35 2008
@@ -17,6 +17,7 @@
  */
 package org.apache.ivy.plugins.parser.xml;
 
+import java.io.BufferedOutputStream;
 import java.io.BufferedReader;
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
@@ -78,6 +79,23 @@
         assertEquals(expected, updated);
     }
 
+    public void testUpdateWithComments() throws Exception {
+        ByteArrayOutputStream buffer = new ByteArrayOutputStream();
+        URL settingsUrl = new File("test/java/org/apache/ivy/plugins/parser/xml/" 
+            + "test-with-comments.xml").toURL();
+        XmlModuleDescriptorUpdater.update(settingsUrl, new BufferedOutputStream(buffer, 1024),

+            getUpdateOptions("release", "mynewrev"));
+
+        XmlModuleDescriptorParser parser = XmlModuleDescriptorParser.getInstance();
+        ModuleDescriptor updatedMd = parser.parseDescriptor(new IvySettings(),
+            new ByteArrayInputStream(buffer.toByteArray()), new BasicResource("test", false,
0, 0,
+                    false), true);
+
+        DependencyDescriptor[] dependencies = updatedMd.getDependencies();
+        assertNotNull(dependencies);
+        assertEquals(3, dependencies.length);
+    }
+
     public void testVariableReplacement() throws Exception {
         /*
          * For updated file to be equals to updated.xml, we have to fix the line separator
to the

Added: ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/test-with-comments.xml
URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/test-with-comments.xml?rev=691071&view=auto
==============================================================================
--- ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/test-with-comments.xml
(added)
+++ ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/test-with-comments.xml
Mon Sep  1 14:52:35 2008
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one
+   or more contributor license agreements.  See the NOTICE file
+   distributed with this work for additional information
+   regarding copyright ownership.  The ASF licenses this file
+   to you under the Apache License, Version 2.0 (the
+   "License"); you may not use this file except in compliance
+   with the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing,
+   software distributed under the License is distributed on an
+   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+   KIND, either express or implied.  See the License for the
+   specific language governing permissions and limitations
+   under the License.    
+-->
+<ivy-module version="1.0">
+	<info organisation="myorg"
+		module="mymodule"
+		revision="1.0"
+		status="integration"
+		publication="20050913185628"
+	/>
+	<configurations>
+		<conf name="default" visibility="public"/>
+	</configurations>
+	<publications>
+		<artifact name="mymodule" type="jar" ext="jar" conf="default"/>
+	</publications>
+	<dependencies>
+		<dependency org="myorg" name="mod1" rev="1.0" conf="*->*"/><!-- dependency
1 -->
+		<dependency org="test" name="mod2" rev="2.0" conf="default->default"/><!--
dependency 2 -->
+		<dependency org="test" name="mod3" rev="2.0" conf="default->*"><!-- dependency
3 (IVY-888) --></dependency>
+	</dependencies>
+</ivy-module>



Mime
View raw message