Skip to content

Releases: open-policy-agent/opa

v0.5.9

10 Oct 16:44
Compare
Choose a tag to compare

Fixes

  • Fix unsafe var errors on functions (#471, #467)

Miscellaneous

  • Fix docs example of set union
  • Fix file watch bug causing panic in server mode
  • Modify AST to represent function names as refs
  • Refactor runtime to separate init and start
  • Refactor test runner to accept Store argument

v0.5.8

15 Sep 16:17
Compare
Choose a tag to compare

Fixes

  • Substitute comprehension terms requring eval (#453)

Miscellaneous

  • Add alpine-based Docker image
  • Add stdin mode to opa fmt
  • Fix syntax error in comprehension example
  • Improve input parsing performance in V0 API
  • Refactor loader to read inputs once (allows use of process substitution)
  • Remove backup creation from fmt subcommand
  • Remove use of sprintf in formatter

v0.5.7

08 Sep 17:03
Compare
Choose a tag to compare

This release adds a new test subcommand to OPA. The test subcommand enables policy unit testing. The unit tests are expressed as rules containing assertions over test data. The test subcommand provides a test runner that automatically discovers and executes these test rules. See opa test --help for examples.

Fixes

  • Fix type error marshalling bug (#391)
  • Fix type inference bug (#381)
  • Fix unification bug (#436)
  • Fix type inferecen bug for partial objects with non-string keys (#440)
  • Suppress match errors if closures contained errors (#438)

v0.5.6

29 Aug 22:57
Compare
Choose a tag to compare

As part of this release, logrus was revendored to deal with the naming issue. If you use logrus, or one of your other dependencies does (such as Docker), be sure to check out sirupsen/logrus#570 (comment).

Fixes

  • Fix incorrect REPL interpretation of some exprs (#433)
  • Fix inaccurate location information in some parser errors (#214)

Miscellaneous

  • Add Terraform Testing tutorial to documentation
  • Add shorthand for defining partial documents (e.g., p[1] instead of p[1] { true })
  • Add walk built-in function to recursively process nested documents
  • Refactor Policy API response representations based on usage

v0.5.5

18 Aug 01:43
Compare
Choose a tag to compare

This release adds Diagnostics support to the server. This greatly improves OPA's debuggability when deployed as a daemon.

Miscellaneous

  • Fix data race in the parser extensions
  • Fix index.html GET requests returning error on empty input
  • Fix race condition in watch test
  • Fix image version in HTTP API tutorial
  • Add metrics command to the REPL
  • Limit length of pretty printed values in the REPL
  • Simplify input query parameters in data GET requests
  • Update server to support pretty explanations

v0.5.4

07 Aug 16:03
Compare
Choose a tag to compare

Miscellaneous

  • Properly remove temporary files when running opa fmt -d
  • Add support for refs with composite operands (e.g,. p[[x,y]])

v0.5.3

26 Jul 00:28
Compare
Choose a tag to compare

Fixes

  • Add support for raw strings (#265)
  • Add support to cancel compilation after some number of errors (#249)

Miscellaneous

  • Add Kubernetes admission control tutorial
  • Add tracing support to rego package
  • Add watch package for watching changes to queries
  • Add dependencies package to perform dependency analysis on ASTs

v0.5.2

26 Jul 00:30
Compare
Choose a tag to compare

Fixes

  • Fix mobile view navigation bug
  • Fix panic in compiler from concurrent map writes (#379
  • Fix ambiguous syntax around body and set comprehensions (#377)

Miscellaneous

  • Add support for set and object comprehensions
  • Add support for system.main policy in server
  • Add transaction support in rego package
  • Improve type checking error messages
  • Format REPL modules before printing them

v0.5.1

10 Jul 18:01
Compare
Choose a tag to compare

Fixes

  • Correct opa fmt panic on missing files
  • Fix minor site issues

Miscellaneous

  • Add rego examples with input and compiler
  • Add support for query cancellation

v0.5.0

05 Jul 23:02
Compare
Choose a tag to compare

User Functions

OPA now supports user-defined functions that have the same semantics as built-in
functions. This allows policy authors to quickly define reusable pieces of logic
in Rego without overloading the input document or thinking about variable
safety.

Storage Improvements

The storage layer has been improved to support single-writer/multiple-reader
concurrency. The storage interfaces have been simplified in the process. Users
can rely on https://godoc.org/github.com/open-policy-agent/opa/storage/inmem in
place of the old storage package.

Website Refresh

The website has been redesigned and the documentation has been ported over to
GitBook.

opa check and opa fmt

OPA supports two new commands that check and format policies. Check out opa help for more information.

Miscellaneous

  • Add YAML serialization built-ins
  • Add time built-ins

Fixes

  • Fixed incorrect source locations on refs and manually constructed terms. All
    term locations should be set correctly now.
  • Fixed evaluation bug that caused partial sets and partial objects to be
    undefined in some cases.