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
38 changes: 14 additions & 24 deletions .github/workflows/gradle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,56 +16,48 @@ jobs:
strategy:
matrix:
java-version:
- 17
- '17'
- '21'
os:
- ubuntu-latest
- windows-2019
- windows-latest
# in case one combination fails, we still want to see results from others
fail-fast: false
runs-on: ${{ matrix.os }}
timeout-minutes: 30
steps:
- uses: actions/checkout@v3

- name: Setup Gradle Dependencies Cache
uses: actions/cache@v3
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-caches-${{ hashFiles('**/*.gradle', '**/*.gradle.kts') }}

- name: Setup Gradle Wrapper Cache
uses: actions/cache@v3
with:
path: ~/.gradle/wrapper
key: ${{ runner.os }}-gradle-wrapper-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }}
- uses: actions/checkout@v6

- name: Set up JDK
uses: actions/setup-java@v3
uses: actions/setup-java@v5
with:
java-version: ${{ matrix.java-version }}
distribution: 'temurin'

- name: Set up Gradle
uses: gradle/actions/setup-gradle@v5

- name: Build with Gradle
run: |
./gradlew build

- name: Upload coverage to Codecov
uses: codecov/codecov-action@v2
uses: codecov/codecov-action@v6
if: ${{ matrix.java-version == '17' && matrix.os == 'ubuntu-latest' }}
with:
token: ${{secrets.CODECOV_TOKEN}}
files: ./build/reports/kover/report.xml

- name: Temporarily set snapshot version
if: ${{ github.event_name == 'push' && matrix.os == 'ubuntu-latest' }}
if: ${{ github.event_name == 'push' && matrix.java-version == '17' && matrix.os == 'ubuntu-latest' }}
uses: christian-draeger/write-properties@1.0.1
with:
path: './gradle.properties'
property: 'release_version'
value: 0-SNAPSHOT

- name: Publish snapshot to Maven Central
if: ${{ github.event_name == 'push' && matrix.os == 'ubuntu-latest' }}
if: ${{ github.event_name == 'push' && matrix.java-version == '17' && matrix.os == 'ubuntu-latest' }}
env:
ORG_GRADLE_PROJECT_signingKey: ${{secrets.ORG_GRADLE_PROJECT_SIGNINGKEY}}
ORG_GRADLE_PROJECT_signingKeyId: ${{secrets.ORG_GRADLE_PROJECT_SIGNINGKEYID}}
Expand All @@ -82,16 +74,14 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v6
with:
fetch-depth: 0

- name: Run static code analysis
uses: JetBrains/qodana-action@v2022.3.2
with:
linter: jetbrains/qodana-jvm
uses: JetBrains/qodana-action@v2025.2.2

- name: Upload static code analysis results
uses: github/codeql-action/upload-sarif@v2
uses: github/codeql-action/upload-sarif@v4
with:
sarif_file: ${{ runner.temp }}/qodana/results/qodana.sarif.json
21 changes: 6 additions & 15 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,26 +22,17 @@ jobs:
timeout-minutes: 30

steps:
- uses: actions/checkout@v3

- name: Setup Gradle Dependencies Cache
uses: actions/cache@v3
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-caches-${{ hashFiles('**/*.gradle', '**/*.gradle.kts') }}

- name: Setup Gradle Wrapper Cache
uses: actions/cache@v3
with:
path: ~/.gradle/wrapper
key: ${{ runner.os }}-gradle-wrapper-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }}
- uses: actions/checkout@v6

- name: Set up JDK
uses: actions/setup-java@v3
uses: actions/setup-java@v5
with:
java-version: 17
java-version: '17'
distribution: 'temurin'

- name: Set up Gradle
uses: gradle/actions/setup-gradle@v5

- name: Build with Gradle
run: |
./gradlew build
Expand Down
2 changes: 1 addition & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,6 @@ nexusPublishing {
}

