This is an automated email from the ASF dual-hosted git repository. elharo pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/maven-site.git
The following commit(s) were added to refs/heads/master by this push: new 4bb6066 docs: minor copy editing (#150) 4bb6066 is described below commit 4bb60665a2f9efcf7a42d8d02f8a34be16a8cbda Author: Elliotte Rusty Harold <elh...@users.noreply.github.com> AuthorDate: Sat Apr 4 17:33:43 2020 -0400 docs: minor copy editing (#150) * docs: minor copy editing @hboutemy * code review --- .../apt/guides/mini/guide-reproducible-builds.apt | 38 +++++++++++----------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/content/apt/guides/mini/guide-reproducible-builds.apt b/content/apt/guides/mini/guide-reproducible-builds.apt index 34948a2..8855abd 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, + 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 plugin 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 versions, 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 two 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. The maven-buildinfo-plugin proposes a 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 results on Windows and Unix>> because of different newlines. (carriage return linefeed on Windows, linefeed 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 the <<<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 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>>