Skip to content

Releases: openwallet-foundation/acapy

1.5.1

27 Feb 21:43
4eb3a18

Choose a tag to compare

ACA-Py 1.5.1 is a clean up release primarily to address some follow-on issues related to the 1.5.0 release -- notably with the handling of AnonCreds revocation. There are some convenience additions and a GitHub Actions pipeline fix.

1.5.1 Breaking Changes

There are no breaking changes in this release from 1.5.0. Those upgrading from a version prior to 1.5.0 should review the 1.5.0 Breaking Changes section for details about the breaking changes introduced in 1.5.0.

1.5.1 Deprecation Notices

The acapy_agent.revocation_anoncreds package has been deprecated and relocated to acapy_agent.anoncreds.revocation for improved consistency across the codebase. The change should only affect [ACA-Py Plugins] that implement AnonCreds, but other developers should also take note.

The wallet-type configuration value askar is now deprecated and all deployments still using that wallet type should migrate to either the askar-anoncreds or (ideally) kanon-anoncreds wallet types.

AIP 1.0 protocols that were previously announced as deprecated have now been removed from ACA-Py core. Implementers still using those protocols MUST adjust their configuration to load those protocols from the respective plugins, or better, upgrade to their AIP 2.0 equivalents.

What's Changed

Full Changelog: 1.5.0...1.5.1

1.5.1rc1

24 Feb 15:32
fb5dcdb

Choose a tag to compare

1.5.1rc1 Pre-release
Pre-release

ACA-Py 1.5.1 is a clean up release primarily to address some follow-on issues related to the 1.5.0 release -- notably with the handling of AnonCreds revocation. There are some convenience additions and a GitHub Actions pipeline fix.

1.5.1 Breaking Changes

There are no breaking changes in this release from 1.5.0. Those upgrading from a version prior to 1.5.0 should review the 1.5.0 Breaking Changes section for details about the breaking changes introduced in 1.5.0.

1.5.1 Deprecation Notices

The acapy_agent.revocation_anoncreds package has been deprecated and relocated to acapy_agent.anoncreds.revocation for improved consistency across the codebase. The change should only affect [ACA-Py Plugins] that implement AnonCreds, but other developers should also take note.

The wallet-type configuration value askar is now deprecated and all deployments still using that wallet type should migrate to either the askar-anoncreds or (ideally) kanon-anoncreds wallet types.

AIP 1.0 protocols that were previously announced as deprecated have now been removed from ACA-Py core. Implementers still using those protocols MUST adjust their configuration to load those protocols from the respective plugins, or better, upgrade to their AIP 2.0 equivalents.

What's Changed

Full Changelog: 1.5.0...1.5.1rc1

1.3.3rc1

24 Feb 15:37
9d597e8

Choose a tag to compare

1.3.3rc1 Pre-release
Pre-release

This patch is being released to address some issues in the migration of the askar wallet-type to askar-anoncreds, and in to restore some webhooks that were lost when askar-anoncreds support was added. The fixes are necessary to enable the both the migration of an existing ACA-Py wallet-type to askar-anoncreds using ACA-Py 1.2 and to see the same events after the migration as before. In addition, a new endpoint has been added for the Out of Band (OOB) protocol that supports retrieving a list of Out of Band records.

The release includes the following PRs from the main branch cherry-picked into this release:

  • feat: add list endpoint for out-of-band records #4046
  • Update AnonCreds events #4016
  • Fix issues with anoncreds upgrade #3991

As well, a dependency update was applied, updating the poetry.lock file to use the latest minor versions of the dependencies and eliminating the one "High" or "Critical" vulnerability in the dependencies.

1.3.3 Breaking Changes

There are no breaking changes in this release.

What's Changed

Full Changelog: 1.3.2...1.3.3rc1

1.2.6rc1

24 Feb 15:35
70e714a

Choose a tag to compare

1.2.6rc1 Pre-release
Pre-release

