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
15 changes: 8 additions & 7 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@ jobs:
permissions:
contents: read
strategy:
fail-fast: true
fail-fast: false
matrix:
java: [11, 17, 21]
java: [11, 17, 21, 25]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}-java-${{ matrix.java }}
cancel-in-progress: true
Expand All @@ -23,19 +23,20 @@ jobs:

steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: 0
- uses: actions/setup-java@v4
persist-credentials: false
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
# SonarQube analysis requires Java 17 or higher
java-version: |
11
${{ matrix.java }}
17
21
cache: maven
- name: Cache SonarQube packages
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: ~/.sonar/cache
key: ${{ runner.os }}-sonar
Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,21 +21,21 @@ jobs:

steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6

- uses: actions/setup-java@v4
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 11
cache: maven

- name: Initialize CodeQL
uses: github/codeql-action/init@v3
uses: github/codeql-action/init@v4
with:
languages: java

- name: Autobuild
uses: github/codeql-action/autobuild@v3
- name: Build
run: mvn --batch-mode --errors -Dmaven.gitcommitid.skip=true clean compile

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
uses: github/codeql-action/analyze@v4
46 changes: 46 additions & 0 deletions .github/workflows/publish-javadoc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: Deploy Javadoc

on:
push:
branches: [ main ]
workflow_dispatch:
pull_request:

jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout the repository
uses: actions/checkout@v6
with:
persist-credentials: false
- name: Set up Java
uses: actions/setup-java@v5
with:
distribution: temurin
java-version: 11
cache: maven
- name: Build JavaDoc
run: mvn --batch-mode javadoc:javadoc
- name: Upload artifact
uses: actions/upload-pages-artifact@v5
with:
path: ./target/reports/apidocs

deploy:
if: ${{ github.ref == 'refs/heads/main' }}
permissions:
contents: read
id-token: write
pages: write
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v5
24 changes: 17 additions & 7 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,11 @@ on:
required: true
type: boolean
default: false
auto-publish-maven-central:
description: "Auto-publish to Maven Central"
required: true
type: boolean
default: true

jobs:
release:
Expand All @@ -22,22 +27,22 @@ jobs:
contents: write # Required for creating GitHub release
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Fail if not running on main branch
if: ${{ github.ref != 'refs/heads/main' }}
uses: actions/github-script@v7
uses: actions/github-script@v9
with:
script: |
core.setFailed('Not running on main branch, github.ref is ${{ github.ref }}. Please start this workflow only on main')

- name: Set up Maven Central Repository
uses: actions/setup-java@v4
uses: actions/setup-java@v5
with:
distribution: "temurin"
java-version: 11
cache: "maven"
server-id: ossrh
server-id: central
server-username: MAVEN_USERNAME
server-password: MAVEN_PASSWORD
gpg-private-key: ${{ secrets.OSSRH_GPG_SECRET_KEY }}
Expand All @@ -51,11 +56,16 @@ jobs:

- name: Publish to Maven Central Repository
if: ${{ !inputs.skip-deploy-maven-central }}
run: mvn --batch-mode deploy -Possrh -DstagingDescription="Deployed via GitHub workflow release.yml"
run: |
mvn --batch-mode deploy -PcentralPublishing \
-DcentralPublishingSkipPublishing=false \
-DcentralPublishingAutoPublish=${AUTO_PUBLISH} \
-DcentralPublishingDeploymentName="Deploy junit5-system-extensions via release.yml"
env:
MAVEN_USERNAME: ${{ secrets.OSSRH_USERNAME }}
MAVEN_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
MAVEN_USERNAME: ${{ secrets.MAVEN_CENTRAL_PORTAL_USERNAME }}
MAVEN_PASSWORD: ${{ secrets.MAVEN_CENTRAL_PORTAL_TOKEN }}
MAVEN_GPG_PASSPHRASE: ${{ secrets.OSSRH_GPG_SECRET_KEY_PASSWORD }}
AUTO_PUBLISH: ${{ inputs.auto-publish-maven-central }}

- name: Create GitHub Release
run: ./.github/workflows/github_release.sh
Expand Down
1 change: 0 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
"source.generate.finalModifiers": "explicit",
"source.fixAll": "explicit"
},
"java.saveActions.organizeImports": true,
"java.sources.organizeImports.starThreshold": 3,
"java.sources.organizeImports.staticStarThreshold": 3,
"java.configuration.updateBuildConfiguration": "automatic",
Expand Down
1 change: 1 addition & 0 deletions doc/changes/changelog.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# Changes

* [1.2.3](changes_1.2.3.md)
* [1.2.2](changes_1.2.2.md)
* [1.2.1](changes_1.2.1.md)
* [1.2.0](changes_1.2.0.md)
Expand Down
15 changes: 15 additions & 0 deletions doc/changes/changes_1.2.3.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# JUnit5 System Extensions 1.2.3, released 2026-05-14

Code name: Upgrade dependencies

## Summary

This release upgrades dependencies and updates the automatic release process to Maven Central.

