diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml
index 41a265e9..6df21c05 100644
--- a/.github/workflows/ci.yaml
+++ b/.github/workflows/ci.yaml
@@ -2,6 +2,8 @@ name: Java CI
on: [workflow_dispatch, push, pull_request]
+permissions: read-all
+
jobs:
test:
runs-on: ${{ matrix.os }}
@@ -9,7 +11,7 @@ jobs:
matrix:
cache: [maven]
distribution: [temurin]
- java: [17, 21, 23, 24-ea]
+ java: [17, 21, 24, 25-ea]
os: [ubuntu-latest, macos-latest, windows-latest]
fail-fast: false
max-parallel: 4
diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml
index 0b90f6ab..50035648 100644
--- a/.github/workflows/codeql.yml
+++ b/.github/workflows/codeql.yml
@@ -1,90 +1,49 @@
-# For most projects, this workflow file will not need changing; you simply need
-# to commit it to your repository.
-#
-# You may wish to alter this file to override the set of languages analyzed,
-# or to provide custom queries or build logic.
-#
-# ******** NOTE ********
-# We have attempted to detect the languages in your repository. Please check
-# the `language` matrix defined below to confirm you have the correct set of
-# supported CodeQL languages.
-#
name: "CodeQL"
on:
push:
- branches: [ "master" ]
+ branches: [ master ]
pull_request:
- branches: [ "master" ]
+ branches: [ master ]
schedule:
- cron: '45 13 * * 3'
jobs:
analyze:
name: Analyze
- # Runner size impacts CodeQL analysis time. To learn more, please see:
- # - https://gh.io/recommended-hardware-resources-for-running-codeql
- # - https://gh.io/supported-runners-and-hardware-resources
- # - https://gh.io/using-larger-runners
- # Consider using larger runners for possible analysis time improvements.
runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'ubuntu-latest' }}
timeout-minutes: ${{ (matrix.language == 'swift' && 120) || 360 }}
permissions:
- # required for all workflows
- security-events: write
-
- # only required for workflows in private repositories
actions: read
contents: read
+ security-events: write
strategy:
fail-fast: false
matrix:
language: [ 'java-kotlin' ]
- # CodeQL supports [ 'c-cpp', 'csharp', 'go', 'java-kotlin', 'javascript-typescript', 'python', 'ruby', 'swift' ]
- # Use only 'java-kotlin' to analyze code written in Java, Kotlin or both
- # Use only 'javascript-typescript' to analyze code written in JavaScript, TypeScript or both
- # Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support
steps:
- - name: Checkout repository
- uses: actions/checkout@v4
-
- - name: Setup Java
- uses: actions/setup-java@v4
- with:
- java-version: 17
- distribution: 'temurin'
-
- # Initializes the CodeQL tools for scanning.
- - name: Initialize CodeQL
- uses: github/codeql-action/init@v3
- with:
- languages: ${{ matrix.language }}
- # If you wish to specify custom queries, you can do so here or in a config file.
- # By default, queries listed here will override any specified in a config file.
- # Prefix the list here with "+" to use these queries and those in the config file.
-
- # For more details on CodeQL's query packs, refer to: https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
- # queries: security-extended,security-and-quality
-
-
- # Autobuild attempts to build any compiled languages (C/C++, C#, Go, Java, or Swift).
- # If this step fails, then you should remove it and run the build manually (see below)
- - name: Autobuild
- uses: github/codeql-action/autobuild@v3
-
- # âšī¸ Command-line programs to run using the OS shell.
- # đ See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
-
- # If the Autobuild fails above, remove it and uncomment the following three lines.
- # modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance.
-
- # - run: |
- # echo "Run, Build Application using script"
- # ./location_of_script_within_repo/buildscript.sh
-
- - name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@v3
- with:
- category: "/language:${{matrix.language}}"
+ - name: Checkout repository
+ uses: actions/checkout@v4
+
+ - name: Setup Java
+ uses: actions/setup-java@v4
+ with:
+ cache: maven
+ distribution: 'temurin'
+ java-version: 21
+
+ - name: Initialize CodeQL
+ uses: github/codeql-action/init@v3
+ with:
+ languages: ${{ matrix.language }}
+ queries: +security-and-quality
+
+ - name: Autobuild
+ uses: github/codeql-action/autobuild@v3
+
+ - name: Perform CodeQL Analysis
+ uses: github/codeql-action/analyze@v3
+ with:
+ category: "/language:${{ matrix.language }}"
diff --git a/.github/workflows/coveralls.yaml b/.github/workflows/coveralls.yaml
index 270a6c85..b4aaaa99 100644
--- a/.github/workflows/coveralls.yaml
+++ b/.github/workflows/coveralls.yaml
@@ -2,6 +2,8 @@ name: Coveralls
on: [push, pull_request]
+permissions: read-all
+
jobs:
build:
if: github.repository_owner == 'mybatis'
diff --git a/.github/workflows/site.yaml b/.github/workflows/site.yaml
index 5d699801..22df5576 100644
--- a/.github/workflows/site.yaml
+++ b/.github/workflows/site.yaml
@@ -5,6 +5,9 @@ on:
branches:
- site
+permissions:
+ contents: write
+
jobs:
build:
if: github.repository_owner == 'mybatis' && ! contains(toJSON(github.event.head_commit.message), '[maven-release-plugin]')
@@ -20,12 +23,10 @@ jobs:
- name: Build site
run: ./mvnw site site:stage -DskipTests -Dlicense.skip=true -B -V --no-transfer-progress --settings ./.mvn/settings.xml
env:
- CI_DEPLOY_USERNAME: ${{ secrets.CI_DEPLOY_USERNAME }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NVD_API_KEY: ${{ secrets.NVD_API_KEY }}
- name: Deploy Site to gh-pages
uses: JamesIves/github-pages-deploy-action@v4
with:
branch: gh-pages
- folder: target/staging
- ssh-key: ${{ secrets.DEPLOY_KEY }}
+ folder: target/spring-boot-starter.git
diff --git a/.github/workflows/sonar.yaml b/.github/workflows/sonar.yaml
index 698036e9..a608e6d2 100644
--- a/.github/workflows/sonar.yaml
+++ b/.github/workflows/sonar.yaml
@@ -5,6 +5,8 @@ on:
branches:
- master
+permissions: read-all
+
jobs:
build:
if: github.repository_owner == 'mybatis'
diff --git a/.github/workflows/sonatype.yaml b/.github/workflows/sonatype.yaml
index 494bb2f4..c922f382 100644
--- a/.github/workflows/sonatype.yaml
+++ b/.github/workflows/sonatype.yaml
@@ -5,6 +5,8 @@ on:
branches:
- master
+permissions: read-all
+
jobs:
build:
if: github.repository_owner == 'mybatis' && ! contains(toJSON(github.event.head_commit.message), '[maven-release-plugin]')
diff --git a/.github/workflows/support.yaml b/.github/workflows/support.yaml
index f3665471..9e1690e9 100644
--- a/.github/workflows/support.yaml
+++ b/.github/workflows/support.yaml
@@ -18,6 +18,8 @@ name: Spring Boot Support Samples
on: [push, pull_request]
+permissions: read-all
+
jobs:
test:
runs-on: ${{ matrix.os }}
diff --git a/.mvn/extensions.xml b/.mvn/extensions.xml
index 97568c92..4b143af9 100644
--- a/.mvn/extensions.xml
+++ b/.mvn/extensions.xml
@@ -1,7 +1,7 @@
- ossrh
+ central
${env.CI_DEPLOY_USERNAME}
${env.CI_DEPLOY_PASSWORD}
@@ -39,7 +39,6 @@
github
- ${env.CI_DEPLOY_USERNAME}
${env.GITHUB_TOKEN}
diff --git a/mybatis-spring-boot-autoconfigure/src/main/java/org/mybatis/spring/boot/autoconfigure/MybatisAutoConfiguration.java b/mybatis-spring-boot-autoconfigure/src/main/java/org/mybatis/spring/boot/autoconfigure/MybatisAutoConfiguration.java
index 6d4e697e..5da820fa 100644
--- a/mybatis-spring-boot-autoconfigure/src/main/java/org/mybatis/spring/boot/autoconfigure/MybatisAutoConfiguration.java
+++ b/mybatis-spring-boot-autoconfigure/src/main/java/org/mybatis/spring/boot/autoconfigure/MybatisAutoConfiguration.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2015-2022 the original author or authors.
+ * Copyright 2015-2025 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -280,7 +280,7 @@ public void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, B
builder.addPropertyValue("sqlSessionTemplateBeanName",
sqlSessionTemplateBeanName.orElse("sqlSessionTemplate"));
} else {
- builder.addPropertyValue("sqlSessionFactoryBeanName", sqlSessionFactoryBeanName.get());
+ builder.addPropertyValue("sqlSessionFactoryBeanName", sqlSessionFactoryBeanName.orElseThrow());
}
}
builder.setRole(BeanDefinition.ROLE_INFRASTRUCTURE);
diff --git a/mybatis-spring-boot-samples/mybatis-spring-boot-sample-groovy/pom.xml b/mybatis-spring-boot-samples/mybatis-spring-boot-sample-groovy/pom.xml
index e4916787..58bed6f6 100644
--- a/mybatis-spring-boot-samples/mybatis-spring-boot-sample-groovy/pom.xml
+++ b/mybatis-spring-boot-samples/mybatis-spring-boot-sample-groovy/pom.xml
@@ -1,7 +1,7 @@
- org.apache.tomcat:tomcat-coyote
+ org.apache.tomcat:tomcat-coyote-ffm
org.apache.tomcat.embed:tomcat-embed-core