You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@rya.apache.org by kchilton2 <gi...@git.apache.org> on 2017/12/04 21:09:23 UTC

[GitHub] incubator-rya pull request #252: RYA-410 Add geo profile dependency manageme...

GitHub user kchilton2 opened a pull request:

    https://github.com/apache/incubator-rya/pull/252

    RYA-410 Add geo profile dependency management to the rya-project pom file.

    ## Description
    There is a top level geoindexing profile in the rya-project parent pom that defines the dependencies that are specific to geoindexing modules as well as which modules we publish.
    
    ### Tests
    Ran all integration tests with geoindexing turned on and everything passes.
    
    ### Links
    [Jira](https://issues.apache.org/jira/browse/RYA-410)
    
    ### Checklist
    - [ ] Code Review
    - [ ] Squash Commits


You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/kchilton2/incubator-rya RYA-410

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/incubator-rya/pull/252.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #252
    
----
commit dd4f794e19947739162ca707eead8c5b34eec624
Author: kchilton2 <ke...@gmail.com>
Date:   2017-12-04T19:41:27Z

    RYA-410 Add geo profile dependency management to the rya-project pom file.

----


---

[GitHub] incubator-rya issue #252: RYA-410 Add geo profile dependency management to t...

Posted by asfgit <gi...@git.apache.org>.
Github user asfgit commented on the issue:

    https://github.com/apache/incubator-rya/pull/252
  
    
    Refer to this link for build results (access rights to CI server needed): 
    https://builds.apache.org/job/incubator-rya-master-with-optionals-pull-requests/559/



---

[GitHub] incubator-rya pull request #252: RYA-410 Add geo profile dependency manageme...

Posted by kchilton2 <gi...@git.apache.org>.
Github user kchilton2 commented on a diff in the pull request:

    https://github.com/apache/incubator-rya/pull/252#discussion_r160563035
  
    --- Diff: pom.xml ---
    @@ -144,7 +141,83 @@ under the License.
             <skip.rya.it>true</skip.rya.it>  <!-- modified by  -P enable-it  -->
         </properties>
         
    +    <!-- Enable this profile if you want to include Geo functions within Rya. "mvn ... -P geoindexing" -->
         <profiles>
    +        <profile>
    +            <id>geoindexing</id>
    +            <properties>
    +                <geomesa.version>1.3.0-m1</geomesa.version> <!-- Newest: 1.3.0-m1 -->
    +                <geowave.version>0.9.3</geowave.version> <!-- Newest: 0.9.3 -->
    +                <jts.version>1.13</jts.version>
    +            </properties>
    +            <dependencyManagement>
    --- End diff --
    
    I'm not worried about the eclipse problem since as you said, you can trivially tell eclipse to resolve using the geoindexing profile.
    
    The transitive dependency problem exists regardless of how dependency management is defined since the management section only defines dependencies that CAN be used, not the dependencies that ARE used. Actual dependencies are required to change that. If we're pulling down different transitive dependencies between geo on and geo off, that's already happening sans this patch.


---

[GitHub] incubator-rya issue #252: RYA-410 Add geo profile dependency management to t...

Posted by kchilton2 <gi...@git.apache.org>.
Github user kchilton2 commented on the issue:

    https://github.com/apache/incubator-rya/pull/252
  
    https://issues.apache.org/jira/browse/RYA-411


---

[GitHub] incubator-rya pull request #252: RYA-410 Add geo profile dependency manageme...

Posted by DLotts <gi...@git.apache.org>.
Github user DLotts commented on a diff in the pull request:

    https://github.com/apache/incubator-rya/pull/252#discussion_r155017824
  
    --- Diff: extras/rya.geoindexing/pom.xml ---
    @@ -1,206 +1,51 @@
     <?xml version='1.0'?>
    -
    -<!-- 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. -->
    -
    +<!--
    +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.
    +-->
     <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    -  <modelVersion>4.0.0</modelVersion>
    -  <parent>
    -    <groupId>org.apache.rya</groupId>
    -    <artifactId>rya.extras</artifactId>
    -    <version>3.2.12-incubating-SNAPSHOT</version>
    -  </parent>
    -  <artifactId>rya.geoindexing</artifactId>
    -  <packaging>pom</packaging>
    -  <name>Apache Rya Geo Indexing Projects</name>
    -  <description>This parent has several alternative implementations using different libraries or versions of the same library.  
    -  Specifically 
    -          Geomesa depends on geotools v5.1 and 
    -          GeoWave depends on geotools v6.
    -  See the module poms for the actual versions.
    -  </description>
    +    <modelVersion>4.0.0</modelVersion>
    +
    +    <parent>
    +        <groupId>org.apache.rya</groupId>
    +        <artifactId>rya.extras</artifactId>
    +        <version>3.2.12-incubating-SNAPSHOT</version>
    +    </parent>
    +
    +    <artifactId>rya.geoindexing</artifactId>
    +    <packaging>pom</packaging>
    +
    +    <name>Apache Rya Geo Indexing Projects</name>
    +    <description>
    +        This parent has several alternative implementations using different libraries or versions of the same library.  
    +        Specifically 
    +            Geomesa depends on geotools v5.1 and 
    +            GeoWave depends on geotools v6.
    +        See the module poms for the actual versions.
    +     </description>
    +
          <modules>
             <!-- common for all implementations  -->
    -     	 <!-- geomesa for accumulo, uses geotools (not compatible with geowave's dependencies)   -->
    -     	 <!-- geo wave for accumulo, uses geotools (not compatible with geomesa's dependencies)  -->
    -     	 <!-- mongo native geo, not accumulo  -->
    -     	<module>geo.common</module>
    -     	<module>geo.geomesa</module>
    -     	<module>geo.geowave</module>
    -     	<module>geo.mongo</module>
    -     </modules>
    -    <properties>
    -        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    -    </properties>
    -
    -	<dependencies>
    -		<dependency>
    -			<groupId>com.vividsolutions</groupId>
    -			<artifactId>jts</artifactId>
    -			<version>1.13</version>
    -		</dependency>
    -		<dependency>
    -		   <groupId>org.apache.accumulo</groupId>
    -            <artifactId>accumulo-minicluster</artifactId>
    -            <scope>test</scope>
    -        </dependency>
    -
    -        <dependency>
    -            <groupId>org.apache.rya</groupId>
    -            <artifactId>rya.sail</artifactId>
    -            <exclusions>
    -                <exclusion>
    -                    <artifactId>hsqldb</artifactId>
    -                    <groupId>hsqldb</groupId>
    -                </exclusion>
    -            </exclusions>
    -        </dependency>
    -        <dependency>
    -            <groupId>org.apache.rya</groupId>
    -            <artifactId>rya.indexing</artifactId>
    -        </dependency>
    -        <dependency>
    -            <groupId>org.apache.rya</groupId>
    -            <artifactId>accumulo.rya</artifactId>
    -        </dependency>
    -        <dependency>
    -            <groupId>org.apache.rya</groupId>
    -            <artifactId>mongodb.rya</artifactId>
    -        </dependency>
    -        <dependency>
    -            <groupId>org.apache.rya</groupId>
    -            <artifactId>rya.prospector</artifactId>
    -        </dependency>
    -
    -        <!-- Free Text Indexing -->
    -        <dependency>
    -            <groupId>org.apache.lucene</groupId>
    -            <artifactId>lucene-core</artifactId>
    -        </dependency>
    -        <dependency>
    -            <groupId>org.apache.lucene</groupId>
    -            <artifactId>lucene-analyzers</artifactId>
    -        </dependency>
    -
    -        <dependency>
    -            <groupId>commons-codec</groupId>
    -            <artifactId>commons-codec</artifactId>
    -        </dependency>
    -
    -		<dependency>
    -			<groupId>junit</groupId>
    -			<artifactId>junit</artifactId>
    -			<scope>test</scope>
    -		</dependency>
    -		<dependency>
    -			<groupId>org.mockito</groupId>
    -			<artifactId>mockito-all</artifactId>
    -			<scope>test</scope>
    -		</dependency>
    -        <dependency>
    -            <groupId>org.apache.rya</groupId>
    -            <artifactId>accumulo.rya</artifactId>
    -            <type>test-jar</type>
    -            <scope>test</scope>
    -        </dependency>
    -        <dependency>
    -            <groupId>org.apache.rya</groupId>
    -            <artifactId>mongodb.rya</artifactId>
    -            <type>test-jar</type>
    -            <scope>test</scope>
    -        </dependency>
    -    </dependencies>
    -	<build>
    -		<pluginManagement>
    -			<plugins>
    -				<plugin>
    -					<groupId>org.apache.rat</groupId>
    -					<artifactId>apache-rat-plugin</artifactId>
    -					<configuration>
    -						<excludes>
    -							<!-- RDF data Files -->
    -							<exclude>**/*.ttl</exclude>
    -
    -							<!-- Services Files -->
    -							<exclude>**/resources/META-INF/services/**</exclude>
    --- End diff --
    
    Where did these RAT exclusions move to?


---

[GitHub] incubator-rya issue #252: RYA-410 Add geo profile dependency management to t...

Posted by asfgit <gi...@git.apache.org>.
Github user asfgit commented on the issue:

    https://github.com/apache/incubator-rya/pull/252
  
    
    Refer to this link for build results (access rights to CI server needed): 
    https://builds.apache.org/job/incubator-rya-master-with-optionals-pull-requests/644/



---

[GitHub] incubator-rya pull request #252: RYA-410 Add geo profile dependency manageme...

Posted by kchilton2 <gi...@git.apache.org>.
Github user kchilton2 commented on a diff in the pull request:

    https://github.com/apache/incubator-rya/pull/252#discussion_r155076044
  
    --- Diff: extras/rya.geoindexing/pom.xml ---
    @@ -1,206 +1,51 @@
     <?xml version='1.0'?>
    -
    -<!-- 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. -->
    -
    +<!--
    +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.
    +-->
     <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    -  <modelVersion>4.0.0</modelVersion>
    -  <parent>
    -    <groupId>org.apache.rya</groupId>
    -    <artifactId>rya.extras</artifactId>
    -    <version>3.2.12-incubating-SNAPSHOT</version>
    -  </parent>
    -  <artifactId>rya.geoindexing</artifactId>
    -  <packaging>pom</packaging>
    -  <name>Apache Rya Geo Indexing Projects</name>
    -  <description>This parent has several alternative implementations using different libraries or versions of the same library.  
    -  Specifically 
    -          Geomesa depends on geotools v5.1 and 
    -          GeoWave depends on geotools v6.
    -  See the module poms for the actual versions.
    -  </description>
    +    <modelVersion>4.0.0</modelVersion>
    +
    +    <parent>
    +        <groupId>org.apache.rya</groupId>
    +        <artifactId>rya.extras</artifactId>
    +        <version>3.2.12-incubating-SNAPSHOT</version>
    +    </parent>
    +
    +    <artifactId>rya.geoindexing</artifactId>
    +    <packaging>pom</packaging>
    +
    +    <name>Apache Rya Geo Indexing Projects</name>
    +    <description>
    +        This parent has several alternative implementations using different libraries or versions of the same library.  
    +        Specifically 
    +            Geomesa depends on geotools v5.1 and 
    +            GeoWave depends on geotools v6.
    +        See the module poms for the actual versions.
    +     </description>
    +
          <modules>
             <!-- common for all implementations  -->
    -     	 <!-- geomesa for accumulo, uses geotools (not compatible with geowave's dependencies)   -->
    -     	 <!-- geo wave for accumulo, uses geotools (not compatible with geomesa's dependencies)  -->
    -     	 <!-- mongo native geo, not accumulo  -->
    -     	<module>geo.common</module>
    -     	<module>geo.geomesa</module>
    -     	<module>geo.geowave</module>
    -     	<module>geo.mongo</module>
    -     </modules>
    -    <properties>
    -        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    -    </properties>
    -
    -	<dependencies>
    -		<dependency>
    -			<groupId>com.vividsolutions</groupId>
    -			<artifactId>jts</artifactId>
    -			<version>1.13</version>
    -		</dependency>
    -		<dependency>
    -		   <groupId>org.apache.accumulo</groupId>
    -            <artifactId>accumulo-minicluster</artifactId>
    -            <scope>test</scope>
    -        </dependency>
    -
    -        <dependency>
    -            <groupId>org.apache.rya</groupId>
    -            <artifactId>rya.sail</artifactId>
    -            <exclusions>
    -                <exclusion>
    -                    <artifactId>hsqldb</artifactId>
    -                    <groupId>hsqldb</groupId>
    -                </exclusion>
    -            </exclusions>
    -        </dependency>
    -        <dependency>
    -            <groupId>org.apache.rya</groupId>
    -            <artifactId>rya.indexing</artifactId>
    -        </dependency>
    -        <dependency>
    -            <groupId>org.apache.rya</groupId>
    -            <artifactId>accumulo.rya</artifactId>
    -        </dependency>
    -        <dependency>
    -            <groupId>org.apache.rya</groupId>
    -            <artifactId>mongodb.rya</artifactId>
    -        </dependency>
    -        <dependency>
    -            <groupId>org.apache.rya</groupId>
    -            <artifactId>rya.prospector</artifactId>
    -        </dependency>
    -
    -        <!-- Free Text Indexing -->
    -        <dependency>
    -            <groupId>org.apache.lucene</groupId>
    -            <artifactId>lucene-core</artifactId>
    -        </dependency>
    -        <dependency>
    -            <groupId>org.apache.lucene</groupId>
    -            <artifactId>lucene-analyzers</artifactId>
    -        </dependency>
    -
    -        <dependency>
    -            <groupId>commons-codec</groupId>
    -            <artifactId>commons-codec</artifactId>
    -        </dependency>
    -
    -		<dependency>
    -			<groupId>junit</groupId>
    -			<artifactId>junit</artifactId>
    -			<scope>test</scope>
    -		</dependency>
    -		<dependency>
    -			<groupId>org.mockito</groupId>
    -			<artifactId>mockito-all</artifactId>
    -			<scope>test</scope>
    -		</dependency>
    -        <dependency>
    -            <groupId>org.apache.rya</groupId>
    -            <artifactId>accumulo.rya</artifactId>
    -            <type>test-jar</type>
    -            <scope>test</scope>
    -        </dependency>
    -        <dependency>
    -            <groupId>org.apache.rya</groupId>
    -            <artifactId>mongodb.rya</artifactId>
    -            <type>test-jar</type>
    -            <scope>test</scope>
    -        </dependency>
    -    </dependencies>
    -	<build>
    -		<pluginManagement>
    -			<plugins>
    -				<plugin>
    -					<groupId>org.apache.rat</groupId>
    -					<artifactId>apache-rat-plugin</artifactId>
    -					<configuration>
    -						<excludes>
    -							<!-- RDF data Files -->
    -							<exclude>**/*.ttl</exclude>
    -
    -							<!-- Services Files -->
    -							<exclude>**/resources/META-INF/services/**</exclude>
    --- End diff --
    
    They seem to be unnecessary. I ran a build with rat enabled and no files failed the rat test.


---

[GitHub] incubator-rya pull request #252: RYA-410 Add geo profile dependency manageme...

Posted by asfgit <gi...@git.apache.org>.
Github user asfgit closed the pull request at:

    https://github.com/apache/incubator-rya/pull/252


---

[GitHub] incubator-rya pull request #252: RYA-410 Add geo profile dependency manageme...

Posted by jdasch <gi...@git.apache.org>.
Github user jdasch commented on a diff in the pull request:

    https://github.com/apache/incubator-rya/pull/252#discussion_r159702629
  
    --- Diff: pom.xml ---
    @@ -144,7 +141,83 @@ under the License.
             <skip.rya.it>true</skip.rya.it>  <!-- modified by  -P enable-it  -->
         </properties>
         
    +    <!-- Enable this profile if you want to include Geo functions within Rya. "mvn ... -P geoindexing" -->
         <profiles>
    +        <profile>
    +            <id>geoindexing</id>
    +            <properties>
    +                <geomesa.version>1.3.0-m1</geomesa.version> <!-- Newest: 1.3.0-m1 -->
    +                <geowave.version>0.9.3</geowave.version> <!-- Newest: 0.9.3 -->
    +                <jts.version>1.13</jts.version>
    +            </properties>
    +            <dependencyManagement>
    --- End diff --
    
    I'm not sure how I feel about this.  On the one hand, it does a nice job of separating out geoindexing specific dependencies out of the dependencyManagement section.  But this causes all sorts of eclipse pom parsing errors.  These eclipse errors can be resolved by Right-Clicking the maven project, say rya.geo.common, in the Package Explorer: Maven > Select Maven profiles... and checking geoindexing.  So that part is trivial enough.  My larger concern is we might introduce a different tree of transitive dependencies by changing the project's dependencyManagement in this way, which could cause subtle transitive dependency versioning issues.  IE.  a non-geo function works one way if built with geoindexing profile, and works another way if not built with the geoindexing profile.  Maybe @amihalik can weigh in on this.


---

[GitHub] incubator-rya issue #252: RYA-410 Add geo profile dependency management to t...

Posted by asfgit <gi...@git.apache.org>.
Github user asfgit commented on the issue:

    https://github.com/apache/incubator-rya/pull/252
  
    
    Refer to this link for build results (access rights to CI server needed): 
    https://builds.apache.org/job/incubator-rya-master-with-optionals-pull-requests/645/



---

[GitHub] incubator-rya issue #252: RYA-410 Add geo profile dependency management to t...

Posted by kchilton2 <gi...@git.apache.org>.
Github user kchilton2 commented on the issue:

    https://github.com/apache/incubator-rya/pull/252
  
    I'll create a jira ticket for adding Geo functions to the Fluo app.


---

[GitHub] incubator-rya issue #252: RYA-410 Add geo profile dependency management to t...

Posted by asfgit <gi...@git.apache.org>.
Github user asfgit commented on the issue:

    https://github.com/apache/incubator-rya/pull/252
  
    
    Refer to this link for build results (access rights to CI server needed): 
    https://builds.apache.org/job/incubator-rya-master-with-optionals-pull-requests/643/



---