Skip to content

Commit f9e84fc

Browse files
committed
security: update Jackson and logging coverage
1 parent e9318c5 commit f9e84fc

5 files changed

Lines changed: 44 additions & 4 deletions

File tree

.github/workflows/build_and_test.yml

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,18 @@ permissions:
1010

1111
jobs:
1212
test:
13-
name: Java ${{ matrix.java }}
13+
name: Java ${{ matrix.java }} / Logback ${{ matrix.logback }}
1414
runs-on: ubuntu-latest
1515
strategy:
1616
fail-fast: false
1717
matrix:
18-
java: ["8", "11"]
18+
include:
19+
- java: "8"
20+
logback: "1.3.16"
21+
- java: "11"
22+
logback: "1.3.16"
23+
- java: "11"
24+
logback: "1.5.38"
1925
steps:
2026
- name: Check out source
2127
uses: actions/checkout@v7
@@ -32,5 +38,6 @@ jobs:
3238
-DskipTests=false
3339
-Dcheckstyle.skip=false
3440
-Drat.skip=false
41+
-Dlogback.version=${{ matrix.logback }}
3542
-Dmaven.javadoc.skip=true
3643
-Dgpg.skip=true

README.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,24 @@ Capa is a rich-SDK implementation of Cloud Application APIs for Java. Applicatio
1616
- Maven 3.8.1 or later
1717
- A Capa SPI implementation for every capability used by the application
1818

19+
### Logging compatibility
20+
21+
The Java 8-compatible build pins Logback `1.3.16`. Upstream classifies the
22+
entire Logback 1.3.x line as end-of-life; maintained Logback 1.5.x releases
23+
require Java 11 or later. Applications that use the Capa Logback integration
24+
should choose one of these paths:
25+
26+
- On Java 11 or later, manage `logback-core` and `logback-classic` to `1.5.38`
27+
or a later compatible 1.5.x release. CI verifies the repository with
28+
`-Dlogback.version=1.5.38`.
29+
- On Java 8, use the actively maintained Log4j 2 integration where possible,
30+
or plan a Java 11 migration before accepting untrusted logging
31+
configuration.
32+
33+
See the [Logback download and support status](https://logback.qos.ch/download.html)
34+
for the current runtime requirements. Do not load logging configuration from
35+
untrusted sources.
36+
1937
## Add the SDK
2038

2139
Current repository version: `1.11.13.2.RELEASE`.

README_ZH.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,21 @@ Capa 是面向 Java 应用的富 SDK 模式 Cloud Application API 实现。应
1616
- Maven 3.8.1 或更高版本
1717
- 为应用实际使用的每项能力提供对应的 Capa SPI 实现
1818

19+
### 日志依赖兼容性
20+
21+
兼容 Java 8 的构建固定使用 Logback `1.3.16`。Logback 上游已经将整个
22+
1.3.x 系列标记为停止维护,仍受维护的 1.5.x 系列要求 Java 11 或更高版本。
23+
使用 Capa Logback 集成的应用应选择以下路径之一:
24+
25+
- Java 11 或更高版本:通过依赖管理将 `logback-core`
26+
`logback-classic` 更新到 `1.5.38` 或之后兼容的 1.5.x 版本。CI 使用
27+
`-Dlogback.version=1.5.38` 验证该组合。
28+
- Java 8:尽可能使用仍在维护的 Log4j 2 集成;如果应用会接收不可信的日志
29+
配置,应先迁移到 Java 11。
30+
31+
当前运行时要求以 [Logback 下载与支持状态](https://logback.qos.ch/download.html)
32+
为准。不要从不可信来源加载日志配置。
33+
1934
## 引入 SDK
2035

2136
当前仓库版本为 `1.11.13.2.RELEASE`

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@
8585
<reactor-core.version>3.3.22.RELEASE</reactor-core.version>
8686
<slf4j.version>1.7.21</slf4j.version>
8787
<grpc.version>1.39.0</grpc.version>
88-
<jackson.version>2.18.8</jackson.version>
88+
<jackson.version>2.18.9</jackson.version>
8989
<open.telemetry.version>1.62.0</open.telemetry.version>
9090
<junit.version>5.3.1</junit.version>
9191
<mockito-core.version>3.6.0</mockito-core.version>

sdk-springboot/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
<name>capa-sdk-springboot</name>
3131

3232
<properties>
33-
<jackson.version>2.18.8</jackson.version>
33+
<jackson.version>2.18.9</jackson.version>
3434
<okhttp.version>4.12.0</okhttp.version>
3535
<spring-framework.version>5.3.39</spring-framework.version>
3636
<springboot.version>2.7.18</springboot.version>

0 commit comments

Comments
 (0)