Address DIDCommV2 Service Endpoint definitions (#104) and update dependencies to support Pydantic 2.x (#114).#113
Draft
hpretila wants to merge 6 commits intosicpa-dlab:mainfrom
Draft
Address DIDCommV2 Service Endpoint definitions (#104) and update dependencies to support Pydantic 2.x (#114).#113hpretila wants to merge 6 commits intosicpa-dlab:mainfrom
hpretila wants to merge 6 commits intosicpa-dlab:mainfrom
Conversation
…ccordingly, also updated references per pydid pydantic bump.
pydid to 0.5.x.pydid to 0.5.x.
pydid to 0.5.x.pydantic versions 2.x.x and update dependency ranges and bump pydid to 0.5.x.
pydantic versions 2.x.x and update dependency ranges and bump pydid to 0.5.x.pydantic versions 2.x.x, bump pydid to 0.5.x and update dependencies.
pydantic versions 2.x.x, bump pydid to 0.5.x and update dependencies.pydantic versions 2.x.x, bump pydid to 0.5.x and update dependencies.
pydantic versions 2.x.x, bump pydid to 0.5.x and update dependencies.pydantic versions 2.x.x, bump pydid to 0.5.x and update dependencies.
pydantic versions 2.x.x, bump pydid to 0.5.x and update dependencies.
Author
|
Pulled back to draft state and updated the scope so it's not just a version bump. Looking to address #104 to support the spec when it comes to DIDCommV2 Unsure if each type is exclusive to DIDCommV2 and DIDCommV1 respectively. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request updates the project's
pydiddependency to achieve two things;pydidas part of Add DIDCommV2Service builder methods and update dependencies Indicio-tech/pydid#187. This will enable interoperability with other peers that leverage the new DIDCommV2 Service endpoint definition.pydid, which now leverages Pydantic 2.x models. Per Pydantic 2.x.x Compatibility and newer PyDID Dependency #114, the current dependency constraints, particularly for pydid and its reliance on Pydantic v1, preventdidcomm-pythonfrom being used in projects that have adopted Pydantic v2.Other dependencies such as
attrs,pycryptodomexandAuthlibwere updated [non-exhaustive] as well developer dependencies such aspytestandpytest-asyncio.Summary of Changes
Dependency Updates:
>=0.5.2),pydantic(to>=2.7.0),attrs,Authlib, and others to allow for newer versions.Code Adjustments for DIDCommV2: [TBD, still working on these!]
Code Adjustments for Pydantic 2.0:
attrsand Pydantic v2, particularly around stricter model validation and data conversion to support it.didcomm/pack_encrypted.py,didcomm/core/utils.py, anddidcomm/protocols/routing/forward.pygenerated by Black and flake8 automated formatting.pydidand the.to_dict()to.model_dump()migration in Pydantic v2.Workflow changes:
main.Key Files Modified
didcomm/pack_encrypted.pydidcomm/core/defaults.pydidcomm/core/utils.pydidcomm/protocols/routing/forward.pytests/unit/andtests/test_vectors/to align with the changes.Breaking Changes
pydidandpydanticmay introduce changes perpydidandpydantic. While the code and tests have been adapted and no major API changes have been made, downstream consumers should verify compatibility with their own use cases, especially regarding the stricter validation ofVerificationMethodtypes introduced in newer versions ofpydid.Testing
All existing tests have been updated and confirmed to pass with the new dependency set using
poetry run pytest.