Add Codable support for Context
and unsafe add functionality
#3
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.
Add Codable support for
Context
and unsafe add functionality♻️ Current situation & Problem
Currently
Context
is not modifiable andContext
is not encodable.E.g. ApodiniMigrator has the use case to store gRPC related information within the Context of a
TypeInformation
. This requires:TypeInformation
instance after it has been created as otherwise the only source for Context information are Metadata declaration blocks onContent
types💡 Proposed solution
This PR adds a
unsafeAdd
method which can be used if appropriate. FurtherContext
is made Codable, supporting lossy encoding and decoding of ContextKeys which declare conformance toCodableContextKey
.⚙️ Release Notes
CodableContextKey
for ContextKeys which Value support Codable.➕ Additional Information
Related PRs
--
Testing
According tests were added.
Reviewer Nudging
--
Code of Conduct & Contributing Guidelines
By submitting creating this pull request, you agree to follow our Code of Conduct and Contributing Guidelines: