Commit Graph

15 Commits (a2d7be369cabc58023a1b8f4b63bf0780b9285eb)

Author SHA1 Message Date
Morgan Pretty 1e07120eba Cleaned up 'calledFromConfig' params
• Renamed the remaining 'calledFromConfig' params to be a bit more descriptive of what they actually do
• Removed all the 'calledFromConfig' values

The `calledFromConfig` was previously needed to help prevent reentrant libSession access but that is now supported. This now means that a config change could trigger a database update which subsequently triggers a config change but libSession has a built in diff system which will prevent this resulting in an infinite update loop

If we do end up in a situation that this update loop results in a config change (which would then get synced) it's likely a bug in iOS which would be hard to track down as it would result from a specific database change (ie. this will hopefully make it easier to resolve inconsistent libSession integrations)
5 months ago
Morgan Pretty 22e59b1789 Fixed a crash which could occur when receiving a UserGroups config change 6 months ago
Morgan Pretty e1c5215986 Various dependency changes required to get unit tests working correctly
• Updated the SessionCallManager to be an updated singleton type (cleaned up more in Groups Rebuild)
• Updated the PushRegistrationManager to be an updated singleton type (cleaned up more in Groups Rebuild)
• Injected dependencies correctly in a bunch of places
6 months ago
RyanZhao fac94f94be
Merge pull request #1048 from mpretty-cyro/feature/query-optimisation
Updated the SQL for checking session id prefixes
7 months ago
Morgan Pretty 532bbd2590 Updated the SQL for checking session id prefixes 7 months ago
Morgan Pretty 472fd61287 Reworked 'deleteOrLeave' function to remove ambiguity, fixed some strings 7 months ago
Morgan Pretty 1396652698 Refactored the DSL for interacting with C structs
There were a few logs related to bad memory access within libSession and the `toLibSession` convention which we'd originally setup made me nervous as C-friendly objects would be allocated in Swift and then assigned to C struct properties but I'm not sure how the memory would actually behave in this case.

This updated approach unfortunately involves a bunch of duplicate code within 'TypeConversion+Utilities' (and some horrible type aliases for tuples) but as a result we now have compile-time safe 'get' and 'set' functions for any C struct which conforms to `CAccessible` and `CMutable`. The other nice benefit about this change is that the new `set` functions copy memory across into the C structs so we can have more confidence that the memory ownership has shifted to the libSession side of things.
9 months ago
Morgan Pretty 5da842a109 Fixed an issue where joinedAt wasn't getting set for legacy groups 9 months ago
Morgan Pretty 25c1fb6b45 Fixed the unit tests 9 months ago
Morgan Pretty ce01f128f3 Replaced Cocoapods with Swift Package Manager for dependency management 9 months ago
Morgan Pretty 6a838a486c Fixed an issue where the blocked contacts screen might not show values 10 months ago
Morgan Pretty d4e66dde14 Fixed a few more issues found during testing
• Fixed an issue where the conversation 'created' timestamp wasn't correctly getting set when creating a group
• Fixed an issue where sending a message to 'Note to Self' may not show the conversation in the conversation list
• Fixed an issue where sharing a message with an attachment might not include the attachment
• Fixed an issue where list paging wouldn't work in some cases after values were inserted into the database after the currently loaded pages
• Added some handling for invalid 'joinedAt' values for groups (seems like we can have an incorrect resolution)
10 months ago
Morgan Pretty b0eec5a4c2 Updated to the latest libSession and updated it's error handling 12 months ago
Morgan Pretty 733694d464 Defensive coding for C API conversation, threading & logging tweaks
• Reworked some of the C API conversions to try to prevent invalid cases
• Tweaked the threading around libSession networking callbacks to minimise Swift code blocking libSession threads
• More logging tweaks
1 year ago
Morgan Pretty c065abc584 Cleaned up a bunch of warnings, renamed a couple of folders 1 year ago