Summary
Add support for the modern events.k8s.io/v1 Event API alongside the existing core/v1 Event.
Motivation
The events.k8s.io/v1 API is the current/preferred Event API. The library currently uses core/v1 which still works but is the legacy API. The modern API has a different structure (uses regarding/related instead of involvedObject, note instead of message, etc.).
Design Considerations
Naming conflict: Both versions use the kind name Event. Options:
- Make
K8sEvent version-aware via setDefaultVersion() (preferred — mechanism already exists)
- Create a separate
K8sModernEvent class (ugly but unambiguous)
The setDefaultVersion() approach would require some accessor methods to be version-aware since field structures differ between the two API versions.
Effort: Small-Medium (mostly due to version-aware accessors)
Key Files
src/Kinds/K8sEvent.php (modify to support both versions)
Triage update (2026-09-02)
Promoted to Tier 2. The current K8sEvent is core/v1-specific and writes legacy involvedObject; this issue is the production-completeness path for the modern stable Event API.
Summary
Add support for the modern
events.k8s.io/v1Event API alongside the existingcore/v1Event.Motivation
The
events.k8s.io/v1API is the current/preferred Event API. The library currently usescore/v1which still works but is the legacy API. The modern API has a different structure (usesregarding/relatedinstead ofinvolvedObject,noteinstead ofmessage, etc.).Design Considerations
Naming conflict: Both versions use the kind name
Event. Options:K8sEventversion-aware viasetDefaultVersion()(preferred — mechanism already exists)K8sModernEventclass (ugly but unambiguous)The
setDefaultVersion()approach would require some accessor methods to be version-aware since field structures differ between the two API versions.Effort: Small-Medium (mostly due to version-aware accessors)
Key Files
src/Kinds/K8sEvent.php(modify to support both versions)Triage update (2026-09-02)
Promoted to Tier 2. The current
K8sEventis core/v1-specific and writes legacyinvolvedObject; this issue is the production-completeness path for the modern stable Event API.