Commit Graph

70 Commits

Author SHA1 Message Date
John Niang
71c621b9b1 Refactor Thymeleaf dependencies to resolve potential memory leak (#7914)
#### What type of PR is this?

/kind bug
/area core
/milestone 2.22.x

#### What this PR does / why we need it:

Supersedes <https://github.com/halo-dev/halo/pull/7678>.

See https://github.com/halo-dev/thymeleaf/pull/4 for more.

#### Does this PR introduce a user-facing change?

```release-note
修复潜在的内存泄漏问题
```
2025-11-06 13:42:29 +00:00
John Niang
9dc980d923 Upgrade to Gradle 9.2.0 (#7886)
#### What type of PR is this?

/kind cleanup
/area core
/milestone 2.22.x

#### What this PR does / why we need it:

This PR upgrades to Gradle [9.2.0](https://github.com/gradle/gradle/releases/tag/v9.2.0) and enable configuration cache by default.

#### Does this PR introduce a user-facing change?

```release-note
None
```
2025-11-05 03:18:26 +00:00
John Niang
edc940ed56 Make UI build optional by changing dependency to mustRunAfter in build.gradle (#7878)
#### What type of PR is this?

/kind cleanup
/area core
/milestone 2.22.x

#### What this PR does / why we need it:

This PR changes dependency `:ui:doBuild` to mustRunAfter for task `:application:copyUiDist` to speed up build process in IDEA. So that we can run our unit tests quicker and run task `bootRun` during UI development.

#### Special notes for your reviewer:

Make sure executing task `./gradlew build` will include UI resources.

#### Does this PR introduce a user-facing change?

```release-note
None
```
2025-10-28 09:36:16 +00:00
John Niang
90b292288e Upgrade Checkstyle to version 12.1.0 and standardize plugin declaration (#7828) 2025-10-20 11:16:54 +08:00
Ryan Wang
41005f2c0e Add new plugins to presetPluginUrls list (#7785)
Added plugin-shiki v1.0.1 and plugin-editor-hyperlink-card v1.5.2 to the presetPluginUrls in build.gradle to support their automatic download and inclusion.
2025-10-03 00:15:24 +08:00
John Niang
db00883c3d Set dynamic branch name for Docker image tags in build.gradle (#7780) 2025-09-24 12:17:33 +08:00
John Niang
f1a2669604 Update GitHub Container Registry namespace for Docker image publishing 2025-09-18 23:23:27 +08:00
John Niang
5633446434 Refactor build tasks to improve UI distribution and cleanup processes (#7768) 2025-09-18 17:49:06 +08:00
John Niang
01304d7fec Remove Fit2Cloud registry publishing due to persistent 403 errors (#7767) 2025-09-18 17:01:13 +08:00
John Niang
35504b4e5a Update Docker image name and tags for Fit2Cloud registry 2025-09-16 23:59:04 +08:00
John Niang
cd2dac7f01 Add build and publish tasks for Docker images using Buildpacks 2025-09-16 20:06:44 +08:00
Ryan Wang
4ac80f5eb3 Update comment widget plugin to v3.0.0 (#7705) 2025-08-19 15:32:02 +08:00
John Niang
6f608f12aa Fix the problem of memory leak caused by thymeleaf (#7678)
#### What type of PR is this?

/kind bug
/area core
/milestone 2.21.x

#### What this PR does / why we need it:

This PR replaces the dependency `thymeleaf-spring6` to apply the memory leak fix of <https://github.com/halo-dev/thymeleaf/pull/1>.

Please note that this is a temporary fix, and we would revert this PR after Thymeleaf official released a new version including my fix.

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/7289

#### Special notes for your reviewer:

1. Execute command ab -c 100 -n 1000 -H 'Accept: text/html' -H 'Cache-Control: no-cache' http://localhost:8090/ and then press Ctrl + C to stop the thread.
2. See logs in Halo

#### Does this PR introduce a user-facing change?

```release-note
修复在特定情况下模板引擎可能出现内存泄漏的问题
```
2025-08-12 10:46:48 +00:00
Ryan Wang
9607ee4912 chore: bump preset plugins and theme version (#7667)
#### What type of PR is this?

/area core
/milestone 2.21.x

#### What this PR does / why we need it:

Bump all preset plugins and theme version

#### Does this PR introduce a user-facing change?

```release-note
None
```
2025-08-06 16:12:38 +00:00
Ryan Wang
12ed2d5653 chore: bump preset plugins and themes version (#7555)
Signed-off-by: Ryan Wang <i@ryanc.cc>
2025-06-15 12:03:27 +08:00
John Niang
3df117511c Remove deprecation warnings from Gradle (#7468) 2025-05-23 16:08:38 +08:00
John Niang
fb2fc31cdd Bump Spring Boot to 3.5.0 (#7467)
#### What type of PR is this?

/kind improvement
/area core
/milestone 2.21.x

#### What this PR does / why we need it:

This PR bumps Spring Boot to [3.5.0](https://github.com/spring-projects/spring-boot/releases/tag/v3.5.0).

#### Does this PR introduce a user-facing change?

```release-note
升级依赖 Spring Boot 至 3.5.0
```
2025-05-23 04:22:12 +00:00
Ryan Wang
d382b45236 Merge branch 'main' into refactor/libs-versions 2025-05-20 10:07:25 +08:00
John Niang
0c4be85467 Set Java 21 as minimal version (#7451)
#### What type of PR is this?

/kind improvement
/area core
/milestone 2.21.x

#### What this PR does / why we need it:

This PR sets Java 21 as minimal version. After doing that, Halo can only run on Java 21 or newer version.

Fortunately, all plugins and themes won't be affected by the restriction.

> https://docs.gradle.org/current/userguide/toolchains.html#sec:release-flag-toolchain

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/6867

#### Does this PR introduce a user-facing change?

```release-note
[Action Required] 更新最低运行环境为 Java 21
```
2025-05-20 02:05:25 +00:00
John Niang
0dd1e13e82 Fix the problem of not resolving git properties
See https://github.com/n0mer/gradle-git-properties/issues/242 for more
2025-05-19 17:42:40 +08:00
John Niang
e6f753bb5d Refactor dependencies and plugins with version catelog 2025-05-19 16:05:56 +08:00
John Niang
7eadf7a889 Refactor processResources with creating a new copy task (#7446)
#### What type of PR is this?

/kind improvement
/area core
/milestone 2.21.x

#### What this PR does / why we need it:

Defining `into` property in `processResources` task is not working, so I create a new copy task to process UI dist.

#### Does this PR introduce a user-facing change?

```release-note
None
```
2025-05-19 04:35:41 +00:00
John Niang
23951de314 Support resolving javadoc for SpringDoc (#7390)
#### What type of PR is this?

/kind improvement
/area core
/milestone 2.20.x

#### What this PR does / why we need it:

This PR adds therapi-runtime-javadoc dependency and annotationProcessor for api and application projects. After doing that, SpringDoc will introspect Javadoc annotations and comments. See https://springdoc.org/#javadoc-support for more.

For support in plugin, just add an annotationProcessor like below:

```gradle
dependencies {
    implementation platform('run.halo.tools.platform:plugin:2.20.8-SNAPSHOT')
    compileOnly 'run.halo.app:api'

    annotationProcessor 'com.github.therapi:therapi-runtime-javadoc-scribe:0.13.0'
}
```

#### Does this PR introduce a user-facing change?

```release-note
None
```
2025-04-25 15:17:54 +00:00
Ryan Wang
06f3c289e8 chore: bump preset plugins version (#7024)
Signed-off-by: Ryan Wang <i@ryanc.cc>
2024-11-12 06:35:20 +08:00
Ryan Wang
8df91e80b3 chore: bump app store plugin version (#6881)
#### What type of PR is this?

/area core
/kind improvement
/milestone 2.20.x

#### What this PR does / why we need it:

Bump app store plugin to 1.6.0

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-10-16 13:59:27 +00:00
Ryan Wang
479b439ce4 chore: bump preset plugins version (#6792)
#### What type of PR is this?

/area core
/kind improvement
/milestone 2.20.x

#### What this PR does / why we need it:

升级预设插件的版本。

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-10-08 09:14:54 +00:00
John Niang
9829371548 Add Gradle plugin to discover dependency updates (#6761)
#### What type of PR is this?

/kind improvement
/area core
/milestone 2.20.x

#### What this PR does / why we need it:

This PR adds [a Gradle plugin ](https://github.com/ben-manes/gradle-versions-plugin)to discover dependency updates.

```bash
❯ ./gradlew dependencyUpdates -Drevision=release

> Task :api:dependencyUpdates

------------------------------------------------------------
:api Project Dependency Updates (report to plain text file)
------------------------------------------------------------

The following dependencies are using the latest release version:
 - com.github.ben-manes.caffeine:caffeine:3.1.8
 - com.github.java-json-tools:json-patch:1.13
 - com.j256.two-factor-auth:two-factor-auth:1.3
 - io.asyncer:r2dbc-mysql:1.3.0
 - io.github.java-diff-utils:java-diff-utils:4.12
 - io.github.resilience4j:resilience4j-reactor:2.2.0
 - io.github.resilience4j:resilience4j-spring-boot3:2.2.0
 - io.projectreactor:reactor-test:3.7.0-M6
 - io.r2dbc:r2dbc-h2:1.0.0.RELEASE
 - io.seruco.encoding:base62:0.1.3
 - org.apache.commons:commons-lang3:3.17.0
 - org.imgscalr:imgscalr-lib:4.2
 - org.jacoco:org.jacoco.agent:0.8.12
 - org.jacoco:org.jacoco.ant:0.8.12
 - org.mariadb:r2dbc-mariadb:1.2.2
 - org.openapi4j:openapi-schema-validator:1.0.7
 - org.pf4j:pf4j:3.12.0
 - org.postgresql:postgresql:42.7.4
 - org.postgresql:r2dbc-postgresql:1.0.5.RELEASE
 - org.projectlombok:lombok:1.18.30
 - org.springdoc:springdoc-openapi-starter-webflux-ui:2.6.0
 - org.springframework.boot:spring-boot-starter-actuator:3.4.0-M3
 - org.springframework.boot:spring-boot-starter-cache:3.4.0-M3
 - org.springframework.boot:spring-boot-starter-data-jpa:3.4.0-M3
 - org.springframework.boot:spring-boot-starter-data-r2dbc:3.4.0-M3
 - org.springframework.boot:spring-boot-starter-mail:3.4.0-M3
 - org.springframework.boot:spring-boot-starter-security:3.4.0-M3
 - org.springframework.boot:spring-boot-starter-test:3.4.0-M3
 - org.springframework.boot:spring-boot-starter-thymeleaf:3.4.0-M3
 - org.springframework.boot:spring-boot-starter-validation:3.4.0-M3
 - org.springframework.boot:spring-boot-starter-webflux:3.4.0-M3
 - org.springframework.integration:spring-integration-core:6.4.0-M3
 - org.springframework.security:spring-security-oauth2-client:6.4.0-M4
 - org.springframework.security:spring-security-oauth2-jose:6.4.0-M4
 - org.springframework.security:spring-security-oauth2-resource-server:6.4.0-M4
 - org.springframework.security:spring-security-test:6.4.0-M4
 - org.springframework.session:spring-session-core:3.4.0-M2
 - org.thymeleaf.extras:thymeleaf-extras-springsecurity6:3.1.2.RELEASE

The following dependencies have later release versions:
 - com.google.guava:guava [32.0.1-jre -> 33.3.1-jre]
     https://github.com/google/guava
 - net.bytebuddy:byte-buddy [1.15.1 -> 1.15.3]
     https://bytebuddy.net
 - org.apache.lucene:lucene-analysis-common [9.11.1 -> 9.12.0]
     https://lucene.apache.org/
 - org.apache.lucene:lucene-backward-codecs [9.11.1 -> 9.12.0]
     https://lucene.apache.org/
 - org.apache.lucene:lucene-core [9.11.1 -> 9.12.0]
     https://lucene.apache.org/
 - org.apache.lucene:lucene-highlighter [9.11.1 -> 9.12.0]
     https://lucene.apache.org/
 - org.apache.lucene:lucene-queryparser [9.11.1 -> 9.12.0]
     https://lucene.apache.org/
 - org.apache.tika:tika-core [2.9.2 -> 3.0.0-BETA2]
     https://tika.apache.org/
 - org.jsoup:jsoup [1.15.3 -> 1.18.1]
     https://jsoup.org/

Gradle release-candidate updates:
 - Gradle: [8.10.2: UP-TO-DATE]

Generated report file build/dependencyUpdates/report.txt

> Task :application:dependencyUpdates

------------------------------------------------------------
:application Project Dependency Updates (report to plain text file)
------------------------------------------------------------

The following dependencies are using the latest release version:
 - com.puppycrawl.tools:checkstyle:9.3
 - io.projectreactor:reactor-test:3.7.0-M6
 - org.jacoco:org.jacoco.agent:0.8.12
 - org.jacoco:org.jacoco.ant:0.8.12
 - org.springframework:spring-context-indexer:6.2.0-RC1
 - org.springframework.boot:spring-boot-configuration-processor:3.4.0-M3
 - org.springframework.boot:spring-boot-starter-test:3.4.0-M3
 - org.springframework.security:spring-security-test:6.4.0-M4
 - org.webjars.npm:jsencrypt:3.3.2
 - org.webjars.npm:normalize.css:8.0.1

The following dependencies have later release versions:
 - org.projectlombok:lombok [1.18.30 -> 1.18.34]
     https://projectlombok.org

Gradle release-candidate updates:
 - Gradle: [8.10.2: UP-TO-DATE]

Generated report file build/dependencyUpdates/report.txt

Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

For more on this, please refer to https://docs.gradle.org/8.10.2/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.

BUILD SUCCESSFUL in 1s
9 actionable tasks: 2 executed, 7 up-to-date
```

#### Does this PR introduce a user-facing change?

<!--
如果当前 Pull Request 的修改不会造成用户侧的任何变更,在 `release-note` 代码块儿中填写 `NONE`。
否则请填写用户侧能够理解的 Release Note。如果当前 Pull Request 包含破坏性更新(Break Change),
Release Note 需要以 `action required` 开头。
If no, just write "NONE" in the release-note block below.
If yes, a release note is required:
Enter your extended release note in the block below. If the PR requires additional action from users switching to the new release, include the string "action required".
-->

```release-note
None
```
2024-10-04 11:46:43 +00:00
JohnNiang
1f9610686b Add backend support for customizing login and logout pages
Signed-off-by: JohnNiang <johnniang@foxmail.com>
2024-09-28 17:37:36 +08:00
Ryan Wang
3db80bfaf3 chore: bump preset plugins version (#6517)
#### What type of PR is this?

/kind improvement
/area core
/milestone 2.19.0

#### What this PR does / why we need it:

升级预设插件的版本。

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-08-26 08:21:13 +00:00
John Niang
50adc29e42 Respond not found if no theme template found (#6511)
#### What type of PR is this?

/kind improvement
/area core
/milestone 2.19.0

#### What this PR does / why we need it:

This PR refactors "Template Not Found Exception" into "NotFoundException" to prevent too many exception stacktraces in logs file.

#### Which issue(s) this PR fixes:

Fixes #6501 

#### Special notes for your reviewer:

1. Activate default theme
2. Request <http://localhost:8090/categories>
3. See the result

#### Does this PR introduce a user-facing change?

```release-note
优化当主题模板找不到的异常提示
```
2024-08-26 02:47:12 +00:00
BugKing
2c0f0875ed chore: bump preset plugins version (#6310)
#### What type of PR is this?

/kind improvement
/area core

#### What this PR does / why we need it:

更新预设插件版本。

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-07-15 05:31:26 +00:00
John Niang
36fb44c8b7 Build and run using IntelliJ IDEA after building ui (#6261)
#### What type of PR is this?

/kind improvement
/area core
/milestone 2.18.x

#### What this PR does / why we need it:

This PR treats `ui/build/dist` as resource dir for application module to adapt building and running using IntelliJ IDEA.

How to use?

1. Build ui project by executing command `./gradlew :ui:build -x :ui:check`.
1. Create a `Run/Debug Configuration` with arguments `--spring.profiles.active=dev --halo.console.proxy.enabled=false --halo.uc.proxy.enabled=false`.
1. Go to `Settings | Build, Execution, Deployment | Build Tools | Gradle` and select `IntelliJ IDEA` for `Build and run using:`
1. Run/Debug the configuration 

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-07-04 03:22:32 +00:00
Ryan Wang
9e1cd02c41 chore: bump preset plugins version (#6225)
#### What type of PR is this?

/area core
/kind improvement
/milestone 2.17.x

#### What this PR does / why we need it:

更新预设插件的版本。

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-07-01 02:55:16 +00:00
JohnNiang
ecc0a70249 Refactor api client using separated OpenAPI groups 2024-06-25 12:31:25 +08:00
Ryan Wang
1f71532327 chore: bump preset plugins version (#5839)
#### What type of PR is this?

/area core
/kind improvement
/milestone 2.15.0

#### What this PR does / why we need it:

升级所有预设插件的版本。

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-04-30 06:38:17 +00:00
John Niang
3c20ce3c55 Generate API docs and regenerate API client (#5742)
#### What type of PR is this?

/kind cleanup
/area core

#### What this PR does / why we need it:

This PR adds support for generating API docs into project and generate API client according the API docs.

To generate/update latest API docs, execute the following command:

```bash
./gradlew clean generateOpenApiDocs
```

To generate/update latest API client, execute the following command:

```bash
make -C ui api-client-gen
```

Meanwhile, I also remove the lint on API client due to unnecessary.

Supersedes of https://github.com/halo-dev/halo/pull/5637

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-04-19 02:34:07 +00:00
John Niang
0843747abc Collect Gradle plugin versions into root build.gradle (#5511)
#### What type of PR is this?

/kind cleanup
/area core

#### What this PR does / why we need it:

This PR collects all Gradle plugin versions into root build.gradle for easy management.

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-03-15 10:34:07 +00:00
John Niang
956f4ef3f3 Set source and target compatibility to Java 17 (#5499)
#### What type of PR is this?

/kind chore
/area core

#### What this PR does / why we need it:

I get the following errors when I develop Halo in JDK 21:

```bash
FAILURE: Build failed with an exception.

* What went wrong:
Could not determine the dependencies of task ':application:bootRun'.
> Could not resolve all dependencies for configuration ':application:runtimeClasspath'.
   > Failed to calculate the value of task ':application:compileJava' property 'javaCompiler'.
      > No matching toolchains found for requested specification: {languageVersion=17, vendor=any, implementation=vendor-specific} for MAC_OS on aarch64.
         > No locally installed toolchains match and toolchain download repositories have not been configured.
```

This PR removes the Java toolchain configuration and adds source and target compatibility to Java 17, allowing developers to develop Halo in Java 17 or higher versions.

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-03-12 07:44:07 +00:00
Ryan Wang
6ea7abeff2 chore: bump preset plugins version (#5423)
#### What type of PR is this?

/area core
/milestone 2.13.0
/kind improvement

#### What this PR does / why we need it:

更新预设插件的版本。

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-02-29 16:43:39 +00:00
John Niang
348079d82e Upgrade Spring Boot to 3.2.3 (#5402)
#### What type of PR is this?

/kind cleanup
/area core
/milestone 2.13.x

#### What this PR does / why we need it:

Upgrade Spring Boot to [3.2.3](https://github.com/spring-projects/spring-boot/releases/tag/v3.2.3).

#### Does this PR introduce a user-facing change?

```release-note
升级依赖 Spring Boot 至 3.2.3
```
2024-02-25 14:24:08 +00:00
John Niang
0f9552d923 Do not execute :ui:build when application is not building
Signed-off-by: John Niang <johnniang@foxmail.com>
2024-02-06 10:37:14 +08:00
John Niang
a3772fab1b Add build script for ui project
Signed-off-by: John Niang <johnniang@foxmail.com>
2024-02-03 22:51:50 +08:00
John Niang
9d9b1527bc Upgrade Spring Boot to 3.2.2 (#5232)
#### What type of PR is this?

/kind improvement
/area core

#### What this PR does / why we need it:

See https://github.com/spring-projects/spring-boot/releases/tag/v3.2.2 for more.

#### Does this PR introduce a user-facing change?

```release-note
升级依赖 Spring Boot 至 3.2.2
```
2024-01-23 05:11:41 +00:00
John Niang
883c1fadb6 Refactor workflow by not using composite actions from halo-sigs/actions
Signed-off-by: John Niang <johnniang@foxmail.com>
2024-01-10 14:14:36 +08:00
John Niang
3bb2d8fbae Upgrade to Spring Boot 3.2.0 2023-11-24 00:09:45 +08:00
John Niang
b04496e4f3 Upgrade to SpringDoc 2.2.1-SNAPSHOT (#4854)
#### What type of PR is this?

/kind bug
/area core
/milestone 2.11.x

#### What this PR does / why we need it:

This PR upgrades to SpringDoc 2.2.1-SNAPSHOT to resolve the problem of Swagger API doc display errors.

#### Does this PR introduce a user-facing change?

```release-note
升级 SpringDoc 至 2.2.1-SNAPSHOT 以解决部分 API 文档无法正常使用的问题
```
2023-11-15 03:04:09 +00:00
John Niang
65a7e970cd Upgrade to Spring Boot 3.2.0-RC2 (#4850)
#### What type of PR is this?

/kind cleanup
/area core
/milestone 2.11.x

#### What this PR does / why we need it:

- Upgrade to Spring Boot 3.2.0-RC2.
- Fix unit test errors due to upgrading.

See https://github.com/spring-projects/spring-boot/releases/tag/v3.2.0-RC2 for more.

#### Does this PR introduce a user-facing change?

Anyone who is using H2 database and wants to upgrade this version has to backup and restore Halo or upgrade old h2 database file manually.

```release-note
[Action Required] 升级 Spring Boot 至 3.2.0-RC2
```
2023-11-13 09:28:08 +00:00
John Niang
841aa96e59 Upgrade to Lombok gradle plugin 8.4 (#4849)
#### What type of PR is this?

/kind cleanup
/area core
/milestone 2.11.x

#### What this PR does / why we need it:

Upgrade to Lombok gradle plugin 8.4.

See https://docs.freefair.io/gradle-plugins/8.4/reference/#_installation and https://docs.freefair.io/gradle-plugins/8.4/reference/#_system_requirements for more.

#### Does this PR introduce a user-facing change?

```release-note
升级 Lombok Gradle 插件至 8.4
```
2023-11-13 03:08:09 +00:00
John Niang
ee52adf24c Fix the problem where some Windows developers are unable to build project (#4844)
#### What type of PR is this?

/kind bug
/area core

#### What this PR does / why we need it:

Currently, some Windows developers using GBK as character encoding are unable to build project, please see https://github.com/halo-dev/halo/issues/4771 for more. 

Because the source code are using UTF-8 character encoding, the `javadoc`, `compileJava`, `compileTestJava` and `delombok` tasks will use the default character encoding GBK to handle the sources, which prevents the `:api:javadoc` task from running properly.

At the same time, we thank to @DaiYuANg for his first proposed solution in https://github.com/halo-dev/halo/pull/4517.

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/4771

#### Special notes for your reviewer:

Validate the result by executing command `./gradlew clean build -x check` on Windows environment.

#### Does this PR introduce a user-facing change?

```release-note
修复在部分 Windows 开发者无法正常构建 Halo 的问题
```
2023-11-12 04:30:08 +00:00
John Niang
21e975d60a Upgrade to Spring Boot 3.1.5 (#4758)
#### What type of PR is this?

/kind cleanup

#### What this PR does / why we need it:

Upgrade to Spring Boot 3.1.5. See https://github.com/spring-projects/spring-boot/releases/tag/v3.1.5 for more.

#### Does this PR introduce a user-facing change?

```release-note
升级依赖 Spring Boot 至 3.1.5
```
2023-10-20 03:24:44 +00:00