Stanislav Dmitrenko
acb372a4ce
core: call uuid ( #4777 )
...
* core: call uuid
* fix
* text
* android, desktop
* ios
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-08-28 15:31:02 +01:00
Diogo
d5eb7b7811
core: api to change user of pending connections ( #4681 )
...
* core: add api that enables change of owner user id for pending connections
* old user sends request, incognito handling and coverage
* call agent inside set connection api
* only set user id if servers match
* simplify
* reduce test noise
* return invitation when a newone is created
* add test for profile on different server
* refactor namings
* update simplexmq
* refactor
* test improvements and simplify
* remove fdescribes
* simplify and reduce vars scope
* put if back
* refactor, change error
* refactor view
* refactor
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2024-08-21 13:27:58 +04:00
spaced4ndy
413a8f6b76
core: correctly update chat item deletable state on deletions ( #4558 )
2024-08-01 18:56:41 +04:00
Evgeny Poberezkin
8bda64a5c1
core: api to delete multiple messages ( #4452 )
...
* core: api proposal (not implemeted) to delete multiple messages
* core: batch delete multiple messages; allow to moderate self (#4513 )
* allow to moderate self, remove saving item-message record on mark delete
* direct batched
* local batched
* group batched
* moderate batched
* refactor
* fix
* fix test
* remove unused event
* direct message batching wip
* direct test
* more tests
* trunk
* batch compressed
* remove unused function
* new agent api
* sendGroupMessages
* forward batched
* refactor
* remove comment
* rename, comment
* refactor
* many chat batches test (doesn't pass)
* refactor
* comment
* rename
* comment
* linearize
* fix
* fix
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
* core: check item deletable with margin (#4533 )
* simplexmq
* remove L.singleton (ghc 8.10.7)
* test delay
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2024-07-30 22:59:47 +01:00
spaced4ndy
bfab76ed90
core: allow sending messages immediately on joinConnection, acceptContact ( #4465 )
2024-07-18 20:33:51 +04:00
Evgeny Poberezkin
b348979b32
core: use disabled servers as known for private message routing ( #4444 )
...
* core: use disabled servers as known for private message routing
* send all servers to agent, add all preset servers
* update nix hashes
* refactor
* check that some servers are enabled, refactor
* update simplexmq
* remove functions
2024-07-12 14:12:20 +01:00
spaced4ndy
a9d2535292
core: differentiate inactive and forwarded group snd statuses ( #4420 )
...
* core: GroupSndStatus
* rfc
* encoding, db apis
* pending, forwarded statuses
* encoding
2024-07-09 18:29:36 +01:00
spaced4ndy
d951003191
core: servers summary api ( #4319 )
...
* core: servers summary api
* rework
* server known types
* set stats file path
* rename
* local simplexmq
* update
* rfc
* update
* update
* get servers
* compile summary
* remove sort
* rename
* rename, refactor
* refactor attempt
* refactor attempt 2
* refactor
* fix
* fix2
* remove space
* refactor xftp
* update
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2024-06-25 09:51:55 +04:00
Evgeny Poberezkin
5ac521f6d8
core: commands to debug subscribed SMP queues ( #4253 )
...
* core: commands to debug subscribed SMP queues
* getLastRcvMsgInfo
* DESC
* update
* update commands, ui compiles
* update
* ios: fix type
* swap
* simplexmq
* group member queue info
* copy button in the alert
2024-05-31 12:45:58 +01:00
spaced4ndy
2143eb2d7a
core: batch send pending group messages ( #4242 )
2024-05-28 18:32:29 +04:00
spaced4ndy
3d395b0e45
core: inactive connections/members ( #4009 )
2024-05-28 16:42:07 +04:00
spaced4ndy
01cadefde7
core: avoid creating duplicate introductions between group members connecting concurrently ( #4235 )
2024-05-27 18:42:39 +04:00
Evgeny Poberezkin
c70e7223d9
core: delete connection records when connecting (JOIN) fails ( #4233 )
...
* core: delete connection records when connecting (JOIN) fails
* show errors in commands
2024-05-27 15:32:09 +01:00
Evgeny Poberezkin
291df6e9d0
core: logging of chat events ( #4216 )
...
* core: update simplexmq (persist server errors)
* fix
* same config
* logging
* logging 2
* log
* log 2
* finally
* catch better
* more logs
* logs
* fix
* more logging, context from PROHIBITED
* warning
* more logs
* logs3
* logs4
* logs in simplexmq
* log locks from simplemq
* log queue size
* log sendMessagesB in simplexmq
* update simplexmq
* logs5
* logs6
* logs7
* logs8
* logs8
* logs9
* logs10
* log11
* log12
* fix test
* more logs
* logging
* clean up
* refactor
* simplify
* tags
* log level
* remove network errors from the log
* rename
2024-05-24 21:09:21 +01:00
spaced4ndy
d2d450d1d7
core: check known relays before file reception, support user approval of unknown relays ( #4043 )
...
* core: check known relays before file reception, support user approval of unknown relays
* comment
* reset on not approved agent error
* add privacyAskToApproveRelays to AppSettings
* filter distinct servers
* update simplexmq
* remember user_approved_relays
* refactor
* rename
* update simplexmq
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-05-20 17:23:29 +04:00
spaced4ndy
4c0d47bbd4
core: message statuses for sending proxies ( #4161 )
...
* core: delivery path
* update simplexmq
* via proxy snd flags
* error statuses
* rework errors
* proxy expired errors
* corrections
* move backwards compatibile parser to new type
* update simplexmq
* names
* refactor, style
* simplexmq
* refactor
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-05-15 12:30:05 +01:00
spaced4ndy
f40ba6f04d
core: api to differentiate contacts and conversations ( #4111 )
2024-05-13 16:51:54 +04:00
Evgeny Poberezkin
bc5af35a3e
core: wallpapers api ( #4110 )
...
* core: wallpapers api
* optional colors
* update
* api
* update
* whitespace
* typo
* test, fix
* fix color parsing
* separate UI and Theme color schemes
* update
* enable test
* multiple themes, one per color scheme
* theme overrides as a separate type
* rename
---------
Co-authored-by: Avently <7953703+avently@users.noreply.github.com >
2024-05-08 15:36:20 +01:00
spaced4ndy
aeb28400e9
core: take entity lock before processing file ( #4105 )
2024-04-29 19:32:53 +04:00
spaced4ndy
063a6dbc92
core: apply disappearing messages setting to call and group invitation chat items ( #4080 )
...
* core: apply disappearing messages setting to call and group invitation chat items
* remove comment
* fix incorrectly set edited field
* sent group invitations
* refactor
* Revert "refactor"
This reverts commit 4dd3070c2d .
2024-04-25 09:37:05 +01:00
spaced4ndy
7567791866
core: enable PQ encryption for contacts ( #4049 )
...
* wip
* migration
* remove migration
* remove flag wip
* Revert "remove migration"
This reverts commit 9e64663f9d .
* wip
* remove vrange parameterization
* tests mostly pass
* more tests pass
* enable for upgraded contacts
* remove migration
* core: test large messages (#4061 )
* update simplexmq, fix tests
* test test
* another test
* enable tests
* empty
* empty
2024-04-22 17:46:48 +01:00
spaced4ndy
638fd3756a
core: correctly populate data for items forwarded from groups ( #4025 )
2024-04-13 11:52:39 +01:00
spaced4ndy
ee53377070
core: fix forwarded item deletion ( #4018 )
2024-04-12 12:55:04 +04:00
Evgeny Poberezkin
a5db36469d
core: api to forward messages ( #3968 )
...
* wip
* wip
* test
* mute
* tests
* simplify (only bool flag)
* re-encrypt file
* tests
* more tests (wip)
* fix relative paths, refactor
* more tests
* more locks
* fix, tests
* more tests
* rework (revert from bool to ids)
* update schema
* more tests
* add to info
* ForwardedMsg container
* Revert "ForwardedMsg container"
This reverts commit bb57f12151 .
* parser
* more tests
* rework api
* more locks
* test
* move
* remove from
* view
* prohibit editing
* item info view
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2024-04-09 16:02:59 +04:00
Evgeny Poberezkin
18efc28d16
core: additional group preferences: prohibit SimpleX links, restrict some features to specific roles ( #3964 )
...
* core: additional group preferences: prohibit SimpleX links, restrict some features to specific roles
* add role to group preference items, tests
2024-04-04 20:41:56 +01:00
spaced4ndy
069395c2a0
core: entity locks ( #3962 )
...
* core: entity locks
* more locks
* update sha256map
* add delay
* clean up
* empty
* fix tests
* empty
* empty
* more delays
* empty
* comment delays
* Revert "comment delays"
This reverts commit 4245b545fb .
* Revert "Revert "comment delays""
This reverts commit f803386945 .
* take lock in the beginning of processing loop
* empty
* empty
* remove lock
* rework file locks
* empty
* fix
* empty
* add connection locks
* empty
* fix test
* empty
* remove commented delays
* add to debug locks
* update
* refactor
* refactor
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-04-04 19:24:42 +01:00
Evgeny Poberezkin
2bd1a82b7d
core: revert "deps: switch to base64 via simplexmq ( #3957 )" ( #3985 )
...
* Revert "deps: switch to base64 via simplexmq (#3957 )"
This reverts commit d65137882b .
* update simplexmq
2024-04-03 10:47:38 +01:00
Evgeny Poberezkin
86fe28f1ed
core: chat hooks allowing to extend or customize chat core ( #3953 )
...
* core: chat hooks allowing to extend or customize chat core
* update
* json
* custom response
* user in db queries
2024-03-29 18:30:17 +00:00
spaced4ndy
366b58ead5
core: don't save async commands records for ack ( #3904 )
2024-03-28 19:52:06 +04:00
Alexander Bondarenko
d65137882b
deps: switch to base64 via simplexmq ( #3957 )
...
* deps: switch to base64 via simplexmq
* update error text
* update nix
* set simplexmq to master
* update paths
2024-03-28 13:09:04 +00:00
Alexander Bondarenko
7fa2f2f72e
core: organize withAckMessage ( #3889 )
...
* core: organize withAckMessage
* mark critical sections
* differentiate DB internal error from chat
* throw CRITICALs
* only CRIT on SEDatabaseError
* normalize errors
* shift MonadError into ExceptT
* simplify
* split critical handlers
* names, CRITICAL error in withAckMessage, comments
* only show critical alerts when database was locked or busy and message failed to process
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-03-12 17:47:38 +00:00
spaced4ndy
4f893d9502
core: improve getGroupChatItemQuote_ query performance ( #3897 )
2024-03-12 12:51:02 +00:00
Evgeny Poberezkin
49bd866c4b
core: pass version range to determine missing connection version ( #3887 )
...
* core: pass version range function to store methods
* pass current version to Connection to determine agreed version with peer
* simplify
2024-03-10 20:52:29 +00:00
Evgeny Poberezkin
60a73a539e
core: add agreed connection version field ( #3881 )
...
* core: add agreed connection version field
* fix
* progress
* use pqSupport and version to decide compression in messages
* pass version to encodeConnInfoPQ
* update pq enable/disable api
* remove TestConfig
* update nix dependencies
* update texts
* corrections
* create e2ee info items when connection switches from off to on first time
* corrections
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
* comment
* increase test timeout
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2024-03-10 11:31:14 +00:00
Evgeny Poberezkin
1f93d91af5
core: simplify feature versions ( #3879 )
...
* core: simplify feature versions
* update version agreement
* fix
* remove EmptyCase
2024-03-08 13:36:09 +00:00
spaced4ndy
109b6e0cff
core (pq): add pq_support field ( #3877 )
2024-03-08 12:24:27 +04:00
spaced4ndy
b403201310
core (pq): further integrate agent api ( #3874 )
...
* core (pq): further integrate agent api
* update both pq support and ecnryption
* update
* fix
* corrections
* corrections 2
* corrections 3
2024-03-08 11:40:55 +04:00
spaced4ndy
bc2b135880
core (pq): update types ( #3872 )
...
* core (pq): update types
* imports
* encode / max msg size types
* integrate new types
* update types/pq support
* tests compile
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-03-07 17:39:09 +04:00
spaced4ndy
61a3eb32ee
core (pq): global flag only affects new connections; api to allow PQ in old contacts ( #3869 )
2024-03-06 19:06:01 +04:00
spaced4ndy
eebf014ff7
core (pq): integrate agent api, create e2ee info items ( #3859 )
2024-03-05 20:27:00 +04:00
spaced4ndy
2155060ad0
core: groundwork for post-quantum encryption support ( #3845 )
2024-03-03 17:51:42 +04:00
spaced4ndy
c27973d202
core: restrict to delete user contact and display name ( #3822 )
2024-02-26 17:10:21 +04:00
Evgeny Poberezkin
e37654772f
core: api to save/get app settings to migrate them as part of the database ( #3824 )
...
* rfc: migrate app settings as part of export/import/migration
* export/import app settings
* test, fix
* chat: store app settings in db (#3834 )
* chat: store app settings in db
* add combining with app-defaults
* commit schema
* test with tweaked settings
* remove unused error
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
* remove app settings from export/import
* test, more settings
---------
Co-authored-by: Alexander Bondarenko <486682+dpwiz@users.noreply.github.com >
2024-02-24 15:00:16 +00:00
spaced4ndy
b0b249a56a
Merge branch 'stable'
2024-02-22 12:11:23 +04:00
spaced4ndy
f7d7f5461f
core: check user record when deleting contact and display name ( #3826 )
...
* filter out on merge
* checl contact, ldn
* fix
* corrections
* fix
* refactor
* diff
* refactor2
* remove contact id from error
* Revert "remove contact id from error"
This reverts commit f58af3dcac .
* remove Maybe from error
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-02-21 14:24:24 +00:00
spaced4ndy
c544a636f6
core, ui: remove usage of inline files (send only xftp files) ( #3823 )
2024-02-20 13:56:31 +04:00
spaced4ndy
654a7885c3
core: read chat items with logical database errors as invalid (don't fail) ( #3736 )
2024-02-19 15:17:14 +04:00
Alexander Bondarenko
daf67c0456
core: add direct xftp upload/download commands ( #3781 )
...
* chat: add direct xftp upload/download commands
* adapt to FileDescriptionURI record
* bump simplexmq
* add description uploading
* filter URIs by size
* cleanup
* add file meta to events
* remove focus
* auto-redirect when no URI fits
* send "upload complete" event with the original file id
* remove description upload command
* add index
* refactor
* update simplexmq
* Apply suggestions from code review
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
* fix /fc command for non-chat uploads
* fix
* rename (tests fail)
* num recipients
* update messages
* split "file complete" events for chats and standalone
* restore xftpSndFileRedirect
* remove unused store error
* add send/cancel test
* untangle standalone views
* fix confused id
* fix /fc and /fs
* resolve comments
* misc fixes
* bump simplexmq
* fix build
* handle redirect errors independently
* fix missing file status in tests
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-02-19 10:21:32 +00:00
spaced4ndy
afd145c979
core: improve chat list performance (indexes) ( #3728 )
2024-01-22 18:03:40 +04:00
spaced4ndy
16f53490c5
core: block member for all ( #3689 )
...
* core: silence member wip
* change approach
* more types
* remove comment
* bool in protocol msg
* flag in items, event
* send event, process
* apply moderation
* remove comment
* filter for forward, view
* tests
* rename
* separate response, check already blocked
* add test
* fix terminal api
* add comment
* don't send profile update
* corrections
* refactor
* rework - flag blocked by admin
* blocked in intro
* fix test
* cant block unblock self
* muted view, create unknown member
* blocked by admin in members list
* create with maybe null
* protocol changes
* align code with protocol
* revert terminal api
* restrict block api for admins
* stabilize test
* rename
* update protocol/types
* refactor
* refactor2
* stabilize test
* member field
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-01-19 17:57:04 +04:00