mirror of
https://github.com/snapotter-hq/SnapOtter.git
synced 2026-08-03 07:46:42 +02:00
fix: CI failures — QR test timeout and Python dependency CVEs
- Increase QR generate max-size test timeout to 120s (10000x10000 PNG generation exceeds 30s default on CI runners) - Update Pillow 11.1.0 → >=12.2.0 (CVE-2026-25990, CVE-2026-40192) - Update rembg 2.0.62 → >=2.0.75 (CVE-2026-40086) - Update opencv-python-headless to flexible range >=4.10,<4.12 - Ignore CVE-2024-27763 in pip-audit (basicsr transitive dep from realesrgan, no fix available upstream) - Align requirements-gpu.txt and Dockerfile with same versions
This commit is contained in:
@@ -87,7 +87,7 @@ jobs:
|
|||||||
python-version: "3.11"
|
python-version: "3.11"
|
||||||
|
|
||||||
- run: pip install pip-audit
|
- run: pip install pip-audit
|
||||||
- run: pip-audit -r packages/ai/python/requirements.txt
|
- run: pip-audit -r packages/ai/python/requirements.txt --ignore-vuln CVE-2024-27763
|
||||||
|
|
||||||
build:
|
build:
|
||||||
name: Build
|
name: Build
|
||||||
|
|||||||
+2
-2
@@ -185,9 +185,9 @@ RUN --mount=type=cache,target=/root/.cache/pip \
|
|||||||
python3 -m venv /opt/venv && \
|
python3 -m venv /opt/venv && \
|
||||||
/opt/venv/bin/pip install --upgrade pip && \
|
/opt/venv/bin/pip install --upgrade pip && \
|
||||||
/opt/venv/bin/pip install \
|
/opt/venv/bin/pip install \
|
||||||
Pillow==11.1.0 \
|
"Pillow>=12.2.0,<13.0.0" \
|
||||||
numpy==1.26.4 \
|
numpy==1.26.4 \
|
||||||
opencv-python-headless==4.10.0.84
|
"opencv-python-headless>=4.10.0,<4.12.0"
|
||||||
|
|
||||||
# On-demand AI feature installer and manifest
|
# On-demand AI feature installer and manifest
|
||||||
COPY docker/feature-manifest.json /app/docker/feature-manifest.json
|
COPY docker/feature-manifest.json /app/docker/feature-manifest.json
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
rembg==2.0.62
|
rembg>=2.0.75,<2.1.0
|
||||||
realesrgan==0.3.0
|
realesrgan==0.3.0
|
||||||
paddleocr==2.9.1
|
paddleocr==2.9.1
|
||||||
paddlepaddle-gpu==3.0.0
|
paddlepaddle-gpu==3.0.0
|
||||||
mediapipe==0.10.21
|
mediapipe==0.10.21
|
||||||
onnxruntime-gpu==1.20.1
|
onnxruntime-gpu==1.20.1
|
||||||
numpy==1.26.4
|
numpy==1.26.4
|
||||||
Pillow==11.1.0
|
Pillow>=12.2.0,<13.0.0
|
||||||
opencv-python-headless==4.10.0.84
|
opencv-python-headless>=4.10.0,<4.12.0
|
||||||
codeformer-pip==0.0.4
|
codeformer-pip==0.0.4
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
rembg[cpu]==2.0.62
|
rembg[cpu]>=2.0.75,<2.1.0
|
||||||
realesrgan==0.3.0
|
realesrgan==0.3.0
|
||||||
paddleocr[doc-parser]>=3.4.0,<3.5.0
|
paddleocr[doc-parser]>=3.4.0,<3.5.0
|
||||||
paddlepaddle>=3.0.0,<3.1.0
|
paddlepaddle>=3.0.0,<3.1.0
|
||||||
mediapipe==0.10.21
|
mediapipe==0.10.21
|
||||||
onnxruntime==1.20.1
|
onnxruntime==1.20.1
|
||||||
numpy==1.26.4
|
numpy==1.26.4
|
||||||
Pillow==11.1.0
|
Pillow>=12.2.0,<13.0.0
|
||||||
opencv-python-headless==4.10.0.84
|
opencv-python-headless>=4.10.0,<4.12.0
|
||||||
codeformer-pip==0.0.4
|
codeformer-pip==0.0.4
|
||||||
|
|||||||
@@ -460,7 +460,7 @@ describe("QR Generate", () => {
|
|||||||
expect(res.statusCode).toBe(200);
|
expect(res.statusCode).toBe(200);
|
||||||
const result = JSON.parse(res.body);
|
const result = JSON.parse(res.body);
|
||||||
expect(result.processedSize).toBeGreaterThan(0);
|
expect(result.processedSize).toBeGreaterThan(0);
|
||||||
});
|
}, 120_000);
|
||||||
|
|
||||||
it("generates QR with transparent background (3-char hex)", async () => {
|
it("generates QR with transparent background (3-char hex)", async () => {
|
||||||
const res = await app.inject({
|
const res = await app.inject({
|
||||||
|
|||||||
Reference in New Issue
Block a user