Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package mojo-parent for openSUSE:Factory checked in at 2024-06-12 15:39:40 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/mojo-parent (Old) and /work/SRC/openSUSE:Factory/.mojo-parent.new.19518 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mojo-parent" Wed Jun 12 15:39:40 2024 rev:4 rq:1180177 version:82 Changes: -------- --- /work/SRC/openSUSE:Factory/mojo-parent/mojo-parent.changes 2022-12-06 14:23:04.765475861 +0100 +++ /work/SRC/openSUSE:Factory/.mojo-parent.new.19518/mojo-parent.changes 2024-06-12 15:40:33.559048024 +0200 @@ -1,0 +2,53 @@ +Wed Jun 12 09:38:58 UTC 2024 - Fridrich Strba <fst...@suse.com> + +- Update to 82: + * Potentially Breaking Changes + + mojo.java.target should be set as "8", without "1."; it is + now used for release options + + spotless plugin must be executed by JDK 11 at least, use + profile if needed + + ossrh-snapshots repository was removed from parent; if needed + please add in project where it is used + * New features and improvements + + Do not include tests code in JavaDocs + + Remove SHA-512 checksum for source release artifact + + Use only project version as tag for release + + Add space before close empty elements in poms by spotless + + Using Checkstyle together with Spotless + + Introduce spotless for automatic code formatting + + Introduce enforcer rule for minimal version of Java and Maven + + Remove jxr from reporting + + Remove taglist from reporting + + Remove Surefire from reporting + + Use new Plugin Tools report - maven-plugin-report-plugin + + Remove PMD from reporting + + Remove Checkstyle from reporting + + Add sisu-maven-plugin + + Introduce maven.version property - allow projects to override + + Execute spotless by JDK 11 at least + + Use release options for m-compiler-p with newer JDKs + + Allow override of invoker.streamLogsOnFailures + + Require Maven 3.9.x at least for releases + + Add maven-wrapper-plugin to pluginManagement + + Remove ossrh-snapshots repository from MojoHaus parent + + Add build-helper-maven-plugin to pluginManagement + + Require Maven 3.6.3+ + + Update palantirJavaFormat for spotless - JDK 21 compatible + + Add dependencyManagement for maven-shade-plugin + + Remove dead markmail.org from mailing lists + + simplify life for using spotless (active per default), + document property to de activate it + + Drop recommendedJavaBuildVersion property + + Format Markdown files with Spotless Plugin + * Bug Fixes + + Restore source release distribution in child projects + + Rename property maven.version to mavenVersion + + minimalMavenBuildVersion should not be overriding by + mavenVersion + + Use simple checkstyle rules since spotless is executed by + default + + Use old spotless version only for JDK < 11 + + Fix spotless configuration for markdown - exclude generated + files + +------------------------------------------------------------------- @@ -7,5 +60,5 @@ - * Remove Google search box due to privacy (#274) @slawekjaranowski - * Put version for mrm-maven-plugin in property (#273) @slawekjaranowski - * Add streamLogsOnFailures to m-invoker-p (#272) @slawekjaranowski - * Add property for maven-fluido-skin version (#268) @slawekjaranowski - * Setup Apache Matomo analytics (#259) @slawekjaranowski + * Remove Google search box due to privacy + * Put version for mrm-maven-plugin in property + * Add streamLogsOnFailures to m-invoker-p + * Add property for maven-fluido-skin version + * Setup Apache Matomo analytics @@ -14,5 +67,5 @@ - * Require Maven 3.2.5 (#215) @slachiewicz - * [#225] add SHA-512 hashes (#226) @bmarwell - * Extract plugin version as variable so child pom can override if needed (#84) @nhojpatrick - * remove issue-tracking as do not exists anymore (#148) @olamy - * remove cim report as it do not exists anymore (#147) @olamy + * Require Maven 3.2.5 + * [#225] add SHA-512 hashes + * Extract plugin version as variable so child pom can override if needed + * remove issue-tracking as do not exists anymore + * remove cim report as it do not exists anymore Old: ---- mojo-parent-70.tar.gz New: ---- mojo-parent-82.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mojo-parent.spec ++++++ --- /var/tmp/diff_new_pack.shY1o6/_old 2024-06-12 15:40:33.975063266 +0200 +++ /var/tmp/diff_new_pack.shY1o6/_new 2024-06-12 15:40:33.975063266 +0200 @@ -1,7 +1,7 @@ # # spec file for package mojo-parent # -# Copyright (c) 2022 SUSE LLC +# Copyright (c) 2024 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,13 +17,13 @@ Name: mojo-parent -Version: 70 +Version: 82 Release: 0 Summary: Codehaus MOJO parent project pom file License: Apache-2.0 Group: Development/Libraries/Java URL: https://www.mojohaus.org/mojo-parent/ -Source0: https://github.com/mojohaus/mojo-parent/archive/%{name}-%{version}.tar.gz +Source0: https://github.com/mojohaus/%{name}/archive/refs/tags/%{version}.tar.gz#/%{name}-%{version}.tar.gz Source1: http://www.apache.org/licenses/LICENSE-2.0.txt BuildRequires: javapackages-local Requires: mvn(org.junit:junit-bom:pom:) @@ -33,11 +33,12 @@ Codehaus MOJO parent project pom file %prep -%setup -q -n %{name}-%{name}-%{version} +%setup -q # Not needed %pom_remove_plugin :maven-enforcer-plugin %pom_remove_plugin :maven-site-plugin %pom_remove_plugin :maven-checkstyle-plugin +%pom_remove_plugin :spotless-maven-plugin cp %{SOURCE1} . ++++++ mojo-parent-70.tar.gz -> mojo-parent-82.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mojo-parent-mojo-parent-70/.github/release-drafter.yml new/mojo-parent-82/.github/release-drafter.yml --- old/mojo-parent-mojo-parent-70/.github/release-drafter.yml 2022-08-15 14:35:42.000000000 +0200 +++ new/mojo-parent-82/.github/release-drafter.yml 2024-05-13 19:35:35.000000000 +0200 @@ -2,8 +2,8 @@ # mojo-parent uses a single version number, no semantic versioning version-template: '$MAJOR' name-template: '$NEXT_MAJOR_VERSION' -tag-template: 'mojo-parent-$NEXT_MAJOR_VERSION' +tag-template: '$NEXT_MAJOR_VERSION' template: | ## Changes - $CHANGES \ No newline at end of file + $CHANGES diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mojo-parent-mojo-parent-70/.github/workflows/maven.yml new/mojo-parent-82/.github/workflows/maven.yml --- old/mojo-parent-mojo-parent-70/.github/workflows/maven.yml 2022-08-15 14:35:42.000000000 +0200 +++ new/mojo-parent-82/.github/workflows/maven.yml 2024-05-13 19:35:35.000000000 +0200 @@ -21,17 +21,22 @@ jobs: build: - + name: Build runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + jdk: [ 8, 21 ] + steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up JDK - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: - java-version: 8 + java-version: ${{ matrix.jdk }} distribution: 'temurin' cache: 'maven' @@ -39,34 +44,9 @@ run: mvn -e -B -V verify site deploy: + name: Deploy needs: build - - if: | - github.event_name == 'push' && - github.repository_owner == 'mojohaus' && - github.ref == 'refs/heads/master' && - !startsWith(github.event.head_commit.message , '[maven-release-plugin] prepare release') - - runs-on: ubuntu-latest - - steps: - - name: Checkout - uses: actions/checkout@v3 - - - name: Set up JDK - uses: actions/setup-java@v3 - with: - java-version: '8' - distribution: 'temurin' - cache: 'maven' - server-id: ossrh-snapshots - server-username: MAVEN_DEPLOY_UID - server-password: MAVEN_DEPLOY_PWD - - - name: Publish Snapshot - run: mvn -e -B -V deploy - env: - MAVEN_DEPLOY_UID: ${{ secrets.MAVEN_DEPLOY_UID }} - MAVEN_DEPLOY_PWD: ${{ secrets.MAVEN_DEPLOY_PWD }} + uses: mojohaus/.github/.github/workflows/maven-deploy.yml@master + secrets: inherit diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mojo-parent-mojo-parent-70/.github/workflows/release-drafter.yml new/mojo-parent-82/.github/workflows/release-drafter.yml --- old/mojo-parent-mojo-parent-70/.github/workflows/release-drafter.yml 2022-08-15 14:35:42.000000000 +0200 +++ new/mojo-parent-82/.github/workflows/release-drafter.yml 2024-05-13 19:35:35.000000000 +0200 @@ -4,10 +4,7 @@ branches: - master workflow_dispatch: + jobs: update_release_draft: - runs-on: ubuntu-latest - steps: - - uses: release-drafter/release-drafter@v5.20.0 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + uses: apache/maven-gh-actions-shared/.github/workflows/release-drafter.yml@v4 \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mojo-parent-mojo-parent-70/.gitignore new/mojo-parent-82/.gitignore --- old/mojo-parent-mojo-parent-70/.gitignore 2022-08-15 14:35:42.000000000 +0200 +++ new/mojo-parent-82/.gitignore 2024-05-13 19:35:35.000000000 +0200 @@ -265,5 +265,5 @@ ### Takari Maven Wrapper ### /mvnw.bat /mvnw -/.mvn/ +.mvn/wrapper diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mojo-parent-mojo-parent-70/README.md new/mojo-parent-82/README.md --- old/mojo-parent-mojo-parent-70/README.md 2022-08-15 14:35:42.000000000 +0200 +++ new/mojo-parent-82/README.md 2024-05-13 19:35:35.000000000 +0200 @@ -1,7 +1,7 @@ # MojoHaus Parent This is the parent pom for all [MojoHaus](https://www.mojohaus.org) Maven plugins and components. - + [](https://search.maven.org/artifact/org.codehaus.mojo/mojo-parent) [](https://github.com/mojohaus/mojo-parent/actions/workflows/maven.yml) @@ -16,3 +16,4 @@ cd target/checkout mvn verify site site:stage scm-publish:publish-scm ``` + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mojo-parent-mojo-parent-70/pom.xml new/mojo-parent-82/pom.xml --- old/mojo-parent-mojo-parent-70/pom.xml 2022-08-15 14:35:42.000000000 +0200 +++ new/mojo-parent-82/pom.xml 2024-05-13 19:35:35.000000000 +0200 @@ -1,5 +1,4 @@ <?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 @@ -18,13 +17,12 @@ 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> <groupId>org.codehaus.mojo</groupId> <artifactId>mojo-parent</artifactId> - <version>70</version> + <version>82</version> <packaging>pom</packaging> <name>MojoHaus Parent</name> @@ -120,6 +118,11 @@ <organization>MojoHaus</organization> <organizationUrl>https://github.com/mojohaus</organizationUrl> </developer> + <developer> + <id>slachiewicz</id> + <name>Sylwester Lachiewicz</name> + <url>https://github.com/slachiewicz</url> + </developer> </developers> <mailingLists> @@ -137,29 +140,13 @@ <post>mailto:us...@maven.apache.org</post> <archive>https://lists.apache.org/list.html?us...@maven.apache.org</archive> </mailingList> - <mailingList> - <name>Former (pre-2015-06) Development List</name> - <archive>https://markmail.org/list/org.codehaus.mojo.dev</archive> - </mailingList> - <mailingList> - <name>Former (pre-2015-06) User List</name> - <archive>https://markmail.org/list/org.codehaus.mojo.user</archive> - </mailingList> - <mailingList> - <name>Former (pre-2015-06) Commits List</name> - <archive>https://markmail.org/list/org.codehaus.mojo.scm</archive> - </mailingList> - <mailingList> - <name>Former (pre-2015-06) Announcements List</name> - <archive>https://markmail.org/list/org.codehaus.mojo.announce</archive> - </mailingList> </mailingLists> <scm> <connection>scm:git:https://github.com/mojohaus/mojo-parent.git</connection> <developerConnection>scm:git:https://github.com/mojohaus/mojo-parent.git</developerConnection> + <tag>82</tag> <url>https://github.com/mojohaus/mojo-parent/tree/${project.scm.tag}</url> - <tag>mojo-parent-70</tag> </scm> <issueManagement> <system>GitHub</system> @@ -169,6 +156,7 @@ <system>GitHub</system> <url>https://github.com/mojohaus/${project.artifactId}/actions</url> </ciManagement> + <distributionManagement> <repository> <id>ossrh-staging</id> @@ -186,83 +174,83 @@ <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> - <mojo.javadoc.mavenVersion>${project.prerequisites.maven}</mojo.javadoc.mavenVersion> - <mojo.java.target>1.8</mojo.java.target> + <mojo.java.target>8</mojo.java.target> <maven.compiler.source>${mojo.java.target}</maven.compiler.source> <maven.compiler.target>${mojo.java.target}</maven.compiler.target> + + <minimalJavaBuildVersion>${mojo.java.target}</minimalJavaBuildVersion> + <minimalMavenBuildVersion>3.6.3</minimalMavenBuildVersion> + <mavenVersion>${minimalMavenBuildVersion}</mavenVersion> + <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <!-- NOTE: We deliberately do not set maven.test.redirectTestOutputToFile here to workaround MNG-1992 --> <surefire.redirectTestOutputToFile>true</surefire.redirectTestOutputToFile> <!-- this property makes sure NetBeans 6.8+ picks up some formatting rules from checkstyle --> <netbeans.checkstyle.format>true</netbeans.checkstyle.format> - <localCheckout>true</localCheckout> - <animal-sniffer-maven-plugin.version>1.21</animal-sniffer-maven-plugin.version> - <flatten-maven-plugin.version>1.2.7</flatten-maven-plugin.version> + <animal-sniffer-maven-plugin.version>1.23</animal-sniffer-maven-plugin.version> + <build-helper-maven-plugin.version>3.5.0</build-helper-maven-plugin.version> + <flatten-maven-plugin.version>1.6.0</flatten-maven-plugin.version> <l10n-maven-plugin.version>1.0.0</l10n-maven-plugin.version> - <license-maven-plugin.version>1.9</license-maven-plugin.version> + <license-maven-plugin.version>2.4.0</license-maven-plugin.version> <maven-antrun-plugin.version>3.1.0</maven-antrun-plugin.version> - <maven-assembly-plugin.version>3.4.2</maven-assembly-plugin.version> + <maven-assembly-plugin.version>3.7.1</maven-assembly-plugin.version> <maven-changes-plugin.version>2.11</maven-changes-plugin.version> - <maven-checkstyle-plugin.version>3.1.2</maven-checkstyle-plugin.version> - <maven-clean-plugin.version>3.2.0</maven-clean-plugin.version> - <maven-compiler-plugin.version>3.10.1</maven-compiler-plugin.version> - <maven-dependency-plugin.version>3.3.0</maven-dependency-plugin.version> - <maven-deploy-plugin.version>2.8.2</maven-deploy-plugin.version> - <maven-ear-plugin.version>3.2.0</maven-ear-plugin.version> - <maven-enforcer-plugin.version>3.1.0</maven-enforcer-plugin.version> - <maven-failsafe-plugin.version>3.0.0-M7</maven-failsafe-plugin.version> + <maven-checkstyle-plugin.version>3.3.1</maven-checkstyle-plugin.version> + <maven-clean-plugin.version>3.3.2</maven-clean-plugin.version> + <maven-compiler-plugin.version>3.13.0</maven-compiler-plugin.version> + <maven-dependency-plugin.version>3.6.1</maven-dependency-plugin.version> + <maven-deploy-plugin.version>3.1.2</maven-deploy-plugin.version> + <maven-ear-plugin.version>3.3.0</maven-ear-plugin.version> + <maven-enforcer-plugin.version>3.4.1</maven-enforcer-plugin.version> + <maven-failsafe-plugin.version>3.2.5</maven-failsafe-plugin.version> <maven-fluido-skin.version>1.11.1</maven-fluido-skin.version> - <maven-gpg-plugin.version>3.0.1</maven-gpg-plugin.version> - <maven-help-plugin.version>3.2.0</maven-help-plugin.version> - <maven-install-plugin.version>3.0.1</maven-install-plugin.version> - <maven-invoker-plugin.version>3.3.0</maven-invoker-plugin.version> - <maven-jar-plugin.version>3.2.2</maven-jar-plugin.version> - <maven-javadoc-plugin.version>3.4.1</maven-javadoc-plugin.version> - <maven-jxr-plugin.version>3.2.0</maven-jxr-plugin.version> - <maven-plugin-plugin.version>3.6.4</maven-plugin-plugin.version> - <maven-project-info-reports-plugin.version>3.4.1</maven-project-info-reports-plugin.version> - <maven-pmd-plugin.version>3.17.0</maven-pmd-plugin.version> - <maven-release-plugin.version>3.0.0-M6</maven-release-plugin.version> - <maven-resources-plugin.version>3.3.0</maven-resources-plugin.version> - <maven-scm-publish-plugin.version>3.1.0</maven-scm-publish-plugin.version> + <maven-gpg-plugin.version>3.2.4</maven-gpg-plugin.version> + <maven-help-plugin.version>3.4.0</maven-help-plugin.version> + <maven-install-plugin.version>3.1.2</maven-install-plugin.version> + <maven-invoker-plugin.version>3.6.1</maven-invoker-plugin.version> + <maven-jar-plugin.version>3.4.1</maven-jar-plugin.version> + <maven-javadoc-plugin.version>3.6.3</maven-javadoc-plugin.version> + <maven-jxr-plugin.version>3.3.2</maven-jxr-plugin.version> + <maven-plugin-plugin.version>3.13.0</maven-plugin-plugin.version> + <maven-project-info-reports-plugin.version>3.5.0</maven-project-info-reports-plugin.version> + <maven-pmd-plugin.version>3.19.0</maven-pmd-plugin.version> + <maven-release-plugin.version>3.0.1</maven-release-plugin.version> + <maven-resources-plugin.version>3.3.1</maven-resources-plugin.version> + <maven-scm-publish-plugin.version>3.2.1</maven-scm-publish-plugin.version> + <maven-shade-plugin.version>3.5.3</maven-shade-plugin.version> <maven-site-plugin.version>3.12.1</maven-site-plugin.version> - <maven-source-plugin.version>3.2.1</maven-source-plugin.version> - <maven-surefire-plugin.version>3.0.0-M7</maven-surefire-plugin.version> - <maven-surefire-report-plugin.version>3.0.0-M7</maven-surefire-report-plugin.version> - <maven-war-plugin.version>3.3.2</maven-war-plugin.version> - <mrm-maven-plugin.version>1.4.1</mrm-maven-plugin.version> - <modello-maven-plugin.version>2.0.0</modello-maven-plugin.version> - <plexus-component-metadata.version>2.1.1</plexus-component-metadata.version> + <maven-source-plugin.version>3.3.1</maven-source-plugin.version> + <maven-surefire-plugin.version>3.2.5</maven-surefire-plugin.version> + <maven-surefire-report-plugin.version>3.2.5</maven-surefire-report-plugin.version> + <maven-war-plugin.version>3.4.0</maven-war-plugin.version> + <maven-wrapper-plugin.version>3.3.1</maven-wrapper-plugin.version> + + <mrm-maven-plugin.version>1.6.0</mrm-maven-plugin.version> + <modello-maven-plugin.version>2.4.0</modello-maven-plugin.version> + <plexus-component-metadata.version>2.2.0</plexus-component-metadata.version> <taglist-maven-plugin.version>3.0.0</taglist-maven-plugin.version> - <versions-maven-plugin.version>2.11.0</versions-maven-plugin.version> - <project.build.outputTimestamp>2022-08-15T12:35:38Z</project.build.outputTimestamp> - <scmpublish.content>${project.reporting.outputDirectory}</scmpublish.content><!-- mono-module doesn't require site:stage for scm-publish --> - <junit5.version>5.9.0</junit5.version> - <checkstyle.version>9.3</checkstyle.version><!-- 10.x requires Java 11 --> - </properties> + <versions-maven-plugin.version>2.16.2</versions-maven-plugin.version> + <sisu-maven-plugin.version>0.9.0.M2</sisu-maven-plugin.version> + <spotless-maven-plugin.version>2.43.0</spotless-maven-plugin.version> + <project.build.outputTimestamp>2024-05-13T17:35:32Z</project.build.outputTimestamp> + <!-- mono-module doesn't require site:stage for scm-publish --> + <scmpublish.content>${project.reporting.outputDirectory}</scmpublish.content> + <junit5.version>5.10.2</junit5.version> + <!-- 10.x requires Java 11 --> + <checkstyle.version>9.3</checkstyle.version> + <!-- by default use simple configuration for checkstyle rules to use with spotless --> + <checkstyle.config.location>config/maven_checks_nocodestyle.xml</checkstyle.config.location> - <repositories> - <repository> - <id>ossrh-snapshots</id> - <layout>default</layout> - <name>ossrh-snapshots</name> - <releases> - <enabled>false</enabled> - </releases> - <snapshots> - <checksumPolicy>fail</checksumPolicy> - <enabled>true</enabled> - </snapshots> - <url>https://oss.sonatype.org/content/repositories/snapshots</url> - </repository> - </repositories> + <invoker.streamLogsOnFailures>true</invoker.streamLogsOnFailures> + </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.apache.maven</groupId> <artifactId>maven-plugin-api</artifactId> - <version>3.2.5</version><!-- Minimum required Maven Version --> + <!-- Minimum required Maven Version --> + <version>${mavenVersion}</version> </dependency> <dependency> <groupId>junit</groupId> @@ -282,7 +270,7 @@ <artifactId>maven-plugin-annotations</artifactId> <!--must be same version of m-plugin-p --> <version>${maven-plugin-plugin.version}</version> - </dependency> + </dependency> </dependencies> </dependencyManagement> @@ -312,28 +300,20 @@ <testSourceDirectory>src/test/java</testSourceDirectory> </testSourceDirectories> <includeTestSourceDirectory>true</includeTestSourceDirectory> - <configLocation>config/maven_checks.xml</configLocation> + <configLocation>${checkstyle.config.location}</configLocation> <!-- by default don't check headers --> <headerLocation>mojohaus/config/checkstyle/empty-header.txt</headerLocation> </configuration> - <executions> - <execution> - <phase>validate</phase> - <goals> - <goal>check</goal> - </goals> - </execution> - </executions> <dependencies> <dependency> <groupId>org.apache.maven.shared</groupId> <artifactId>maven-shared-resources</artifactId> - <version>4</version> + <version>5</version> </dependency> <dependency> <groupId>org.codehaus.mojo</groupId> <artifactId>mojo-parent</artifactId> - <version>70</version> + <version>82</version> <classifier>config</classifier> </dependency> <dependency> @@ -342,6 +322,14 @@ <version>${checkstyle.version}</version> </dependency> </dependencies> + <executions> + <execution> + <goals> + <goal>check</goal> + </goals> + <phase>process-sources</phase> + </execution> + </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> @@ -388,7 +376,7 @@ <artifactId>maven-invoker-plugin</artifactId> <version>${maven-invoker-plugin.version}</version> <configuration> - <streamLogsOnFailures>true</streamLogsOnFailures> + <streamLogsOnFailures>${invoker.streamLogsOnFailures}</streamLogsOnFailures> </configuration> </plugin> <plugin> @@ -410,6 +398,10 @@ <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>${maven-javadoc-plugin.version}</version> + <configuration> + <quiet>true</quiet> + <locale>en</locale> + </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> @@ -431,6 +423,11 @@ </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-plugin-report-plugin</artifactId> + <version>${maven-plugin-plugin.version}</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-project-info-reports-plugin</artifactId> <version>${maven-project-info-reports-plugin.version}</version> </plugin> @@ -443,6 +440,7 @@ <goals>deploy</goals> <arguments>-Pmojo-release</arguments> <autoVersionSubmodules>true</autoVersionSubmodules> + <tagNameFormat>@{project.version}</tagNameFormat> </configuration> </plugin> <plugin> @@ -461,19 +459,26 @@ <executions> <execution> <id>scm-publish</id> - <phase>site-deploy</phase><!-- deploy site with maven-scm-publish-plugin --> <goals> <goal>publish-scm</goal> </goals> + <!-- deploy site with maven-scm-publish-plugin --> + <phase>site-deploy</phase> </execution> - </executions> + </executions> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-shade-plugin</artifactId> + <version>${maven-shade-plugin.version}</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-site-plugin</artifactId> <version>${maven-site-plugin.version}</version> <configuration> - <skipDeploy>true</skipDeploy><!-- don't deploy site with maven-site-plugin --> + <!-- don't deploy site with maven-site-plugin --> + <skipDeploy>true</skipDeploy> </configuration> </plugin> <plugin> @@ -499,6 +504,12 @@ <artifactId>maven-surefire-report-plugin</artifactId> <version>${maven-surefire-report-plugin.version}</version> </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-wrapper-plugin</artifactId> + <version>${maven-wrapper-plugin.version}</version> + </plugin> + <!-- Codehaus plugins in alphabetical order --> <plugin> <groupId>org.codehaus.mojo</groupId> @@ -507,6 +518,11 @@ </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <version>${build-helper-maven-plugin.version}</version> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> <artifactId>flatten-maven-plugin</artifactId> <version>${flatten-maven-plugin.version}</version> </plugin> @@ -545,6 +561,64 @@ <artifactId>versions-maven-plugin</artifactId> <version>${versions-maven-plugin.version}</version> </plugin> + <plugin> + <groupId>org.eclipse.sisu</groupId> + <artifactId>sisu-maven-plugin</artifactId> + <version>${sisu-maven-plugin.version}</version> + <executions> + <execution> + <id>generate-index</id> + <goals> + <goal>main-index</goal> + <goal>test-index</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>com.diffplug.spotless</groupId> + <artifactId>spotless-maven-plugin</artifactId> + <version>${spotless-maven-plugin.version}</version> + <configuration> + <java> + <!-- orders of used formatters are important --> + <!-- eg. palantir override importOrder, so should be first --> + <palantirJavaFormat /> + <removeUnusedImports /> + <importOrder> + <order>javax,java,,\#</order> + </importOrder> + </java> + <pom> + <sortPom> + <expandEmptyElements>false</expandEmptyElements> + <!-- https://issues.apache.org/jira/browse/MRELEASE-1111 --> + <spaceBeforeCloseEmptyElement>true</spaceBeforeCloseEmptyElement> + </sortPom> + </pom> + <markdown> + <includes> + <include>**/*.md</include> + </includes> + <excludes> + <excludes>target/**</excludes> + </excludes> + <flexmark /> + </markdown> + <upToDateChecking> + <enabled>true</enabled> + </upToDateChecking> + </configuration> + <executions> + <execution> + <id>spotless-check</id> + <goals> + <goal>check</goal> + </goals> + <phase>process-sources</phase> + </execution> + </executions> + </plugin> </plugins> </pluginManagement> @@ -555,10 +629,10 @@ <executions> <execution> <id>mojo-enforcer-rules</id> - <phase>validate</phase> <goals> <goal>enforce</goal> </goals> + <phase>validate</phase> <configuration> <rules> <bannedDependencies> @@ -583,18 +657,19 @@ <banRelease>true</banRelease> </requirePluginVersions> <requireMavenVersion> - <version>3.2.5</version> - <message>You need at least Maven 3.2.5 to build MojoHaus projects.</message> + <version>${minimalMavenBuildVersion}</version> + <message>You need at least Maven ${minimalMavenBuildVersion} to build MojoHaus projects.</message> </requireMavenVersion> + <requireJavaVersion> + <version>${minimalJavaBuildVersion}</version> + </requireJavaVersion> <requireProperty> <property>project.scm.connection</property> <!-- because Maven adds the artifactId to the SCM-Url automatically for modules in a multimodule project, we need to allow stuff after .git. --> <regex>scm:git:https://github.com/.*\.git.*</regex> - <regexMessage> - https (scm:git:https://github.com/.*\.git) is the preferred protocol for project.scm.connection, current value: ${project.scm.connection} - </regexMessage> + <regexMessage>https (scm:git:https://github.com/.*\.git) is the preferred protocol for project.scm.connection, current value: ${project.scm.connection}</regexMessage> </requireProperty> <requireProperty> <property>project.scm.url</property> @@ -602,9 +677,7 @@ we need to allow stuff after .git. --> <regex>https://github.com/.*</regex> - <regexMessage> - Use https://github.com/.* as project.scm.url, especially using the prefix scm:git here will lead to unbrowseable links during site generation, current value: ${project.scm.url} - </regexMessage> + <regexMessage>Use https://github.com/.* as project.scm.url, especially using the prefix scm:git here will lead to unbrowseable links during site generation, current value: ${project.scm.url}</regexMessage> </requireProperty> </rules> </configuration> @@ -612,6 +685,19 @@ </executions> </plugin> <plugin> + <groupId>com.diffplug.spotless</groupId> + <artifactId>spotless-maven-plugin</artifactId> + <executions> + <execution> + <id>spotless-check</id> + <goals> + <goal>check</goal> + </goals> + <phase>validate</phase> + </execution> + </executions> + </plugin> + <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-site-plugin</artifactId> <inherited>false</inherited> @@ -627,18 +713,19 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> - <inherited>false</inherited> - <configuration> - <descriptors> - <descriptor>config-assembly.xml</descriptor> - </descriptors> - </configuration> <executions> <execution> - <phase>package</phase> + <id>assembly-configuration</id> <goals> <goal>single</goal> </goals> + <phase>package</phase> + <inherited>false</inherited> + <configuration> + <descriptors> + <descriptor>config-assembly.xml</descriptor> + </descriptors> + </configuration> </execution> </executions> </plugin> @@ -647,7 +734,32 @@ <profiles> <profile> + <id>jdk8</id> + <activation> + <jdk>[1.8,11)</jdk> + </activation> + <properties> + <!-- last version working with java 8 --> + <spotless-maven-plugin.version>2.30.0</spotless-maven-plugin.version> + </properties> + </profile> + <profile> + <id>java11+</id> + <activation> + <jdk>[11,)</jdk> + </activation> + <properties> + <maven.compiler.release>${mojo.java.target}</maven.compiler.release> + </properties> + </profile> + + <profile> <id>mojo-release</id> + <properties> + <!-- due to m-deploy-p 3.x we need use Maven 3.9.x at least --> + <!-- https://issues.apache.org/jira/browse/MNG-7055 --> + <minimalMavenBuildVersion>3.9.0</minimalMavenBuildVersion> + </properties> <build> <plugins> <plugin> @@ -657,16 +769,16 @@ <dependency> <groupId>org.apache.apache.resources</groupId> <artifactId>apache-source-release-assembly-descriptor</artifactId> - <version>1.0.6</version> + <version>1.5</version> </dependency> </dependencies> <executions> <execution> <id>attach-source-release-distro</id> - <phase>package</phase> <goals> <goal>single</goal> </goals> + <phase>package</phase> <configuration> <runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot> <descriptorRefs> @@ -679,9 +791,6 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-deploy-plugin</artifactId> - <configuration> - <updateReleaseInfo>true</updateReleaseInfo> - </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> @@ -710,44 +819,16 @@ </execution> </executions> </plugin> - <!-- calculate checksums of source release for Apache dist area --> - <plugin> - <groupId>net.nicoulaj.maven.plugins</groupId> - <artifactId>checksum-maven-plugin</artifactId> - <version>1.11</version> - <executions> - <execution> - <id>source-release-checksum</id> - <goals> - <goal>artifacts</goal> - </goals> - <!-- execute prior to maven-gpg-plugin:sign due to https://github.com/nicoulaj/checksum-maven-plugin/issues/112 --> - <phase>post-integration-test</phase> - <configuration> - <algorithms> - <algorithm>SHA-512</algorithm> - </algorithms> - <!-- https://maven.apache.org/apache-resource-bundles/#source-release-assembly-descriptor --> - <includeClassifiers>source-release</includeClassifiers> - <excludeMainArtifact>true</excludeMainArtifact> - <csvSummary>false</csvSummary> - <!-- attach SHA-512 checksum as well to upload to Maven Staging Repo, - as this eases uploading from stage to dist and doesn't do harm in Maven Central --> - <attachChecksums>true</attachChecksums> - </configuration> - </execution> - </executions> - </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-gpg-plugin</artifactId> <executions> <execution> <id>sign-artifacts</id> - <phase>verify</phase> <goals> <goal>sign</goal> </goals> + <phase>verify</phase> </execution> </executions> </plugin> @@ -767,57 +848,19 @@ <!-- Apache plugins in alphabetical order --> <plugin> <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-checkstyle-plugin</artifactId> - <version>${maven-checkstyle-plugin.version}</version> - <reportSets> - <reportSet> - <reports> - <report>checkstyle</report> - </reports> - </reportSet> - </reportSets> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>${maven-javadoc-plugin.version}</version> - <configuration> - <quiet>true</quiet> - <links> - <link>https://junit.org/junit4/javadoc/latest/</link> - </links> - </configuration> <reportSets> <reportSet> <reports> <report>javadoc-no-fork</report> - <report>test-javadoc-no-fork</report> </reports> </reportSet> </reportSets> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-jxr-plugin</artifactId> - <version>${maven-jxr-plugin.version}</version> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-plugin-plugin</artifactId> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-pmd-plugin</artifactId> - <version>${maven-pmd-plugin.version}</version> - <configuration> - <targetJdk>${mojo.java.target}</targetJdk> - <excludeRoots> - <excludeRoot>${project.build.directory}/generated-sources/antlr</excludeRoot> - <excludeRoot>${project.build.directory}/generated-sources/javacc</excludeRoot> - <excludeRoot>${project.build.directory}/generated-sources/modello</excludeRoot> - <excludeRoot>${project.build.directory}/generated-sources/plugin</excludeRoot> - </excludeRoots> - </configuration> + <artifactId>maven-plugin-report-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> @@ -843,27 +886,6 @@ </reportSet> </reportSets> </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-surefire-report-plugin</artifactId> - <version>${maven-surefire-report-plugin.version}</version> - <configuration> - <alwaysGenerateSurefireReport>false</alwaysGenerateSurefireReport> - </configuration> - <reportSets> - <reportSet> - <reports> - <report>report-only</report> - </reports> - </reportSet> - </reportSets> - </plugin> - <!-- Codehaus plugins in alphabetical order --> - <plugin> - <groupId>org.codehaus.mojo</groupId> - <artifactId>taglist-maven-plugin</artifactId> - <version>${taglist-maven-plugin.version}</version> - </plugin> </plugins> </reporting> </profile> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mojo-parent-mojo-parent-70/src/site/markdown/index.md.vm new/mojo-parent-82/src/site/markdown/index.md.vm --- old/mojo-parent-mojo-parent-70/src/site/markdown/index.md.vm 2022-08-15 14:35:42.000000000 +0200 +++ new/mojo-parent-82/src/site/markdown/index.md.vm 2024-05-13 19:35:35.000000000 +0200 @@ -13,7 +13,7 @@ * for general information about using a parent pom take a look at http://maven.apache.org/guides/introduction/introduction-to-the-pom.html. * it boils down to define a parent element in your own POM: -``` +```xml <?xml version="1.0" encoding="UTF-8"?> <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"> @@ -30,6 +30,58 @@ </project> ``` +Spotless - automatic code formatting +------------------------------------ + +`MojoHaus` Parent POM contains configuration for [spotless-maven-plugin](https://github.com/diffplug/spotless/tree/main/plugin-maven) +with options: + + - [palantir](https://github.com/palantir/palantir-java-format) code formatter + - imports order as: + - javax + - java + - other imports + - static import + +`spotless` will be activated in your project per default, if you don't want to use it + +```xml +<properties> + <spotless.check.skip>true</spotless.check.skip> +</properties> + +``` + +To fix code, simply run: +``` +mvn spotless:apply +``` + +Checkstyle +---------- + +You can use `checkstyle` in order to verify code on each build. + +Checkstyle can be enabled by adding to build/plugins`: + +```xml +<plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> +</plugin> +``` + +Big code reformat +----------------- + +After applying bigger reformatting it is recommended to add or update a `.git-blame-ignore-revs` file +in the root of the repository containing a line with the SHA1 of the formatting commit to ignore those changes +when using `git blame` (or equivalent concepts). + +This is automatically considered by [GitHub](https://docs.github.com/en/repositories/working-with-files/using-files/viewing-a-file#bypassing-git-blame-ignore-revs-in-the-blame-view) +and can optionally be considered with [local `git blame`](https://git-scm.com/docs/git-blame#Documentation/git-blame.txt---ignore-revs-fileltfilegt) + + Latest releases ---------------