This patch is being released to address some issues in the migration of the askar wallet-type to askar-anoncreds, and in to restore some webhooks that were lost when askar-anoncreds support was added. The fixes are necessary to enable the both the migration of an existing ACA-Py wallet-type to askar-anoncreds using ACA-Py 1.2 and to see the same events after the migration as before. In addition, a new endpoint has been added for the Out of Band (OOB) protocol that supports retrieving a list of Out of Band records.

The release includes the following PRs from the main branch cherry-picked into this release:

  • feat: add list endpoint for out-of-band records #4046
  • Update AnonCreds events #4016
  • Fix issues with anoncreds upgrade #3991

As well, a dependency update was applied, updating the poetry.lock file to use the latest minor versions of the dependencies and eliminating the one "High" or "Critical" vulnerability in the dependencies.

1.2.6 Breaking Changes

There are no breaking changes in this release.

What's Changed

Full Changelog: 1.2.5...1.2.6rc1

1.5.1rc0

20 Feb 17:19
a99e49f

Choose a tag to compare

1.5.1rc0 Pre-release
Pre-release

ACA-Py 1.5.1 is a clean up release primarily to address some follow-on issues related to the 1.5.0 release -- notably with the handling of AnonCreds revocation. There are some convenience additions and a GitHub Actions pipeline fix.

1.5.1 Breaking Changes

There are no breaking changes in this release from 1.5.0. Those upgrading from a version prior to 1.5.0 should review the 1.5.0 Breaking Changes section for details about the breaking changes introduced in 1.5.0.

1.5.1 Deprecation Notices

The acapy_agent.revocation_anoncreds package has been deprecated and relocated to acapy_agent.anoncreds.revocation for improved consistency across the codebase. The change should only affect [ACA-Py Plugins] that implement AnonCreds, but other developers should also take note.

The wallet-type configuration value askar is now deprecated and all deployments still using that wallet type should migrate to either the askar-anoncreds or (ideally) kanon-anoncreds wallet types.

AIP 1.0 protocols that were previously announced as deprecated have now been removed from ACA-Py core. Implementers still using those protocols MUST adjust their configuration to load those protocols from the respective plugins, or better, upgrade to their AIP 2.0 equivalents.

What's Changed

  • chore(deps): Bump pyjwt from 2.10.1 to 2.11.0 by @dependabot[bot] in #4040
  • chore(deps): Bump the all-actions group with 4 updates by @dependabot[bot] in #4041
  • chore(deps): Bump the all-actions group with 2 updates by @dependabot[bot] in #4043
  • chore(deps-dev): Bump ruff from 0.14.0 to 0.15.0 by @dependabot[bot] in #4042
  • Fix revocation setup by @PatStLouis in #4047
  • chore(deps): Bump cryptography from 46.0.2 to 46.0.5 in the pip group across 1 directory by @dependabot[bot] in #4045
  • feat: add list endpoint for out-of-band records by @kukgini in #4046
  • FIX BDD interop integration tests by @PatStLouis in #4052
  • chore(deps): Bump the all-actions group across 1 directory with 2 updates by @dependabot[bot] in #4053
  • chore(deps): Bump pillow from 11.3.0 to 12.1.1 in the pip group across 1 directory by @dependabot[bot] in #4048
  • Enable outbound transport in --no-transport mode, only disable inbound by @PatStLouis in #4050
  • fix: handle revocation registry race conditions for BDD integration tests by @PatStLouis in #4056
  • 1.5.1rc0 by @swcurran in #4054

Full Changelog: 1.5.0...1.5.1rc0

1.3.3rc0

30 Jan 16:48
b24a8d5

Choose a tag to compare

1.3.3rc0 Pre-release
Pre-release

This patch is being released to address some issues in the migration of the askar wallet-type to askar-anoncreds, and in to restore some webhooks that were lost when askar-anoncreds support was added. The fixes are necessary to enable the both the migration of an existing ACA-Py wallet-type to askar-anoncreds using ACA-Py 1.2 and to see the same events after the migration as before.

The release includes the following PRs from the main branch cherry-picked into this release:

  • Update AnonCreds events #4016
  • Fix issues with anoncreds upgrade #3991

