Release 0.26.0#314
Merged
sraptis-scy merged 9 commits intoeu-digital-identity-wallet:mainfrom Apr 15, 2026
Merged
Conversation
…STORAGE_TABLE_SPEC instance instead of separate StorageTableSpec objects
intercept deleteDocumentById() and delete ReIssuanceMetadata
…CredentialMetadata
|
vkanellopoulos
approved these changes
Apr 15, 2026
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.



New Feature: Credential Re-Issuance (
reissueDocument)Added support for re-issuing previously issued credentials without requiring the user to go through
the full OAuth authorization flow again. The library automatically captures and stores the
authorization context (tokens, endpoints, key aliases) after successful credential issuance,
enabling seamless credential refresh using the stored refresh token.
API
OpenId4VciManager.reissueDocument()New method on
OpenId4VciManagerfor re-issuing a credential:(opens browser).
allowAuthorizationFallback = false): If tokens are expired, delivers aReissuanceAuthorizationExceptionviaIssueEvent.Failureinstead of opening a browser. Designedfor WorkManager or other background execution contexts.
ReissuanceAuthorizationExceptionNew public exception class (
eu.europa.ec.eudi.wallet.issue.openid4vci.reissue.ReissuanceAuthorizationException)thrown when background re-issuance fails due to expired tokens. Wallet applications can check for
this exception type to schedule interactive re-authorization later.
Configuration
OpenId4VciManager.Config.Builder.withIssuanceMetadataStorage()Optional configuration for the storage backend used to persist re-issuance metadata. When not
configured, defaults to an
AndroidStorageinstance in the app's no-backup files directory.Flow
ProcessResponsestoresIssuanceMetadata(endpoints, tokens, key aliases) in the configured storage.reissueDocument(documentId)loads the stored metadata, reconstructs theauthorized request, creates a fresh
Issuer(reusing the original DPoP key), and submits a newcredential request.
ReissuanceAuthorizationException.automatically. For deferred outcomes, the old document is retained until the deferred credential
is eventually issued.