FreeAndNil commented on code in PR #210: URL: https://github.com/apache/logging-log4net/pull/210#discussion_r2045319737
########## pom.xml: ########## @@ -39,157 +58,131 @@ <archive>https://mail-archives.apache.org/mod_mbox/logging-commits/</archive> </mailingList> </mailingLists> - <licenses> - <license> - <name>Apache License, Version 2.0</name> - <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url> - <distribution>repo</distribution> - </license> - </licenses> - <scm> - <connection>scm:git:https://github.com/apache/logging-log4net</connection> - <developerConnection>scm:git:https://github.com/apache/logging-log4net</developerConnection> - <url>https://github.com/apache/logging-log4net</url> - </scm> - <organization> - <name>Apache Software Foundation</name> - <url>https://www.apache.org</url> - </organization> + + <ciManagement> + <system>GitHub Actions</system> + <url>https://github.com/apache/logging-log4net/actions</url> + </ciManagement> + + <properties> + + <!-- project version --> + <revision>0.10.0-SNAPSHOT</revision> + + <!-- `project.build.outputTimestamp` is required to be present for reproducible builds. + We actually inherit one from the `org.apache:apache` through our parent `org.apache.logging:logging-parent`. + Though inheriting this property has two undesired consequences: + 1. `artifact:compare` dumps an `ERROR` log stating that this `property should not be inherited but defined` (apache/logging-parent#50) + 2. This value is employed in various places while creating the distribution + To mitigate these, we define a *dummy* value here and let the CI replace it during a release. + Hence, *DO NOT MANUALLY EDIT THIS VALUE*! --> + <project.build.outputTimestamp>2024-05-09T11:40:45Z</project.build.outputTimestamp> + + <!-- disable `maven-site-plugin`--> + <maven.site.skip>true</maven.site.skip> + <maven.site.deploy.skip>true</maven.site.deploy.skip> + <spotbugs.skip>true</spotbugs.skip> + </properties> + + <!-- `dependencyManagement` must only contain `log4j-tools` modules and nothing else! + Modules here must have a corresponding entry in `modules` block above! --> + <dependencyManagement> + <dependencies> + + <dependency> + <groupId>org.apache.logging.log4j</groupId> + <artifactId>log4j-changelog</artifactId> + <version>${project.version}</version> + </dependency> + + <dependency> + <groupId>org.apache.logging.log4j</groupId> + <artifactId>log4j-docgen</artifactId> + <version>${project.version}</version> + </dependency> + + <dependency> + <groupId>org.apache.logging.log4j</groupId> + <artifactId>log4j-docgen-asciidoctor-extension</artifactId> + <version>${project.version}</version> + </dependency> + + </dependencies> + </dependencyManagement> + <build> <plugins> + + <!-- Enable BOM flattening --> <plugin> - <groupId>org.apache.rat</groupId> - <artifactId>apache-rat-plugin</artifactId> - <version>0.11</version> + <groupId>org.codehaus.mojo</groupId> + <artifactId>flatten-maven-plugin</artifactId> + <version>${flatten-maven-plugin.version}</version> + <executions> + <execution> + <id>flatten-bom</id> + <goals> + <goal>flatten</goal> + </goals> + <phase>process-resources</phase> + <inherited>false</inherited> + </execution> + </executions> </plugin> + + <!-- *Temporarily* override the changelog entry file validation inherited from `logging-parent`. + + Inherited `validate-changelog` execution explicitly fixes the `log4j-changelog` namespace and schema location. + This makes it impossible to upgrade changelog entry file schemas to a newer version than the one expected by `logging-parent`. + + TODO: This will probably be fixed in `logging-parent` version `11.0.0` release. + Hence, from then on, this `xml-maven-plugin` override can be removed. --> <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-site-plugin</artifactId> - <version>3.4</version> - <configuration> - <templateFile>${basedir}/src/site/site.vm</templateFile> - </configuration> + <groupId>org.codehaus.mojo</groupId> + <artifactId>xml-maven-plugin</artifactId> + <executions> + <execution> + <id>validate-changelog</id> + <configuration combine.self="override"> + <validationSets> + <validationSet> + <dir>src/changelog</dir> + <includes> + <include>**/*.xml</include> + </includes> + <validating>true</validating> + </validationSet> + </validationSets> + </configuration> + </execution> + </executions> </plugin> - </plugins> - </build> - <reporting> - <plugins> + <plugin> Review Comment: I think spotless checks for the license headers, but I'm not sure. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@logging.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org