Evgeny @ SimpleX Chat
a8a8883027
core, ui, website: small text markdown ( #6697 )
...
* core: small text markdown
* ios: small markdown
* desktop, android: small markdown
* fix font size
* small markdown on website
* update ios core library
* update bot api docs
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2026-03-21 18:06:23 +00:00
Evgeny Poberezkin
9f15c34184
core: update simplexmq (fix tests)
2026-03-12 17:14:21 +00:00
sh
764fb27f1c
core, directory: allow voice messages during member approval phase to allow audio captchas in groups that prohibit voice messages ( #6624 )
...
* rfcs: add member-support-voice rfc
* update based on the feedback
* implement RFC
* add new tests
* fix protocol tests and update plans
* restrict voice captcha exemption to host approval phase
* update agent_query_plans.txt
2026-02-14 09:26:18 +00:00
sh
279119e134
simplex-directory-service: add audio captcha ( #6619 )
...
* simplex-directory-service: add audio captcha
* add plan
* updated plan
* implement changes
* add tests with coverage
* add tests
* implement further changes
* directory tests overview
* fix tests on 8.10.7
* /audio command toggles between text and voice captcha
* core: /audio enables voice captcha, retry sends both image and voice
* remove irrelevant directory service tests
* fix flaky testJoinGroup message ordering
2026-02-07 13:29:41 +00:00
Evgeny
5453d8875c
core: filter all messages with links in text when link content filter is used ( #6591 )
...
* core: change msg_content_tag stored as blob to text
* track if items have links and use has_link when searching for links (MCLink_ MsgContentTag is passed)
* fix test (broken in master)
* merge migrations, update api and schema
* minor fixes
* tests
* update plans
* update migrations
2026-01-23 12:31:42 +00:00
Evgeny
89964bf15a
bots: support maintenance option ( #6558 )
...
* bots: support maintenance option
* maintenance mode: run pre-start hook, do not create user
2026-01-20 13:28:20 +00:00
Evgeny
405ce9615e
core: support content filter for contacts and notes to allow media galleries ( #6552 )
...
* core: support content filter for contacts and notes to allow media galleries
* add api to list chat content types, tests
* query plans, api docs
* add indices
2026-01-09 08:24:26 +00:00
Evgeny
3596c37275
core: improve database concurrency ( #6541 )
...
* core: improve database concurrency
* tests: prints on timeouts (#6546 )
* update simplexmq
* fix test
* update simplexmq
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2026-01-08 13:43:37 +00:00
Evgeny
87e8a10f1e
core: use strict tables ( #6535 )
...
* core: use strict tables
* fix field types
* change encodings to match schema types; migrate sqlite tables to strict mode
* stabilize postgres client tests, remove slow handshake tests
* update simplexmq
* fix test
* change call_state type to text
* fix directory service queries
* update local_alias for existing schemas
* change types before strict
2026-01-05 08:53:26 +00:00
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
Evgeny Poberezkin
b0eb01a8fa
Merge branch 'stable'
2025-12-23 14:19:53 +00:00
Evgeny
67fbe62ae1
core: update simplexmq (support any 127.x.x.x address as loopback), show other addresses in CLI during remote connection, update tests ( #6526 )
2025-12-23 14:16:05 +00:00
spaced4ndy
caef012003
core: fix support chat deletion ( #6271 )
2025-12-11 17:29:31 +00:00
Evgeny Poberezkin
99d655f5d3
Merge branch 'stable'
2025-12-10 21:03:56 +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
sh
efbc4835a8
tests: skip multicast discovery in Mac CI ( #6458 )
...
* tests: skip multicast discovery in Mac CI
* tests: remove unneeded xitMacCI''
2025-11-25 10:06:40 +00:00
spaced4ndy
af7540248e
core: relations vector operations ( #6459 )
...
* core: relations vector operations
* tests
* simplify
* comment
* remove space
* core: use 1 byte for each member-to-member relation (#6462 )
---------
Co-authored-by: Evgeny <evgeny@poberezkin.com >
2025-11-24 07:36:44 +00:00
spaced4ndy
a5c6ea8e5d
core: member relations vector migration; set index in group for members; rework logic for avoiding duplicate introductions ( #6445 )
2025-11-19 15:25:09 +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
70e23a04ce
ui: allow to block removed member or member that left ( #6440 )
2025-11-14 09:00:58 +00:00
spaced4ndy
35963f9c74
core: don't show no connections diff on event (fix tests) ( #6403 )
...
* different approach
* fix tests
2025-10-24 12:24:05 +01:00
spaced4ndy
2badeea19c
core: fix deleting user with chat tags ( #6374 )
...
* core: fix deleting user with chat tags
* schema, tests
* schema
* update simplexmq
* update ios
* plans
2025-10-23 08:30:36 +01: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
spaced4ndy
ad12f840f1
core: don't create and drop postgres db around unit tests ( #6350 )
2025-10-10 07:40:09 +00: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
Evgeny
a190d4ea9b
website: directory page ( #6283 )
...
* website: directory page
* core: use markdown in directory entries
* render markdown on directory page
* update markdown
* toggle secrets on click
* update listings asynchronously
* add group links to the listing
* cleanup
* better directory layout with pagination
* script to run website
* update page navigation
* search
* readable markdown colors, better "read less"
* core: atomic update of directory listings, to avoid files unavailable
* fix symlink, sort entries on page with new first
* update listings every 15 min, add activeAt time
* fix sorting in the page and listing url
* replace simplex:/ links on desktop
2025-09-20 19:47:50 +01:00
Evgeny
429ec9d21a
directory: listings for web pages ( #6281 )
...
* directory: listings for web pages
* refactor
* tests
2025-09-18 17:52:47 +01:00
Evgeny
c07c176896
core: batch load queues for subscriptions with PostgreSQL client ( #6272 )
...
* core: batch load queues for subscriptions with PostgreSQL client
* update simplexmq
* fix, update simplexmq
* update query plans
2025-09-16 21:58:28 +01:00
Evgeny Poberezkin
e9961ebb8e
Merge branch 'stable'
2025-09-15 14:04:11 +01:00
Evgeny
fa9bc1537c
cli: option to disable backup or change backup directory on migration ( #6267 )
...
* cli: option to disable backup or change backup directory on migration
* update nix
* update simplexmq
2025-09-14 14:41:50 +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
e2d5c675d0
bots: generate code for TypeScript types module from Haskell tests ( #6220 )
...
* bots: generate code for TypeScript types module from Haskell tests
* types for API events and command responses
* code for chat command types
* license, readme
* fix array types
* fix more types
* add response type
* add Connect command to docs/ts
* update typescript client package to use auto-generated types
2025-08-26 16:38:27 +01:00
Evgeny
78b4431dea
directory: use bot commands and menu in SimpleX Directory ( #6219 )
...
* directory: use bot commands and menu in SimpleX Directory
* rename (remove hyphen), fix test
2025-08-25 07:51:53 +01:00
spaced4ndy
0046fc27fe
core: fix member version range not being correctly updated in some cases (fixes introducing owner to member in review, when host admin was invited via owner's link; likely fixes other interactions that check version) ( #6208 )
...
* core: fix introducing owner to member in review
* fix
* remove diff
* unfocus
* plans
2025-08-20 12:00:11 +01:00
spaced4ndy
5b0d0f19ce
core: add tests for forwarding of connection deleting events in support scope ( #6197 )
2025-08-18 15:14:39 +00:00
spaced4ndy
b607b629a6
core: fix forwarding for connection deleting events (x.grp.mem.del, x.grp.del) ( #6189 )
...
* core: fix forwarding for connection deleting events (x.grp.mem.del, x.grp.del)
* more tests
* docs, mute tests
* plans
* rework wip
* improve tests
* revert plans
* only forward original message
* update simplexmq (err context)
* update
* don't always wait delivery
* don't do unnecessary ack
* docs
* Revert "don't do unnecessary ack"
This reverts commit 1a560b0333 .
* ack
* update simplexmq
2025-08-18 12:58:25 +01:00
Evgeny
dc3dcd4fc8
core, ui: safe mode to sanitize URIs when sending ( #6196 )
...
* core: safe mode to sanitize URIs when sending
* ui: use safe sanitize when sending
2025-08-18 12:58: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
12f0bd51c5
core, ui: improve removing tracking parameters ( #6170 )
...
* core: make URI sanitizer less zealous
* simplify
* subdomains
* update rule
* make "remove link tracking" option disabled by default
2025-08-10 12:38:34 +01:00
Evgeny
ef60ceea12
core, ui: markdown for hyperlinks, warn on unsanitized links, option to sanitize sent links ( #6160 )
...
* core: markdown for "hidden" links
* update, test
* api docs
* chatParseUri FFI function
* ios: hyperlinks, offer to open sanitized links, an option to send sanitized links (enabled by default)
* update markdown
* android, desktop: ditto
* ios: export localizations
* core: rename constructor, change Maybe semantics for web links
* rename
2025-08-09 10:52:35 +01:00