Closed jsantell closed 1 year ago
Merging #105 (b4a9ebc) into main (3d30ec8) will increase coverage by
1.31%
. The diff coverage is64.06%
.
:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Oh, should also call out that as of this change we will likely be removing support for UCAN IPLD (to be re-introduced at some future date as the spec is updated to be coherent with v0.10.0+).
Now with working caveats, testing the cases in the spec.
CapabilityView
).
Capabilities
representing the "serialized" map-of-map nature of the changes in UCAN 0.9/0.10.Capability
are deconstructed, "deserialized" individual capabilities generated from Capabilities
, reduced to a single resource/ability/caveat per. This form is in-line with the current implementation, and the easiest way (IMO) of working with capabilities.CapabilityView
, a Capability
imbued with semantics, used in proof reduction and validation.ResourceURI
naming. This may also change when swapping out my/as with ucan, etc. Open to ideas for naming in src/capability/
as well e.g. data.rs
.UcanBuilder::claiming_capability_from_data
and UcanBuilder::claiming_capabilities_from_data
functions. As semantics are only used in proof chain reduction, claim_capability
/claim_capabilities
could ingest the data forms, and we introduce a new method to build via semantics/views. Additionally, other tests could use these "raw capabilities", as only proof chain parsing needs to imbue semantics as well.Updated:
UcanBuilder::claiming_capability
now generic over C: Into<Capability>
and UcanBuilder::claiming_capabilities
for the &[C]
variant.clone()
and into()
for previous claiming_capability
implementations
Initial work on updating to support latest capabilities in Ucan spec 0.9.0/0.10.0, with a goal of moving closer to the final serializable shape.
Looking for feedback on:
[]
) inreduce_capabilities()
, or we can introduce a semantical layer (as part ofCapabilitySemantics<S, A, C>
), but unclear what that looks like and how it would work.semantics
that could use some improvements