And yet Signal has not and does not allow retaining messages when moving to a new device (essentially, migrating messages to a new device) because it explicitly marks its data with the do not backup attribute to avoid leaking data. I find this sort of design decisions unappealing. If it put up a message on first launch and allowed the user to decide that, or even kept the current design on data backup as the default with a hidden setting to allow it, the app would be more useful.
As it stands, Signal is good for voice calls where one doesn't usually have a need to retain content of the conversation. For text messages, it becomes useless after sometime (when the user changes devices).
You can actually do a plaintext import / export of all of your chat histories from the menu in the conversations screen (at least in Android.) It won't use OS level backup/restore, but I feel like that would've taken flak on HN anyways :)
As it stands, Signal is good for voice calls where one doesn't usually have a need to retain content of the conversation. For text messages, it becomes useless after sometime (when the user changes devices).