As well, a dependency update was applied, updating the poetry.lock file to use the latest minor versions of the dependencies and eliminating the one "High" or "Critical" vulnerability in the dependencies.

1.3.3 Breaking Changes

There are no breaking changes in this release.

What's Changed

Full Changelog: 1.3.2...1.3.3rc0

1.2.6rc0

30 Jan 16:46
c045ad8

Choose a tag to compare

1.2.6rc0 Pre-release
Pre-release

This patch is being released to address some issues in the migration of the askar wallet-type to askar-anoncreds, and in to restore some webhooks that were lost when askar-anoncreds support was added. The fixes are necessary to enable the both the migration of an existing ACA-Py wallet-type to askar-anoncreds using ACA-Py 1.2 and to see the same events after the migration as before.

The release includes the following PRs from the main branch cherry-picked into this release:

  • Update AnonCreds events #4016
  • Fix issues with anoncreds upgrade #3991

As well, a dependency update was applied, updating the poetry.lock file to use the latest minor versions of the dependencies and eliminating the one "High" or "Critical" vulnerability in the dependencies.

1.2.6 Breaking Changes

There are no breaking changes in this release.

What's Changed

Full Changelog: 1.2.5...1.2.6rc0

1.5.0

29 Jan 15:30
eeff981

Choose a tag to compare

ACA-Py 1.5.0 is a significant release that advances the platform’s modernization and modularization goals. The most substantial changes are the upgrade to Python 3.13 and the continued evolution of ACA-Py toward a plugin-oriented architecture, including the removal of the legacy v1.0 credential exchange protocols (issue credential and present proof) from the core agent. The release also includes some important fixes to the wallet migration process to the askar-anoncreds wallet type, and to the webhooks associated with the use of the askar-anoncreds wallet type.

With this release, the v1.0 credential exchange protocols have been fully removed from ACA-Py core and are now expected to be provided via plugins where required. This aligns with earlier deprecation signals and reinforces a cleaner separation between the core agent and optional protocol implementations.

This release includes some follow-on fixes and cleanups to the Kanon Storage capability added in Release 1.4.0, addressing connection management/pooling behavior.

Additional improvements include enhanced scenario test logging and diagnostics, recoverable and event-driven revocation registry management, improvements to Docker image versioning, the introduction of a plugin installer to simplify deployment and management of external ACA-Py plugins, and the usual dependabot updates.

1.5.0 Breaking Changes

This release includes intentional breaking changes as part of ACA-Py’s ongoing modernization:

  • Removal of v1.0 credential exchange protocols from core
    • The v1.0 issue credential and present proof protocols have been removed from ACA-Py core. Deployments that still depend on these protocols must transition to plugin-based implementations or migrate to newer protocol versions. This change is part of the broader move toward a plugin-driven protocol architecture.
  • Python runtime upgrade to 3.13
    • ACA-Py now targets Python 3.13. Environments pinned to earlier Python versions will need to upgrade their runtime and validate third-party dependency compatibility.

While not breaking at the API level, implementers should also be aware of behavioral and configuration changes related to:

  • Migration from askar to askar-anoncreds
  • The addition of some webhooks missing since the introduction of the askar-anoncreds wallet type
  • Kanon Storage connection handling and pooling behavior

These areas should be explicitly tested when upgrading to 1.5.0.

1.5.0 Deprecation Notices

The acapy_agent.revocation_anoncreds package has been deprecated and relocated to acapy_agent.anoncreds.revocation for improved consistency across the codebase. The change should only affect [ACA-Py Plugins] that implement AnonCreds, but other developers should also take note.

The wallet-type configuration value askar is now deprecated and all deployments still using that wallet type should migrate to either the askar-anoncreds or (ideally) kanon-anoncreds wallet types.

AIP 1.0 protocols that were previously announced as deprecated have now been removed from ACA-Py core. Implementers still using those protocols MUST adjust their configuration to load those protocols from the respective plugins, or better, upgrade to their AIP 2.0 equivalents.

