e1a349b90f
core: support contact addresses with DR keys, service requests ( #7310 )
...
* core: use double ratchet keys in contact address (#7278 )
* core: use double ratchet keys in contact address
* use PQ from the first message
* query plans
* update simplexmq
* api to rotate keys, option to show full links in CLI
* shorter description
* ui: add error parameters
* disable DR in addresses
* core: parameter for create address command to configure ratchet keys
* add pqRatchet param to address-related commands
* query plan
* fix parser
* fix kotlin
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
* core: contact request rejection and service requests (#7292 )
* update simplexmq
* implement service requests and rejections
* tests
* migration
* fix migration
* add api event and response
* bot api, postgres migration
* nix shas
* bot types, rename property
* update bot type
* sign service requests
* update bots api
* query plan
* update plan
* update simplexmq
* fix test, update bot api
* fix bot api
* resolve name for service request
* refactor
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
* update simplexmq
* update simplexmq
* test delays
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-08-01 12:51:03 +01:00
adb3fb8cb2
core: render web previews for channels ( #7029 )
...
* plan: web previews for channels
* types for recipient side to support channel web previews and domain names
* fix
* migrations
* update schema and api types
* update schema
* rename migrations
* core: render channel preview data
* core: render channel preview data in relays
* website: use cpp to inject JS functions
* JSC files
* remove directory.js
* channel preview renderer
* Revert "cli: fix redraw slowness (#6735 )"
This reverts commit b801d77c74 .
* sample channel page
* default avatar
* rename options
* better layout
* layout
* images
* some fixes
* tails
* markdown colors
* image sizes
* reactions
* fix reactions
* fewer avatars
* forward icon
* command to change group access parameters
* view public group access changes in CLI
* media metadata color
* ios: group web access ui
* update ui
* add init
* kotlin, labels
* update page
* update relay base URL
* fix
* ios update channel web page info
* update kotlin layout
* use cards
* update layout
* use domains for relay data, path is fixed
* update embed code
* fix bots api
* include only history items and senders
* update preview JS/HTML
* show different error if link is different
* remove stale json files
* better layout
* layout fixes
* improve layout
* improve layout
* update embed code
* web cta
* better layout
* buttons
* layout
* paddings
* desktop cta
* desktop cta
* cta layout
* fonts
* paddings
* paddings
* more paddings
* copy link
* read more
* hide avatar and placeholder when all messages are from channel
* color scheme
* fix color
* improve
* layout
* welcome message
* dark mode colors
* padding
* font size
* overscroll
* font
* logo on button
* better join
* buttons
* refactor
* another logo
* text
* desktop button
* button text
* center
* fix svg
* padding
* smaller gap
* render channel on any message changes etc
* fixes
* atomic file updates, escape attributes
* fix tests
* more tests
* more efficient rendering
* improve security
* sanitize links, include mentioned members
* schema
* fixes
* improve rendering
* fix showing correct subscribers count
* fix member names
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-06-16 14:36:55 +01:00
Evgeny Poberezkin
37f7ed3126
Merge branch 'stable'
2026-06-16 07:40:58 +01:00
ad23da63d0
core: supporter badges using anonymous BBS credentials ( #7040 )
...
* core: supporter badges using anonymous BBS credentials
* badges in profiles
* badge in profiles
* process badges
* update simplexmq
* update simplexmq
* change types
* fix migration
* migration
* update simplexmq
* fix bot API, schema
* fix postgresql build
* refactor
* postgresql schema
* correctly set badges in all cases
* badges ffi
* plan, bot types
* FFI
* FFI: export badge symbols
* add extra field
* refactor badge types to GADT
* configurable badge key
* add badge to profile, test
* ui: badge images
* generate badge key and sign badge
* badge sign in CLI
* fix commands, ui
* rename badges
* Binary
* image size, migration
* update badge images, add public key
* send badges in more cases
* update UI, tests
* bot types, schema
* postgres schema
* tone down badges
* revert formula
* refactor badges
* smaller badges
* badge position
* better badge position
* simpler
* position
* move position
* update simplexmq
* show badge after name
* badge layout
* fix badge
* debug badge height
* shift badge
* fix badge in member name
* bigger badge
* badge layout
* differentiate badge colors
* more avatars for the user's profiles
* refactor
* remove color filter
* alerts
* multiple keys, old expired
* use new BBS api
* update badge keys, bot api
* presentation header
* simplify
* parser
* update iOS images
* update public keys
* query plans
* update simplexmq
* refactor badge types
* simplexmq
* bot api types
* update simplexmq - commoncrypto flag
* update simplexmq
* pass commoncrypto flag to simplexmq in nix iOS build
* ios ui
* update core library, fixes
* badge layout
* badge size
* badge gap
* remove extensions
* simplify
* share badge in more events, reverify badge if verification failed
* larger files with badges
* allow sending larger files
* simpler
* update simplexmq
* better decoder for badge keys
* update simplexmq
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
Co-authored-by: shum <github.shum@liber.li >
2026-06-15 22:25:08 +01:00
fe6b5186e1
core: update simplexmq (receiving services) ( #6212 )
...
* core: update simplexmq
* update agent api
* update simplexmq
* core: add flag to User to use client services
* update simplexmq
* cli command to toggle service for a user
* test, fix
* query plans, core/bot api types
* remove local package reference
* increase server queue size in tests
* show client service status in users list
* update query plans
* cli: fix redraw slowness (#6735 )
* cli: add pland to fix redraw slowness
* updtae doc
* cli: decouple key reading from processing via TQueue
* schema and bot types
---------
Co-authored-by: sh <37271604+shumvgolove@users.noreply.github.com >
2026-05-25 10:37:13 +01:00
spaced4ndy and GitHub
828b8e8715
core: single relay checks interval ( #6952 )
2026-05-08 09:12:33 +00:00
spaced4ndy and GitHub
6f8a07e4ea
core, ui: relay management - add, remove relays, synchronization to relay list ( #6917 )
2026-05-08 07:19:16 +00:00
8f66a0cc98
core: fix relay request worker retry limit ( #6931 )
...
* core: fix relay request worker retry limit
* update plan
* update plan
* update plan
* wip
* schema
* wip
* wip
* schema
* update
* remove comment
* rework
* schema
* update
* schema
* update
* plans
* corrections
* add 1 second
* remove + 1
* add +1 to schedule
* changes
* updated schemas
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2026-05-02 11:31:03 +01:00
spaced4ndy and GitHub
a14a66db14
core, ui: chat relay test ( #6736 )
2026-04-02 15:36:36 +00:00
spaced4ndy and GitHub
b97868d79f
ios: channels and chat relays ui ( #6634 )
2026-03-05 09:13:24 +00:00
bd8ba4d5c6
core: chat relays protocol ( #6383 )
...
* core: chat relays protocol wip
* types, notes
* remove file
* removal protocol
* schema
* status
* update
* recovery
* update
* formatting
* rename
* more types
* comment
* more docs
* decrease number of steps
* format
* correct
* update
* update protocol
* update
* typo
* todo
* update doc
* update
* update
* remove added
* update
* update
* XGrpRelayReady
* link to chat relays
* update
* remove from protocol
* update
* json
* wip
* remove comment
* wip
* update
* wip
* wip
* update
* wip
* wip
* plans
* better view
* fix
* fix
* relay acceptance
* rework api
* add relays to link
* comment
* active on con, fix send
* comments
* direct in group plan
* prepare
* member connection wip
* comments
* member connection wip
* fix forwarding
* introduce moderators to new member
* enable relay tests
* plans
* security objectives
* refactor
* add to threat model
* stress test wip
* stress test wip
* Revert "stress test wip"
This reverts commit acde8a1fb3 .
* Revert "stress test wip"
This reverts commit 6435808438 .
* remove stress test
* improve output
* invert relay fkey
* postgres schema
* comments
* group in progress, remove auto-select relays commented code
* comments
* corrections
* comment
* lint
* redundant import
* core: chat relay request worker (#6509 )
* update plans
* strict tables
* core: update group link asynchronously with relay link (#6548 )
* update simplexmq
* docs: connection to chat relays rfc (#6554 )
* add test for 2 relays (doesn't pass)
* create unknown member in same transaction as checking
* fix relays choosing different memberId (XContactRelay)
* plans, api
* use same incognito profile for relays, connect concurrently, save correct link for plan
* test
* don't duplicate items on group connection
* check relay record exists when joining
* use mapConcurrently when adding relays, update schemas
* fix multi-relay join for postgres (savepoint)
* core: async retry connection to chat relays (#6584 )
* update simplexmq
* fix api tests
* prefer throwing temp error on connection
* check group relays when deleting from configuration
* relay_request_err_reason
* relay role
* rename, fix syntax
* plans
* rename, style
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2026-01-21 13:19:06 +00:00
spaced4ndy
d29fd2dfa6
Merge branch 'master' into chat-relays
2026-01-05 11:31:15 +04:00
Evgeny and GitHub
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
ae0dec480d
Merge branch 'master' into chat-relays
2025-12-12 14:04:31 +04:00
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 and GitHub
67461d6971
core: manage chat relays initial ( #6369 )
2025-10-20 08:12:45 +00:00
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 and GitHub
65e215509b
core: subscribe all queues ( #6347 )
...
* core: subscribe all queues
* tests, plans, fixes
* enable tests
2025-10-09 22:46:42 +01:00
spaced4ndy and GitHub
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
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 Poberezkin
e9961ebb8e
Merge branch 'stable'
2025-09-15 14:04:11 +01:00
Evgeny and GitHub
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 and GitHub
382241fe3e
core: rework synchronous group forwarding in receive loop into asynchronous delivery tasks ( #6178 )
2025-09-12 13:22:34 +00:00
Evgeny and GitHub
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
Evgeny and GitHub
05dba0bda2
core: compress link data ( #5995 )
2025-06-18 07:39:31 +01:00
Evgeny and spaced4ndy
e3e9ae2ffd
core, ui: create all links with short links, config parameter to use large link data, use short link as address in user profile ( #5991 )
...
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2025-06-17 15:56:33 +04:00
Evgeny and GitHub
ee2ea152dc
core: refactor types for DB entity ( #5945 )
2025-05-24 21:13:10 +01:00
Evgeny and GitHub
7b11d8514a
core, ui: option to use web port by default for preset servers only ( #5847 )
...
* core: option to use web port by default for preset servers only
* ui
* refactor
* simplexmq
2025-04-25 11:17:27 +01:00
Evgeny and GitHub
45e395d35a
core, ui: short connection links with stored data ( #5824 )
...
* core, ui: optionally use short links (#5799 )
* core: optionally use short links
* update test
* update simplexmq, short group links
* fix query
* fix parser for _connect
* ios: use short links
* shorten links to remove fingerprint and onion hosts from known servers
* fix parser
* tests
* nix
* update query plans
* update simplexmq, simplex: schema for short links
* simplexmq
* update ios
* fix short links in ios
* android: use short links
* fix short group links, test short link connection plans
* core: fix connection plan to recognize own short links
* update simplexmq
* space
* all tests
* relative symlinks in simplexmq to fix windows build
* core: improve connection plan for short links (#5825 )
* core: improve connection plan for short links
* improve connection plans
* update UI
* update simplexmq
* ios: add preset server domains to entitlements, add short link paths to .well-known/apple-app-site-association
* update simplexmq
* fix group short link in iOS, fix simplex:/ scheme saved to database or used for connection plans
* update simplexmq
* ios: delay opening URI from outside until the app is started
* update simplexmq
2025-04-14 21:25:32 +01:00
Evgeny and GitHub
8c7df76c24
directory: command to disable all spam filters ( #5709 )
...
* directory: command to disable all spam filters
* correct syntax
* move deviceName to core opts
2025-03-05 11:20:30 +00:00
b2de37a9fb
core: member acceptance ( #5678 )
...
* core: member acceptance
* migration
* move hook
* core: support sending direct messages to members (#5680 )
* fix compilation, todos
* fix test
* predicates
* comment
* extend hook
* wip
* wip
* wip
* wip
* fix test
* mute output
* schema
* better query
* plans
* fix test
* directory
* captcha
* captcha works
* remove column, add UI types and group status icon
* fix test
* query plans
* exclude messages of pending members from history
* commands for filter settings
* core: separately delete pending approval members; other apis validation (#5699 )
* accepted status
* send captcha messages as replies
* fix blocked words
* simpler filter info
* info about /filter and /role after group registration
* update query plans
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2025-03-03 18:57:29 +00:00
Evgeny and spaced4ndy
511ff1d35c
cli: remove multiple members ( #5656 )
...
* cli: remove multiple members
* accept all members joining via link as observers (do NOT release)
* blocked words
* blocked words
* XGrpLinkReject
* core: 6.3.0.6 (simplexmq 6.3.0.6)
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2025-02-26 09:25:54 +00:00
20fa30eacc
core: Mobile.hs postgres interface ( #5545 )
...
* core: Mobile.hs postgres interface
* sqlite
* fix
* errors
* postgres
* rename
* rename, refactor
* merge files
* rename
* update simplexmq
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-01-20 17:41:48 +04:00
e05a35e26e
core: support postgres backend ( #5403 )
...
* postgres: modules structure (#5401 )
* postgres: schema, field conversions (#5430 )
* postgres: rework chat list pagination query (#5441 )
* prepare cabal for merge
* restore cabal changes
* simplexmq
* postgres: implementation wip (tests don't pass) (#5481 )
* restore ios file
* postgres: implementation - tests pass (#5487 )
* refactor DB options
* refactor
* line
* style
* style
* refactor
* $
* update simplexmq
* constraintError
* handleDBErrors
* fix
* remove param
* Ok
* case
* case
* case
* comment
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-01-10 11:27:29 +00:00
Evgeny and GitHub
206f7898c3
cli: option to disable vacuum on migration ( #5446 )
...
* cli: option to disable vacuum on migration
* update simplexmq
* mobile options
* use option in test
2024-12-28 22:14:06 +00:00
Evgeny and GitHub
d37d309f85
core: update simplemq (with PostgreSQL support) ( #5444 )
2024-12-28 12:35:34 +00:00
Evgeny Poberezkin
fc7f509364
core: 6.3.0.0 (simplexmq 6.3.0.0)
2024-12-26 14:12:51 +00:00
Evgeny Poberezkin
90c15ee07d
Merge branch 'stable'
2024-12-25 08:18:59 +00:00
Evgeny Poberezkin
790b0f315e
core: 6.2.2.0 (simplexmq: 6.2.2.0)
2024-12-24 22:01:55 +00:00
spaced4ndy and GitHub
00973d6e13
core: split Chat.hs module ( #5397 )
2024-12-20 16:54:24 +04:00
fcb2d1dbac
core, ios: chat tags ( #5367 )
...
* types and db
* migration module
* chat tag
* store method proposal
* profiles build
* update type
* update return type
* building
* working api
* update
* refactor
* attach tags to contact
* simplify
* attach chat tags to group info
* get chat tags with supplied user id
* get tags fix
* ios: chat tags poc (#5370 )
* ios: chat tags poc
* updates to sheet
* temporary display for other option on swipe
* sheet height
* only show preset when it has matches
* changes
* worst emoji picker ever
* simplify tag casts and collapse
* open on create tag if no tags
* simple emoji text field
* nice emoji picker
* dismiss sheets on tag/untag
* semibold selection
* all preset tag and change collapsed icon on selection
* default selected tag (all)
* only apply tag filters on empty search
* + button when no custom lists
* reset selection of tag filter on profile changes
* edit tag (broken menu inside swiftui list)
* create list to end of list
* swipe changes
* remove context menu
* delete and edit on swipe actions
* tap unread filter deselects other filters
* remove delete tag if empty
* show tag creation sheet when + button pressed
* in memory tag edit
* color, size
* frame
* layout
* refactor
* remove code
* add unread to same unit
* fraction on long press
* nav fixes
* in memory list
* emoji picker improvements
* remove diff
* secondary plus
* stop flickering on chat tags load
* reuse string
* fix reset glitches
* delete destructive
* simplify?
* changes
* api updates
* fix styles on list via swipe
* fixed untag
* update schema
* move user tags loading to get users chat data
* move presets to model
* update preset tags when chats are updated
* style fixes and locate getPresetTags near tags model
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
* deleted contacts and card should not match contact preset
* fix update presets on chat remove
* update migration indices
* fix migration
* not used chat model
* disable button on repeated list name or emoji
* no chats message for search fix
* fix edits and trim
* error in footer, not in alert
* styling fixes due to wrong place to attach sheet
* update library
* remove log
* idea for dynamic sheet height
* max fraction 62%
* minor fixes
* disable save button when no changes and while saving
* disable preset filter if it is no longer shown
* remove comments from schema
* fix emoji
* remove apiChatTagsResponse
* always read chat tags
* fix
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2024-12-19 10:48:26 +00:00
Evgeny and GitHub
6bae86d93b
core: reduce simplexmq modules used in the client ( #5368 )
...
* core: reduce simplexmq modules used in the client
* remove websockets from simplexmq
* simplexmq
2024-12-14 16:10:14 +00:00
Evgeny and GitHub
60e0e454e8
core: only update business chat preferences ( #5325 )
...
* core: only update business chat preferences
* rework
* migration
* test, bump protocol version
* fix tests
2024-12-05 18:32:00 +00:00
spaced4ndy and GitHub
97cd2682d7
core: take address lock before reading contact request data (to prevent possible race condition if user quickly accepts request several times in a row); android, desktop: show error context in agent CMD errors ( #5324 )
2024-12-05 20:10:44 +04:00
spaced4ndy and GitHub
3fa1d7b07c
core: fix cli servers override ( #5317 )
2024-12-04 16:50:19 +00:00
Evgeny and GitHub
89f380400e
core: update business chat profile ( #5313 )
...
* core: update business chat profile
* fix, test
* refactor
* test changing non-title member profile
* fix history
2024-12-04 16:32:01 +00:00
Evgeny and GitHub
9d992735f4
core, ios: improve business address (connection plan, repeat requests, feature items) ( #5303 )
...
* core, ios: connection plan for business address
* core: store xcontact_id on business groups to prevent duplicate contact requests
* core: create feature items in new groups and in business groups
* fix tests
* error message
2024-12-03 12:11:38 +00:00
spaced4ndy and GitHub
a62ce9168e
core: fix names created for business request group and member ( #5296 )
2024-12-02 20:30:05 +04:00
5f01dc1a3f
core: support business addresses and chats ( #5272 )
...
* core: support business addresses and chats
* types
* connect plan, add link type
* ios: toggle on address UI
* make compile
* todo
* fix migration
* types
* comments
* fix
* remove
* fix schema
* comment
* simplify
* remove diff
* comment
* comment
* diff
* acceptBusinessJoinRequestAsync wip
* comment
* update
* simplify types
* remove business
* wip
* read/write columns
* createBusinessRequestGroup
* remove comments
* read/write business_address column
* validate that business address is not set to be incognito
* replace contact card
* update simplexmq
* refactor
* event when accepting business address request
* sendGroupAutoReply
* delete contact request earlier
* test, fix
* refactor
* refactor2
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2024-12-02 14:01:23 +00:00
Evgeny and GitHub
b8442d92a4
core: improve performance of marking chat items as read ( #5290 )
...
* core: improve performance of marking chat items as read
* fix tests
2024-12-01 13:11:30 +00:00