Evgeny
6f21826579
core, ui: chat item to show message error ( #6785 )
...
* core: chat item to show message error
* ui: chat item for removed messages
* remove local maven repo
* command to test dropped messages
* update nix config
* show parse errors
* error texts, simplexmq
* alert messages
* simplexmq, alert
* better parsing
* better parsing
* simplify
* correct message
* remove test api
* do not check size twice, bot types
* send error in relays
* do not create error item in relays
* diff
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-04-11 19:40:33 +01:00
Evgeny
674a545a33
core: signed messages status ( #6699 )
...
* XOcore: signed messages status
* remove empty lines
Co-authored-by: Evgeny <evgeny@poberezkin.com >
* EOL
* only mark verified as verified
* update API types
* todos
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-03-24 20:05:09 +00:00
Evgeny
2db92ff6ed
core: group member/owner keys for signing important messages ( #6597 )
...
* rfc: member keys
* update plan
* new encoding for message batches
* send new batch encoding in relay-based groups
* mvp launch plan
* update plan
* core: verify group member keys (#6669 )
* core: verify group member keys
* refactor, process forwards
* refactor parsing
* refactor parsing 2
* refactor parser 3
* update rfc
* simplify
* simplify
* log tag
* refactor tag logging
* refactor withVerifiedSig
* simplify
* refactor more
* comment
* fix encoding
* fix sending as group for the new binary batch encoding
* unify types
* update api docs
* clean up
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
* core: signing messages with member keys (#6675 )
* core: signing messages with member keys (types)
* sign messages
* refactor batching
* better
* refactor
* remove unused Eq
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
* core: forward signed messages as unchanged binary strings (#6678 )
* core: forward signed messages as unchanged binary strings
* refactor
* consolidate types
* refactor VerifiedMsg
* refactor more
* undo rename
Co-authored-by: Evgeny <evgeny@poberezkin.com >
* update schema and plans
* add signed status to chat items and events
* test signed chat items
* unify parser
* PostgreSQL fix, remove unused fields, option to send inline files in the tests
* change inline files config
* revert inline config change
* use different characters in batch encoding, to avoid conflict with inline files
* fix test, api docs, query plans
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-03-16 10:46:35 +00:00
Evgeny
628b00eb08
core: channel messages ( #6604 )
...
* core: channel messages (WIP)
* do not include member ID when quoting channel messages
* query plans
* reduce duplication
* refactor
* refactor plan
* refactor 2
* all tests
* remove plan
* refactor 3
* refactor 4
* refactor 5
* refactor 6
* plans
* plans to imrove test coverage and fix bugs
* update plan
* update plan
* bug fixes (wip)
* new plan
* fixes wip
* more tests
* comment, fix lint
* restore comment
* restore comments
* rename param
* move type
* simplify
* comment
* fix stale state
* refactor
* less diff
* simplify
* less diff
* refactor
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2026-02-12 07:11:59 +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
spaced4ndy
382241fe3e
core: rework synchronous group forwarding in receive loop into asynchronous delivery tasks ( #6178 )
2025-09-12 13:22:34 +00: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
Evgeny Poberezkin
b2f9ee4326
Merge branch 'stable'
2025-07-25 21:16:32 +01:00
Evgeny
7a3b30cca5
core: backward compatible JSON parser for remote controller/host ( #6105 )
...
* core: backward compatible JSON parser for remote controller/host
* forward compatible JSON parsers for chats and content
2025-07-25 21:15:46 +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
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
fc04872c91
core: chat item content types for chat initiation ( #5998 )
...
* core: chat item content types for chat initiation
* connection mode for ui
* padding
* simplexmq
* initial items
* update content items
* core: feature and e2e items
* refactor
* chat items
* ios types
* fix condition for PQ encryption of link
2025-06-20 11:54:21 +01:00
spaced4ndy
e84016e1b9
core, ui: update group scope unread stats on item deletions; create reports as read (reports use a different attention mechanism) ( #5930 )
2025-05-20 16:18:23 +00:00
spaced4ndy
db1ffb2cf2
core: create "accepted by you" item for moderator ( #5901 )
2025-05-13 12:35:54 +00:00
spaced4ndy
671dc2537d
core: accepted message to older clients ( #5897 )
2025-05-12 16:50:30 +00:00
Evgeny Poberezkin
92787df8a3
Merge branch 'master' into group-knocking
2025-05-04 23:25:50 +01:00
spaced4ndy
dd01ef5ae8
core: create knocking message for moderators ( #5857 )
2025-04-28 10:45:42 +00:00
spaced4ndy
18fa5dbf04
core, ui: admission message ( #5848 )
2025-04-24 16:29:27 +00:00
spaced4ndy
c9f398b106
core: group knocking - acceptance to group chat item ( #5810 )
2025-04-07 07:55:56 +00:00
spaced4ndy
dcea008fb9
core: batch apis - remove, block, change role of members ( #5674 )
...
* core: core: batch remove members
* order
* foldr
* list
* style
* batch block
* change role
* test
* if
2025-02-28 18:43:39 +00:00
spaced4ndy
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
spaced4ndy
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
e3e5d9646c
core: fix delete api #5484
2025-01-06 20:14:31 +00:00
Evgeny
c9f6f3c053
core: api and protocol support for reporting messages to group moderators ( #5469 )
...
* core: api and protocol support for reporting messages to group moderators
* moderator role
* delete mode
* remove auto-accepting conditions for SimpleX Chat Ltd
* mark as deleted locally
* ui: delete mode type
* store msg_content_tag with chat items, support moderator option on receiving side
* report API
* send reports only to moderators that support them, fail if none support
* fix tests
* test
* remove comment
* revert version
* do not build ghc8107 in stable branch
* skip job
* fix condition
* remove condition
* condition
* exit
* update
2025-01-04 18:33:27 +00:00
spaced4ndy
791489e943
core: multi forward api ( #4704 )
2024-08-22 21:36:35 +04:00
spaced4ndy
d951003191
core: servers summary api ( #4319 )
...
* core: servers summary api
* rework
* server known types
* set stats file path
* rename
* local simplexmq
* update
* rfc
* update
* update
* get servers
* compile summary
* remove sort
* rename
* rename, refactor
* refactor attempt
* refactor attempt 2
* refactor
* fix
* fix2
* remove space
* refactor xftp
* update
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2024-06-25 09:51:55 +04:00
spaced4ndy
063a6dbc92
core: apply disappearing messages setting to call and group invitation chat items ( #4080 )
...
* core: apply disappearing messages setting to call and group invitation chat items
* remove comment
* fix incorrectly set edited field
* sent group invitations
* refactor
* Revert "refactor"
This reverts commit 4dd3070c2d .
2024-04-25 09:37:05 +01:00
Evgeny Poberezkin
a5db36469d
core: api to forward messages ( #3968 )
...
* wip
* wip
* test
* mute
* tests
* simplify (only bool flag)
* re-encrypt file
* tests
* more tests (wip)
* fix relative paths, refactor
* more tests
* more locks
* fix, tests
* more tests
* rework (revert from bool to ids)
* update schema
* more tests
* add to info
* ForwardedMsg container
* Revert "ForwardedMsg container"
This reverts commit bb57f12151 .
* parser
* more tests
* rework api
* more locks
* test
* move
* remove from
* view
* prohibit editing
* item info view
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2024-04-09 16:02:59 +04:00
Evgeny Poberezkin
18efc28d16
core: additional group preferences: prohibit SimpleX links, restrict some features to specific roles ( #3964 )
...
* core: additional group preferences: prohibit SimpleX links, restrict some features to specific roles
* add role to group preference items, tests
2024-04-04 20:41:56 +01:00
Evgeny Poberezkin
60a73a539e
core: add agreed connection version field ( #3881 )
...
* core: add agreed connection version field
* fix
* progress
* use pqSupport and version to decide compression in messages
* pass version to encodeConnInfoPQ
* update pq enable/disable api
* remove TestConfig
* update nix dependencies
* update texts
* corrections
* create e2ee info items when connection switches from off to on first time
* corrections
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
* comment
* increase test timeout
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2024-03-10 11:31:14 +00:00
spaced4ndy
191d833947
core (pq): tests ( #3882 )
...
* core (pq): tests
* rename
* move
* test allow
* mute test output
* pq combinators
* refactor
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-03-08 23:09:12 +00:00
spaced4ndy
bc2b135880
core (pq): update types ( #3872 )
...
* core (pq): update types
* imports
* encode / max msg size types
* integrate new types
* update types/pq support
* tests compile
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-03-07 17:39:09 +04:00
spaced4ndy
eebf014ff7
core (pq): integrate agent api, create e2ee info items ( #3859 )
2024-03-05 20:27:00 +04:00
spaced4ndy
2155060ad0
core: groundwork for post-quantum encryption support ( #3845 )
2024-03-03 17:51:42 +04:00
spaced4ndy
92c89632d4
core, ui: don't mark profile updated chat item as unread ( #3830 )
...
* core, ui: don't mark profile updated chat item as unread
* android
2024-02-21 21:54:52 +00:00
spaced4ndy
654a7885c3
core: read chat items with logical database errors as invalid (don't fail) ( #3736 )
2024-02-19 15:17:14 +04:00
spaced4ndy
16f53490c5
core: block member for all ( #3689 )
...
* core: silence member wip
* change approach
* more types
* remove comment
* bool in protocol msg
* flag in items, event
* send event, process
* apply moderation
* remove comment
* filter for forward, view
* tests
* rename
* separate response, check already blocked
* add test
* fix terminal api
* add comment
* don't send profile update
* corrections
* refactor
* rework - flag blocked by admin
* blocked in intro
* fix test
* cant block unblock self
* muted view, create unknown member
* blocked by admin in members list
* create with maybe null
* protocol changes
* align code with protocol
* revert terminal api
* restrict block api for admins
* stabilize test
* rename
* update protocol/types
* refactor
* refactor2
* stabilize test
* member field
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-01-19 17:57:04 +04:00
spaced4ndy
f4f8501eb8
core: members profile update, create profile update chat items ( #3644 )
2024-01-15 19:56:11 +04:00
Evgeny Poberezkin
bfb274b037
Merge branch 'stable'
2024-01-15 13:52:09 +00:00
Evgeny Poberezkin
8d7dcb550a
core: update simplexmq, optimize batching, remove builder ( #3685 )
...
* core: update simplexmq (optimize batching, remove builder)
* do not use builder to batch
* refactor
2024-01-15 10:46:13 +00: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
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
spaced4ndy
8cec5428ee
core: save CIContent tag in chat_items table ( #3555 )
2023-12-14 17:08:40 +04:00
Evgeny Poberezkin
d29f1bb0cf
core: use fourmolu styles ( #3470 )
2023-11-26 18:16:37 +00:00
Evgeny Poberezkin
4da1d21c81
Merge branch 'master' into remote-desktop
2023-11-14 14:43:58 +00:00
spaced4ndy
5bbde22ffa
core: new message decryption error - ratchet synchronization ( #3367 )
2023-11-14 18:23:05 +04:00
Evgeny Poberezkin
f9df5aa41b
Merge branch 'master' into remote-desktop
2023-11-13 20:41:51 +00:00
Evgeny Poberezkin
a2fe5cfb66
core: fix incorrect JSON serialization ( #3361 )
2023-11-13 17:45:10 +00:00
Evgeny Poberezkin
b48690dee6
Merge branch 'master' into remote-desktop
2023-10-29 19:15:08 +00:00
Evgeny Poberezkin
9568279b0f
update simplexmq
2023-10-29 18:21:51 +00:00