## Bugfixes

* [#76](https://github.com/itsallcode/junit5-system-extensions/pull/76): Upgrade dependencies

## Compile Dependency Changes

* Upgrade `org.junit.jupiter:junit-jupiter-api` from `5.11.0` to `5.14.4`
72 changes: 35 additions & 37 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.itsallcode</groupId>
<artifactId>junit5-system-extensions</artifactId>
<version>1.2.2</version>
<version>1.2.3</version>
<name>JUnit5 System Extensions</name>
<description>These extensions help testing behavior that is related to `System.x` calls like `exit(int).</description>
<url>https://github.com/itsallcode/junit5-system-extensions</url>
Expand Down Expand Up @@ -36,63 +36,55 @@
</scm>
<properties>
<java.version>11</java.version>
<junit.version>5.11.0</junit.version>
<!-- Version 6 requires Java 17 -->
<junit.version>5.14.4</junit.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<skipSigningArtifacts>true</skipSigningArtifacts>
<sonar.host.url>https://sonarcloud.io</sonar.host.url>
<sonar.organization>itsallcode</sonar.organization>
<reproducible.build.timestamp>${git.commit.time}</reproducible.build.timestamp>
<project.build.outputTimestamp>${reproducible.build.timestamp}</project.build.outputTimestamp>
</properties>
<distributionManagement>
<snapshotRepository>
<id>ossrh</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
<repository>
<id>ossrh</id>
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
</distributionManagement>
<dependencies>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<version>${junit.version}</version>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>5.13.0</version>
<version>5.23.0</version>
<scope>test</scope>
</dependency>
</dependencies>
<profiles>
<profile>
<id>ossrh</id>
<id>centralPublishing</id>
<properties>
<centralPublishingSkipPublishing>false</centralPublishingSkipPublishing>
<centralPublishingAutoPublish>false</centralPublishingAutoPublish>
<centralPublishingDeploymentName>Manual deployment of JUnit5 System Extensions</centralPublishingDeploymentName>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<version>1.7.0</version>
<groupId>org.sonatype.central</groupId>
<artifactId>central-publishing-maven-plugin</artifactId>
<version>0.10.0</version>
<extensions>true</extensions>
<configuration>
<serverId>ossrh</serverId>
<nexusUrl>https://oss.sonatype.org/</nexusUrl>
<autoReleaseAfterClose>true</autoReleaseAfterClose>
<publishingServerId>central</publishingServerId>
<skipPublishing>${centralPublishingSkipPublishing}</skipPublishing>
<autoPublish>${centralPublishingAutoPublish}</autoPublish>
<waitUntil>validated</waitUntil>
<deploymentName>${centralPublishingDeploymentName}</deploymentName>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>3.2.5</version>
<version>3.2.8</version>
<executions>
<execution>
<id>sign-artifacts</id>
Expand All @@ -106,7 +98,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>3.1.3</version>
<version>3.1.4</version>
</plugin>
</plugins>
</build>
Expand Down Expand Up @@ -136,7 +128,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.13.0</version>
<version>3.15.0</version>
<configuration>
<source>${java.version}</source>
<target>${java.version}</target>
Expand All @@ -150,7 +142,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.3.1</version>
<version>3.4.0</version>
<executions>
<execution>
<id>attach-sources</id>
Expand All @@ -163,7 +155,8 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.10.0</version>
<!-- Pinned for JDK 11 compatibility: 3.12.0 adds unsupported 'no-fonts'. -->
<version>3.11.2</version>
<executions>
<execution>
<id>attach-javadocs</id>
Expand All @@ -187,12 +180,12 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.4.2</version>
<version>3.5.0</version>
</plugin>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.8.12</version>
<version>0.8.14</version>
<executions>
<execution>
<goals>
Expand All @@ -211,7 +204,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.5.0</version>
<version>3.5.5</version>
<configuration>
<!-- Suppress warning about loading byte-buddy-agent -->
<argLine>-XX:+EnableDynamicAgentLoading ${argLine}</argLine>
Expand All @@ -220,7 +213,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>3.5.0</version>
<version>3.6.2</version>
<executions>
<execution>
<id>enforce-maven</id>
Expand All @@ -240,7 +233,7 @@
<plugin>
<groupId>io.github.git-commit-id</groupId>
<artifactId>git-commit-id-maven-plugin</artifactId>
<version>9.0.1</version>
<version>10.0.0</version>
<executions>
<execution>
<id>get-the-git-infos</id>
Expand All @@ -261,7 +254,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-artifact-plugin</artifactId>
<version>3.5.1</version>
<version>3.6.1</version>
<executions>
<execution>
<id>verify-reproducible-build</id>
Expand All @@ -275,6 +268,11 @@
<failOnNonReproducible>true</failOnNonReproducible>
</configuration>
</plugin>
<plugin>
<groupId>org.sonarsource.scanner.maven</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>5.6.0.6792</version>
</plugin>
</plugins>
</build>
<inceptionYear>2018</inceptionYear>
Expand Down
Loading
Loading