Summary
Update the flagd-testbed dependency to v3.6.0 and fix the in-process evaluation to pass all new edge-case tests.
Testbed v3.6.0 adds coverage for the edge cases identified in:
Bugs to fix
- sem_ver build metadata not ignored in comparisons; uses
==/< rich comparison operators which include build metadata, violating SemVer 2.0.0 Rule 10 (e.g. "1.0.0+build1" == "1.0.0" returns false instead of true); needs custom comparison logic that strips build metadata
- Mixed
None/False error returns across operators; starts_with and ends_with return None for some error types and False for others; should consistently return None
- No diagnostic feedback on unresolved
$refs at parse time; failure only surfaces at evaluation time via ReferenceError
- $ref regex relies on
json.dumps() output format; no tolerance for whitespace variations in input
Parent: open-feature/flagd#1904
Summary
Update the flagd-testbed dependency to v3.6.0 and fix the in-process evaluation to pass all new edge-case tests.
Testbed v3.6.0 adds coverage for the edge cases identified in:
Bugs to fix
sem_ver (open-feature/flagd#1873)
==/<rich comparison operators which include build metadata, violating SemVer 2.0.0 Rule 10 (e.g."1.0.0+build1" == "1.0.0"returnsfalseinstead oftrue); needs custom comparison logic that strips build metadataCustom operator error returns (open-feature/flagd#1874)
None/Falseerror returns across operators;starts_withandends_withreturnNonefor some error types andFalsefor others; should consistently returnNone$evaluators/$ref resolution (open-feature/flagd#1875)
$refs at parse time; failure only surfaces at evaluation time viaReferenceErrorjson.dumps()output format; no tolerance for whitespace variations in inputParent: open-feature/flagd#1904