Evgeny
f0467aee00
directory service: fix queries ( #6539 )
...
* fix directory service queries
* fix
* reduce postgres pool size to 1
* stabilize postgres client tests, remove slow handshake tests
* update simplexmq
* fix test
* test delay
2026-01-04 19:04:32 +00:00
Evgeny
59b31e2631
core: compress commands in remote connection ( #5776 )
...
* core: compress commands in remote connection
* backwards compatible compression
* show in CLI if compression is enabled
* use aroundWith for ghc 8.10.7 compatibility
* skip bot API tests in GHC 8.10.7
2025-12-30 07:49:17 +00:00
spaced4ndy
fe4ff8993d
core: finalize introductions -> member relations vector stage 2 migration (drop introductions) ( #6490 )
...
* core: finalize introductions -> member relations vector stage 2 migration (drop introductions)
* remove comment
* skip down migration check
* fix
* plans
* postgres schema
* skip down migration comparison
* do not drop group_member_intros table, rename migrations
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-12-26 13:29:48 +00:00
spaced4ndy
caef012003
core: fix support chat deletion ( #6271 )
2025-12-11 17:29:31 +00:00
spaced4ndy
f76e994034
core: forward based on relations vector ( #6464 )
...
* core: forward based on relations vector wip
* fix introductions
* fix forwarding tests
* fix forwarding inside support scope
* fix deduplication test
* fix more tests
* plans, api
* live migration wip
* enable tests
* member locks
* api
* plans
* fix for postgres
* fix for postgres
* rename predicate
* rename predicate
* optimize
* refactor
* fix
* check
* move part of migration to sql
* plans
* core: preserve detailed information in relation vectors (#6484 )
* core: relations vector live migrations; stage 2 migration sql (#6472 )
* rework forwarding in support scope
* move operations inside transactions
* set_member_vector_new_relation function
* read vector ad-hoc
* partition in transaction
* fix postgres
* postgres schema
* api
* plans
* remove comment
* lock before migration computation
* refactor
* simplify set relations
* retreive only support scope members
* fix
* refactor
* fix comment
* enable tests
* 1 second
* for update
* locks
* fix mask
* plans
* fix
* postgres
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-12-09 14:48:32 +00:00
spaced4ndy
9f3b3c69dd
ui: allow to delete member's messages when/after removing member ( #6443 )
...
* ui: allow to delete member messages
* fix merge category, deleted view
* fix remove items in model
* don't create item repeatedly
* kotlin
* obsolete import
* less delays
2025-11-17 09:41:47 +00:00
spaced4ndy
850e4687f8
core: update simplexmq (support setting all link data fields) ( #6425 )
2025-11-05 08:11:26 +00:00
spaced4ndy
a65151ba6d
core, ui: replace map of network statuses with subscription status of current chat ( #6353 )
...
* core: subscription status wip
* update
* update
* update
* remove statuses core
* cleanup ios
* comment
* plans
* remove NetworkStatus
* ios wip
* contact sub status
* Revert "contact sub status"
This reverts commit 50cf94beed .
* sub status
* set on connected
* kotlin
* rename
* layout
* member status
* kotlin
* fix chat subscription status
* string
* core: update simplexmq
* client notices
* update simplexmq
* update alert
* update simplexmq
* android/desktop
* formatting
* fix tests
* update plans and API docs
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-10-18 22:53:47 +01:00
Evgeny
f21ef8f55d
core: send updated profile to group when bio changes ( #6352 )
...
* core: send updated profile to group when bio changes
* redact short links from descriptions where group preferences prohibit them
2025-10-10 17:29:12 +01:00
Evgeny
e291a71ef3
core: do not add entities to batched agent errors ( #6351 )
2025-10-10 13:54:19 +01:00
spaced4ndy
37c8aca3b3
core: sync connections ( #6345 )
...
* core: sync subsbriptions
* sha map
* sync event
* should delete flag
* wip
* schema
* wip
* delete
* update simplexmq
* plans
* rename, adapt
* update
* plans
* option to show ids
* plans
* fix, test
* more tests
* postgres
* plans
* cleanup
* plans
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-10-10 06:27:50 +00:00
Evgeny
65e215509b
core: subscribe all queues ( #6347 )
...
* core: subscribe all queues
* tests, plans, fixes
* enable tests
2025-10-09 22:46:42 +01:00
spaced4ndy
8497d4ff48
core: update group short link data on receiving x.grp.info ( #6328 )
2025-10-03 11:05:30 +00:00
spaced4ndy
17a0c1b53d
core: delivery in channels ( #6278 )
...
* core: channels delivery (#6274 )
* core: optimize member retrieval query for postgres (#6280 )
* core: optimize reading only relays for sending in channels (#6282 )
* fixes
* plans
2025-10-01 15:53:27 +00:00
spaced4ndy
c782e6762b
feature branch: optimize subscriptions ( #6297 )
...
* core: remove contact merge, obsolete group code (#6292 )
* core: remove file connections (#6298 )
* core: rename migration
* corre: remove unused contacts merged event (#6308 )
* core: optimize subscriptions (#6304 )
* core: remove conn ids map from subscriptions (#6309 )
* rename migration (#6316 )
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-09-28 21:31:59 +01:00
Evgeny
015d5de364
directory: move all storage to the database, optimize performance ( #6287 )
...
* core: add custom indexed columns to groups and contacts
* directory: use database (TODO search/listing)
* triggers to maintain current member count
* update simplexmq, fix tests, use summary from GroupInfo
* fix all directory tests
* remove acceptance fields from group reg
* enable all tests
* clean up
* postgres migrations, fixes
* query plans
* use function in postgres triggers, improve sqlite query
* fix export/import
* update schema
* prevent admins from promoting groups when approving
* update listing every 5 minutes
2025-09-28 15:11:49 +01:00
spaced4ndy
382241fe3e
core: rework synchronous group forwarding in receive loop into asynchronous delivery tasks ( #6178 )
2025-09-12 13:22:34 +00:00
Evgeny
5ebd8cc193
core: fix GHC 8.10.7 ( #6248 )
2025-09-07 22:20:27 +01:00
Evgeny
8798ede50a
core: extended network errors information (simplexmq) ( #6247 )
...
* core: extended network errors information (simplexmq)
* fix test
* docs: add NetworkError to bot API types
* update simplexmq - JSON encoding for missing NetworkError
2025-09-07 15:07:21 +01:00
spaced4ndy
ca9b0d4e43
core, ui: correct member attention stat for support chat on opening it; mark support chat read ( #6240 )
2025-09-05 14:00:32 +00:00
Evgeny
f6c699f3a5
core: update simplexmq (error handling) ( #6231 )
...
* core: update simplexmq (error handling)
* update simplexmq
2025-08-29 10:05:20 +01:00
spaced4ndy
c5e05a10c0
core: fix duplicate error on group link creation ( #6204 )
...
* core: fix duplicate error on group link creation
* fix
* fix
2025-08-19 17:17:47 +01:00
Evgeny
fb8d8ec7c3
core, ui: chat relay addresses ( #6191 )
2025-08-15 17:37:10 +01:00
spaced4ndy
c94e3301ad
core: fix member contact request not showing incognito correctly ( #6174 )
...
* core: fix member contact request not showing incognito correctly
* comment
2025-08-11 13:22:30 +01:00
Evgeny
4811d663e6
rfc: bot messages and buttons, core: command markdown, supported commands in profile preferences, chat sessions preference, peer type field in profile to identify bots ( #5360 )
...
* rfc: bot messages and buttons
* update
* update bot rfc
* core: add bot commands to chat preferences and peer type to profile
* update postgresql schema
* update query plans
* chat sessions preference
* markdown for bot commands
* schema
* core: file preference, options to create bot from CLI
* core: different command type
* ios: commands menu
* update types
* update ios
* improve command markdown
* core, ios: update types
* android, desktop: clickable commands in messages in chats with bots
* android, desktop: commands menu
* command menu button, bot icon
* ios: connect flow for bots
* android, desktop: connect flow for bots
* icon
* CLI commands to view and set commands, remove "hidden" property of command, bot api docs
* corrections
* fix inheriting profile preferences to business groups
* note on business address
* ios: export localizations
* fix test
* commands to set file preference on user/contact, tidy up layout and display of command and attachment buttons
2025-08-07 11:13:35 +01:00
spaced4ndy
18a00511a7
core: set via_group_link_uri for groups ( #6137 )
...
* core: set via_group_link_uri for groups
* schema
* plans
* schema
* add to type
* plans, api
2025-08-01 16:23:52 +01:00
spaced4ndy
f42a6751b1
core: allow to manually accept member contact requests ( #6129 )
...
* core: allow to manually accept member contact requests
* response
* comment
* comment
* add fields
* fix
* field in request
* compiles
* fix tests
* test
* plans
* fix mobile tests
* fix doc tests
* renames
* group name in event
* fix renames
* tests
* plans
* rename selector
* ios wip
* fix
* ios wip
* move
* fix backend bug, ui
* reject dialogue
* update plans
* kotlin
* delete swipe
* should accept text
* rename
* postgres migration
* ios: pass chat as binding
* rename module
* fix queries
* schema
* update plans, api docs
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-08-01 10:18:29 +01:00
spaced4ndy
baf12207d5
core: prohibit connecting via direct message for blocked members ( #6124 )
2025-07-29 08:42:39 +00:00
Evgeny
7988463a47
core: store/get whether short link has large data set ( #6120 )
...
* core: store/get whether short link has large data set
* ui
* core: set shortLinkLargeDataSet flag in updated links
* remove largeLinkData
* remove instance
2025-07-28 16:49:13 +01:00
spaced4ndy
e9a3eb8f10
core: fix retrying connection via contact card (preset contacts) ( #6104 )
...
* core: fix retrying connection via contact card (preset contacts)
* ios
* kotlin
* banner
2025-07-25 17:31:05 +01:00
spaced4ndy
7b7926a73e
core, ui: allow to choose disappearing messages ttl in user profile ( #6097 )
2025-07-24 14:52:48 +00:00
Evgeny
cf8bd7f6ac
docs: bots API ( #6091 )
...
* docs: bot API commands
* generate API commands doc
* generate commands docs with parameters and responses
* add API types
* more types
* document all types (with some deviations from JSON encodings)
* rename types
* interface objects
* separator
* command syntax
* more syntax
* API events
* event types
* fix all type definitions
* pre-process types outside of rendering
* pre-process event types
* overview
* pre-process commands
* param syntax WIP
* syntax for types in command parameters
* API error response and chat event
* remove unsupported/deprecated command parameters
* reorder
* syntax for choice
* show command errors
* event descriptions
* python syntax for commands and types (#6099 )
* python syntax for commands and types
* python snippets: convert numbers to string
* fixes
* update readme, enable all tests
* fix operators test
* update plans
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2025-07-24 13:12:53 +01:00
spaced4ndy
68b7f09c8f
core, ui: chat banner ( #6089 )
...
* core: create banner item
* filter deletions
* fix query
* ios
* fixes
* remove comment
* revert diff
* refactor
* fix most tests
* fix tests
* spacer
* plans
* create banner for 1-time link initiator
* style in progress
* change background
* ui
* remove bio length limit
* ui
* create banner for client chat
* rename
* more contexts
* fix tests
* move
* fixed image size
* plans
* remove diff
* kotlin
* copy
* paddings
* paddings
* comment
* layout, messages
* fonts
* texts, icons
* kotlin refactor
* kotlin texts
* fix date
* Revert "fix date"
This reverts commit abbd48b334 .
* date
* fix texts
* kotlin date
* color and corners
* kotlin
* color
* update banner, context menu in ios
* update texts, do not show epoch timestamp for banner
* fix texts
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-07-21 19:07:21 +01:00
Evgeny
1e73eb512a
core: fix connection plans to allow re-connecting to address after the contact with address in profile was deleted ( #6073 )
2025-07-14 22:37:39 +01:00
spaced4ndy
ed6ef02eeb
core: add group forwarding tests ( #6067 )
2025-07-14 10:52:38 +00:00
Evgeny
dd3943d994
core, ios: allow moderators to delete messages and block members ( #6064 )
...
* core: allow moderators to delete messages and block members
* ios: moderator
2025-07-14 08:02:29 +01:00
spaced4ndy
8094078bee
core: improve message forwarding to better manage support scopes ( #6056 )
...
* core: test forwarding in support scope
* wip
* test
* add to test
* comment
* rework forwarding
* fixes
* refactor tests
* narrow
* forwardMsgs
* support mem
* unfocus tests
* fix, tests
* plans
* add test
* comment
* add scope to reaction and deletion, refactor
* fix del
* refactor
* query plans
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-07-12 19:39:41 +01:00
Evgeny
a5768e903d
core, ui: short bio/description for contact and group profiles ( #6055 )
...
* core: short bio/description for contact and group profiles
* use short description in commands
* fix tests
* query plans
* ios: show contact and group profile descriptions
* android, desktop: short description/bio
* ui: layout for chat info, correct copy
* comment out fields to add/edit short descriptions
* remove short description from events
* postgres schema
2025-07-11 21:28:10 +01:00
Evgeny
88547ab704
core: use longer timeouts for background network requests, support retries with increased timeouts ( #6043 )
...
* core: use longer timeouts for background network requests, support retries with increased timeouts
* ios: update types
* ios: allow user retry actions with failed network requests
* build: add exporting API functions with retry
* android, desktop: update types and C APIs
* android, desktop: alert to retry action on network error
* simplexmq
2025-07-07 11:01:03 +01:00
Evgeny
f2e8545c0a
core: fix plans for deleted contacts and groups to allow connecting to them again ( #6041 )
...
* core: fix plans for deleted contacts and groups to allow connecting to them again
* improve, tests
* query plans
* remove comment
2025-07-05 21:45:07 +01:00
spaced4ndy
2dd54c6697
core, ui: prohibit changing profile for prepared entity when first attempt to connect failed ( #6037 )
...
* core: prohibit changing profile for prepared entity when first attempt to connect failed
* reuse incognito
* schema
* ios
* postgres schema
* ios
* reenable tests
* kotlin
* update alert
* rename predicate, combine queries
* send the correct incognito mode, fail on attempt to change mode for prepared connection
* query plans
* ui: show group connecting status
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-07-05 11:09:10 +01:00
spaced4ndy
fc98558a37
core: refactor connectViaContact ( #6034 )
...
* core: refactor connectViaContact
* true, comment
* optimize connectViaContact for prepared entities
* refactor Connection
* refactor pcc
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-07-04 09:47:40 +00:00
spaced4ndy
79041390f1
core: allow to accept contact requests after address is deleted ( #6032 )
...
* core: allow to accept contact requests after address is deleted
* update
* update
* plans
* ios, postgres migration
* schema
* request lock, refactor
* update simplexmq
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-07-03 10:34:11 +00:00
Evgeny
d8636953d3
core: connection plans for short links recognize prepared contacts/groups ( #6019 )
...
* core: connection plans for short links recognize prepared contacts/groups
* query plans
2025-06-30 16:12:07 +01:00
Evgeny
524de4067a
core: add/send contact address and request messages, ios: use auto-reply as welcome message ( #6017 )
...
* core: add/send contact address and request messages, ios: use auto-reply as welcome message
* revert event type change
* fix test, type
* multiplatform: update type
* fix query
* ios: hide keyboard when sending the message
* failing test for business chat with a welcome message
* retry joining via contact address
* query plans
* do not send history to the first member (the original customer) of business chat
* correctly handle retries when joining groups, do not create a new connection on retry
* failing test for group welcome message and feature items
* do not send history item if member saw it during joining (based on welcomeSharedMsgId in join request)
* correct fields in PendingContactConnection, update plans
* prevent duplicate group description created in chat, while ensuring that it is created
* fix query
2025-06-30 11:54:13 +01:00
Evgeny
1702f5ce34
core: fix retry when connecting via invitation short link, ios: improve connection status usage ( #6014 )
...
* core: fix retry when connecting via invitation short link
* ios: fix conditions, mark contacts as connected, only show spinners on contacts when connection status is ready or sndReady
2025-06-26 20:06:22 +01:00
spaced4ndy
cc643e5aeb
core: rework contact requests so that they are always created with entity ( #6011 )
...
* core: rework contact requests so that they are always created with entity
* remove group requests (revert)
* fix schema
* remove accepted, set xcontactId
* enable tests
* fix deduplication, fix address deletion
* fix business ldn
* disable, add tests
* comments, schema
* cleanup
* fix
* plans
2025-06-26 11:05:23 +01:00
Evgeny
c0b704f846
core: store welcome and request message IDs, ios: fix sending request without messages, trim sent messages ( #6009 )
...
* core: store welcome and request message IDs, ios: fix sending request without messages, trim sent messages
* remove comments
* rename, fix tests
* simplexmq
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2025-06-25 16:59:32 +01:00
spaced4ndy
6c06200b14
core: create business chat when preparing via contact link data with business flag ( #6008 )
...
* core: create business chat when preparing via contact link data with business flag
* add to test
* plans
* ios
* ios
2025-06-23 18:00:21 +01:00
Evgeny
9794829d74
core: show group as sender, add contact card to contact request chats, unify api type for prepared and contact request chats ( #6003 )
...
* core: option to show group as sender of chat item (for the initial items, e.g. welcome message)
* add chat item to contact request chats
* return AChat for prepared chats and contact requests
* update iOS api types, show prepared contact as blue, show preview info when content message is not available (previously was showing feature item)
* ios: remove ContactType
* ios: show group as sender, fix avatar not showing when member message sequence starts with merged items
* ios: update compose UI for all connection scenarios
* address settings
* ios: address settings UI
* fix tests
* fix tests 2
* ios: fix minor issues
2025-06-23 14:42:00 +01:00