v3.3.0
Release 3.3.0, available on crates.io
Added
- JSON representation for Policy Sets, along with methods like
::from_json_value/file/str
and::to_json
forPolicySet
. (#783,
resolving #549) - Methods for reading and writing individual
Entity
s as JSON (#924,
resolving #807) Context::into_iter
to get the contents of aContext
andContext::merge
to combineContext
s, returning an error on duplicate keys (#1027,
resolving #1013)- Several new APIs for schemas to allow accessing principal and resource
types, action entity uids, etc. (#1141, resolving #1134)
Changed
- Added deprecation warnings to APIs that will be removed in the upcoming 4.0
release, as well as wrapper methods with the new names, where appropriate.
See the notes under that release for more details. (#1128) - Reduced precision of partial evaluation for
||
,&&
, and conditional
expressions.if { foo : <unknown> }.foo then 1 + "hi" else false
now
evaluates toif <unknown> then 1 + "hi" else false
. (#874) - Removed the
error
extension function, which was previously used during
partial evaluation. (#874)
Fixed
- (*) JSON format Cedar policies will now fail to parse if the action scope
constraint contains a non-action entity type, matching the behavior for
human-readable Cedar policies. (#943, resolving #925) Template
parsing functions (e.g.,Template::parse()
) will now fail when
passed a static policy as input. Use thePolicy
parsing functions instead.
(#1108, resolving #1095)