tasks.wrapper {
gradleVersion = "8.4"
gradleVersion = "9.5.0"
distributionType = Wrapper.DistributionType.ALL
}
11 changes: 7 additions & 4 deletions buildSrc/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,17 @@ plugins {
val kotlinVersion = "1.9.10"

val detektPlugin = "1.23.4"
val gradleNexusPublishPlugin = "1.3.0"
val gradleNexusPublishPlugin = "2.0.0"
val gradleTestLoggerPlugin = "4.0.0"
val gradleVersionsPlugin = "0.50.0"
val gradleVersionsPlugin = "0.51.0"
val kotlinDokkaPlugin = "1.9.10"
val kotlinxKoverPlugin = "0.7.5"
val useLatestVersionsPlugin = "0.2.18"
val useLatestVersionsPlugin = "0.2.19"

dependencies {
implementation(platform("org.jetbrains.kotlin:kotlin-bom:$kotlinVersion"))
implementation("org.jetbrains.kotlin:kotlin-serialization")
implementation("org.jetbrains.kotlin:kotlin-reflect")
implementation("org.jetbrains.kotlin:kotlin-compiler-embeddable")
implementation("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion")

implementation("io.gitlab.arturbosch.detekt:detekt-gradle-plugin:$detektPlugin")
Expand All @@ -29,3 +28,7 @@ dependencies {
implementation("org.jetbrains.kotlinx:kover-gradle-plugin:$kotlinxKoverPlugin")
implementation("se.patrikerdes:gradle-use-latest-versions-plugin:$useLatestVersionsPlugin")
}

kotlin {
jvmToolchain(17)
}
5 changes: 3 additions & 2 deletions buildSrc/src/main/kotlin/Deps.kt
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ object Versions {
const val serialization = "1.0.1"
const val jsoup = "1.13.1"
const val htmlUnit = "2.63.0"
const val testContainers = "1.16.2"
const val testContainers = "2.0.5"
const val wireMock = "2.28.0"
const val log4jOverSlf4j = "2.0.7"
const val logback = "1.3.11"
Expand Down Expand Up @@ -38,6 +38,7 @@ object Deps {
const val log4jOverSlf4j = "org.slf4j:log4j-over-slf4j:${Versions.log4jOverSlf4j}"
const val strikt = "io.strikt:strikt-core:${Versions.strikt}"
const val jUnit = "org.junit.jupiter:junit-jupiter:${Versions.jUnit}"
const val jUnitPlatformLauncher = "org.junit.platform:junit-platform-launcher"
const val javaxServlet = "javax.servlet:javax.servlet-api:${Versions.javaxServlet}"
const val jetbrainsAnnotations = "org.jetbrains:annotations:${Versions.jetbrainsAnnotations}"
const val restAssured = "io.rest-assured:kotlin-extensions:${Versions.restAssured}"
Expand Down Expand Up @@ -80,7 +81,7 @@ object Deps {
version = Versions.testContainers,
) {
val testContainers = dependency("testcontainers")
val jUnit = dependency("junit-jupiter")
val jUnit = dependency("testcontainers-junit-jupiter")
}

object Mockk : DependencyGroup(
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package buildsrc.convention

import Deps
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
import org.jetbrains.kotlin.gradle.dsl.KotlinVersion
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile

plugins {
Expand All @@ -14,6 +16,7 @@ plugins {

dependencies {
testImplementation(Deps.jUnit)
testRuntimeOnly(Deps.jUnitPlatformLauncher)
testImplementation(Deps.strikt)
testImplementation(Deps.Mockk.mockk)
testImplementation(Deps.Mockk.dslJvm)
Expand All @@ -36,11 +39,11 @@ tasks.withType<JavaCompile>().configureEach {
}

tasks.withType<KotlinCompile>().configureEach {
kotlinOptions.apply {
jvmTarget = "1.8"
freeCompilerArgs += listOf("-Xjsr305=strict")
apiVersion = "1.6"
languageVersion = "1.6"
compilerOptions {
jvmTarget.set(JvmTarget.JVM_1_8)
freeCompilerArgs.add("-Xjsr305=strict")
apiVersion.set(KotlinVersion.KOTLIN_2_1)
languageVersion.set(KotlinVersion.KOTLIN_2_1)
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,21 @@ import com.github.benmanes.gradle.versions.updates.DependencyUpdatesTask

plugins {
base
id("com.github.ben-manes.versions")
id("se.patrikerdes.use-latest-versions")
}

val isPrecompiledScriptPluginAccessorsProject =
project.path.contains("generatePrecompiledScriptPluginAccessors")

if (!isPrecompiledScriptPluginAccessorsProject) {
apply(plugin = "com.github.ben-manes.versions")
apply(plugin = "se.patrikerdes.use-latest-versions")
}

val updateDependencies by tasks.registering {
group = LifecycleBasePlugin.BUILD_GROUP
dependsOn(tasks.useLatestVersions)
if (!isPrecompiledScriptPluginAccessorsProject) {
dependsOn("useLatestVersions")
}
dependsOn(tasks.withType<Test>())
}

Expand Down
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
6 changes: 5 additions & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.5.0-all.zip
networkTimeout=10000
retries=0
retryBackOffMs=500
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
44 changes: 26 additions & 18 deletions gradlew

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading