Evgeny Poberezkin
6546426ec0
Merge branch 'master' into master-ghc8107
2023-12-11 14:56:25 +00:00
Evgeny Poberezkin
f9a125bc32
Merge branch 'master' into ios-notifications
2023-12-11 14:11:00 +00:00
spaced4ndy
53560378bb
Merge branch 'master' into master-ghc8107
2023-12-11 17:52:48 +04:00
Alexander Bondarenko
35c1975d66
core: chat list pagination ( #3505 )
...
* add pagination args to APIGetChats
* add search to chat list API
* rename arg to paginationTs_ to match type
* lift another condition to ids query
* collect all chat refs before sorting, then get details
* split remaining preview functions
* roll back to collecting ids first with query cleanup
* add connection join back to filter out groups
* extract and expand tests
* add fav/unread args
* WIP
* lay out the queries with favs
* tweak tests
* add fav tests
* fix order by in the before case
* build query footer wholly from pagination
* add migration for direct contacts
* fix setting contact_used
* fix setting contact_used for group link contacts
* align search x filters space with UI, support filter by either favorite or unread, optimize queries, indexes
* always set chat_ts, fix tests
* refactor tests
* fix pagination logic, more tests
* refactor, rename
* increase default pagination count
* comments
* refactor
* comment
* report errors
* refactor
* remove unused type
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2023-12-11 17:50:32 +04:00
Evgeny Poberezkin
666903ae76
Merge branch 'master' into ios-notifications
2023-12-11 13:06:32 +00:00
Evgeny Poberezkin
f65b8a9e78
core: mark all user messages read ( #3530 )
2023-12-11 12:26:45 +00:00
Evgeny Poberezkin
d3059afc99
ios, core: better notifications processing to avoid contention for database ( #3485 )
...
* core: forward notifications about message processing (for iOS notifications)
* simplexmq
* the option to keep database key, to allow re-opening the database
* export new init with keepKey and reopen DB api
* stop remote ctrl when suspending chat
* ios: close/re-open db on suspend/activate
* allow activating chat without restoring (for NSE)
* update NSE to suspend/activate (does not work)
* simplexmq
* suspend chat and close database when last notification in the process is processed
* stop reading notifications on message markers
* replace async stream with cancellable concurrent queue
* better synchronization of app and NSE
* remove outside of task
* remove unused var
* whitespace
* more debug logging, handle cancelled read after dequeue
* comments
* more comments
2023-12-09 21:59:40 +00:00
Evgeny Poberezkin
087acd9180
changes to support GHC 8.10.7 ( #3512 )
...
* Revert "raise lower bound on mtl to a real version (#3499 )"
This reverts commit f94c0311c1 .
* Revert "core: expand ranges to fit ghc 8.10 & 9.6 (#3496 )"
This reverts commit 9a1c7f41f7 .
* update simplexmq
* remove netword-transport fork
* compatibility with GHC 8.10.7
* simplexmq
* fix test
* simplexmq, deps
* update sqlcipher deps in sha256nix
* fix index-state in cabal.project
* index-state
* remove import
* add cabal.project.freeze
* simplexmq
* remove freeze
* simplexmq
* bytestring,simplexmq
* template-haskell, simplexmq
* simplexmq
* simplexmq
* simplexmq
* mtl
* simplexmq
* remove duplicate index-state
2023-12-04 12:29:49 +00:00
Evgeny Poberezkin
0b822e4a5c
Merge branch 'master' into master-ghc8107
2023-12-04 10:07:16 +00:00
Evgeny Poberezkin
6a9a67db14
cli: option to mark shown messages as read (off by default) ( #3506 )
...
* cli: option to mark shown messages as read (off by default)
* fix tests
* fix tests
2023-12-03 15:42:26 +00:00
spaced4ndy
38533213d2
Merge branch 'master' into master-ghc8107
2023-11-30 20:56:51 +04:00
Alexander Bondarenko
6a21d5c7f1
add remote host bindings ( #3471 )
...
* add remote host bindings
* group iface/address together
* rename migration
* add implementation
* update view and api
* bump upstream
* add schema
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-11-28 16:32:33 +00:00
Evgeny Poberezkin
b8da5e225b
Merge branch 'master' into master-ghc8107
2023-11-26 18:53:40 +00:00
Evgeny Poberezkin
d29f1bb0cf
core: use fourmolu styles ( #3470 )
2023-11-26 18:16:37 +00:00
Evgeny Poberezkin
5cc537f14c
Merge branch 'master' into master-ghc8107
2023-11-26 11:50:50 +00:00
Evgeny Poberezkin
6c05eb0ff3
directory: support group names with spaces ( #3458 )
2023-11-24 23:21:38 +00:00
Evgeny Poberezkin
0c096e2c89
Merge branch 'master' into master-ghc8107
2023-11-24 19:00:30 +00:00
Alexander Bondarenko
4327b023ed
terminal: add remote user information ( #3448 )
...
* terminal: add remote user information
* rename
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-11-24 18:44:12 +00:00
Evgeny Poberezkin
b1cf1656a0
core: cli remote control help section ( #3445 )
2023-11-24 10:48:14 +00:00
Evgeny Poberezkin
1781495ee3
Merge branch 'master' into master-ghc8107
2023-11-23 16:22:46 +00:00
Evgeny Poberezkin
d3f9616f9b
core: report controller info when found via multicast ( #3437 )
...
* core: report controller info when found via multicast
* handle parse error
2023-11-23 10:07:26 +00:00
Evgeny Poberezkin
2d4e99d610
cli: set device name for remote control via CLI option ( #3427 )
...
* cli: set device name for remote control via CLI option
* fix
* add property in tests
2023-11-22 22:11:32 +00:00
Evgeny Poberezkin
324f614e00
core: return remote controller port to UI ( #3430 )
2023-11-22 17:40:10 +00:00
spaced4ndy
3bdc6b5e28
Merge branch 'master' into master-ghc8107
2023-11-21 19:41:06 +04:00
spaced4ndy
a8576c2340
core: test forwarded message deduplication, mute terminal error ( #3414 )
2023-11-21 19:25:50 +04:00
Evgeny Poberezkin
3597d34716
Merge branch 'master' into master-ghc8107
2023-11-21 00:00:59 +00:00
Evgeny Poberezkin
47cd7de1ae
core: 5.4.0.4
2023-11-21 00:00:29 +00:00
Evgeny Poberezkin
ed6b3bbead
Merge branch 'master' into master-ghc8107
2023-11-20 13:01:22 +00:00
Evgeny Poberezkin
970ca3a409
Merge branch 'master' into remote-desktop
2023-11-20 10:35:20 +00:00
Alexander Bondarenko
68cbc605be
add remote session sequence to prevent stale state updates ( #3390 )
...
* add remote session sequence to prevent stale state updates
* remote RHStateKey
* add StateSeq check to controller
* clean up
* simplify
* undo withRemoteXSession API change
* simplify
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-11-20 10:19:00 +00:00
spaced4ndy
7d4127c51d
Merge branch 'master' into master-ghc8107
2023-11-20 14:07:08 +04:00
spaced4ndy
85e44dcb77
core: split group message forwarding tests ( #3400 )
2023-11-20 13:05:59 +04:00
Evgeny Poberezkin
daa8d9bb21
Merge branch 'master' into master-ghc8107
2023-11-19 23:42:13 +00:00
Evgeny Poberezkin
cc434cda55
Merge branch 'master' into remote-desktop
2023-11-18 18:03:13 +00:00
spaced4ndy
c0e8740f50
core: group message forwarding ( #3360 )
...
* core: group message forwarding types
* xgrpmemcon
* rework xgrpmemcon to use intros table
* only forward w/t error
* forward msg
* xGrpMsgForward, check integrity outside
* deduplicate group messages
* test
* change error
* item forwarded flag
* intro_chat_protocol_version, bump version
* comment
* highly available client option
* more comments
* notify xgrpmemcon on deduplication
* member vrange
* encoding
* remove MsgForward
* remove import
* exclude files from forwarding
* refactor
* rename to align with protocol
* forward more message types
* add events
* remove unused error, function
* add x.file.cancel, x.info and x.grp.mem.new to forwarded messages
* remove unused x.msg.file.cancel
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-11-18 17:52:01 +00:00
Alexander Bondarenko
42e0400014
core: add remote controller discovery with multicast ( #3369 )
...
* draft multicast chat api
* prepare tests
* Plug discovery into chat api
* Add discovery timeout
* post-merge fixes
* rename discovery state to match others
* update for unified invitation
* fix review notices
* rename, remove stack, update simplexmq
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-11-17 18:50:38 +00:00
Alexander Bondarenko
cf102da4d3
remote: add test for rejected ca detection and stability ( #3382 )
...
* add test for rejected ca detection and stability
* update mq commit
2023-11-17 11:19:33 +00:00
Alexander Bondarenko
339c3d2be1
Send CRRemote*Stopped on all errors ( #3376 )
...
* Send CRRemote*Stopped on all errors
Commands use the same action, made idempotent and don't send events.
* fix tests
* get http2 cancelling back
2023-11-15 17:31:36 +00:00
Evgeny Poberezkin
3d617bce25
core: test JSON conversion ( #3370 )
2023-11-14 22:40:15 +00:00
Evgeny Poberezkin
c91625b32a
core: update remote host session state, terminate TLS in one more case ( #3364 )
...
* core: update remote host session state, terminate TLS in one more case
* name
2023-11-13 20:16:34 +00:00
Evgeny Poberezkin
72b25385ba
core: event when new remote host added ( #3355 )
2023-11-12 21:43:43 +00:00
Evgeny Poberezkin
92e3f576ca
core: return controller app info in response when connecting, validate ID key ( #3353 )
2023-11-12 14:40:49 +00:00
Evgeny Poberezkin
8b67ff7a00
core: remote error handling ( #3347 )
...
* core: remote error handling
* fix test, show DB errors
2023-11-11 16:03:12 +00:00
Evgeny Poberezkin
74b78a8d7b
Merge branch 'master' into master-ghc8107
2023-11-10 21:11:08 +00:00
Alexander Bondarenko
227007c8f6
add /switch remote host ( #3342 )
...
* Add SwitchRemoteHost
* Add message test
* Match remote prefix and the rest of the line
* Move prefix match to utils
2023-11-10 17:49:23 +00:00
Alexander Bondarenko
f41861c026
core: terminate remote control TLS connection on both sides ( #3338 )
...
* handle session setup errors
* add command/async wrapper
* move furniture around
* detect disconnects and force them with closeConnection
* simplify http server log
* close TLS in other cases
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-11-09 22:43:44 +00:00
Alexander Bondarenko
b729144773
core: use xrcp protocol for desktop/mobile connection ( #3305 )
...
* WIP: start working on /connect remote ctrl
OOB is broken, requires fixing simplexmq bits.
* WIP: pull CtrlCryptoHandle from xrcp
* place xrcp stubs
* WIP: start switching to RemoteControl.Client types
* fix http2 sha
* fix sha256map.nix
* fix cabal.project
* update RC test
* WIP: add new remote session
* fix compilation
* simplify
* attach HTTP2 server to TLS
* starting host session in controller (WIP)
* more WIP
* compiles
* compiles2
* wip
* pass startRemote' test
* async to poll for events from host, test to send messages fails
* move xrcp handshake test to simplexmq
* detect session stops
* fix connectRemoteCtrl
* use step type
* app info
* WIP: pairing stores
* plug in hello/appInfo/pairings
* negotiate app version
* update simplexmw, remove KEM secrets from DB
* fix file tests
* tone down http2 shutdown errors
* Add stored session test
* bump simplexmq tag
* update simplexmq
* refactor, fix
* removed unused errors
* rename fields, remove unused file
* rename errors
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-11-08 20:13:52 +00:00
Evgeny Poberezkin
3839267f88
Merge branch 'master' into remote-desktop
2023-11-08 13:10:42 +00:00
spaced4ndy
8722d35278
core: fix deletion of contact without connections ( #3327 )
2023-11-08 13:15:08 +04:00
spaced4ndy
a04dc5d05b
core: preset simplex contact ( #3321 )
2023-11-07 17:45:59 +04:00