fix(compatibility): refresh Kyverno v1.19 support - #4140
Conversation
There was a problem hiding this comment.
🟡 Changes recommended
The Kyverno releases-table detection is more fragile than the parser (colon-sensitive match), and one new error message is misleading, which can cause avoidable scraper failures and harder debugging.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
Updates the Kyverno compatibility pipeline so the repo’s generated compatibility tables stay aligned with Kyverno’s current release documentation and Helm chart metadata, while hardening image discovery against non-string schema nodes.
Changes:
- Updated the Kyverno scraper to parse the current “Releases” documentation page and derive Kubernetes support ranges from the supported-release table.
- Added Kyverno v1.19.0 compatibility data (Kubernetes v1.33–v1.35, Helm chart v3.9.0) to the static compatibility YAML.
- Hardened chart image discovery to ignore non-string
imagenodes and only collect strings that look like real image references.
File summaries
| File | Description |
|---|---|
| utils/compatibility/utils.py | Prevents crashes during image extraction by only collecting string image values that match an image-like pattern. |
| utils/compatibility/scrapers/kyverno.py | Switches scraping to Kyverno’s releases page and parses the supported-release table to update compatibility info and chart version mapping. |
| static/compatibilities/kyverno.yaml | Adds Kyverno 1.19.0 entry with Kubernetes range, chart version, and discovered images. |
Review details
- Files reviewed: 3/3 changed files
- Comments generated: 2
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Soffi AI SummaryThis PR refreshes the Kyverno compatibility data and fixes a scraper crash, motivated by Kyverno's documentation restructuring and the release of v1.19.0. Scraper rewrite: The Kyverno compatibility scraper was updated to target the new Releases documentation page instead of the old installation page. The previous scraper looked for a "Compatibility Matrix" heading with a multi-row table; the current page presents a single-release summary table (key/value rows for "Supported Release" and "Kubernetes Versions Supported"), so the parsing logic was rewritten accordingly with v1.19.0 compatibility entry: The updated scraper produced a new entry for Kyverno v1.19.0, documenting support for Kubernetes 1.33–1.35 with Helm chart 3.9.0 and the full set of container images from that release. Crash fix in ChangesKyverno v1.19 compatibility update
Updated: 2026-09-08 08:45 UTC |
Greptile SummaryUpdates Kyverno compatibility discovery for the current Releases documentation format.
Confidence Score: 5/5The PR appears safe to merge with no actionable correctness, security, or repository-rule violations identified. The new parser matches the documented release-table structure, compatibility updates preserve older entries, chart and image metadata follow existing contracts, and non-string image nodes remain recursively traversable.
|
| Filename | Overview |
|---|---|
| utils/compatibility/scrapers/kyverno.py | Parses the current Kyverno supported-release table, resolves its Helm chart, and merges the resulting compatibility row. |
| utils/compatibility/utils.py | Prevents non-string image schema nodes from being inserted while preserving recursive traversal of their contents. |
| static/compatibilities/kyverno.yaml | Adds schema-compatible Kyverno 1.19.0 Kubernetes, chart, and image metadata. |
Reviews (1): Last reviewed commit: "fix(compatibility): update Kyverno relea..." | Re-trigger Greptile
|
Addressed both Copilot review comments in
Re-ran live Kyverno parsing, the no-colon fixture, Python compilation, and |
Summary
imageschema nodes instead of crashing on rendered CRDsSources:
This is a compatibility-table update under the contributor program described in the repository README.
AI assistance disclosure: this contribution was prepared with OpenAI ChatGPT/Codex under the GitHub account owner's authorization. Review follow-up will be handled through this account.
Test Plan
KUBE_VERSION=1.36and Helmimageschema objects and still returns real image stringsstatic/compatibilities/kyverno.yamlagainststatic/compatibilities/schema.jsonpython3 -m py_compileandgit diff --check