Commit Graph

16986 Commits

Author SHA1 Message Date
Morgan Pretty e28b4b4531 Fixed a number of bugs with the config handling
Added a number of feature flag checks to config updates
Added legacy group disappearing message timer handling
Updated the string linter to clean up the build logs a little
Split the initial config dump generation into it's own migration so it can run the launch after the feature flag is toggled
Fixed a few issues with the initial config dump creation
Fixed an issue where "shadow" conversations would be left in the database by opening a thread and never sending a message
Fixed a bug where duplicate members could be added to legacy groups
Fixed a bug with using animated images for the avatar
Fixed a bug where avatar images which were already on disk could be re-downloaded
2023-03-06 15:20:15 +11:00
Morgan Pretty 7ee84fe0d3 Cleaned up a bunch of code, added pinned and hidden handling
Added in logic to handle the 'hidden' state
Replaced the 'Group Created' message with an empty state
Cleaned up a bunch of boilerplate code
2023-03-02 17:52:37 +11:00
Morgan Pretty 8eed08b5b4 Updated to the latest lib, started handling UserGroups
Added unit tests for the UserGroup config type
Updated the logic to use the 'pinnedPriority' and deprecated 'isPinned' (not sorting yet but using the value)
Updated the code to use the libSession community url parsing instead of custom parsing
Fixed an issue where initialising Data with a libSession value wasn't returning null when the data had no actual value
Fixed an issue where the OpenGroupPoller could user an incorrect failure could when handling poll responses
Fixed the UpdateExpiryRequest signature
2023-02-28 17:23:56 +11:00
Morgan Pretty ff36b3eeab Resolved a number of TODOs and a couple of crashes
Updated the logic to always fetch all config messages (and not de-dupe them)
Updated the onboarding to fallback to fetch the legacy config if the there is no updated user config
Added sorting to config message processing to reduce the turn-around time for certain edge-cases to resolve
Removed some redundant code
Fixed a database re-entrancy crash
Fixed a crash when merging config messages
Fixed an issue which could occur by registering too many 'afterTransaction' closures
2023-02-21 17:10:02 +11:00
Morgan Pretty 742c4a161f Merge remote-tracking branch 'upstream/dev' into feature/updated-user-config-handling
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Conversations/ConversationVC+Interaction.swift
#	Session/Conversations/ConversationViewModel.swift
#	Session/Media Viewing & Editing/GIFs/GifPickerViewController.swift
#	Session/Media Viewing & Editing/GIFs/GiphyAPI.swift
#	Session/Meta/Translations/de.lproj/Localizable.strings
#	Session/Meta/Translations/en.lproj/Localizable.strings
#	Session/Meta/Translations/es.lproj/Localizable.strings
#	Session/Meta/Translations/fa.lproj/Localizable.strings
#	Session/Meta/Translations/fi.lproj/Localizable.strings
#	Session/Meta/Translations/fr.lproj/Localizable.strings
#	Session/Meta/Translations/hi.lproj/Localizable.strings
#	Session/Meta/Translations/hr.lproj/Localizable.strings
#	Session/Meta/Translations/id-ID.lproj/Localizable.strings
#	Session/Meta/Translations/it.lproj/Localizable.strings
#	Session/Meta/Translations/ja.lproj/Localizable.strings
#	Session/Meta/Translations/nl.lproj/Localizable.strings
#	Session/Meta/Translations/pl.lproj/Localizable.strings
#	Session/Meta/Translations/pt_BR.lproj/Localizable.strings
#	Session/Meta/Translations/ru.lproj/Localizable.strings
#	Session/Meta/Translations/si.lproj/Localizable.strings
#	Session/Meta/Translations/sk.lproj/Localizable.strings
#	Session/Meta/Translations/sv.lproj/Localizable.strings
#	Session/Meta/Translations/th.lproj/Localizable.strings
#	Session/Meta/Translations/vi-VN.lproj/Localizable.strings
#	Session/Meta/Translations/zh-Hant.lproj/Localizable.strings
#	Session/Meta/Translations/zh_CN.lproj/Localizable.strings
#	Session/Notifications/AppNotifications.swift
#	Session/Notifications/SyncPushTokensJob.swift
#	Session/Notifications/UserNotificationsAdaptee.swift
#	SessionMessagingKit/Configuration.swift
#	SessionMessagingKit/Database/Models/Interaction.swift
#	SessionMessagingKit/Database/Models/SessionThread.swift
#	SessionMessagingKit/Jobs/Types/MessageReceiveJob.swift
#	SessionMessagingKit/Jobs/Types/MessageSendJob.swift
#	SessionMessagingKit/Jobs/Types/SendReadReceiptsJob.swift
#	SessionMessagingKit/Messages/Message.swift
#	SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+ReadReceipts.swift
#	SessionMessagingKit/Sending & Receiving/MessageSender+Convenience.swift
#	SessionMessagingKit/Sending & Receiving/MessageSender.swift
#	SessionMessagingKit/Shared Models/MentionInfo.swift
2023-02-21 11:11:06 +11:00
Morgan Pretty c8a199a8ba Fixed the remaining broken tests 2023-02-21 09:55:21 +11:00
Morgan Pretty f30b383bb8 Updated to the latest version of libSession-util
Updated the SharedConfigMessage type to have a TTL of 30 days
Updated the SnodeAPI to have a 'poll' method to be more consistent with the OpenGroupAPI (it also does multiple things now so is cleaner)
Added logic to limit the number of config messages to be retrieved per poll
Added the 'ValidatableResponse' protocol to standardise SnodeAPI response validation
Added the libSession version to the logs
Fixed an issue where the user profile pic wouldn't get synced correctly due to memory going out of scope
Fixed some threading issues
Refactored the thread variants to follow the updated terminology (will think about refactoring other code areas later)
Cleaned up the Combine error handling
Started fixing broken unit tests
2023-02-20 12:56:48 +11:00
RyanZhao ae6f609b41
Merge pull request #785 from RyanRory/fix-quoting-in-community-chats
Fix quoting in community chats
2023-02-20 10:05:32 +11:00
Ryan Zhao aca587be17 Merge branch 'dev' into fix-quoting-in-community-chats 2023-02-20 10:02:08 +11:00
Morgan Pretty e0f9be082a
Merge pull request #791 from mpretty-cyro/feature/pin-note-to-self-in-share-extension
Update the share extension to always show 'Note to Self' first
2023-02-20 08:45:56 +11:00
Morgan Pretty afc698e370
Merge pull request #790 from mpretty-cyro/fix/voice-recording-breaking-input
Fixed an issue where the voice recording could break the input view
2023-02-20 08:45:39 +11:00
Morgan Pretty a1ad69d407
Merge pull request #784 from mpretty-cyro/fix/remaining-reachability-oddities
Fixed a couple of reachability oddities and bugs
2023-02-20 08:45:11 +11:00
Morgan Pretty e4d6400375 Merge remote-tracking branch 'upstream/dev' into fix/remaining-reachability-oddities
# Conflicts:
#	Session/Meta/Translations/de.lproj/Localizable.strings
#	Session/Meta/Translations/en.lproj/Localizable.strings
#	Session/Meta/Translations/es.lproj/Localizable.strings
#	Session/Meta/Translations/fa.lproj/Localizable.strings
#	Session/Meta/Translations/fi.lproj/Localizable.strings
#	Session/Meta/Translations/fr.lproj/Localizable.strings
#	Session/Meta/Translations/hi.lproj/Localizable.strings
#	Session/Meta/Translations/hr.lproj/Localizable.strings
#	Session/Meta/Translations/id-ID.lproj/Localizable.strings
#	Session/Meta/Translations/it.lproj/Localizable.strings
#	Session/Meta/Translations/ja.lproj/Localizable.strings
#	Session/Meta/Translations/nl.lproj/Localizable.strings
#	Session/Meta/Translations/pl.lproj/Localizable.strings
#	Session/Meta/Translations/pt_BR.lproj/Localizable.strings
#	Session/Meta/Translations/ru.lproj/Localizable.strings
#	Session/Meta/Translations/si.lproj/Localizable.strings
#	Session/Meta/Translations/sk.lproj/Localizable.strings
#	Session/Meta/Translations/sv.lproj/Localizable.strings
#	Session/Meta/Translations/th.lproj/Localizable.strings
#	Session/Meta/Translations/vi-VN.lproj/Localizable.strings
#	Session/Meta/Translations/zh-Hant.lproj/Localizable.strings
#	Session/Meta/Translations/zh_CN.lproj/Localizable.strings
2023-02-20 08:44:56 +11:00
Morgan Pretty 507ab9f34f
Merge pull request #787 from mpretty-cyro/fix/warn-first-giphy-use
Added a warning prompt the first time someone uses Giphy
2023-02-20 08:40:28 +11:00
Morgan Pretty e40f99458a
Merge pull request #789 from mpretty-cyro/fix/broken-group-mentions
Fixed an issue where mentions weren't working in groups
2023-02-20 08:40:06 +11:00
Morgan Pretty 08b1e9a131 Started caching pending ReadReceipt messages to resolve an edge-case
Fixed an issue where read receipts could be sent for already read messages
Fixed an issue where the read state change might not update the UI
2023-02-15 15:11:57 +11:00
Morgan Pretty bdddfb35d7 Update the share extension to always show 'Note to Self' first 2023-02-15 12:03:26 +11:00
Morgan Pretty 275314c9fd Fixed an issue where the voice recording could break the input view 2023-02-15 11:53:57 +11:00
Morgan Pretty f68bbc2f0a Fixed an issue where mentions weren't working in groups 2023-02-15 10:08:41 +11:00
Morgan Pretty 3b8153edd2 Added a warning prompt the first time someone uses Giphy 2023-02-14 16:02:24 +11:00
Morgan Pretty 3344e58716 Cleaned up some logic around sync messages
Added logic to indicate when a sync message failed to send (and the ability to retry)
Added the retry/resync button to the long press message menu
Updated sync messages to run via the MessageSendJob
Updated the delivery status to always show on the last outgoing message
Updated the logic to update the delivery status when retrying to send a failed message
Removed the convoluted recursion logic for turning self-send messages into sync messages
2023-02-14 13:41:24 +11:00
ryanzhao f7911d7e14 Merge branch 'dev' into fix-quoting-in-community-chats 2023-02-14 09:37:56 +11:00
Ryan Zhao 62b1470b55 further clean up for message sender 2023-02-13 17:20:25 +11:00
Ryan Zhao 2f8ac7deaf update build & version number 2023-02-13 16:41:48 +11:00
Ryan Zhao 08de65f774 minor refactor 2023-02-13 16:39:59 +11:00
Ryan Zhao b271e9c4c9 update local open group message to save blinded author id 2023-02-13 11:55:55 +11:00
Ryan Zhao e5a4aec0ee Merge branch 'dev' into fix-quoting-in-community-chats 2023-02-13 10:25:12 +11:00
RyanZhao 06f42d9207
Merge pull request #783 from mpretty-cyro/fix/deletable-outgoing-community-messages
Fix deletable outgoing community messages
2023-02-13 10:22:08 +11:00
RyanZhao 4bec546d81
Merge pull request #781 from mpretty-cyro/fix/push-notification-reregistration
Update the SyncPushTokensJob to reregister every 12 hours
2023-02-13 10:21:52 +11:00
Morgan Pretty d020a7a05f Fixed a couple of reachability oddities and bugs
Updated the PathVC to indicate the network reachability
Updated messages sent to 'Note to Self' to properly indicate whether they were sent to the swarm
Fixed an issue where 'Note to Self' messages weren't actually getting sent to the swarm
2023-02-10 17:36:40 +11:00
Morgan Pretty 93d9f51140 Included a blinded id comparison for adding the delete action 2023-02-10 12:11:32 +11:00
ryanzhao a6fa53aaf0 fix #768 2023-02-09 16:53:29 +11:00
Morgan Pretty 2286d51db6 Update the SyncPushTokensJob to reregister every 12 hours 2023-02-08 17:46:43 +11:00
Morgan Pretty 9a25688146
Merge pull request #780 from oxen-io/fix/incorrect-fileserver-size-bug
Fix incorrect fileserver size bug
2023-02-08 17:11:25 +11:00
Morgan Pretty 1b97bb6aa8 Fixed an incorrect size in the FileServerAPI which could result in upload errors 2023-02-08 09:19:06 +11:00
Morgan Pretty 617eae6858 Increased build and version numbers 2023-02-06 13:11:20 +11:00
Morgan Pretty cd9a6eb7a1
Merge pull request #777 from mpretty-cyro/fix/url-detection
Fixed a number of bugs
2023-02-06 13:09:18 +11:00
Morgan Pretty eb3c31d911 Fixed a few more bugs
Updated the PathStatusView to take Reachability into account for it's status indicator
Fixed an issue where a user couldn't delete their own messages sent to a community
Fixed an issue where the app didn't require a passcode to be set to use screen lock
Fixed an issue where the delivery status on a sending message might not update when on the conversation screen
Fixed an issue where read receipts weren't working
2023-02-06 12:51:34 +11:00
Morgan Pretty fea2c6cb43 Fixed an odd UI glitch which could occur when message cells updated 2023-02-06 09:33:08 +11:00
Morgan Pretty 54a5827926 Fixed url detection 2023-02-03 11:45:05 +11:00
Morgan Pretty 345b693225 Fixed build issues, bugs, added unit tests and added the ConvoInfoVolatile handling
Added the unit tests for the ConvoInfoVolatile
Added icons to the swipe actions
Updated jobs to be able to be prioritised (and added priorities to the launch jobs to avoid some odd behaviours)
Fixed some build issues resulting from merging
Fixed an issue with the open group pubkey encoding
Fixed an issue where an imageView could get it's image set on a background thread
Fixed a bug where the swipe actions weren't getting theming applied when the theme changed
Fixed a bug where scheduling code after the next db transaction completes couldn't be nested (resulting in code not running)
Fixed a bug where the PagedDataObserver might not notify of unobserved changes if they reverted previous unobserved changes
Fixed a couple of incorrect SQL ordering use cases (was overriding instead of appending ordering)
Fixed an issue where the app would re-upload the avatar every launch (only affected this branch)
Fixed an issue where the home screen wouldn't update group avatars when their profile data changed
2023-02-01 18:12:36 +11:00
ryanzhao 54ef07402b update the build number 2023-01-31 09:56:01 +11:00
ryanzhao 41f1b14066 bump up version & build number 2023-01-27 16:09:20 +11:00
Morgan Pretty 07046db4b6 Updated to the latest libSession, fixed a few bugs
Added the logic to sync the last read state for a conversation
Added the legacyClosedGroup thread variant
Updated the config handling to be able to update the 'mergeResult' and require a dump/push due to local changes
Fixed an issue where the name on the CallVC could go off the screen
Fixed an issue where OpenGroup info could sometimes incorrectly get deleted
Fixed an issue where the ConfirmationModal on a SessionTableViewController wouldn't trigger it's action
Fixed an issue where the config handling could incorrectly trigger a contacts update when there were no changes
2023-01-27 14:51:04 +11:00
Morgan Pretty 4f8fb63f2c Merge remote-tracking branch 'upstream/dev' into feature/updated-user-config-handling
# Conflicts:
#	Session/Media Viewing & Editing/PhotoCapture.swift
#	Session/Meta/Translations/de.lproj/Localizable.strings
#	Session/Meta/Translations/en.lproj/Localizable.strings
#	Session/Meta/Translations/es.lproj/Localizable.strings
#	Session/Meta/Translations/fa.lproj/Localizable.strings
#	Session/Meta/Translations/fi.lproj/Localizable.strings
#	Session/Meta/Translations/fr.lproj/Localizable.strings
#	Session/Meta/Translations/hi.lproj/Localizable.strings
#	Session/Meta/Translations/hr.lproj/Localizable.strings
#	Session/Meta/Translations/id-ID.lproj/Localizable.strings
#	Session/Meta/Translations/it.lproj/Localizable.strings
#	Session/Meta/Translations/ja.lproj/Localizable.strings
#	Session/Meta/Translations/nl.lproj/Localizable.strings
#	Session/Meta/Translations/pl.lproj/Localizable.strings
#	Session/Meta/Translations/pt_BR.lproj/Localizable.strings
#	Session/Meta/Translations/ru.lproj/Localizable.strings
#	Session/Meta/Translations/si.lproj/Localizable.strings
#	Session/Meta/Translations/sk.lproj/Localizable.strings
#	Session/Meta/Translations/sv.lproj/Localizable.strings
#	Session/Meta/Translations/th.lproj/Localizable.strings
#	Session/Meta/Translations/vi-VN.lproj/Localizable.strings
#	Session/Meta/Translations/zh-Hant.lproj/Localizable.strings
#	Session/Meta/Translations/zh_CN.lproj/Localizable.strings
#	Session/Notifications/AppNotifications.swift
#	Session/Onboarding/RestoreVC.swift
#	Session/Shared/SessionTableViewController.swift
#	Session/Shared/SessionTableViewModel.swift
#	SessionMessagingKit/Calls/WebRTCSession.swift
#	SessionMessagingKit/Database/Models/Attachment.swift
#	SessionMessagingKit/Database/Models/DisappearingMessageConfiguration.swift
#	SessionMessagingKit/File Server/FileServerAPI.swift
#	SessionMessagingKit/Jobs/Types/AttachmentDownloadJob.swift
#	SessionMessagingKit/Open Groups/OpenGroupAPI.swift
#	SessionMessagingKit/Sending & Receiving/Message Handling/MessageSender+ClosedGroups.swift
#	SessionMessagingKit/Sending & Receiving/MessageReceiver.swift
#	SessionMessagingKit/Sending & Receiving/MessageSender.swift
#	SessionSnodeKit/OnionRequestAPI.swift
#	SessionSnodeKit/SnodeAPI.swift
#	SessionUtilitiesKit/Database/Models/Identity.swift
#	SessionUtilitiesKit/JobRunner/JobRunner.swift
2023-01-27 14:26:17 +11:00
RyanZhao a5cc813dd5
Merge pull request #769 from mpretty-cyro/feature/read-status-updates
Added the updated delivery status UI
2023-01-27 11:24:10 +11:00
RyanZhao 1e435a2b79
Merge pull request #771 from mpretty-cyro/fix/job-runner-tweaks
JobRunner Tweaks
2023-01-27 11:23:43 +11:00
Morgan Pretty 5659b55eae Fixed a bug where a stale flag was used to determine how to send a push notification 2023-01-24 17:37:30 +11:00
Morgan Pretty d38a44515d Made some tweaks to help properly stop the JobRunner 2023-01-24 17:25:46 +11:00
Morgan Pretty 349dc03e17 Added a secondary fallback for the timestamp in the context menu 2023-01-18 13:21:40 +11:00