Commit Graph

60 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
2 years ago
Morgan Pretty b541666ef0 Got the ability to send message working again and other tweaks
Tested and fixed a couple of issues with the disappearingMessages job
Added a simple dependency system for jobs (primarily for the AttachmentUploadJob, but will likely be others later)
Setup the AttachmentUploadJob again (looks like there are cases which use it)
Prevented a possible infinite job deferral loop from causing the app to crash (the loop is still technically possible but the app will continue to run now)
Updated the interactions unique constraints based on testing and discussions around how the serverHash works
Deleted the legacy ReadReceipt handling (now managed via the 'interaction.wasRead' flag and 'SendReadReceiptsJob')
Deleted the unused SSKIncrementingIdFinder
2 years ago
Morgan Pretty 3baeb981d9 Further work on the JobRunner
Moved the JobRunner into SessionUtilitiesKit so it can be used by SessionSnodeKit
Exposed a 'sharedLokiProject' value on UserDefaults to remove the hard-coded group name used everywhere
Added "blocking" job support for 'OnLaunch' and 'OnActive' jobs to the JobRunner (will retry until it succeeds)
Added the UpdateProfilePicture and RetrieveDefaultOpenGroupRooms jobs
2 years ago
Morgan Pretty 11231599db Further work on migrations and message pipeline refactoring
Refactored the AppDelegate from Objective C to Swift
Updated the HomeVC to use GRDB
Refactored a number of the Job types to be driven via GRDB and the new JobRunner
Fixed a bug where the LinkPreviewView wouldn't render correctly in dark mode
2 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
2 years ago
Morgan Pretty e65682ae9b Merge branch 'dev' into feature/database-refactor
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Backups/OWSBackup.m
#	Session/Backups/OWSBackupImportJob.m
#	SessionSnodeKit/SnodeAPI.swift
2 years ago
Morgan Pretty 529e416dd1 Started work on GRDB logic and migrations
Setup a migration pattern
Setup the database configuration and security
Started defining the database schema
Started working on the migrations for SessionSnodeKit
2 years ago
Morgan Pretty b90904ebbd Updated the code to only update the last message hash once the MessageReceiveJobs have been created 2 years ago
Morgan Pretty 03fb5cbeeb Cleanup and tweaks
Fixed some compilation issues.
Removed an unused dependency.
Cleaned up the Podfile to minimise duplication.
Pointed at an oxen fork of SignalCoreKit instead of a personal one.
2 years ago
Ryan Zhao 5f6da0739e delete message on storage server 3 years ago
Ryan Zhao e8f0d0d124 WIP: delete from storage server 3 years ago
Ryan Zhao c68350f3d8 store hash value for outgoing messages 3 years ago
Niels Andriesse 1a237557ff Add documentation 3 years ago
Niels Andriesse 140f07df96 Disable authenticated retrieval for now 3 years ago
Niels Andriesse 2360af5993 Implement authenticated message retrieval 3 years ago
Niels Andriesse 8a29469eb5 Handle incorrect clock setting 3 years ago
Niels Andriesse 41fe33525c Don't unnecessarily open sync transactions 3 years ago
Niels Andriesse 498f5a73b0 Don't unnecessarily open sync transactions 3 years ago
Niels Andriesse ef2eab7e9f Implement SnodeAPI.clearAllData() 3 years ago
nielsandriesse 1b68c109ee Fix build 3 years ago
nielsandriesse 5c699d6bb7 Fix inverted operation 3 years ago
nielsandriesse b694777a71 Fix snode pool updating bug 3 years ago
Niels Andriesse e93af07b61 Fix ONS 3 years ago
Niels Andriesse 371222098b Fix snode pool updating bug 3 years ago
Niels Andriesse e9df213bfe Put feature flags in one place 3 years ago
nielsandriesse 583f5e3483 Clean 3 years ago
nielsandriesse fec4bfb836 Debug 3 years ago
Niels Andriesse 66181baf2b Debug 3 years ago
Niels Andriesse d39387bf01 Debug 3 years ago
Niels Andriesse 2f67073a5a Implement new snode pool updating method 3 years ago
Niels Andriesse 8aa25af4d5 Rework things in advance of new snode pool updating method 3 years ago
Niels Andriesse 1002cc51ae Remove PoW too low error code handling 3 years ago
Niels Andriesse 727dccfbb7 Remove PoW too low error code handling 3 years ago
nielsandriesse 8433c2d4ab Remove debug code 3 years ago
nielsandriesse a76c43973f Increase TTL & remove PoW 3 years ago
Niels Andriesse 89b96447e1
Merge pull request #378 from oxen-io/tls
Self-Signed Seed Node Certificates
3 years ago
nielsandriesse 75f5591fe0 Store certificates in DER format 3 years ago
Niels Andriesse 58748471a4 Set up skeleton code 3 years ago
Ryan ZHAO 4fd34005dc fix opening transactions in filter. 3 years ago
nielsandriesse 66d46f3dd0 Debug 3 years ago
Niels Andriesse 4958d3d368 Implement ONS API 3 years ago
Niels Andriesse 8477f75426 Fix unnecessary path rebuilding 3 years ago
Niels Andriesse 647bdb0d10 Fix error copy 3 years ago
Niels Andriesse ee1d4b1bd5 Debug & make UI clearer 4 years ago
Niels Andriesse 40d199a90b Clean up SnodeAPI 4 years ago
Niels Andriesse efe8f1c8bb Clean 4 years ago
Niels Andriesse 905b829de2 Refresh snode pool at least once a day 4 years ago
Niels Andriesse 557a851dce Enforce assumptions 4 years ago
nielsandriesse d6c115bc2a Fix module linking issue 4 years ago
Niels Andriesse f6b78f9e99 Adjust snode API parameters 4 years ago