1.61.0 - SDK Sidecar Restricted Security Context, GameServer Health Detection Fix, Fleet Rolling Update Stability, and Memory Leak Resolution.
This is the 1.61.0 release of Agones.
This release focuses on strengthening GameServer lifecycle reliability, hardening security for the SDK sidecar, and continuing internal code modernization. Key updates include a restricted-compatible security context for the SDK server sidecar, fixes for GameServer health detection and fleet auto scaling edge cases, a memory leak fix on GameServer deletion, a Helm-conditional fix for CRD patch metadata, and continued migration of the codebase to a new internal errors package. Together, these changes improve production stability for game server operators and keep the project’s build tooling current.
-
Helm 3 to Helm 4 Upgrade: Agones tooling and charts have been upgraded from Helm 3 to Helm 4. Operators managing Agones installations via Helm should ensure their deployment pipelines and Helm client versions are compatible with Helm 4.
-
Restricted-Compatible Security Context for SDK Sidecar: The SDK server sidecar now supports a security context compatible with Kubernetes’ restricted Pod Security Standard, making it easier for operators to run Agones in clusters that enforce strict security policies.
-
GameServer Health Detection Fix: GameServers are now correctly marked Unhealthy when the game container terminates but the Pod itself remains Running, closing a gap where crashed game processes could previously go undetected.
-
Memory Leak Fix on GameServer Deletion: Resolved a memory leak that occurred when a GameServer was deleted, improving controller stability over long-running clusters.
-
Fleet Rolling Update Fix: Active GameServerSet replica counts are now clamped at zero during fleet rolling updates, preventing invalid negative replica states during scale-down transitions.
-
E2E Test Stability on GKE Autopilot: SendTCP now retries TCP dialing on GKE Autopilot clusters, improving reliability for automated end-to-end test runs.
-
SDK Server maxItems Fix: The gameservers.lists.maxItems setting is now correctly plumbed through to the SDK server, ensuring configured list size limits are honored.
-
New Website Logo (Snapser): Welcome to Snapser! Their logo has been added to the Agones homepage showcasing organizations using Agones in production.
Breaking changes
- fix: gate x-kubernetes-patch-* CRD fields behind a Helm conditional by @markmandel in https://github.com/agones-dev/agones/pull/4698
- feat: upgrade helm from 3 to 4 by @lacroixthomas in https://github.com/agones-dev/agones/pull/4746
Implemented enhancements
- feat(#4668): restricted-compatible security context for the sdk sidecar by @GrowlyX in https://github.com/agones-dev/agones/pull/4718
Fixed bugs
- fix: mark GameServer Unhealthy when the game container terminates and the Pod stays Running by @GrowlyX in https://github.com/agones-dev/agones/pull/4663
- fix memory leak when delete game server by @txuna in https://github.com/agones-dev/agones/pull/4697
- Clamp active GameServerSet replicas at zero during fleet rolling updates by @Jacobbrewer1 in https://github.com/agones-dev/agones/pull/4706
- fix: use crates.io registry token for Rust SDK publishing by @indurireddy-TF in https://github.com/agones-dev/agones/pull/4693
- fix: plumb gameservers.lists.maxItems through to the SDK server by @markmandel in https://github.com/agones-dev/agones/pull/4729
- fix: move GameServer to Shutdown when the game container exits cleanly and the Pod stays Running by @GrowlyX in https://github.com/agones-dev/agones/pull/4737
Security fixes
- build: enable gosec, correctness linters, and testifylint by @markmandel in https://github.com/agones-dev/agones/pull/4696
Other
- contrib: enforce automated test coverage for all submissions by @markmandel in https://github.com/agones-dev/agones/pull/4675
- Preparation for Release v1.61.0 by @Sivasankaran25 in https://github.com/agones-dev/agones/pull/4687
- chore: upgrade website to Docsy 0.16.0 and restore the version lock by @markmandel in https://github.com/agones-dev/agones/pull/4669
- build: upgrade golangci-lint to v2.12.2 and migrate config by @markmandel in https://github.com/agones-dev/agones/pull/4676
- build: bump actions/stale from 10.4.0 to 11.0.0 by @dependabot[bot] in https://github.com/agones-dev/agones/pull/4666
- build: update dependencies in autoscaler-webhook example by @markmandel in https://github.com/agones-dev/agones/pull/4688
- build: ignore versioned 1-*.agones.dev URLs in htmltest by @markmandel in https://github.com/agones-dev/agones/pull/4695
- feat: use new errors pkg in pkg/gameservers/ by @lacroixthomas in https://github.com/agones-dev/agones/pull/4691
- test: Ignore https://development.agones.dev/ link by @markmandel in https://github.com/agones-dev/agones/pull/4700
- test: replace
assertwithrequirein e2e TestFleetStrategyValidation by @markmandel in https://github.com/agones-dev/agones/pull/4704 - build: bump browserslist from 4.28.1 to 4.28.8 in /sdks/nodejs in the npm_and_yarn group across 1 directory by @dependabot[bot] in https://github.com/agones-dev/agones/pull/4708
- feat: use new errors pkg in pkg/gameserverallocations/* by @lacroixthomas in https://github.com/agones-dev/agones/pull/4701
- Retry TCP dial in SendTCP only on GKE Autopilot by @markmandel in https://github.com/agones-dev/agones/pull/4709
- build: bump the go_modules group across 4 directories with 1 update by @dependabot[bot] in https://github.com/agones-dev/agones/pull/4707
- build: bump the go_modules group across 7 directories with 1 update by @dependabot[bot] in https://github.com/agones-dev/agones/pull/4717
- feat: use new errors pkg in pkg/cloudproduct/* by @lacroixthomas in https://github.com/agones-dev/agones/pull/4712
- feat: use new errors pkg in pkg/fleets/* by @lacroixthomas in https://github.com/agones-dev/agones/pull/4710
- feat: use new errors pkg in pkg/portallocator/* by @lacroixthomas in https://github.com/agones-dev/agones/pull/4714
- feat: use new errors pkg in pkg/gameserverset/* by @lacroixthomas in https://github.com/agones-dev/agones/pull/4703
- feat: use new errors pkg in pkg/metrics/* by @lacroixthomas in https://github.com/agones-dev/agones/pull/4713
- feat: stop using github.com/pkg/errors in build/* by @lacroixthomas in https://github.com/agones-dev/agones/pull/4724
- feat: use new errors pkg in pkg/apis/* by @lacroixthomas in https://github.com/agones-dev/agones/pull/4720
- feat: use new errors pkg in ./cmd/* by @lacroixthomas in https://github.com/agones-dev/agones/pull/4721
- feat: use new errors pkg in sdks/* by @lacroixthomas in https://github.com/agones-dev/agones/pull/4722
- PlayerTracking Removal: Delete Unit Tests by @markmandel in https://github.com/agones-dev/agones/pull/4719
- build: bump the go_modules group across 11 directories with 1 update by @dependabot[bot] in https://github.com/agones-dev/agones/pull/4732
- feat: stop using github.com/pkg/errors in examples/* by @lacroixthomas in https://github.com/agones-dev/agones/pull/4723
- Snapser: Logo addition by @ajinkya-apte in https://github.com/agones-dev/agones/pull/4736
- feat: use new errors pkg in pkg/fleetautoscalers/* by @lacroixthomas in https://github.com/agones-dev/agones/pull/4711
- build: enable modernize, minus the omitzero and newexpr analyzers by @markmandel in https://github.com/agones-dev/agones/pull/4735
- feat: use new errors pkg in pkg/sdkserver/* by @lacroixthomas in https://github.com/agones-dev/agones/pull/4715
- build: bump the npm_and_yarn group across 1 directory with 3 updates by @dependabot[bot] in https://github.com/agones-dev/agones/pull/4734
- feat: use new errors pkg in ./tests/* by @lacroixthomas in https://github.com/agones-dev/agones/pull/4725
- fix: scope test-go to sdks/go to avoid rust SDK build race by @markmandel in https://github.com/agones-dev/agones/pull/4739
- feat: use new errors pkg in pkg/util/* by @lacroixthomas in https://github.com/agones-dev/agones/pull/4716
- Update cmake link to always latest by @markmandel in https://github.com/agones-dev/agones/pull/4744
- test: remove PlayerTracking e2e tests by @markmandel in https://github.com/agones-dev/agones/pull/4741
- test: call t.Helper() in shared test helpers by @markmandel in https://github.com/agones-dev/agones/pull/4738
- fix: tolerate an existing allocator client secret when copying by @GrowlyX in https://github.com/agones-dev/agones/pull/4740
- chore: add new rule for errors in linter and agent by @lacroixthomas in https://github.com/agones-dev/agones/pull/4745
- build: bump go.opentelemetry.io/otel/sdk from 1.44.0 to 1.45.0 in /build/agones-bot in the go_modules group across 1 directory by @dependabot[bot] in https://github.com/agones-dev/agones/pull/4747
New Contributors
- @GrowlyX made their first contribution in https://github.com/agones-dev/agones/pull/4663
- @Jacobbrewer1 made their first contribution in https://github.com/agones-dev/agones/pull/4706
- @ajinkya-apte made their first contribution in https://github.com/agones-dev/agones/pull/4736
See CHANGELOG for more details on changes.
Images available with this release:
- us-docker.pkg.dev/agones-images/release/agones-controller:1.61.0
- us-docker.pkg.dev/agones-images/release/agones-sdk:1.61.0
- us-docker.pkg.dev/agones-images/release/agones-ping:1.61.0
- us-docker.pkg.dev/agones-images/release/agones-allocator:1.61.0
- us-docker.pkg.dev/agones-images/examples/allocation-endpoint-proxy:0.18
- us-docker.pkg.dev/agones-images/examples/autoscaler-webhook:0.23
- us-docker.pkg.dev/agones-images/examples/cpp-simple-server:0.27
- us-docker.pkg.dev/agones-images/examples/crd-client:0.26
- us-docker.pkg.dev/agones-images/examples/nodejs-simple-server:0.11
- us-docker.pkg.dev/agones-images/examples/rust-simple-server:0.14
- us-docker.pkg.dev/agones-images/examples/simple-game-server:0.43
- us-docker.pkg.dev/agones-images/examples/supertuxkart-example:0.24
- us-docker.pkg.dev/agones-images/examples/unity-simple-server:0.3
- us-docker.pkg.dev/agones-images/examples/xonotic-example:2.8
Helm chart available with this release:
Last modified September 24, 2026: Release v1.61.0 (#4750) (11cccfd)Make sure to add our stable helm repository using
helm repo add agones https://agones.dev/chart/stable