[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
GitHub user chrisdutz opened a pull request: https://github.com/apache/incubator-edgent/pull/309 Migration of the Edgent project to be able to build with Apache Maven I finally managed to solve all problems and untangle all knots I wasn't that happy with. The current version should be buildable with a simple "mvn package" This would include running all unit-tests as part of the build. You can merge this pull request into a Git repository by running: $ git pull https://github.com/chrisdutz/incubator-edgent feature/maven Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-edgent/pull/309.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 #309 commit f1776b4df687d436cc4e496dc8be74ea4c6fad15 Author: Christofer Dutz Date: 2017-05-28T13:51:58Z Maven migration commit 15ff80ab5a2dc1042f5644585e53b74909acea7d Author: Christofer Dutz Date: 2017-05-29T09:25:10Z - Added the slf4j-jdk14 dependency to all modules in test-scope to enable the output of log data. - Added a missing dependency to enable the SSL related tests, which were causing problems. - Re-Enabled te WebSocket tests commit a41df4701c0dcf4e8074cfb773fadbb24ffca245 Author: Christofer Dutz Date: 2017-05-29T12:04:38Z Make the topology module build the test-server jar that is used by other modules unit-tests commit 7aee5cde11c83479b28cbab13d050757d37b9cd6 Author: Christofer Dutz Date: 2017-05-29T12:14:21Z Made the "direct" modules tests work ... commit 5cfbbb111aec31db90c5b9d4d5ff8c51c20ad6de Author: Christofer Dutz Date: 2017-05-29T14:44:15Z Removed an accidentally added character commit ced7b2f536e859943706e190d07c4181e2413ac9 Author: Christofer Dutz Date: 2017-05-30T10:51:50Z Merge branch 'master' of https://github.com/apache/incubator-edgent into feature/maven commit 54f6eab77bef80d35a877850afab45ab221bf659 Author: Christofer Dutz Date: 2017-06-02T13:37:11Z Finished the Maven migration (Enabled all test) --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user dlaboss commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r119916697 --- Diff: analytics/math3/pom.xml --- @@ -0,0 +1,68 @@ + + +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";> + 4.0.0 + + +org.apache.edgent.analytics +analytics +1.2.0-SNAPSHOT --- End diff -- I assume this is just a temporary situation and a variable will be defined once for the Edgent version being built and then just referenced everywhere else? --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user dlaboss commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r119916868 --- Diff: analytics/math3/pom.xml --- @@ -0,0 +1,68 @@ + + +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";> + 4.0.0 + + +org.apache.edgent.analytics +analytics +1.2.0-SNAPSHOT + + + analytics-math3 + + Apache Edgent: Analytics: Math3 + + + + org.apache.edgent.api + api-topology + 1.2.0-SNAPSHOT + + + org.apache.commons + commons-math3 + 3.4.1 + + + --- End diff -- newbie question: I see this in many (all?) pom.xml: Why are two dependency declarations needed for `providers-direct`? Why isn't just the 2nd one sufficient (like the one for `api-topology`)? --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user chrisdutz commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r119985909 --- Diff: analytics/math3/pom.xml --- @@ -0,0 +1,68 @@ + + +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";> + 4.0.0 + + +org.apache.edgent.analytics +analytics +1.2.0-SNAPSHOT --- End diff -- Actually not. Especially the parent is the only place where a variable can't be used. But in maven the version number of the all artifacts in the same reactor (collection of maven modules in one build) is usually explicitly written as the maven-release-plugin takes care of updating all the version numbers. The only place it tends to have problems with is when referencing versions in the plugin configuration. That's why I used variables in the maven-dependency-plugin configuration. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user chrisdutz commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r119985927 --- Diff: analytics/math3/pom.xml --- @@ -0,0 +1,68 @@ + + +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";> + 4.0.0 + + +org.apache.edgent.analytics +analytics +1.2.0-SNAPSHOT + + + analytics-math3 + + Apache Edgent: Analytics: Math3 + + + + org.apache.edgent.api + api-topology + 1.2.0-SNAPSHOT + + + org.apache.commons + commons-math3 + 3.4.1 + + + --- End diff -- Well it actually is handling two different artifacts ... one is the main jar (first declaration) which contains the productive code which is added to the compile classpath. The second adds the jar containing the test-code (type=test-jar) to the test classpath (scope=test) --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user dlaboss commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r126819370 --- Diff: platforms/android/connectors/pom.xml --- @@ -37,19 +37,19 @@ command common csv -edgent.javax.websocket file http iot iotp -javax.websocket-client -javax.websocket-server jdbc kafka mqtt pubsub serial -wsclient +websocket-base --- End diff -- missing websocket --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user dlaboss commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r126820077 --- Diff: connectors/websocket/pom.xml --- @@ -27,10 +27,10 @@ 1.2.0-SNAPSHOT - edgent-connectors-websocket-wsclient --- End diff -- unrelated to this change I see that j8 and j7 websocket/pom.xml declare a dependency on the direct provider. That can't be correct. A connector can't depend on a provider. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user chrisdutz commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r126889852 --- Diff: connectors/websocket/pom.xml --- @@ -27,10 +27,10 @@ 1.2.0-SNAPSHOT - edgent-connectors-websocket-wsclient --- End diff -- Ok ... it seems that there is a required dependency to "direct" provider, but I moved the dependency from a "compile" to a "test" dependency as removing "direct" completely caused compilation errors in tests. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user chrisdutz commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r126891385 --- Diff: platforms/android/connectors/pom.xml --- @@ -37,19 +37,19 @@ command common csv -edgent.javax.websocket file http iot iotp -javax.websocket-client -javax.websocket-server jdbc kafka mqtt pubsub serial -wsclient +websocket-base --- End diff -- Added the module in 6cb9c73 --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user dlaboss commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r127754914 --- Diff: pom.xml --- @@ -223,6 +223,15 @@ + + + + org.apache.maven.plugins + maven-assembly-plugin + +edgent-incubating-${project.version} --- End diff -- Just checking that omitting "-parent" was intentional. (I'm not sure what the best-practice is for this) --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user chrisdutz commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r127832387 --- Diff: pom.xml --- @@ -223,6 +223,15 @@ + + + + org.apache.maven.plugins + maven-assembly-plugin + +edgent-incubating-${project.version} --- End diff -- It was intentional ... The POM is named edgent-parent, but the source release contains the entire project. That's why I omitted the "parent" from the name. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user dlaboss commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r127962743 --- Diff: pom.xml --- @@ -223,6 +223,15 @@ + + + + org.apache.maven.plugins + maven-assembly-plugin + +edgent-incubating-${project.version} --- End diff -- Makes sense, thanks. I also noticed that the current bundles have an apache prefix ("apache-edgent-tgz"). Don't recall if that's a best practice, I seem to have a recollection of Justin noting something about it :-) Your thoughts? We also currently create .md5 and .sha files for distribution. Are they missing or do they only get created as part of a different task (I used mvn install -Papache-release)? Previously we only created a tgz bundle. Now it looks like only a zip? Seems OK but wanted to double check. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user chrisdutz commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r127963510 --- Diff: pom.xml --- @@ -223,6 +223,15 @@ + + + + org.apache.maven.plugins + maven-assembly-plugin + +edgent-incubating-${project.version} --- End diff -- Yeahh ... remember having that discussion with him for Flex ... Just added an "apache-" and He'll be happy. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user dlaboss commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r127965283 --- Diff: console/servlets/pom.xml --- @@ -49,23 +56,60 @@ - - + --- End diff -- Please update the top level source LICENSE file to reflect only what's now bundled in the source. Presumably the WAR's included LICENSE continues to require noting that it bundles d3,jquery,...? --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user dlaboss commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r128331174 --- Diff: connectors/kafka/pom.xml --- @@ -42,7 +42,12 @@ org.apache.kafka kafka_2.10 0.8.2.2 - provided + + + * + * + + --- End diff -- I just verified that each of these non-edgent deps need the non-transitive specification (not just kafka_2.10). Without it, copy-dependencies (and uber jar) pull in unwanted things relative to the gradle/ant build: Only in DEPS-WITH-KAFKA-TOO-MUCH/: jline-0.9.94.jar Only in DEPS-WITH-KAFKA-TOO-MUCH/: lz4-1.2.0.jar Only in DEPS-WITH-KAFKA-TOO-MUCH/: netty-3.7.0.Final.jar Only in DEPS-WITH-KAFKA-TOO-MUCH/: slf4j-log4j12-1.6.1.jar Only in DEPS-WITH-KAFKA-TOO-MUCH/: snappy-java-1.1.1.7.jar --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user dlaboss commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r130891150 --- Diff: connectors/kafka/pom.xml --- @@ -42,7 +42,12 @@ org.apache.kafka kafka_2.10 0.8.2.2 - provided + + + * + * + + --- End diff -- Added a commit to address this. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user dlaboss commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r140819470 --- Diff: analytics/math3/src/main/resources/META-INF/NOTICE --- @@ -0,0 +1,12 @@ + +Apache Edgent: Analytics: Math3 +Copyright 2017 The Apache Software Foundation + +This product includes software developed at +The Apache Software Foundation (http://www.apache.org/). + +=== + +Portions of this bundle were developed by IBM Corp. +Copyright IBM Corp. 2015, 2016 + --- End diff -- Yikes... that's pretty cumbersome :-) "Copyright 2017 The Apache..." needs to be "Copyright 2016-2017...", right? And we'll need to remember to change them all the first release of a year. ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user dlaboss commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r140822488 --- Diff: analytics/math3/src/main/resources/META-INF/NOTICE --- @@ -0,0 +1,12 @@ + +Apache Edgent: Analytics: Math3 +Copyright 2017 The Apache Software Foundation + +This product includes software developed at +The Apache Software Foundation (http://www.apache.org/). + +=== + +Portions of this bundle were developed by IBM Corp. +Copyright IBM Corp. 2015, 2016 + --- End diff -- Another issue? ...the original binary bundle jar NOTICE (in licenses/ibm-contrib-notice) includes an incubating disclaimer sentence. It's omitted in these. I suspect it's required. ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user chrisdutz commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r140823944 --- Diff: analytics/math3/src/main/resources/META-INF/NOTICE --- @@ -0,0 +1,12 @@ + +Apache Edgent: Analytics: Math3 +Copyright 2017 The Apache Software Foundation + +This product includes software developed at +The Apache Software Foundation (http://www.apache.org/). + +=== + +Portions of this bundle were developed by IBM Corp. +Copyright IBM Corp. 2015, 2016 + --- End diff -- Well the option I would probably go for is to make a resource bundle like the one used in the remote resources bundle. The year could be automatically inserted by maven ... in the worst case it would be just a property on the parent project. This is just the quick fix for the open issue. I used the content of the official template the apache foundation provides for incubating projects. The incubating message is in the Disclaimer and not in the Notice for these. If this were required, probably the Apache Foundation would have updated those templates. And as Justin said "Keep it as short as possible" :-) ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user dlaboss commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r140825232 --- Diff: analytics/math3/src/main/resources/META-INF/NOTICE --- @@ -0,0 +1,12 @@ + +Apache Edgent: Analytics: Math3 +Copyright 2017 The Apache Software Foundation + +This product includes software developed at +The Apache Software Foundation (http://www.apache.org/). + +=== + +Portions of this bundle were developed by IBM Corp. +Copyright IBM Corp. 2015, 2016 + --- End diff -- I didn't realize it wasn't present in the official template... excellent! ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user dlaboss commented on a diff in the pull request: https://github.com/apache/incubator-edgent/pull/309#discussion_r140825725 --- Diff: analytics/math3/src/main/resources/META-INF/NOTICE --- @@ -0,0 +1,12 @@ + +Apache Edgent: Analytics: Math3 +Copyright 2017 The Apache Software Foundation + +This product includes software developed at +The Apache Software Foundation (http://www.apache.org/). + +=== + +Portions of this bundle were developed by IBM Corp. +Copyright IBM Corp. 2015, 2016 + --- End diff -- oh... but we still a starting date of 2016 before we can release this ---
[GitHub] incubator-edgent pull request #309: Migration of the Edgent project to be ab...
Github user chrisdutz closed the pull request at: https://github.com/apache/incubator-edgent/pull/309 ---