Evgeny Poberezkin
9134624e2a
Merge branch 'master' into master-ghc9
2023-08-25 14:13:30 +01:00
Evgeny Poberezkin
3a93954c50
core: debug agent subscriptions ( #2976 )
...
* core: debug agent subscriptions
* update commands to include subscriptions summary
2023-08-25 14:10:40 +01: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
971e71727a
core: specify compiler
2023-08-23 13:24:34 +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
75c9b40262
core: update simplexmq (sequential sending of batches) ( #2957 )
...
* core: update simplexmq (sequential sending of batches)
* update simplexmq
2023-08-20 18:47:30 +01:00
spaced4ndy
34cf672bc6
core: show count and average time for slow queries ( #2939 )
2023-08-16 21:21:12 +04: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
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
38dc14f041
core: update simplexmq (revert DB busy error handling)
2023-08-09 16:45:31 +01:00
Evgeny Poberezkin
eacfc4aa8c
5.2.1.0: update simplexmq (fix slow queries and incorrect message join)
2023-07-22 13:25:13 +01:00
spaced4ndy
7a166e46a9
core: update simplexmq (delete expired messages migration) ( #2740 )
2023-07-20 14:36:44 +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
Evgeny Poberezkin
5d9b6266ea
ios, core: pull to reconnect relays ( #2652 )
...
* ios, core: pull to reconnect relays
* update simplexmq
* update texts
2023-07-05 09:09:56 +01:00
spaced4ndy
2f7ea909e2
core: update simplexmq (5.2.0) ( #2646 )
2023-07-03 20:13:00 +04:00
spaced4ndy
77b3870654
core: update simplexmq (switch status encoding) ( #2615 )
2023-06-26 21:48:01 +04:00
spaced4ndy
d929c34e71
core: include ConnectionStats into switch api response ( #2594 )
2023-06-19 16:07:17 +04:00
spaced4ndy
6d3cb0ea2e
core: api to abort connection switch; update simplexmq ( #2544 )
2023-06-16 19:05:53 +04:00
Evgeny Poberezkin
4a12cf0922
core: update simplexmq (fix missing ACK on duplicate messages) ( #2525 )
...
* core: update simplexmq (fix missing ACK on duplicate messages)
* update simplexmq
2023-05-27 19:31:56 +01:00
spaced4ndy
b6a4f5f518
core: enable creation of decryption errors chat items ( #2450 )
2023-05-17 16:13:35 +04:00
spaced4ndy
a059739210
core: update simplexmq (time diff calculation); core, ios: add deleteAt to chat item info ( #2440 )
2023-05-15 21:07:03 +04:00
spaced4ndy
fca315ee1f
core: update simplexmq (pending replicas indexes) ( #2418 )
2023-05-10 16:09:58 +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
spaced4ndy
a9957fb46d
core: delete xftp file when user is not found by file id ( #2234 )
2023-04-25 15:46:00 +04:00
Evgeny Poberezkin
03882367da
core: 5.0.0.2
2023-04-20 14:19:09 +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
eb36f64676
core: update simplexmq (digest entity id); integrate xftp snd delete ( #2183 )
2023-04-14 15:32:12 +04:00
spaced4ndy
c2d70a5107
core: update simplexmq (recoverable xftp send) ( #2178 )
2023-04-13 20:46:07 +04:00
Evgeny Poberezkin
d84b30c071
core: update simplemq (preset xftp servers)
2023-04-06 23:16:16 +01:00
Evgeny Poberezkin
d250e503b0
core: update simplexmq (fix file reception on 32 bit CPUs)
2023-04-06 21:06:46 +01: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
6feac55380
core: update http2 library
2023-04-05 10:23:35 +01:00
Evgeny Poberezkin
2148d50393
core: use Int64 in time calculations ( #2143 )
...
* core: use Int64 in time calculations
* remove import
* make interval Int64
2023-04-04 14:26:31 +01:00
Evgeny Poberezkin
15a93014a5
core: update http2
2023-04-01 17:27:11 +01:00
spaced4ndy
b20824e16c
core: notify about xftp errors ( #2105 )
2023-03-30 18:36:39 +04: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
Evgeny Poberezkin
bcdf502ce6
core: update simplexmq
2023-03-22 09:10:54 +00:00
Evgeny Poberezkin
d8cc867099
update simplexmq
2023-03-18 16:18:59 +00:00
Evgeny Poberezkin
dce8a1dff9
update simplexmq
2023-03-18 13:43:01 +00:00
Evgeny Poberezkin
5bc9e014c2
update simplexmq
2023-03-18 13:26:54 +00:00
Evgeny Poberezkin
f2f4b26c35
core: update agent protocol to parameterize by entity type ( #1988 )
...
* core: update agent protocol to parameterize by entity type
* update simplexmq
2023-03-10 17:23:04 +00: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
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
0ebf1da05d
core: WebRTC frames encryption ( #1942 )
...
* core: WebRTC frames encryption
* test
2023-02-19 23:51:50 +00:00
Evgeny Poberezkin
e5009a58df
core: update simplexmq v4.4.1
2023-02-18 19:04:59 +00:00
Evgeny Poberezkin
958299784d
core: update simplexmq (more strict transport host parser
2023-02-04 23:31:01 +00: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
2473d14baa
core: 4.5.0.4, update simplexmq
2023-02-03 11:32:32 +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
Evgeny Poberezkin
f5f61c5806
core: update simplexmq, v4.5.0.0
2023-01-28 13:59:46 +00:00
Evgeny Poberezkin
77d0f70270
update simplexmq
2023-01-24 13:39:12 +00:00
JRoberts
2a20f78877
core: use batch connection deletion api ( #1814 )
2023-01-24 16:24:34 +04:00
Evgeny Poberezkin
006a30e65c
update simplexmq
2023-01-19 19:41:19 +00:00
JRoberts
e8cab01c03
core: update simplexmq (fkey indexes) ( #1786 )
2023-01-17 16:41:19 +04:00
JRoberts
df6cec6a32
core: update simplexmq (session mode, users commands) ( #1757 )
2023-01-16 17:00:24 +04:00
JRoberts
892b91e958
core: update simplexmq (subscribe users in different sessions) ( #1734 )
2023-01-13 15:14:46 +04:00
JRoberts
424328b9d1
core: agent users ( #1727 )
2023-01-13 13:54:07 +04:00
Evgeny Poberezkin
a1b27e9a99
update simplexmq (better handling of quota errors)
2023-01-04 15:07:33 +00: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
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
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
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
Evgeny Poberezkin
e14ab0fed0
core: support SMP basic auth / server password ( #1358 )
2022-11-14 08:04:11 +00:00
JRoberts
1cfbbd3115
core: update simplexmq (3.4.0) ( #1328 )
2022-11-09 14:13:39 +04:00
Evgeny Poberezkin
cbdd9b9e37
ios: switch contact and member to another address ( #1282 )
...
* ios: switch contact and member to another address
* update simplexmq (JSON encoding)
2022-11-02 09:48:20 +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
290ef9de61
core: update simplexmq (queue rotation) ( #1276 )
2022-10-31 14:29:38 +04:00
Evgeny Poberezkin
7f544da6cf
core: debug chat and agent locks, update simplexmq ( #1243 )
...
* core: debug chat and agent locks, update simplexmq
* add connId
Co-authored-by: JRoberts <8711996+jr-simplex@users.noreply.github.com>
* update lock strings
* fix encoding test
Co-authored-by: JRoberts <8711996+jr-simplex@users.noreply.github.com>
2022-10-22 21:22:44 +01:00
JRoberts
f7da034cf1
core: use acceptContactAsync on auto-accept, reuse incognito profile for contacts accepted via group link ( #1208 )
...
* update simplexmq (acceptContactAsync)
* acceptContactRequestAsync, single profile
* refactor
* refactor 2
* refactor
* Update src/Simplex/Chat/Store.hs
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
* refactor
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2022-10-14 14:57:01 +04:00
JRoberts
f9be6e6434
update simplexmq (lock on async commands retries) ( #1191 )
2022-10-10 13:40:06 +04:00
Evgeny Poberezkin
7a54351f15
core: update simplexmq (connection-level locks) ( #1170 )
...
* core: update simplexmq (connection-level locks)
* update simplexmq
* update simplexmq
* update simplexmq
* only run file tests
* update simplexmq
* enable all tests
* update simplexmq
2022-10-04 17:19:00 +01:00
Evgeny Poberezkin
23212def51
update simplexmq v3.3.0
2022-10-01 15:19:41 +01:00
JRoberts
428d3cdba5
core: delete connections asynchronously ( #1151 )
2022-09-30 16:18:43 +04:00
Evgeny Poberezkin
a977a0dd17
core: single function to initialize the chat controller only if encryption key is correct ( #1107 )
2022-09-23 22:22:56 +04:00
Evgeny Poberezkin
06c7b9a995
update simplemq (sql function)
2022-09-22 12:29:50 +01:00
Evgeny Poberezkin
f0e18c62fe
code: update simplexmq (async secure)
2022-09-20 15:42:36 +01:00
Evgeny Poberezkin
b0ed64533f
update simplexmq
2022-09-18 13:54:33 +01:00
Evgeny Poberezkin
5d55657186
core: support sql queries ( #1066 )
...
* core: support sql queries
* remove gradle change
2022-09-17 16:06:27 +01:00
Evgeny Poberezkin
3351503744
update simplexmq (fix stopping agent)
2022-09-17 00:30:49 +01:00
Evgeny Poberezkin
29b333cf0c
update simplexmq
2022-09-16 13:43:37 +01:00
Evgeny Poberezkin
d1571798f4
update simplexmq
2022-09-14 21:50:44 +01:00
Evgeny Poberezkin
08e0d7339f
Merge branch 'master' into sqlcipher
2022-09-14 18:46:03 +01:00
JRoberts
c07d4a5e4e
core: use async agent commands when establishing connections w/t user action ( #977 )
...
* wip
* wip
* wip
* schema
* schema
* wip
* wip
* rework
* revert
* update simplexmq
* async commands
* corr id wip
* wip
* update simplexmq
* corr id
* wip
* rename variable
* wip
* refactor
* ACK continuation
* wip
* fix queries
* fix queries
* clean up schema
* update simplexmq, do not lock on stopping chat
* clean up
* refactor
* refactor
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2022-09-14 19:45:21 +04:00
Evgeny Poberezkin
082e12683b
core: change database encryption API to require current passphrase on all changes ( #1019 )
2022-09-05 14:54:39 +01:00
Evgeny Poberezkin
2b5e3a9459
core: C API to migrate and check database ( #1008 )
...
* core: C API to migrate and check database
* update simplexmq
2022-09-02 16:38:41 +01:00
Evgeny Poberezkin
38b3965e68
use commoncrypto flag in ios nix build (for sqlcipher) ( #1006 )
...
* use commoncrypto flag in ios nix build (for sqlcipher)
* remove openssl flag from cabal.project
2022-09-02 11:26:14 +01:00
Evgeny Poberezkin
3613fc953e
core: encrypt chat database ( #988 )
...
* core: encrypt chat database
* check DB key error on start
* function to encrypt database
* encrypt database command
* decrypt, rekey
* remove rekey, refactor
* test for db encryption/decryption
* update simplexmq
2022-08-31 18:07:34 +01:00
Evgeny Poberezkin
5e5c851173
update simplexmq
2022-08-30 16:35:56 +01:00
Evgeny Poberezkin
69758971af
update simplexmq (to fix network-transport at 0.5.4)
2022-08-30 16:17:48 +01:00
Evgeny Poberezkin
025f838f43
update dependencies
2022-08-30 14:33:43 +01:00
Evgeny Poberezkin
02ca7234fb
use SQLCipher ( #981 )
...
* use SQLCipher
* pass encryption key via CLI options
* update dependencies to use git
* add CONTRIBUTING.md
* move flag, enable build in sqlcipher branch
* update dependencies
2022-08-30 12:49:07 +01:00
Evgeny Poberezkin
164426db49
core: catch error when toggling notifications ( #954 )
...
* core: catch error when toggling notifications
* filter current members
* filter active members
2022-08-20 14:47:24 +01:00
Evgeny Poberezkin
992ba75306
update simplexmq
2022-08-19 15:32:55 +01:00
Evgeny Poberezkin
70168967a3
core: commands to set chat notification settings ( #946 )
...
* core: commands to set chat notification settings
* add API
2022-08-19 15:17:05 +01:00