hyperledger / aries-vcx

aries-vcx is set of crates to work with DIDs, DID Documents, DIDComm, Verifiable Credentials and Hyperledger Aries.
https://didcomm.org
Apache License 2.0
125 stars 83 forks source link

[Update] Update to anoncreds-rs 0.2 #1213

Closed gmulhearn-anonyome closed 5 months ago

gmulhearn-anonyome commented 5 months ago

In order to migrate off of mirgee's fork and onto 0.2.0, we lose the following patches made on 0.2.0: https://github.com/hyperledger/anoncreds-rs/compare/v0.2.0...mirgee:anoncreds-rs:refactor/public-api-changes.

However we can get around those public APIs being missing by using into our Convert layer: we can switch between the anoncreds-rs definition of RevocationStatusList, and our own anoncreds_types definition of RevocationStatusList. These definitions are exactly the same, and JSON de/serialize the exact same way, however our version has the public APIs we need. So we can switch between theirs and ours when we need to.

Note that it is not perfectly efficient, as we are converting to JSON Value as an intermediate type (as we do for some other anoncreds types too), but this could potentially be cleaned up if we fully move to using the real types from anoncreds-rs crate.

gmulhearn-anonyome commented 5 months ago

@JamesKEbert thoughts on this? it gets us off the forked version of anoncreds-rs, but continues to lean into the potential longer-term issues with anoncreds_types that we discussed in #1212

JamesKEbert commented 5 months ago

DCO check is broken as noted here--https://discord.com/channels/905194001349627914/1156961689971998782/1247613586638110894 I can take a look at the workaround tomorrow morning

gmulhearn commented 5 months ago

@JamesKEbert ow yea yes please. didn't notice it was stuck 😅. i'll leave this PR unmerged for now