This is an automated email from the ASF dual-hosted git repository. elharo pushed a commit to branch elharo-patch-2 in repository https://gitbox.apache.org/repos/asf/maven-site.git
commit d7290eaa0c0a8a818ce964ad25cfdb34b54b3035 Author: Elliotte Rusty Harold <elh...@users.noreply.github.com> AuthorDate: Sat Apr 4 11:05:17 2020 -0400 docs: minor copy editing @hboutemy --- .../apt/guides/mini/guide-reproducible-builds.apt | 36 +++++++++++----------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/content/apt/guides/mini/guide-reproducible-builds.apt b/content/apt/guides/mini/guide-reproducible-builds.apt index 34948a2..caff931 100644 --- a/content/apt/guides/mini/guide-reproducible-builds.apt +++ b/content/apt/guides/mini/guide-reproducible-builds.apt @@ -28,19 +28,19 @@ Configuring for Reproducible Builds -* What is Reproducible Builds? +* What are Reproducible Builds? {{{https://reproducible-builds.org/}Reproducible builds}} are a set of software development practices that create an independently-verifiable path from source to binary code: a build is <<reproducible>> if given the same source code, build environment and build instructions, any party can recreate <<bit-by-bit>> identical copies of all specified artifacts. -* How to configure my Maven build? +* How do I configure my Maven build? - There is no Maven version prerequisite, everything happens at plugins level: + There is no Maven version prerequisite. Everything happens at plugins level: - [[1]] upgrade your plugins to reproducible version, particularly <<<maven-jar-plugin>>>, <<<maven-source-plugin>>> and <<<maven-assembly-plugin>>> to version 3.2.0 minimum, + [[1]] Upgrade your plugins to reproducible version, particularly <<<maven-jar-plugin>>>, <<<maven-source-plugin>>> and <<<maven-assembly-plugin>>> to version 3.2.0 minimum. - [[2]] add <<<project.build.outputTimestamp>>> property with the timestamp value that will be used in zip/jar/tar archives: + [[2]] Add a <<<project.build.outputTimestamp>>> property to the project's pom.xml with the timestamp value that will be used in zip/jar/tar archives: +--------+ <properties> @@ -49,12 +49,12 @@ Configuring for Reproducible Builds +--------+ [] - You have the basis configured, the output should be reproducible now. + You have the basics configured. The output should be reproducible now. * How to test and fix my Maven build reproducibility? Using {{{https://github.com/apache/maven-studies/tree/maven-buildinfo-plugin}<<<maven-buildinfo-plugin>>>}}, - you can easily check that 2 builds give you the same output: + you can check that 2 builds give the same output: [[1]] build and deploy to a staging directory: <<<mvn clean deploy -e -DskipTests -DaltDeploymentRepository=local::default::file:../stage buildinfo:buildinfo>>> @@ -64,22 +64,22 @@ Configuring for Reproducible Builds If something is still not reproducible: - [[1]] use {{{https://diffoscope.org/}diffoscope}} to find the unstable output (maven-buildinfo-plugin propose you the command to launch), + [[1]] Use {{{https://diffoscope.org/}diffoscope}} to find the unstable output (maven-buildinfo-plugin propose you the command to launch), - [[2]] find the plugin that generated this output + [[2]] Find the plugin that generated this output. - [[3]] check if there is a reproducible version available: - if not, please open an issue to help plugin maintainers improving Reproducible Builds support at every plugin level. + [[3]] Check if a reproducible version of the plugin is available. + If not, please open an issue to help plugin maintainers improving Reproducible Builds support at every plugin level. [] <<Notice>>: Reproducible Builds for Maven: - * require to have <<no version ranges>> in dependencies, + * Require <<no version ranges>> in dependencies, - * generally give <<different result on Windows vs Unixes>> because of newline (CRLF on Windows, LF on Unixes), + * Generally give <<different result on Windows vs Unixes>> because of newline (CRLF on Windows, LF on Unixes), - * and generally depend on the <<major version of JDK>> used to compile (even with source/target defined, each major JDK version changes generated bytecode) + * Generally depend on the <<major version of the JDK>> used to compile. (Even with source/target defined, each major JDK version changes the generated bytecode.) [] @@ -92,13 +92,13 @@ Configuring for Reproducible Builds * FAQ - * Q. can <<<project.build.outputTimestamp>>> property be updated automatically at release time? + * Q. Can <<<project.build.outputTimestamp>>> property be updated automatically at release time? - A. yes, you'll need to upgrade maven-release-plugin to version 3.0.0-M1 minimum: see {{{https://issues.apache.org/jira/browse/MRELEASE-1029}MRELEASE-1029}} + A. Yes, you'll need to the maven-release-plugin version 3.0.0-M1 or later: see {{{https://issues.apache.org/jira/browse/MRELEASE-1029}MRELEASE-1029}} - * Q. which additional plugins need to be updated for Reproducible Builds? + * Q. Which additional plugins need to be updated for Reproducible Builds? - A. here is a simplified list: + A. Here is a simplified list: *----------------------------------------------------------------------------+-------+--------------+ | <<plugin>> | <<minimum version>> | <<comments>>