You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by sa...@apache.org on 2014/04/25 08:12:46 UTC

svn commit: r1589937 - in /lucene/dev/trunk/solr: CHANGES.txt core/ivy.xml solrj/build.xml solrj/ivy.xml solrj/test-lib/

Author: sarowe
Date: Fri Apr 25 06:12:45 2014
New Revision: 1589937

URL: http://svn.apache.org/r1589937
Log:
SOLR-6006: Separate test and compile scope dependencies in the Solrj ivy.xml file, so that the derived Maven dependencies get filled out properly in the Solrj POM

Added:
    lucene/dev/trunk/solr/solrj/test-lib/   (with props)
Modified:
    lucene/dev/trunk/solr/CHANGES.txt
    lucene/dev/trunk/solr/core/ivy.xml
    lucene/dev/trunk/solr/solrj/build.xml
    lucene/dev/trunk/solr/solrj/ivy.xml

Modified: lucene/dev/trunk/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/CHANGES.txt?rev=1589937&r1=1589936&r2=1589937&view=diff
==============================================================================
--- lucene/dev/trunk/solr/CHANGES.txt (original)
+++ lucene/dev/trunk/solr/CHANGES.txt Fri Apr 25 06:12:45 2014
@@ -135,6 +135,13 @@ Other Changes
 * SOLR-5974: Remove ShardDoc.score and use parent's ScoreDoc.score.
   (Tomás Fernández Löbbe via Ryan Ernst)
 
+Build
+---------------------
+
+* SOLR-6006: Separate test and compile scope dependencies in the Solrj ivy.xml
+  file, so that the derived Maven dependencies get filled out properly in the
+  Solrj POM. (Steven Scott, Steve Rowe)
+
 ==================  4.8.0 ==================
 
 Versions of Major Components

Modified: lucene/dev/trunk/solr/core/ivy.xml
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/ivy.xml?rev=1589937&r1=1589936&r2=1589937&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/ivy.xml (original)
+++ lucene/dev/trunk/solr/core/ivy.xml Fri Apr 25 06:12:45 2014
@@ -35,19 +35,22 @@
     <dependency org="commons-lang" name="commons-lang" rev="${/commons-lang/commons-lang}" conf="compile->*"/>
     <dependency org="com.google.guava" name="guava" rev="${/com.google.guava/guava}" conf="compile->*"/>
     <dependency org="com.spatial4j" name="spatial4j" rev="${/com.spatial4j/spatial4j}" conf="compile->*"/>
-    <dependency org="org.antlr" name="antlr-runtime" rev="${/org.antlr/antlr-runtime}" transitive="false"/>
-    <dependency org="org.ow2.asm" name="asm" rev="${/org.ow2.asm/asm}" transitive="false"/>
-    <dependency org="org.ow2.asm" name="asm-commons" rev="${/org.ow2.asm/asm-commons}" transitive="false"/>
+    <dependency org="org.antlr" name="antlr-runtime" rev="${/org.antlr/antlr-runtime}" conf="compile->*"/>
+    <dependency org="org.ow2.asm" name="asm" rev="${/org.ow2.asm/asm}" conf="compile->*"/>
+    <dependency org="org.ow2.asm" name="asm-commons" rev="${/org.ow2.asm/asm-commons}" conf="compile->*"/>
     <dependency org="org.restlet.jee" name="org.restlet" rev="${/org.restlet.jee/org.restlet}" conf="compile->*"/>
     <dependency org="org.restlet.jee" name="org.restlet.ext.servlet" rev="${/org.restlet.jee/org.restlet.ext.servlet}" conf="compile->*"/>
     <dependency org="joda-time" name="joda-time" rev="${/joda-time/joda-time}" conf="compile->*"/>
