Jamie Kyle
1eaabb6734
Calls Tab & Group Call Disposition
2023-08-08 17:53:06 -07:00
Scott Nonnenberg
716f852970
New getRecentStoryReplies function to clean up replies in multiple convos
2023-07-21 15:10:32 -07:00
Fedor Indutny
e1d2dbd8ff
Username Link QR Code
2023-07-20 05:14:08 +02:00
trevor-signal
54d4734f05
Stop preemptively generating screenshots for video stories
2023-07-19 16:21:31 -07:00
trevor-signal
f400d39466
Add option to log all query times
...
Co-authored-by: Scott Nonnenberg <scott@signal.org>
2023-07-19 16:21:31 -07:00
Scott Nonnenberg
9d03d9b59c
Fix initial kyber key hydration; improve generation and logging
2023-07-19 16:21:31 -07:00
Scott Nonnenberg
b6445a6af0
Support for loading, storing, and using kyber keys in decryption
2023-07-19 16:21:30 -07:00
trevor-signal
9c6fb29edb
Include @mentioned names in search results
2023-06-26 14:25:48 -04:00
Scott Nonnenberg
efc237d106
Additional logging, more reliable contact/group sync fetch
2023-06-14 13:51:49 -07:00
trevor-signal
d012779e87
Show mentioned badges & enable scrolling to mentions in conversations
2023-05-23 14:59:07 -07:00
Fedor Indutny
6e5d9f5dd8
Optimize getAdjacentMessagesByConversationSync
2023-05-17 10:35:21 -07:00
Fedor Indutny
5869717cd3
Use correct timestamp for receipts of edited messages
2023-05-16 10:37:12 -07:00
Fedor Indutny
d9c0366219
Fix sticker manager
2023-05-09 10:52:39 -04:00
Josh Perez
be60b3d225
Moves SQL to full IPC
2023-05-09 10:52:39 -04:00
Josh Perez
1f2cde6d04
Send edited messages support
...
Co-authored-by: Fedor Indutnyy <indutny@signal.org>
2023-04-20 09:31:59 -07:00
Jamie Kyle
76b9d07acf
Remove Signal.Util
2023-04-10 20:54:43 -07:00
Scott Nonnenberg
d9d820e72a
Support for receiving formatted messages
...
Co-authored-by: Alvaro Carrasco <alvaro@signal.org>
2023-04-10 09:31:45 -07:00
Fedor Indutny
f61d8f38b0
Context menu for left pane list items
2023-04-05 13:48:00 -07:00
Josh Perez
36e21c0134
Receive support for editing messages
2023-03-27 19:48:57 -04:00
Jamie Kyle
1d549a9991
Multi-select forwarding and deleting
2023-03-20 15:23:53 -07:00
Fedor Indutny
5dff1768bd
Page media in Lightbox
2023-03-03 19:03:15 -08:00
Fedor Indutny
bd40a7fb98
Graceful handling of readonly DB error
2023-03-02 09:59:18 -08:00
Fedor Indutny
287d7e70e5
Fix change counter check in fts optimization
2023-02-21 14:06:35 -08:00
Alvaro
a4b5968579
Removed deletion of over-attempts-unprocessed from saveUnprocessedSync
2023-02-21 14:03:48 -07:00
Fedor Indutny
329fe8f393
Periodically optimize FTS table
2023-02-09 13:13:08 -08:00
Fedor Indutny
486cbe0471
Support reporting token on envelope
2023-02-07 16:55:12 -08:00
Jamie Kyle
2bbcc4676e
Move receipt queues into conversation queue to handle 428s
2023-02-06 09:24:34 -08:00
Alvaro
e51f582bfb
Removed hard limit on unprocessed messages in cache
2023-02-02 11:39:07 -08:00
Fedor Indutny
e64816830b
Revert "Periodically optimize FTS table"
...
This reverts commit 5dfdde998b
.
2023-01-30 15:55:11 -08:00
Fedor Indutny
270804d62d
Reorder migrations
2023-01-30 11:55:38 -08:00
Fedor Indutny
67b108c718
Optimize conversation open performance
2023-01-27 09:47:24 -08:00
Fedor Indutny
2637df0c42
Use Signal tokenizer in FTS5
2023-01-26 15:53:22 -08:00
Fedor Indutny
78a33f28c8
Fix change counter check in fts optimization
2023-01-25 13:22:13 -08:00
Fedor Indutny
5dfdde998b
Periodically optimize FTS table
2023-01-24 11:13:00 -08:00
Fedor Indutny
dba2a6b166
Fix syntax error in old SQL migration
2023-01-23 17:07:00 -08:00
Fedor Indutny
6ddb12cd99
Fully remove DQS from SQL queries
2023-01-18 17:06:07 -08:00
Fedor Indutny
c6e184016b
Log sqlite3 warnings
2023-01-18 14:12:33 -08:00
Fedor Indutny
efc54e44c4
Further optimize getConversationMessageStats
2023-01-17 16:44:22 -08:00
Fedor Indutny
1c22fe653c
Optimize some indices and queries
2023-01-17 14:07:21 -07:00
Fedor Indutny
d7b09b9703
Deprecate phone number discovery notification
2023-01-12 14:18:08 -08:00
Scott Nonnenberg
50a0110192
Stories: Proper notifications and handling of out-of-order messages
2023-01-11 14:54:06 -08:00
Jamie Kyle
e5638c0b20
Call Disposition
2023-01-09 16:52:01 -08:00
Scott Nonnenberg
b8234765bf
Update Backbone types: attributes is T - and fix failing type checks
2023-01-05 13:58:13 -08:00
Dimitris Apostolou
3c80272673
Fix typos
2023-01-03 13:02:01 -08:00
Jamie Kyle
3705b959d6
Remove end year from licenses
2023-01-03 11:55:46 -08:00
Fedor Indutny
dec23725e5
Use ReadonlyArrays in conversation model and redux
2022-12-21 16:07:02 -08:00
Fedor Indutny
ecbf84638d
Increase max attempt count for unprocessed items
2022-12-21 16:06:50 -08:00
Fedor Indutny
ed271d92ea
Add no-misused/floating-promises lint rule
2022-12-21 10:41:48 -08:00
Fedor Indutny
50d9b6e5e1
Use @signalapp/better-sqlite3
2022-12-14 12:48:36 -08:00
Nikita Karamov
7cd566726f
Replace mkdirp with native fs.mkdir
...
Prior to this change, Signal-Desktop was using a rather ancient version
of `mkdirp`, which was meant for Node.js versions without native support
for this kind of functionality. Starting with Node v10, `fs.mkdir()` can
perform recursive directory creation.
Since Signal-Desktop doesn't utilize any advantages of using such an old
version of `mkdirp` [1] (let alone any version of `mkdirp`), we can
replace it with the native methods of `fs` (or `fs/promises`).
This transition slightly reduces the amount of packages needed to be
downloaded and included in the final app since it now relies on the
built-in API of Node.js.
2022-12-13 11:01:10 -08:00
Fedor Indutny
e08a2fa86c
Optimize database after running migrations
2022-12-13 09:07:48 -08:00
Scott Nonnenberg
f366454893
updatePNI: Cleanup only for obsolete PNI
2022-12-12 14:06:16 -08:00
Scott Nonnenberg
a49a6f2057
Notifications for a few merge-related scenarios
2022-12-05 14:46:54 -08:00
Fedor Indutny
d6d53f9d18
Optimize loading stories
2022-11-28 09:19:48 -08:00
Fedor Indutny
991580a1ed
Improve error handling during group sends
2022-11-22 10:43:43 -08:00
Fedor Indutny
98ef4c627a
Update eslint to 8.27.0
2022-11-17 16:45:19 -08:00
Fedor Indutny
efa29dc800
Fix getKnownMessageAttachments query
2022-11-17 13:06:19 -07:00
Evan Hahn
a88243f26d
Better handle group call ring race conditions
2022-11-16 18:52:04 -08:00
Fedor Indutny
854c946cc7
Interactive cleanup of orphaned attachments
2022-11-16 16:29:15 -08:00
Fedor Indutny
e6ebfe4fca
Update typescript to 4.8.4
2022-11-14 11:35:37 -08:00
Fedor Indutny
a0c03025d8
Relax schema 41 migration
2022-11-08 09:17:21 -08:00
Fedor Indutny
c286e0f9c6
Drop deprecated SQL columns
2022-11-03 10:25:27 -07:00
Josh Perez
471a9e2e98
Show group replies icon for stories with replies
2022-10-22 02:26:16 -04:00
Fedor Indutny
e14c3241c5
Refresh stories in redux when data changes
2022-10-20 12:16:37 -07:00
Scott Nonnenberg
4ec48df5b9
Additional work to include story=true on send
2022-10-07 10:02:08 -07:00
Scott Nonnenberg
2b2594c20a
Stories: Fix sender key persistence, pipe story: true into sends
2022-09-30 09:59:36 -07:00
Josh Perez
67c706a7ef
Ensure deleting conversation deletes story replies
2022-09-29 17:57:11 -07:00
Fedor Indutny
c0082adc56
Revert "Enable fullfsync mode in the database"
...
This reverts commit a2eac80034
.
2022-09-27 13:15:53 -07:00
Scott Nonnenberg
a7253be213
getUnreadByConversationAndMarkRead: Take 'now' param for reliable tests
2022-09-22 16:49:06 -07:00
Jamie Kyle
eb10aafd7c
tsc:allowUnreachableCode, eslint:no-unreachable, assert->assertDev
2022-09-15 13:17:15 -06:00
Jamie Kyle
0086216c9d
Add eqeqeq rule but require == for null
2022-09-14 14:40:44 -07:00
Scott Nonnenberg
192c85bb0e
getNextAttachmentDownloadJobs: Delete malformed jobs
2022-09-07 14:17:08 -07:00
Fedor Indutny
7ce4beb270
Refactor contact sync processing
2022-08-24 22:04:42 -07:00
Fedor Indutny
757af2cbbe
Include ACI+Access Keys pairs with CDSI requests
2022-08-18 13:44:53 -07:00
Fedor Indutny
00cfd92dd0
Send and receive PniSignatureMessage
2022-08-15 14:53:33 -07:00
Josh Perez
0a81376ca0
Do not accept stories without a name and no deletedAtTimestamp
2022-08-11 18:03:22 -04:00
Josh Perez
f9c2e9b0af
softAssert that messageId is always a UUID
2022-08-11 14:02:25 -07:00
Scott Nonnenberg
faf6c41332
Early preparations for PNP Contact Merging
2022-08-09 14:39:00 -07:00
Fedor Indutny
b47a906211
Stickers in storage service
2022-08-03 10:10:49 -07:00
Fedor Indutny
79b48115e6
Handle PniChangeNumber
2022-07-28 14:50:10 -04:00
Josh Perez
e321e1fea8
Edit distribution lists via story settings menu
2022-07-20 20:07:09 -04:00
Scott Nonnenberg
2f252b8e26
Repair broken attachments with non-array 'data' fields
2022-07-18 13:01:43 -07:00
Scott Nonnenberg
a2eac80034
Enable fullfsync mode in the database
2022-07-15 14:47:24 -07:00
Fedor Indutny
a450e13a99
Fetch PNI group credentials
2022-07-08 13:46:25 -07:00
Fedor Indutny
3111b804de
Add an extra assert to Data.saveMessage
2022-07-06 15:53:25 -07:00
Scott Nonnenberg
5fcf97b43b
Introduce logging for unexpected incoming urgent values
2022-07-05 15:20:30 -07:00
Scott Nonnenberg
06190b1434
Introduce new urgent property for outgoing messages
2022-07-01 09:55:13 -07:00
Josh Perez
9155784d56
Sync my stories with primary device
2022-06-30 20:52:03 -04:00
Scott Nonnenberg
4568527232
Increase backstop queue timeouts across the app
2022-06-27 09:46:43 -07:00
Fedor Indutny
63679f5af6
Increment and store message migration attempts
2022-06-20 14:18:23 -07:00
Scott Nonnenberg
2464e0a9c1
Convert signal.js and preload.js to Typescript
2022-06-13 14:39:35 -07:00
Fedor Indutny
6aeddb9301
Order unprocessed envelopes by receivedAtCounter
2022-06-10 09:09:21 -07:00
Scott Nonnenberg
924c271b13
Convert js/modules/types/message to Typescript
2022-06-09 18:10:20 -07:00
Evan Hahn
f50a6abe36
Remove unused eslint-disable
s
2022-06-03 14:07:51 -07:00
Scott Nonnenberg
d753fe8fcb
getUnreadByConversationAndMarkRead: Only query incoming messages
2022-06-02 18:09:13 -07:00
Evan Hahn
2a2f44a73a
Convert message cleanup services to TypeScript
2022-05-31 16:53:14 -07:00
Fedor Indutny
dfc310805a
Allow manually retrying attachment downloads
2022-05-23 16:07:41 -07:00
Fedor Indutny
e86a312b74
Disable part of the migration 58
2022-05-18 09:44:43 -07:00
Scott Nonnenberg
105508c50f
Update unread count when creating important local notifications
2022-05-11 19:45:20 -07:00
Josh Perez
ddde85cdd8
Soft assert for hydrating story context
2022-05-11 16:47:19 -07:00
Scott Nonnenberg
69d0ed3309
Always provide isGroup/storyId to message-fetching functions
2022-05-11 15:20:47 -07:00
Scott Nonnenberg
364d690cf3
On database error: Escape copies error and quits, additional logging
2022-05-03 12:06:47 -07:00
Scott Nonnenberg
e078a2ae54
Ensure that seenStatus is always updated along with readStatus
2022-04-29 16:42:47 -07:00
Fedor Indutny
d6b58d23d6
Increment unprocessed attempts when fetching
2022-04-28 15:28:30 -07:00
Scott Nonnenberg
25282e3afa
getTotalUnreadForConversation: Add missing isGroup parameter
2022-04-27 10:41:24 -07:00
Josh Perez
2f44e33c9c
Move link notification to the conversation hero
2022-04-25 14:03:24 -07:00
Scott Nonnenberg
3a1df01c9e
New 'unseenStatus' field for certain secondary message types
2022-04-22 11:35:14 -07:00
Josh Perez
774246b6e2
Drop story replies from group timeline
2022-04-20 16:33:38 -07:00
Josh Perez
e3d537cbd3
Render group stories
2022-04-14 20:08:46 -04:00
Chris Eager
2f5e4f1b98
Update message reporting to use sender ACI instead of E164
2022-04-12 12:54:04 -07:00
Fedor Indutny
42108c9ca9
Flush last conversation message save on shutdown
2022-04-12 11:16:58 -07:00
Scott Nonnenberg
9e54f55c22
Ensure that waitForAll functions catch and log thrown errors
2022-04-11 10:53:57 -07:00
Fedor Indutny
a15d84aade
Update better-sqlite3
2022-04-07 15:49:23 -07:00
Fedor Indutny
e1e1cfb892
Use fuse.js for regular contact search
2022-04-07 11:47:12 -07:00
Fedor Indutny
f7c3a44056
Update electron to 17.3.0
2022-03-29 10:06:42 -07:00
Josh Perez
3b5cc26fec
Adds logic around downloading stories
2022-03-28 18:10:08 -07:00
Fedor Indutny
ca3f8b7df0
Store receivedAtCounter separately for unprocessed
2022-03-24 14:28:56 -07:00
Fedor Indutny
c5a3ffddf9
Limit number of GV2 banned members
2022-03-23 15:34:51 -07:00
Fedor Indutny
35b5087dc0
Short-circuit storyId predicate to optimize query
2022-03-21 14:21:35 -07:00
Josh Perez
3620309f22
Show story replies in the timeline
2022-03-16 10:30:14 -07:00
Scott Nonnenberg
703bb8a3a3
Introduce new 'Block request' button in timeline
2022-03-15 17:11:28 -07:00
Josh Perez
eb91eb6fec
Process incoming story messages
2022-03-04 13:14:52 -08:00
Scott Nonnenberg
30783c887c
Introduce new conversationJobQueue
2022-02-16 10:36:21 -08:00
Scott Nonnenberg
90356d4c0f
Move a number of sync messages to jobs for retry
2022-01-14 13:34:52 -08:00
Scott Nonnenberg
06165cb742
Include sender keys in SignalProtocolStore zones
2022-01-07 18:12:13 -08:00
Scott Nonnenberg
a17e157e7b
Fix messages_unread index
2022-01-07 12:51:19 -08:00
Fedor Indutny
fa8ff2ae4c
Fix messages_preview index
2022-01-07 11:51:41 -08:00
Fedor Indutny
9d04daff5f
Fix message_user_initiated
2021-12-21 22:49:40 +01:00
Fedor Indutny
f5312b9463
Fix getUnreadReactionsAndMarkRead
2021-12-21 21:01:09 +01:00
Scott Nonnenberg
0163ef203b
loadAndScroll: Use one transaction to pull all data: old/new/metrics
2021-12-20 22:05:13 +01:00
Scott Nonnenberg
60a53656af
Optimize a few queries
2021-12-20 22:04:02 +01:00
Fedor Indutny
3228e22428
Fix batching in getUnreadReactionsAndMarkRead
2021-12-20 16:15:36 +01:00
Evan Hahn
770c80b9ee
Remove several @ts-ignores
2021-12-16 17:14:21 -08:00
Scott Nonnenberg
42cb570029
messages table: introduce new computed isStory field for index usage
2021-12-15 09:17:14 +01:00
Fedor Indutny
71ca3c0764
Drop old unprocessed envelopes
2021-12-13 17:25:44 -08:00
Evan Hahn
ebcd3e3e43
Remove unused getAllPrivateConversations
SQL function
2021-12-10 15:15:00 -08:00
Scott Nonnenberg
34fd945f83
No Backbone in data layer; server/client interfaces are now similar
2021-12-10 16:51:54 -06:00
Scott Nonnenberg
161b0e5379
Refactor sender key sends to allow distribution lists
2021-12-09 18:15:59 -08:00
Scott Nonnenberg
fdc9885baa
Migration and data access functions for stories
2021-12-08 20:52:46 +01:00
Evan Hahn
67b17ec317
Hide "become a sustainer" button if you're already a sustainer
2021-11-30 17:29:57 +01:00
Scott Nonnenberg
39e10efa39
Conversation last message/activity: Use IS/IS NOT to better handle NULL
2021-11-18 15:15:38 -08:00
Fedor Indutny
54c60ebb4f
Treat "file is not a database" as database corruption
2021-11-17 13:17:45 -08:00
Fedor Indutny
066a23a6a9
Preliminary support for destinationUuid field
2021-11-12 13:26:52 -08:00
Evan Hahn
5619eeca83
Upgrade Prettier to 2.4.1
2021-11-11 16:43:05 -06:00
Fedor Indutny
e50f76a909
Reduce amount of logging in 41st migration
2021-11-09 11:31:41 -06:00
Fedor Indutny
7f9beef055
Extra logging for GV2 UUID migration
2021-11-03 09:59:46 -05:00
Evan Hahn
f647c4e053
Display user badges
2021-11-02 16:01:13 -07:00
Fedor Indutny
246583d274
Fix runtime error during SQL migration
2021-10-27 12:15:03 -05:00
Fedor Indutny
63fcdbe787
Use UUIDs in group database schema
2021-10-26 15:59:08 -07:00
Evan Hahn
74fde10ff5
Prefer import type
when importing types
2021-10-26 14:15:33 -05:00