What's Changed

  • chore(deps): Bump openwallet-foundation/acapy-agent from py3.12-1.3.2 to py3.12-1.4.0 in /demo/playground by @dependabot[bot] in #3954
  • chore(deps): Bump openwallet-foundation/acapy-agent from py3.12-1.3.2 to py3.12-1.4.0 in /demo/multi-demo by @dependabot[bot] in #3953
  • chore(deps): Bump openwallet-foundation/acapy-agent from py3.12-1.3.2 to py3.12-1.4.0 in /demo/docker-agent by @dependabot[bot] in #3952
  • chore(deps): Bump github/codeql-action from 4.31.2 to 4.31.3 in the all-actions group by @dependabot[bot] in #3956
  • feat: Add option to remove credex on failure by @TheTechmage in #3947
  • fix: minor fix to avoid pool exhaustion and deadlocks by @vinaysingh8866 in #3958
  • chore(deps-dev): Bump pre-commit from 4.4.0 to 4.5.0 by @dependabot[bot] in #3959
  • chore(deps): Bump mkdocs-material from 9.6.3 to 9.7.0 by @dependabot[bot] in #3961
  • Feature: Add plugin installer by @PatStLouis in #3955
  • chore(deps): Bump the all-actions group with 2 updates by @dependabot[bot] in #3962
  • chore(deps-dev): Bump pytest from 8.4.2 to 9.0.1 by @dependabot[bot] in #3960
  • ✨ Recoverable, event-driven revocation registry management by @ff137 in #3831
  • chore(deps): Update asyncpg requirement from ~=0.30.0 to ~=0.31.0 by @dependabot[bot] in #3967
  • chore(deps): Bump psycopg from 3.2.10 to 3.3.0 by @dependabot[bot] in #3968
  • chore(deps): Update asyncpg requirement from ~=0.30.0 to ~=0.31.0 in /demo by @dependabot[bot] in #3971
  • chore(deps): Bump the all-actions group with 2 updates by @dependabot[bot] in #3973
  • feat: Remove issuance v1 protocols by @jamshale in #3923
  • chore(deps): Bump the pip group across 3 directories with 1 update by @dependabot[bot] in #3977
  • chore(deps): Bump uuid-utils from 0.11.1 to 0.12.0 by @dependabot[bot] in #3978
  • Feature: semantic image versioning for released images by @esune in #3976
  • fix(kanon):updated connection cleanup to share 1 thread and added logging to detect connection leakage by @vinaysingh8866 in #3963
  • chore(deps): Bump apispec from 6.8.4 to 6.9.0 by @dependabot[bot] in #3970
  • chore(deps): Bump the all-actions group across 1 directory with 2 updates by @dependabot[bot] in #3980
  • chore(deps): Bump aries-askar from 0.4.5 to 0.5.0 by @dependabot[bot] in #3984
  • chore(deps): Bump the all-actions group with 4 updates by @dependabot[bot] in #3985
  • chore(deps-dev): Bump filelock from 3.19.1 to 3.20.1 in the pip group across 1 directory by @dependabot[bot] in #3989
  • feat: Add logging to scenario tests by @jamshale in #3983
  • Remove present proof v1 by @jamshale in #3981
  • Upgrade python to 3.13 by @jamshale in #3911
  • Fix issues with anoncreds upgrade by @jamshale in #3991
  • chore(deps): Bump marshmallow from 3.26.1 to 3.26.2 in the pip group across 1 directory by @dependabot[bot] in #3993
  • Sonivijayk/fix/issue 2319 docs update to remove indy usage by @sonivijayk in #3997
  • chore(deps): Bump the all-actions group across 1 directory with 3 updates by @dependabot[bot] in #4003
  • chore: Lower scenario test logging to info level by @jamshale in #4000
  • feat: Only log failing scenarios by @jamshale in #4005
  • fix: encode revocation tag in tails upload URL (issue 1580) by @sonivijayk in #3996
  • Fix for handler for postgres by @vinaysingh8866 in #3992
  • chore(deps): Bump sqlcipher3-binary from 0.5.4 to 0.6.0 by @dependabot[bot] in #4007
  • chore(deps): Bump aiohttp from 3.12.14 to 3.13.3 in /scenarios in the pip group across 1 directory by @dependabot[bot] in #4008
  • chore(deps): Bump aiohttp from 3.13.0 to 3.13.3 in the pip group across 1 directory by @dependabot[bot] in #4009
  • chore: Remove some more indy refs from anoncreds module by @jamshale in #4004
  • 1.5.0rc0 by @swcurran in #4011
  • Fetch schemaId on legacy cred def by @PatStLouis in #3988
  • chore(deps): Bump uuid-utils from 0.12.0 to 0.13.0 by @dependabot[bot] in #4018
  • Issue #3845 fix : auto-store failure going to done state by @sonivijayk in #3999
  • chore(deps): Bump github/codeql-action from 4.31.9 to 4.31.10 in the all-actions group by @dependabot[bot] in #4020
  • Sonivijayk/fix/issue 3990 revoke indy cred post askar anoncres upgrade by @sonivijayk in #4017
  • chore(deps): Bump the pip group acros...