-    <dependency org="dom4j" name="dom4j" rev="${/dom4j/dom4j}" transitive="false"/>
-    <dependency org="com.carrotsearch" name="hppc" rev="${/com.carrotsearch/hppc}"/>
+    <dependency org="dom4j" name="dom4j" rev="${/dom4j/dom4j}" conf="compile->*"/>
+    <dependency org="com.carrotsearch" name="hppc" rev="${/com.carrotsearch/hppc}" conf="compile->*"/>
+    <dependency org="log4j" name="log4j" rev="${/log4j/log4j}" conf="compile->*"/>
+    <dependency org="org.slf4j" name="slf4j-log4j12" rev="${/org.slf4j/slf4j-log4j12}" conf="compile->*"/>
 
     <dependency org="javax.servlet" name="javax.servlet-api" rev="${/javax.servlet/javax.servlet-api}" conf="test->*"/>
     <dependency org="org.easymock" name="easymock" rev="${/org.easymock/easymock}" conf="test->*"/>
     <dependency org="cglib" name="cglib-nodep" rev="${/cglib/cglib-nodep}" conf="test->*"/>
     <dependency org="org.objenesis" name="objenesis" rev="${/org.objenesis/objenesis}" conf="test->*"/>
+    <dependency org="org.slf4j" name="jcl-over-slf4j" rev="${/org.slf4j/jcl-over-slf4j}" conf="test->*"/>
 
     <dependency org="org.apache.hadoop" name="hadoop-common" rev="${/org.apache.hadoop/hadoop-common}" conf="compile.hadoop->*"/>
     <!--

Modified: lucene/dev/trunk/solr/solrj/build.xml
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/solrj/build.xml?rev=1589937&r1=1589936&r2=1589937&view=diff
==============================================================================
--- lucene/dev/trunk/solr/solrj/build.xml (original)
+++ lucene/dev/trunk/solr/solrj/build.xml Fri Apr 25 06:12:45 2014
@@ -15,9 +15,11 @@
     See the License for the specific language governing permissions and
     limitations under the License.
  -->
-<project name="solr-solrj" default="default">
+<project name="solr-solrj" default="default" xmlns:ivy="antlib:org.apache.ivy.ant">
   <description>Solrj - Solr Java Client</description>
 
+  <property name="test.lib.dir" location="test-lib"/>
+
   <!-- violates the servlet-api restrictions, but it is safe to do so in this test: -->
   <property name="forbidden-tests-excludes" value="
     org/apache/solr/client/solrj/impl/BasicHttpSolrServerTest$DebugServlet.class
@@ -32,6 +34,7 @@
 
   <!-- Specialized common-solr.test.classpath, to remove the Solr core test output -->
   <path id="test.classpath">
+    <fileset dir="${test.lib.dir}" includes="*.jar"/>
     <pathelement path="${common-solr.dir}/build/solr-test-framework/classes/java"/>
     <pathelement path="${tests.userdir}"/>
     <path refid="test.base.classpath"/>
@@ -39,6 +42,14 @@
     <pathelement path="${example}/resources"/>
   </path>
 
+  <target name="resolve" depends="ivy-availability-check,ivy-fail,ivy-configure">
+    <sequential>
+      <ivy:retrieve conf="compile" type="jar,bundle" sync="${ivy.sync}" log="download-only"/>
+      <ivy:retrieve conf="test" type="jar,bundle,test" sync="${ivy.sync}" log="download-only"
+                    pattern="${test.lib.dir}/[artifact]-[revision](-[classifier]).[ext]"/>
+    </sequential>
+  </target>
+
   <!-- Specialized to depend on nothing -->
   <target name="javadocs" depends="compile-core,define-lucene-javadoc-url">
     <sequential>

Modified: lucene/dev/trunk/solr/solrj/ivy.xml
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/solrj/ivy.xml?rev=1589937&r1=1589936&r2=1589937&view=diff
==============================================================================
--- lucene/dev/trunk/solr/solrj/ivy.xml (original)
+++ lucene/dev/trunk/solr/solrj/ivy.xml Fri Apr 25 06:12:45 2014
@@ -17,36 +17,28 @@
    under the License.    
 -->
 <ivy-module version="2.0">
-    <info organisation="org.apache.solr" module="solrj"/>
+  <info organisation="org.apache.solr" module="solrj"/>
 
