Features
- drain and volume detachment status conditions (#1876) #1876 (Jason Deal)
- configure CRD status operator with larger histogram buckets (#2328) #2328 (Aidan Rowe)
- support auto relaxing min values (#2299) #2299 (Saurav Agarwalla)
Bug Fixes
- show the cron parse error to users to allow them to debug (#2258) #2258 (Todd Neal)
- Correctly build nodepool mapping for complex clusters (#2263) #2263 (DerekFrank)
- fail open for missing nodeclaims in termination (#2266) #2266 (Jason Deal)
- Fix node owner reference update (#2274) #2274 (Jonathan Innis)
- Fix bug with MarkForDeletion before creating replacements (#2300) #2300 (Jonathan Innis)
- add helm rbac for kwok-provider to update finalizers (#2336) #2336 (Max Cao)
- Fix re-retrieving object on retry (#2337) #2337 (Jonathan Innis)
- Fix overriding error with patch call (#2338) #2338 (Jonathan Innis)
- add missing rlock to disruption queue (#2348) #2348 (Derek Frank)
- no longer allow the same hostname to take multiple capacity (#2356) #2356 (Derek Frank)
- update provider ID to ensure that Cloud Provider tests pass (#2363) #2363 (Saurav Agarwalla)
- remove unsupported capacity_type label from karpenter_nodeclaims… (#2364) #2364 (Saurav Agarwalla)
- update deletionTimestamp on terminating pods when after nodeDeletionTimestamp (#2316) #2316 (cosimomeli)
- flakiness in expiration tests (#2366) #2366 (Saurav Agarwalla)
Documentation
- Add Bizfly Cloud provider (#2303) #2303 (Lê Minh Quân)
- Add Oracle Cloud Infrastructure (OCI) provider (#2342) #2342 (Daniel Lopes)
Performance Improvements
- Don't deep-copy nodes and nodeclaims in our synced check (#2260) #2260 (Jonathan Innis)
- Perform quick checks in node health first (#2264) #2264 (Jonathan Innis)
- Limit GetInstanceTypes() calls per-NodeClaim (#2271) #2271 (Jonathan Innis)
- Parallelize disruption execution actions (#2270) #2270 (Jonathan Innis)
- Be more resilient to deletion failures in disruption controller (#2272) #2272 (Jonathan Innis)
- Refactor the eviction queue to be multithreaded (#2252) #2252 (Derek Frank)
- multithreaded orchestration queue (#2293) #2293 (Derek Frank)
- Reduce multiple patch calls in instance termination (#2324) #2324 (Jonathan Innis)
Tests
- Add nodeclaim name when you have garbage collection (#2333) #2333 (Amanuel Engeda)
- allow e2e tests to output junit report (#2334) #2334 (Max Cao)
- Bump the termination time for the deletion timestamp (#2367) #2367 (Amanuel Engeda)
Chores
- Fix getting current script directory in install-kwok.sh (#2262) #2262 (Jonathan Innis)
- Update pod metrics when pod is completed (#2259) #2259 (Jigisha Patil)
- deps: bump the go-deps group with 2 updates (#2277) #2277 (dependabot[bot])
- Ensure we can stand up multiple partitions with kwok (#2283) #2283 (Jonathan Innis)
- Inject resources into Kwok through a patch (#2285) #2285 (Jonathan Innis)
- Update NodeClaim E2E test to only replace one status condition (#2284) #2284 (Amanuel Engeda)
- Avoid validating admission policy for clusters older then 1.30 (#2289) #2289 (Amanuel Engeda)
- deps: bump the go-deps group with 2 updates (#2295) #2295 (dependabot[bot])
- bump go version to 1.24.4 (#2298) #2298 (Derek Frank)
- Only log that the command succeeded when it actually did (#2302) #2302 (Jonathan Innis)
- Bump lifecycle cache expiration to one hour (#2307) #2307 (Jonathan Innis)
- Use cluster state to check replacement NodeClaim existence (#2308) #2308 (Jonathan Innis)
- deps: bump github.com/samber/lo from 1.50.0 to 1.51.0 in the go-deps group (#2315) #2315 (dependabot[bot])
- bump operatorpkg (#2314) #2314 (Jigisha Patil)
- deps: bump the k8s-go-deps group across 1 directory with 4 updates (#2317) #2317 (dependabot[bot])
- Refactor Orchestration Queue and Handle Mark/Unmark Deletion in Queue (#2305) #2305 (Jonathan Innis)
- deps: bump the k8s-go-deps group with 7 updates (#2326) #2326 (dependabot[bot])
- deps: bump sigs.k8s.io/yaml from 1.4.0 to 1.5.0 in the k8s-go-deps group (#2339) #2339 (dependabot[bot])
- deps: bump github.com/docker/docker from 28.2.2+incompatible to 28.3.0+incompatible in the go-deps group (#2340) #2340 (dependabot[bot])
- promote ReservedCapacity feature gate to beta (#2365) #2365 (Jason Deal)