Commit Graph

57 Commits (e2ee0e94eecb99bc1f120dc9a5455e3e4d9339bb)

Author SHA1 Message Date
Morgan Pretty 3514ed4f50 Updated the JobRunner to have multiple job queues (needs more testing)
Added a backoff to the Poller retry
Updated the "blocking" behaviour of the JobRunner
Tweaked the Job dependency handling to better handle orphaned dependencies
Fixed an issue where the Conversation screen wasn't observing database changes
3 years ago
Morgan Pretty cf66edb723 Further work on SessionMessagingKit migrations
Added migrations for contacts and started working through thread migration (have contact and closed group threads migrating)
Deprecated usage of ECKeyPair in the migrations (want to be able to remove Curve25519Kit in the future)
3 years ago
Morgan Pretty 0f4df804ed Merge branch 'dev' into feature/database-refactor
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Meta/AppDelegate.m
#	SessionMessagingKit/Utilities/OWSIdentityManager.h
#	SessionMessagingKit/Utilities/OWSIdentityManager.m
#	SignalUtilitiesKit/Database/Storage+Conformances.swift
#	SignalUtilitiesKit/Database/TSStorageHeaders.h
#	SignalUtilitiesKit/To Do/OWSPrimaryStorage+Loki.m
3 years ago
Morgan Pretty a1b4554cdb Migrated the SessionSnodeKit from YapDatabase to GRDB
Changed the min OS version to iOS 13.0 (support for 'Identifiable')
Removed the alternate approaches to fetching the userKeyPair and userPublicKeyHexString (no consistently routed through the caching method)
Migrated the 'OWSIdentityManager' logic to use the new 'Identity' type
Added the 'Setting' table and got the pattern working fairly nicely (unfortunately there isn't a good way to avoid key collision without proper enums)
Updated the SessionSnodeKit to migration it's data from YDB to GRDB
Updated the SessionSnodeKit to use GRDB throughout it's logic
3 years ago
Morgan Pretty 0842dbff1e Removed a bunch of unused code
Removed the legacy Theme code (replaced with SessionUIKit equivalents)
Removed the OWSOrphanDataCleaner (unused)
Removed the OWSReceiptType_Delivery from the OWSOutgoingReceiptManager (unused)
Removed the TSStorageKeys and TSStorageHeaders files (unused)
Removed the LKMessageIDCollection (unused - only had methods for deleting data from the collection)
Removed the OWSPrimaryStorageTrustedKeysCollection and OWSIdentityManager_QueuedVerificationStateSyncMessages (unused)
Removed collections and notifications from OWSProfileManager (unused)
3 years ago
RyanZhao 74f1d9a6d4
Merge pull request #596 from mpretty-cyro/feature/improve-open-group-deletion-processing
Performance: Improve open group deletion processing
3 years ago
Morgan Pretty 212c5e87aa Re-added the transaction requirement when generating the current config message 3 years ago
Morgan Pretty 29c53223e0 More tweaks to fix crash
Wrapped the force sync calls within their own Storage.write blocks to ensure they have the latest data and aren't accessing a transaction completed in a different thread
Reverted a number of the unneeded changes
3 years ago
Morgan Pretty f8dfbd4244 Reverting change and fixing a force-cast crash 3 years ago
Morgan Pretty 6205e72eab Change to make the 'getUser(using:)' method more consistent 3 years ago
Morgan Pretty 7aa1221987 Tweaks to the ConfigurationMessage generation logic
Removed force unwraps
Updated the closed group storage methods to take a transaction parameter
3 years ago
Morgan Pretty 1492232224 Made some optimisations to open group deletion handling
Added a new OpenGroupServerIdLookup to make it easier to get a database id via an open group server id
Added a migration to generate the above data
Updated the handleCompactBody method to stop early if there are no messages to delete (would previously enumerate all interactions regardless)
Updated the handleCompactBody to fetch the mapping for the deleted message so we can avoid enumerating all interactions
3 years ago
Morgan Pretty 4c89c165d8 Fixed a few bugs uncovered by QA
Fixed a bug where the ConfigurationMessage was getting generated before the contact state was persisted to the database in the message request flow causing odd behaviours (now generating the ConfigurationMessage within the same transaction)
Fixed a bug where sending a message to an existing message request thread once the message requests item has been hidden would show the message requests notification and trigger the section to re-appear on the home screen
Fixed a bug where blocked contacts weren't getting excluded from the contacts list in the configuration message
3 years ago
Niels Andriesse 519ffa4405 Fully switch to the new contact API
This should improve performance significantly as it avoids many unnecessary sync transactions. It also makes the code more readable.
4 years ago
nielsandriesse 06f795169b Merge branch 'dev' into cleanup 4 years ago
nielsandriesse 964cb8b326 Fix new deletion method 4 years ago
Niels Andriesse d742fc1548 Delete V1 OGS & file server 4 years ago
Niels Andriesse beabf0c9c0 Implement closed group logic changes 4 years ago
Niels Andriesse 5504f74659 Show V2 open group member count 4 years ago
nielsandriesse 4c9728b4fe Update other APIs for V2 open groups 4 years ago
nielsandriesse a5f831fd6c Keep track of last message & last deletion server IDs 4 years ago
nielsandriesse 1d65f717b5 Add auth token handling 4 years ago
Niels Andriesse dd0baf0d97 Unify contacts APIs 4 years ago
Niels Andriesse 10e6d114a0 Sync profile updates 4 years ago
Niels Andriesse 90e53e5cef Redesign conversation screen part 1 4 years ago
Niels Andriesse 867e9114a6
Merge branch 'dev' into multi-device 4 years ago
Niels Andriesse 3e5baca72d Fix open group message deletion 4 years ago
nielsandriesse e38dae5a05 Replace PublicChatManager 4 years ago
nielsandriesse d6314c8d30 Handle configuration messages 4 years ago
Niels Andriesse 71758b0c00 Remove the Signal protocol 4 years ago
Niels Andriesse 2a4977d269 Implement Session protocol 4 years ago
Niels Andriesse efe8f1c8bb Clean 4 years ago
Niels Andriesse 2d8933901d Fix open group display name handling 4 years ago
Niels Andriesse b621bdc69a Partially fix open groups 4 years ago
nielsandriesse d39e155e1c Make link previews work again 4 years ago
nielsandriesse 20faa8e914 Debug 4 years ago
nielsandriesse addc859c84 Fix duplicate messages & debug 4 years ago
nielsandriesse c59fe05f8e Cancel message send job(s) if associated message/thread is deleted 4 years ago
nielsandriesse 77c1f721b9 Further debug attachment sending 4 years ago
Niels Andriesse 341782f255 Fix profile handling 4 years ago
Niels Andriesse 3b252056de Implement attachment uploading 4 years ago
Niels Andriesse d2e8f2142e WIP 4 years ago
Niels Andriesse d7c71a8c06 Make things compile again 4 years ago
nielsandriesse 961878f74c Parse attachment pointers 4 years ago
nielsandriesse 58802936c1 Finish message receiving pipeline 4 years ago
nielsandriesse 97545de75e Handle expiration timer updates 4 years ago
nielsandriesse 7e9eb2f138 Make typing indicators work & implement job resuming 4 years ago
Niels Andriesse b030b5999b Make messages show up again 4 years ago
nielsandriesse b88bfd1da0 Configure SessionMessagingKit 5 years ago
nielsandriesse 82127bfe4d Clean 5 years ago