From dc27cb86e5a24e1ec50b0a98b1c4f09086998db6 Mon Sep 17 00:00:00 2001 From: "Erik C. Thauvin" Date: Fri, 29 Sep 2023 16:18:50 -0700 Subject: [PATCH] Cleanup before new release --- .github_changelog_generator | 1 + CHANGELOG.md | 6 +++- README.md | 18 ++++++----- .../net/thauvin/erik/semver/Constants.java | 2 -- .../javax.annotation.processing.Processor | 32 ------------------- .../thauvin/erik/semver/VersionInfoTest.java | 2 +- 6 files changed, 17 insertions(+), 44 deletions(-) create mode 100644 .github_changelog_generator diff --git a/.github_changelog_generator b/.github_changelog_generator new file mode 100644 index 0000000..13dd68d --- /dev/null +++ b/.github_changelog_generator @@ -0,0 +1 @@ +future-release=1.2.1 diff --git a/CHANGELOG.md b/CHANGELOG.md index 41eb07d..bc6224f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,9 +1,13 @@ # Changelog -## [1.2.1](https://github.com/ethauvin/semver/tree/1.2.1) (2021-04-29) +## [1.2.1](https://github.com/ethauvin/semver/tree/1.2.1) (2023-09-29) [Full Changelog](https://github.com/ethauvin/semver/compare/1.2.0...1.2.1) +**Implemented enhancements:** + +- Move from Gradle to bld [\#7](https://github.com/ethauvin/semver/issues/7) + **Fixed bugs:** - NPE with Java 12 and Kotlin 1.3.30 [\#1](https://github.com/ethauvin/semver/issues/1) diff --git a/README.md b/README.md index c13ec3d..0469a21 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,11 @@ -# Semantic Version Annotation Processor +# Semantic Version Annotation Processor [![License (3-Clause BSD)](https://img.shields.io/badge/license-BSD%203--Clause-blue.svg?style=flat-square)](https://opensource.org/licenses/BSD-3-Clause) [![Java](https://img.shields.io/badge/java-17%2B-blue)](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html) -[![bld](https://img.shields.io/badge/1.7.1-FA9052?label=bld&labelColor=2392FF)](https://rife2.com/bld) +[![bld](https://img.shields.io/badge/1.7.2-FA9052?label=bld&labelColor=2392FF)](https://rife2.com/bld) [![release](https://img.shields.io/github/release/ethauvin/semver.svg)](https://github.com/ethauvin/semver/releases/latest) -[![Maven Central](https://maven-badges.herokuapp.com/maven-central/net.thauvin.erik/semver/badge.svg)](https://maven-badges.herokuapp.com/maven-central/net.thauvin.erik/semver) [![Nexus Snapshot](https://img.shields.io/nexus/s/net.thauvin.erik/semver?label=snapshot&server=https%3A%2F%2Foss.sonatype.org%2F)](https://oss.sonatype.org/content/repositories/snapshots/net/thauvin/erik/semver/) +[![Maven Central](https://img.shields.io/maven-central/v/net.thauvin.erik/semver.svg)](https://central.sonatype.com/artifact/net.thauvin.erik/semver) [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=ethauvin_semver&metric=alert_status)](https://sonarcloud.io/dashboard?id=ethauvin_semver) [![GitHub CI](https://github.com/ethauvin/semver/actions/workflows/gradle.yml/badge.svg)](https://github.com/ethauvin/semver/actions/workflows/gradle.yml) @@ -17,6 +17,7 @@ An [annotation processor](https://docs.oracle.com/javase/8/docs/api/javax/annota This processor was inspired by Cédric Beust's [version-processor](https://github.com/cbeust/version-processor) and works well in conjunction with the [__Semantic Version Plugin for Gradle__](https://github.com/ethauvin/semver-gradle). ## Table of Contents + - [Examples](#examples) - [Template](#template) - [Default Template](#default-template) @@ -33,7 +34,7 @@ This processor was inspired by Cédric Beust's [version-processor](https://githu ## Examples -* Using annotation elements: +- Using annotation elements: ```java import net.thauvin.erik.semver.Version; @@ -44,7 +45,7 @@ public class A { } ``` -* Or using a [properties](hhttps://github.com/ethauvin/semver/blob/master/examples/java/version.properties) file: +- Or using a [properties](hhttps://github.com/ethauvin/semver/blob/master/examples/java/version.properties) file: ```java import net.thauvin.erik.semver.Version; @@ -220,8 +221,8 @@ public class ExampleBuild extends Project { } } ``` -Please look at [ExamapleBuild](https://github.com/ethauvin/semver/blob/master/examples/java/bld/src/bld/java/com/example/ExampleBuild.java) in the [examples/java/bld](https://github.com/ethauvin/semver/tree/master/examples/java/bld) directory for a sample. +Please look at [ExampleBuild](https://github.com/ethauvin/semver/blob/master/examples/java/bld/src/bld/java/com/example/ExampleBuild.java) in the [examples/java/bld](https://github.com/ethauvin/semver/tree/master/examples/java/bld) directory for a sample. It also shows how to incorporate the generated code into the `source tree`, more information is also available [here](https://forum.uwyn.com/post/36). ## Gradle @@ -239,7 +240,7 @@ dependencies { compileOnly 'net.thauvin.erik:semver:1.2.1-SNAPSHOT' } -tasks.withType(JavaCompile) { +tasks.withType(JavaCompile).configureEach { options.compilerArgs += [ "-Asemver.project.dir=$projectDir" ] } ``` @@ -255,7 +256,7 @@ Please look at [build.gradle](https://github.com/ethauvin/semver/blob/master/exa In order to also incorporate the generated source code into the `source tree`, add the following to [build.gradle](https://github.com/ethauvin/semver/blob/master/examples/java/build.gradle): ```gradle -tasks.withType(JavaCompile) { +tasks.withType(JavaCompile).configureEach { options.generatedSourceOutputDirectory.set(file("${projectDir}/src/generated/java")) } ``` @@ -276,6 +277,7 @@ open class Main { // ... } ``` + The [Kotlin default template](https://github.com/ethauvin/semver/blob/master/src/main/resources/semver-kt.mustache) implements the same static fields and functions as the [Java template](#default-template). Please look at the [examples/kotlin](https://github.com/ethauvin/semver/tree/master/examples/kotlin) project for a [build.gradle.kts](https://github.com/ethauvin/semver/blob/master/examples/kotlin/build.gradle.kts) sample. diff --git a/src/main/java/net/thauvin/erik/semver/Constants.java b/src/main/java/net/thauvin/erik/semver/Constants.java index 8dbc3d5..a8bc374 100644 --- a/src/main/java/net/thauvin/erik/semver/Constants.java +++ b/src/main/java/net/thauvin/erik/semver/Constants.java @@ -137,13 +137,11 @@ public final class Constants { * The kotlin type. */ public static final String KOTLIN_TYPE = "kt"; - /** * The argument used to specify the project location. */ public static final String SEMVER_PROJECT_DIR_ARG = "semver.project.dir"; - /** * Disables the default constructor. */ diff --git a/src/main/resources/META-INF/services/javax.annotation.processing.Processor b/src/main/resources/META-INF/services/javax.annotation.processing.Processor index 5ae1016..44488e0 100644 --- a/src/main/resources/META-INF/services/javax.annotation.processing.Processor +++ b/src/main/resources/META-INF/services/javax.annotation.processing.Processor @@ -1,33 +1 @@ -# -# javax.annotation.processing.Processor -# -# Copyright (c) 2016-2023, Erik C. Thauvin (erik@thauvin.net) -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# -# Redistributions of source code must retain the above copyright notice, this -# list of conditions and the following disclaimer. -# -# Redistributions in binary form must reproduce the above copyright notice, -# this list of conditions and the following disclaimer in the documentation -# and/or other materials provided with the distribution. -# -# Neither the name of this project nor the names of its contributors may be -# used to endorse or promote products derived from this software without -# specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE -# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -# - net.thauvin.erik.semver.VersionProcessor diff --git a/src/test/java/net/thauvin/erik/semver/VersionInfoTest.java b/src/test/java/net/thauvin/erik/semver/VersionInfoTest.java index 0ebbbf5..2abb01a 100644 --- a/src/test/java/net/thauvin/erik/semver/VersionInfoTest.java +++ b/src/test/java/net/thauvin/erik/semver/VersionInfoTest.java @@ -34,7 +34,7 @@ package net.thauvin.erik.semver; import org.junit.jupiter.api.Test; -import java.util.Date; // NOPMD +import java.util.Date; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue;