Skip to content

Commit b62ae6b

Browse files
Prepare v0.67.0 release
Signed-off-by: Ashutosh Narkar <[email protected]>
1 parent bec8e1a commit b62ae6b

File tree

5 files changed

+5093
-9
lines changed

5 files changed

+5093
-9
lines changed

CHANGELOG.md

+42-7
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,25 @@
33
All notable changes to this project will be documented in this file. This
44
project adheres to [Semantic Versioning](http://semver.org/).
55

6-
## Unreleased
6+
## 0.67.0
77

8-
### Request Body Size Limits
8+
This release contains a mix of features, a new builtin function (`strings.count`), performance improvements, and bugfixes.
99

10-
OPA now rejects requests with request bodies larger than a preset maximum size. To control this behavior, two new configuration keys are available: `server.decoding.max_length` and `server.decoding.gzip.max_length`. These control the max size in bytes to allow for an incoming request payload, and the maximum size in bytes to allow for a decompressed gzip request payload, respectively.
10+
### Breaking Change
11+
12+
#### Request Body Size Limits
13+
14+
OPA now automatically rejects very large requests ([#6868](https://github.com/open-policy-agent/opa/pull/6868)) authored by @philipaconrad.
15+
Requests with a `Content-Length` larger than 128 MB uncompressed, and gzipped requests with payloads that decompress to
16+
larger than 256 MB will be rejected, as part of hardening OPA against denial-of-service attacks. Previously, a large
17+
enough request could cause an OPA instance to run out of memory in low-memory sidecar deployment scenarios, just from
18+
attempting to read the request body into memory.
19+
20+
These changes allow improvements in memory usage for the OPA HTTP server, and help OPA deployments avoid some accidental out-of-memory situations.
21+
22+
For most users, no changes will be needed to continue using OPA. However, to control this behavior, two new configuration
23+
keys are available: `server.decoding.max_length` and `server.decoding.gzip.max_length`. These control the max size in
24+
bytes to allow for an incoming request payload, and the maximum size in bytes to allow for a decompressed gzip request payload, respectively.
1125

1226
Here's an example OPA configuration using the new keys:
1327

@@ -20,13 +34,34 @@ server:
2034
max_length: 134217728
2135
```
2236
23-
These changes allow improvements in memory usage for the OPA HTTP server, and help OPA deployments avoid some accidental out-of-memory situations.
37+
### Topdown and Rego
38+
39+
- topdown: New `strings.count` builtin which returns the number of non-overlapping instances of a substring in a string ([#6827](https://github.com/open-policy-agent/opa/issues/6827)) authored by @Manish-Giri
40+
- format: Produce error when `--rego-v1` formatted module has rule name conflicting with keyword ([#6833](https://github.com/open-policy-agent/opa/issues/6833)) authored by @johanfylling
41+
- topdown: Add cap to caches for regex and glob built-in functions ([#6828](https://github.com/open-policy-agent/opa/issues/6828)) authored by @johanfylling. This fixes possible memory leaks where caches grow uncontrollably when large amounts of regexes or globs are generated or originate from the input document.
2442

25-
### Breaking Changes
43+
### Runtime, Tooling, SDK
44+
- repl: Add support for correctly loading bundle modules ([#6872](https://github.com/open-policy-agent/opa/issues/6872)) authored by @ashutosh-narkar
45+
- plugins/discovery: Allow un-registration of discovery listener ([#6851](https://github.com/open-policy-agent/opa/pull/6851)) authored by @mjungsbluth. The discovery plugin allows OPA to register a bundle download status listener but previously did not offer a method to unregister that listener
46+
- plugins/logs: Reduce amount of work performed inside global lock in decision log plugin ([#6859](https://github.com/open-policy-agent/opa/pull/6859)) authored by @johanfylling
47+
- plugins/rest: Add a new client credential attribute to support Azure Workload Identity. This would allow workloads deployed on an Azure Kubernetes Services (AKS) cluster to authenticate and access Azure cloud resources ([#6802](https://github.com/open-policy-agent/opa/pull/6802)) authored by @ledbutter
48+
- cmd/inspect: Add ability for opa inspect to inspect a single file outside of any bundle ([#6873](https://github.com/open-policy-agent/opa/pull/6873)) authored by @tjons
49+
- cmd+bundle: Add `--follow-symlinks` flag to the `opa build` command to allow users to build directories with symlinked files, and have the contents of those symlinked files included in the built bundle ([#6800](https://github.com/open-policy-agent/opa/pull/6800)) authored by @tjons
50+
- server: Add missing handling in the server for the `explain=fails` query value ([#6886](https://github.com/open-policy-agent/opa/pull/6886)) authored by @acamatcisco
2651

27-
OPA now automatically rejects very large requests. Requests with a `Content-Length` larger than 128 MB uncompressed, and gzipped requests with payloads that decompress to larger than 256 MB will be rejected, as part of hardening OPA against denial-of-service attacks. Previously, a large enough request could cause an OPA instance to run out of memory in low-memory sidecar deployment scenarios, just from attempting to read the request body into memory.
52+
### Docs, Website, Ecosystem
53+
- docs: Update bundle section with an example of a manifest with `rego_version` and `file_rego_versions` attributes ([#6885](https://github.com/open-policy-agent/opa/pull/6885)) authored by @ashutosh-narkar
54+
- docs: Better link language SDKs to make them more discoverable ([#6866](https://github.com/open-policy-agent/opa/pull/6866)) authored by @charlieegan3
2855

29-
For most users, no changes will be needed to continue using OPA. However, for those who need to override the default limits, the new `server.decoding.max_length` and `server.decoding.gzip.max_length` configuration fields allow setting higher request size limits.
56+
### Miscellaneous
57+
58+
- ci: Add the OpenSSF Scorecard Github Action to help evaluate the OPA project's security posture ([#6848](https://github.com/open-policy-agent/opa/pull/6848)) authored by @harshitasao
59+
- Dependency updates; notably:
60+
- build(go): bump golang from 1.22.4 to 1.22.5
61+
- build(deps): bump github.com/containerd/containerd from 1.7.18 to 1.7.20
62+
- build(deps): bump golang.org/x/net from 0.26.0 to 0.27.0
63+
- build(deps): bump google.golang.org/grpc from 1.64.0 to 1.65.0
64+
- build(deps): bump go.opentelemetry.io modules ([#6847](https://github.com/open-policy-agent/opa/pull/6847))
3065

3166
## 0.66.0
3267

ast/version_index.json

+7
Original file line numberDiff line numberDiff line change
@@ -1120,6 +1120,13 @@
11201120
"PreRelease": "",
11211121
"Metadata": ""
11221122
},
1123+
"strings.count": {
1124+
"Major": 0,
1125+
"Minor": 67,
1126+
"Patch": 0,
1127+
"PreRelease": "",
1128+
"Metadata": ""
1129+
},
11231130
"strings.render_template": {
11241131
"Major": 0,
11251132
"Minor": 59,

0 commit comments

Comments
 (0)