Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Presage #41

Merged
merged 26 commits into from
Apr 28, 2021
Merged

Presage #41

merged 26 commits into from
Apr 28, 2021

Conversation

boxdot
Copy link
Owner

@boxdot boxdot commented Apr 28, 2021

⚠️ This change breaks the data model of Gurk.

This is an almost full rewrite based on the https://github.com/whisperfish/presage crate. The latter crate implement a native signal client with an optional storage of sessions in sled.

This removes the dependency on the signal-cli command line utility. Also we can use the official protobuf model of Signal.

Added features:

  • Automatic device linking on first start (relinking with --relink flag)
  • Quoting of messages
  • Alt+{Up, Down} as alias for PageUp and PageDown

Known problems:

  • Attachments feature was not ported.
  • Sync of contacts and groups is not implemented on startup.
  • When loosing connection, the stream of messages from presage stops.
  • As long presage, libsignal-service and libsignal-protocol crates are not publish on crates.io, we cannot publish Gurk there.

Also enable notification unconditionally.
Also, Escape removes selection of a message now.
Select a message with pageup/pagedown or alt + up/down, and send
a message. This automatically quotes the selected message, and
removes the selection after sending it.
Breaking model change. This fixes quoting of messages, which
depends on the exact millisecond timestamp as reference.
When device is not registered in the manager, we show the QR code
and wait until it is. In case the device was unlinked in the
meanwhile, we stop with an error and ask the user to rerun with the
`--relink` flag.
@boxdot boxdot merged commit 66b758a into master Apr 28, 2021
@boxdot boxdot deleted the presage branch April 28, 2021 12:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant