Skip to content

Latest commit

 

History

History
790 lines (664 loc) · 130 KB

CHANGELOG.md

File metadata and controls

790 lines (664 loc) · 130 KB

Change Log

All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.

0.5.3 (2024-05-01)

Bug Fixes

  • allow did document for didcomm without authentication or keyAgreement (#1848) (5d986f0)
  • anoncreds: migration script credential id (#1849) (e58ec5b)
  • cheqd create from did document (#1850) (dcd028e)
  • store recipient keys by default (#1847) (e9238cf)

0.5.2 (2024-04-26)

Bug Fixes

Features

0.5.1 (2024-03-28)

Bug Fixes

Features

0.5.0 (2024-03-13)

Bug Fixes

Features

BREAKING CHANGES

  • IndyVdrApi.getAllPoolTransactions() now returns an array of objects containing transactions and config of each pool
{
    config: IndyVdrPoolConfig;
    transactions: Transactions;
}

0.4.2 (2023-10-05)

Bug Fixes

  • askar: throw error if imported wallet exists (#1593) (c2bb2a5)
  • cheqd: changed the name formatting to a encoded hex value (#1574) (d299f55)
  • core: remove node-fetch dependency (#1578) (9ee2ce7)
  • do not send package via outdated session (#1559) (de6a735)
  • duplicate service ids in connections protocol (#1589) (dd75be8)
  • implicit invitation to specific service (#1592) (4071dc9)
  • log and throw on WebSocket sending errors (#1573) (11050af)
  • oob: support oob with connection and messages (#1558) (9732ce4)
  • service validation in OOB invitation objects (#1575) (91a9434)
  • update tsyringe for ts 5 support (#1588) (296955b)

Features

  • allow connection invitation encoded in oob url param (#1583) (9d789fa)

0.4.1 (2023-08-28)

Bug Fixes

Features

0.4.0 (2023-06-03)

Bug Fixes

Features

BREAKING CHANGES

  • Dispatcher.registerMessageHandler has been removed in favour of MessageHandlerRegistry.registerMessageHandler. If you want to register message handlers in an extension module, you can use directly agentContext.dependencyManager.registerMessageHandlers.

Signed-off-by: Ariel Gentile gentilester@gmail.com

  • Agent default outbound content type has been changed to DIDComm V1. If you want to use former behaviour, you can do it so by manually setting didcommMimeType in Agent's init config:
  const agent = new Agent({ config: {
     ...
     didCommMimeType: DidCommMimeType.V0
  }, ...  })
  • Agent-produced files will now be divided in different system paths depending on their nature: data, temp and cache. Previously, they were located at a single location, defaulting to a temporary directory.

If you specified a custom path in FileSystem object constructor, you now must provide an object containing baseDataPath, baseTempPath and baseCachePath. They can point to the same path, although it's recommended to specify different path to avoid future file clashes.

0.3.3 (2023-01-18)

Bug Fixes

Features

0.3.2 (2023-01-04)

Bug Fixes

  • credentials: typing if no modules provided (#1188) (541356e)

0.3.1 (2022-12-27)

Bug Fixes

0.3.0 (2022-12-22)

Bug Fixes

  • connections: do not log AgentContext object (#1085) (ef20f1e)

  • connections: use new did for each connection from reusable invitation (#1174) (c0569b8)

  • credential values encoding (#1157) (0e89e6c)

  • demo: direct import to remove warnings (#1094) (6747756)

  • expose AttachmentData and DiscoverFeaturesEvents (#1146) (e48f481)

  • expose OutOfBandEvents (#1151) (3c040b6)

  • invalid injection symbols in W3cCredService (#786) (38cb106)

  • peer dependency for rn bbs signatures (#785) (c751e28)

  • problem-report: proper string interpolation (#1120) (c4e9679)

  • proofs: await shouldAutoRespond to correctly handle the check (#1116) (f294129)

  • react-native: move bbs dep to bbs package (#1076) (c6762bb)

  • remove sensitive information from agent config toJSON() method (#1112) (427a80f)

  • routing: add connection type on mediation grant (#1147) (979c695)

  • routing: async message pickup on init (#1093) (15cfd91)

  • unable to resolve nodejs document loader in react native environment (#1003) (5cdcfa2)

  • use custom document loader in jsonld.frame (#1119) (36d4656)

  • vc: change pubKey input from Buffer to Uint8Array (#935) (80c3740)

  • refactor!: rename Handler to MessageHandler (#1161) (5e48696), closes #1161

  • feat!: use did:key in protocols by default (#1149) (9f10da8), closes #1149

  • feat(action-menu)!: move to separate package (#1049) (e0df0d8), closes #1049

  • feat(question-answer)!: separate logic to a new module (#1040) (97d3073), closes #1040

  • feat!: agent module registration api (#955) (82a17a3), closes #955

  • feat!: Discover Features V2 (#991) (273e353), closes #991

  • refactor!: module to api and module config (#943) (7cbccb1), closes #943

  • refactor!: add agent context (#920) (b47cfcb), closes #920

Features

BREAKING CHANGES

  • Handler has been renamed to MessageHandler to be more descriptive, along with related types and methods. This means:

Handler is now MessageHandler HandlerInboundMessage is now MessageHandlerInboundMessage Dispatcher.registerHandler is now Dispatcher.registerMessageHandlers

  • useDidKeyInProtocols configuration parameter is now enabled by default. If your agent only interacts with modern agents (e.g. AFJ 0.2.5 and newer) this will not represent any issue. Otherwise it is safer to explicitly set it to false. However, keep in mind that we expect this setting to be deprecated in the future, so we encourage you to update all your agents to use did:key.
  • action-menu module has been removed from the core and moved to a separate package. To integrate it in an Agent instance, it can be injected in constructor like this:
const agent = new Agent({
  config: {
    /* config */
  },
  dependencies: agentDependencies,
  modules: {
    actionMenu: new ActionMenuModule(),
    /* other custom modules */
  },
})

Then, module API can be accessed in agent.modules.actionMenu.

  • question-answer module has been removed from the core and moved to a separate package. To integrate it in an Agent instance, it can be injected in constructor like this:
const agent = new Agent({
  config: {
    /* config */
  },
  dependencies: agentDependencies,
  modules: {
    questionAnswer: new QuestionAnswerModule(),
    /* other custom modules */
  },
})

Then, module API can be accessed in agent.modules.questionAnswer.

  • custom modules have been moved to the .modules namespace. In addition the agent constructor has been updated to a single options object that contains the config and dependencies properties. Instead of constructing the agent like this:
const agent = new Agent(
  {
    /* config */
  },
  agentDependencies
)

You should now construct it like this:

const agent = new Agent({
  config: {
    /* config */
  },
  dependencies: agentDependencies,
})

This allows for the new custom modules to be defined in the agent constructor.

    • queryFeatures method parameters have been unified to a single QueryFeaturesOptions object that requires specification of Discover Features protocol to be used.
  • isProtocolSupported has been replaced by the more general synchronous mode of queryFeatures, which works when awaitDisclosures in options is set. Instead of returning a boolean, it returns an object with matching features
  • Custom modules implementing protocols must register them in Feature Registry in order to let them be discovered by other agents (this can be done in module register(dependencyManager, featureRegistry) method)
  • All module api classes have been renamed from XXXModule to XXXApi. A module now represents a module plugin, and is separate from the API of a module. If you previously imported e.g. the CredentialsModule class, you should now import the CredentialsApi class
  • To make AFJ multi-tenancy ready, all services and repositories have been made stateless. A new AgentContext is introduced that holds the current context, which is passed to each method call. The public API hasn't been affected, but due to the large impact of this change it is marked as breaking.

0.2.5 (2022-10-13)

Bug Fixes

  • oob: allow encoding in content type header (#1037) (e1d6592)
  • oob: set connection alias when creating invitation (#1047) (7be979a)

Features

0.2.4 (2022-09-10)

Bug Fixes

  • avoid crash when an unexpected message arrives (#1019) (2cfadd9)
  • ledger: check taa version instad of aml version (#1013) (4ca56f6)
  • ledger: remove poolConnected on pool close (#1011) (f0ca8b6)
  • question-answer: question answer protocol state/role check (#1001) (4b90e87)

Features

  • Action Menu protocol (Aries RFC 0509) implementation (#974) (60a8091)
  • routing: add settings to control back off strategy on mediator reconnection (#1017) (543437c)

0.2.3 (2022-08-30)

Bug Fixes

Features

0.2.2 (2022-07-15)

Bug Fixes

Features

  • oob: support fetching shortened invitation urls (#840) (60ee0e5)
  • routing: support did:key in RFC0211 (#950) (dc45c01)

0.2.1 (2022-07-08)

Bug Fixes

Features

  • credentials: added credential sendProblemReport method (#906) (90dc7bb)
  • initial plugin api (#907) (6d88aa4)
  • oob: allow to append attachments to invitations (#926) (4800700)
  • routing: add routing service (#909) (6e51e90)

0.2.0 (2022-06-24)

Bug Fixes

  • add BBS context to DidDoc (#789) (c8ca091)
  • add oob state and role check (#777) (1c74618)
  • agent isinitialized on shutdown (#665) (d1049e0)
  • allow agent without inbound endpoint to connect when using multi-use invitation (#712) (01c5bb3), closes #483
  • basic-message: assert connection is ready (#657) (9f9156c)
  • check for "REQNACK" response from indy ledger (#626) (ce66f07)
  • check proof request group names do not overlap (#638) (0731ccd)
  • clone record before emitting event (#833) (8192861)
  • close session early if no return route (#715) (2e65408)
  • connections: allow ; to convert legacy did (#882) (448a29d)
  • connections: didexchange to connection state (#823) (dda1bd3)
  • connections: fix log of object in string (#904) (95d893e)
  • connections: set image url in create request (#896) (8396965)
  • core: allow JSON as input for indy attributes (#813) (478fda3)
  • core: error if unpacked message does not match JWE structure (#639) (c43cfaa)
  • core: expose CredentialPreviewAttribute (#796) (65d7f15)
  • core: set tags in MediationRecord constructor (#686) (1b01bce)
  • credential preview attributes mismatch schema attributes (#625) (c0095b8)
  • credentials: add missing issue credential v1 proposal attributes (#798) (966cc3d)
  • credentials: default for credentials in exchange record (#816) (df1a00b)
  • credentials: do not store offer attributes (#892) (39c4c0d)
  • credentials: indy cred attachment format (#862) (16935e2)
  • credentials: miscellaneous typing issues (#880) (ad35b08)
  • credentials: parse and validate preview @type (#861) (1cc8f46)
  • credentials: proposal preview attribute (#855) (3022bd2)
  • credentials: store revocation identifiers (#864) (7374799)
  • credentials: use interface in module api (#856) (58e6603)
  • delete credentials (#766) (cbdff28)
  • delete credentials (#770) (f1e0412)
  • did sov service type resolving (#689) (dbcd8c4)
  • disallow floating promises (#704) (549647d)
  • disallow usage of global buffer (#601) (87ecd8c)
  • do not import from src dir (#748) (1dfa32e)
  • do not import test logger in src (#746) (5c80004)
  • do not use basic message id as record id (#677) (3713398)
  • extract indy did from peer did in indy credential request (#790) (09e5557)
  • incorrect encoding of services for did:peer (#610) (28b1715)
  • indy: async ledger connection issues on iOS (#803) (8055652)
  • issue where attributes and predicates match (#640) (15a5e6b)
  • leading zeros in credential value encoding (#632) (0d478a7)
  • mediation record checks for pickup v2 (#736) (2ad600c)
  • miscellaneous issue credential v2 fixes (#769) (537b51e)
  • node: allow to import node package without postgres (#757) (59e1058)
  • node: only send 500 if no headers sent yet (#857) (4be8f82)
  • oob: allow legacy did sov prefix (#889) (c7766d0)
  • oob: check service is string instance (#814) (bd1e677)
  • oob: export messages to public (#828) (10cf74d)
  • oob: expose oob record (#839) (c297dfd)
  • oob: expose parseInvitation publicly (#834) (5767500)
  • oob: legacy invitation with multiple endpoint (#825) (8dd7f80)
  • optional fields in did document (#726) (2da845d)
  • process ws return route messages serially (#826) (2831a8e)
  • proofs: allow duplicates in proof attributes (#848) (ca6c1ce)
  • propose payload attachment in in snake_case JSON format (#775) (6c2dfdb)
  • relax validation of thread id in revocation notification (#768) (020e6ef)
  • remove deprecated multibase and multihash (#674) (3411f1d)
  • remove unqualified did from out of band record (#782) (0c1423d)
  • remove usage of const enum (#888) (a7754bd)
  • routing: also use pickup strategy from config (#808) (fd08ae3)
  • routing: mediation recipient role for recipient (#661) (88ad790)
  • routing: remove sentTime from request message (#670) (1e9715b)
  • routing: sending of trustping in pickup v2 (#787) (45b024d)
  • send message to service (#838) (270c347)
  • support pre-aip2 please ack decorator (#835) (a4bc215)
  • update inbound message validation (#678) (e383343)
  • verify jws contains at least 1 signature (#600) (9c96518)

Code Refactoring

  • delete credentials by default when deleting exchange (#767) (656ed73)

  • do not add ~service in createOOBOffer method (#772) (a541949)

  • chore!: update indy-sdk-react-native version to 0.2.0 (#754) (4146778), closes #754

Features

  • 0.2.0 migration script for connections (#773) (0831b9b)
  • ability to add generic records (#702) (e617496), closes #688
  • add didcomm message record (#593) (e547fb1)
  • add find and save/update methods to DidCommMessageRepository (#620) (beff6b0)
  • add generic did resolver (#554) (8e03f35)
  • add issue credential v2 (#745) (245223a)
  • add out-of-band and did exchange (#717) (16c6d60)
  • add question answer protocol (#557) (b5a2536)
  • add role and method to did record tags (#692) (3b6504b)
  • add support for did:peer (#608) (c5c4172)
  • add support for signed attachments (#595) (eb49374)
  • add update assistant for storage migrations (#690) (c9bff93)
  • add validation to JSON transformer (#830) (5b9efe3)
  • add wallet key derivation method option (#650) (8386506)
  • add wallet module with import export (#652) (6cf5a7b)
  • core: add support for postgres wallet type (#699) (83ff0f3)
  • core: added timeOut to the module level (#603) (09950c7)
  • core: allow to set auto accept connetion exchange when accepting invitation (#589) (2d95dce)
  • core: generic repository events (#842) (74dd289)
  • credentials: add get format data method (#877) (521d489)
  • credentials: delete associated didCommMessages (#870) (1f8b6ab)
  • credentials: find didcomm message methods (#887) (dc12427)
  • delete credential from wallet (#691) (abec3a2)
  • extension module creation (#688) (2b6441a)
  • filter retrieved credential by revocation state (#641) (5912c0c)
  • indy revocation (prover & verifier) (#592) (fb19ff5)
  • indy: add choice for taa mechanism (#849) (ba03fa0)
  • ledger connections happen on agent init in background (#580) (61695ce)
  • pickup v2 protocol (#711) (b281673)
  • regex for schemaVersion, issuerDid, credDefId, schemaId, schemaIssuerDid (#679) (36b9d46)
  • routing: allow to discover mediator pickup strategy (#669) (5966da1)
  • support advanced wallet query (#831) (28e0ffa)
  • support handling messages with different minor version (#714) (ad12360)
  • support new did document in didcomm message exchange (#609) (a1a3b7d)
  • support revocation notification messages (#579) (9f04375)
  • support wallet key rotation (#672) (5cd1598)
  • update recursive backoff & trust ping record updates (#631) (f64a9da)

BREAKING CHANGES

  • indy: the transaction author agreement acceptance mechanism was previously automatically the first acceptance mechanism from the acceptance mechanism list. With this addition, the framework never automatically selects the acceptance mechanism anymore and it needs to be specified in the transactionAuthorAgreement in the indyLedgers agent config array.
  • the credentials associated with a credential exchange record are now deleted by default when deleting a credential exchange record. If you only want to delete the credential exchange record and not the associated credentials, you can pass the deleteAssociatedCredentials to the deleteById method:
await agent.credentials.deleteById('credentialExchangeId', {
  deleteAssociatedCredentials: false,
})
  • with the addition of the out of band module credentials.createOutOfBandOffer is renamed to credentials.createOffer and no longer adds the ~service decorator to the message. You need to call oob.createLegacyConnectionlessInvitation afterwards to use it for AIP-1 style connectionless exchanges. See Migrating from AFJ 0.1.0 to 0.2.x for detailed migration instructions.
  • the connections module has been extended with an out of band module and support for the DID Exchange protocol. Some methods have been moved to the out of band module, see Migrating from AFJ 0.1.0 to 0.2.x for detailed migration instructions.
  • indy-sdk-react-native has been updated to 0.2.0. The new version now depends on libindy version 1.16 and requires you to update the binaries in your react-native application. See the indy-sdk-react-native repository for instructions on how to get the latest binaries for both iOS and Android.
  • The mediator pickup strategy enum value MediatorPickupStrategy.Explicit has been renamed to MediatorPickupStrategy.PickUpV1 to better align with the naming of the new MediatorPickupStrategy.PickUpV2
  • attachment method getDataAsJson is now located one level up. So instead of attachment.data.getDataAsJson() you should now call attachment.getDataAsJson()

0.1.0 (2021-12-23)

Bug Fixes

  • add details to connection signing error (#484) (e24eafd)
  • add error message to log (#342) (a79e4f4)
  • add option check to attribute constructor (#450) (8aad3e9)
  • Add samples folder as test root (#215) (b6a3c1c)
  • added ariesframeworkerror to httpoutboundtransport (#438) (ee1a229)
  • alter mediation recipient websocket transport priority (#434) (52c7897)
  • check instance types of record properties (#163) (cc61c80)
  • connection record type was BaseRecord (#278) (515395d)
  • convert from buffer now also accepts uint8Array (#283) (dae123b)
  • core: convert legacy prefix for inner msgs (#479) (a2b655a)
  • core: do not throw error on timeout in http (#512) (4e73a7b)
  • core: do not use did-communication service (#402) (cdf2edd)
  • core: export AgentMessage (#480) (af39ad5)
  • core: expose record metadata types (#556) (68995d7)
  • core: fix empty error log in console logger (#524) (7d9c541)
  • core: improve wallet not initialized error (#513) (b948d4c)
  • core: improved present-proof tests (#482) (41d9282)
  • core: log errors if message is undeliverable (#528) (20b586d)
  • core: remove isPositive validation decorators (#477) (e316e04)
  • core: remove unused url import (#466) (0f1323f)
  • core: requested predicates transform type (#393) (69684bc)
  • core: send messages now takes a connection id (#491) (ed9db11)
  • core: using query-string to parse URLs (#457) (78e5057)
  • Correctly persist createdAt attribute (#119) (797a112), closes #118
  • date parsing (#426) (2d31b87)
  • export indy pool config (#504) (b1e2b8c)
  • export module classes from framework root (#315) (a41cc75)
  • export ProofsModule to public API (#325) (f2e3a06)
  • handle receive message promise rejection (#318) (ca6fb13)
  • include error when message cannot be handled (#533) (febfb05)
  • incorrect recip key with multi routing keys (#446) (db76823)
  • legacy did:sov prefix on invitation (#216) (dce3081)
  • make presentation proposal optional (#197) (1c5bfbd)
  • make records serializable (#448) (7e2946e)
  • mediator transports (#419) (87bc589)
  • mediator updates (#432) (163cda1)
  • monorepo release issues (#386) (89a628f)
  • node: node v12 support for is-indy-installed (#542) (17e9157)
  • proof configurable on proofRecord (#397) (8e83c03)
  • redux-store: add reducers to initializeStore (#413) (d9aeabf)
  • redux-store: credential and proof selector by id (#407) (fd8933d)
  • Remove apostrophe from connection request message type (#364) (ee81d01)
  • remove dependency on global types (#327) (fb28935)
  • removed check for senderkey for connectionless exchange (#555) (ba3f17e)
  • return valid schema in create schema method (#193) (4ca020b)
  • revert target back to es2017 (#319) (9859db1)
  • revert to ES2017 to fix function generator issues in react native (#226) (6078324)
  • support mediation for connectionless exchange (#577) (3dadfc7)
  • test failing because of moved import (#282) (e5efce0)
  • their did doc not ours (#436) (0226609)
  • use both thread id and connection id (#299) (3366a55)
  • Use custom make-error with cause that works in RN (#285) (799b6c8)
  • websocket and fetch fix for browser (#291) (84e570d)

Code Refactoring

  • make a connection with mediator asynchronously (#231) (bafa839)
  • fix(core)!: Improved typing on metadata api (#585) (4ab8d73), closes #585
  • fix(core)!: update class transformer library (#547) (dee03e3), closes #547
  • fix(core)!: prefixed internal metadata with _internal/ (#535) (aa1b320), closes #535
  • feat(core)!: metadata on records (#505) (c92393a), closes #505
  • fix(core)!: do not request ping res for connection (#527) (3db5519), closes #527
  • refactor(core)!: simplify get creds for proof api (#523) (ba9698d), closes #523
  • fix(core)!: improve proof request validation (#525) (1b4d8d6), closes #525
  • feat(core)!: added basic message sent event (#507) (d2c04c3), closes #507

Features

  • Add assertions for credential state transitions (#130) (00d2b1f), closes #123
  • add credential info to access attributes (#254) (2fef3aa)
  • add delete methods to services and modules (#447) (e7ed602)
  • add dependency injection (#257) (1965bfe)
  • add from record method to cred preview (#428) (895f7d0)
  • add inbound message queue (#339) (93893b7)
  • add internal http outbound transporter (#255) (4dd950e)
  • add internal polling inbound transporter (#323) (6dd273b)
  • add internal ws outbound transporter (#267) (2933207)
  • add isInitialized agent property (#293) (deb5554)
  • add multiple inbound transports (#433) (56cb9f2)
  • add problem report protocol (#560) (baee5db)
  • add support for Multibase, Multihash and Hashlinks (#263) (36ceaea)
  • add support for RFC 0211 mediator coordination (2465d4d)
  • Add support for WebSocket transports (#256) (07b479f)
  • add toJson method to BaseRecord (#455) (f3790c9)
  • Added attachment extension (#266) (e8ab5fa)
  • added decline credential offer method (#416) (d9ac141)
  • added declined proof state and decline method for presentations (e5aedd0)
  • added their label to the connection record (#370) (353e1d8)
  • adds support for linked attachments (#320) (ea91559)
  • allow for lazy wallet initialization (#331) (46918a1)
  • allow to use legacy did sov prefix (#442) (c41526f)
  • auto accept proofs (#367) (735d578)
  • automatic transformation of record classes (#253) (e07b90e)
  • break out indy wallet, better indy handling (#396) (9f1a4a7)
  • core: add discover features protocol (#390) (3347424)
  • core: add support for multi use inviations (#460) (540ad7b)
  • core: connection-less issuance and verification (#359) (fb46ade)
  • core: d_m invitation parameter and invitation image (#456) (f92c322)
  • core: ledger module registerPublicDid implementation (#398) (5f2d512)
  • core: store mediator id in connection record (#503) (da51f2e)
  • core: support image url in invitations (#463) (9fda24e)
  • core: support multiple indy ledgers (#474) (47149bc)
  • core: update agent label and imageUrl plus per connection label and imageUrl (#516) (5e9a641)
  • core: validate outbound messages (#526) (9c3910f)
  • expose wallet API (#566) (4027fc9)
  • generic attachment handler (#578) (4d7d3c1)
  • method to retrieve credentials for proof request (#329) (012afa6)
  • negotiation and auto accept credentials (#336) (55e8697)
  • node: add http and ws inbound transport (#392) (34a6ff2)
  • node: add is-indy-installed command (#510) (e50b821)
  • only connect to ledger when needed (#273) (a9c261e)
  • Pack and send a message based on DidDoc services (#304) (6a26337)
  • redux-store: add mediation store (#424) (03e4341)
  • redux-store: move from mobile agent repo (#388) (d84acc7)
  • redux: delete credentialRecord and proofRecord (#421) (9fa6c6d)
  • support newer did-communication service type (#233) (cf29d8f)
  • support node v12+ (#294) (6ec201b)
  • use computed tags for records (#313) (4e9a48b)
  • Use session to send outbound message (#362) (7366ca7)

BREAKING CHANGES

  • removed the getAll() function.
  • The agent’s shutdown method does not delete the wallet anymore. If you want to delete the wallet, you can do it via exposed wallet API.
  • class-transformer released a breaking change in a patch version, causing AFJ to break. I updated to the newer version and pinned the version exactly as this is the second time this has happened now.
  • internal metadata is now prefixed with _internal to avoid clashing and accidental overwriting of internal data.
  • fix(core): added _internal/ prefix on metadata
  • credentialRecord.credentialMetadata has been replaced by credentialRecord.metadata.
  • a trust ping response will not be requested anymore after completing a connection. This is not required, and also non-standard behaviour. It was also causing some tests to be flaky as response messages were stil being sent after one of the agents had already shut down.
  • The ProofsModule.getRequestedCredentialsForProofRequest expected some low level message objects as input. This is not in line with the public API of the rest of the framework and has been simplified to only require a proof record id and optionally a boolean whether the retrieved credentials should be filtered based on the proof proposal (if available).
  • Proof request requestedAttributes and requestedPredicates are now a map instead of record. This is needed to have proper validation using class-validator.
  • BasicMessageReceivedEvent has been replaced by the more general BasicMessageStateChanged event which triggers when a basic message is received or sent.
  • Tags on a record can now be accessed using the getTags() method. Records should be updated with this method and return the properties from the record to include in the tags.
  • extracts outbound transporter from Agent's constructor.