+## [0.10.3] - 2022-02-01
+### Added
+- MessageSendLog to cache sent message for 24h.
+ For resending messages in case the recipient fails to decrypt the message.
+- New global `--log-file` parameter to write logs to a separate file.
+ (`--verbose` can be used to increase the log level)
+
+### Improved
+- Better subscription handling for JSON-RPC `subscribeReceive` command
+
+### Fixed
+- Output receipt data for unsealed sender receipts again
+- Fix sending message resend requests to devices that happen to have the same deviceId
+
+## [0.10.2] - 2022-01-22
+### Fixed
+- Archive old sessions/sender keys when a recipient's identity key has changed
+- Fix profile fetch with an invalid LANG variable
+
+## [0.10.1] - 2022-01-16
+### Added
+- Send group messages with sender keys (more efficient for larger groups)
+- New command `listStickerPacks` to display all known sticker packs
+- New flag `--sticker` for `send` command to send stickers
+
+### Changed
+- Improve exit code for message sending.
+ Exit with 0 status code if the message was sent successfully to at least
+ one recipient, otherwise exit with status code 2 or 4 (for untrusted).
+- Download profiles in parallel for improved perfomance
+- `--verbose` flag can be specified multiple times for additional log output
+- Enable more security options for systemd service file
+- Rename sandbox to staging environment, to match the upstream name.
+
+### Fixed
+- The first incoming message after registration can now always be decrypted successfully
+- Ignore decryption failures from blocked contacts and don't send a resend request.
+
+## [0.10.0] - 2021-12-11
+**Attention**: Now requires Java 17 and libsignal-client version 0.11
+
+### Added
+- The daemon command now provides a JSON-RPC based socket interface (`--socket` and `--tcp`)
+- New daemon command flag `--receive-mode` to configure when messages are received
+- New daemon command flag `--no-receive-stdout` to prevent outputting messages on stdout
+- New command `listAccounts` that lists all registered local accounts
+- New command `removeContact`
+- Extend `send` command to allow sending mentions (`--mention`) and quotes (`--quote-timestamp`, `--quote-author`, `--quote-message`, `--quote-mention`)
+- New dbus methods sendGroupTying, unregister, deleteAccount
+- New dbus events MessageReceivedV2, ReceiptReceivedV2, SyncMessageReceivedV2 that provide an extras parameter with additional message info as a key/value map
+- New dbus method sendViewedReceipt (Thanks @John Freed)
+- New dbus object Configuration to read and update configuration values (Thanks @John Freed)
+- Payment info in json receive output (Thanks @technillogue)
+- `-c` alias for `--config` (Thanks @technillogue)
+
+### Changed
+- libzkgroup dependency is no longer required
+- Renamed `-u` and `--username` flags to `-a` and `--account` to prevent confusion with upcoming Signal usernames. The old flags are also still supported for now.
+- Respect phone number sharing mode and unlisted state set by main device
+- Adapt register command to reactivate account if possible.
+- dbus-java now uses Java 16 native unix sockets, which should provide better cross-platform compatibility
+- If sending to a recipient fails (e.g. unregistered) signal-cli now exits with a success exit code and prints additional information about the failure.
+
+### Fixed
+- Registering an existing unregistered account now works reliably in daemon mode
+- Fixed an issue with loading some old config files without UUID
+- More reliable send behavior if some recipients are unregistered
+