Releases: k8snetworkplumbingwg/whereabouts
v0.8.1
v0.9.0
This release introduces Fast Node Slice IPAM, a significant step forward in improving IP allocation performance and scalability for large clusters, along with various fixes, enhancements, and dependency updates.
Fast Node Slice IPAM
Adds a new optional IPAM strategy using NodeSlicePool custom resources for more efficient, per-node IP range assignment.
Key design points:
Enables per-node slice allocation via a shared networkName across net-attach-defs.
Supports IP range partitioning and lease tracking on a per-node basis.
Works transparently when enabled in the IPAM config.
Learn more in doc/proposals/fast_ipam_by_node.md
.
- 🛠 Fixes and Improvements
- 🧠 Leader election fix for garbage collection path (#556)
- 📦 Token and CA reload: Watches and refreshes kubeconfig credentials dynamically.
- 🧪 E2E test improvements: Timeout tuning, NodeSlice test isolation, and dev tooling notes.
- 🛠️ Helm chart: Added Helm chart and chart release workflow with CRDs and configurable options.
- 🔧 General bug fixes for log formatting, host name resolution, range handling, and more.
- 📦 Dependency Updates
- ✅ Bumped Kubernetes and CNI plugin libraries to recent versions.
- 🔐 Addressed CVEs and enhanced security via updated Go modules (e.g., x/net, gomega, gocron, etc.)
- 🔄 Automated workflows updated via GitHub Actions and Dependabot (e.g., Trivy, Helm setup, Revive linter).
v0.8.0
Includes a number of fixes
#485: Skip pods marked for deletion
#480: Align api calls timeouts cronjob ip reconciler
#471: Return previous IP allocation for add cmd
#467: Use IP to identify orphaned allocation to be deleted
Also #479 (which improves kind in the e2e tests)
Big shout out to @mlguerrero12 for focus on release quality and providing a LOT of critical fixes.
v0.7.0
What's Changed
- api: re-gen files to humor verify-codegen stages by @maiqueb in #406
- Update containernetworking deps by @manuelbuil in #408
- build(deps): bump crazy-max/ghaction-docker-meta from 1 to 4 by @dependabot in #336
- build(deps): bump actions/setup-go from 1 to 4 by @dependabot in #338
- build(deps): bump tj-actions/changed-files from 35 to 37 by @dependabot in #358
- build(deps): bump morphy2k/revive-action from 2.4.1 to 2.5.2 by @dependabot in #333
- build(deps): bump docker/login-action from 1 to 2 by @dependabot in #334
- build(deps): bump tj-actions/changed-files from 35 to 41 in /.github/workflows by @dependabot in #410
- build(deps): bump docker/setup-qemu-action from 2 to 3 by @dependabot in #418
- build(deps): bump github/codeql-action from 2 to 3 by @dependabot in #419
- build(deps): bump tj-actions/changed-files from 41 to 42 by @dependabot in #420
- build(deps): bump actions/checkout from 2 to 4 by @dependabot in #426
- build(deps): bump docker/login-action from 2 to 3 by @dependabot in #427
- Use newer contianernetworking/cni 100 type by @manuelbuil in #411
- Migrate to go1.21 by @manuelbuil in #428
- build(deps): bump github.com/onsi/gomega from 1.30.0 to 1.31.1 by @dependabot in #417
- build(deps): bump docker/build-push-action from 2 to 5 by @dependabot in #421
- build(deps): bump docker/setup-buildx-action from 2 to 3 by @dependabot in #422
- build(deps): bump actions/setup-go from 4 to 5 by @dependabot in #424
- build(deps): bump morphy2k/revive-action from 2.5.2 to 2.5.7 by @dependabot in #429
- build(deps): bump gomodules.xyz/jsonpatch/v2 from 2.2.0 to 2.4.0 by @dependabot in #414
- build(deps): bump crazy-max/ghaction-docker-meta from 4 to 5 by @dependabot in #425
- build(deps): bump github.com/go-co-op/gocron/v2 from 2.1.0 to 2.2.5 by @dependabot in #434
- build(deps): bump github.com/fsnotify/fsnotify from 1.5.4 to 1.7.0 by @dependabot in #435
- build(deps): bump tj-actions/changed-files from 42 to 43 by @dependabot in #440
- Bump github.com/imdario/mergo from 0.3.12 to 0.3.16 by @manuelbuil in #430
- Update k8s deps by @manuelbuil in #441
- build(deps): bump tj-actions/changed-files from 43 to 44 by @dependabot in #445
- build(deps): bump google.golang.org/protobuf from 1.30.0 to 1.33.0 by @dependabot in #439
- build(deps): bump github.com/onsi/gomega from 1.31.1 to 1.32.0 by @dependabot in #453
- build(deps): bump github.com/go-co-op/gocron/v2 from 2.2.5 to 2.2.9 by @dependabot in #449
- build(deps): bump k8s.io/api from 0.29.2 to 0.29.3 by @dependabot in #448
- Bump net-attach to v1.7 by @manuelbuil in #452
New Contributors
- @manuelbuil made their first contribution in #408
Full Changelog: v0.6.3...v0.7.0
Whereabouts v0.6.3
What's Changed
- Add overlapping ranges check to network_name feature by @andreaskaris in #355
- Improve AssignmentError message by @andreaskaris in #366
- IterateForAssignment: Properly handle invalid syntax for exclude range by @andreaskaris in #365
- Denormalize IP name before checking if pod is alive by @nicklesimba in #360
- Rechecking pending Pods (conflict resolved) by @nicklesimba in #375
- update golang.org/x/net to v0.17.0 by @zshi-redhat in #390
- Configurable cron schedule for reconciler by @maiqueb in #398
- Corrects name for configmap in extended config docs by @dougbtv in #402
New Contributors
- @zshi-redhat made their first contribution in #390
Full Changelog: v0.6.2...v0.6.3
Whereabouts v0.6.2
Updates including fix to the the spec.nodeName issue.
Whereabouts v0.6.1
Includes various fixes including the ipv6 validation fix #297
Whereabouts v0.6: Dual stack / multiple IP assignment
Includes feature from #237 -- with many thanks to @Ayush21298 ! 🎉
Whereabouts v0.5.4
References latest stable image in deployment manifest. (See: #252)
Whereabouts 0.5.3
This is the golang 1.16 release. Upcoming versions will utilized golang 1.17.