Skip to content

chore(release): 3.4.1 - #130

Draft
lelia wants to merge 6 commits into
dc-larsen/emudhra-ca-trustfrom
lelia/release-3.4.1
Draft

lelia wants to merge 6 commits into
dc-larsen/emudhra-ca-trustfrom
lelia/release-3.4.1

Conversation

@lelia

@lelia lelia commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

Draft. Do not merge yet. Staged release for the eMudhra intermediate CA fix. Stacked on #128; retarget to main once #128 merges.

What's in it

  • Everything in fix(docker): stop trusting the compromised eMudhra intermediate CAs #128: ca-certificates >= 20250419+deb13u1 in both images, certifi 2026.10.19, a certifi floor on heavy's system interpreter, and a Node 22.23.4 floor in both images.
  • Socket Python CLI 2.9.0 -> 2.11.3 in the heavy and app-tests images, and Socket Python SDK 3.6.0 -> 3.6.1 in uv.lock. Both require certifi>=2026.10.19; 2.11.3 also upgrades its own image's pip (Stop trusting the compromised eMudhra intermediate CAs socket-python-cli#415, #418). Relocked with uv 0.12.1, which keeps lock format revision 3 like main.
  • Trivy 0.73.0 -> 0.76.1, upstream's eMudhra release, built on Go 1.27.3 (SocketDev/trivy-dist#25). The image tag, TRIVY_VERSION, tests and docs are updated; the digest is a placeholder.
  • scripts/prep_release.py --version 3.4.1: version files, uv.lock, action.yml (socket-basics:3.4.1), README and docs. check_release_docs.py --check and sync_release_version.py --check pass.

Before this ships

Verification for the final build

On the published 3.4.1 and 3.4.1-heavy images, every client should fail certificate verification against both dv-g3b-emudhra.we-have-a-problem.com and dv-g3b-aaa-emudhra.we-have-a-problem.com:

docker run --rm --entrypoint sh ghcr.io/socketdev/socket-basics:3.4.1 -c 'H=dv-g3b-emudhra.we-have-a-problem.com; curl -sS -o /dev/null -w "curl %{http_code}\n" https://$H/; /socket-basics/.venv/bin/python -c "import requests; print(\"python\", requests.get(\"https://$H/\").status_code)"; node -e "fetch(\"https://$H/\").then(r=>console.log(\"node\",r.status),e=>console.log(\"node rejects\"))"; trivy image --download-db-only --db-repository $H/trivy-db 2>&1 | tail -1'

Local builds of #128's branch already pass this for the standard and heavy images (results in the #128 thread).

@lelia
lelia deployed to socket-firewall October 21, 2026 02:23 — with GitHub Actions Active
@lelia
lelia force-pushed the dc-larsen/emudhra-ca-trust branch from fe2451d to 8e82296 Compare October 21, 2026 02:51
@lelia
lelia force-pushed the lelia/release-3.4.1 branch from 42e477a to b387d57 Compare October 21, 2026 02:52
@lelia
lelia deployed to socket-firewall October 21, 2026 02:52 — with GitHub Actions Active
@lelia
lelia deployed to socket-firewall October 21, 2026 03:14 — with GitHub Actions Active
@lelia
lelia force-pushed the lelia/release-3.4.1 branch from 0b5ff6c to b781ad0 Compare October 21, 2026 20:39
@lelia
lelia deployed to socket-firewall October 21, 2026 20:39 — with GitHub Actions Active
@lelia
lelia deployed to socket-firewall October 21, 2026 20:40 — with GitHub Actions Active
@lelia
lelia deployed to socket-firewall October 21, 2026 20:42 — with GitHub Actions Active
@lelia
lelia deployed to socket-firewall October 21, 2026 20:42 — with GitHub Actions Active
lelia added 5 commits October 21, 2026 17:46
Stamps [Unreleased] as [3.4.1], bumps the version files and uv.lock, and
synchronizes the current-release references across README.md and docs/**.

Also bumps the Socket Python CLI in the heavy and app-tests images from 2.9.0
to 2.11.2, which carries the eMudhra CA fix for the CLI's own image.
Points all three images at the trivy-dist toolchain rebuild of v0.73.0 on Go
1.26.10 (SocketDev/trivy-dist#24). The digest is a placeholder until that
image is published.

check_core_tools now ranks -socket.N GHCR tags above their base version and
drops the suffix from the upstream Go module purl.
Upstream's v0.76.1 is built on Go 1.27.3, so Basics takes Socket's build of
it instead of a 0.73.0 toolchain rebuild (SocketDev/trivy-dist#25). The
digest stays a placeholder until that build publishes.
uv.lock moves once socketdev 3.6.1 is on PyPI.
@lelia
lelia force-pushed the lelia/release-3.4.1 branch from 73a58ee to b79d835 Compare October 21, 2026 21:46
@lelia
lelia deployed to socket-firewall October 21, 2026 21:47 — with GitHub Actions Active
@lelia
lelia deployed to socket-firewall October 21, 2026 21:47 — with GitHub Actions Active
2.11.3 requires certifi>=2026.10.19 and SDK 3.6.1, which requires it too.
Relocked with uv 0.12.1, the version the images use, which also restores
lock format revision 3.
@lelia
lelia deployed to socket-firewall October 21, 2026 21:49 — with GitHub Actions Active
@lelia
lelia deployed to socket-firewall October 21, 2026 21:49 — with GitHub Actions Active
@socket-security-staging

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updatedpypi/​socketdev@​3.6.0 ⏵ 3.6.198100100100100

View full report

@socket-security

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updatedpypi/​socketdev@​3.6.0 ⏵ 3.6.198100100100100

View full report

This branch was successfully deployed

1 active deployment
socket-firewall — b4cd6fe3 Deployed Oct 21, 2026 by lelia via python-sfw-smoke-enterprise #171
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant