From e985a55019e78825d8a6ff8ffbfc293a8992edcc Mon Sep 17 00:00:00 2001 From: Stephen Curran Date: Fri, 17 Nov 2023 20:00:17 +0000 Subject: [PATCH] 0.11.0rc2 Signed-off-by: Stephen Curran --- CHANGELOG.md | 55 +++++++++++++++---- PUBLISHING.md | 8 ++- docs/README.md | 12 ++-- ...ries_cloudagent.vc.ld_proofs.resources.rst | 7 +++ .../aries_cloudagent.vc.ld_proofs.rst | 9 +++ open-api/openapi.json | 2 +- open-api/swagger.json | 2 +- pyproject.toml | 2 +- 8 files changed, 71 insertions(+), 26 deletions(-) create mode 100644 docs/generated/aries_cloudagent.vc.ld_proofs.resources.rst diff --git a/CHANGELOG.md b/CHANGELOG.md index 72435c6401..527df727a5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,16 +1,16 @@ # Aries Cloud Agent Python Changelog -## 0.11.0-rc1 +## 0.11.0rc2 -### October 30, 2023 +### November 17, 2023 -Release 0.11.0 is a relatively large release of new features, fixes, and internal -updates. 0.11.0 is planned to be the last major update before we transition -to using the [AnonCreds Rust](https://github.com/hyperledger/anoncreds-rs) -in a release that is expected to bring some Admin/Controller API changes. We plan -to do patches to 0.11.0 while the transition is made to the next breaking release. - -*Release 0.11.0-rc0 failed to publish because of a reference to a dependency via its GitHub repository rather than to its published artifact.* +Release 0.11.0 is a relatively large release of new features, fixes, and +internal updates. 0.11.0 is planned to be the last major update before we +transition to using the ledger agnostic [AnonCreds +Rust](https://github.com/hyperledger/anoncreds-rs) in a release that is expected +to bring some Admin/Controller API changes. We plan to do patches to the 0.11.x +branch while the transition is made to the upcoming release to transition to +using [Anoncreds Rust]. A significant addition to ACA-Py is support for signing and verifying [SD-JWT] verifiable credentials. We expect this to be the first of the changes @@ -49,15 +49,34 @@ the newer value in sending messages. In updating this, we retained the old configuration parameters most deployments were using (`--emit-new-didcomm-prefix` and `--emit-new-didcomm-mime-type`) but updated the code to set the configuration parameters to `true` even if the parameters were -not set. See [PR \#2517] +not set. See [PR \#2517]. + +The JSON-LD verifiable credential handling of JSON-LD contexts has been updated +to pre-load the base contexts into the repository code so they are not fetched +at run time. This is a security best practice for JSON-LD, and prevents errors +in production when, from time to time, the JSON-LD contexts are unavailable +because of outages of the web servers where they are hosted. See [PR \#2587]. + +A Problem Report message is now sent when a request for a credential is received +and there is no associated Credential Exchange Record. This may happen, for +example, if an issuer decides to delete a Credential Exchange Record that has +not be answered for a long time, and the holder responds after the delete. See +[PR \#2577]. + +The versioning scheme for Release Candidates has been changed to drop the `-` in +the version string. This means the older style of `0.11.0-rc0` has been changed +to the newer style of `0.11.0rc2`. [PR \#2517]: https://github.com/hyperledger/aries-cloudagent-python/pull/2517 +[PR \#2587]: https://github.com/hyperledger/aries-cloudagent-python/pull/2587 +[PR \#2577]: https://github.com/hyperledger/aries-cloudagent-python/pull/2577 #### 0.11.0 Categorized List of Pull Requests - DIDComm Messaging Improvements/Fixes - Change arg_parse to always set --emit-new-didcomm-prefix and --emit-new-didcomm-mime-type to true [\#2517](https://github.com/hyperledger/aries-cloudagent-python/pull/2517) [swcurran](https://github.com/swcurran) - DID Handling and Connection Establishment Updates/Fixes + - Goal and Goal Code in invitation URL. [\#2591](https://github.com/hyperledger/aries-cloudagent-python/pull/2591) [usingtechnology](https://github.com/usingtechnology) - refactor: use did-peer-2 instead of peerdid [\#2561](https://github.com/hyperledger/aries-cloudagent-python/pull/2561) [dbluhm](https://github.com/dbluhm) - Fix: Problem Report Before Exchange Established [\#2519](https://github.com/hyperledger/aries-cloudagent-python/pull/2519) [Ennovate-com](https://github.com/Ennovate-com) - fix: issue #2434: Change DIDExchange States to Match rfc160 [\#2461](https://github.com/hyperledger/aries-cloudagent-python/pull/2461) [anwalker293](https://github.com/anwalker293) @@ -69,6 +88,8 @@ not set. See [PR \#2517] - fix: routing behind mediator [\#2536](https://github.com/hyperledger/aries-cloudagent-python/pull/2536) [dbluhm](https://github.com/dbluhm) - fix: mediation routing keys as did key [\#2516](https://github.com/hyperledger/aries-cloudagent-python/pull/2516) [dbluhm](https://github.com/dbluhm) - refactor: drop mediator_terms and recipient_terms [\#2515](https://github.com/hyperledger/aries-cloudagent-python/pull/2515) [dbluhm](https://github.com/dbluhm) +- Fixes to Upgrades + - 🐛 fix wallet_update when only extra_settings requested [\#2612](https://github.com/hyperledger/aries-cloudagent-python/pull/2612) [ff137](https://github.com/ff137) - Hyperledger Indy ledger related updates and fixes - fix: taa rough timestamp timezone from datetime [\#2554](https://github.com/hyperledger/aries-cloudagent-python/pull/2554) [dbluhm](https://github.com/dbluhm) - 🎨 clarify LedgerError message when TAA is required and not accepted [\#2545](https://github.com/hyperledger/aries-cloudagent-python/pull/2545) [ff137](https://github.com/ff137) @@ -78,13 +99,21 @@ not set. See [PR \#2517] - OpenID4VC / SD-JWT Updates - chore: point to official sd-jwt lib release [\#2573](https://github.com/hyperledger/aries-cloudagent-python/pull/2573) [dbluhm](https://github.com/dbluhm) - Feat/sd jwt implementation [\#2487](https://github.com/hyperledger/aries-cloudagent-python/pull/2487) [cjhowland](https://github.com/cjhowland) -- JSON-LD Verifiable Credential format updates +- JSON-LD Verifiable Credential/Presentation updates + - Fix Issue #2589 TypeError When There Are No Nested Requirements [\#2590](https://github.com/hyperledger/aries-cloudagent-python/pull/2590) [Ennovate-com](https://github.com/Ennovate-com) + - feat: use a local static cache for commonly used contexts [\#2587](https://github.com/hyperledger/aries-cloudagent-python/pull/2587) [chumbert](https://github.com/chumbert) - Issue #2488 KeyError raised when Subject ID is not a URI [\#2490](https://github.com/hyperledger/aries-cloudagent-python/pull/2490) [Ennovate-com](https://github.com/Ennovate-com) - Credential Exchange (Issue, Present) Updates + - Default connection_id to None to account for Connectionless Proofs [\#2605](https://github.com/hyperledger/aries-cloudagent-python/pull/2605) [popkinj](https://github.com/popkinj) + - Send Problem report when CredEx not found [\#2577](https://github.com/hyperledger/aries-cloudagent-python/pull/2577) [usingtechnology](https://github.com/usingtechnology) - fix: clean up requests and invites [\#2560](https://github.com/hyperledger/aries-cloudagent-python/pull/2560) [dbluhm](https://github.com/dbluhm) - Multitenancy Updates and Fixes - Feat: Support subwallet upgradation using the Upgrade command [\#2529](https://github.com/hyperledger/aries-cloudagent-python/pull/2529) [shaangill025](https://github.com/shaangill025) -- Other Fixes, Demo, and Documentation Fixes +- Other Fixes, Demo, DevContainer and Documentation Fixes + - black formatter extension configuration update [\#2603](https://github.com/hyperledger/aries-cloudagent-python/pull/2603) [usingtechnology](https://github.com/usingtechnology) + - Update Devcontainer pytest ruff black [\#2602](https://github.com/hyperledger/aries-cloudagent-python/pull/2602) [usingtechnology](https://github.com/usingtechnology) + - Issue 2570 devcontainer ruff, black and pytest [\#2595](https://github.com/hyperledger/aries-cloudagent-python/pull/2595) [usingtechnology](https://github.com/usingtechnology) + - chore: correct type hints on base record [\#2604](https://github.com/hyperledger/aries-cloudagent-python/pull/2604) [dbluhm](https://github.com/dbluhm) - Playground needs optionally external network [\#2564](https://github.com/hyperledger/aries-cloudagent-python/pull/2564) [usingtechnology](https://github.com/usingtechnology) - Issue 2555 playground scripts readme [\#2563](https://github.com/hyperledger/aries-cloudagent-python/pull/2563) [usingtechnology](https://github.com/usingtechnology) - Update demo/playground scripts [\#2562](https://github.com/hyperledger/aries-cloudagent-python/pull/2562) [usingtechnology](https://github.com/usingtechnology) @@ -108,11 +137,13 @@ not set. See [PR \#2517] - Remove old routing protocol code [\#2466](https://github.com/hyperledger/aries-cloudagent-python/pull/2466) [dbluhm](https://github.com/dbluhm) - CI/CD, Testing, and Developer Tools/Productivity Updates - fix: drop asynctest 0.11.0 [\#2566](https://github.com/hyperledger/aries-cloudagent-python/pull/2566) [dbluhm](https://github.com/dbluhm) + - Dockerfile.indy - Include aries_cloudagent code into build [\#2584](https://github.com/hyperledger/aries-cloudagent-python/pull/2584) [usingtechnology](https://github.com/usingtechnology) - fix: version should be set by pyproject.toml [\#2471](https://github.com/hyperledger/aries-cloudagent-python/pull/2471) [dbluhm](https://github.com/dbluhm) - chore: add black back in as a dev dep [\#2465](https://github.com/hyperledger/aries-cloudagent-python/pull/2465) [dbluhm](https://github.com/dbluhm) - Swap out flake8 in favor of Ruff [\#2438](https://github.com/hyperledger/aries-cloudagent-python/pull/2438) [dbluhm](https://github.com/dbluhm) - #2289 Migrate to Poetry [\#2436](https://github.com/hyperledger/aries-cloudagent-python/pull/2436) [Gavinok](https://github.com/Gavinok) - Release management pull requests + - 0.11.0rc2 [\#2613](https://github.com/hyperledger/aries-cloudagent-python/pull/2613) [swcurran](https://github.com/swcurran) - 0.11.0-rc1 [\#2576](https://github.com/hyperledger/aries-cloudagent-python/pull/2576) [swcurran](https://github.com/swcurran) - 0.11.0-rc0 [\#2575](https://github.com/hyperledger/aries-cloudagent-python/pull/2575) [swcurran](https://github.com/swcurran) diff --git a/PUBLISHING.md b/PUBLISHING.md index 08b675f605..a261626d97 100644 --- a/PUBLISHING.md +++ b/PUBLISHING.md @@ -22,8 +22,8 @@ Once ready to do a release, create a local branch that includes the following up - Use a command like the following, adjusting the tag parameters as appropriate. `docker run -it --rm -v "$(pwd)":/usr/local/src/your-app githubchangeloggenerator/github-changelog-generator --user hyperledger - --project aries-cloudagent-python --output 0.7.4-rc0.md --since-tag 0.7.3 - --future-release 0.7.4-rc0 --release-branch main --token ` + --project aries-cloudagent-python --output 0.11.0rc2.md --since-tag 0.10.4 + --future-release 0.11.1rc2 --release-branch main --token ` - In the generated file, use only the PR list -- we don't include the list of closed issues in the Change Log. @@ -107,7 +107,9 @@ Once you have the list of PRs: version number should adhere to the [Semantic Versioning Specification](https://semver.org/#semantic-versioning-specification-semver) based on the changes since the last published release. For Release - Candidates, the form of the tag is "0.7.2-rc0". + Candidates, the form of the tag is "0.11.0rc2". As of release `0.11.0` + we have dropped the previously used `-` in the release candidate version + string to better follow the semver rules. 6. An extra search of the repo for the existing tag is recommended to see if there are any other instances of the tag in the repo. If any are found to be diff --git a/docs/README.md b/docs/README.md index 94fe76616c..d98f6b8977 100644 --- a/docs/README.md +++ b/docs/README.md @@ -35,14 +35,10 @@ To rebuild the project and settings from scratch (you'll need to move the genera See the **NOTE** above for the need for the use of docker in these steps. -``` bash -alias sphinx-apidoc='docker run -it --rm -v ${PWD}:/docs sphinxdoc/sphinx sphinx-apidoc' -cp -r ../aries_cloudagent . -rm -rf generated -# sphinx-apidoc -f -M -o ./generated ../aries_cloudagent/ $(find ../aries_cloudagent/ -name '*tests*') -sphinx-apidoc -f -M -o ./generated ./aries_cloudagent/ $(find ./aries_cloudagent/ -name '*tests*') -rm -rf ./aries_cloudagent -unalias sphinx-apidoc +If needed: `alias sphinx-apidoc='docker run -it --rm -v ${PWD}:/docs sphinxdoc/sphinx sphinx-apidoc'` + +`cp -r ../aries_cloudagent .; rm -rf generated; sphinx-apidoc -f -M -o ./generated ./aries_cloudagent/ $(find ./aries_cloudagent/ -name '*tests*'); sudo chown -R $USER:$USER generated/; rm -rf ./aries_cloudagent` + ``` Note that the `find` command that is used to exclude any of the `test` python files from the RTD documentation. diff --git a/docs/generated/aries_cloudagent.vc.ld_proofs.resources.rst b/docs/generated/aries_cloudagent.vc.ld_proofs.resources.rst new file mode 100644 index 0000000000..fd4d800f52 --- /dev/null +++ b/docs/generated/aries_cloudagent.vc.ld_proofs.resources.rst @@ -0,0 +1,7 @@ +aries\_cloudagent.vc.ld\_proofs.resources package +================================================= + +.. automodule:: aries_cloudagent.vc.ld_proofs.resources + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/generated/aries_cloudagent.vc.ld_proofs.rst b/docs/generated/aries_cloudagent.vc.ld_proofs.rst index ca7276b1fc..2de94e3ef9 100644 --- a/docs/generated/aries_cloudagent.vc.ld_proofs.rst +++ b/docs/generated/aries_cloudagent.vc.ld_proofs.rst @@ -14,6 +14,7 @@ Subpackages aries_cloudagent.vc.ld_proofs.crypto aries_cloudagent.vc.ld_proofs.purposes + aries_cloudagent.vc.ld_proofs.resources aries_cloudagent.vc.ld_proofs.suites Submodules @@ -35,6 +36,14 @@ aries\_cloudagent.vc.ld\_proofs.constants module :undoc-members: :show-inheritance: +aries\_cloudagent.vc.ld\_proofs.document\_downloader module +----------------------------------------------------------- + +.. automodule:: aries_cloudagent.vc.ld_proofs.document_downloader + :members: + :undoc-members: + :show-inheritance: + aries\_cloudagent.vc.ld\_proofs.document\_loader module ------------------------------------------------------- diff --git a/open-api/openapi.json b/open-api/openapi.json index f73583c469..5c094d6783 100644 --- a/open-api/openapi.json +++ b/open-api/openapi.json @@ -2,7 +2,7 @@ "openapi" : "3.0.1", "info" : { "title" : "Aries Cloud Agent", - "version" : "v0.11.0-rc1" + "version" : "v0.11.0rc2" }, "servers" : [ { "url" : "/" diff --git a/open-api/swagger.json b/open-api/swagger.json index 1cc96391cb..3139e7ce74 100644 --- a/open-api/swagger.json +++ b/open-api/swagger.json @@ -1,7 +1,7 @@ { "swagger" : "2.0", "info" : { - "version" : "v0.11.0-rc1", + "version" : "v0.11.0rc2", "title" : "Aries Cloud Agent" }, "tags" : [ { diff --git a/pyproject.toml b/pyproject.toml index 96b677e67f..8d960f72ce 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "aries_cloudagent" -version = "0.11.0-rc1" +version = "0.11.0rc2" description = "Hyperledger Aries Cloud Agent Python (ACA-Py) is a foundation for building decentralized identity applications and services running in non-mobile environments. " authors = ["Hyperledger Aries "] license = "Apache-2.0"