Read more

1.5.0rc1

23 Jan 00:10
2eab575

Choose a tag to compare

1.5.0rc1 Pre-release
Pre-release

ACA-Py 1.5.0 is a significant release that advances the platform’s modernization and modularization goals. The most substantial changes are the upgrade to Python 3.13 and the continued evolution of ACA-Py toward a plugin-oriented architecture, including the removal of the legacy v1.0 credential exchange protocols (issue credential and present proof) from the core agent. The release also includes some important fixes to the wallet migration process to the askar-anoncreds wallet type, and to the webhooks associated with the use of the askar-anoncreds wallet type.

With this release, the v1.0 credential exchange protocols have been fully removed from ACA-Py core and are now expected to be provided via plugins where required. This aligns with earlier deprecation signals and reinforces a cleaner separation between the core agent and optional protocol implementations.

This release includes some follow-on fixes and cleanups to the Kanon Storage capability added in Release 1.4.0, addressing connection management/pooling behavior.

Additional improvements include enhanced scenario test logging and diagnostics, recoverable and event-driven revocation registry management, improvements to Docker image versioning, the introduction of a plugin installer to simplify deployment and management of external ACA-Py plugins, and the usual dependabot updates.

1.5.0 Breaking Changes

This release includes intentional breaking changes as part of ACA-Py’s ongoing modernization:

  • Removal of v1.0 credential exchange protocols from core
    • The v1.0 issue credential and present proof protocols have been removed from ACA-Py core. Deployments that still depend on these protocols must transition to plugin-based implementations or migrate to newer protocol versions. This change is part of the broader move toward a plugin-driven protocol architecture.
  • Python runtime upgrade to 3.13
    • ACA-Py now targets Python 3.13. Environments pinned to earlier Python versions will need to upgrade their runtime and validate third-party dependency compatibility.

While not breaking at the API level, implementers should also be aware of behavioral and configuration changes related to:

  • Migration from askar to askar-anoncreds
  • The addition of some webhooks missing since the introduction of the askar-anoncreds wallet type
  • Kanon Storage connection handling and pooling behavior

These areas should be explicitly tested when upgrading to 1.5.0.

1.5.0 Deprecation Notices

The acapy_agent.revocation_anoncreds package has been deprecated and relocated to acapy_agent.anoncreds.revocation for improved consistency across the codebase. The change should only affect [ACA-Py Plugins] that implement AnonCreds, but other developers should also take note.

The wallet-type configuration value askar is now deprecated and all deployments still using that wallet type should migrate to either the askar-anoncreds or (ideally) kanon-anoncreds wallet types.

AIP 1.0 protocols that were previously announced as deprecated have now been removed from ACA-Py core. Implementers still using those protocols MUST adjust their configuration to load those protocols from the respective plugins, or better, upgrade to their AIP 2.0 equivalents.

