Skip to content

Commit c7e1398

Browse files
authored
Week 20: vuln fixes for ACFT images (hf-nlp/image/multimodal) (#5059)
Includes: acpt, acpt-draft, acft_image_huggingface, acft_image_medimageinsight_*, acft_image_medimageparse_finetune, acft_image_mmdetection, acft_video_mmtracking, acpt_image_framework_selector, acpt_multimodal.
1 parent a5e60e9 commit c7e1398

14 files changed

Lines changed: 277 additions & 132 deletions

File tree

assets/training/finetune_acft_hf_nlp/environments/acpt-draft/context/Dockerfile

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,35 @@
22
FROM mcr.microsoft.com/aifx/acpt/stable-ubuntu2204-cu126-py310-torch280:{{latest-image-tag:biweekly\.\d{6}\.\d{1}.*}}
33
USER root
44

5+
# USN-8227-1 (curl/libcurl4/libcurl3-gnutls), USN-8233-1 (libnghttp2-14),
6+
# USN-8251-1 (libpng16-16), USN-8229-1 (sed): Ubuntu 22.04 system packages
7+
# installed in the base image. The base image tag already pins to the latest
8+
# biweekly build, but it has not yet picked up these jammy-security updates.
9+
# Direct apt upgrade is the only fix path.
10+
RUN apt-get -y update && apt-get -y upgrade && \
11+
apt-get clean && rm -rf /var/lib/apt/lists/*
12+
13+
# GHSA-jp4c-xjxw-mgf9 (CVE-2026-6357): pip<26.1 self-update vulnerability.
14+
# pip has no parent package — it is shipped directly by the base image in both
15+
# conda envs (base: python3.13 / ptca: python3.10), so we upgrade both via
16+
# conda-forge and remove the leftover dist-info / conda-meta entries from the
17+
# old 26.0.1 so the SBOM scanner does not double-detect the vulnerable version.
18+
RUN conda install -y -n base -c conda-forge pip==26.1.1 && \
19+
conda install -y -n ptca -c conda-forge pip==26.1.1 && \
20+
rm -rf /opt/conda/lib/python3.13/site-packages/pip-26.0*.dist-info && \
21+
rm -f /opt/conda/conda-meta/pip-26.0*.json && \
22+
rm -rf /opt/conda/envs/ptca/lib/python3.10/site-packages/pip-26.0*.dist-info && \
23+
rm -f /opt/conda/envs/ptca/conda-meta/pip-26.0*.json && \
24+
conda clean -ay
25+
26+
# GHSA-qccp-gfcp-xxvc (CVE-2026-44431), GHSA-mf9v-mfxr-j63j (CVE-2026-44432):
27+
# urllib3 streaming-API vulnerabilities; patched in urllib3>=2.7.0. Only the
28+
# base conda env (python3.13) ships the vulnerable urllib3 2.6.3 as a transitive
29+
# dep (pulled by requests/other HTTP clients in the base image). No parent
30+
# package pins urllib3<2.7.0 with a tight upper bound, so a direct upgrade in
31+
# the base env is the simplest fix.
32+
RUN /opt/conda/bin/python -m pip install --no-cache-dir --upgrade 'urllib3>=2.7.0'
33+
534
COPY requirements.txt .
635
RUN pip install -r requirements.txt --no-cache-dir
736
# GHSA-jx93-g359-86wm, GHSA-hvwj-8w5g-28rg: sglang vulnerabilities; patched in >=0.5.10

assets/training/finetune_acft_hf_nlp/environments/acpt/context/Dockerfile

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,14 +30,20 @@ RUN pip install --upgrade --no-cache-dir 'fastmcp>=3.2.0'
3030
# Mako: transitive dep (mlflow → alembic → Mako); alembic has no version constraint; override needed (GHSA-v92g-xgxw-vvmm)
3131
# python-dotenv: transitive dep (fastmcp → python-dotenv); fastmcp 3.2.4 uses >=1.1.0; override needed (GHSA-mf9w-mj56-hr94)
3232
# onnx: azureml-acft-accelerator 0.0.89 caps onnx<=1.17.0; override needed for GHSA-3r9x-f23j-gc73, GHSA-hqmj-h5c6-369m etc.
33-
# skops: transitive dep (mlflow → skops); pip resolves to 0.11.0 which has CVE-2025-54412/54413/54886
33+
# skops: transitive dep (mlflow → skops); mlflow 3.12.0 declares 'skops<1' (loose floor), so pip
34+
# resolves to 0.11.0 which has CVE-2025-54412/54413/54886
3435
# (GHSA-m7f4-hrc6-fwg3, GHSA-4v6w-xpmh-gfgp, GHSA-378x-6p4f-8jgm); override to >=0.13.0
35-
RUN pip install --upgrade --no-cache-dir pyasn1==0.6.3 'python-multipart>=0.0.26' 'Mako>=1.3.11' 'python-dotenv>=1.2.2' 'onnx>=1.21.0' 'skops>=0.13.0'
36-
37-
# python-dotenv 1.2.1 in base conda env (python3.13) from ACPT base image needs upgrade (GHSA-mf9w-mj56-hr94)
38-
# parents in base env are anaconda-auth (no version pin) and pydantic-settings (>=0.21.0); both use loose floors
39-
# so upgrading parents does not pull in 1.2.2; direct override required until base image refreshes
40-
RUN conda run -n base python -m pip install --upgrade --no-cache-dir 'python-dotenv>=1.2.2'
36+
# urllib3: transitive dep brought in by many parents (requests, botocore, kubernetes, etc.); the closest
37+
# parent `requests` 2.34.2 declares `urllib3>=1.26,<3` (loose floor) so upgrading requests does
38+
# not pull urllib3>=2.7.0; direct override required for GHSA-mf9v-mfxr-j63j, GHSA-qccp-gfcp-xxvc
39+
RUN pip install --upgrade --no-cache-dir pyasn1==0.6.3 'python-multipart>=0.0.26' 'Mako>=1.3.11' 'python-dotenv>=1.2.2' 'onnx>=1.21.0' 'skops>=0.13.0' 'urllib3>=2.7.0'
40+
41+
# Base conda env (python3.13) overrides from ACPT base image:
42+
# - python-dotenv 1.2.1: parents anaconda-auth (no pin) and pydantic-settings (>=0.21.0) use loose
43+
# floors so upgrading them does not pull in 1.2.2; direct override (GHSA-mf9w-mj56-hr94).
44+
# - urllib3 2.6.3: parents requests (>=1.26,<3) and others use loose floors; direct override
45+
# required for GHSA-mf9v-mfxr-j63j and GHSA-qccp-gfcp-xxvc until base image refreshes.
46+
RUN conda run -n base python -m pip install --upgrade --no-cache-dir 'python-dotenv>=1.2.2' 'urllib3>=2.7.0'
4147

4248
# pip 26.0.1 in both base (python3.13) and ptca (python3.10) conda envs from ACPT base image needs upgrade
4349
# (GHSA-jp4c-xjxw-mgf9 / CVE-2026-6357; fixed in 26.1). pip is the package manager itself, bundled by conda;

assets/training/finetune_acft_hf_nlp/environments/acpt/context/requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ datasets==4.7.0
1010
evaluate==0.4.5
1111
optimum==1.27.0
1212
accelerate==1.7.0
13-
diffusers==0.33.1
13+
diffusers>=0.38.0
1414
onnxruntime==1.22.0
1515
rouge-score==0.1.2
1616
sacrebleu==2.4.0

assets/training/finetune_acft_image/environments/acft_image_huggingface/context/Dockerfile

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,17 +28,24 @@ RUN pip install -r requirements.txt --no-cache-dir
2828
# pytest: comes from the base ACPT image (not a hard runtime dep of any requirements.txt package;
2929
# azureml-acft-accelerator only pins pytest~=5.3.0 under extras_require [test]); base image ships
3030
# 7.4.3 which has GHSA-6w46-j5rx-g56g; no parent package to upgrade — explicit override required (>=9.0.3)
31-
RUN pip install --no-cache-dir --upgrade 'onnx>=1.21.0' pyasn1==0.6.3 'fastmcp>=3.2.0' 'Mako>=1.3.12' 'GitPython>=3.1.47' 'python-dotenv>=1.2.2' 'pillow>=12.2.0' 'pytest>=9.0.3'
31+
# urllib3: transitive dep of requests/botocore/etc.; parent packages use loose
32+
# floors (requests>=2.33 allows urllib3<3,>=1.21.1) so pip won't pull a newer
33+
# urllib3 on its own. Base image still ships 2.6.3 in the base conda env,
34+
# vulnerable to GHSA-qccp-gfcp-xxvc and GHSA-mf9v-mfxr-j63j; override to >=2.7.0.
35+
RUN pip install --no-cache-dir --upgrade 'onnx>=1.21.0' pyasn1==0.6.3 'fastmcp>=3.2.0' 'Mako>=1.3.12' 'GitPython>=3.1.47' 'python-dotenv>=1.2.2' 'pillow>=12.2.0' 'pytest>=9.0.3' 'urllib3>=2.7.0'
3236
# python-dotenv in base conda env: transitive dep of uvicorn[standard] (>=0.13); loose floor,
3337
# base image has 1.2.1 which has GHSA-mf9w-mj56-hr94; override to >=1.2.2
38+
# urllib3 in base conda env: same root cause as above — base ships 2.6.3 via
39+
# requests/botocore transitive chain; override to >=2.7.0 for
40+
# GHSA-qccp-gfcp-xxvc and GHSA-mf9v-mfxr-j63j.
3441
# pip: package installer itself — there is no parent package that brings it in.
3542
# Both conda envs (ptca python3.10, base python3.13) ship pip 26.0.1 from the base
3643
# image, vulnerable to GHSA-jp4c-xjxw-mgf9. No parent upgrade is possible — pip is
3744
# the package manager; direct override to >=26.1 in both envs is the only option.
3845
# We also remove the stale conda-meta json files for the old pip, otherwise SBOM
3946
# scanners (trivy) read them from /opt/conda*/conda-meta and continue to report
4047
# pip 26.0.1 even though the dist-info shows 26.1.x.
41-
RUN conda run -n base python -m pip install --no-cache-dir --upgrade 'python-dotenv>=1.2.2' 'pip>=26.1' && \
48+
RUN conda run -n base python -m pip install --no-cache-dir --upgrade 'python-dotenv>=1.2.2' 'urllib3>=2.7.0' 'pip>=26.1' && \
4249
rm -f /opt/conda/conda-meta/pip-26.0*.json && \
4350
python -m pip install --no-cache-dir --upgrade 'pip>=26.1' && \
4451
rm -f /opt/conda/envs/ptca/conda-meta/pip-26.0*.json

assets/training/finetune_acft_image/environments/acft_image_medimageinsight_adapter_finetune/context/Dockerfile

Lines changed: 28 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,13 @@ RUN apt-get -y install unzip
88

99
# pip 26.0.1 in both the base (py3.13) and ptca (py3.10) conda envs is
1010
# vulnerable to GHSA-jp4c-xjxw-mgf9 / CVE-2026-6357 (fixed in pip>=26.1).
11-
# pip is a build/install tool installed by conda from the upstream base image
12-
# (mcr.microsoft.com/aifx/acpt/stable-ubuntu2204-cu126-py310-torch280, biweekly
13-
# tag) — there is no parent Python package that brings it in, so an upstream
14-
# parent upgrade is not possible. The base ACPT image has not yet refreshed to
15-
# pip 26.1+ as of 2026-05-12, so we override here. We use `conda install`
16-
# (rather than `pip install --upgrade`) so that conda-meta JSON and
17-
# /opt/conda/pkgs cache are also updated, and we additionally remove stray
18-
# pip-26.0*.dist-info / conda-meta entries from prior pip self-upgrades that
19-
# conda does not track — otherwise the SBOM scanner re-flags them. Done before
20-
# the requirements install so requirements are installed with the patched pip.
11+
# pip is installed by conda from the upstream base image; there is no parent
12+
# Python package that brings it in, so an upstream parent upgrade is not
13+
# possible. The base ACPT image (biweekly.202605.2 as of 2026-05-19) still
14+
# ships pip 26.0.1 in both envs, so we override here. `conda install` is used
15+
# so conda-meta JSON and /opt/conda/pkgs cache are updated, and stale
16+
# pip-26.0*.dist-info / conda-meta entries from prior pip self-upgrades are
17+
# removed (conda does not track those, and the SBOM scanner re-flags them).
2118
RUN conda install -y -n base -c conda-forge pip==26.1.1 && \
2219
conda install -y -n ptca -c conda-forge pip==26.1.1 && \
2320
rm -rf /opt/conda/lib/python3.13/site-packages/pip-26.0*.dist-info && \
@@ -35,19 +32,29 @@ RUN pip install -r requirements.txt --no-cache-dir
3532
# `pip` resolves to the ptca env, so base-env overrides need /opt/conda/bin/pip.
3633
#
3734
# ptca env (py3.10):
38-
# pyasn1: mlflow -> databricks-sdk -> google-auth -> pyasn1-modules -> pyasn1;
39-
# pyasn1-modules pins pyasn1 with no version floor so pip may resolve <0.6.3 (CVE-2026-30922)
40-
# Mako: mlflow -> alembic -> Mako; alembic 1.18.4 uses unpinned `Requires-Dist: Mako`
41-
# python-dotenv: mlflow -> mlflow-skinny -> python-dotenv<2,>=0.19.0;
42-
# mlflow 3.11.1 (latest as of 2026-05-08) keeps that wide range so pip may resolve <1.2.2 (GHSA-mf9w-mj56-hr94)
35+
# pyasn1 (>=0.6.3, CVE-2026-30922): mlflow -> databricks-sdk -> google-auth
36+
# -> pyasn1-modules -> pyasn1; pyasn1-modules pins pyasn1 with no version
37+
# floor so pip may resolve <0.6.3.
38+
# Mako (>=1.3.11): mlflow -> alembic -> Mako; alembic 1.18.4 uses unpinned
39+
# `Requires-Dist: Mako`.
40+
# python-dotenv (>=1.2.2, GHSA-mf9w-mj56-hr94): mlflow -> mlflow-skinny ->
41+
# python-dotenv<2,>=0.19.0; mlflow 3.11.1 (latest as of 2026-05-19) keeps
42+
# that wide range.
43+
# (urllib3 is already 2.7.0 in the ptca env of biweekly.202605.2, so no
44+
# override is needed there.)
4345
#
4446
# base conda env (py3.13):
45-
# python-dotenv 1.2.1 is brought in by anaconda-auth 0.13.1 (`Requires-Dist: python-dotenv`,
46-
# no version pin) and pydantic-settings 2.12.0 (`python-dotenv>=0.21.0`); both are shipped
47-
# pre-installed in the base env from the upstream base image and neither parent ships a
48-
# tighter pin in its latest release as of 2026-05-08, so we patch python-dotenv directly
49-
# in the base env via /opt/conda/bin/pip.
47+
# python-dotenv 1.2.1 is brought in by anaconda-auth 0.14.4
48+
# (`Requires-Dist: python-dotenv`, no version pin) and pydantic-settings
49+
# 2.12.0 (`python-dotenv>=0.21.0`); both are pre-installed in the base env
50+
# from the upstream base image and neither parent ships a tighter pin in
51+
# its latest release as of 2026-05-19, so we patch python-dotenv directly.
52+
# urllib3 2.6.3 (GHSA-qccp-gfcp-xxvc / CVE-2026-44431,
53+
# GHSA-mf9v-mfxr-j63j / CVE-2026-44432; fixed in 2.7.0) is brought in by
54+
# `requests` (`urllib3<3,>=1.26`). requests 2.32.5 (latest as of
55+
# 2026-05-19) keeps that wide range so no parent upgrade can pull in the
56+
# patched urllib3 — override directly via /opt/conda/bin/pip.
5057
RUN pip install --no-cache-dir --upgrade 'pyasn1>=0.6.3' 'Mako>=1.3.11' 'python-dotenv>=1.2.2' \
51-
&& /opt/conda/bin/pip install --no-cache-dir --upgrade 'python-dotenv>=1.2.2'
58+
&& /opt/conda/bin/pip install --no-cache-dir --upgrade 'python-dotenv>=1.2.2' 'urllib3>=2.7.0'
5259

5360
RUN conda clean -a -y && rm -rf /opt/miniconda/pkgs/

assets/training/finetune_acft_image/environments/acft_image_medimageinsight_adapter_finetune/context/requirements.txt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,4 @@ opencv-python~=4.10.0.84
1212
pydicom~=2.4.0
1313
pandas==2.2.3
1414
mlflow==3.11.1
15-
setuptools==82.0.0
16-
filelock>=3.20.1
15+
setuptools==82.0.0

assets/training/finetune_acft_image/environments/acft_image_medimageinsight_embedding/context/Dockerfile

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,7 @@ FROM mcr.microsoft.com/aifx/acpt/stable-ubuntu2204-cu126-py310-torch280:{{latest
33

44
USER root
55

6-
# Install unzip and upgrade OS packages to fix vulnerabilities.
7-
# `apt-get -y upgrade` against the current ACPT base image (biweekly.202605.1) already pulls
8-
# openssh-client to 1:8.9p1-3ubuntu0.15 (USN-8222-1 fix) and keeps dotnet-{host,hostfxr,runtime}-8.0
9-
# at 8.0.26-0ubuntu1~22.04.1 (USN-8176-1 fix), so no explicit `apt-get install` overrides are
10-
# required. Verified via `apt-get install` returning "0 upgraded, 0 newly installed" for these
11-
# packages on top of the upgraded layer (build run ca42, 2026-05-08).
6+
# Install unzip and upgrade OS packages to pick up any pending security fixes from the base image.
127
RUN apt-get -y update && apt-get -y upgrade && apt-get -y install unzip && apt-get clean && rm -rf /var/lib/apt/lists/*
138

149
# Install required packages from pypi
@@ -24,6 +19,12 @@ RUN pip install --no-cache-dir mlflow==3.11.1
2419
RUN pip uninstall -y fastmcp mcp
2520

2621
# Override vulnerable transitive deps in the ptca env (Python 3.10) that pip won't auto-upgrade:
22+
# pip: shipped by the base image conda env at 26.0.1 (GHSA-jp4c-xjxw-mgf9). pip is a top-level
23+
# tool with no parent package; the base image hasn't been rebuilt with pip 26.1 yet, so we
24+
# upgrade it explicitly in both the ptca env and the system Python 3.13 env below.
25+
# urllib3: transitive dep via requests/botocore/etc. (requests pins urllib3<3,>=1.21.1 with a
26+
# loose floor); pip resolves to vulnerable 2.6.3 (GHSA-qccp-gfcp-xxvc, GHSA-mf9v-mfxr-j63j).
27+
# No parent release floors urllib3>=2.7.0, so explicit override is required.
2728
# Mako: transitive dep (mlflow → alembic 1.18.4 → Mako); alembic 1.18.4 declares "Mako" with no
2829
# version pin at all, so pip resolves to 1.3.10 which has GHSA-v92g-xgxw-vvmm. No parent
2930
# release floors Mako >= 1.3.11, so explicit override is the only fix.
@@ -35,9 +36,12 @@ RUN pip uninstall -y fastmcp mcp
3536
# azureml-mlflow, transformers, etc.). No parent package to bump — the base image pre-installs
3637
# pytest 7.4.3 and the ACPT base hasn't been rebuilt with a fix yet, so explicit override
3738
# to >=9.0.3 is required (GHSA-6w46-j5rx-g56g).
38-
RUN pip install --no-cache-dir --upgrade 'Mako>=1.3.11' 'GitPython>=3.1.47' 'pytest>=9.0.3'
39+
RUN pip install --no-cache-dir --upgrade 'pip>=26.1' 'urllib3>=2.7.0' 'Mako>=1.3.11' 'GitPython>=3.1.47' 'pytest>=9.0.3'
3940

40-
# Upgrade python-dotenv in the system Python(3.13)
41+
# Upgrade vulnerable packages in the system Python (3.13)
42+
# pip: base image ships 26.0.1 (GHSA-jp4c-xjxw-mgf9); pip is a top-level tool with no parent, override required.
43+
# urllib3: transitive dep via requests; loose floor (urllib3<3,>=1.21.1) resolves to vulnerable 2.6.3
44+
# (GHSA-qccp-gfcp-xxvc, GHSA-mf9v-mfxr-j63j). No parent release floors urllib3>=2.7.0, override required.
4145
# python-dotenv: transitive dep via pydantic-settings (>=0.21.0 floor); parent uses loose floor so base resolves to
42-
# vulnerable 1.2.1 (GHSA-mf9w-mj56-hr94); override to >=1.2.2
43-
RUN /opt/conda/bin/python3.13 -m pip install --no-cache-dir --upgrade 'python-dotenv>=1.2.2'
46+
# vulnerable 1.2.1 (GHSA-mf9w-mj56-hr94); override to >=1.2.2
47+
RUN /opt/conda/bin/python3.13 -m pip install --no-cache-dir --upgrade 'pip>=26.1' 'urllib3>=2.7.0' 'python-dotenv>=1.2.2'

assets/training/finetune_acft_image/environments/acft_image_medimageinsight_embedding_generator/context/Dockerfile

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,6 @@ FROM mcr.microsoft.com/aifx/acpt/stable-ubuntu2204-cu126-py310-torch280:{{latest
44
USER root
55

66
# Install unzip and upgrade OS packages to fix vulnerabilities.
7-
# `apt-get -y upgrade` against the current ACPT base image (biweekly.202605.1) already pulls
8-
# dotnet-{host,hostfxr,runtime}-8.0 to 8.0.26-0ubuntu1~22.04.1 (USN-8176-1 fix), so no
9-
# explicit `apt-get install` overrides are required.
107
RUN apt-get -y update && apt-get -y upgrade && apt-get -y install unzip && apt-get clean && rm -rf /var/lib/apt/lists/*
118

129
# pip 26.0.1 in both the ptca conda env (Python 3.10) and the /opt/conda base env (Python 3.13)
@@ -43,12 +40,19 @@ RUN pip install -r requirements.txt --no-cache-dir
4340
# skops: transitive dep (mlflow → mlflow-skinny 3.11.1 requires skops<1 with no minimum), pip
4441
# resolves to 0.11.0 which has CVE-2025-54412/54413/54886 (arbitrary code execution).
4542
# mlflow-skinny has no release that bumps the floor, so explicit override is required.
46-
RUN pip install --no-cache-dir --upgrade 'Mako>=1.3.11' 'GitPython>=3.1.47' 'pytest>=9.0.3' 'skops>=0.13.0'
43+
# urllib3: transitive dep (requests>=2.33.0 → urllib3<3,>=1.26); latest requests 2.34.2 still
44+
# declares `urllib3<3,>=1.26`, no parent package release floors urllib3>=2.7.0, so explicit
45+
# override is the only fix for GHSA-qccp-gfcp-xxvc (CVE-2026-44431) and GHSA-mf9v-mfxr-j63j
46+
# (CVE-2026-44432).
47+
RUN pip install --no-cache-dir --upgrade 'Mako>=1.3.11' 'GitPython>=3.1.47' 'pytest>=9.0.3' 'skops>=0.13.0' 'urllib3>=2.7.0'
4748

4849
# python-dotenv: pre-installed in the /opt/conda base env (Python 3.13) by the ACPT base image
4950
# at version 1.2.1 which has GHSA-mf9w-mj56-hr94. Not pulled in by any package in
5051
# requirements.txt nor their transitive deps, so the ptca env (Python 3.10) gets the
5152
# already-patched 1.2.2 from the base image's own upgrades. The /opt/conda Python 3.13 env
5253
# is unaffected by `pip install -r requirements.txt` (which targets ptca's pip), so an
5354
# explicit upgrade against /opt/conda/bin/python3.13 is required to reach >= 1.2.2.
54-
RUN /opt/conda/bin/python3.13 -m pip install --no-cache-dir --upgrade 'python-dotenv>=1.2.2'
55+
# urllib3: same situation — /opt/conda Python 3.13 ships urllib3 2.6.3 from the base image and
56+
# is not reached by ptca pip installs, so an explicit upgrade to >=2.7.0 is required to fix
57+
# GHSA-qccp-gfcp-xxvc and GHSA-mf9v-mfxr-j63j in this env.
58+
RUN /opt/conda/bin/python3.13 -m pip install --no-cache-dir --upgrade 'python-dotenv>=1.2.2' 'urllib3>=2.7.0'

0 commit comments

Comments
 (0)