This is an automated email from the ASF dual-hosted git repository. aherbert pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-math.git
The following commit(s) were added to refs/heads/master by this push: new 0e3634108 Add a docs module to create aggregate reports 0e3634108 is described below commit 0e3634108a90d9d3db9df4bb8dc4adb102232560 Author: Alex Herbert <aherb...@apache.org> AuthorDate: Wed Dec 21 23:36:47 2022 +0000 Add a docs module to create aggregate reports The site pages have been updated to link to the aggregate javadoc report. --- commons-math-core/pom.xml | 6 + commons-math-docs/pom.xml | 212 ++++++++++++++++++++++++++++++ commons-math-docs/src/site/site.xml | 31 +++++ commons-math-docs/src/site/xdoc/index.xml | 41 ++++++ commons-math-legacy-core/pom.xml | 6 + commons-math-legacy-exception/pom.xml | 10 ++ commons-math-legacy/pom.xml | 6 + commons-math-neuralnet/pom.xml | 6 + commons-math-transform/pom.xml | 6 + pom.xml | 7 +- src/site/site.xml | 2 +- src/site/xdoc/userguide/overview.xml | 2 +- 12 files changed, 327 insertions(+), 8 deletions(-) diff --git a/commons-math-core/pom.xml b/commons-math-core/pom.xml index 7add89143..367a57bac 100644 --- a/commons-math-core/pom.xml +++ b/commons-math-core/pom.xml @@ -53,6 +53,12 @@ <artifactId>commons-numbers-core</artifactId> </dependency> + <dependency> + <groupId>org.junit.vintage</groupId> + <artifactId>junit-vintage-engine</artifactId> + <scope>test</scope> + </dependency> + </dependencies> </project> diff --git a/commons-math-docs/pom.xml b/commons-math-docs/pom.xml new file mode 100644 index 000000000..4d83de835 --- /dev/null +++ b/commons-math-docs/pom.xml @@ -0,0 +1,212 @@ +<?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. +--> +<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/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + + <parent> + <groupId>org.apache.commons</groupId> + <artifactId>commons-math-parent</artifactId> + <version>4.0-SNAPSHOT</version> + </parent> + + <artifactId>commons-math-docs</artifactId> + <!-- do not set packaging to pom, because otherwise we will receive + "Not executing Javadoc as the project is not a Java classpath-capable package" --> + + <name>Apache Commons Math Documentation</name> + <description>Aggregator module to genenerate Apache Commons Math documentation.</description> + + <properties> + <checkstyle.skip>true</checkstyle.skip> + <animal.sniffer.skip>true</animal.sniffer.skip> + <!-- Workaround to avoid duplicating config files. --> + <math.parent.dir>${basedir}/..</math.parent.dir> + <!-- Skip the standard build plugins to avoid processing this 'jar' as an artifact. --> + <maven.resources.skip>true</maven.resources.skip> + <maven.source.skip>true</maven.source.skip> + <maven.main.skip>true</maven.main.skip> + <maven.test.skip>true</maven.test.skip> + <maven.install.skip>true</maven.install.skip> + <maven.deploy.skip>true</maven.deploy.skip> + <!-- Simple site --> + <pmd.skip>true</pmd.skip> + <cpd.skip>true</cpd.skip> + <spotbugs.skip>true</spotbugs.skip> + <checkstyle.skip>true</checkstyle.skip> + <changes.jira.skip>true</changes.jira.skip> + <skipSurefireReport>true</skipSurefireReport> + <!-- Disable javadoc errors so an aggregate is always created. --> + <doclint.javadoc.qualifier>-Xdoclint:none</doclint.javadoc.qualifier> + </properties> + + <!-- Depend on all other modules --> + <dependencies> + <dependency> + <groupId>org.apache.commons</groupId> + <artifactId>commons-math4-core</artifactId> + <version>${project.version}</version> + </dependency> + + <dependency> + <groupId>org.apache.commons</groupId> + <artifactId>commons-math4-neuralnet</artifactId> + <version>${project.version}</version> + </dependency> + + <dependency> + <groupId>org.apache.commons</groupId> + <artifactId>commons-math4-transform</artifactId> + <version>${project.version}</version> + </dependency> + + <dependency> + <groupId>org.apache.commons</groupId> + <artifactId>commons-math4-legacy-exception</artifactId> + <version>${project.version}</version> + </dependency> + + <dependency> + <groupId>org.apache.commons</groupId> + <artifactId>commons-math4-legacy-core</artifactId> + <version>${project.version}</version> + </dependency> + + <dependency> + <groupId>org.apache.commons</groupId> + <artifactId>commons-math4-legacy</artifactId> + <version>${project.version}</version> + </dependency> + </dependencies> + + <build> + <sourceDirectory>src</sourceDirectory> + + <plugins> + <plugin> + <!-- This plugin has no skip property - use an invalid phase --> + <groupId>org.spdx</groupId> + <artifactId>spdx-maven-plugin</artifactId> + <executions> + <execution> + <id>build-spdx</id> + <goals> + <goal>createSPDX</goal> + </goals> + <phase>None</phase> + </execution> + </executions> + </plugin> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-jar-plugin</artifactId> + <configuration> + <skipIfEmpty>true</skipIfEmpty> + </configuration> + </plugin> + + <!-- Create aggregate javadoc jar using 'mvn javadoc:aggregate-jar' --> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <configuration> + <reportOutputDirectory>${project.build.directory}/apidocs</reportOutputDirectory> + <includeDependencySources>true</includeDependencySources> + <doctitle>Apache Commons Math ${project.version}</doctitle> + <windowtitle>Apache Commons Math ${project.version}</windowtitle> + <use>true</use> + <version>false</version> + <!-- Do not configure groups as modules do not have sub-packages --> + </configuration> + </plugin> + + </plugins> + </build> + + <reporting> + <plugins> + <!-- Create aggregate javadoc site report --> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <configuration> + <reportOutputDirectory>${project.build.directory}/apidocs</reportOutputDirectory> + <includeDependencySources>true</includeDependencySources> + <doctitle>Apache Commons Math ${project.version}</doctitle> + <windowtitle>Apache Commons Math ${project.version}</windowtitle> + <use>true</use> + <version>false</version> + <groups> + <group> + <title>Core Package</title> + <packages>org.apache.commons.math4.core*</packages> + </group> + <group> + <title>Neural Network Package</title> + <packages>org.apache.commons.math4.neuralnet*</packages> + </group> + <group> + <title>Transform Package</title> + <packages>org.apache.commons.math4.transform*</packages> + </group> + <group> + <title>Legacy Package</title> + <packages>org.apache.commons.math4.legacy*</packages> + </group> + </groups> + </configuration> + <reportSets> + <reportSet> + <reports> + <report>aggregate</report> + </reports> + </reportSet> + </reportSets> + </plugin> + + <!-- Create an aggregate report from the *parent* directory using: + + mvn jacoco:report-aggregate + + Requires that tests have already been run with the jacoco user agent. + If executed within this directory then jacoco does not collect the + executions from the module dependencies. --> + <plugin> + <groupId>org.jacoco</groupId> + <artifactId>jacoco-maven-plugin</artifactId> + <version>${commons.jacoco.version}</version> + <configuration> + <title>Apache Commons Math</title> + <footer>Code Coverage Report for Apache Commons Math ${project.version}</footer> + <includes> + <!-- Analyze class files only to exclude shaded agent JAR from report --> + <include>**/*.class</include> + </includes> + </configuration> + <reportSets> + <reportSet> + <reports> + <report>report-aggregate</report> + </reports> + </reportSet> + </reportSets> + </plugin> + </plugins> + </reporting> + +</project> diff --git a/commons-math-docs/src/site/site.xml b/commons-math-docs/src/site/site.xml new file mode 100644 index 000000000..b339bc15b --- /dev/null +++ b/commons-math-docs/src/site/site.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + 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 name="Math"> + <bannerRight> + <name>Apache Commons Math</name> + </bannerRight> + + <body> + <menu name="Math Documentation"> + <item name="Overview" href="index.html"/> + <item name="Latest API docs" + href="apidocs/index.html"/> + </menu> + + </body> +</project> diff --git a/commons-math-docs/src/site/xdoc/index.xml b/commons-math-docs/src/site/xdoc/index.xml new file mode 100644 index 000000000..8ad2cf2e6 --- /dev/null +++ b/commons-math-docs/src/site/xdoc/index.xml @@ -0,0 +1,41 @@ +<?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. + --> + +<document> + + <properties> + <title>Commons Math Documentation</title> + </properties> + + <body> + + <section name="Commons Math: The Apache Commons Mathematics Library" href="summary"> + <p> + Commons Math is a library of lightweight, self-contained + mathematics and statistics components addressing the most common + problems not available in the Java programming language or Commons + Lang. + </p> + <p> + Browse the <a href="apidocs/index.html">Javadoc</a> for more information. + </p> + </section> + + </body> + +</document> diff --git a/commons-math-legacy-core/pom.xml b/commons-math-legacy-core/pom.xml index e6cfb4a6a..f511a463d 100644 --- a/commons-math-legacy-core/pom.xml +++ b/commons-math-legacy-core/pom.xml @@ -70,6 +70,12 @@ <artifactId>commons-rng-simple</artifactId> </dependency> + <dependency> + <groupId>org.junit.vintage</groupId> + <artifactId>junit-vintage-engine</artifactId> + <scope>test</scope> + </dependency> + </dependencies> </project> diff --git a/commons-math-legacy-exception/pom.xml b/commons-math-legacy-exception/pom.xml index 4b68915b1..4dd00ac86 100644 --- a/commons-math-legacy-exception/pom.xml +++ b/commons-math-legacy-exception/pom.xml @@ -43,4 +43,14 @@ <math.jira.component>legacy-exception</math.jira.component> </properties> + <dependencies> + + <dependency> + <groupId>org.junit.vintage</groupId> + <artifactId>junit-vintage-engine</artifactId> + <scope>test</scope> + </dependency> + + </dependencies> + </project> diff --git a/commons-math-legacy/pom.xml b/commons-math-legacy/pom.xml index 25a96106b..f2a4615ea 100644 --- a/commons-math-legacy/pom.xml +++ b/commons-math-legacy/pom.xml @@ -123,6 +123,12 @@ <artifactId>commons-math4-legacy-core</artifactId> </dependency> + <dependency> + <groupId>org.junit.vintage</groupId> + <artifactId>junit-vintage-engine</artifactId> + <scope>test</scope> + </dependency> + <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-geometry-euclidean</artifactId> diff --git a/commons-math-neuralnet/pom.xml b/commons-math-neuralnet/pom.xml index 52a78069c..68866ca0d 100644 --- a/commons-math-neuralnet/pom.xml +++ b/commons-math-neuralnet/pom.xml @@ -60,6 +60,12 @@ <artifactId>commons-rng-sampling</artifactId> </dependency> + <dependency> + <groupId>org.junit.vintage</groupId> + <artifactId>junit-vintage-engine</artifactId> + <scope>test</scope> + </dependency> + </dependencies> </project> diff --git a/commons-math-transform/pom.xml b/commons-math-transform/pom.xml index 853cea535..3d3a6bdd7 100644 --- a/commons-math-transform/pom.xml +++ b/commons-math-transform/pom.xml @@ -55,6 +55,12 @@ <artifactId>commons-numbers-complex</artifactId> </dependency> + <dependency> + <groupId>org.junit.vintage</groupId> + <artifactId>junit-vintage-engine</artifactId> + <scope>test</scope> + </dependency> + <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-rng-simple</artifactId> diff --git a/pom.xml b/pom.xml index 8212c3636..cd06520ff 100644 --- a/pom.xml +++ b/pom.xml @@ -118,6 +118,7 @@ <module>commons-math-legacy</module> <!-- 4. Modules that depend on "legacy" codes. --> + <module>commons-math-docs</module> <module>commons-math-examples</module> </modules> @@ -212,12 +213,6 @@ <scope>test</scope> </dependency> - <dependency> - <groupId>org.junit.vintage</groupId> - <artifactId>junit-vintage-engine</artifactId> - <scope>test</scope> - </dependency> - </dependencies> <build> diff --git a/src/site/site.xml b/src/site/site.xml index f65930663..fe3167754 100644 --- a/src/site/site.xml +++ b/src/site/site.xml @@ -31,7 +31,7 @@ <menu name="Math"> <item name="Overview" href="/index.html"/> <item name="Downloads" href="http://commons.apache.org/math/download_math.cgi"/> - <item name="Latest API docs (development)" href="apidocs/index.html"/> + <item name="Latest API docs (development)" href="commons-math-docs/apidocs/index.html"/> <item name="Javadoc (3.6.1 release)" href="http://commons.apache.org/math/javadocs/api-3.6.1/index.html"/> <item name="Javadoc (3.6 release)" diff --git a/src/site/xdoc/userguide/overview.xml b/src/site/xdoc/userguide/overview.xml index b0158ca6f..b1ea29278 100644 --- a/src/site/xdoc/userguide/overview.xml +++ b/src/site/xdoc/userguide/overview.xml @@ -89,7 +89,7 @@ <li><a href="fitting.html">org.apache.commons.math4.fitting</a> - Curve Fitting</li> <li><a href="ml.html">org.apache.commons.math4.ml</a> - Machine Learning</li> </ul> - Package javadocs are <a href="../apidocs/index.html">here</a> + Package javadocs are <a href="../commons-math-docs/apidocs/index.html">here</a>. </p> </subsection>