Todd Baert
6cabfc8ff3
fix: general err if targeting variant not in variants ( #1680 )
...
This makes the RPC mode consistent with our in-process evaluations when
a variant is returned from targeting which is not in the variants list.
Relates to
758fbd5b84
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
2025-07-15 14:19:15 -04:00
Rahul Baradol
3f6b78c8cc
feat: allowing null/missing defaultValue ( #1659 )
...
<!-- Please use this template for your pull request. -->
<!-- Please use the sections that you need and delete other sections -->
## This PR
- adds support for null/missing default values
### Related Issues
Fixes #1647
### Notes
Points to be noted...
- If there is no `defaultValue` and no targetting rules, then
`FlagNotFound` is returned
- If targetting doesn't resolve a variant, and there is no
`defaultValue`, then `FlagNotFound` is returned
---------
Signed-off-by: Rahul Baradol <rahul.baradol.14@gmail.com>
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
Co-authored-by: Todd Baert <todd.baert@dynatrace.com>
2025-07-09 15:25:30 -04:00
renovate[bot]
76ac517446
fix(security): update vulnerable-dependencies ( #1664 )
...
This PR contains the following updates:
| Package | Change | Age | Confidence | Type | Update |
|---|---|---|---|---|---|
| buf.build/gen/go/open-feature/flagd/connectrpc/go |
`v1.18.1-20250127221518-be6d1143b690.1` ->
`v1.18.1-20250529171031-ebdc14163473.1` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | patch |
| buf.build/gen/go/open-feature/flagd/grpc/go |
`v1.5.1-20250127221518-be6d1143b690.2` ->
`v1.5.1-20250529171031-ebdc14163473.2` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | patch |
| buf.build/gen/go/open-feature/flagd/protocolbuffers/go |
`v1.36.5-20250127221518-be6d1143b690.1` ->
`v1.36.6-20250529171031-ebdc14163473.1` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | patch |
|
[github.com/diegoholiveira/jsonlogic/v3](https://redirect.github.com/diegoholiveira/jsonlogic )
| `v3.7.4` -> `v3.8.4` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
|
[github.com/fsnotify/fsnotify](https://redirect.github.com/fsnotify/fsnotify )
| `v1.8.0` -> `v1.9.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
|
[github.com/open-feature/flagd/core](https://redirect.github.com/open-feature/flagd )
| `v0.11.2` -> `v0.11.5` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | patch |
|
[github.com/open-feature/open-feature-operator/apis](https://redirect.github.com/open-feature/open-feature-operator )
| `v0.2.44` -> `v0.2.45` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | patch |
|
[github.com/prometheus/client_golang](https://redirect.github.com/prometheus/client_golang )
| `v1.21.1` -> `v1.22.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
| [github.com/spf13/viper](https://redirect.github.com/spf13/viper ) |
`v1.19.0` -> `v1.20.1` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
| [go](https://go.dev/ )
([source](https://redirect.github.com/golang/go )) | `1.24.2` -> `1.24.4`
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| toolchain | patch |
|
[go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp](https://redirect.github.com/open-telemetry/opentelemetry-go-contrib )
| `v0.60.0` -> `v0.62.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
|
[go.opentelemetry.io/otel](https://redirect.github.com/open-telemetry/opentelemetry-go )
| `v1.35.0` -> `v1.37.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
|
[go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc](https://redirect.github.com/open-telemetry/opentelemetry-go )
| `v1.35.0` -> `v1.37.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
|
[go.opentelemetry.io/otel/exporters/otlp/otlptrace](https://redirect.github.com/open-telemetry/opentelemetry-go )
| `v1.35.0` -> `v1.37.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
|
[go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc](https://redirect.github.com/open-telemetry/opentelemetry-go )
| `v1.35.0` -> `v1.37.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
|
[go.opentelemetry.io/otel/exporters/prometheus](https://redirect.github.com/open-telemetry/opentelemetry-go )
| `v0.57.0` -> `v0.59.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
|
[go.opentelemetry.io/otel/metric](https://redirect.github.com/open-telemetry/opentelemetry-go )
| `v1.35.0` -> `v1.37.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
|
[go.opentelemetry.io/otel/sdk](https://redirect.github.com/open-telemetry/opentelemetry-go )
| `v1.35.0` -> `v1.37.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
|
[go.opentelemetry.io/otel/sdk/metric](https://redirect.github.com/open-telemetry/opentelemetry-go )
| `v1.35.0` -> `v1.37.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
|
[go.opentelemetry.io/otel/trace](https://redirect.github.com/open-telemetry/opentelemetry-go )
| `v1.35.0` -> `v1.37.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
| [go.uber.org/mock](https://redirect.github.com/uber/mock ) | `v0.5.0`
-> `v0.5.2` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | patch |
| [gocloud.dev](https://redirect.github.com/google/go-cloud ) | `v0.40.0`
-> `v0.42.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
| golang.org/x/crypto | `v0.33.0` -> `v0.35.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| indirect | minor |
| golang.org/x/crypto | `v0.33.0` -> `v0.35.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
| golang.org/x/mod | `v0.23.0` -> `v0.25.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
| golang.org/x/net | `v0.35.0` -> `v0.38.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
| golang.org/x/net | `v0.35.0` -> `v0.38.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| indirect | minor |
| golang.org/x/sync | `v0.11.0` -> `v0.15.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
| [google.golang.org/grpc](https://redirect.github.com/grpc/grpc-go ) |
`v1.71.0` -> `v1.73.0` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
|
[k8s.io/apimachinery](https://redirect.github.com/kubernetes/apimachinery )
| `v0.31.4` -> `v0.33.2` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
| [k8s.io/client-go](https://redirect.github.com/kubernetes/client-go ) |
`v0.31.4` -> `v0.33.2` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
| require | minor |
### GitHub Vulnerability Alerts
#### [CVE-2025-22869](https://nvd.nist.gov/vuln/detail/CVE-2025-22869 )
SSH servers which implement file transfer protocols are vulnerable to a
denial of service attack from clients which complete the key exchange
slowly, or not at all, causing pending content to be read into memory,
but never transmitted.
#### [CVE-2025-22870](https://nvd.nist.gov/vuln/detail/CVE-2025-22870 )
Matching of hosts against proxy patterns can improperly treat an IPv6
zone ID as a hostname component. For example, when the NO_PROXY
environment variable is set to "*.example.com", a request to
"[::1%25.example.com]:80` will incorrectly match and not be proxied.
#### [CVE-2025-22872](https://nvd.nist.gov/vuln/detail/CVE-2025-22872 )
The tokenizer incorrectly interprets tags with unquoted attribute values
that end with a solidus character (/) as self-closing. When directly
using Tokenizer, this can result in such tags incorrectly being marked
as self-closing, and when using the Parse functions, this can result in
content following such tags as being placed in the wrong scope during
DOM construction, but only when tags are in foreign content (e.g.
<math>, <svg>, etc contexts).
---
### Release Notes
<details>
<summary>diegoholiveira/jsonlogic
(github.com/diegoholiveira/jsonlogic/v3)</summary>
###
[`v3.8.4`](https://redirect.github.com/diegoholiveira/jsonlogic/releases/tag/v3.8.4 )
[Compare
Source](https://redirect.github.com/diegoholiveira/jsonlogic/compare/v3.8.3...v3.8.4 )
#### What's Changed
- operation.go: guard global mem from concurent writes on startup and
config by [@​Moisi](https://redirect.github.com/Moisi ) in
[https://github.com/diegoholiveira/jsonlogic/pull/124 ](https://redirect.github.com/diegoholiveira/jsonlogic/pull/124 )
#### New Contributors
- [@​Moisi](https://redirect.github.com/Moisi ) made their first
contribution in
[https://github.com/diegoholiveira/jsonlogic/pull/124 ](https://redirect.github.com/diegoholiveira/jsonlogic/pull/124 )
**Full Changelog**:
https://github.com/diegoholiveira/jsonlogic/compare/v3.8.3...v3.8.4
###
[`v3.8.3`](https://redirect.github.com/diegoholiveira/jsonlogic/releases/tag/v3.8.3 )
[Compare
Source](https://redirect.github.com/diegoholiveira/jsonlogic/compare/v3.8.2...v3.8.3 )
#### What's Changed
- fix(122): Negating an empty slice should return true by
[@​juannorris](https://redirect.github.com/juannorris ) in
[https://github.com/diegoholiveira/jsonlogic/pull/123 ](https://redirect.github.com/diegoholiveira/jsonlogic/pull/123 )
**Full Changelog**:
https://github.com/diegoholiveira/jsonlogic/compare/v3.8.2...v3.8.3
###
[`v3.8.2`](https://redirect.github.com/diegoholiveira/jsonlogic/releases/tag/v3.8.2 )
[Compare
Source](https://redirect.github.com/diegoholiveira/jsonlogic/compare/v3.8.1...v3.8.2 )
#### What's Changed
- fix: allow 'map primitives' in ValidateJsonLogic by
[@​juannorris](https://redirect.github.com/juannorris ) in
[https://github.com/diegoholiveira/jsonlogic/pull/121 ](https://redirect.github.com/diegoholiveira/jsonlogic/pull/121 )
**Full Changelog**:
https://github.com/diegoholiveira/jsonlogic/compare/v3.8.1...v3.8.2
###
[`v3.8.1`](https://redirect.github.com/diegoholiveira/jsonlogic/releases/tag/v3.8.1 )
[Compare
Source](https://redirect.github.com/diegoholiveira/jsonlogic/compare/v3.8.0...v3.8.1 )
#### What's Changed
- Enhancement proposal for test names in TestRulesFromJsonLogic test
suite by [@​juannorris](https://redirect.github.com/juannorris ) in
[https://github.com/diegoholiveira/jsonlogic/pull/116 ](https://redirect.github.com/diegoholiveira/jsonlogic/pull/116 )
- disable setup-go dependency cache by
[@​diegoholiveira](https://redirect.github.com/diegoholiveira ) in
[https://github.com/diegoholiveira/jsonlogic/pull/117 ](https://redirect.github.com/diegoholiveira/jsonlogic/pull/117 )
- Make IF operator behave lazily (like AND and OR) by
[@​juannorris](https://redirect.github.com/juannorris ) in
[https://github.com/diegoholiveira/jsonlogic/pull/118 ](https://redirect.github.com/diegoholiveira/jsonlogic/pull/118 )
- Remove some unused code by
[@​diegoholiveira](https://redirect.github.com/diegoholiveira ) in
[https://github.com/diegoholiveira/jsonlogic/pull/119 ](https://redirect.github.com/diegoholiveira/jsonlogic/pull/119 )
**Full Changelog**:
https://github.com/diegoholiveira/jsonlogic/compare/v3.8.0...v3.8.1
###
[`v3.8.0`](https://redirect.github.com/diegoholiveira/jsonlogic/releases/tag/v3.8.0 )
[Compare
Source](https://redirect.github.com/diegoholiveira/jsonlogic/compare/v3.7.5...v3.8.0 )
#### What's Changed
##### Performance Enhancements
- Reduced memory usage by ~2% across all operations
- Decreased allocation count by ~5% through better memory pre-allocation
- Improved execution time by ~2.5% on average
- Most significant speedups in equality operations (+10%) and complex
condition evaluation (+8%)
To better understand this numbers, I published the benchmark suite in
https://github.com/diegoholiveira/jsonlogic/tree/main/benchmark
##### Code Improvements
- Renamed 'arrays.go' to 'lists.go' for better semantic clarity
- Added pre-allocation of slices with appropriate capacity for improved
performance
- Optimized common operations with early returns for empty or
single-element arrays
- Enhanced memory efficiency in list operations (filter, map, merge)
- Improved type handling and nil checks in equality operations
- Added optimized paths for sum and concatenation operations
This release focuses on performance optimization and code quality
improvements, making the library more efficient while maintaining full
compatibility with the JSONLogic specification.
###
[`v3.7.5`](https://redirect.github.com/diegoholiveira/jsonlogic/releases/tag/v3.7.5 )
[Compare
Source](https://redirect.github.com/diegoholiveira/jsonlogic/compare/v3.7.4...v3.7.5 )
#### What's Changed
- create the javascript package to encapsulate specific JS behavior by
[@​diegoholiveira](https://redirect.github.com/diegoholiveira ) in
[https://github.com/diegoholiveira/jsonlogic/pull/106 ](https://redirect.github.com/diegoholiveira/jsonlogic/pull/106 )
- create the `typing` package with types conversion helpers by
[@​diegoholiveira](https://redirect.github.com/diegoholiveira ) in
[https://github.com/diegoholiveira/jsonlogic/pull/107 ](https://redirect.github.com/diegoholiveira/jsonlogic/pull/107 )
- Improve go docs by
[@​diegoholiveira](https://redirect.github.com/diegoholiveira ) in
[https://github.com/diegoholiveira/jsonlogic/pull/108 ](https://redirect.github.com/diegoholiveira/jsonlogic/pull/108 )
- fix: ensure default values are used only when required by
[@​diegoholiveira](https://redirect.github.com/diegoholiveira ) in
[https://github.com/diegoholiveira/jsonlogic/pull/111 ](https://redirect.github.com/diegoholiveira/jsonlogic/pull/111 )
**Full Changelog**:
https://github.com/diegoholiveira/jsonlogic/compare/v3.7.4...v3.7.5
</details>
<details>
<summary>fsnotify/fsnotify (github.com/fsnotify/fsnotify)</summary>
###
[`v1.9.0`](https://redirect.github.com/fsnotify/fsnotify/releases/tag/v1.9.0 )
[Compare
Source](https://redirect.github.com/fsnotify/fsnotify/compare/v1.8.0...v1.9.0 )
##### Changes and fixes
- all: make BufferedWatcher buffered again ([#​657])
- inotify: fix race when adding/removing watches while a watched path is
being deleted ([#​678], [#​686])
- inotify: don't send empty event if a watched path is unmounted
([#​655])
- inotify: don't register duplicate watches when watching both a symlink
and its target; previously that would get "half-added" and removing the
second would panic ([#​679])
- kqueue: fix watching relative symlinks ([#​681])
- kqueue: correctly mark pre-existing entries when watching a link to a
dir on kqueue ([#​682])
- illumos: don't send error if changed file is deleted while processing
the event ([#​678])
[#​657]: https://redirect.github.com/fsnotify/fsnotify/pull/657
[#​678]: https://redirect.github.com/fsnotify/fsnotify/pull/678
[#​686]: https://redirect.github.com/fsnotify/fsnotify/pull/686
[#​655]: https://redirect.github.com/fsnotify/fsnotify/pull/655
[#​681]: https://redirect.github.com/fsnotify/fsnotify/pull/681
[#​679]: https://redirect.github.com/fsnotify/fsnotify/pull/679
[#​682]: https://redirect.github.com/fsnotify/fsnotify/pull/682
</details>
<details>
<summary>prometheus/client_golang
(github.com/prometheus/client_golang)</summary>
###
[`v1.22.0`](https://redirect.github.com/prometheus/client_golang/releases/tag/v1.22.0 ):
- 2025-04-07
[Compare
Source](https://redirect.github.com/prometheus/client_golang/compare/v1.21.1...v1.22.0 )
⚠️ This release contains potential breaking change if you use
experimental `zstd` support introduce in
[#​1496](https://redirect.github.com/prometheus/client_golang/issues/1496 )
⚠️
Experimental support for `zstd` on scrape was added, controlled by the
request `Accept-Encoding` header.
It was enabled by default since version 1.20, but now you need to add a
blank import to enable it.
The decision to make it opt-in by default was originally made because
the Go standard library was expected to have default zstd support added
soon,
[https://github.com/golang/go/issues/62513 ](https://redirect.github.com/golang/go/issues/62513 )
however, the work took longer than anticipated and it will be postponed
to upcoming major Go versions.
e.g.:
> ```go
> import (
> _ "github.com/prometheus/client_golang/prometheus/promhttp/zstd"
> )
> ```
- \[FEATURE] prometheus: Add new CollectorFunc utility
[#​1724](https://redirect.github.com/prometheus/client_golang/issues/1724 )
- \[CHANGE] Minimum required Go version is now 1.22 (we also test
client\_golang against latest go version - 1.24)
[#​1738](https://redirect.github.com/prometheus/client_golang/issues/1738 )
- \[FEATURE] api: `WithLookbackDelta` and `WithStats` options have been
added to API client.
[#​1743](https://redirect.github.com/prometheus/client_golang/issues/1743 )
- \[CHANGE] ⚠️ promhttp: Isolate zstd support and
klauspost/compress library use to promhttp/zstd package.
[#​1765](https://redirect.github.com/prometheus/client_golang/issues/1765 )
<details>
<summary> All Changes </summary>
- build(deps): bump golang.org/x/sys from 0.28.0 to 0.29.0 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/prometheus/client_golang/pull/1720 ](https://redirect.github.com/prometheus/client_golang/pull/1720 )0
- build(deps): bump google.golang.org/protobuf from 1.36.1 to 1.36.3 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/prometheus/client_golang/pull/1719 ](https://redirect.github.com/prometheus/client_golang/pull/1719 )9
- Update RELEASE.md by
[@​bwplotka](https://redirect.github.com/bwplotka ) in
[https://github.com/prometheus/client_golang/pull/1721 ](https://redirect.github.com/prometheus/client_golang/pull/1721 )1
- chore(docs): Add links for the upstream PRs by
[@​kakkoyun](https://redirect.github.com/kakkoyun ) in
[https://github.com/prometheus/client_golang/pull/1722 ](https://redirect.github.com/prometheus/client_golang/pull/1722 )2
- Added tips on releasing client and checking with k8s. by
[@​bwplotka](https://redirect.github.com/bwplotka ) in
[https://github.com/prometheus/client_golang/pull/1723 ](https://redirect.github.com/prometheus/client_golang/pull/1723 )3
- feat: Add new CollectorFunc utility by
[@​Saumya40-codes](https://redirect.github.com/Saumya40-codes ) in
[https://github.com/prometheus/client_golang/pull/1724 ](https://redirect.github.com/prometheus/client_golang/pull/1724 )4
- build(deps): bump google.golang.org/protobuf from 1.36.3 to 1.36.4 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/prometheus/client_golang/pull/1725 ](https://redirect.github.com/prometheus/client_golang/pull/1725 )5
- build(deps): bump the github-actions group with 5 updates by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/prometheus/client_golang/pull/1726 ](https://redirect.github.com/prometheus/client_golang/pull/1726 )6
- Synchronize common files from prometheus/prometheus by
[@​prombot](https://redirect.github.com/prombot ) in
[https://github.com/prometheus/client_golang/pull/1727 ](https://redirect.github.com/prometheus/client_golang/pull/1727 )7
- Synchronize common files from prometheus/prometheus by
[@​prombot](https://redirect.github.com/prombot ) in
[https://github.com/prometheus/client_golang/pull/1731 ](https://redirect.github.com/prometheus/client_golang/pull/1731 )1
- build(deps): bump golang.org/x/sys from 0.29.0 to 0.30.0 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/prometheus/client_golang/pull/1739 ](https://redirect.github.com/prometheus/client_golang/pull/1739 )9
- build(deps): bump google.golang.org/protobuf from 1.36.4 to 1.36.5 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/prometheus/client_golang/pull/1740 ](https://redirect.github.com/prometheus/client_golang/pull/1740 )0
- Cleanup dependabot config by
[@​SuperQ](https://redirect.github.com/SuperQ ) in
[https://github.com/prometheus/client_golang/pull/1741 ](https://redirect.github.com/prometheus/client_golang/pull/1741 )1
- Upgrade Golang version v1.24 by
[@​dongjiang1989](https://redirect.github.com/dongjiang1989 ) in
[https://github.com/prometheus/client_golang/pull/1738 ](https://redirect.github.com/prometheus/client_golang/pull/1738 )8
- build(deps): bump the github-actions group with 2 updates by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/prometheus/client_golang/pull/1742 ](https://redirect.github.com/prometheus/client_golang/pull/1742 )2
- Merging 1.21 release back to main. by
[@​bwplotka](https://redirect.github.com/bwplotka ) in
[https://github.com/prometheus/client_golang/pull/1744 ](https://redirect.github.com/prometheus/client_golang/pull/1744 )4
- Synchronize common files from prometheus/prometheus by
[@​prombot](https://redirect.github.com/prombot ) in
[https://github.com/prometheus/client_golang/pull/1745 ](https://redirect.github.com/prometheus/client_golang/pull/1745 )5
- Add support for undocumented query options for API by
[@​mahendrapaipuri](https://redirect.github.com/mahendrapaipuri )
in
[https://github.com/prometheus/client_golang/pull/1743 ](https://redirect.github.com/prometheus/client_golang/pull/1743 )3
- exp/api: Add experimental exp module; Add remote API with write client
and handler. by [@​bwplotka](https://redirect.github.com/bwplotka )
in
[https://github.com/prometheus/client_golang/pull/1658 ](https://redirect.github.com/prometheus/client_golang/pull/1658 )8
- exp/api: Add accepted msg type validation to handler by
[@​saswatamcode](https://redirect.github.com/saswatamcode ) in
[https://github.com/prometheus/client_golang/pull/1750 ](https://redirect.github.com/prometheus/client_golang/pull/1750 )0
- build(deps): bump the github-actions group with 5 updates by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/prometheus/client_golang/pull/1751 ](https://redirect.github.com/prometheus/client_golang/pull/1751 )1
- build(deps): bump github.com/klauspost/compress from 1.17.11 to 1.18.0
by [@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/prometheus/client_golang/pull/1752 ](https://redirect.github.com/prometheus/client_golang/pull/1752 )2
- build(deps): bump github.com/google/go-cmp from 0.6.0 to 0.7.0 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/prometheus/client_golang/pull/1753 ](https://redirect.github.com/prometheus/client_golang/pull/1753 )3
- exp: Reset snappy buf by
[@​saswatamcode](https://redirect.github.com/saswatamcode ) in
[https://github.com/prometheus/client_golang/pull/1756 ](https://redirect.github.com/prometheus/client_golang/pull/1756 )6
- Merge release 1.21.1 to main. by
[@​bwplotka](https://redirect.github.com/bwplotka ) in
[https://github.com/prometheus/client_golang/pull/1762 ](https://redirect.github.com/prometheus/client_golang/pull/1762 )2
- exp: Add dependabot config by
[@​saswatamcode](https://redirect.github.com/saswatamcode ) in
[https://github.com/prometheus/client_golang/pull/1754 ](https://redirect.github.com/prometheus/client_golang/pull/1754 )4
- build(deps): bump peter-evans/create-pull-request from 7.0.7 to 7.0.8
in the github-actions group by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/prometheus/client_golang/pull/1764 ](https://redirect.github.com/prometheus/client_golang/pull/1764 )4
- promhttp: Isolate zstd support and klauspost/compress library use to
promhttp/zstd package by
[@​liggitt](https://redirect.github.com/liggitt ) in
[https://github.com/prometheus/client_golang/pull/1765 ](https://redirect.github.com/prometheus/client_golang/pull/1765 )5
- Cut 1.22.0-rc.0 by
[@​kakkoyun](https://redirect.github.com/kakkoyun ) in
[https://github.com/prometheus/client_golang/pull/1768 ](https://redirect.github.com/prometheus/client_golang/pull/1768 )8
</details>
#### New Contributors
* @​Saumya40-codes made their first
contributi[https://github.com/prometheus/client_golang/pull/1724 ](https://redirect.github.com/prometheus/client_golang/pull/1724 )l/1724
* @​mahendrapaipuri made their first
contributi[https://github.com/prometheus/client_golang/pull/1743 ](https://redirect.github.com/prometheus/client_golang/pull/1743 )l/1743
* @​liggitt made their first
contributi[https://github.com/prometheus/client_golang/pull/1765 ](https://redirect.github.com/prometheus/client_golang/pull/1765 )l/1765
**Full Changelog**:
https://github.com/prometheus/client\_golang/compare/v1.21.1...v1.22.0-rc.0
</details>
<details>
<summary>spf13/viper (github.com/spf13/viper)</summary>
###
[`v1.20.1`](https://redirect.github.com/spf13/viper/releases/tag/v1.20.1 )
[Compare
Source](https://redirect.github.com/spf13/viper/compare/v1.20.0...v1.20.1 )
<!-- Release notes generated using configuration in .github/release.yml
at v1.20.1 -->
##### What's Changed
##### Bug Fixes 🐛
- Backport config type fixes to 1.20.x by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/2005 ](https://redirect.github.com/spf13/viper/pull/2005 )
**Full Changelog**:
https://github.com/spf13/viper/compare/v1.20.0...v1.20.1
###
[`v1.20.0`](https://redirect.github.com/spf13/viper/releases/tag/v1.20.0 )
[Compare
Source](https://redirect.github.com/spf13/viper/compare/v1.19.0...v1.20.0 )
<!-- Release notes generated using configuration in .github/release.yml
at v1.20.0 -->
> \[!WARNING]
> This release includes a few minor breaking changes. Read the [upgrade
guide](https://redirect.github.com/spf13/viper/blob/master/UPGRADE.md#v120x )
for details.
#### What's Changed
##### Exciting New Features 🎉
- New encoding layer by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1869 ](https://redirect.github.com/spf13/viper/pull/1869 )
##### Enhancements 🚀
- Drop Go 1.20 support by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1846 ](https://redirect.github.com/spf13/viper/pull/1846 )
- Drop slog shim by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1848 ](https://redirect.github.com/spf13/viper/pull/1848 )
- Replace file searching API with a finder by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1849 ](https://redirect.github.com/spf13/viper/pull/1849 )
- Finder feature flag by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1852 ](https://redirect.github.com/spf13/viper/pull/1852 )
- Allow setting options on the global Viper instance by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1856 ](https://redirect.github.com/spf13/viper/pull/1856 )
- Add experimental flag for bind struct by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1854 ](https://redirect.github.com/spf13/viper/pull/1854 )
- Make the remote package a separate module by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1860 ](https://redirect.github.com/spf13/viper/pull/1860 )
- Add decoder hook option by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1872 ](https://redirect.github.com/spf13/viper/pull/1872 )
- Encoder improvements by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1885 ](https://redirect.github.com/spf13/viper/pull/1885 )
- Get uint8 by
[@​martinconic](https://redirect.github.com/martinconic ) in
[https://github.com/spf13/viper/pull/1894 ](https://redirect.github.com/spf13/viper/pull/1894 )
##### Bug Fixes 🐛
- Fix missing config type when reading from a buffer by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1857 ](https://redirect.github.com/spf13/viper/pull/1857 )
- fix: do not allow setting dependencies to nil values by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1871 ](https://redirect.github.com/spf13/viper/pull/1871 )
- feat: copy keydelim from parent chart in viper.Sub() by
[@​obs-gh-alexlew](https://redirect.github.com/obs-gh-alexlew ) in
[https://github.com/spf13/viper/pull/1887 ](https://redirect.github.com/spf13/viper/pull/1887 )
##### Breaking Changes 🛠
- Drop encoding formats: HCL, Java properties, INI by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1870 ](https://redirect.github.com/spf13/viper/pull/1870 )
##### Dependency Updates ⬆️
- chore: update mapstructure by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1723 ](https://redirect.github.com/spf13/viper/pull/1723 )
- chore: update crypt by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1834 ](https://redirect.github.com/spf13/viper/pull/1834 )
- build(deps): bump github/codeql-action from 3.25.7 to 3.25.8 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1853 ](https://redirect.github.com/spf13/viper/pull/1853 )
- Revert to go-difflib and go-spew releases by
[@​skitt](https://redirect.github.com/skitt ) in
[https://github.com/spf13/viper/pull/1861 ](https://redirect.github.com/spf13/viper/pull/1861 )
- build(deps): bump actions/dependency-review-action from 4.3.2 to 4.3.3
by [@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1862 ](https://redirect.github.com/spf13/viper/pull/1862 )
- build(deps): bump github/codeql-action from 3.25.8 to 3.25.10 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1865 ](https://redirect.github.com/spf13/viper/pull/1865 )
- build(deps): bump actions/checkout from 4.1.6 to 4.1.7 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1864 ](https://redirect.github.com/spf13/viper/pull/1864 )
- chore: update crypt by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1866 ](https://redirect.github.com/spf13/viper/pull/1866 )
- build(deps): bump github/codeql-action from 3.25.10 to 3.25.11 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1876 ](https://redirect.github.com/spf13/viper/pull/1876 )
- build(deps): bump google.golang.org/grpc from 1.64.0 to 1.64.1 in
/remote by [@​dependabot](https://redirect.github.com/dependabot )
in
[https://github.com/spf13/viper/pull/1878 ](https://redirect.github.com/spf13/viper/pull/1878 )
- build(deps): bump actions/setup-go from 5.0.1 to 5.0.2 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1879 ](https://redirect.github.com/spf13/viper/pull/1879 )
- build(deps): bump actions/dependency-review-action from 4.3.3 to 4.3.4
by [@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1881 ](https://redirect.github.com/spf13/viper/pull/1881 )
- build(deps): bump github/codeql-action from 3.25.11 to 3.25.12 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1880 ](https://redirect.github.com/spf13/viper/pull/1880 )
- build(deps): bump github/codeql-action from 3.25.12 to 3.25.13 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1883 ](https://redirect.github.com/spf13/viper/pull/1883 )
- chore(deps): update crypt by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1884 ](https://redirect.github.com/spf13/viper/pull/1884 )
- chore: update dependencies by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1888 ](https://redirect.github.com/spf13/viper/pull/1888 )
- build(deps): bump github.com/go-viper/mapstructure/v2 from 2.0.0 to
2.1.0 by [@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1901 ](https://redirect.github.com/spf13/viper/pull/1901 )
- build(deps): bump github.com/spf13/cast from 1.6.0 to 1.7.0 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1899 ](https://redirect.github.com/spf13/viper/pull/1899 )
- build(deps): bump github/codeql-action from 3.25.13 to 3.26.0 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1897 ](https://redirect.github.com/spf13/viper/pull/1897 )
- build(deps): bump golangci/golangci-lint-action from 6.0.1 to 6.1.0 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1893 ](https://redirect.github.com/spf13/viper/pull/1893 )
- build(deps): bump github/codeql-action from 3.26.0 to 3.26.2 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1903 ](https://redirect.github.com/spf13/viper/pull/1903 )
- build(deps): bump github/codeql-action from 3.26.2 to 3.26.3 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1905 ](https://redirect.github.com/spf13/viper/pull/1905 )
- build(deps): bump github/codeql-action from 3.26.3 to 3.26.5 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1909 ](https://redirect.github.com/spf13/viper/pull/1909 )
- Update Go by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1913 ](https://redirect.github.com/spf13/viper/pull/1913 )
- chore: update crypt package by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1914 ](https://redirect.github.com/spf13/viper/pull/1914 )
- build(deps): bump github/codeql-action from 3.26.5 to 3.26.6 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1915 ](https://redirect.github.com/spf13/viper/pull/1915 )
- build(deps): bump mheap/github-action-required-labels from 5.4.1 to
5.4.2 by [@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1916 ](https://redirect.github.com/spf13/viper/pull/1916 )
- build(deps): bump cachix/install-nix-action from 27 to 28 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1919 ](https://redirect.github.com/spf13/viper/pull/1919 )
- build(deps): bump github/codeql-action from 3.26.6 to 3.26.7 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1920 ](https://redirect.github.com/spf13/viper/pull/1920 )
- chore: update crypt by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1921 ](https://redirect.github.com/spf13/viper/pull/1921 )
- build(deps): bump github/codeql-action from 3.26.7 to 3.26.8 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1923 ](https://redirect.github.com/spf13/viper/pull/1923 )
- build(deps): bump github.com/go-viper/mapstructure/v2 from 2.1.0 to
2.2.1 by [@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1925 ](https://redirect.github.com/spf13/viper/pull/1925 )
- build(deps): bump github/codeql-action from 3.26.8 to 3.26.11 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1932 ](https://redirect.github.com/spf13/viper/pull/1932 )
- build(deps): bump golangci/golangci-lint-action from 6.1.0 to 6.1.1 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1930 ](https://redirect.github.com/spf13/viper/pull/1930 )
- build(deps): bump actions/checkout from 4.1.7 to 4.2.0 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1928 ](https://redirect.github.com/spf13/viper/pull/1928 )
- build(deps): bump actions/checkout from 4.2.0 to 4.2.1 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1936 ](https://redirect.github.com/spf13/viper/pull/1936 )
- build(deps): bump github/codeql-action from 3.26.11 to 3.27.2 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1948 ](https://redirect.github.com/spf13/viper/pull/1948 )
- build(deps): bump github.com/fsnotify/fsnotify from 1.7.0 to 1.8.0 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1944 ](https://redirect.github.com/spf13/viper/pull/1944 )
- build(deps): bump actions/setup-go from 5.0.2 to 5.1.0 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1942 ](https://redirect.github.com/spf13/viper/pull/1942 )
- build(deps): bump actions/dependency-review-action from 4.3.4 to 4.4.0
by [@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1943 ](https://redirect.github.com/spf13/viper/pull/1943 )
- build(deps): bump actions/checkout from 4.2.1 to 4.2.2 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1941 ](https://redirect.github.com/spf13/viper/pull/1941 )
- build(deps): bump github/codeql-action from 3.27.2 to 3.27.3 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1949 ](https://redirect.github.com/spf13/viper/pull/1949 )
- build(deps): bump github/codeql-action from 3.27.3 to 3.27.7 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1958 ](https://redirect.github.com/spf13/viper/pull/1958 )
- build(deps): bump mheap/github-action-required-labels from 5.4.2 to
5.5.0 by [@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1957 ](https://redirect.github.com/spf13/viper/pull/1957 )
- build(deps): bump actions/dependency-review-action from 4.4.0 to 4.5.0
by [@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1953 ](https://redirect.github.com/spf13/viper/pull/1953 )
- build(deps): bump actions/setup-go from 5.1.0 to 5.2.0 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1959 ](https://redirect.github.com/spf13/viper/pull/1959 )
- build(deps): bump github.com/stretchr/testify from 1.9.0 to 1.10.0 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1954 ](https://redirect.github.com/spf13/viper/pull/1954 )
- build(deps): bump golang.org/x/crypto from 0.27.0 to 0.31.0 in /remote
by [@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1960 ](https://redirect.github.com/spf13/viper/pull/1960 )
- build(deps): bump github/codeql-action from 3.27.7 to 3.27.9 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1964 ](https://redirect.github.com/spf13/viper/pull/1964 )
- chore: update afero by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1973 ](https://redirect.github.com/spf13/viper/pull/1973 )
- build(deps): bump github.com/spf13/cast from 1.7.0 to 1.7.1 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1968 ](https://redirect.github.com/spf13/viper/pull/1968 )
- build(deps): bump github.com/spf13/pflag from 1.0.5 to 1.0.6 by
[@​dependabot](https://redirect.github.com/dependabot ) in
[https://github.com/spf13/viper/pull/1979 ](https://redirect.github.com/spf13/viper/pull/1979 )
- ci: add Go 1.24 to the test matrix by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1983 ](https://redirect.github.com/spf13/viper/pull/1983 )
##### Other Changes
- refactor: move remote code to separate file by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1847 ](https://redirect.github.com/spf13/viper/pull/1847 )
- refactor: cleanup unused encoding code by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1889 ](https://redirect.github.com/spf13/viper/pull/1889 )
- Fix issues reported by testifylint by
[@​deining](https://redirect.github.com/deining ) in
[https://github.com/spf13/viper/pull/1965 ](https://redirect.github.com/spf13/viper/pull/1965 )
- docs: add update instructions for 1.20 by
[@​sagikazarmark](https://redirect.github.com/sagikazarmark ) in
[https://github.com/spf13/viper/pull/1992 ](https://redirect.github.com/spf13/viper/pull/1992 )
#### New Contributors
- [@​obs-gh-alexlew](https://redirect.github.com/obs-gh-alexlew )
made their first contribution in
[https://github.com/spf13/viper/pull/1887 ](https://redirect.github.com/spf13/viper/pull/1887 )
- [@​martinconic](https://redirect.github.com/martinconic ) made
their first contribution in
[https://github.com/spf13/viper/pull/1894 ](https://redirect.github.com/spf13/viper/pull/1894 )
- [@​deining](https://redirect.github.com/deining ) made their
first contribution in
[https://github.com/spf13/viper/pull/1965 ](https://redirect.github.com/spf13/viper/pull/1965 )
**Full Changelog**:
https://github.com/spf13/viper/compare/v1.19.0...v1.20.0
</details>
<details>
<summary>golang/go (go)</summary>
###
[`v1.24.4`](https://redirect.github.com/golang/go/compare/go1.24.3...go1.24.4 )
###
[`v1.24.3`](https://redirect.github.com/golang/go/compare/go1.24.2...go1.24.3 )
</details>
<details>
<summary>open-telemetry/opentelemetry-go
(go.opentelemetry.io/otel)</summary>
###
[`v1.37.0`](https://redirect.github.com/open-telemetry/opentelemetry-go/releases/tag/v1.37.0 ):
/v0.59.0/v0.13.0
[Compare
Source](https://redirect.github.com/open-telemetry/opentelemetry-go/compare/v1.36.0...v1.37.0 )
##### Added
- The `go.opentelemetry.io/otel/semconv/v1.33.0` package.
The package contains semantic conventions from the `v1.33.0` version of
the OpenTelemetry Semantic Conventions.
See the [migration documentation](./semconv/v1.33.0/MIGRATION.md) for
information on how to upgrade from
`go.opentelemetry.io/otel/semconv/v1.32.0.`([#​6799](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6799 ))
- The `go.opentelemetry.io/otel/semconv/v1.34.0` package.
The package contains semantic conventions from the `v1.34.0` version of
the OpenTelemetry Semantic Conventions.
([#​6812](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6812 ))
- Add metric's schema URL as `otel_scope_schema_url` label in
`go.opentelemetry.io/otel/exporters/prometheus`.
([#​5947](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/5947 ))
- Add metric's scope attributes as `otel_scope_[attribute]` labels in
`go.opentelemetry.io/otel/exporters/prometheus`.
([#​5947](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/5947 ))
- Add `EventName` to `EnabledParameters` in
`go.opentelemetry.io/otel/log`.
([#​6825](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6825 ))
- Add `EventName` to `EnabledParameters` in
`go.opentelemetry.io/otel/sdk/log`.
([#​6825](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6825 ))
- Changed handling of `go.opentelemetry.io/otel/exporters/prometheus`
metric renaming to add unit suffixes when it doesn't match one of the
pre-defined values in the unit suffix map.
([#​6839](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6839 ))
##### Changed
- The semantic conventions have been upgraded from `v1.26.0` to
`v1.34.0` in `go.opentelemetry.io/otel/bridge/opentracing`.
([#​6827](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6827 ))
- The semantic conventions have been upgraded from `v1.26.0` to
`v1.34.0` in `go.opentelemetry.io/otel/exporters/zipkin`.
([#​6829](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6829 ))
- The semantic conventions have been upgraded from `v1.26.0` to
`v1.34.0` in `go.opentelemetry.io/otel/metric`.
([#​6832](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6832 ))
- The semantic conventions have been upgraded from `v1.26.0` to
`v1.34.0` in `go.opentelemetry.io/otel/sdk/resource`.
([#​6834](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6834 ))
- The semantic conventions have been upgraded from `v1.26.0` to
`v1.34.0` in `go.opentelemetry.io/otel/sdk/trace`.
([#​6835](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6835 ))
- The semantic conventions have been upgraded from `v1.26.0` to
`v1.34.0` in `go.opentelemetry.io/otel/trace`.
([#​6836](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6836 ))
- `Record.Resource` now returns `*resource.Resource` instead of
`resource.Resource` in `go.opentelemetry.io/otel/sdk/log`.
([#​6864](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6864 ))
- Retry now shows error cause for context timeout in
`go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc`,
`go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc`,
`go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc`,
`go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp`,
`go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp`,
`go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp`.
([#​6898](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6898 ))
##### Fixed
- Stop stripping trailing slashes from configured endpoint URL in
`go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc`.
([#​6710](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6710 ))
- Stop stripping trailing slashes from configured endpoint URL in
`go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp`.
([#​6710](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6710 ))
- Stop stripping trailing slashes from configured endpoint URL in
`go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc`.
([#​6710](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6710 ))
- Stop stripping trailing slashes from configured endpoint URL in
`go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp`.
([#​6710](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6710 ))
- Validate exponential histogram scale range for Prometheus
compatibility in `go.opentelemetry.io/otel/exporters/prometheus`.
([#​6822](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6822 ))
- Context cancellation during metric pipeline produce does not corrupt
data in `go.opentelemetry.io/otel/sdk/metric`.
([#​6914](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6914 ))
##### Removed
- `go.opentelemetry.io/otel/exporters/prometheus` no longer exports
`otel_scope_info` metric.
([#​6770](https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6770 ))
#### What's Changed
- Fix dependencies to unreleased sdk/logtest by
[@​dmathieu](https://redirect.github.com/dmathieu ) in
[https://github.com/open-telemetry/opentelemetry-go/pull/6800 ](https://redirect.github.com/open-telemetry/opentelemetry-go/pull/6800 )
- Release experimental logs 0.12.1 by
[@​dmathieu](https://redirect.github.com/dmathieu ) in
[https://github.com/open-telemetry/opentelemetry-go/pull/6802 ](https://redirect.github.com/open-telemetry/opentelemetry-go/pull/6802 )
- Fix broken link in changelog by
[@​MrAlias](https://redirect.github.com/MrAlias ) in
[https://github.com/open-telemetry/opentelemetry-go/pull/6805 ](https://redirect.github.com/open-telemetry/opentelemetry-go/pull/6805 )
- Retract v0.12.0 for log exporters by
[@​MrAlias](https://redirect.github.com/MrAlias ) in
[https://github.com/open-telemetry/opentelemetry-go/pull/6804 ](https://redirect.github.com/open-telemetry/opentelemetry-go/pull/6804 )
- chore(deps): update python:3.13.3-slim-bullseye docker digest to
[`45338d2`](https://redirect.github.com/open-telemetry/opentelemetry-go/commit/45338d2 )
by [@​renovate](https://redirect.github.com/renovate ) in
[https://github.com/open-telemetry/opentelemetry-go/pull/6807 ](https://redirect.github.com/open-telemetry/opentelemetry-go/pull/6807 )
- remove internal/matchers by
[@​codeimmortal](https://redirect.github.com/codeimmortal ) in
[https://github.com/open-telemetry/opentelemetry-go/pull/6777 ](https://redirect.github.com/open-telemetry/opentelemetry-go/pull/6777 )
- Release log/v0.12.2 by
[@​MrAlias](https://redirect.github.com/MrAlias ) in
[https://github.com/open-telemetry/opentelemetry-go/pull/6806 ](https://redirect.github.com/open-telemetry/opentelemetry-go/pull/6806 )
- chore(deps): update python:3.13.3-slim-bullseye docker digest to
[`f0acec6`](https://redirect.github.com/open-telemetry/opentelemetry-go/commit/f0acec6 )
by [@​renovate](https://redirect.github.com/renovate ) in
[https://github.com/open-telemetry/opentelemetry-go/pull/6810 ](https://redirect.github.com/open-telemetry/opentelemetry-go/pull/6810 )
- Update the required approvals policy by
[@​MrAlias](https://redirect.github.com/MrAlias ) in
[https://github.com/open-telemetry/opentelemetry-go/pull/6783 ](https://redirect.github.com/open-telemetry/opentelemetry-go/pull/6783 )
- Generate `semconv/v1.33.0` by
[@​MrAlias](https://redirect.github.com/MrAlias ) in
[https://github.com/open-telemetry/opentelemetry-go/pull/6799 ](https://redirect.github.com/open-telemetry/opentelemetry-go/pull/6799 )
- chore(deps): update module github.com/jgautheron/goconst to v1.8.2 by
[@​renovate](https://redirect.github.com/renovate ) in
[https://github.com/open-telemetry/opentelemetry-go/pull/6815 ](https://redirect.github.com/open-telemetry/opentelemetry-go/pull/6815 )
- chore(deps): update module
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Enabled.
♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.
👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions ) if
that's undesired.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/ ).
View the [repository job
log](https://developer.mend.io/github/open-feature/flagd ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNy4yIiwidXBkYXRlZEluVmVyIjoiNDEuMTcuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsicmVub3ZhdGUiXX0=-->
---------
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Todd Baert <todd.baert@dynatrace.com>
2025-07-04 16:10:16 -04:00
Todd Baert
b49abf9506
feat!: flagSetMetadata in OFREP/ResolveAll, core refactors ( #1540 )
...
⚠️ This PR brings a breaking change to the
[flagd-core](https://pkg.go.dev/github.com/open-feature/flagd/core )
library: the `IStore` interface now returns an additional value
representing the flag set metadata. There are no breaking changes in
flagd's behavior.
Changes in flagd:
- returns flag set metadata as metadata for error flags (best effort)
- returns flag set metadata in OFREP and RPC calls
- moves metadata merging logic to evaluator (all flags inherent flag set
metadata, but can override, as as before but now reusable in flagd core)
- removes duplicated flag set metadata keys when the same flag set
metadata key exists in multiple sources
### To Test
- requires `curl`, `grpcurl`, and `jq`
#### RPC
```shell
grpcurl -import-path /...../schemas/protobuf/flagd/evaluation/v1 -proto evaluation.proto -plaintext localhost:8013 flagd.evaluation.v1.Service/ResolveAll | jq
```
### OFREP
```shell
curl --location 'http://localhost:8016/ofrep/v1/evaluate/flags ' --header 'Content-Type: application/json' --data '{"context": {"color": "yellow"}}' | jq
```
### Sync
```shell
grpcurl -import-path /...../schemas/protobuf/flagd/sync/v1/ -proto sync.proto -plaintext localhost:8015 flagd.sync.v1.FlagSyncService/FetchAllFlags | jq -r .flagConfiguration | jq
```
---------
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
2025-01-31 10:54:47 -05:00
aasifkhan7
13fbbad4d8
feat: support flag metadata ( #1476 )
...
- Adds functionality to return flag metadata as part of the response.
Signed-off-by: Aasif Khan <aasifk106@gmail.com>
2025-01-15 14:49:03 -05:00
Kavindu Dodanduwa
b9c099cb7f
feat!: support emitting errors from the bulk evaluator ( #1338 )
...
Fixes #1328
### Improvement
flagd's core components are intended to be reused. This PR change
the`IStore` interface by allowing an error to be returned from `GetAll`.
This error is then propagated through `ResolveAllValues`. This change
enables custom `IStore` implementations to return errors and propagate
them through the resolver layer.
With this change, I have upgrade OFREP bulk evaluator and flagd RPC
`ResolveAll` with error propagation.
OFREP - Log warning with resolver error and return HTTP 500 with a
tracking reference
RPC - Log warning with resolver error and return an error with a
tracking reference
Signed-off-by: Kavindu Dodanduwa <kavindudodanduwa@gmail.com>
Co-authored-by: Todd Baert <todd.baert@dynatrace.com>
2024-06-27 14:09:16 -04:00
Kavindu Dodanduwa
ed5025d8f2
fix: fixes store merge when selector is used ( #1322 )
...
## This PR
This change address
https://github.com/open-feature/open-feature-operator/issues/664 .
**Background**
We allow using multiple flag source CRDs when using flagd-proxy with
OFO. Internally, this converts to flagd using gRPC syncs with scopes,
where scopes specify the CRD names that need to source flags from.
**Bug**
We had two bugs, first gRPC resyncs never contained `scope`. This is why
we observed `unable to build sync from URI for target` message.
Secondly, we triggered resyncs only considering source equility. This is
not valid with flagd-proxy as we always go through the proxy for any
CRD.
**Fix**
Fix here adds scope to gRPC resyncs and considers both source and
selector equality when triggering a resync
**How to validate the fix**
[Use this
image](https://hub.docker.com/repository/docker/kavindudodanduwa/flagd/general )
with OFO sidecar image override
```helm upgrade --install openfeature openfeature/open-feature-operator --set sidecarConfiguration.image.tag=1,sidecarConfiguration.image.repository=kavindudodanduwa/flagd```
Signed-off-by: Kavindu Dodanduwa <kavindudodanduwa@gmail.com>
2024-06-06 09:36:11 -04:00
Kavindu Dodanduwa
39ae4fe113
feat: improve error log and add flag disabled handling for ofrep ( #1306 )
...
## This PR
- Handle `FlagDisabledErrorCode` and include a specific error message
along with general error code
- Improve error message for targeting rule validation failure
---------
Signed-off-by: Kavindu Dodanduwa <kavindudodanduwa@gmail.com>
2024-05-10 07:34:58 -07:00
Kavindu Dodanduwa
b473457ddf
feat: move json logic operator registration to resolver ( #1291 )
...
## This PR
Attempts to isolate Resolver creation and related logic into a single
component.
Previously, custom Json logic operator registration was done at flagd
using `WithEvaluator` option . But this adds confusion when Resolver
needs to be reused in another component. Further the option was merely
adding the custom operator to json logic through its global methods and
did not perform anything on the evaluator . Given that Resolver is
responsible for flag resolving (core logic of the flag evaluations), I
have deprecated `WithEvaluator` option and added custom json logic
registration as part of the resolver constructor.
I have not removed `JSONEvaluatorOption` option so we have flexibility
to support any future option (ex:-option to have a customized
`IResolver` implemetnation )
Signed-off-by: Kavindu Dodanduwa <kavindudodanduwa@gmail.com>
2024-04-18 14:59:53 -04:00
Kavindu Dodanduwa
0075932259
chore: wire evaluation ctx to store methods ( #1273 )
...
## This PR
A follow-up to https://github.com/open-feature/flagd/pull/1259 where
binds context from evaluation request to store contract (passing context
to `evaluateVariant()`)
No changes for evaluation logic or any other component
Signed-off-by: Kavindu Dodanduwa <kavindudodanduwa@gmail.com>
2024-04-05 12:39:02 -07:00
Kavindu Dodanduwa
0e6604cd03
chore: refactor evaluation core ( #1259 )
...
## This PR
Refactor the flagd evaluator such that storage and evaluation logic are
isolated. This allows us to plug any storage layer to the same
evaluation logic, which could be valuable in the long run

---------
Signed-off-by: Kavindu Dodanduwa <kavindudodanduwa@gmail.com>
2024-04-03 06:59:46 -07:00
Kavindu Dodanduwa
9d12fc2070
feat: OFREP support for flagd ( #1247 )
...
## This PR
Fixes #1245 and introduce OFREP support for flagd
OFREP service runs on 8016 by default and can simply use curl for flag
evaluations,
```shell
curl -X POST 'http://localhost:8016/ofrep/v1/evaluate/flags/myBoolFlag '
```
NOTE - This PR touch several files as I had to migrate from
`github.com/golang/mock/gomock` to `go.uber.org/mock/gomock`. This is
because https://github.com/golang/mock is no longer maintained.
---------
Signed-off-by: Kavindu Dodanduwa <kavindudodanduwa@gmail.com>
Signed-off-by: Kavindu Dodanduwa <Kavindu-Dodan@users.noreply.github.com>
Co-authored-by: Giovanni Liva <giovanni.liva@dynatrace.com>
Co-authored-by: Florian Bacher <florian.bacher@dynatrace.com>
2024-03-27 10:03:01 -07:00
Todd Baert
396c618bac
docs: update schemas ( #1158 )
...
Absorbs new schema, and go module changes from:
https://github.com/open-feature/flagd-schemas/pull/128
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
2024-01-19 10:06:48 -05:00
Best Olunusi
b727dd00c5
feat: add targeting validation ( #1146 )
...
- adds targeting validation
- updates sample json files
- updates schemas modules to most recent release
Closes #1140
Signed-off-by: Best Olunusi <olunusibest@gmail.com>
Co-authored-by: Todd Baert <todd.baert@dynatrace.com>
2024-01-16 13:28:20 -05:00
Florian Bacher
d39f31d65b
chore: renaming of evaluation components ( #1064 )
...
This PR improves the naming of the evaluation components. Changes made:
- Renamed `eval` package to `evaluator`
- Removed the `Evaluation`/`Evaluator` suffixes of structs within the
`evaluator ` package
Signed-off-by: Florian Bacher <florian.bacher@dynatrace.com>
2023-12-14 16:32:01 -05:00