What's Changed

  • chore(deps): Bump openwallet-foundation/acapy-agent from py3.12-1.3.2 to py3.12-1.4.0 in /demo/playground by @dependabot[bot] in #3954
  • chore(deps): Bump openwallet-foundation/acapy-agent from py3.12-1.3.2 to py3.12-1.4.0 in /demo/multi-demo by @dependabot[bot] in #3953
  • chore(deps): Bump openwallet-foundation/acapy-agent from py3.12-1.3.2 to py3.12-1.4.0 in /demo/docker-agent by @dependabot[bot] in #3952
  • chore(deps): Bump github/codeql-action from 4.31.2 to 4.31.3 in the all-actions group by @dependabot[bot] in #3956
  • feat: Add option to remove credex on failure by @TheTechmage in #3947
  • fix: minor fix to avoid pool exhaustion and deadlocks by @vinaysingh8866 in #3958
  • chore(deps-dev): Bump pre-commit from 4.4.0 to 4.5.0 by @dependabot[bot] in #3959
  • chore(deps): Bump mkdocs-material from 9.6.3 to 9.7.0 by @dependabot[bot] in #3961
  • Feature: Add plugin installer by @PatStLouis in #3955
  • chore(deps): Bump the all-actions group with 2 updates by @dependabot[bot] in #3962
  • chore(deps-dev): Bump pytest from 8.4.2 to 9.0.1 by @dependabot[bot] in #3960
  • ✨ Recoverable, event-driven revocation registry management by @ff137 in #3831
  • chore(deps): Update asyncpg requirement from ~=0.30.0 to ~=0.31.0 by @dependabot[bot] in #3967
  • chore(deps): Bump psycopg from 3.2.10 to 3.3.0 by @dependabot[bot] in #3968
  • chore(deps): Update asyncpg requirement from ~=0.30.0 to ~=0.31.0 in /demo by @dependabot[bot] in #3971
  • chore(deps): Bump the all-actions group with 2 updates by @dependabot[bot] in #3973
  • feat: Remove issuance v1 protocols by @jamshale in #3923
  • chore(deps): Bump the pip group across 3 directories with 1 update by @dependabot[bot] in #3977
  • chore(deps): Bump uuid-utils from 0.11.1 to 0.12.0 by @dependabot[bot] in #3978
  • Feature: semantic image versioning for released images by @esune in #3976
  • fix(kanon):updated connection cleanup to share 1 thread and added logging to detect connection leakage by @vinaysingh8866 in #3963
  • chore(deps): Bump apispec from 6.8.4 to 6.9.0 by @dependabot[bot] in #3970
  • chore(deps): Bump the all-actions group across 1 directory with 2 updates by @dependabot[bot] in #3980
  • chore(deps): Bump aries-askar from 0.4.5 to 0.5.0 by @dependabot[bot] in #3984
  • chore(deps): Bump the all-actions group with 4 updates by @dependabot[bot] in #3985
  • chore(deps-dev): Bump filelock from 3.19.1 to 3.20.1 in the pip group across 1 directory by @dependabot[bot] in #3989
  • feat: Add logging to scenario tests by @jamshale in #3983
  • Remove present proof v1 by @jamshale in #3981
  • Upgrade python to 3.13 by @jamshale in #3911
  • Fix issues with anoncreds upgrade by @jamshale in #3991
  • chore(deps): Bump marshmallow from 3.26.1 to 3.26.2 in the pip group across 1 directory by @dependabot[bot] in #3993
  • Sonivijayk/fix/issue 2319 docs update to remove indy usage by @sonivijayk in #3997
  • chore(deps): Bump the all-actions group across 1 directory with 3 updates by @dependabot[bot] in #4003
  • chore: Lower scenario test logging to info level by @jamshale in #4000
  • feat: Only log failing scenarios by @jamshale in #4005
  • fix: encode revocation tag in tails upload URL (issue 1580) by @sonivijayk in #3996
  • Fix for handler for postgres by @vinaysingh8866 in #3992
  • chore(deps): Bump sqlcipher3-binary from 0.5.4 to 0.6.0 by @dependabot[bot] in #4007
  • chore(deps): Bump aiohttp from 3.12.14 to 3.13.3 in /scenarios in the pip group across 1 directory by @dependabot[bot] in #4008
  • chore(deps): Bump aiohttp from 3.13.0 to 3.13.3 in the pip group across 1 directory by @dependabot[bot] in #4009
  • chore: Remove some more indy refs from anoncreds module by @jamshale in #4004
  • 1.5.0rc0 by @swcurran in #4011
  • Fetch schemaId on legacy cred def by @PatStLouis in #3988
  • chore(deps): Bump uuid-utils from 0.12.0 to 0.13.0 by @dependabot[bot] in #4018
  • Issue #3845 fix : auto-store failure going to done state by @sonivijayk in #3999
  • chore(deps): Bump github/codeql-action from 4.31.9 to 4.31.10 in the all-actions group by @dependabot[bot] in #4020
  • Sonivijayk/fix/issue 3990 revoke indy cred post askar anoncres upgrade by @sonivijayk in #4017
  • chore(deps): Bump the pip group acros...
