mirror of
https://github.com/dani-garcia/vaultwarden.git
synced 2026-07-22 12:13:22 -05:00
[PR #7283] [MERGED] fix(sends): emit hideEmail as non-null boolean in sync response #41349
Reference in New Issue
Block a user
📋 Pull Request Information
Original PR: https://github.com/dani-garcia/vaultwarden/pull/7283
Author: @kvdb
Created: 6/1/2026
Status: ✅ Merged
Merged: 7/7/2026
Merged by: @BlackDex
Base:
main← Head:fix/send-hideemail-non-null📝 Commits (1)
2c97b41fix(sends): emit hideEmail as non-null boolean in sync response📊 Changes
1 file changed (+1 additions, -1 deletions)
View changed files
📝
src/db/models/send.rs(+1 -1)📄 Description
Problem
GET /api/syncreturns"hideEmail": nullfor Sends whosehide_emailcolumn is NULL. Thesends.hide_emailcolumn isNullable<Bool>with no default (added in migration2021-05-11-205202_add_hide_email), so it is NULL for older Sends and any code path that leaves it unset.The Bitwarden Android client deserializes
SyncResponseJson.Send.hideEmailas a non-null KotlinBooleanand throws aJsonDecodingException, aborting the entire sync. Web, desktop and CLI clients coerce null tofalse, so only accounts with at least one Send are affected, and only on Android.The official Bitwarden server treats
hideEmailas non-nullable.Fix
Default
Nonetofalseat the serialization boundary inSend::to_json():The field stays
Option<bool>internally. No DB migration is required, and this fixes both existing NULL rows and any future NULLs.🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.