-    <dependencies>
-      <dependency org="org.apache.zookeeper" name="zookeeper" rev="${/org.apache.zookeeper/zookeeper}" transitive="false"/>
-      <dependency org="org.apache.httpcomponents" name="httpclient" rev="${/org.apache.httpcomponents/httpclient}" transitive="false"/>
-      <!--
-        The httpmime rev should be kept in sync with the httpclient rev, since both the
-        httpclient and the httpmime modules are sub-modules of the httpcomponents-client
-        module, and both sub-modules draw their version from the httpcomponents-client
-        parent POM.
-       -->
-      <dependency org="org.apache.httpcomponents" name="httpmime" rev="${/org.apache.httpcomponents/httpmime}" transitive="false"/>
-      <!--
-        The httpcore rev should be drawn from the httpcomponents-client POM (the parent POM
-        of the httpclient POM - see the comment above) - the httpclient version and the httpcore
-        version are NOT always in sync with each other.
+  <configurations>
+    <!-- artifacts in the "compile" configuration will go into solr/solrj/lib/ -->
+    <conf name="compile" transitive="false"/>
+    <!-- artifacts in the "test" configuration will go into solr/solrj/test-lib/ -->
+    <conf name="test" transitive="false"/>
+  </configurations>
 
-        E.g. httpclient v4.2.3 depends on httpcore v4.2.2 - see the httpcomponents-client POM
-        - look for <httpcore.version> under <properties>:
-        https://svn.apache.org/repos/asf/httpcomponents/httpclient/tags/4.2.3/pom.xml
-       -->
-      <dependency org="org.apache.httpcomponents" name="httpcore" rev="${/org.apache.httpcomponents/httpcore}" transitive="false"/>
-      <dependency org="commons-io" name="commons-io" rev="${/commons-io/commons-io}" transitive="false"/>
-      <dependency org="org.codehaus.woodstox" name="wstx-asl" rev="${/org.codehaus.woodstox/wstx-asl}" transitive="false"/>
-      <dependency org="org.noggit" name="noggit" rev="${/org.noggit/noggit}" transitive="false"/>
-      <dependency org="log4j" name="log4j" rev="${/log4j/log4j}" transitive="false"/>
-      <dependency org="org.slf4j" name="slf4j-api" rev="${/org.slf4j/slf4j-api}" transitive="false"/>
-      <dependency org="org.slf4j" name="jcl-over-slf4j" rev="${/org.slf4j/jcl-over-slf4j}" transitive="false"/>
-      <dependency org="org.slf4j" name="jul-to-slf4j" rev="${/org.slf4j/jul-to-slf4j}" transitive="false"/> 
-      <dependency org="org.slf4j" name="slf4j-log4j12" rev="${/org.slf4j/slf4j-log4j12}" transitive="false"/> 
-      <exclude org="*" ext="*" matcher="regexp" type="${ivy.exclude.types}"/> 
-    </dependencies>
+  <dependencies>
+    <dependency org="org.apache.zookeeper" name="zookeeper" rev="${/org.apache.zookeeper/zookeeper}" conf="compile->*"/>
+    <dependency org="org.apache.httpcomponents" name="httpclient" rev="${/org.apache.httpcomponents/httpclient}" conf="compile->*"/>
+    <dependency org="org.apache.httpcomponents" name="httpmime" rev="${/org.apache.httpcomponents/httpmime}" conf="compile->*"/>
+    <dependency org="org.apache.httpcomponents" name="httpcore" rev="${/org.apache.httpcomponents/httpcore}" conf="compile->*"/>
+    <dependency org="commons-io" name="commons-io" rev="${/commons-io/commons-io}" conf="compile->*"/>
+    <dependency org="org.codehaus.woodstox" name="wstx-asl" rev="${/org.codehaus.woodstox/wstx-asl}" conf="compile->*"/>
+    <dependency org="org.noggit" name="noggit" rev="${/org.noggit/noggit}" conf="compile->*"/>
+    <dependency org="org.slf4j" name="slf4j-api" rev="${/org.slf4j/slf4j-api}" conf="compile->*"/>
+
+    <dependency org="org.slf4j" name="jcl-over-slf4j" rev="${/org.slf4j/jcl-over-slf4j}" conf="test->*"/>
+    <dependency org="org.slf4j" name="slf4j-log4j12" rev="${/org.slf4j/slf4j-log4j12}" conf="test->*"/>
+
+    <exclude org="*" ext="*" matcher="regexp" type="${ivy.exclude.types}"/>
+  </dependencies>
 </ivy-module>