PragmaticKM Parent Changelog

pragmatickm-parent-1.5.1

Release Notes

pragmatickm-parent-1.5.0

Release Notes

  • Changed default Java version from 1.7 to 1.8
  • Reduced use of property substitutions in pom.xml. This is to help 3rd-party parsers that fail to perform full Maven-compatible substitutions.
  • Now setting build properties maven.compiler.source and maven.compiler.target.
  • Now setting build property javadoc.link.javamail in parent POM instead of on a per-project basis.
  • Now setting builds properties documented.javase.version and documented.javadoc.link.javase in parent POM, with the default Java version (currently 1.8). This allows books to not specify the Java version of the documented project when it is the default.
  • Renamed some build properties to better represent their usage:
    1. Consolidated build properties compiler.bootclasspath and javac.bootclasspath into a single property java.bootclasspath.
    2. javaVersion to javase.version
    3. javac.link.javaApi to javadoc.link.javase
    4. javac.link.javaApi.jdk* to javadoc.link.javase.*
    5. javac.link.javaeeApi.* to javadoc.link.javaee.*
    6. javac.link.javamailApi to javadoc.link.javamail
    7. java.bootclasspath to javase.bootclasspath
    8. javase.bootclasspath* to javase.bootclasspath.*
    9. documented.javaVersion to documented.javase.version
    10. documented.javac.link.javaApi to documented.javadoc.link.javase
  • Renamed profile bootclasspaths to javase.bootclasspath.
  • Added build properties for Java EE:
    1. javaee.version,default 6
    2. javadoc.link.javaee, default ${javadoc.link.javaee.6}
    3. documented.javaee.version, default 6
    4. documented.javadoc.link.javaee, default ${javadoc.link.javaee.6}
  • Added <source> configuration to maven-javadoc-plugin to build correctly in Java 11.
  • Simplified use of maven-gpg-plugin:
  • Now using --release instead of -bootclasspath when building with JDK >= 9.
  • Java updates:
    1. Java 13 is now end-of-life
    2. Java 14 is now current stable
    3. Java 15 is new beta
  • Changed default doclint from -Xdoclint:none to -Xdoclint:all,-missing.
  • Updated plugin versions.

pragmatickm-parent-1.4.0

Release Notes

  • To significantly reduce the size of Javadocs, using new AO Javadoc Resources project instead of data: URLs.

pragmatickm-parent-1.3.0

Release Notes

pragmatickm-parent-1.2.1

Release Notes

  • Changed Include-Resource to {maven-resources}, target/resources-filtered in order to not leak full build paths into META-INF/MANIFEST.MF

pragmatickm-parent-1.2.0

Release Notes

  • Updated version of AO OSS Parent.
  • New profile "POST-SNAPSHOT" that enables the use of post-release builds as dependencies.

    This profile is not active by default. Activate in ~/.m2/settings.xml to use post-release builds as dependencies:

    		<profile>
    			<id>POST-SNAPSHOT</id>
    			<activation>
    				<activeByDefault>true</activeByDefault>
    			</activation>
    			<properties>
    				<POST-SNAPSHOT>-POST-SNAPSHOT</POST-SNAPSHOT>
    			</properties>
    		</profile>

    This profile must not be active while performing a release. Deactivate with:

    mvn -Prelease,'!POST-SNAPSHOT' …

    Post-release builds happen after a release and before a new -SNAPSHOT is started. They are used to ensure that previous releases still compile against newer dependencies.

    Furthermore, post-release builds may contain the following changes without being promoted to the next -SNAPSHOT version:

    1. Updated parent POM
    2. Updated POM
    3. Updated Java version (without any source code changes)
    4. Updated dependency versions
    5. Updated javadocs
    6. Updated documentation
    7. Updated unit tests
    8. Deprecated methods and classes
    9. Renamed private fields and local variables
    10. Other changes to white-space or comments

    Post-release builds also allow NetBeans to correctly connect projects together for those who are actively developing multiple modules.

    Those who are only using the dependency can use the regular release to avoid the overhead of the daily check for updates.

pragmatickm-parent-1.1.0

Release Notes

pragmatickm-parent-1.0.2

Release Notes

  • License changed to LGPL v3.
  • Moving PragmaticKM to GitHub and Maven Central Repository.

pragmatickm-parent-1.0.1

Release Notes

  • Added --allow-script-in-comments for Javadoc in JDK 1.8.0_121+.
  • Updated dependencies.

pragmatickm-parent-1.0.0

Release Notes

  • New parent POM, separate from aggregator POMs, to allow the addition of modules without having to also release untouched modules within the same overall project.

    Previously, adding a module to the aggregator would increment its version, which would then propagate all the way down to update the parents of all modules. Since our projects are extremely modular, this forced releases where only the parent version was modified.

    We recommend a separation of parent and aggregator pom.xml for any multi-module Maven project where each module is released independently.