Commit Graph

693 Commits

Author SHA1 Message Date
spaced4ndy
4ccdd3a2da remove redundant filter query, NoteFolderName 2024-01-05 17:08:25 +04:00
spaced4ndy
7c13b48898 remove repeated folder 2024-01-05 15:20:11 +04:00
IC Rainbow
65bb3d2bbd switch to * for chat type sigil 2024-01-04 18:14:35 +02:00
IC Rainbow
6108cb852e remove unique check from schema 2024-01-04 13:43:40 +02:00
IC Rainbow
667cd925a7 switch to - for note folder chat type prefix and use empty name 2024-01-04 11:16:09 +02:00
IC Rainbow
cf408778d4 evict note folders from createUserRecord 2024-01-03 22:21:05 +02:00
IC Rainbow
1b99cb44f1 resolve comments 2024-01-03 19:38:20 +02:00
IC Rainbow
4eebb4e746 Merge remote-tracking branch 'origin/master' into ab/self-chat 2024-01-02 14:56:50 +02:00
IC Rainbow
d49a7ff784 use - as notes name 2024-01-02 14:55:33 +02:00
Alexander Bondarenko
e253c55ba4 core: compatibility with GHC 8.10.7 (#3608)
* GHC-8.10 compatibility

* tweak setters

* restore membership

* remove Show Batch

* fix bytestring-10 compat

* preserve membership qualifier in names

* a few more memberships

* rename

* remove with-compiler

* ci: add 8.10 builds, limit releases to 9.6

* use matrix.asset_name as release guard

* fix windows_build

* actually use ghc version from matrix

* fix typo

* revert build/hash split

* add ghc to cache key

* Force cache between build and tests

* use explicit caching steps

* skip unneeded tasks

---------

Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
Co-authored-by: Avently <7953703+avently@users.noreply.github.com>
2023-12-29 21:15:14 +00:00
spaced4ndy
478bb32cdb core: send group description to new members as welcome message after sending history (fixes welcome message being created before history) (#3623) 2023-12-29 22:42:55 +04:00
spaced4ndy
05b55d3fb5 ui: group history preference, enable in new groups by default; core: create group history feature items (#3596)
* Revert "core: do not create group history item (#3586)"

This reverts commit 2834b192ce.

* ios: group history preference

* fix tests

* android

* texts

* enable in new groups ios

* enable in new groups android

* android texts

* ios texts

* remove ellipsis

---------

Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2023-12-29 17:46:28 +00:00
IC Rainbow
3d69247240 pull mkChatItem out of createLocal to prevent ci record updates 2023-12-29 18:36:44 +02:00
IC Rainbow
79c2e83fd0 add file deletion check 2023-12-29 14:16:23 +02:00
IC Rainbow
dc8895c50c remove folder names, deletion, add autocreate 2023-12-28 22:01:35 +02:00
IC Rainbow
94fb992b4c remove local reactions 2023-12-28 20:29:18 +02:00
IC Rainbow
009772bdf8 resolve some comments 2023-12-28 20:12:32 +02:00
IC Rainbow
dba3d1d84a Merge remote-tracking branch 'origin/master' into ab/self-chat 2023-12-28 15:17:38 +02:00
Evgeny Poberezkin
b4dd6941d7 core: allow quoted strings (with spaces) in network interface of remote hosts (#3592) 2023-12-28 10:06:49 +00:00
Evgeny Poberezkin
b220b5f6ec core: fix contact subscriptions (#3611) 2023-12-27 18:55:50 +00:00
IC Rainbow
3907886991 add note updates 2023-12-26 16:28:36 +02:00
IC Rainbow
d0429f51c4 add read/unread 2023-12-26 15:17:41 +02:00
IC Rainbow
6033b21537 add reactions 2023-12-26 14:19:13 +02:00
IC Rainbow
1c5eaf94ac add folder clear 2023-12-26 12:33:17 +02:00
IC Rainbow
d28f02c383 replace FTLocal with createLocalFile 2023-12-25 18:55:53 +02:00
IC Rainbow
5202349f6c Merge remote-tracking branch 'origin/master' into ab/self-chat 2023-12-24 20:18:45 +02:00
IC Rainbow
aeab81e09d add APICreateChatItem and files 2023-12-24 19:59:38 +02:00
Evgeny Poberezkin
af22348bf8 core: use version from config, add tests (#3588)
* core: use version from config, add tests

* comment

* refactor
2023-12-24 13:27:51 +00:00
IC Rainbow
b6d043f1cd add getLocalChatItemIdByText 2023-12-24 14:32:50 +02:00
Evgeny Poberezkin
2834b192ce core: do not create group history item (#3586)
* core: do not create group history item

* fix tests
2023-12-23 19:56:01 +00:00
spaced4ndy
12d1ada25e core: support batch sending in groups, batch introductions; send recent message history to new members (#3519)
* core: batch send stubs, comments

* multiple events in ChatMessage and supporting types

* Revert "multiple events in ChatMessage and supporting types"

This reverts commit 9b239b26ba.

* schema, refactor group processing for batched messages

* encoding, refactor processing

* refactor code to work with updated schema

* encoding, remove instances

* wip

* implement batching

* batch introductions

* wip

* collect and send message history

* missing new line

* rename

* test

* rework to build history via chat items

* refactor, tests

* correctly set member version range, dont include deleted items

* tests

* fix disappearing messages

* check number of errors

* comment

* check size in encodeChatMessage

* fix - don't check msg size for binary

* use builder

* rename

* rename

* rework batching

* lazy msg body

* use withStoreBatch

* refactor

* reverse batches

* comment

* possibly fix builder for single msg

* refactor batcher

* refactor

* dont repopulate msg_deliveries on down migration

* EncodedChatMessage type

* remove type

* batcher tests

* add tests

* group history preference

* test group link

* fix tests

* fix for random update

* add test testImageFitsSingleBatch

* refactor

* rename function

* refactor

* mconcat

* rename feature

* catch error on each batch

* refactor file inv retrieval

* refactor gathering item forward events

* refactor message batching

* unite migrations

* move files

* refactor

* Revert "unite migrations"

This reverts commit 0be7a3117a.

* refactor splitFileDescr

* improve tests

* Revert "dont repopulate msg_deliveries on down migration"

This reverts commit 2944c1cc28.

* fix down migration

---------

Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2023-12-23 13:07:23 +00:00
Evgeny Poberezkin
f93f68e425 core: agent background mode for iOS NSE (#3574)
* core: agent background mode for iOS NSE

* change parameter for APIActivateChat

* fix

* update lib

* update lib

* simplexmq

* simplify
2023-12-23 13:06:59 +00:00
IC Rainbow
c18dab7bd4 add folder deletion 2023-12-22 21:50:21 +02:00
IC Rainbow
abc96972dc add note deletion (api-only) 2023-12-22 19:54:13 +02:00
IC Rainbow
c3cd61aa46 remove interaction with messages 2023-12-22 18:19:35 +02:00
IC Rainbow
de697beff1 working create/send/tail 2023-12-21 22:58:54 +02:00
IC Rainbow
21b754d23f cover more API, implement new folders 2023-12-21 18:32:19 +02:00
IC Rainbow
77b56a94ae resolve comments 2023-12-21 13:23:40 +02:00
Evgeny Poberezkin
7bcda7e54b core: use ChaChaDRG as the source of randomness (#3551)
* core: use ChaChaDRG as the source of randomness

* do not use entropy directly

* dont use RNG from agent

* simplexmq

* update iOS
2023-12-21 00:42:40 +00:00
Evgeny Poberezkin
6ba3100d34 core: batch sending messages (#3566)
* core: batch sending messages

* batch without iorefs (#3573)

* one-pass

* simplexmq

* simplexmq

* simplexmq

* simplexmq

* revert change to ios project file

* refactor

* simplify

---------

Co-authored-by: Alexander Bondarenko <486682+dpwiz@users.noreply.github.com>
2023-12-20 10:38:39 +04:00
IC Rainbow
cbe134ef71 cover more things 2023-12-19 21:46:41 +02:00
Evgeny Poberezkin
7b073ba9f8 core: allow deleting last user (#3567)
* core: allow deleting last user (tests fail)

* tests, allow activating the hidden user when there is no active user

* hide logs

Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>

* comment

Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>

* comment

Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>

---------

Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
2023-12-19 10:26:01 +00:00
IC Rainbow
c149487a13 rename to Notes 2023-12-18 18:55:56 +02:00
IC Rainbow
e92b526f15 Add chat type "self" 2023-12-18 13:25:23 +02:00
Evgeny Poberezkin
f9a125bc32 Merge branch 'master' into ios-notifications 2023-12-11 14:11:00 +00: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
8a41a4c214 ios: do not start chat if it was stopped, deliver "app stopped" notifications (#3535)
* add stopped notifications, remove full off mode

* core: allow initializing chat data without starting chat

* ios: ask before starting chat if it was stopped

* correct text

Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>

* fix comment

---------

Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
2023-12-11 12:59:49 +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