What's Changed
- RGD on Graph — unifying the composition engine (Implementation of KREP-024) by @jakobmoellerdev in #1355
- fix(graphengine): type dynamic-GVK collections as list(dyn), not any by @cheeseandcereal in #1414
- fix(graphengine): fail closed on malformed external-collection selectors by @cheeseandcereal in #1405
- fix(graphengine): report patch field conflicts as FieldManagerConflict; reject readyWhen on patch nodes by @cheeseandcereal in #1415
- feat: add plural form next to shortnames and categories as override option by @Skarlso in #1417
- Let new resource kinds work without restarting kro by @cheeseandcereal in #1424
- Retry collection member updates after transient API rejections by @cheeseandcereal in #1425
- Preserve CEL timestamp typing when publishing RGD schema values by @cheeseandcereal in #1427
- chore(fix): encode long instance-names and refactor node-id hashing by @Skarlso in #1392
- Keep conditional RGD children while their inputs are unready by @cheeseandcereal in #1426
- Keep inventory projection from suppressing wanted children by @cheeseandcereal in #1431
- docs: document the Graph API and restructure concepts for v0.10.0 by @cheeseandcereal in #1402
- Reject schema-only RGD duplicate identities before adopting objects by @cheeseandcereal in #1428
- chore: remove always true boolean value check by @Skarlso in #1438
- fix(graphengine): restore progressive object and array status by @cheeseandcereal in #1441
- fix(crd): Fail closed on schema changes by @tomasaschan in #1430
- docs: cut v0.10.0-rc.0 without promoting latest by @cheeseandcereal in #1443
- chore: fix the codegen checker by @Skarlso in #1446
- fix: surface tolerated collection update failed rejections for RGDs by @NicholasBlaskey in #1444
- perf(dag): Optimize cycle detection by only searching a subgraph by @jneisener in #1449
- feat(crd): Forward comparison options for versions by @tomasaschan in #1450
- Handle null feature gates when rendering aggregation RBAC by @cheeseandcereal in #1453
- Reject duplicate rendered identities in patch collections by @cheeseandcereal in #1454
- test: Guard status schemas for indexed array objects by @cheeseandcereal in #1455
- Test that valid author conditions survive sibling errors by @cheeseandcereal in #1456
- chore(deps): bump the npm-version-updates group across 2 directories with 10 updates by @dependabot[bot] in #1451
- Move environment shutdown guards into the unit-test tree by @cheeseandcereal in #1457
- chore(docs): add example for checksum/config annotation for auto restarting after configmap changes by @FalcoSuessgott in #1452
- docs: improve example for stable ordering on lists built from maps by @omus in #1439
- fix(graphengine): error on includeWhen that can never resolve by @michaelhtm in #1448
- KREP-009: Versioning support in kro by @jakobmoellerdev in #1461
- feat: make the watch cache-sync timeout configurable by @NicholasBlaskey in #1463
- Remove stale instance status fields after upgrading kro by @cheeseandcereal in #1458
- Prune completed instance templates while another resource is unresolved by @cheeseandcereal in #1460
- chore: add cheeseandcereal, NicholasBlaskey, Skarlso to kro-reviewers by @jlbutler in #1473
- chore(deps): bump the npm-security-updates group across 1 directory with 2 updates by @dependabot[bot] in #1433
- chore(deps-dev): bump the npm-version-updates group across 1 directory with 2 updates by @dependabot[bot] in #1469
- chore(deps): bump the actions-version-updates group across 1 directory with 2 updates by @dependabot[bot] in #1472
- chore(deps): bump the npm-security-updates group across 2 directories with 10 updates by @dependabot[bot] in #1478
- chore(deps): bump the npm-version-updates group across 1 directory with 4 updates by @dependabot[bot] in #1477
- chore(deps): bump the npm-security-updates group across 1 directory with 3 updates by @dependabot[bot] in #1479
- docs: fix broken concepts link in README by @mohsin0a in #1485
- chore(deps): bump vscode-languageclient from 10.1.2 to 11.0.0 in /tools/lsp/client by @dependabot[bot] in #1483
- Restore optional boolean conditions for RGDs by @cheeseandcereal in #1459
- feat: implement deletion policy per resource by @Skarlso in #1445
- Fix Graph cleanup after partial apply failures by @cheeseandcereal in #1491
- feat(schema): Constrain generated instance names by @tomasaschan in #1447
- Keep Graph patch target tracking stable during incomplete apply by @cheeseandcereal in #1490
- fix(cli): add --feature-gates flag to the kro CLI by @kumudhanrajan18 in #1496
- Nest instance name validation under metadata.validation by @tomasaschan in #1500
- chore(deps): refresh/bump dependencies by @cheeseandcereal in #1503
- fix(graph): commit watch set on hard apply failure to stop informer churn and hot loop by @NicholasBlaskey in #1465
- Fix Graph cleanup when child UIDs are missing by @cheeseandcereal in #1492
- chore(deps): bump Go to 1.27.3 by @cheeseandcereal in #1505
New Contributors
- @jneisener made their first contribution in #1449
- @FalcoSuessgott made their first contribution in #1452
- @mohsin0a made their first contribution in #1485
- @kumudhanrajan18 made their first contribution in #1496
Full Changelog: v0.9.4...v0.10.0