Read more

1.5.0rc0

08 Jan 00:06
2963ba3

Choose a tag to compare

1.5.0rc0 Pre-release
Pre-release

ACA-Py 1.5.0 is a significant release that advances the platform’s modernization and modularization goals. The most substantial changes are the upgrade to Python 3.13 and the continued evolution of ACA-Py toward a plugin-oriented architecture, including the removal of the legacy v1.0 credential exchange protocols (issue credential and present proof) from the core agent.

With this release, the v1.0 credential exchange protocols have been fully removed from ACA-Py core and are now expected to be provided via plugins where required. This aligns with earlier deprecation signals and reinforces a cleaner separation between the core agent and optional protocol implementations.

This release also includes important fixes to the migration process from the askar wallet type to askar-anoncreds, necessary for upgrades of deployments adopting the newest AnonCreds libraries. Several follow-on fixes and cleanups were also made to the Kanon Storage capability added in Release 1.4.0, addressing connection management/pooling behavior.

Additional improvements include enhanced scenario test logging and diagnostics, recoverable and event-driven revocation registry management, improvements to Docker image versioning, the introduction of a plugin installer to simplify deployment and management of external ACA-Py plugins, and the usual dependabot updates.

1.5.0 Breaking Changes

This release includes intentional breaking changes as part of ACA-Py’s ongoing modernization:

  • Removal of v1.0 credential exchange protocols from core
    • The v1.0 issue credential and present proof protocols have been removed from ACA-Py core. Deployments that still depend on these protocols must transition to plugin-based implementations or migrate to newer protocol versions. This change is part of the broader move toward a plugin-driven protocol architecture.
  • Python runtime upgrade to 3.13
    • ACA-Py now targets Python 3.13. Environments pinned to earlier Python versions will need to upgrade their runtime and validate third-party dependency compatibility.

While not breaking at the API level, implementers should also be aware of behavioral and configuration changes related to:

  • Migration from askar to askar-anoncreds
  • Kanon Storage connection handling and pooling behavior

These areas should be explicitly tested when upgrading to 1.5.0.

1.5.0 Deprecation Notices

The acapy_agent.revocation_anoncreds package has been deprecated and relocated to acapy_agent.anoncreds.revocation for improved consistency across the codebase. The change should only affect [ACA-Py Plugins] that implement AnonCreds, but other developers should also take note.

The wallet-type configuration value askar is now deprecated and all deployments still using that wallet type should migrate to either the askar-anoncreds or (ideally) kanon-anoncreds wallet types.

AIP 1.0 protocols that were previously announced as deprecated have now been removed from ACA-Py core. Implementers still using those protocols MUST adjust their configuration to load those protocols from the respective plugins, or better, upgrade to their AIP 2.0 equivalents.

