Sonny 0.3.6
Published .
Source commit b29253d885708f85aa38975ad7e6ad91dcd9ebc0.
Download release JSON for this version's installer URLs, byte sizes and SHA-256 hashes.
Downloads and verification
This is an archived release. Its download links require GitLab project access. File hashes and sizes were checked against the release checksum manifest and package metadata; anonymous availability and signature verification are not claimed.
This release had no attached downloads. These files were recovered from its versioned package registry; their upload pipelines match the release tag and source commit. Download links address individual package files and require GitLab access.
Choose the artifact for your operating system and architecture. Links marked “GitLab access required” need access to the Sonny release project. Public installers and archives use the same download host as the release notifications.
SHA-256 checksums (GitLab access required) · No checksum signature bundle was attached to this historical release. A matching hash checks file integrity. Verify the signature before relying on publisher identity; this page's metadata importer does not perform that verification.
sonny-api_0.3.6_linux_amd64.tar.gzarchive · linux / amd64 · 10989097 bytes · GitLab access required
SHA-256:f378822b967649c8c4ff7b81d1846260226040516740d75594ff727ff58f8f60sonny-api_0.3.6_linux_arm64.tar.gzarchive · linux / arm64 · 9996200 bytes · GitLab access required
SHA-256:0c6b27bda6d6482bf900b7a211c36346a8e3fae49b1266f767c7667e43538b67sonny_0.3.6_darwin_amd64.tar.gzarchive · darwin / amd64 · 19065756 bytes · GitLab access required
SHA-256:8f0df87571d3969e00c9f64c75cf42b0c003527432f9ba58c266ecb5f257f0a8sonny_0.3.6_darwin_arm64.tar.gzarchive · darwin / arm64 · 17950903 bytes · GitLab access required
SHA-256:bbbbd53a5add4f523c3a4a422ac9896377a379f751a85d465c06cb2b4f70c210sonny_0.3.6_linux_amd64.apkinstaller · linux / amd64 · 30874485 bytes · GitLab access required
SHA-256:21ca970201bc67a98113d59abf35bf7d12b2b9c2fa417332015fb50f37682855sonny_0.3.6_linux_amd64.debinstaller · linux / amd64 · 29596636 bytes · GitLab access required
SHA-256:4a8cd6553b7fc6858914ec5adf0d7d77978afa569234cfba9e57c3bfe64819bdsonny_0.3.6_linux_amd64.rpminstaller · linux / amd64 · 29556824 bytes · GitLab access required
SHA-256:d4df484246fc85d2eedd7ec1bd11bd87e11808e14a6e263b40865a323657f47asonny_0.3.6_linux_amd64.tar.gzarchive · linux / amd64 · 18624838 bytes · GitLab access required
SHA-256:3b89cab355feeef39832ca4aa7be88a16cd03b68e16da6e99c896c0701ecc3c1sonny_0.3.6_linux_arm64.apkinstaller · linux / arm64 · 28029634 bytes · GitLab access required
SHA-256:0fcfca1678673fe2ccba46898b712ee1731c5a77612fd9d6895cd8bd9c53e245sonny_0.3.6_linux_arm64.debinstaller · linux / arm64 · 27061738 bytes · GitLab access required
SHA-256:6f66ae70ac6fdabc0936d0a92bca165382c99fb88b7b142132de42b96c983353sonny_0.3.6_linux_arm64.rpminstaller · linux / arm64 · 26967682 bytes · GitLab access required
SHA-256:597285d7f1d0fee0076d5dd251cd13dabeabac26b30d9d9f5f7e7c10993ec53csonny_0.3.6_linux_arm64.tar.gzarchive · linux / arm64 · 17081634 bytes · GitLab access required
SHA-256:b0aad59b22c06d26f6ce4ab639799558cc3e5c38d13d9fa4d6c4a6fe7ebb87bcchecksums.txtchecksums · 1156 bytes · GitLab access required
SHA-256:504916b2b68b86d27fba0fcc974c7f9528d414e45b1acc056987242cd240e68f
Release notes
v0.3.6 — CI heal: PAM build tag + SAST allow_failure + client mTLS flags
This release picks up where v0.3.5’s tag pipeline failed: the shipped binaries from v0.3.5 never made it to apt.spyder.org because the mesh/identity/pam cgo path needs <security/pam_appl.h>, which the golang:1.26 and golangci-lint:v2.11.3 CI containers don’t have. v0.3.6 fixes that without losing the PAM feature.
Changes since v0.3.5:
fix(mesh): cli mesh serve missed new Config defaults; harden systemd unit. runMeshServeWithContext now starts from node.DefaultConfig() so the sub-projects #1/#2/#6 fields (TrustDomain, SvcPrincipalDir, AuthzPolicyPath, …) get their documented defaults; without this, –enable-tls failed with “trust domain: trust domain is missing”.
feat(mesh): client mTLS flags on sonny mesh subcommands. Five new persistent flags on the mesh parent (–client-cert, –client-key, –client-ca, –client-key-pin, –server-name) plus meshconn.ConnectWithCreds + TLSConfig. Verified end-to-end on lothiriel: server with self-signed SPIFFE cert + client with –client-* flags → mesh nodes RPC returns the live node list through the full mTLS + identity-extraction + authz interceptor chain.
fix(ci): gate PAM cgo behind
pambuild tag. CI containers lack libpam-dev; defaultgo test ./...was failing to build pam_cgo.go and cascading build failures into mesh/node, mesh/bridge, mesh/mtls test compile, mesh/privsep test compile. pam_cgo.go now requirescgo && pam; pam_stub.go binds when!cgo || !pam. Default test runs use the stub. Production builds enable-tags pam(post-v1 wiring).fix(ci): allow_failure on gitlab-advanced-sast. The GitLab bundled SAST analyzer silently produces no gl-sast-report.json, failing the upload step. semgrep + gosec + govulncheck + dependency-scanning still gate the pipeline.
style(cli/mesh): apply gofumpt to satisfy CI go-lint.
Verified: pipeline #210 GREEN (24min, all blocking jobs pass).