NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Go modules · #286 by repository stars
Last release today
09 Oct 2026
Ships on a steady schedule
a new release about every 8 days
Nearly every release is documented
notes for 59 of the last 60 stable releases
85 versions withdrawn
withdrawn after publishing
10 years old
4354 releases · first in 2016
Nothing published for this version
Nothing published for this version
Nothing published for this version
One column per quarter.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Add opa bench and opa test --bench sub commands for benchmarking policy evaluation.
opa bench and opa test --bench sub commands for benchmarking policy evaluation. (#1424)http.send improvements:
tls_insecure_skip_verify optionHost header supportbits.orbits.andbits.negatebits.xorbits.lshbits.rshjson.remove which works similar to object.remove but supports a JSON pointer path.opa parse: fix panic when parsing invalid JSONast.ParseModule helper will now return an error if an empty module is provided.
Previously it would return a nil error and nil module. (#2054)cmd and tester packages in OPA will now require Go 1.13+ to compile. Most library users should be unaffected.policy.wasm for the compiled policy.vendor: Update xxhash to workaround checkptr errors with Go 1.14
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Add location information into pretty printed trace output.
http.send builtin (#2099)some expressions in coverage report (#1972)object manipulation built-insNothing published for this version
ast: Fix rewriting vars in rule args
This release improves partial evaluation to avoid saving statements when they do not depend on unknowns (e.g., comprehensions, references that require
This release improves partial evaluation to avoid saving statements when they
do not depend on unknowns (e.g., comprehensions, references that require
materializing the full extent of partial sets/objects, etc.) Also, expressions
containing with statements are partially evaluated now.
This release lets policy authors to de-reference calls (and other terms)
without assigning the result to an intermediate variable. For example, instead
of writing a := f(x); a.foo == 1 users can now write f(x).a == 1 directly.
Thanks @jaspervdj-luminal!
This release includes the following new built-in functions:
object.get built-in function to lookup object keys with a fallback.crypto.md5, crypto.sha1, crypto.sha256 built-in functions to hash strings.The glob.match built-in function was not defaulting the delimiter to "."
like the documentation described. This was fixed in
#2061 however the fix
is not backwards compatible. If you are using the glob.match built-in
function, you should ensure that a delimiter is being supplied. A search of
.rego files on GitHub only revealed a few instances of the glob.match in-use
so we decided to err towards fixing the broken behaviour rather than
preserving buggy behaviour going forward.
Related to the fix for #2031
and the changes with OPA v0.16.0 to use / separated path's with
the decision log plugin API. The decision logger will no longer modify
the server.Info#Path field. Older versions would substitute . for
/ but this was causing incorrect results. As of v0.16.0 the server has
been updated to provide the correct paths so REST API users are unaffected.
Golang API users of the plugins.log.Logger#Log interface may be impacted
if passing ast.Ref style strings as a path as it will no longer be changed
to / separated. Callers need to do any transformation beforehand.
apps/v1 instead of extensions/v1 (#1977)PartialResult (#1792)This release includes an important bugfix for users that enable tracing and use the "pretty" trace formatter.
This release includes an important bugfix for users that enable tracing and use the "pretty" trace formatter.
Fix for *-rootless Docker images USER being set incorrectly
*-rootless Docker images USER being set incorrectly (#1982)Nothing published for this version
Nothing published for this version
The fix for #1532 required a backwards incompatible change for v0 and v1 queries against "/data". This only affects queries against the exact path "/d…
json.filter to mask/filter nested fields (#1617)net.cidr_expand to generate CIDR hostsstatus.console option to log Status messages to console (#1937)io.jwt.decode_verify to support multiple keys in JWKS (#1901)path decision log field for queries against "/data" (1532)This release also includes:
io.jwt.* built-in functions for token verificationserver.Info#Path field has been changed to use slash-separated paths instead
of the string representation of Rego references (i.e., a dotted path rooted at
"data"). If you are registering a logging callback directly against the server
(e.g., by calling server.Server#WithDecisionLoggerWithErr) you will have to
update your logging callback to deal with the new path format. Decision log
consumers should treat a missing/empty path field as a query against
"/data".Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →