Release 1.2.0 is a minor update to ACA-Py that contains an update to the AnonCreds implementation to make it easier to deploy on other than Hyperledger Indy, and a lengthy list of adjustments, improvements and fixes, with a focus on removing technical debt. In addition to the AnonCreds updates, the most visible change is the removal of the "in-memory wallet" implementation in favour of using the SQLite in-memory wallet (sqlite://:memory:
), including removing the logic for handling that extra wallet type. In removing the in-memory wallet, all of the unit and integration tests that used the in-memory wallet have been updated to use SQLite's in-memory wallet.
Release 1.2.x is the new current Long Term Support (LTS) for ACA-Py, as defined in the LTS Strategy document. With this release, the "end of life" for the previous "current LTS release" -- 0.12 -- is set for October 2025.
The first step to full support of did:webvh ("did:web
+ Verifiable History"-- formerly did:tdw
) has been added to ACA-Py -- a resolver. We're working on improving the new DID Registration mechanism for it, Cheqd and other DID Methods, enabling ACA-Py to be used easily with a variety of DID Methods.
The move to the OpenWallet Foundation is now complete. If you haven't done so already, please update your ACA-Py deployment to use:
- the ACA-Py OWF repository,
- the new acapy-agent in PyPi, and
- the container images for ACA-Py hosted by the OpenWallet Foundation GitHub organization within the GitHub Container Repository (GHCR).
A significant testing capability was added in this release -- the ability to run an integration test that includes an ACA-Py upgrade in the middle. This allows us to test, for example starting an agent on one release, doing an upgrade (possibly including running a migration script), and then completing the test on the upgraded release. This is enable by adding a capability to restart Docker containers in the middle of tests. Nice work, @ianco!
What's Changed
- 📝 Fix links in README by @ff137 in #3295
- ⬆️ Update lock file by @ff137 in #3296
- chore(deps): Bump mkdocs-material from 9.5.39 to 9.5.41 by @dependabot in #3293
- chore(deps): Bump jsonpath-ng from 1.6.1 to 1.7.0 by @dependabot in #3288
- 🐛 Handle failure to resolve DIDComm services in DIDXManager by @ff137 in #3298
- chore(deps): Bump mkdocs-material from 9.5.41 to 9.5.42 by @dependabot in #3305
- chore(deps-dev): Bump ruff from 0.6.9 to 0.7.0 by @dependabot in #3304
- chore(deps): Bump marshmallow from 3.22.0 to 3.23.0 by @dependabot in #3303
- chore(deps): Update asyncpg requirement from ~=0.29.0 to ~=0.30.0 by @dependabot in #3302
- Fix endorsement setup with existing connection by @jamshale in #3309
- 🐛 Rearrange connection record deletion after hangup by @ff137 in #3310
- 🎨 Refactor string concatenation in model descriptions by @ff137 in #3313
- chore(deps-dev): Bump ruff from 0.7.0 to 0.7.1 by @dependabot in #3314
- Docs (devcontainer) Change folder names by @loneil in #3317
- 🔧 set default fixture scope for pytest-asyncio by @ff137 in #3318
- 🎨 Refactor the logging module monolith by @ff137 in #3319
- 🎨 Refactor Multitenant Manager errors and exception handling by @ff137 in #3323
- chore(deps): Bump marshmallow from 3.23.0 to 3.23.1 by @dependabot in #3325
- chore(deps-dev): Bump ruff from 0.7.1 to 0.7.2 by @dependabot in #3326
- chore(deps): Bump mkdocs-material from 9.5.42 to 9.5.43 by @dependabot in #3324
- Update accumulator value in wallet on repair by @jamshale in #3299
- ✨ Handle NotFound and UnprocessableEntity errors in middleware by @ff137 in #3327
- Remove in memory wallet by @jamshale in #3311
- ✅ Re-add ready_middleware unit tests by @ff137 in #3330
- 👷 Fix Nightly Publish to not run on forks by @ff137 in #3333
- chore(deps): Bump mkdocs-material from 9.5.43 to 9.5.44 by @dependabot in #3336
- Don't pass rekey to sub_wallet_profile by @jamshale in #3312
- chore(deps-dev): Bump ruff from 0.7.2 to 0.7.3 by @dependabot in #3334
- chore(deps-dev): Bump debugpy from 1.8.7 to 1.8.8 by @dependabot in #3335
- More robust verification method selection by did by @dbluhm in #3279
- 🎨 Fix current test warnings by @ff137 in #3338
- chore(deps-dev): Bump ruff from 0.7.3 to 0.7.4 by @dependabot in #3341
- chore(deps): Bump aiohttp from 3.11.0 to 3.11.2 by @dependabot in #3340
- chore(deps): Bump pyjwt from 2.9.0 to 2.10.0 by @dependabot in #3339
- did:tdw resolver by @jamshale in #3237
- chore(deps): Bump aiohttp from 3.10.5 to 3.10.11 in /scenarios in the pip group across 1 directory by @dependabot in #3342
- Fix tails upload for anoncreds multitenancy by @jamshale in #3346
- Add anoncreds issuance and presentation format by @jamshale in #3331
- Restore
--base-wallet-routes
flag functionality by @esune in #3344 - Fix subwallet anoncreds upgrade check by @jamshale in #3345
- Fix/universal resolver by @jamshale in #3354
- chore(deps-dev): Bump ruff from 0.7.4 to 0.8.0 by @dependabot in #3348
- chore(deps): Bump mkdocs-material from 9.5.44 to 9.5.46 by @dependabot in #3352
- chore(deps): Bump uuid-utils from 0.9.0 to 0.10.0 by @dependabot in #3351
- chore(deps-dev): Bump debugpy from 1.8.8 to 1.8.9 by @dependabot in #3350
- chore(deps): Bump aiohttp from 3.11.2 to 3.11.7 by @dependabot in #3349
- 🎨 Sync Ruff version in configs and apply formatting by @ff137 in #3358
- 🎨 Replace deprecated ABC decorators by @ff137 in #3357
- Add test wallet config option by @jamshale in #3355
- Week 49 Library upgrades by @jamshale in #3368
- ⚡ Add class caching to DeferLoad by @ff137 in #3361
- fix: check routing keys on indy_vdr endpoint refresh by @dbluhm in #3371
- Make vc libraries mandatory by @jamshale in #3356
- Repair release bdd tests by @jamshale in #3376
- 1.1.1rc0 by @swcurran in #3372
- Fix for demo initial cred_type override by @ianco in #3378
- chore(deps): Bump dawidd6/action-download-artifact from 6 to 7 in the all-actions group by @dependabot in #3370
- Update anoncreds format names by @jamshale in #3374
- 🎨 Fix model name for consistency by @ff137 in #3382
- chore(deps): Bump aiohttp from 3.11.9 to 3.11.10 by @dependabot in #3385
- chore(deps-dev): Bump ruff from 0.8.1 to 0.8.2 by @dependabot in #3384
- chore(deps): Bump mkdocs-material from 9.5.47 to 9.5.48 by @dependabot in #3386
- Fix sonar coverage on merge main by @jamshale in #3388
- Switch to COPY commands in dockerfiles by @jamshale in #3389
- Update Sonarcloud to new action by @ryjones in #3390
- The latest tag doesn't exist in git, just github by @ryjones in #3392
- BREAKING: VCHolder multitenant binding by @jamshale in #3391
- Remove sonar cov report move step by @jamshale in #3398
- Adjust coverage location for sonarcloud by @jamshale in #3399
- fix: Anoncreds schemas and validation by @DaevMithran in #3397
- chore(deps): Bump mkdocs-material from 9.5.48 to 9.5.49 by @dependabot in #3401
- chore(deps-dev): Bump ruff from 0.8.2 to 0.8.3 by @dependabot in #3402
- chore(deps-dev): Bump pytest-asyncio from 0.24.0 to 0.25.0 by @dependabot in #3403
- chore(deps-dev): Bump debugpy from 1.8.9 to 1.8.11 by @dependabot in #3404
- 🐛 Ensure supported DID before calling Rotate by @ff137 in #3380
- Aca-Py test scenario including a container restart (with aca-py version upgrade) by @ianco in #3400
- Adds the OpenSSF to the readme by @swcurran in #3412
- Anoncreds create credential by @jamshale in #3369
- Scenario test with anoncreds wallet upgrade and restart by @ianco in #3410
- Fix indy fallback format in presentation from holder by @jamshale in #3413
- Anoncreds post api object handling by @jamshale in #3411
- 1.12.0rc0 by @swcurran in #3420
- chore(deps): Bump jinja2 from 3.1.4 to 3.1.5 in the pip group by @dependabot in #3421
- chore(deps): Bump aiohttp from 3.11.10 to 3.11.11 by @dependabot in #3414
- chore(deps): Bump marshmallow from 3.23.1 to 3.23.2 by @dependabot in #3415
- chore(deps-dev): Bump ruff from 0.8.3 to 0.8.4 by @dependabot in #3416
- chore(deps): Bump hyperledger/aries-cloudagent-python from py3.9-0.12.2 to py3.9-0.12.3 in /demo/docker-agent by @dependabot in #3419
- chore(deps): Bump hyperledger/aries-cloudagent-python from py3.9-0.12.2 to py3.9-0.12.3 in /demo/multi-demo by @dependabot in #3417
- chore(deps): Bump hyperledger/aries-cloudagent-python from py3.9-0.12.2 to py3.9-0.12.3 in /demo/playground by @dependabot in #3418
- chore(deps): Bump pygments from 2.18.0 to 2.19.0 by @dependabot in #3422
- Pin poetry to 1.8.3 in dockerfiles by @jamshale in #3427
- chore(deps): Bump marshmallow from 3.23.2 to 3.23.3 by @dependabot in #3423
- chore(deps-dev): Bump ruff from 0.8.4 to 0.8.6 by @dependabot in #3424
- chore(deps-dev): Bump pytest-asyncio from 0.25.0 to 0.25.1 by @dependabot in #3425
- Fix devcontainer poetry install by @jamshale in #3428
- 1.2.0 by @swcurran in #3430
Full Changelog: 1.1.0...1.2.0