## [Unreleased]
+**Attention**: Now requires Java 21 and libsignal-client version 0.37
+
+### Added
+- New --hidden parameter for removeContact command
+- New --notify-self parameter for send command, for sending a non-sync message when self is part of the recipients or groups.
+ With this parameter sending to the self number (+XXXX) now behaves the same as the --note-to-self parameter.
+- New --unrestricted-unidentified-sender parameter for updateAccount command
+
+### Improved
+- Better shutdown handling after Ctrl+C and SIGTERM
+
+## [0.12.7] - 2023-12-15
+
+**Attention**: Now requires native libsignal-client version 0.36.1
+
+### Fixes
+- Fix linking to an existing account
+
+## [0.12.6] - 2023-12-11
+
+### Fixes
+- Fix linking to an existing account
+- Fix migration from old account data
+
+## [0.12.5] - 2023-11-21
+
+### Fixes
+- Fix issue with joining groups by group link for new accounts
+- Fix receiving address of shared contact
+- Fix receiving sync edit messages in groups
+
+### Changed
+- Create safety numbers based on ACI instead of phone number
+
+## [0.12.4] - 2023-10-22
+
+### Fixes
+- Prevent ConcurrentModificationException
+- Update captcha help text
+
+## [0.12.3] - 2023-10-17
+
+### Added
+
+- Added `startChangeNumber` and `finishChangeNumber` commands to switch to another phone number
+- Added `--quote-attachment` parameter to `send` command
+- Added support for scannable safety numbers based on serviceId
+- Added `EditMessageReceived` signal for D-Bus interface
+- Added new exit code `5` for rate limit failures
+- Added full CDSI refresh to get current ACI/PNIs for known numbers regularly
+
+### Fixed
+
+- Correctly respond with delivery receipts for edit messages
+
+### Changed
+
+- JSON-RPC requests are now executed in parallel.
+ Clients should make sure to use the `id` field to get the correct response for a request.
+
+## [0.12.2] - 2023-09-30
+
+**Attention**: Now requires native libsignal-client version 0.32.1
+
+### Added
+
+- Added `--receive-mode` parameter for `jsonRpc` command
+- Add `libsignal_client_path` build property to override libsignal-client jar file
+
+### Changed
+- `jsonRpc` command now supports multi-account mode including registering and linking
+
+## [0.12.1] - 2023-08-26
+
+### Added
+
+- New `addStickerPack` command
+
+### Fixed
+- Fixed some issues with upgrading from older accounts
+
+### Changed
+- Reverted receive notification in JSON-RPC to old format, only explicit subscriptions should use the new format
+
+## [0.12.0] - 2023-08-11
+**Attention**: Now requires native libsignal-client version 0.30.0
+
+### Breaking changes
+- Adapt receive subscription notification in JSON-RPC to have payload in result field
+ - Before: `{"jsonrpc":"2.0","method":"receive","params":{"envelope":{ ... },"account":"+XXX","subscription":0}}`
+ - After: `{"jsonrpc":"2.0","method":"receive","params":{"subscription":0,"result":{"envelope":{ ... },"account":"+XXX"}}}`
+
+### Added
+- Manage identities via DBus (Thanks @bublath)
+- Added support for SVR2 PINs
+
+### Fixed
+- Fixed finishLink/receive/register/verify commands for JSON-RPC
+- Update to the latest libsignal to fix various issues
+
+## [0.11.11] - 2023-05-24
+**Attention**: Now requires native libsignal-client version 0.25.0
+
+### Added
+- New `--text-style` and `--quote-text-style` flags for `send` command
+
+### Fixed
+- Fixed migration of older account files
+- Fix deleting old unregistered recipient
+
+## [0.11.10] - 2023-05-11
+**Attention**: Now requires native libsignal-client version 0.23.1
+
+### Added
+- Support for receiving and sending edit messages with `--edit-timestamp`
+
+## [0.11.9.1] - 2023-04-23
+
+### Fixed
+- Fix build with Java 20
+
+## [0.11.9] - 2023-04-22
+
+### Fixed
+- Workaround issue with linking to newer app versions
+
+## [0.11.8] - 2023-04-05
+
+### Added
+- Added file attachment attributes to JSON output (Thanks @signals-from-outer-space)
+
+### Fixed
+- Scrub E164 number from dbus paths
+- Fix sending large text messages to multiple recipient
+- Fix deleting old group in dbus mode
+- Fix issue with unknown identity serviceId
+
+### Improved
+- Relaxed Content-Type check in http daemon mode (Thanks @cedb)
+
+## [0.11.7] - 2023-02-19
+**Attention**: Now requires native libsignal-client version 0.22.0
+
+### Fixed
+- Fix issue with missing pni identity key
+- Fix graalvm sqlite issue (Thanks @Marvin A. Ruder)
+- Fix issue with forgetting recipient
+
+### Changed
+- Allow JSON-RPC commands without account param if only one account exists
+
+## [0.11.6] - 2022-12-18
+
+### Added
+- Allow using data URIs for updateGroup/updateProfile
+- New alive check endpoint for http daemon (Thanks @ced-b)
+
+### Fixed
+- Registration with voice verification now works if no system locale is set
+- Fixed retrieving attachments in JSON RPC mode (Thanks @ced-b)
+
+## [0.11.5.1] - 2022-11-09
+
+### Fixed
+- Fix updating from older signal-cli version
+
+## [0.11.5] - 2022-11-07
+**Attention**: Now requires native libsignal-client version 0.21.1
+
+### Added
+- Add `--http` flag to `daemon` command to provide a JSON-RPC http endpoint (`/api/v1/rpc`). (Thanks @ced-b)
+- The `receive` method is now also available in JSON-RPC daemon mode, for polling new messages.
+- Add `getAttachment` command to get attachment file base64 encoded. (Thanks @ced-b)
+- Add `--disable-send-log` to disable the message send log.
+- Add `--story` to `sendReaction` command, to react to stories.
+- Add `--story-timestamp` and `--story-author` to `send` command, to reply to stories.
+- Add `--max-messages` to `receive` command, to only receive a certain number of messages.
+
+### Changed
+- Send long text messages as attachment instead. This matches the behavior of the official clients.
+- Store attachments with a file extension, for common file types.
+
+## [0.11.4] - 2022-10-19
+
+### Added
+- Approve/Refuse group join requests, using same interface as adding/removing members
+- Add --ignore-stories flag to prevent receiving story messages
+
+### Fixed
+- Fixed issue with receiving messages that can't be decrypted
+- Do not discard incoming group join messages
+
+### Improved
+- Add code to receive new PNI after change number
+
+## [0.11.3] - 2022-10-07
+
+### Fixed
+- Fix sending messages to groups (in non-daemon mode)
+- Fix updating from older signal-cli version
+- Fix issue with handling decryption error message
+- Fix graalvm native build (Thanks @bentolor)
+
+## [0.11.2] - 2022-10-06
+
+### Fixed
+- Update user agent version to work with new Signal-Server check
+
+## [0.11.1] - 2022-10-05
+
+### Fixed
+- Fix sending group messages
+- Fix store migration issue on Windows
+- Fix building fat jars
+
+## [0.11.0] - 2022-10-02
+**Attention**: Now requires native libsignal-client version 0.20.0
+
+### Breaking changes
+- Changed meaning of `-v` flag from `--version` to `--verbose`.
+ So now extended logging can be achieved with `-vv`.
+- Remove deprecated fallback to reading from stdin if no message body is given.
+ To read a message from stdin, use the `--message-from-stdin` flag.
+
+### Added
+- Migrate PIN to new KBS enclave when Signal updates it
+- Add `--scrub-log` flag to remove possibly sensitive information from the log
+- Add `sendPaymentNotification` dbus method
+
+### Fixed
+- Fix an issue where messages were sent without sender phone number
+
+### Changed
+- Store data except base account data in sqlite database
+- Use new CDSI for contact discovery in compat mode
+
+## [0.10.11] - 2022-08-17
+**Attention**: Now requires native libsignal-client version 0.19.3
+
+### Added
+- Output content of received story messages
+
+## [0.10.10] - 2022-07-30
+**Attention**: Now requires native libsignal-client version 0.18.1
+
+### Fixed
+- Fix setPin/removePin commands which broke due to server side changes
+- Workaround GraalVM 22.2.0 issue with daemon connection
+
+## [0.10.9] - 2022-07-16
+
+### Changed
+- updateAccount command checks self number and PNI after updating account attributes
+
+### Fixed
+- Fixed small issue with syncing contacts from storage
+- Fixed issue with opening older account files
+
+## [0.10.8] - 2022-06-13
+
+### Added
+- Attachments can now be given as data: URIs with base64 data instead of just file paths (Thanks @KevinRoebert)
+- `version` command can now be used on the commandline, in addition to the `--version` flag.
+ In the next version the current short form `-v` will change its meaning to `--verbose`!
+
+### Improved
+- An account can now be registered on both LIVE and STAGING environment in the same config directory.
+- Logging output for registering has been extended.
+
+## [0.10.7] - 2022-05-29
+
+### Added
+- Added profile information to `listContacts` command output
+- Added filter flags for `listContacts` command
+- New `sendPaymentNotification` command to send payment receipt blobs
+- New `--given-name` and `--family-name` parameters for `updateContact` command
+- Implement sending link previews with `--preview-url`, `--preview-title` parameters for the `send` command
+- New `--send-read-receipts` parameter for `receive` and `daemon` commands for automatically marking received messages as read
+
+### Fixed
+- Issue with endless growing `pre-keys-pni` data directory
+
+## [0.10.6] - 2022-05-19
+**Attention**: Now requires native libsignal-client version 0.17
+
+### Added
+- Check if account is used on the environment it was registered (live or staging)
+- New command `deleteLocalAccountData` to delete all local data of an unregistered account
+- New parameter `-g` for `listGroups` command to filter for specific groups
+
+### Fixed
+- Fix deleting a recipient which has no uuid
+
+### Changed
+- Show warning when sending a message and no profile name has been set.
+ (A profile name may become mandatory in the future)
+- After blocking a contact/group the profile key is now rotated
+- Only update profile keys from authoritative group changes
+
+## [0.10.5] - 2022-04-11
+**Attention**: Now requires native libsignal-client version 0.15
+
+### Added
+- New `--ban`, `--unban` flags for `updateGroup` command to ban users from joining by group link
+
+### Fixed
+- Fix plain text output of blocked group ids
+- Fix error output in case of rate limiting
+- Fix error when creating a group with no members
+- Fix adding recent Signal-Desktop versions as linked devices
+
+## [0.10.4.2] - 2022-03-17
+### Fixed
+- Crash in json output when receiving message from untrusted identity
+- Fix multi account commands for newly created accounts
+
+## [0.10.4.1] - 2022-03-02
+### Fixed
+- Linking to current apps (which currently don't include a PNI identity yet)
+- Show better error message when --target-timestamp is missing for sendReceipt
+
+## [0.10.4] - 2022-02-20
+### Added
+- Implement support for change number as linked device
+- Add `--message-from-stdin` flag for send command. The current behavior of
+ reading from stdin if the `-m` flag is not given, will be removed in a future
+ version.
+
+### Changed
+- Align receive timeout behavior for dbus client with cli and JSON-RPC.
+ Timeout is reset by every incoming message
+- Renamed `error` field in json receive response to `exception`
+
+### Fixed
+- Prevent a stale jsonrpc connection from interfering with message receiving
+
## [0.10.3] - 2022-02-01
### Added
- MessageSendLog to cache sent message for 24h.
### 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
+- Respect phone number sharing mode and unlisted state set by primary 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.
### Added
- New global parameter `--trust-new-identities=always` to allow trusting any new identity key without verification
-- New parameter `--device-name` for `updateAccount` command to change the device name (also works for the main device)
+- New parameter `--device-name` for `updateAccount` command to change the device name (also works for the primary device)
- New SignalControl DBus interface, to register/verify/link new accounts
- New `jsonRpc` command that provides a JSON-RPC based API on stdout/stdin
- Support for announcement groups
### Added
- A manual page for the DBus interface (Thanks @bublath, @exquo)
- Remote message delete command (Thanks @adaptivegarage)
-- sendSyncRequest command to request complete contact/group list from master device
+- sendSyncRequest command to request complete contact/group list from primary device
- New `--delete-account` argument for unregister (Dangerous)
- New `--family-name` argument for updateProfile
- Sending reaction to group (Thanks @adaptivegarage)
- Displaying of address for messages from untrusted identities
- Handling of recipient number or uuid changes (e.g. after account deletions)
-- Only respond to sync requests from master device
+- Only respond to sync requests from primary device
- Display of quit group messages
### Changed
* new listGroups command
* Support for attachments with file names
* Support for complete contacts sync
-* Support for contact verification sync
+* Support for contact verification sync
* DBus interface:
* Get/Set group info
* Get/Set contact info
- Fix linking of new devices
## [0.5.3] - 2017-01-29
-* New commandline paramter for receive: --ignore-attachments
+* New commandline parameter for receive: --ignore-attachments
* Updated dependencies
## [0.5.2] - 2016-12-16