Evgeny Poberezkin
0b214acf97
core: support encrypted local files ( #2989 )
...
* core: support encrypted local files
* add migration
* update agent api, chat api
* fix query, exported functions to read/write files
* update simplexmq
* remove formatting changes
* test, fix file size
* reduce diff
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
* fail when receiving SMP files with local encryption
* update simplexmq
* remove style changes
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
2023-09-01 19:43:27 +01:00
spaced4ndy
7a5d4a5a3d
core: communicate connection chat version range ( #2886 )
...
* core: communicate connection chat version range
* encoding
* type
* implementation wip
* contact requests
* tests
* more tests
* refactor
* remove comment
* change encoding
* remove Maybe
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2023-09-01 19:20:07 +04:00
Moritz Angermann
761ddac55d
core: use GHC 9.6.2 ( #2641 )
...
* Make it compiler with 9.6
Can be built with:
cabal build all -j --allow-newer=base --allow-newer=ghc-prim --allow-newer=template-haskell --allow-newer=bytestring --allow-newer=memory --allow-newer=cryptonite
Using ghc 9.6
It mostly runs afoul of https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0366-no-ambiguous-field-access.rst
* compile with GHC 9.6.2: dependencies, imports, code
* update GHC version in CI
* update GHC version in desktop build scripts
* update simplexmq, sha256map.nix
* update compiler
* update simplexmq, direct-sqlcipher
* remove missing files from .cabal
* building on desktop
* mac build changes
* added version back
* building libffi from source
* update simplexmq
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
Co-authored-by: Avently <7953703+avently@users.noreply.github.com>
2023-08-24 21:56:37 +01:00
Evgeny Poberezkin
75d11c2b4f
core: update simplexmq (fix repeated HELLO message) ( #2962 )
...
* core: update simplexmq (fix repeated HELLO message)
* add callstack to tests
2023-08-21 21:45:16 +01:00
Evgeny Poberezkin
41c68c82ac
directory: add to website, send terms, sort search results ( #2950 )
...
* directory: add to website, send terms, sort search results
* corrections
2023-08-18 14:31:42 +01:00
spaced4ndy
4a5dd0a3a4
core: add indexes to improve slow queries performance ( #2931 )
...
* core: add indexes to improve slow queries performance
* idx_chat_items_group_id
* update simplexmq, schema
* update simplexmq
* remove index
* update simplexmq
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2023-08-16 10:41:52 +04:00
Evgeny Poberezkin
e326227d06
cli: change default member role from "admin" to "member" ( #2915 )
2023-08-14 07:37:04 +01:00
Evgeny Poberezkin
113669ac16
core: track slow SQL queries ( #2904 )
...
* core: track slow SQL queries
* fixes
* update simplexmq
2023-08-12 18:27:10 +01:00
Evgeny Poberezkin
837b6dcf46
directory: do not send welcome message to members joining the group ( #2895 )
2023-08-11 10:38:56 +01:00
Evgeny Poberezkin
38dc14f041
core: update simplexmq (revert DB busy error handling)
2023-08-09 16:45:31 +01:00
Evgeny Poberezkin
5353b466a9
directory: remove welcome when contact joins via group, member count in approval, chat commands via bot ( #2872 )
...
* directory: remove welcome when contact joins via group, member count in approval, chat commands via bot
* disable bot tests
* rename command
2023-08-08 16:06:56 +01:00
spaced4ndy
d80ee14f77
Revert "Revert "core: rework incognito mode - set per connection ( #2838 )""
...
This reverts commit b003d659e4
.
2023-08-08 17:25:28 +04:00
Evgeny Poberezkin
53662ef077
directory: store log ( #2863 )
...
* directory: store log
* store log test (fails)
* fix store log
2023-08-07 08:25:15 +01:00
Evgeny Poberezkin
4826a62d36
directory: list groups with group member counts ( #2855 )
...
* directory: list groups with group member counts
* list groups, test
* superuser can list all groups
* rename command
* remove type synonym
* add member count to search results
* fix test
2023-08-06 11:56:40 +01:00
Evgeny Poberezkin
8f72328136
directory: delist/relist groups when service or owner roles change ( #2844 )
...
* directory: delist/relist groups when service or owner roles change
* test role changes
* correction
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
* directory: suspend and resume group listing (#2848 )
* directory: suspend and resume group listing
* correction
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
2023-08-04 09:23:16 +01:00
Evgeny Poberezkin
497275646d
directory: registration of duplicate groups ( #2840 )
...
* directory: confirm registration of duplicate groups
* do not send duplicate groups for approval
* add test
2023-08-03 09:21:48 +01:00
Evgeny Poberezkin
e2d5ad0e48
Merge branch 'master' into directory-service
2023-08-02 16:25:56 +01:00
Evgeny Poberezkin
e34a8ef719
Merge branch 'stable'
2023-08-02 16:23:17 +01:00
Evgeny Poberezkin
e30f7695ab
core, ios: fix markdown ( #2837 )
2023-08-02 16:22:20 +01:00
Evgeny Poberezkin
2b69103055
SimpleX Directory Service ( #2766 )
...
* SimpleX Directory Service
* more events
* update events
* fix
* Apply suggestions from code review
metavar
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
* metavar 2
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
* process events
* remove command serialization
* update
* update
* process group profile update
* basic group registration flow
* search works
* better messages
* improve messages
* test broadcast bot
* test for directory service
* better processing of group profile change, test
* refactor
* de-list group when owner or service is removed from the group, tests
* fix: removing any member or any member leaving should not delist the group
* refactor
* more tests, fixes
* disable bot tests in CI
* remove comment
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
2023-08-01 20:54:51 +01:00
spaced4ndy
ae9b83515c
core: group snd status ( #2763 )
...
* core: group snd status
* schema, implementation
* refactor direct, tests
* configure, tests
* item info
* refactor
* refactor
* remove do
* rename
* remove receipts on events
* refactor
* refactor
* refactor
* refactor
* tests
* rename tests
* aggregates
* fix name
* refactor
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2023-07-26 14:49:35 +04:00
Evgeny Poberezkin
9c49b038cd
core: split preferences to separate file
2023-07-22 11:43:03 +01:00
Evgeny Poberezkin
a715e847ad
core: split preferences to separate file
2023-07-21 21:32:28 +01:00
Evgeny Poberezkin
048ada79bb
core: 5.2.0.2, update simplexmq (5.3.0.0) ( #2707 )
...
* core: 5.2.0.2, update simplexmq (5.3.0.0)
* fix tests
2023-07-17 14:44:33 +01:00
Evgeny Poberezkin
0f4473d272
core: delivery receipts ( #2644 )
...
* core: delivery receipts
* update simplexmq
* preference, migration
* add activated state to receipts preference, update tests
* set receiveReceipts as activated on new profiles
* update simplexmq, fix tests
* update simplexmq, fix withAckMessage
* one more option
* more
* use tryChatError in ack message
* enable all tests
* rename pref
* update item status on delivery receipts
* show receipts for tests
* remove chat preference for delivery receipts
* add user, contact and group settings for delivery receipts
* only send delivery receipts if enabled for the contact or user profile (and not disabled for the contact)
* fix tests
* reuse event, test
* configure per contact - db, api, test
* rename commands
* update simplexmq
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
2023-07-13 23:48:25 +01:00
spaced4ndy
34c2303ef1
core: update simplexmq (db error busy treatments) ( #2676 )
2023-07-11 20:57:14 +04:00
Evgeny Poberezkin
7a8db16791
core: catch IO exceptions in ExceptT ( #2669 )
...
* core: catch IO exceptions in ExceptT
* catch IO exceptions for ACK
* simplify, remove unnecessary changes
* fix, update simplexmq
* update simplexmq, enable all tests
* fix
* update simplexmq (fix finally)
* update sha256map.nix
2023-07-09 23:24:38 +01:00
spaced4ndy
ae17566a94
core: ratchet synchronization ( #2653 )
2023-07-05 19:44:21 +04:00
spaced4ndy
2f7ea909e2
core: update simplexmq (5.2.0) ( #2646 )
2023-07-03 20:13:00 +04:00
Evgeny Poberezkin
6da18d9b2a
core: group permision to allow files and media ( #2610 )
...
* core: group permision to allow files and media
* test
2023-06-24 12:36:07 +01:00
spaced4ndy
da2622f00e
core: moderate messages that have arrived after the event of moderation ( #2604 )
...
* core: moderate messages that have arrived after the event of moderation
* remove index
* test, delete moderation
* unused selector
* rework
* refactor
* change error
* parameter
* fix syntax
* refactor
* Nothing
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2023-06-22 20:38:09 +04:00
spaced4ndy
15b00f6110
core, mobile: unhide share address (reverts #2468 ) ( #2600 )
2023-06-20 10:15:28 +04:00
spaced4ndy
d929c34e71
core: include ConnectionStats into switch api response ( #2594 )
2023-06-19 16:07:17 +04:00
Evgeny Poberezkin
e1370e8f3c
core: split Store.hs to multiple files for faster re-compilation ( #2589 )
...
* core: split Store.hs to multiple files for faster re-compilation
* remove unused compiler pragmas
2023-06-18 10:20:11 +01:00
Evgeny Poberezkin
53d77b25ed
core: count successes and failures for batch operations, only log errors in info log-level ( #2585 )
...
* core: count successes and failures for batch operations, only log errors in info log-level
* correction
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
2023-06-17 10:34:04 +01:00
spaced4ndy
6d3cb0ea2e
core: api to abort connection switch; update simplexmq ( #2544 )
2023-06-16 19:05:53 +04:00
Evgeny Poberezkin
46c6f5e615
cli: option to auto-accept files ( #2540 )
...
* cli: option to auto-accept files
* auto-accept works
* test
* add missing field
2023-06-16 13:43:06 +01:00
spaced4ndy
425c7b947f
core: optimize group deletion (delays deletion of unused contacts) ( #2560 )
...
* core: optimize group deletion (wip)
* delay deletion of unused contacts
* clean up, fix test
* rename field
* remove from type, more checks, remove ctx
* remove space
* rename functions
* rename
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2023-06-12 13:45:39 +04:00
spaced4ndy
f581e91f19
core, mobile: correctly check whether date is recent ( #2559 )
2023-06-08 11:23:04 +04:00
spaced4ndy
875282e9ec
core: fix parsing multiple servers passed as cli argument ( #2549 )
2023-06-06 14:17:14 +04:00
spaced4ndy
128883b8a3
core: improve queries performance; delay first chat item expiration cycle on start ( #2521 )
2023-05-29 15:18:22 +04:00
spaced4ndy
57ed903a48
Revert "core: don't keep connection of the merged contact ( #2507 )" (for cross-version compatibility)
...
This reverts commit 6093219ce9
.
2023-05-26 13:52:06 +04:00
spaced4ndy
6093219ce9
core: don't keep connection of the merged contact ( #2507 )
2023-05-25 20:54:31 +04:00
spaced4ndy
fd2c7c888c
core: stabilize tests ( #2500 )
2023-05-24 16:14:41 +04:00
Evgeny Poberezkin
353927e6d2
mobile: hide share address until v5.2 ( #2468 )
...
* mobile: hide share address until v5.2
* terminal: hide /profile_address from help
2023-05-20 20:41:07 +01:00
Evgeny Poberezkin
9978957e6c
core: deleted timestamps for chat item ( #2459 )
...
* core: edited and deleted timestamps for item
* migration
* add deleted timestamp to chat item, use chat item if there are no versions
* use broker timestamp for remote deletions
* refactor
2023-05-19 13:52:51 +01:00
Evgeny Poberezkin
01b3e98358
core: update chat item details api ( #2456 )
2023-05-18 16:52:58 +01:00
spaced4ndy
b6a4f5f518
core: enable creation of decryption errors chat items ( #2450 )
2023-05-17 16:13:35 +04:00
Evgeny Poberezkin
b49f0d211b
cli: amend help messages ( #2447 )
...
* cli: amend help messages
* print servers on multiple lines
* correction
* fix tests
2023-05-16 18:37:45 +01:00
spaced4ndy
0274f3c2ac
core: inform of profile_address command when creating address ( #2444 )
2023-05-16 15:03:49 +04:00
Evgeny Poberezkin
c06a970987
core: message reactions ( #2429 )
...
* core: message reactions
* remove comments
* core: commands to set reactions
* fix tests
* process reaction messages
* store functions
* include reactions on item updates
* remove print
* view, tests
* load reactions for new items
* test removing reaction
* remove spaces
* limit the number of different reactions on one item
* remove unique constraints
* fix permissions
* indexes
* check chat item content before adding reaction
* fix group reactions
* simpler index
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
2023-05-15 11:28:53 +01:00
spaced4ndy
88059a2cc5
core: allow to set disappearance interval when sending message; don't check content change on live item updates ( #2423 )
...
* core: allow to set disappearance interval when sending message
* remove commented code
* enable tests
* don't check content change on live item updates
* update logic
* rename variable
* refactor, restore that received message can disabled disappearing
* refactor
* Revert "refactor"
This reverts commit 60dee29d76
.
* separate event
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2023-05-11 16:00:01 +04:00
spaced4ndy
ad7e4488ef
core: time actions on chat start ( #2417 )
2023-05-10 15:18:50 +04:00
spaced4ndy
63f344bde6
ios: view edit history; core: prohibit item updates w/t changes ( #2413 )
...
* ios: view edit history; core: prohibit item updates w/t changes
* read more less wip
* Revert "read more less wip"
This reverts commit 8e0663377b
.
* comment for translations
2023-05-09 20:43:21 +04:00
Evgeny Poberezkin
0b8d9d11e2
core, iOS: support for self-destruct password ( #2412 )
...
* core, iOS: support for self-destruct password
* disable test logging
* core: fix tests, iOS: remove notifications on removal
* change alerts
2023-05-09 09:33:30 +01:00
spaced4ndy
c87f4e68f7
core: keep chat item edit history ( #2410 )
2023-05-08 20:07:51 +04:00
spaced4ndy
54fc052e47
core: remove msg_delivery_events unique constraint (recreates table); cleanup old messages ( #2376 )
2023-05-05 13:49:09 +04:00
Evgeny Poberezkin
5116bfa79c
cli: option to disable notifications, closes #2340 ( #2373 )
2023-05-03 16:40:11 +01:00
spaced4ndy
e3011a1cb0
core: disable creation of decryption errors chat items ( #2365 )
2023-05-02 19:38:58 +04:00
spaced4ndy
0b57cc08a7
core, ios: include contact addresses in profiles ( #2328 )
...
* core: include contact links in profiles
* add connection request link to contact and group profiles
* set group link on update, view, api
* core: include contact addresses in profiles
* remove id from UserContactLink
* schema, fix test
* remove address from profile when deleting link, tests
* remove diff
* remove diff
* fix
* ios wip
* learn more, confirm save, reset on delete
* re-use in create link view
* remove obsolete files
* color
* revert scheme
* learn more with create
* layout
* layout
* progress indicator
* delete text
* save on change, layout
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2023-04-27 17:19:21 +04:00
Evgeny Poberezkin
591aa9eaa5
core: get all chat items API ( #2333 )
...
* core: get all chat items API
* test
2023-04-27 08:12:34 +01:00
spaced4ndy
a06393f520
core: file status command for XFTP files ( #2222 )
2023-04-21 13:36:44 +04:00
spaced4ndy
4d700d113d
core, ios: mark files to receive from NSE, receive marked files on chat start ( #2218 )
2023-04-20 16:52:55 +04:00
spaced4ndy
b386cc83a7
core, mobile: enable xftp by default ( #2198 )
2023-04-18 13:49:09 +04:00
spaced4ndy
09481e09b6
core, mobile: file error statuses, cancel sent file ( #2193 )
2023-04-18 12:48:36 +04:00
Evgeny Poberezkin
5f41cf3c52
core: change default for Disappearing Messages to "allow", mobile: support disabling without prohibiting ( #2192 )
...
* core: change default for Disappearing Messages to "allow", mobile: support disabling without prohibiting
* fix tests
* disable tests back in CI
* fixed tests 2
* remove enable
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
2023-04-17 18:13:10 +01:00
spaced4ndy
9edbe2e589
core: fix sending file to empty group ( #2191 )
2023-04-17 15:33:15 +04:00
Evgeny Poberezkin
b6876712f0
core: chat preference for audio/video calls ( #2188 )
...
* core: chat preference for audio/video calls
* correction
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
* clean up
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
2023-04-17 10:18:04 +01:00
Evgeny Poberezkin
5b4c183466
core: do not create decryption error chat items for earlier messages ( #2189 )
...
* core: do not create decryption error chat items for earlier messages
* do not report earlier error, mobile items, fix tests
2023-04-16 18:30:25 +01:00
Evgeny Poberezkin
aea526f69d
core: add chat items to indicate decryption failures due to ratchets being out of sync ( #2175 )
...
* core: add chat items to indicate decryption failures due to ratchets being out of sync
* show ratchet errors in chat items, show all integrity errors
* show decryption errors, tests
* ios: chat items, remove item for duplicate messages
* android: decryption errors chat items
* eol
2023-04-16 11:35:45 +01:00
spaced4ndy
90dffc975a
core: request and save extra recipient file descriptions ( #2170 )
2023-04-12 14:47:54 +04:00
Evgeny Poberezkin
1a3f0bed47
core: update servers API to include XFTP servers, ios: generalize UI to manage servers ( #2140 )
...
* core: update servers API to include XFTP servers, ios: generalize UI to manage servers
* add test
* update migrations to pass tests
* fix readme
* update simplexmq
2023-04-05 21:59:12 +01:00
Evgeny Poberezkin
10301aa742
terminal: autocomplete contacts, groups and commands ( #2125 )
...
* terminal: autocomplete contacts, groups and commands
* autocomplete for commands and member names
* update commands
* show variants
* improve
* improve
* do not show user in contacts, better state machine for tab states
* update CI runners
2023-04-04 14:58:26 +01:00
Evgeny Poberezkin
12fb2a4ec5
ci: move to ubuntu 20/22, disable 2 tests in CI ( #2142 )
...
* ci: move to ubuntu 20/22
* skip test on mac
* skip some tests on mac CI
* skip test on CI
* skip test unconditionally
* skip on CI only
2023-04-04 13:09:07 +01:00
spaced4ndy
73638129bc
core: cancel file transfer when chat item is marked deleted ( #2137 )
2023-04-03 18:49:22 +04:00
spaced4ndy
1a7a79d504
core: allow repeat receive after cancel for XFTP files ( #2134 )
2023-04-03 16:31:18 +04:00
spaced4ndy
f00cfa9108
core, mobile: CRSndFileCompleteXFTP event ( #2107 )
2023-03-30 19:45:18 +04:00
spaced4ndy
b20824e16c
core: notify about xftp errors ( #2105 )
2023-03-30 18:36:39 +04:00
spaced4ndy
6b725a8ef7
ios, android: cancel file UI; core: cancel file fixes ( #2100 )
...
backend fixes:
- check file is not complete on CancelFile,
- check file is not cancelled when processing XFTP events,
- mark SMP file cancelled if recipient cancelled in direct chat.
2023-03-30 14:10:13 +04:00
Evgeny Poberezkin
935d826a21
core, ios: unhiding user profiles always requires password ( #2101 )
2023-03-29 19:28:06 +01:00
Evgeny Poberezkin
a8c8137ade
core: fix current user becoming incorrect after hiding or (un)muting inactive user profile ( #2098 )
...
* core: fix current user becoming incorrect after hiding or (un)muting inactive user profile
* refactor test
2023-03-29 17:39:04 +01:00
spaced4ndy
af73e5993d
core: test xftp group file transfer ( #2088 )
2023-03-28 15:22:42 +04:00
Evgeny Poberezkin
0c3dc8a6e9
core: add down migrations and fix test
2023-03-27 19:39:22 +01:00
Evgeny Poberezkin
1f15cf54af
Merge branch 'master' into xftp
2023-03-27 18:57:14 +01:00
Evgeny Poberezkin
c96ba30018
core: support down migrations to allow reverting to the previous version ( #2072 )
...
* core: support down migrations to allow reverting to the previous version
* update schema
* update simplexmq
* rename errors
* remove unused functions
* migration UI, test migration
* update migration UI
* return current migrations in CRVersionInfo
* update simplexmq
* test down migrations
* cleanup ios
* show migrations in log
2023-03-27 18:34:48 +01:00
spaced4ndy
babbca48f8
Merge branch 'master' into xftp
2023-03-23 13:58:23 +04:00
spaced4ndy
2a9c138a23
xftp: set xftp config ( #2059 )
2023-03-22 22:20:12 +04:00
Evgeny Poberezkin
06a0dbd0f2
core, iOS: hidden and muted user profiles ( #2025 )
...
* core, ios: profile privacy design
* migration
* core: user profile privacy
* update nix dependencies
* update simplexmq
* import stateTVar
* update core library
* update UI
* update hide/show user profile
* update API, UI, fix test
* update api, UI, test
* update api call
* fix api
* update UI for hidden profiles
* filter notifications on hidden/muted profiles when inactive, alerts
* updates
* update schema, test, icon
2023-03-22 15:58:01 +00:00
spaced4ndy
47c6daf0cc
xftp: set app tmp directory ( #2054 )
2023-03-22 18:48:38 +04:00
spaced4ndy
60d6a47bdb
xftp: delete agent rcv files on completion, error, item delete ( #2040 )
2023-03-21 15:21:14 +04:00
Evgeny Poberezkin
858f0f2650
Merge branch 'master' into xftp
2023-03-18 08:38:27 +00:00
Evgeny Poberezkin
66ea2d5d71
Merge branch 'stable'
2023-03-18 08:38:10 +00:00
Evgeny Poberezkin
428db2f8f4
core: fix unused contact deletion ( #2023 )
...
* core: failing test for leaving and deleting the group joined via link
* fix test
* merge logic
* fix
* add condition
* refactor
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
* compiles
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
2023-03-17 16:03:19 +04:00
Evgeny Poberezkin
f915eb2a20
core: initial group member role when joining via link ( #1975 )
...
* core: initial group member role when joining via link
* fix tests
* set role when joining group via link, enable observer test
* show group link when role changes
* amend test
* check role is member or observer when creating a link
2023-03-16 22:19:51 +00:00
Evgeny Poberezkin
2bc1236a2c
terminal: update help, remove user ID from terminal /smp test command ( #1973 )
...
* terminal: update help, remove user ID from terminal /smp test command
* update mobile api
* update help
2023-03-16 22:19:22 +00:00
spaced4ndy
34a3387830
core: xftp servers option; use local xftp server in tests ( #2015 )
2023-03-16 14:12:19 +04:00
spaced4ndy
12200a74ff
core: XFTP file transfer test ( #2009 )
2023-03-16 10:49:57 +04:00
Evgeny Poberezkin
2817306659
core: types to support xftp ( #1971 )
...
* core: types to support xftp
* migration, amend types
* update protocol / types
* update protocol, types
* update schema, simplexmq
2023-03-09 11:01:22 +00:00
Evgeny Poberezkin
7d49209f79
core: initial group member role when joining via link ( #1975 )
...
* core: initial group member role when joining via link
* fix tests
* set role when joining group via link, enable observer test
* show group link when role changes
* amend test
* check role is member or observer when creating a link
2023-03-06 09:51:42 +00:00
Evgeny Poberezkin
b2e285c2c7
terminal: update help, remove user ID from terminal /smp test command ( #1973 )
...
* terminal: update help, remove user ID from terminal /smp test command
* update mobile api
* update help
2023-03-04 22:33:17 +00:00
Evgeny Poberezkin
2b77920dcd
teminal: option to log errors and service messages to file, closes #1516 ( #1957 )
...
* teminal: option to log errors and service messages to file, closes #1516
* rename function
2023-02-28 23:26:08 +00:00
Evgeny Poberezkin
50b90c4814
core: use 12 bytes IV for WebRTC frame encryption with AES-GCM ( #1951 )
...
* core: use 12 bytes IV for WebRTC frame encryption with AES-GCM
* refactor
2023-02-25 17:52:23 +00:00
Evgeny Poberezkin
a2e5733be6
core: update/fix webrtc frame encryption function to return error ( #1950 )
...
* core: update/fix webrtc frame encryption function to return error
* ios: update C header
* more tests
2023-02-24 20:55:59 +00:00
Evgeny Poberezkin
0ebf1da05d
core: WebRTC frames encryption ( #1942 )
...
* core: WebRTC frames encryption
* test
2023-02-19 23:51:50 +00:00
Evgeny Poberezkin
35a1ce4903
core: separate core options to use in bots ( #1937 )
...
* core: separate core options to use in bots
* ci: install pkg-config for mac
2023-02-18 17:39:16 +00:00
Evgeny Poberezkin
7c4c627ee9
terminal: support multiline messages (as JSON strings) ( #1936 )
...
* terminal: support for multiline messages
* fix
* fix tests
2023-02-18 15:16:50 +00:00
JRoberts
bd3325a889
core: show/keep message as moderated for moderator ( #1916 )
2023-02-08 22:29:36 +04:00
Evgeny Poberezkin
9e4499de6d
core: allow admins/owners delete member messages ( #1869 )
...
* core: allow admins/owners delete member messages
* allow message deletion to admins/owners
* deleted by types, schema
* check role
* fix test, view
* view, tests
* comment
* test timed deletion events
* refactor
* refactor
* refactor
---------
Co-authored-by: JRoberts <8711996+jr-simplex@users.noreply.github.com>
2023-02-08 11:08:53 +04:00
Evgeny Poberezkin
49b6979ff0
core: update simplexmq (not to fail batch subscriptions), terminal: log contact errors with -c option ( #1890 )
2023-02-04 23:13:20 +00:00
Evgeny Poberezkin
4a58ca60ac
core: split tests ( #1870 )
2023-02-01 17:21:13 +00:00
Evgeny Poberezkin
b206868730
core: add grop member role "observer" ( #1868 )
...
* core: add grop member role "observer"
* disable observer role until supported by most clients
2023-02-01 13:57:39 +00:00
Evgeny Poberezkin
ea64be55e1
core: fix cancelling inline file transfer ( #1867 )
...
* core: fix cancelling inline file transfer
* fix test
2023-02-01 00:01:22 +00:00
Evgeny Poberezkin
13bd51b97d
core: prevent making all users inactive when duplicate user is created ( #1862 )
...
* core: prevent making all users inactive when duplicate user is created
* skip async group test
2023-01-31 12:24:18 +00:00
Evgeny Poberezkin
a1ed0a84b8
core: use port 7001 for test server ( #1857 )
...
* core: use port 7001 for test server
* enable only failing tests
* start/stop server for every test
* log message that failed to parse
* stop chat synchronously
* print call stack
* add HasCallStack
* increase test timeout
* add call stacks
* more call stacks
* fix test
* disable failing test
* add delay between the tests
* make delay more visible
* remove change in error message
* reduce test delay, increase timeout
* increase delay between the tests
* run each test with a database in a different folder
* folder name
* refactor
* update nix file, more stacks
2023-01-31 11:07:48 +00:00
JRoberts
74df35d3b0
core: add multiple users tests for subscription, chat item expiration, timed messages ( #1840 )
2023-01-25 19:29:09 +04:00
JRoberts
bc1d86e303
core: send agent DEL events to view ( #1832 )
2023-01-24 20:07:35 +04:00
Evgeny Poberezkin
b386346cf1
core: update syntact for /_delete ( #1831 )
2023-01-24 16:00:32 +00:00
JRoberts
2a20f78877
core: use batch connection deletion api ( #1814 )
2023-01-24 16:24:34 +04:00
Evgeny Poberezkin
a0bf298b66
Merge branch 'master' into users
2023-01-23 18:45:52 +00:00
JRoberts
ab4e4e1db9
core: test cancelling inline file transfer ( #1827 )
...
* core: test cancelling inline file transfer
* tests
2023-01-23 18:27:44 +00:00
JRoberts
ca64ed9784
core: option to reuse servers for new user; support for users to configure same smp servers (add user_id to smp_servers UNIQUE constraint) ( #1792 )
2023-01-18 18:49:56 +04:00
JRoberts
a227e21fcf
core: support user deletion ( #1788 )
...
* core: support user deletion
* doSendCancel
* Apply suggestions from code review
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
* sendCancel
* refactor
* error to view
* refactor
* refactor
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2023-01-18 17:08:48 +04:00
JRoberts
2f39cfd86f
core: support marking chat items read for any user ( #1784 )
2023-01-17 13:08:51 +04:00
JRoberts
2fdc23274d
core: return user unread counts on ListUsers command ( #1763 )
...
* core: return user unread counts on ListUsers command
* split
* tests
* refactor
* viewUserInfo
* refactor
* remove omit nothing
* corrections
* fix
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2023-01-16 18:57:31 +00:00
Evgeny Poberezkin
91a39cae23
core: fix error handling ( #1761 )
...
* core: fix error handling
* fix tests
2023-01-16 17:25:06 +00:00
JRoberts
24c47657f4
Merge branch 'master' into users
2023-01-16 16:37:13 +04:00
JRoberts
cf6afb7687
Merge branch 'master' into users
2023-01-16 16:24:38 +04:00
Evgeny Poberezkin
774af334fd
terminal: command to show the most recent chats ( #1756 )
...
* terminal: command to show the list of the last active chats
* indent for chats without messages, help
* update command in the test
2023-01-16 12:10:47 +00:00
JRoberts
9dc6c1327f
core: manage calls for all users ( #1748 )
2023-01-16 15:06:03 +04:00
Evgeny Poberezkin
af414d7f6e
terminal: options for log level and internal queue sizes ( #1755 )
...
* terminal: log levels
* option for internal queue sizes
2023-01-16 09:13:46 +00:00
JRoberts
e452edb781
core: subscribe all users ( #1743 )
2023-01-14 15:45:13 +04:00
JRoberts
cccdcef914
core: add delays to tests to prevent output races ( #1736 )
2023-01-13 16:26:55 +04:00
JRoberts
424328b9d1
core: agent users ( #1727 )
2023-01-13 13:54:07 +04:00
JRoberts
7323bb4333
Merge branch 'master' into users
2023-01-11 18:38:55 +04:00
JRoberts
41e873d5ca
core: multiple users view, tests ( #1710 )
2023-01-11 11:00:28 +04:00
JRoberts
810f248c74
core: test async file transfer (sender & receiver restarts); close files in stopChatController; handle openFile error in getFileHandle ( #1716 )
2023-01-10 20:52:59 +04:00
JRoberts
ad1b091b18
Merge branch 'master' into users
2023-01-09 17:02:38 +04:00
JRoberts
113c67ec95
core: disable connections on repeat AUTH errors ( #1704 )
2023-01-07 19:47:51 +04:00
JRoberts
ae5deab8d3
core: print error context on agent errors ( #1697 )
2023-01-06 13:11:21 +04:00
JRoberts
bb0482104c
core, ios, android: add UserId to api commands ( #1696 )
2023-01-05 20:38:31 +04:00
Evgeny Poberezkin
edfece3206
core: test for live messages ( #1694 )
2023-01-05 09:08:31 +00:00
JRoberts
fa9e0086f6
core: multiple users api ( #1679 )
...
* api
* UCR
* Revert "UCR"
This reverts commit 1f98d25192
.
* comment
* events User
* events in api User
* CRActiveUser in APISetActiveUser
* process message with/without connection
* refactor
* mute error
* user in api responses
* name
* lost response
* user in CRChatCmdError
* compiles
* user in CRChatError
* -- UserId
* mute unused warning
* catch in withUser
* remove comment
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2023-01-04 21:06:28 +04:00
Evgeny Poberezkin
13090ff6ed
core: do not log TLS handshake errors by default, option to enable ( #1652 )
...
* core: do not log TLS handshake errors by default, option to enable
* update simplexmq
2022-12-27 12:05:13 +00:00
Evgeny Poberezkin
74245d3f2b
core: agent stats ( #1650 )
2022-12-26 22:24:34 +00:00
Evgeny Poberezkin
aae0802ec8
core: chat items with offered feature ( #1620 )
...
* core: chat items with offered feature
* texts
Co-authored-by: JRoberts <8711996+jr-simplex@users.noreply.github.com>
* new preference items
* test
Co-authored-by: JRoberts <8711996+jr-simplex@users.noreply.github.com>
2022-12-22 14:56:29 +00:00
JRoberts
ece928d57e
core: update ttl in contact user preference on profile update, fix api, tests; fix global user preferences not being updated in controller state ( #1617 )
2022-12-21 19:54:44 +04:00
JRoberts
9e045a44db
Revert "core: confirm ttl change to ensure consistent setting ( #1587 )"
...
This reverts commit 34e08b2058
.
2022-12-21 14:10:05 +04:00
JRoberts
34e08b2058
core: confirm ttl change to ensure consistent setting ( #1587 )
...
* core: confirm ttl change to ensure consistent setting
* wip
* confirm_pref_pending
* xInfo
* test api
* send confirmPrefProfile
* refactor
* don't return contact
* refactor profile update
* refactor further
* refactor further
* refactor xInfo
* refactor xInfo further
* refactor
2022-12-20 22:00:46 +04:00
Evgeny Poberezkin
5e9b7366cc
core: refactor chat item updates ( #1611 )
...
* core: refactor chat item updates
* removed unused function
* refactor
* refactor
2022-12-20 12:58:15 +00:00
Evgeny Poberezkin
64fb1f0b85
core: do not start disappearing timer for live messages until they stop being live, and start it on item update instead, provided they are read ( #1609 )
...
* core: do not start disappearing timer for live messages until they stop being live, and start it on item update instead, provided they are read
* change delays in tests
* diffInSeconds
2022-12-20 10:17:29 +00:00
JRoberts
84e43c57f6
core: ttl in feature chat items, view responses ( #1595 )
...
* core: ttl in feature chat items, view responses
* fix tests
* fix test
* view
* refactor
* use prefChangedValue
* use groupPrefChangedValue
* use cupIntValue
* simplify types
* groupFeatureState
* groupPrefToText
* prefToText, view
* remove prefFeature
* rename intValue -> param
* int -> param
* timedTTLText
* remove pragma
* restore pragma
* simplify
* timedTTLText
* fix tests
* off, after
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2022-12-19 21:18:59 +04:00
Evgeny Poberezkin
86271fe109
terminal: support live messages ( #1597 )
...
* terminal: toggle live message updates
* terminal: send live messages (#1599 )
* terminal: send live messages
* show edited messages
* send and continue live message with Alt-Enter
* truncate live messages to full words
* remove comments
* refactor
* refactor to avoid clearing live message prompt and show it faster
* $
Co-authored-by: JRoberts <8711996+jr-simplex@users.noreply.github.com>
Co-authored-by: JRoberts <8711996+jr-simplex@users.noreply.github.com>
Co-authored-by: JRoberts <8711996+jr-simplex@users.noreply.github.com>
2022-12-19 11:16:50 +00:00
JRoberts
5dab099b5c
core: increase thread delays in timed messages tests
2022-12-19 11:21:51 +04:00
Evgeny Poberezkin
4ab7e5e1c8
terminal: command to get last item ID (to reference it in the tests) ( #1596 )
...
* terminal: command to get last item ID (to reference it in the tests)
* lastItemId
Co-authored-by: JRoberts <8711996+jr-simplex@users.noreply.github.com>
2022-12-17 19:33:58 +04:00
JRoberts
f128ebac87
core: timed messages terminal api, tests ( #1591 )
2022-12-17 14:49:03 +04:00
JRoberts
cee403c1ed
core: simplify terminal mark messages read logic ( #1589 )
2022-12-16 15:56:16 +04:00
Evgeny Poberezkin
6b8705e9f4
core: support for live messages ( #1577 )
2022-12-16 11:51:04 +04:00
JRoberts
17cd3cdca4
core: make ttl optional in TimedMessagesPreference ( #1583 )
...
* core: make ttl Maybe in TimedMessagesPreference
* omitNothingFields
2022-12-15 18:11:08 +00:00
JRoberts
aa264690ab
core: add ttl to XMsgUpdate ( #1581 )
2022-12-15 17:29:46 +04:00
JRoberts
0e837ae392
core: timed messages ( #1561 )
...
* docs: disappearing messages rfc
* change schema
* word
* wip
* wip
* todos
* todos
* remove cancel, refactor
* revert prefs
* CITimed
* schema
* time on send direct
* time on send group
* add ttl to msg container, refactor
* timed on receive
* time on read
* getTimedItems, fix tests
* mark read in terminal - view, input, output, fix tests
* refactor
* comment
* util
* insert atomically
* refactor
* use guards
* refactor startTimedItemThread
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2022-12-15 15:17:29 +04:00
Evgeny Poberezkin
677c6aeb2e
core: types for timed and live messages ( #1572 )
...
* core: types for timed and live messages
* add protocol tests
2022-12-14 16:16:11 +04:00
Evgeny Poberezkin
7b8f5be821
core: type for group preference for timed messages ( #1568 )
...
* core: type for group preference for timed messages
* remove unused func
2022-12-14 12:30:24 +04:00
Evgeny Poberezkin
678dbec3e2
core: different types for chat preferences, to allow parameters ( #1565 )
2022-12-13 14:52:34 +00:00
Evgeny Poberezkin
146d5f99bc
core: clear connection verification status ( #1540 )
2022-12-10 12:09:45 +00:00
Evgeny Poberezkin
33e7538172
core: group description ( #1538 )
...
* core: group description
* support multi-line welcome message
* fix
2022-12-10 08:27:32 +00:00
Evgeny Poberezkin
a4f207875f
show /create link command when group is created ( #1536 )
2022-12-09 18:22:03 +00:00
Evgeny Poberezkin
95cc9e1e55
core: verify connection ( #1530 )
...
* core: verify connection
* update commands
* api to get/set verification code/status
* add migration
* refactor
* change command / response names
* reset verified status if code from agent doesn't match
2022-12-09 15:26:43 +00:00
JRoberts
9893aa665a
core: don't mark contacts as used on api get chat ( #1522 )
2022-12-07 19:05:32 +04:00
JRoberts
4319a581ca
core: more test cases checking deletion of unused contacts and incognito profiles ( #1513 )
2022-12-06 20:19:01 +04:00
JRoberts
fb05218558
core: delete unused contacts after deleting group ( #1503 )
2022-12-06 17:12:39 +04:00
Evgeny Poberezkin
6f59df4e33
prohibit direct messages to group contacts unless group preferences allow them ( #1476 )
...
* prohibit direct messages to group contacts unless group preferences allow them
* tests
* refactor
* more test
2022-12-03 18:06:21 +00:00
Evgeny Poberezkin
bc28568c63
core: update broker error type ( #1474 )
...
* core: update broker error type
* fix test
* fix test
2022-12-02 15:01:26 +00:00
JRoberts
9ad29aa17e
core: full deletion by sender based on preference; don't overwrite item content on "mark deleted" ( #1470 )
2022-11-30 19:42:33 +04:00
Evgeny Poberezkin
1872744543
core, mobile: add group feature to allow direct messages ( #1465 )
...
* core, mobile: split group features to a separate type (to add directAllowed later)
* add directMessages group feature, update tests
2022-11-29 15:19:20 +00:00
Evgeny Poberezkin
8af0229f52
terminal: set voice message preferences ( #1447 )
...
* terminal: set voice message preferences
* enable all tests
2022-11-27 13:54:34 +00:00
Evgeny Poberezkin
7f0355ec67
core: only send voice messages without acceptance ( #1444 )
...
* core: only send voice messages without acceptance
* remove some unnecessary changes
* update
* refactor receiveInlineMode
2022-11-26 22:39:56 +00:00
Evgeny Poberezkin
60fedbf5d2
core: only create feature items in used contacts ( #1421 )
...
* core: only create feature items in used contacts
* fix, test
2022-11-25 15:37:36 +00:00
Evgeny Poberezkin
4485d46307
mobile: simplex links in UI, core: trusted uri for simplex links ( #1410 )
2022-11-24 17:14:56 +00:00
Evgeny Poberezkin
a7345ee4d9
core: markdown for simplex invitation links ( #1408 )
...
* core: markdown for simplex invitation links
* update markdown for simplex links
* update markdown
* update
* stabilize test
2022-11-24 13:13:26 +00:00
Evgeny Poberezkin
388aaec80b
core: config to send inline files ( #1406 )
...
* core: config to send inline files
* update config
* add/update tests
* fix tests
2022-11-23 16:08:33 +00:00
Evgeny Poberezkin
e6e5faeb9c
core: chat items for group preferences ( #1402 )
...
* core: chat items for group preferences
* chat items for group preference changes and sent item for contact/user prerences changes
* prohibited features, tests
* enable all tests
* fix
2022-11-23 11:04:08 +00:00
Evgeny Poberezkin
2b09fb425d
core: chat items showing preference changes ( #1399 )
2022-11-22 12:50:56 +00:00
Evgeny Poberezkin
7544d2f9e7
core: fix preset servers ( #1392 )
...
* core: fix preset servers
* simplify
* fix
2022-11-21 07:43:41 +00:00
JRoberts
0cb8f8ad82
core: fix group preferences update ( #1385 )
2022-11-18 16:07:40 +04:00
JRoberts
5c2b70a214
core: fix test name
2022-11-17 14:42:28 +04:00
Evgeny Poberezkin
491fe4a9bf
core, ios: advanced server config ( #1371 )
...
* ios: advanced server config
* simplify UI
* core: ServerCfg
* commit migration, update schema
* add preset servers to response
* return default servers if none saved
* fix test
2022-11-16 15:37:20 +00:00
Evgeny Poberezkin
f8302e2030
core: SMP server connection test ( #1367 )
...
* core: SMP server connection test
* fix test
* update simplexmq
2022-11-15 18:31:29 +00:00
JRoberts
b5a812769b
core: full/merged preferences in User, Contact, GroupInfo types ( #1365 )
...
* core: preferences in User, Contact, GroupInfo types
* user and group preferences
* refactor
* linebreak
* remove synonyms
* refactor
* refactor
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2022-11-15 10:31:44 +04:00
Evgeny Poberezkin
e14ab0fed0
core: support SMP basic auth / server password ( #1358 )
2022-11-14 08:04:11 +00:00
JRoberts
8b794b2285
core: fix group link tests sporadically failing due to non deterministic events order ( #1353 )
2022-11-12 14:13:34 +04:00
JRoberts
f80f56de61
core: allow repeat connection via group link if group was deleted but contact with host is present ( #1335 )
2022-11-09 21:11:05 +04:00
Evgeny Poberezkin
ad1432e0ee
core: make parsing independent of the order ( #1332 )
...
* core: make parsing independent of the order
* test
* fix
Co-authored-by: JRoberts <8711996+jr-simplex@users.noreply.github.com>
2022-11-09 14:48:24 +04:00
JRoberts
21ffe0ad49
core: repeated invite correctly updates role if changed ( #1327 )
2022-11-09 14:12:42 +04:00
Evgeny Poberezkin
89de5497ef
core: update chat preferences ( #1292 )
...
* core: update chat preferences
* refactor, types
* rename types
* rename types
* make voice on by default
* create new user with empty preferences
* fix test
2022-11-04 21:05:21 +04:00
JRoberts
5243613045
core: group link connection request uri data; automatically join groups over group links ( #1275 )
2022-11-03 14:46:36 +04:00
Stanislav Dmitrenko
0d0de1da86
core: Test for incognito mode ( #1280 )
2022-11-01 16:05:05 +00:00
Stanislav Dmitrenko
4e5a5c11dc
core: Chat preferences ( #1261 )
...
* core: Preferences
* Changes
* fix types
* Follow up
* Review
* Review
* update logic
* update
* update 2
* Tests
* Fixed a bug and tests
* Voice -> voice messages
* refactor
* fix
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2022-11-01 14:32:49 +00:00
Evgeny Poberezkin
a72f603e13
core: switch connection ( #1277 )
...
* core: switch connection
* chat items for SWITCH
* additional events for connection switch
* update simplexmq
* test
* comment test output
* update messages for connection switch
Co-authored-by: JRoberts <8711996+jr-simplex@users.noreply.github.com>
2022-11-01 13:26:08 +00:00
JRoberts
179b9e093f
core: merge contacts when connecting via group link ( #1265 )
2022-10-27 23:38:03 +04:00
JRoberts
385ebd2298
core: update deleteGroupMember logic and its usages (no items & expiration) ( #1258 )
2022-10-26 13:37:17 +04:00