Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 7 additions & 16 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,46 +7,37 @@ on:

env:
ORG_GRADLE_PROJECT_version: ${{ github.sha }}

jobs:

build:
name: Build
runs-on: ubuntu-latest
strategy:
matrix:
java-version: [ 8, 11, 17, 21, 23 ]
java-version: [ 8, 11, 17, 21, 25 ]
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Cache
uses: actions/cache@v4
with:
path: |
~/.gradle/wrapper
~/.gradle/caches
key: gradle-${{ runner.os }}-${{ hashFiles('**/*.gradle.*') }}
restore-keys: |
gradle-${{ runner.os }}
gradle-
- name: Set up JDK ${{ matrix.java-version }}
- name: Set up JDK
uses: actions/setup-java@v5
with:
java-version: ${{ matrix.java-version }}
java-version-file: .tool-versions
distribution: temurin
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v5
- name: Prepare
run: ./gradlew clean dependencies
- name: Build
run: ./gradlew assemble testClasses
- name: Test
run: ./gradlew test
run: ./gradlew test -PtestTargetJavaVersion=${{ matrix.java-version }}
- name: Publish Test Report
uses: scacap/action-surefire-report@v1
if: failure()
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
report_paths: '**/build/test-results/test/TEST-*.xml'
check_name: Test Failures (${{ matrix.java-version }})
check_name: Test Failures (Java ${{ matrix.java-version }})

release:
name: Release Check
Expand Down
32 changes: 8 additions & 24 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,21 +16,13 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Cache
uses: actions/cache@v4
with:
path: |
~/.gradle/wrapper
~/.gradle/caches
key: gradle-${{ runner.os }}-${{ hashFiles('**/*.gradle.*') }}
restore-keys: |
gradle-${{ runner.os }}
gradle-
- name: Set up JDK 21
- name: Setup JDK
uses: actions/setup-java@v5
with:
java-version: 21
java-version-file: .tool-versions
distribution: temurin
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v5
- name: Prepare
run: ./gradlew clean dependencies
- name: Assemble Artefacts
Expand All @@ -50,21 +42,13 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Cache
uses: actions/cache@v4
with:
path: |
~/.gradle/wrapper
~/.gradle/caches
key: gradle-${{ runner.os }}-${{ hashFiles('**/*.gradle.*') }}
restore-keys: |
gradle-${{ runner.os }}
gradle-
- name: Set up JDK 21
- name: Setup JDK
uses: actions/setup-java@v5
with:
java-version: 21
java-version-file: .tool-versions
distribution: temurin
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v5
- name: Prepare
run: ./gradlew clean dependencies
- name: Generate Documentation
Expand Down
2 changes: 1 addition & 1 deletion .sdkmanrc
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# Enable auto-env through the sdkman_auto_env config
# Add key=value pairs of SDKs to use below
java=23.0.2-tem
java=25.0.1-tem
1 change: 1 addition & 0 deletions .tool-versions
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
java 25.0.1
41 changes: 20 additions & 21 deletions build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import io.github.gradlenexus.publishplugin.NexusRepository
import org.gradle.api.JavaVersion.VERSION_1_8
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
import org.gradle.kotlin.dsl.*

plugins {
kotlin("jvm") version "2.1.21"
Expand All @@ -20,31 +19,36 @@ repositories {
}

dependencies {
testImplementation(name = "atrium-cc-en_GB-robstoll", group = "ch.tutteli.atrium", version = "0.15.0")
testImplementation(name = "junit-jupiter-api", group = "org.junit.jupiter", version = "5.7.2")
testImplementation(name = "junit-jupiter-params", group = "org.junit.jupiter", version = "5.7.2")
testImplementation("ch.tutteli.atrium:atrium-cc-en_GB-robstoll:0.15.0")
testImplementation("org.junit.jupiter:junit-jupiter-api:5.7.2")
testImplementation("org.junit.jupiter:junit-jupiter-params:5.7.2")

constraints {
testImplementation(kotlin("reflect", KotlinVersion.CURRENT.toString()))
}

testRuntimeOnly(name = "junit-platform-launcher", group = "org.junit.platform", version = "1.12.1")
testRuntimeOnly(name = "junit-jupiter-engine", group = "org.junit.jupiter", version = "5.7.2")
testRuntimeOnly("org.junit.platform:junit-platform-launcher:1.12.1")
testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:5.7.2")
}

tasks.withType<Test>().configureEach {
useJUnitPlatform()
reports.junitXml.required = true
}
val compilationTargetJavaVersion = JavaLanguageVersion.of(8)

java {
sourceCompatibility = VERSION_1_8
targetCompatibility = VERSION_1_8
toolchain {
languageVersion = compilationTargetJavaVersion
}
}

kotlin {
compilerOptions {
jvmTarget = JvmTarget.JVM_1_8
val testTargetJavaVersion = providers
.gradleProperty("testTargetJavaVersion")
.map(JavaLanguageVersion::of)
.orElse(compilationTargetJavaVersion)

tasks.withType<Test>().configureEach {
useJUnitPlatform()
reports.junitXml.required = true
javaLauncher = javaToolchains.launcherFor {
languageVersion = testTargetJavaVersion
}
}

Expand Down Expand Up @@ -78,11 +82,6 @@ val dokkaJar by tasks.registering(Jar::class) {
from(tasks.named("dokkaGeneratePublicationJavadoc"))
}

artifacts {
archives(sourcesJar)
archives(dokkaJar)
}

lateinit var publication: MavenPublication
lateinit var githubPackages: ArtifactRepository
lateinit var mavenCentral: NexusRepository
Expand Down
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.2.0-all.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
5 changes: 1 addition & 4 deletions gradlew
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/bin/sh

#
# Copyright © 2015-2021 the original authors.
# Copyright © 2015 the original authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -114,7 +114,6 @@ case "$( uname )" in #(
NONSTOP* ) nonstop=true ;;
esac

CLASSPATH="\\\"\\\""


# Determine the Java command to use to start the JVM.
Expand Down Expand Up @@ -172,7 +171,6 @@ fi
# For Cygwin or MSYS, switch paths to Windows format before running java
if "$cygwin" || "$msys" ; then
APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" )

JAVACMD=$( cygpath --unix "$JAVACMD" )

Expand Down Expand Up @@ -212,7 +210,6 @@ DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'

set -- \
"-Dorg.gradle.appname=$APP_BASE_NAME" \
-classpath "$CLASSPATH" \
-jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \
"$@"

Expand Down
3 changes: 1 addition & 2 deletions gradlew.bat
Original file line number Diff line number Diff line change
Expand Up @@ -70,11 +70,10 @@ goto fail
:execute
@rem Setup the command line

set CLASSPATH=


@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*

:end
@rem End local scope for the variables with windows NT shell
Expand Down
4 changes: 4 additions & 0 deletions settings.gradle.kts
Original file line number Diff line number Diff line change
@@ -1 +1,5 @@
plugins {
id("org.gradle.toolchains.foojay-resolver-convention").version("1.0.0")
}

rootProject.name = "string-notation"