This release contains a mix of new features, performance improvements, and bugfixes. Notably:
- Non-static arm64 executables for linux and darwin, supporting Wasm evaluation
- Performance improvements to the formatter, compiler, and runtime
- A new
--fail-on-emptyflag foropa test - Support for
IS NOT NULLquery statements in the Compile API
Non-static OPA binaries for linux/arm64 and darwin/arm64
Starting with this release, OPA will ship non-static arm64 executables for linux and darwin.
These binaries have support for Wasm evaluation.
Furthermore, the openpolicyagent/opa:latest docker image is a multi-platform image with arm64 support.
Runtime, Tooling
- cmd: Add
opa test --fail-on-emptyto allow making bad-ror empty folders fail (#7943) reported and authored by @grosser - format: Performance improvements in formatter (#7967) authored by @anderseknert
- repl: Check usage of
withkeyword (#7942) authored by @sspaink - server/failtracer: don't assume only being fed two-elem calls (#7995) authored by @srenatus
- storage: Improve performance of storage operations (#7957) authored by @anderseknert
- storage: Some small improvements to inmem storage (#7944) authored by @anderseknert
- util: Fix race condition in
ReadMaybeCompressedBody(#7966) authored by @anderseknert
Compiler, Topdown and Rego
- ast: Fix
undeclarederror when printing nested comprehension (#7647) authored by @schmitd reported by @charlesdaniels - ast: Raise parse error on infix operator in rule name (#7433) authored by @mmzzuu
- ast: Refactor hash key equality function (#7969) authored by @anderseknert
- ast,topdown: Ref String() and greatly improved builtin lookup cost (#7961) authored by @anderseknert
- compile: Add support for "any value at all", as IS NOT NULL (#7998) authored by @srenatus
- eval: Lazy init of
eval.Timeterm (#7968) authored by @anderseknert - perf: Zero alloc AST store lookups of interned path terms (#7979) authored by @anderseknert
- perf: Cheaper
splitbuilt-in calls (#7962) authored by @anderseknert
Docs, Website, Ecosystem
- docs: Add Compile API data filtering docs (#7939) authored by @srenatus
- docs: Add ecosystem project Moat (#7963) authored by @jcoenraadts
- docs: Address broken anchors (#8000) authored by @charlieegan3
- docs: Correction in OCP docs information regarding supported datasources (#7964) authored by @irodzik
- docs: Moving
CLI ReferencetoOperationsin TOC (#8001) authored by @johanfylling - docs: OCP HTTP API updates (#7951) authored by @srenatus
- docs: Remove k8s primer line numbers comments (#7946) authored by @charlieegan3
- docs: Update based on Slack feedback (#7990) authored by @charlieegan3
- docs: Update link checker config (#7949) authored by @charlieegan3
- docs: Updated AI guidelines (#7945) authored by @charlieegan3
- docs/ocp/deployment: Add segment on database migrations (#7952) authored by @srenatus
- website: Fix build issues (#7999) authored by @charlieegan3
- website: FOUC squashing on the homepage (#7948) authored by @charlieegan3
- website: Show latest release rather than edge (#7988) authored by @charlieegan3
- website: Update docusaurus (#7947) authored by @charlieegan3
Miscellaneous
- ast/capabilities: Remove stale comment (#7994) authored by @srenatus
- build: Non-static images for linux/arm64 (#7977) authored by @srenatus
- ci: Add zig to post-merge github action (#7983) authored by @sspaink
- e2e/authz,topdown: Fix benchmarks (#7980) authored by @srenatus
- runtime: Fixing tests by closing watcher & set default
GracefulShutdownPeriod(#7991) authored by @rMaxiQp - test/e2e: move
http.DefaultTransportfix toinit()(#7955) authored by @srenatus - Remove
vendor/(#7975) authored by @srenatus - Modernize analyzer fixes (#7965) authored by @anderseknert
- Dependency updates; notably:
- build: bump golang 1.25.1 -> 1.25.3 authored by @srenatus
- build(deps): Bump github.com/olekukonko/tablewriter from 0.0.5 to 1.1.0 (#7937) authored by @jh125486
This is a major version update containing breaking API changes. If you're affected by this, please consult the tablewriter migration guide. - deps(build): Bump github.com/bytecodealliance/wasmtime-go from v3.0.2 to v37.0.0 authored by @srenatus