What's Changed

  • chore(deps): Bump openwallet-foundation/acapy-agent from py3.12-1.3.2 to py3.12-1.4.0 in /demo/playground by @dependabot[bot] in #3954
  • chore(deps): Bump openwallet-foundation/acapy-agent from py3.12-1.3.2 to py3.12-1.4.0 in /demo/multi-demo by @dependabot[bot] in #3953
  • chore(deps): Bump openwallet-foundation/acapy-agent from py3.12-1.3.2 to py3.12-1.4.0 in /demo/docker-agent by @dependabot[bot] in #3952
  • chore(deps): Bump github/codeql-action from 4.31.2 to 4.31.3 in the all-actions group by @dependabot[bot] in #3956
  • feat: Add option to remove credex on failure by @TheTechmage in #3947
  • fix: minor fix to avoid pool exhaustion and deadlocks by @vinaysingh8866 in #3958
  • chore(deps-dev): Bump pre-commit from 4.4.0 to 4.5.0 by @dependabot[bot] in #3959
  • chore(deps): Bump mkdocs-material from 9.6.3 to 9.7.0 by @dependabot[bot] in #3961
  • Feature: Add plugin installer by @PatStLouis in #3955
  • chore(deps): Bump the all-actions group with 2 updates by @dependabot[bot] in #3962
  • chore(deps-dev): Bump pytest from 8.4.2 to 9.0.1 by @dependabot[bot] in #3960
  • ✨ Recoverable, event-driven revocation registry management by @ff137 in #3831
  • chore(deps): Update asyncpg requirement from ~=0.30.0 to ~=0.31.0 by @dependabot[bot] in #3967
  • chore(deps): Bump psycopg from 3.2.10 to 3.3.0 by @dependabot[bot] in #3968
  • chore(deps): Update asyncpg requirement from ~=0.30.0 to ~=0.31.0 in /demo by @dependabot[bot] in #3971
  • chore(deps): Bump the all-actions group with 2 updates by @dependabot[bot] in #3973
  • feat: Remove issuance v1 protocols by @jamshale in #3923
  • chore(deps): Bump the pip group across 3 directories with 1 update by @dependabot[bot] in #3977
  • chore(deps): Bump uuid-utils from 0.11.1 to 0.12.0 by @dependabot[bot] in #3978
  • Feature: semantic image versioning for released images by @esune in #3976
  • fix(kanon):updated connection cleanup to share 1 thread and added logging to detect connection leakage by @vinaysingh8866 in #3963
  • chore(deps): Bump apispec from 6.8.4 to 6.9.0 by @dependabot[bot] in #3970
  • chore(deps): Bump the all-actions group across 1 directory with 2 updates by @dependabot[bot] in #3980
  • chore(deps): Bump aries-askar from 0.4.5 to 0.5.0 by @dependabot[bot] in #3984
  • chore(deps): Bump the all-actions group with 4 updates by @dependabot[bot] in #3985
  • chore(deps-dev): Bump filelock from 3.19.1 to 3.20.1 in the pip group across 1 directory by @dependabot[bot] in #3989
  • feat: Add logging to scenario tests by @jamshale in #3983
  • Remove present proof v1 by @jamshale in #3981
  • Upgrade python to 3.13 by @jamshale in #3911
  • Fix issues with anoncreds upgrade by @jamshale in #3991
  • chore(deps): Bump marshmallow from 3.26.1 to 3.26.2 in the pip group across 1 directory by @dependabot[bot] in #3993
  • Sonivijayk/fix/issue 2319 docs update to remove indy usage by @sonivijayk in #3997
  • chore(deps): Bump the all-actions group across 1 directory with 3 updates by @dependabot[bot] in #4003
  • chore: Lower scenario test logging to info level by @jamshale in #4000
  • feat: Only log failing scenarios by @jamshale in #4005
  • fix: encode revocation tag in tails upload URL (issue 1580) by @sonivijayk in #3996
  • Fix for handler for postgres by @vinaysingh8866 in #3992
  • chore(deps): Bump sqlcipher3-binary from 0.5.4 to 0.6.0 by @dependabot[bot] in #4007
  • chore(deps): Bump aiohttp from 3.12.14 to 3.13.3 in /scenarios in the pip group across 1 directory by @dependabot[bot] in #4008
  • chore(deps): Bump aiohttp from 3.13.0 to 3.13.3 in the pip group across 1 directory by @dependabot[bot] in #4009
  • chore: Remove some more indy refs from anoncreds module by @jamshale in #4004
  • 1.5.0rc0 by @swcurran in #4011

New Contributors

Full Changelog: 1.4.0...1.5.0rc0