Releases: MinBZK/nl-wallet
Release list
Wallet 0.1.30
Release date: 9th of July, 2024
All commits in this release: v0.1.29...v0.1.30
Features
- Implement OpenID4VP for wallet and verifier
- Switch to OpenID4VP protocol in wallet and wallet server
- 25+ UI improvements and tweaks
- Implement demo relying party pages
- Add ErrorCategory trait to allow to discern between expected, critical and errors with
personal data - Implement error responses for requester endpoints
- Build 3 different flavors of wallet_server (issuer, verifier and combined)
- Deploy separate PID issuer
- Add job for preloading GBA-V data and storing on an encrypted volume
UI changes
- Update metadata
- Show wallet logo in QR code
- Update History Details
- Introduce RequestDetails Screen
- Update app icon
- Update InfoRow icon
- Fix ParagraphedList scroll issue
- Update CheckAttributesScreen title
- Dart tear-off fix (CardDetail crash)
- Add paragraphs to InfoScreen
- Split PlaceholderScreen description
- Fix loading overflow
- Add missing help buttons to card (sub) screens
- Lock dashboard crossAxisCount
- Update AboutScreen with Paragraphs
- Add Paragraphs to NoDigidScreen
- Remove MergeSemantics from ConfirmSheet
- Update PlaceholderScreen copy
- Avoid 'heading' voiceover
- Add collapsing title to personalization
- HelpButton Semantics & IconSize
- ScreenReader tweaks
- Indent & mock fix
- Fix SetupSecurity Header
- App bar transition Tweaks
- Personalize scroll behaviour fix
- Add generalWCAGChangeLanguage
- Update ScrollBarTheme
- Update backspace icon size
- Report issue CTA on missing attributes
QA
- Update flutter lint rules
- Re-enable e2e tests
- Update vulnerable npm dependencies
- Update Rust CI images to 1.79
- Remove personal patch repositories relating to cryptoki
- Implement e2e test app restart workaround
Tweaks
- Add marital status to PID card
- Remove nationality from PID card
- Remove unused code
- Monkeybike should not request the nationality
pid attribute - Update http crate to 1.x and more!
- Add basic security headers
- Fix port name character limit in k8s config
- Fix k8s config again
- Fix resource path in Dockerfile
- Another gba-v-hc-converter resources fix and k8s targetport restrictions
- Service should select pods with zeer-vertrouwd label. Deploy networkpolicies for gba-hc
Wallet 0.1.29
Release date: 19th of June 2024
All commits in this release: v0.1.28...v0.1.29
Features
- Only accept QR codes from the integrated scanner
- Web frontend: start and retry session
- Mock relying party demo page for all usecases
- Add device unsupported and session expired error
- Improve generic, no internet and server unreachable errors
- OpenID4VP part 1, protocol messages
- Upload Sentry symbols, Sentry backend reporting
- Allow configuring a return URL per use-case
- Update disclosure return_url protection mechanism
- Persist disclosure type in history
Wallet 0.1.28
Release date: 28th of May, 2024
All commits in this release: v0.1.27...v0.1.28
Features
- Support DigiD app2app flow
- Setup verifier web frontend library
- For usage by relying parties
- Available as Javascript library or script include
- Ephemeral session mechanism
- Makes it a bit harder for an unsophisticated attacker to forward sessions
- Setup error reporting from wallet core to Sentry
- Enhanced cleanup logic for wallet server session store
UI changes
- Details Incorrect screen
- Update pin blocked/timeout UI
- Add issuer row to CardDetailScreen
- Update card attribute widget
- Custom PID issuance pin warning
- Design System Buttons
- Add DisclosureType to WalletEvent &
- Remove TimelineAttribute
QA
- Remove unused mock code from wallet_server
- Fix PostgreSQL integration test
- Create specific config file for integration tests
- Use NVD API key in dependency-check CI job
- Re-organize integration test dependencies
- Add feature ticket reference to e2e test
methods
Tweaks
- Change log_requests feature in wallet_server to configurable flag
- Fix compiling UDL file for iOS
- Fix clippy 1.78
- Fix PID issuer PostgreSQL database URL in setup script
- Small OV documentation example fixes
- Split BRP proxy and GBA HC converter in startup script
- Do not strip android debug builds
- Build and run pid_issuer and wallet_server sequentially
- Update uniffi to 0.27.1
- Revert env variable export removal in GitLab CI
- Back behaviour during pin setup
- Align mock usecases
- Activity widget improvements
Wallet 0.1.27
Release date: 7th of May, 2024
All commits in this release: v0.1.26...v0.1.27
Features
- Initial implementation of GBA-V to Haal-Centraal conversion service
- 25+ UI and accessibility updates
- Initial version of documentation for OV usage
- Setup sentry for Flutter, and handle crashes and uncaught exceptions
- Implement OpenID4VCI credential issuer metadata discovery
QA
- Android Integration Tests
- E2E test updates after UI improvements / changes
- Use nonempty crate for Vecs that should not be empty
- Document attestation preview protocol extension
- Bugfix crash on disclosure pin error and add test
UI changes
- Update unlock screen; incorrect pin dialog
- Updated Headings & Semantics
- Update hyperlink behavior
- Read Conditions FocusArea fix
- Adjust PinKeyboard Scaling
- Menu Tweaks
- Update Stepper Semantics
- Announce Logouts
- Navigate to Dashboard onLogout
- Update Placeholder and CardDetails headers
- Announce Flashlight states
- Update bool value translations
- Translate mock pid data
- Update Select Language Semantics
- Remove issuer from CardDetailScreen
- Disable 'scrim' announcement
- Improve SliverWalletAppBar cache invalidation
- Fix Org. Detail Spacing
- Read out BSN digits individually
- Disable textScaling on card thumbs
- Add missing scrollbars
- Announce Dashboard
- Update illustrations
- Update introduction tests to succeed with animations
- Set untranslated-messages-file
Tweaks
- Android platform_support jacoco2cobertura changes
- Fix tests_integration/common dependency features
- iOS privacy manifest fixes
- Set token_type in Token Response to DPoP
- Fix iOS builds in Fastlane
- Changes to CocoaPods lockfile after adding Sentry
- Optional usage of release keys
- Use new Rust image that includes build targets
- Deploying gba hc converter
- Explicitly set Gradle file encoding for E2E tests
- Fix mdoc crate compilation with test feature
- Split wallet server deployment
- Fix running tests for just the mdoc crate
- Fix inconsistency in dp-cluster-mrp regarding shared_buffers size and
available memory - Clean up IssuerSigned::sign()
Wallet 0.1.26
Release date: 16th of April, 2024
All commits in this release: v0.1.25...v0.1.26
Features
- PID issuance using Haal Centraal BRP proxy
- PoC of GBA-V Ad-hoc to Haal Centraal data format conversion
- Add support for login with BSN flow
- Add optional API key authentication to requester endpoint
- Improve detecting and reporting when an actual network error has occurred
- Lots of UI fixes
- Add validity information and issuer common_name to disclosed attributes
- Add integration test cases with multiple and duplicate cards
- Implement extra checks for network payloads
QA
- E2E test & framework maintenance
- Build iOS apps in CI
- Provide privacy manifest for iOS
UI changes
- Update to flutter 3.19.4
- Update Appbar Icons for Accessibility
- Animate ConfirmButtons
- Add support for 'close' icon in end states
- Migrate to ConfirmButtons and make sticky
- Feature Check Feedback Fixes
- Update FocusArea for LinkTileButton
- Update Pin Errors Accessibility
- Update Pin Backspace functionality
UI tweaks
- Fix dismiss dialog bug
- Fix missing (cancel) disclosure logs in mock app
- Refactor deprecated imperative apply of Flutter's Gradle plugins
- Align mock pin validation with core
- Split 'Agreement' section Semantics
- Update Dashboard QR Button FocusArea
- Read out 'close' button on DisclosureSuccess
- Update ActivitySummary Semantics
Other tweaks
- Use BaseUrl newtype in mock_relying_party
- Fix URL of cross device result in MRP
- Only insert 'Results' title in HTML once
- Prevent empty string to be passed to app as
build-name - Fix missing build name in CI
- Clippy 1.77 fixes
- More fixes for Clippy 1.77
- Add --rm flag to docker compose run so it doesn't leave containers dangling.
- Give more resources to database clusters (especially wp) to prevent OOM for many connections
- Solve join footgun
- Fix image location for Kaniko
- Fix incorrect create_table path in docker-compose file
- Update h2 and mio to non-vulnerable versions
- Add missing MRP config
- Make MRP port a string
- Mount test-data.json configmap in gbamock
- Add merge-request-manual to rules, allow ONT to deploy on MR manually
- Fix wallet server tracing
- Typo in last-minute change to Android build script
- Fix wallet server port
Wallet 0.1.25
Release date: 26th of March, 2024
All commits in this release: v0.1.24...v0.1.25
Features
- Implement issuance with OpenID4VCI protocol
- Drop openid dependency in favour of our own code
- Remove mock PID issuer
- Add issuer certificate to attestation previews
- Build and release based on a version tag for demo and mock versions
- Update PIN screens to new and accessible design
- In disclosure on 'same device', hide phishing warning for 'cross device'
- Wipe contents of wallet on app reset
- Add active session api to fix StateErrors
- Propagate pin related (network)errors
Quality Assurance
- E2E test dynamic config for multiple app flavours
- Let cargo audit fail if a vulnerability is found
- Move hardcoded default pgadmin password to environment
- Disable Dart scanner for dependency-check
- Ignore RUSTSEC-2024-0019 since it is Windows-specific
- Rust test improvements and race condition fix
- Update and clean up TODO / FIXME comments x4
- Add test doing registration, issuance and disclosure
Tweaks
- Increase e2e wait timeouts and run selected tests only
- AndroidManifest updates
- Add missing make setup-saml step
- Fix HTML encoding error in QR code
- Bump minimum Android SDK to API 24 (Android 7.0)
- Change signature of SignResult for bulk signing to indicate the result is ordered
- Make returnUrlPrefix configurable to allow generating for other envs
- Make universal base link configurable compile time for wallet and run time for wallet_server
- Add some hierarchy to Wallet history errors
- Update and add configuration parameters for wallet-server
- Update default pipeline image to newest Debian
- Remove double sha prefix from Debian image version
- Bugfix multiple cards during disclosure
- Remove variables that are now part of the config.toml
- Automatically run wallet-server migrations in pipeline for SP
- Update images based on Debian Bookworm
- Use correct env var for image in wallet-server-migration-job
- Separate mock release
- Add missing env var to mrp-wallet-server deployment job
- Fix flutter-rust image hash in GitLab CI
- Remove workaround when setting documents callback
- wallet-server.toml will be moved to separate secret
- Update Android images in CI config
- Always generate der for development verifier and issuer CAs
UI Tweaks
- Add "Gemeente Amsterdam" login (disclosure) mock scenario
- Remove limit font scaling widget
- Replace issue report confirmation by placeholder screen
- Update textStyle on CheckDataOfferingPage
- Add missing (sub)title to disclosure loader
- Sync updated Lokalise texts
- Show correct (network)error on accept_pid error
- Dismiss dialog on lock
- Add dynamic disclosure success close button copy
- Privacy Banner & CardDataScreen updates
- Add soft-hyphen to break words in logical place
- Improve CTA readability with font scaling
- Fix font scaling on
RichTextwidget - Align menu button title with app bar title text style
- VoiceOver improvements
Wallet 0.1.24
Release date: 5th of March, 2024
All commits in this release: v0.1.23...v0.1.24
App / shared core / wallet service
- Setup recent history stream API and implementation
- Setup specified test scenarios
- Use separate tables for issuance and disclosure events
- Replace deeplink with universal link, move to wallet_common
- Added initial version of demo namespace
- Propagate NetworkErrors during personalisation
- Add same_device without return_url flow
App UI
- Update app introduction
- Introduce MockIndicatorText widget
- Add bottom back button to menu screen
- Render card thumbnail in history overview
- Update DisclosureScreen end states
- Use organization display name across UI
- Fix bottom back button hover area
- Update Android Splash Logo
- Update Flutter dependencies
- SafeArea / Landscape fixes
Quality assurance
- Add caching of Rust compilation to CI config
- Update aes-gcm in Cargo.toml
- Fix e2e click timeout on missing element
- Adapt CI to only run automation tests on test branch
- Fix e2e tests
- UC 7.2 e2e tests
- UC 9.7 e2e tests
- Deploy demo app
- Update e2e tests to cover app introduction updates
- Expand wallet_app unit tests
Misc
- Fix numbered list font size
- Update digid-connector config
- Remove add bundle identifiers for Fastlane Match
- Skip rdo-max compile when building docker image
- Revert "Update bundler dependencies"
- iOS universal link parameter
- Fix the config server URL in the setup script
- Fix Android deploy in CI
- Fix Letsencrypt certificate retrieval
- Revert "Update forgotten package identifier for Android"
- Update BeterWonen usecase displayName
- Remove redundant HomeScreen
- Move certificate deployment to wallet-config repo
- Fix pipeline
- Parameterise universal link host Android
- Downgrade rename dependency
- Fix test compilation for mdoc crate
- Always add manifest to artifacts
- Fix android CI build
- Fix e2e automation test jobs
- Always recreate nl-rdo-max in devenv
- Update Android images to JDK 17
- Update scheduled UI automation job to check .gitlab-ci for diffs
- Pass
UL_HOSTNAMEdown toflutter buildin CI - Fix key value pair when --dart-define variable is empty
- Fix mrp_disclosed_attributes_url once again
- Add rel=noopener to same_device flow href
- Update ndkVersion in build.gradle
Wallet 0.1.23
Release date: 13th of February, 2024
All commits in this release: v0.1.22...v0.1.23
App / shared core / wallet server features
- Wallet Config:
- Implement TLS pinning
- Sign and Verify the configuration
- Show configuration version and 'fetch date' on about screen
- UI Redesign
- Disclosure – Assess request
- Disclosure – Card sharing details
- Dashboard
- Dashboard – Remove bottom bar
- Activity Summary widget
- QR Scanner
- Verify all attributes are fetched through core
- Lock wallet after PIN timeout during disclosure
Quality assurance
- E2E tests: UC 2.3, UC 3.1, UC 7.1, UC 7.2
- Resolve security findings from OSV Scanner
- Generate and deliver Software Bill of Materials (SBoM)
- Fix new cargo audit findings (vulnerabilities, yanked & warnings)
- Scan Dart/Flutter dependencies for vulnerabilities
- Simplify
setUp()test steps to reach a certain screen - Investigate if CI feedback loop can be improved
- Fix DigiD connector constantly uses 50% of one CPU core (local dev)
- Merge wallet_server integration tests into disclosure/issuance tests
- Add e2e tests based on feature board
- Consider removing and then actually remove Base64Bytes
- Fix or remove pid_issuer integration test
- Make validity of X.509 Certificates configurable
Refactors and fixes
- Get name of card issuer during disclosure flow and history log from certificate
- Make privacy policy links clickable
- Correctly return isFirstInteractionWithRelyingParty
- Handle intentToRetain correctly in the UI
- Clean up testing feature flags in all Rust crates
- Investigate HSM connection issues
- Configure max sessions and session lifetime for HSM
- Remove code duplication ot
to_custom_ext - Debug MRP frontend disclosed attributes (all flows)
- Refactor certificate generation to KeyPair
- Hide invalid menu back button
- Remove static files hosting
- Remove issuerId from WalletCard
- Remove non-existing configmap from deployment
- Impl From<…> for SessionState<DisclosureData>
- Fixed disclosed attributes URL formatting
- Consistently import rand_core directly
- Update rustix
- Use Cow for keyed struct fields in mdoc
- CI improvements
- Add instructions for running CI locally
- Format imports using lightly rustfmt
Wallet 0.1.22
Release date: 23rd of January, 2024
All commits in this release: v0.1.21...v0.1.22
Shared core / wallet server features
- Store wallet config locally
- Disclosure count for Mdoc copies
- Deploy mock relying party
- Recurring config update
- Deploy mrp postgres
- Include SessionTranscript hash in disclosure return URL
- Add return url to certificate
- HTTP configuration caching
- Verify return URL against verifier certificate
- Store issued and disclosed attributes in history log
- Reject wallet configuration without newer version number
- Compare embedded config with stored config
- Implemented bulk signing for disclosure
- Log disclosure error events
- Introduce IssuerRegistration information in X509 MDL certificate
- Add request_origin_base_url field to ReaderRegistration
UI features
- Native splash support
- Handle Disclosure Networking Errors
- Handle optional return URL in disclosure flow
- Re-enable card history
- Optional requested cards
- (Sliver)WalletAppBar Widget
- Migrate to WalletAppBar
- Update Organization Pages
- Fix URL join's
- Fix text overflow issue
- Update Assess Request UI
- WalletAppBar Animation
Quality assurance
- Automate manual test cases
- Increase E2E
waitFortimeout - Continuous delivery mock and non mock (Android) apps
- Set app package name per Play Store AAB upload
- Fix missing
app_identifiervariable in private lane - Re-enable and expand mdoc crate integration tests
- Disclosure integration tests
- Expand disclosure integration tests
- Specify correct image for mrp-wallet-server deployment. Remove unnecessary logging.
- UC 9.1 and 9.3 e2e tests
Shared core / wallet server refactors and fixes
- Replace fieldnames by serde_introspect
- Fix unknown BSN issues
- Refactor WalletEvent to capture a single transaction
- Wallet server now requires separate requester server configuration
- Refactor JWT handling for OpenID4VCI
- TODO comment housekeeping in mdoc crate
- Catch all panics on Wallet Server startup
- Fix wallet server DB URL in setup script
- Attempt to reduce memory footprint for Rust tests
- Fixes for Rust 1.75 clippy warnings
- Add ReturnUrlTemplate to WalletServer API
- Enable mock feature for wallet unit tests
- Fix ReturnUrlPrefix::matches_url
- Update to Rust 1.75 and remove async_trait
- Wallet configuration update interval backgrounding fix
- Split wallet server status endpoint
- Add hybrid test
- Verify collection contains items before using
insert_many - Separate wallet config hosting
- Fix filename of pid_issuer ca for existence check
- Fix relative disclosed attributes url
UI refactors / fixes
- Fix mock DigiD login crash
- Disclosure flow fixes
- Remove empty placeholder card from mock log
- Remove DisclosureFlow model
- Fix deeplink handling on app cold start
- Add
pathPrefixto url deeplink - Flutter fix return url feature
- Changes to iOS for Flutter 3.16.7 upgrade
- Merge Semantics and PolicyScreen update
- Fix originUrl dart doc
Wallet 0.1.21
Release date: 12th of December, 2023
All commits in this release: v0.1.20...v0.1.21