Morgan Pretty
ea95508a92
Fixed unit tests, minor code cleanup
...
• Fixed the ThreadSettingsViewModel unit tests
• Fixed a rare issue which could occur where the libSession network change callbacks could be called before the network finished initialising and being stored in dependencies
• Hardcoded a bunch of future groups functionality strings (so at least there is something for testing)
• Updated the 'performAndPushChange' function to be on the LibSessionCacheType so it can be mocked
• Updated the Mock logic to support specifying a dynamic return value via a closure
• Tweaked some variable naming to remove ambiguity
7 months ago
Morgan Pretty
bbadc038f6
Merge remote-tracking branch 'RyanFork/strings' into feature/groups-rebuild
...
# Conflicts:
# Scripts/LintLocalizableStrings.swift
# Session.xcodeproj/project.pbxproj
# Session.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
# Session.xcodeproj/xcshareddata/xcschemes/Session.xcscheme
# Session/Calls/Call Management/SessionCall.swift
# Session/Calls/Call Management/SessionCallManager.swift
# Session/Calls/CallVC.swift
# Session/Closed Groups/EditClosedGroupVC.swift
# Session/Closed Groups/NewClosedGroupVC.swift
# Session/Conversations/Context Menu/ContextMenuVC+Action.swift
# Session/Conversations/Context Menu/ContextMenuVC+ActionView.swift
# Session/Conversations/ConversationVC+Interaction.swift
# Session/Conversations/ConversationVC.swift
# Session/Conversations/ConversationViewModel.swift
# Session/Conversations/Emoji Picker/EmojiPickerCollectionView.swift
# Session/Conversations/Message Cells/CallMessageCell.swift
# Session/Conversations/Message Cells/Content Views/MediaAlbumView.swift
# Session/Conversations/Message Cells/Content Views/MediaView.swift
# Session/Conversations/Message Cells/Content Views/QuoteView.swift
# Session/Conversations/Message Cells/Content Views/ReactionContainerView.swift
# Session/Conversations/Message Cells/Content Views/SwiftUI/QuoteView_SwiftUI.swift
# Session/Conversations/Message Cells/InfoMessageCell.swift
# Session/Conversations/Message Cells/VisibleMessageCell.swift
# Session/Conversations/Settings/ThreadDisappearingMessagesSettingsViewModel.swift
# Session/Conversations/Settings/ThreadSettingsViewModel.swift
# Session/Conversations/Views & Modals/ConversationTitleView.swift
# Session/Conversations/Views & Modals/MessageRequestFooterView.swift
# Session/Emoji/Emoji+Available.swift
# Session/Home/GlobalSearch/GlobalSearchViewController.swift
# Session/Home/HomeVC.swift
# Session/Home/HomeViewModel.swift
# Session/Home/Message Requests/MessageRequestsViewModel.swift
# Session/Home/New Conversation/NewConversationVC.swift
# Session/Home/New Conversation/NewConversationViewModel.swift
# Session/Home/New Conversation/NewDMVC.swift
# Session/Media Viewing & Editing/DocumentTitleViewController.swift
# Session/Media Viewing & Editing/GIFs/GifPickerCell.swift
# Session/Media Viewing & Editing/GIFs/GifPickerLayout.swift
# Session/Media Viewing & Editing/GIFs/GifPickerViewController.swift
# Session/Media Viewing & Editing/GIFs/GiphyAPI.swift
# Session/Media Viewing & Editing/GIFs/GiphyDownloader.swift
# Session/Media Viewing & Editing/ImagePickerController.swift
# Session/Media Viewing & Editing/MediaTileViewController.swift
# Session/Media Viewing & Editing/MessageInfoScreen.swift
# Session/Media Viewing & Editing/PhotoCapture.swift
# Session/Media Viewing & Editing/PhotoCaptureViewController.swift
# Session/Media Viewing & Editing/PhotoCollectionPickerViewModel.swift
# Session/Media Viewing & Editing/PhotoLibrary.swift
# Session/Media Viewing & Editing/SendMediaNavigationController.swift
# Session/Meta/AppDelegate.swift
# Session/Meta/AppEnvironment.swift
# Session/Meta/MainAppContext.swift
# Session/Meta/SessionApp.swift
# Session/Meta/Translations/ar.lproj/Localizable.strings
# Session/Meta/Translations/be.lproj/Localizable.strings
# Session/Meta/Translations/bg.lproj/Localizable.strings
# Session/Meta/Translations/bn.lproj/Localizable.strings
# Session/Meta/Translations/cs.lproj/Localizable.strings
# Session/Meta/Translations/da.lproj/Localizable.strings
# Session/Meta/Translations/de.lproj/Localizable.strings
# Session/Meta/Translations/el.lproj/Localizable.strings
# Session/Meta/Translations/en.lproj/Localizable.strings
# Session/Meta/Translations/eo.lproj/Localizable.strings
# Session/Meta/Translations/es-ES.lproj/Localizable.strings
# Session/Meta/Translations/fa.lproj/Localizable.strings
# Session/Meta/Translations/fi.lproj/Localizable.strings
# Session/Meta/Translations/fil.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/hu.lproj/Localizable.strings
# Session/Meta/Translations/id.lproj/Localizable.strings
# Session/Meta/Translations/it.lproj/Localizable.strings
# Session/Meta/Translations/ja.lproj/Localizable.strings
# Session/Meta/Translations/ko.lproj/Localizable.strings
# Session/Meta/Translations/ku.lproj/Localizable.strings
# Session/Meta/Translations/lt.lproj/Localizable.strings
# Session/Meta/Translations/lv.lproj/Localizable.strings
# Session/Meta/Translations/ne-NP.lproj/Localizable.strings
# Session/Meta/Translations/nl.lproj/Localizable.strings
# Session/Meta/Translations/no.lproj/Localizable.strings
# Session/Meta/Translations/pl.lproj/Localizable.strings
# Session/Meta/Translations/pt-BR.lproj/Localizable.strings
# Session/Meta/Translations/pt-PT.lproj/Localizable.strings
# Session/Meta/Translations/ro.lproj/Localizable.strings
# Session/Meta/Translations/ru.lproj/Localizable.strings
# Session/Meta/Translations/si-LK.lproj/Localizable.strings
# Session/Meta/Translations/sk.lproj/Localizable.strings
# Session/Meta/Translations/sl.lproj/Localizable.strings
# Session/Meta/Translations/sv-SE.lproj/Localizable.strings
# Session/Meta/Translations/th.lproj/Localizable.strings
# Session/Meta/Translations/tr.lproj/Localizable.strings
# Session/Meta/Translations/uk.lproj/Localizable.strings
# Session/Meta/Translations/vi.lproj/Localizable.strings
# Session/Meta/Translations/zh-CN.lproj/Localizable.strings
# Session/Meta/Translations/zh-TW.lproj/Localizable.strings
# Session/Notifications/NotificationPresenter.swift
# Session/Notifications/PushRegistrationManager.swift
# Session/Notifications/SyncPushTokensJob.swift
# Session/Notifications/UserNotificationsAdaptee.swift
# Session/Onboarding/DisplayNameVC.swift
# Session/Onboarding/FakeChatView.swift
# Session/Onboarding/LandingVC.swift
# Session/Onboarding/LinkDeviceVC.swift
# Session/Onboarding/Onboarding.swift
# Session/Onboarding/PNModeVC.swift
# Session/Onboarding/RegisterVC.swift
# Session/Onboarding/RestoreVC.swift
# Session/Onboarding/SeedVC.swift
# Session/Open Groups/JoinOpenGroupVC.swift
# Session/Path/PathVC.swift
# Session/Settings/BlockedContactsViewModel.swift
# Session/Settings/ConversationSettingsViewModel.swift
# Session/Settings/HelpViewModel.swift
# Session/Settings/NotificationSettingsViewModel.swift
# Session/Settings/NukeDataModal.swift
# Session/Settings/PrivacySettingsViewModel.swift
# Session/Settings/QRCodeVC.swift
# Session/Settings/SeedModal.swift
# Session/Settings/SettingsViewModel.swift
# Session/Settings/Views/VersionFooterView.swift
# Session/Shared/FullConversationCell.swift
# Session/Shared/OWSBezierPathView.m
# Session/Shared/ScanQRCodeWrapperVC.swift
# Session/Shared/SessionCarouselView+SwiftUI.swift
# Session/Shared/SessionTableViewController.swift
# Session/Shared/Types/NavigatableState.swift
# Session/Shared/Types/ObservableTableSource.swift
# Session/Shared/Types/SessionCell+Accessory.swift
# Session/Shared/Views/SessionCell+AccessoryView.swift
# Session/Utilities/BackgroundPoller.swift
# Session/Utilities/IP2Country.swift
# Session/Utilities/MentionUtilities.swift
# Session/Utilities/MockDataGenerator.swift
# Session/Utilities/UIApplication+OWS.swift
# Session/Utilities/UIContextualAction+Utilities.swift
# SessionMessagingKit/Crypto/Crypto+Attachments.swift
# SessionMessagingKit/Crypto/Crypto+SessionMessagingKit.swift
# SessionMessagingKit/Database/Migrations/_004_RemoveLegacyYDB.swift
# SessionMessagingKit/Database/Migrations/_014_GenerateInitialUserConfigDumps.swift
# SessionMessagingKit/Database/Migrations/_015_BlockCommunityMessageRequests.swift
# SessionMessagingKit/Database/Migrations/_018_DisappearingMessagesConfiguration.swift
# SessionMessagingKit/Database/Models/Attachment.swift
# SessionMessagingKit/Database/Models/DisappearingMessageConfiguration.swift
# SessionMessagingKit/Database/Models/Interaction.swift
# SessionMessagingKit/Database/Models/LinkPreview.swift
# SessionMessagingKit/Database/Models/Profile.swift
# SessionMessagingKit/Database/Models/RecipientState.swift
# SessionMessagingKit/Database/Models/SessionThread.swift
# SessionMessagingKit/Jobs/AttachmentDownloadJob.swift
# SessionMessagingKit/Jobs/AttachmentUploadJob.swift
# SessionMessagingKit/Jobs/CheckForAppUpdatesJob.swift
# SessionMessagingKit/Jobs/ConfigMessageReceiveJob.swift
# SessionMessagingKit/Jobs/ConfigurationSyncJob.swift
# SessionMessagingKit/Jobs/DisappearingMessagesJob.swift
# SessionMessagingKit/Jobs/MessageSendJob.swift
# SessionMessagingKit/Jobs/RetrieveDefaultOpenGroupRoomsJob.swift
# SessionMessagingKit/Jobs/Types/GroupLeavingJob.swift
# SessionMessagingKit/Jobs/UpdateProfilePictureJob.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+Contacts.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+ConvoInfoVolatile.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+Shared.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+UserGroups.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+UserProfile.swift
# SessionMessagingKit/LibSession/LibSession+SessionMessagingKit.swift
# SessionMessagingKit/Messages/Control Messages/ClosedGroupControlMessage.swift
# SessionMessagingKit/Messages/Control Messages/ExpirationTimerUpdate.swift
# SessionMessagingKit/Messages/Message.swift
# SessionMessagingKit/Open Groups/Crypto/Crypto+OpenGroupAPI.swift
# SessionMessagingKit/Open Groups/Models/SOGSMessage.swift
# SessionMessagingKit/Open Groups/OpenGroupAPI.swift
# SessionMessagingKit/Open Groups/OpenGroupManager.swift
# SessionMessagingKit/Sending & Receiving/Attachments/SignalAttachment.swift
# SessionMessagingKit/Sending & Receiving/Attachments/ThumbnailService.swift
# SessionMessagingKit/Sending & Receiving/Errors/MessageSenderError.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+Calls.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+DataExtractionNotification.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+ExpirationTimers.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+LegacyClosedGroups.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+MessageRequests.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+VisibleMessages.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageSender+LegacyClosedGroups.swift
# SessionMessagingKit/Sending & Receiving/MessageReceiver.swift
# SessionMessagingKit/Sending & Receiving/MessageSender+Convenience.swift
# SessionMessagingKit/Sending & Receiving/MessageSender.swift
# SessionMessagingKit/Sending & Receiving/Notifications/Models/SubscribeRequest.swift
# SessionMessagingKit/Sending & Receiving/Notifications/Models/UnsubscribeRequest.swift
# SessionMessagingKit/Sending & Receiving/Notifications/PushNotificationAPI.swift
# SessionMessagingKit/Sending & Receiving/Pollers/ClosedGroupPoller.swift
# SessionMessagingKit/Sending & Receiving/Pollers/CurrentUserPoller.swift
# SessionMessagingKit/Sending & Receiving/Pollers/OpenGroupAPI+Poller.swift
# SessionMessagingKit/Sending & Receiving/Pollers/Poller.swift
# SessionMessagingKit/Shared Models/MessageViewModel.swift
# SessionMessagingKit/Utilities/Preferences.swift
# SessionMessagingKit/Utilities/ProfileManager.swift
# SessionMessagingKit/Utilities/ProfileManagerError.swift
# SessionMessagingKitTests/Jobs/MessageSendJobSpec.swift
# SessionMessagingKitTests/LibSession/LibSessionSpec.swift
# SessionMessagingKitTests/LibSession/LibSessionUtilSpec.swift
# SessionMessagingKitTests/LibSession/Utilities/LibSessionTypeConversionUtilitiesSpec.swift
# SessionMessagingKitTests/Open Groups/Models/SOGSMessageSpec.swift
# SessionMessagingKitTests/Open Groups/OpenGroupAPISpec.swift
# SessionMessagingKitTests/Open Groups/OpenGroupManagerSpec.swift
# SessionMessagingKitTests/Utilities/CryptoSMKSpec.swift
# SessionNotificationServiceExtension/NSENotificationPresenter.swift
# SessionNotificationServiceExtension/NotificationServiceExtension.swift
# SessionShareExtension/ShareAppExtensionContext.swift
# SessionShareExtension/ShareNavController.swift
# SessionShareExtension/ThreadPickerVC.swift
# SessionSnodeKit/Crypto/Crypto+SessionSnodeKit.swift
# SessionSnodeKit/Database/Models/SnodeReceivedMessageInfo.swift
# SessionSnodeKit/LibSession/LibSession+Networking.swift
# SessionSnodeKit/Models/DeleteAllBeforeResponse.swift
# SessionSnodeKit/Models/DeleteAllMessagesResponse.swift
# SessionSnodeKit/Models/DeleteMessagesResponse.swift
# SessionSnodeKit/Models/RevokeSubkeyRequest.swift
# SessionSnodeKit/Models/RevokeSubkeyResponse.swift
# SessionSnodeKit/Models/SendMessageResponse.swift
# SessionSnodeKit/Models/SnodeAuthenticatedRequestBody.swift
# SessionSnodeKit/Models/UpdateExpiryAllResponse.swift
# SessionSnodeKit/Models/UpdateExpiryResponse.swift
# SessionSnodeKit/Networking/Network+OnionRequest.swift
# SessionSnodeKit/Networking/PreparedRequest+OnionRequest.swift
# SessionSnodeKit/Networking/SnodeAPI.swift
# SessionSnodeKit/Types/IPv4.swift
# SessionSnodeKit/Types/PreparedRequest.swift
# SessionSnodeKit/Types/ProxiedContentDownloader.swift
# SessionSnodeKit/Types/ValidatableResponse.swift
# SessionSnodeKitTests/Types/BencodeResponseSpec.swift
# SessionSnodeKitTests/_TestUtilities/SSKMockedExtensions.swift
# SessionTests/Conversations/Settings/ThreadDisappearingMessagesViewModelSpec.swift
# SessionTests/Conversations/Settings/ThreadSettingsViewModelSpec.swift
# SessionTests/Database/DatabaseSpec.swift
# SessionTests/Settings/NotificationContentViewModelSpec.swift
# SessionUIKit/Components/ConfirmationModal.swift
# SessionUIKit/Components/PlaceholderIcon.swift
# SessionUIKit/Components/ToastController.swift
# SessionUIKit/Components/TopBannerController.swift
# SessionUIKit/Style Guide/ThemeManager.swift
# SessionUIKit/Style Guide/Values.swift
# SessionUtilitiesKit/Crypto/Crypto+SessionUtilitiesKit.swift
# SessionUtilitiesKit/Crypto/Crypto.swift
# SessionUtilitiesKit/Database/Models/Identity.swift
# SessionUtilitiesKit/Database/Storage.swift
# SessionUtilitiesKit/Database/Types/Migration.swift
# SessionUtilitiesKit/General/AppContext.swift
# SessionUtilitiesKit/General/Data+Utilities.swift
# SessionUtilitiesKit/General/Features.swift
# SessionUtilitiesKit/General/FileSystem.swift
# SessionUtilitiesKit/General/General.swift
# SessionUtilitiesKit/General/Logging.swift
# SessionUtilitiesKit/General/String+Trimming.swift
# SessionUtilitiesKit/General/String+Utilities.swift
# SessionUtilitiesKit/General/UIEdgeInsets.swift
# SessionUtilitiesKit/JobRunner/JobRunner.swift
# SessionUtilitiesKit/LibSession/LibSession.swift
# SessionUtilitiesKit/Media/Data+Image.swift
# SessionUtilitiesKit/Media/DataSource.swift
# SessionUtilitiesKit/Media/MediaUtils.swift
# SessionUtilitiesKit/Media/MimeTypeUtil.swift
# SessionUtilitiesKit/Meta/SessionUtilitiesKit.h
# SessionUtilitiesKit/Networking/Network.swift
# SessionUtilitiesKit/Types/Threading.swift
# SessionUtilitiesKit/Utilities/Bencode.swift
# SessionUtilitiesKit/Utilities/UIImage+Utilities.swift
# SessionUtilitiesKitTests/Database/Models/IdentitySpec.swift
# SessionUtilitiesKitTests/Database/Utilities/PersistableRecordUtilitiesSpec.swift
# SessionUtilitiesKitTests/General/SessionIdSpec.swift
# SessionUtilitiesKitTests/JobRunner/JobRunnerSpec.swift
# SessionUtilitiesKitTests/Utilities/BencodeDecoderSpec.swift
# SessionUtilitiesKitTests/Utilities/BencodeResponseSpec.swift
# SessionUtilitiesKitTests/Utilities/BencodeSpec.swift
# SignalUtilitiesKit/Media Viewing & Editing/Attachment Approval/AttachmentApprovalInputAccessoryView.swift
# SignalUtilitiesKit/Media Viewing & Editing/Attachment Approval/AttachmentApprovalViewController.swift
# SignalUtilitiesKit/Media Viewing & Editing/Attachment Approval/AttachmentCaptionToolbar.swift
# SignalUtilitiesKit/Media Viewing & Editing/Image Editing/ImageEditorModel.swift
# SignalUtilitiesKit/Media Viewing & Editing/MediaMessageView.swift
# SignalUtilitiesKit/Meta/SignalUtilitiesKit.h
# SignalUtilitiesKit/Screen Lock/ScreenLock.swift
# SignalUtilitiesKit/Utilities/AppSetup.swift
# SignalUtilitiesKit/Utilities/Bench.swift
# SignalUtilitiesKit/Utilities/NoopNotificationsManager.swift
# SignalUtilitiesKit/Utilities/SwiftSingletons.swift
# _SharedTestUtilities/CommonMockedExtensions.swift
# _SharedTestUtilities/GRDBExtensions.swift
# _SharedTestUtilities/MockCrypto.swift
# _SharedTestUtilities/MockJobRunner.swift
# _SharedTestUtilities/Mocked.swift
# _SharedTestUtilities/SynchronousStorage.swift
7 months ago
Morgan Pretty
2032dafc74
Merge remote-tracking branch 'upstream/dev' into feature/swift-package-manager
...
# Conflicts:
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+ExpirationTimers.swift
# SessionMessagingKit/Sending & Receiving/MessageReceiver.swift
# SessionSnodeKit/Networking/SnodeAPI.swift
# SessionUtilitiesKit/Media/DataSource.h
# SessionUtilitiesKit/Media/DataSource.m
9 months ago
Morgan Pretty
ce01f128f3
Replaced Cocoapods with Swift Package Manager for dependency management
9 months ago
Ryan ZHAO
b198699c4f
refactor and clean up on Expiration Timer Update messages
9 months ago
Ryan ZHAO
07389bf592
clean up stage 1
9 months ago
Morgan Pretty
f1133a4a5c
Progressed a bunch of changes to updated groups behaviours
...
• Updated the 'createGroup' function to trigger the initial rekey directly
• Updated the protobufs for the scope changes
• Updated the logic to split the 'member left' message into two (logic and UI) to better handle disappearing messages
• Updated the disappearing messages behaviour for updated groups so control messages aren't impacted by disappearing message settings
• Updated the logic to handle the updated group promotion message as an invitation
• Cleaned up some logic (unneeded optionals, closures where publishers would work better)
10 months ago
Morgan Pretty
d96ef57273
Merge remote-tracking branch 'origin/feature/swift-package-manager' into feature/groups-rebuild
...
# Conflicts:
# Podfile
# Podfile.lock
# Session.xcodeproj/project.pbxproj
# Session/Calls/Call Management/SessionCall.swift
# Session/Calls/Call Management/SessionCallManager.swift
# Session/Calls/CallVC.swift
# Session/Conversations/ConversationVC+Interaction.swift
# Session/Conversations/ConversationVC.swift
# Session/Conversations/ConversationViewModel.swift
# Session/Conversations/Message Cells/Content Views/MediaAlbumView.swift
# Session/Conversations/Settings/ThreadSettingsViewModel.swift
# Session/Emoji/Emoji+Available.swift
# Session/Home/GlobalSearch/GlobalSearchViewController.swift
# Session/Home/HomeVC.swift
# Session/Home/HomeViewModel.swift
# Session/Home/New Conversation/NewDMVC.swift
# Session/Media Viewing & Editing/DocumentTitleViewController.swift
# Session/Media Viewing & Editing/GIFs/GifPickerCell.swift
# Session/Media Viewing & Editing/GIFs/GifPickerViewController.swift
# Session/Media Viewing & Editing/ImagePickerController.swift
# Session/Media Viewing & Editing/MediaTileViewController.swift
# Session/Media Viewing & Editing/PhotoCapture.swift
# Session/Media Viewing & Editing/PhotoCaptureViewController.swift
# Session/Media Viewing & Editing/PhotoLibrary.swift
# Session/Media Viewing & Editing/SendMediaNavigationController.swift
# Session/Meta/AppDelegate.swift
# Session/Meta/AppEnvironment.swift
# Session/Meta/MainAppContext.swift
# Session/Meta/SessionApp.swift
# Session/Notifications/NotificationPresenter.swift
# Session/Notifications/PushRegistrationManager.swift
# Session/Notifications/SyncPushTokensJob.swift
# Session/Notifications/UserNotificationsAdaptee.swift
# Session/Onboarding/LandingVC.swift
# Session/Onboarding/LinkDeviceVC.swift
# Session/Onboarding/Onboarding.swift
# Session/Onboarding/RegisterVC.swift
# Session/Onboarding/RestoreVC.swift
# Session/Settings/HelpViewModel.swift
# Session/Settings/NukeDataModal.swift
# Session/Shared/FullConversationCell.swift
# Session/Shared/OWSBezierPathView.m
# Session/Utilities/BackgroundPoller.swift
# Session/Utilities/MockDataGenerator.swift
# SessionMessagingKit/Configuration.swift
# SessionMessagingKit/Crypto/Crypto+SessionMessagingKit.swift
# SessionMessagingKit/Database/Migrations/_004_RemoveLegacyYDB.swift
# SessionMessagingKit/Database/Migrations/_014_GenerateInitialUserConfigDumps.swift
# SessionMessagingKit/Database/Migrations/_015_BlockCommunityMessageRequests.swift
# SessionMessagingKit/Database/Migrations/_018_DisappearingMessagesConfiguration.swift
# SessionMessagingKit/Database/Models/Attachment.swift
# SessionMessagingKit/Database/Models/DisappearingMessageConfiguration.swift
# SessionMessagingKit/Database/Models/Interaction.swift
# SessionMessagingKit/Database/Models/Profile.swift
# SessionMessagingKit/Database/Models/SessionThread.swift
# SessionMessagingKit/File Server/FileServerAPI.swift
# SessionMessagingKit/Jobs/AttachmentDownloadJob.swift
# SessionMessagingKit/Jobs/CheckForAppUpdatesJob.swift
# SessionMessagingKit/Jobs/DisappearingMessagesJob.swift
# SessionMessagingKit/Jobs/FailedMessageSendsJob.swift
# SessionMessagingKit/Jobs/MessageSendJob.swift
# SessionMessagingKit/Jobs/Types/GroupLeavingJob.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+Contacts.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+ConvoInfoVolatile.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+Shared.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+UserGroups.swift
# SessionMessagingKit/LibSession/LibSession+SessionMessagingKit.swift
# SessionMessagingKit/Messages/Message.swift
# SessionMessagingKit/Open Groups/Crypto/Crypto+OpenGroupAPI.swift
# SessionMessagingKit/Open Groups/Models/SOGSMessage.swift
# SessionMessagingKit/Open Groups/OpenGroupAPI.swift
# SessionMessagingKit/Open Groups/OpenGroupManager.swift
# SessionMessagingKit/Sending & Receiving/Attachments/SignalAttachment.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+ExpirationTimers.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+LegacyClosedGroups.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+VisibleMessages.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageSender+LegacyClosedGroups.swift
# SessionMessagingKit/Sending & Receiving/MessageReceiver.swift
# SessionMessagingKit/Sending & Receiving/MessageSender+Convenience.swift
# SessionMessagingKit/Sending & Receiving/MessageSender.swift
# SessionMessagingKit/Sending & Receiving/Notifications/Models/SubscribeRequest.swift
# SessionMessagingKit/Sending & Receiving/Notifications/Models/UnsubscribeRequest.swift
# SessionMessagingKit/Sending & Receiving/Notifications/PushNotificationAPI.swift
# SessionMessagingKit/Sending & Receiving/Pollers/CurrentUserPoller.swift
# SessionMessagingKit/Sending & Receiving/Pollers/GroupPoller.swift
# SessionMessagingKit/Sending & Receiving/Pollers/OpenGroupAPI+Poller.swift
# SessionMessagingKit/Sending & Receiving/Pollers/Poller.swift
# SessionMessagingKit/Utilities/ProfileManager.swift
# SessionMessagingKitTests/Jobs/MessageSendJobSpec.swift
# SessionMessagingKitTests/LibSession/LibSessionSpec.swift
# SessionMessagingKitTests/LibSession/LibSessionUtilSpec.swift
# SessionMessagingKitTests/Open Groups/Models/SOGSMessageSpec.swift
# SessionMessagingKitTests/Open Groups/OpenGroupAPISpec.swift
# SessionMessagingKitTests/Open Groups/OpenGroupManagerSpec.swift
# SessionMessagingKitTests/Utilities/CryptoSMKSpec.swift
# SessionMessagingKitTests/_TestUtilities/MockOGMCache.swift
# SessionNotificationServiceExtension/NSENotificationPresenter.swift
# SessionNotificationServiceExtension/NotificationServiceExtension.swift
# SessionShareExtension/ShareAppExtensionContext.swift
# SessionShareExtension/ShareNavController.swift
# SessionShareExtension/ThreadPickerVC.swift
# SessionSnodeKit/Crypto/Crypto+SessionSnodeKit.swift
# SessionSnodeKit/Models/DeleteAllBeforeResponse.swift
# SessionSnodeKit/Models/DeleteAllMessagesResponse.swift
# SessionSnodeKit/Models/DeleteMessagesResponse.swift
# SessionSnodeKit/Models/RevokeSubkeyRequest.swift
# SessionSnodeKit/Models/RevokeSubkeyResponse.swift
# SessionSnodeKit/Models/SendMessageResponse.swift
# SessionSnodeKit/Models/SnodeAuthenticatedRequestBody.swift
# SessionSnodeKit/Models/UpdateExpiryAllResponse.swift
# SessionSnodeKit/Models/UpdateExpiryResponse.swift
# SessionSnodeKit/Networking/SnodeAPI.swift
# SessionTests/Conversations/Settings/ThreadDisappearingMessagesViewModelSpec.swift
# SessionTests/Conversations/Settings/ThreadSettingsViewModelSpec.swift
# SessionTests/Database/DatabaseSpec.swift
# SessionTests/Settings/NotificationContentViewModelSpec.swift
# SessionUIKit/Components/ToastController.swift
# SessionUIKit/Style Guide/Values.swift
# SessionUtilitiesKit/Crypto/Crypto+SessionUtilitiesKit.swift
# SessionUtilitiesKit/Crypto/Crypto.swift
# SessionUtilitiesKit/Database/Models/Identity.swift
# SessionUtilitiesKit/Database/Models/Job.swift
# SessionUtilitiesKit/Database/Storage.swift
# SessionUtilitiesKit/Database/Types/Migration.swift
# SessionUtilitiesKit/General/AppContext.swift
# SessionUtilitiesKit/General/Data+Utilities.swift
# SessionUtilitiesKit/General/Logging.swift
# SessionUtilitiesKit/General/SNUserDefaults.swift
# SessionUtilitiesKit/General/String+Trimming.swift
# SessionUtilitiesKit/General/String+Utilities.swift
# SessionUtilitiesKit/General/TimestampUtils.swift
# SessionUtilitiesKit/General/UIEdgeInsets.swift
# SessionUtilitiesKit/JobRunner/JobRunner.swift
# SessionUtilitiesKit/LibSession/LibSessionError.swift
# SessionUtilitiesKit/Media/DataSource.swift
# SessionUtilitiesKit/Meta/SessionUtilitiesKit.h
# SessionUtilitiesKit/Networking/NetworkType.swift
# SessionUtilitiesKit/Networking/ProxiedContentDownloader.swift
# SessionUtilitiesKit/Utilities/BackgroundTaskManager.swift
# SessionUtilitiesKit/Utilities/BencodeResponse.swift
# SessionUtilitiesKit/Utilities/CExceptionHelper.mm
# SessionUtilitiesKit/Utilities/FileManagerType.swift
# SessionUtilitiesKit/Utilities/KeychainStorageType.swift
# SessionUtilitiesKitTests/Database/Models/IdentitySpec.swift
# SessionUtilitiesKitTests/Database/Utilities/PersistableRecordUtilitiesSpec.swift
# SessionUtilitiesKitTests/General/SessionIdSpec.swift
# SessionUtilitiesKitTests/JobRunner/JobRunnerSpec.swift
# SignalUtilitiesKit/Configuration.swift
# SignalUtilitiesKit/Media Viewing & Editing/Attachment Approval/AttachmentApprovalInputAccessoryView.swift
# SignalUtilitiesKit/Media Viewing & Editing/Attachment Approval/AttachmentApprovalViewController.swift
# SignalUtilitiesKit/Media Viewing & Editing/Attachment Approval/AttachmentTextToolbar.swift
# SignalUtilitiesKit/Media Viewing & Editing/Image Editing/ImageEditorCropViewController.swift
# SignalUtilitiesKit/Media Viewing & Editing/Image Editing/ImageEditorModel.swift
# SignalUtilitiesKit/Media Viewing & Editing/MediaMessageView.swift
# SignalUtilitiesKit/Meta/SignalUtilitiesKit.h
# SignalUtilitiesKit/Shared View Controllers/OWSViewController.swift
# SignalUtilitiesKit/Shared Views/CircleView.swift
# SignalUtilitiesKit/Shared Views/TappableView.swift
# SignalUtilitiesKit/Utilities/AppSetup.swift
# SignalUtilitiesKit/Utilities/Bench.swift
# SignalUtilitiesKit/Utilities/NoopNotificationsManager.swift
# _SharedTestUtilities/CommonMockedExtensions.swift
# _SharedTestUtilities/MockCrypto.swift
# _SharedTestUtilities/Mocked.swift
# _SharedTestUtilities/SynchronousStorage.swift
10 months ago
Morgan Pretty
e89a77a279
Replaced Cocoapods with Swift Package Manager for dependency management
11 months ago
Morgan Pretty
db796896f4
Tweaks to notification extension
...
• Fixed an issue where the notification extension could end up in an invalid state if you delete and create a new account in rapid succession
• Fixed an issue where notification processing errors weren't getting handled correctly resulting in the notification extension timing out
• Stopped the notification extension from trying to download profile images
• Added commit hash to version info
• Tweaked the notification extension logic flow to be more straight forward
11 months ago
Morgan Pretty
8500e1f602
Merge remote-tracking branch 'upstream/dev' into feature/groups-rebuild
...
# Conflicts:
# LibSession-Util
# Podfile
# Podfile.lock
# Session.xcodeproj/project.pbxproj
# Session.xcodeproj/xcshareddata/xcschemes/SessionSnodeKit.xcscheme
# Session/Calls/Call Management/SessionCallManager.swift
# Session/Closed Groups/EditClosedGroupVC.swift
# Session/Closed Groups/NewClosedGroupVC.swift
# Session/Conversations/ConversationVC+Interaction.swift
# Session/Conversations/ConversationVC.swift
# Session/Conversations/ConversationViewModel.swift
# Session/Conversations/Settings/ThreadDisappearingMessagesSettingsViewModel.swift
# Session/Conversations/Settings/ThreadSettingsViewModel.swift
# Session/Home/New Conversation/NewDMVC.swift
# Session/Media Viewing & Editing/GIFs/GiphyDownloader.swift
# Session/Meta/AppDelegate.swift
# Session/Meta/SessionApp.swift
# Session/Notifications/SyncPushTokensJob.swift
# Session/Notifications/UserNotificationsAdaptee.swift
# Session/Onboarding/Onboarding.swift
# Session/Path/PathStatusView.swift
# Session/Path/PathVC.swift
# Session/Settings/NukeDataModal.swift
# Session/Utilities/BackgroundPoller.swift
# Session/Utilities/IP2Country.swift
# SessionMessagingKit/Database/Migrations/_014_GenerateInitialUserConfigDumps.swift
# SessionMessagingKit/Database/Migrations/_015_BlockCommunityMessageRequests.swift
# SessionMessagingKit/Database/Migrations/_018_DisappearingMessagesConfiguration.swift
# SessionMessagingKit/Database/Models/Attachment.swift
# SessionMessagingKit/Database/Models/ClosedGroup.swift
# SessionMessagingKit/Database/Models/ConfigDump.swift
# SessionMessagingKit/Database/Models/DisappearingMessageConfiguration.swift
# SessionMessagingKit/Database/Models/Interaction.swift
# SessionMessagingKit/Database/Models/SessionThread.swift
# SessionMessagingKit/File Server/FileServerAPI.swift
# SessionMessagingKit/Jobs/AttachmentDownloadJob.swift
# SessionMessagingKit/Jobs/ConfigMessageReceiveJob.swift
# SessionMessagingKit/Jobs/ConfigurationSyncJob.swift
# SessionMessagingKit/Jobs/ExpirationUpdateJob.swift
# SessionMessagingKit/Jobs/GetExpirationJob.swift
# SessionMessagingKit/Jobs/MessageSendJob.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+Contacts.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+ConvoInfoVolatile.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+Shared.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+UserGroups.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+UserProfile.swift
# SessionMessagingKit/LibSession/Config Handling/SessionUtil+GroupInfo.swift
# SessionMessagingKit/LibSession/Config Handling/SessionUtil+GroupKeys.swift
# SessionMessagingKit/LibSession/Config Handling/SessionUtil+GroupMembers.swift
# SessionMessagingKit/LibSession/Config Handling/SessionUtil+SharedGroup.swift
# SessionMessagingKit/LibSession/Database/QueryInterfaceRequest+Utilities.swift
# SessionMessagingKit/LibSession/Database/Setting+Utilities.swift
# SessionMessagingKit/LibSession/LibSession+SessionMessagingKit.swift
# SessionMessagingKit/Messages/Message+Origin.swift
# SessionMessagingKit/Messages/Message.swift
# SessionMessagingKit/Messages/Visible Messages/VisibleMessage.swift
# SessionMessagingKit/Open Groups/Models/SOGSMessage.swift
# SessionMessagingKit/Open Groups/OpenGroupAPI.swift
# SessionMessagingKit/Open Groups/OpenGroupManager.swift
# SessionMessagingKit/Open Groups/OpenGroupServerIdLookup.swift
# SessionMessagingKit/Open Groups/Types/Request+OpenGroupAPI.swift
# SessionMessagingKit/Open Groups/Types/SOGSEndpoint.swift
# SessionMessagingKit/Protos/Generated/SNProto.swift
# SessionMessagingKit/Protos/Generated/SessionProtos.pb.swift
# SessionMessagingKit/Protos/SessionProtos.proto
# SessionMessagingKit/Sending & Receiving/Errors/MessageSenderError.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+ExpirationTimers.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+UnsendRequests.swift
# SessionMessagingKit/Sending & Receiving/MessageReceiver.swift
# SessionMessagingKit/Sending & Receiving/MessageSender.swift
# SessionMessagingKit/Sending & Receiving/Notifications/Models/PushNotificationAPIRequest.swift
# SessionMessagingKit/Sending & Receiving/Notifications/PushNotificationAPI.swift
# SessionMessagingKit/Sending & Receiving/Notifications/Types/Request+PushNotificationAPI.swift
# SessionMessagingKit/Sending & Receiving/Pollers/CurrentUserPoller.swift
# SessionMessagingKit/Sending & Receiving/Pollers/GroupPoller.swift
# SessionMessagingKit/Sending & Receiving/Pollers/OpenGroupAPI+Poller.swift
# SessionMessagingKit/Sending & Receiving/Pollers/Poller.swift
# SessionMessagingKit/SessionUtil/SessionUtilError.swift
# SessionMessagingKit/SessionUtil/Utilities/TypeConversion+Utilities.swift
# SessionMessagingKit/Shared Models/MessageViewModel.swift
# SessionMessagingKit/Shared Models/SessionThreadViewModel.swift
# SessionMessagingKit/Utilities/ProfileManager.swift
# SessionMessagingKitTests/LibSession/LibSessionSpec.swift
# SessionMessagingKitTests/LibSession/LibSessionUtilSpec.swift
# SessionMessagingKitTests/Open Groups/Models/SOGSMessageSpec.swift
# SessionMessagingKitTests/Open Groups/OpenGroupAPISpec.swift
# SessionMessagingKitTests/Open Groups/OpenGroupManagerSpec.swift
# SessionNotificationServiceExtension/NotificationServiceExtension.swift
# SessionShareExtension/ShareNavController.swift
# SessionShareExtension/ThreadPickerVC.swift
# SessionSnodeKit/Configuration.swift
# SessionSnodeKit/Database/Migrations/_001_InitialSetupMigration.swift
# SessionSnodeKit/Database/Models/Snode.swift
# SessionSnodeKit/Database/Models/SnodeReceivedMessageInfo.swift
# SessionSnodeKit/Database/Models/SnodeSet.swift
# SessionSnodeKit/Jobs/GetSnodePoolJob.swift
# SessionSnodeKit/Models/DeleteAllBeforeRequest.swift
# SessionSnodeKit/Models/DeleteAllMessagesRequest.swift
# SessionSnodeKit/Models/DeleteMessagesRequest.swift
# SessionSnodeKit/Models/GetExpiriesRequest.swift
# SessionSnodeKit/Models/GetMessagesRequest.swift
# SessionSnodeKit/Models/ONSResolveResponse.swift
# SessionSnodeKit/Models/RevokeSubkeyRequest.swift
# SessionSnodeKit/Models/SendMessageRequest.swift
# SessionSnodeKit/Models/SnodeAuthenticatedRequestBody.swift
# SessionSnodeKit/Models/SnodeRequest.swift
# SessionSnodeKit/Models/SwarmSnode.swift
# SessionSnodeKit/Models/UpdateExpiryAllRequest.swift
# SessionSnodeKit/Models/UpdateExpiryRequest.swift
# SessionSnodeKit/Networking/OnionRequestAPI.swift
# SessionSnodeKit/Networking/PreparedRequest+OnionRequest.swift
# SessionSnodeKit/Networking/Request+SnodeAPI.swift
# SessionSnodeKit/Networking/SnodeAPI.swift
# SessionSnodeKit/Types/OnionRequestAPIError.swift
# SessionSnodeKit/Types/SnodeAPIEndpoint.swift
# SessionSnodeKit/Types/SnodeAPIError.swift
# SessionSnodeKit/Types/SnodeAPINamespace.swift
# SessionSnodeKit/Types/SwarmDrainBehaviour.swift
# SessionSnodeKitTests/Models/SnodeRequestSpec.swift
# SessionTests/Database/DatabaseSpec.swift
# SessionUIKit/Style Guide/Values.swift
# SessionUtilitiesKit/Database/Migrations/_005_AddJobUniqueHash.swift
# SessionUtilitiesKit/Database/Models/Job.swift
# SessionUtilitiesKit/Database/Types/Migration.swift
# SessionUtilitiesKit/General/Data+Utilities.swift
# SessionUtilitiesKit/General/Dependencies.swift
# SessionUtilitiesKit/General/Features.swift
# SessionUtilitiesKit/General/Logging.swift
# SessionUtilitiesKit/JobRunner/JobRunner.swift
# SessionUtilitiesKit/LibSession/Utilities/Crypto+SessionUtil.swift
# SessionUtilitiesKit/LibSession/Utilities/TypeConversion+Utilities.swift
# SessionUtilitiesKit/Networking/BatchRequest.swift
# SessionUtilitiesKit/Networking/BatchResponse.swift
# SessionUtilitiesKit/Networking/HTTP.swift
# SessionUtilitiesKit/Networking/HTTPError.swift
# SessionUtilitiesKit/Networking/PreparedRequest.swift
# SessionUtilitiesKit/Networking/Request.swift
# SessionUtilitiesKit/Networking/RequestTarget.swift
# SessionUtilitiesKit/SessionUtil/Utilities/TypeConversion+Utilities.swift
# SessionUtilitiesKit/Utilities/Bencode.swift
# SessionUtilitiesKit/Utilities/JSONEncoder+Utilities.swift
# SessionUtilitiesKitTests/JobRunner/JobRunnerSpec.swift
# SessionUtilitiesKitTests/Networking/BatchRequestSpec.swift
# SessionUtilitiesKitTests/Networking/BatchResponseSpec.swift
# SessionUtilitiesKitTests/Networking/PreparedRequestSpec.swift
# SessionUtilitiesKitTests/Networking/RequestSpec.swift
# SessionUtilitiesKitTests/Utilities/BencodeResponseSpec.swift
# SignalUtilitiesKit/Configuration.swift
# SignalUtilitiesKit/Utilities/AppSetup.swift
# SignalUtilitiesKit/Utilities/Bench.swift
# SignalUtilitiesKit/Utilities/UIGestureRecognizer+OWS.swift
# _SharedTestUtilities/CommonMockedExtensions.swift
# _SharedTestUtilities/MockJobRunner.swift
# _SharedTestUtilities/Mocked.swift
12 months ago
Morgan Pretty
72525ae37b
Merge remote-tracking branch 'upstream/dev' into feature/groups-rebuild
...
# Conflicts:
# Podfile
# Podfile.lock
# Scripts/build_libSession_util.sh
# Session.xcodeproj/project.pbxproj
# Session/Calls/Call Management/SessionCallManager.swift
# Session/Calls/Views & Modals/IncomingCallBanner.swift
# Session/Conversations/Context Menu/ContextMenuVC+Action.swift
# Session/Conversations/ConversationVC+Interaction.swift
# Session/Conversations/Message Cells/CallMessageCell.swift
# Session/Conversations/Message Cells/VisibleMessageCell.swift
# Session/Home/New Conversation/NewDMVC.swift
# Session/Media Viewing & Editing/MediaGalleryViewModel.swift
# Session/Media Viewing & Editing/MediaInfoVC.swift
# Session/Meta/AppDelegate.swift
# Session/Meta/AppEnvironment.swift
# Session/Path/PathStatusView.swift
# SessionMessagingKit/Database/Models/Interaction.swift
# SessionMessagingKit/Jobs/AttachmentUploadJob.swift
# SessionMessagingKit/Jobs/MessageSendJob.swift
# SessionMessagingKit/Jobs/SendReadReceiptsJob.swift
# SessionMessagingKit/Jobs/Types/GroupLeavingJob.swift
# SessionMessagingKit/Messages/Message+Destination.swift
# SessionMessagingKit/Messages/Message.swift
# SessionMessagingKit/Sending & Receiving/Errors/MessageSenderError.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+Calls.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+VisibleMessages.swift
# SessionMessagingKit/Sending & Receiving/MessageSender+Convenience.swift
# SessionMessagingKit/Sending & Receiving/MessageSender.swift
# SessionMessagingKit/Utilities/ProfilePictureView+Convenience.swift
# SessionMessagingKit/Utilities/SessionEnvironment.swift
# SessionNotificationServiceExtension/NotificationServiceExtension.swift
# SessionShareExtension/ShareNavController.swift
# SessionSnodeKit/Networking/SnodeAPI.swift
# SessionSnodeKit/Types/OnionRequestAPIError.swift
# SessionSnodeKit/Types/SnodeAPIError.swift
1 year ago
Morgan Pretty
601ba9a9b2
Objective-C Refactoring, Removed PureLayout, General Cleanup
1 year ago
Morgan Pretty
9491b4a97b
Fixed a crash and config issue
...
• Fixed a bad memory crash which could occur when returning from the background
• Fixed an issue where config messages were incorrectly getting double wrapped in protobuf wrappers
1 year ago
Morgan Pretty
99abcdebf6
Removed some unneeded code and fixed a couple of bugs
...
• Removed the 'runOnceTransient' behaviour (no longer have jobs that run before the user exists)
• Removed the session id from the message snippet in the conversation list
• Fixed an issue where the SyncPushTokensJob might not run because the paths hadn't been built yet
1 year ago
Morgan Pretty
749aeea6de
Tweaked a comment
1 year ago
Morgan Pretty
686768f8b2
Fixed a few bugs with sync messages
...
Fixed an issue where sync messages were failing to send if the message wasn't disappearing
Fixed an issue where the 'Failed to Sync' statuses wouldn't be shown
Updated the MessageSenderError, SnodeAPIError and OnionRequestAPIError to actually output our error strings when included in strings
Updated the tryFlatMapWithRandomSnode function to include context of the last error thrown
Cleaned up the 'isSyncMessage' logic
1 year ago
Morgan Pretty
7cc6e32ed9
Merge remote-tracking branch 'origin/feature/drop-yap-database-support' into feature/groups-rebuild
...
# Conflicts:
# .drone.jsonnet
# Podfile.lock
# Session.xcodeproj/project.pbxproj
# Session/Conversations/Settings/ThreadDisappearingMessagesSettingsViewModel.swift
# SessionMessagingKit/Database/Models/DisappearingMessageConfiguration.swift
# SessionMessagingKit/Jobs/DisappearingMessagesJob.swift
# SessionMessagingKit/Messages/Message.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+DataExtractionNotification.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+ExpirationTimers.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+LegacyClosedGroups.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+VisibleMessages.swift
# SessionMessagingKit/Sending & Receiving/MessageReceiver.swift
# SessionMessagingKit/Sending & Receiving/MessageSender.swift
# SessionMessagingKit/SessionUtil/Config Handling/SessionUtil+Contacts.swift
# SessionMessagingKit/SessionUtil/Config Handling/SessionUtil+UserGroups.swift
# SessionMessagingKit/SessionUtil/Config Handling/SessionUtil+UserProfile.swift
# SessionUtilitiesKit/General/Features.swift
1 year ago
Morgan Pretty
e1bb6de7d6
Merge remote-tracking branch 'upstream/dev' into feature/drop-yap-database-support
...
# Conflicts:
# Podfile.lock
# SessionMessagingKit/Database/Migrations/_003_YDBToGRDBMigration.swift
1 year ago
Ryan ZHAO
b4f01db37e
extend expire timer update message TTL to be default 14 days
1 year ago
Ryan ZHAO
4cf739eeef
clean
1 year ago
Morgan Pretty
2fba138782
Merge remote-tracking branch 'RyanFork/disappearing-message-redesign' into feature/groups-rebuild
...
# Conflicts:
# .drone.jsonnet
# Session.xcodeproj/project.pbxproj
# Session/Calls/Call Management/SessionCallManager.swift
# Session/Conversations/ConversationVC+Interaction.swift
# Session/Conversations/ConversationVC.swift
# Session/Conversations/ConversationViewModel.swift
# Session/Conversations/Message Cells/InfoMessageCell.swift
# Session/Conversations/Message Cells/MessageCell.swift
# Session/Conversations/Message Cells/VisibleMessageCell.swift
# Session/Conversations/Settings/ThreadDisappearingMessagesSettingsViewModel.swift
# Session/Conversations/Views & Modals/InfoBanner.swift
# Session/Meta/AppDelegate.swift
# Session/Meta/MainAppContext.swift
# Session/Meta/Translations/ar.lproj/Localizable.strings
# Session/Meta/Translations/be.lproj/Localizable.strings
# Session/Meta/Translations/bg.lproj/Localizable.strings
# Session/Meta/Translations/bn.lproj/Localizable.strings
# Session/Meta/Translations/cs.lproj/Localizable.strings
# Session/Meta/Translations/da.lproj/Localizable.strings
# Session/Meta/Translations/de.lproj/Localizable.strings
# Session/Meta/Translations/el.lproj/Localizable.strings
# Session/Meta/Translations/en.lproj/Localizable.strings
# Session/Meta/Translations/eo.lproj/Localizable.strings
# Session/Meta/Translations/es-ES.lproj/Localizable.strings
# Session/Meta/Translations/fa.lproj/Localizable.strings
# Session/Meta/Translations/fi.lproj/Localizable.strings
# Session/Meta/Translations/fil.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/hu.lproj/Localizable.strings
# Session/Meta/Translations/id.lproj/Localizable.strings
# Session/Meta/Translations/it.lproj/Localizable.strings
# Session/Meta/Translations/ja.lproj/Localizable.strings
# Session/Meta/Translations/ko.lproj/Localizable.strings
# Session/Meta/Translations/ku.lproj/Localizable.strings
# Session/Meta/Translations/lt.lproj/Localizable.strings
# Session/Meta/Translations/lv.lproj/Localizable.strings
# Session/Meta/Translations/ne-NP.lproj/Localizable.strings
# Session/Meta/Translations/nl.lproj/Localizable.strings
# Session/Meta/Translations/no.lproj/Localizable.strings
# Session/Meta/Translations/pl.lproj/Localizable.strings
# Session/Meta/Translations/pt-BR.lproj/Localizable.strings
# Session/Meta/Translations/pt-PT.lproj/Localizable.strings
# Session/Meta/Translations/ro.lproj/Localizable.strings
# Session/Meta/Translations/ru.lproj/Localizable.strings
# Session/Meta/Translations/si-LK.lproj/Localizable.strings
# Session/Meta/Translations/sk.lproj/Localizable.strings
# Session/Meta/Translations/sl.lproj/Localizable.strings
# Session/Meta/Translations/sv-SE.lproj/Localizable.strings
# Session/Meta/Translations/th.lproj/Localizable.strings
# Session/Meta/Translations/tr.lproj/Localizable.strings
# Session/Meta/Translations/uk.lproj/Localizable.strings
# Session/Meta/Translations/vi.lproj/Localizable.strings
# Session/Meta/Translations/zh-CN.lproj/Localizable.strings
# Session/Meta/Translations/zh-TW.lproj/Localizable.strings
# Session/Notifications/SyncPushTokensJob.swift
# Session/Notifications/UserNotificationsAdaptee.swift
# Session/Onboarding/PNModeVC.swift
# Session/Shared/ScreenLockUI.swift
# SessionMessagingKit/Configuration.swift
# SessionMessagingKit/Database/Migrations/_003_YDBToGRDBMigration.swift
# SessionMessagingKit/Database/Models/DisappearingMessageConfiguration.swift
# SessionMessagingKit/Database/Models/Interaction.swift
# SessionMessagingKit/Jobs/ExpirationUpdateJob.swift
# SessionMessagingKit/Jobs/GetExpirationJob.swift
# SessionMessagingKit/Protos/Generated/SessionProtos.pb.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+Calls.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+ExpirationTimers.swift
# SessionMessagingKit/Sending & Receiving/MessageReceiver.swift
# SessionMessagingKit/Sending & Receiving/MessageSender+Convenience.swift
# SessionMessagingKit/SessionUtil/Config Handling/SessionUtil+Contacts.swift
# SessionMessagingKit/SessionUtil/Config Handling/SessionUtil+UserGroups.swift
# SessionMessagingKit/SessionUtil/Config Handling/SessionUtil+UserProfile.swift
# SessionMessagingKit/Shared Models/SessionThreadViewModel.swift
# SessionMessagingKitTests/Sending & Receiving/MessageReceiverSpec.swift
# SessionNotificationServiceExtension/NotificationServiceExtension.swift
# SessionNotificationServiceExtension/NotificationServiceExtensionContext.swift
# SessionShareExtension/Meta/SignalShareExtension-Bridging-Header.h
# SessionShareExtension/ShareAppExtensionContext.swift
# SessionSnodeKit/Networking/SnodeAPI.swift
# SessionUtilitiesKit/Database/OWSFileSystem.m
# SessionUtilitiesKit/General/AppContext.h
# SessionUtilitiesKit/General/NSUserDefaults+OWS.m
1 year ago
Ryan ZHAO
4c340188c2
fix ttl for legacy mode
1 year ago
Ryan ZHAO
43e2983f49
fix call messages and data extraction messages with their expiration info and refactor
1 year ago
Ryan ZHAO
e38fb400ea
refactor on the way that attaching disappearing messages config to messages
1 year ago
Ryan ZHAO
9fc5f8fa68
WIP: refactoring the way of applying disappearing messages settings
1 year ago
Ryan ZHAO
5d2a307d5e
WIP: update copies and implement following setting
1 year ago
Morgan Pretty
3bb11aeac1
Fixed the broken legacy group push notifications & CI tweaks
...
Fixed the broken legacy group push notifications
Reset and close the simulators before/after the tests are run on the CI
1 year ago
Morgan Pretty
37d3d5b829
Plugged in some more libSession functions and added more unit tests
...
Updated the code to use the libSession encrypt/decrypt functions for the 'groupKicked' message
Updated the code to use the libSession function to load the admin key when receiving a promotion instead of reloading the config state
Changed the NotificationsManager and NotificationActionHandler to be injected via dependencies instead of the Environment
Mocked out the NotificationsManager for unit testing
2 years ago
Morgan Pretty
fa8e37b0c7
Removed 'fileIds' from Message.Destination (tested and won't break)
...
Removed 'fileIds' from Message.Destination (tested and won't break)
Cleaned up some TODOs
2 years ago
Morgan Pretty
59fc7a53ef
New DeveloperSettingsViewModel, bulk PN endpoints and updated group messages
...
Added the DeveloperSettingsViewModel and dependency-controlled feature flags
Added the generic 'SessionListViewModel' to reduce duplicate code when we want to just display a selectable list of items
Added an indicator on the home screen to show when using testnet
Added group promotions behind a feature flag
Updated the PushNotificationAPI to use bulk subscribe/unsubscribe requests
Updated the 'GroupUpdateDeleteMessage' and 'GroupUpdateDeleteMemberContentMessage' to support additional behaviours
Updated the SessionCell to have better RTL support (swapped some left/right things to leading/trailing)
Updated the revoke/unrevoke endpoints to take arrays of subaccount tokens
Refactored the Bencode logic to properly support Codable types
2 years ago
Morgan Pretty
00f246a21e
Added group message requests, admin message deletion, fixed a few bugs
...
Added logic for Group Message Requests
Added a 'ManualResultJob' which allows for a way to add a dependency to a job which can be resolved separately from the job system (it's not persistent though)
Added the ability for admins to delete select messages from updated groups
Swapped 'save'/'saved' calls to be 'upsert'/'upserted' as that's the actual behaviour we expect (unique key based rather than primary key based)
Fixed a bug where the 'limitedReuse' 'drainBehaviour' could get stuck in an invalid state
Fixed a bug where job dependencies could swap queues which could theoretically result in deadlocks in some cases
2 years ago
Morgan Pretty
417060a676
Added functionality for a bunch of GroupUpdate messages
...
Added logic to trigger and handle destroyed groups
Added logic to trigger and handle handle supplementary key rotations (libSession implementation is WIP)
Added logic for 'remove user and their content'
Added the ability to associate a callback to any arbitrary job
Added data support for the group description value
Added logic to handle being kicked from a group
Added logs for failed GROUP_KEYS merges (already have for other config types)
Fixed an issue where the initial key generation didn't include the initial members
Fixed a crash which could occur when creating a conversation via handling a USER_GROUPS config
Fixed an issue where manually triggering the ConfigurationSyncJob might not ever get a callback
Updated to have the latest Protobuf tweaks
Removed recognition of the LegacyConfigurationMessage
2 years ago
Morgan Pretty
0df6501265
Pushing up my WIP changes from the last few days
...
Got a number of the GroupUpdate messages working properly
Updated the DisplayPictureDownloadJob to support OpenGroup room images
Updated the Poller to process messages by namespace (sorted) and added support for synchronous handling of messages
Reworked the ProfileManager to be a more reusable DisplayPictureManager
Cleaned up the conversion from milliseconds to TimeInterval (which is documented as seconds) for clarity
Fixed a read/write crash due to the SnodeAPI cache setup
Fixed an issue where dependencies could incorrectly overwrite each other when based on protocols
2 years ago
Morgan Pretty
a3ef1c92d3
Started adding logic for the GroupUpdate messages
2 years ago
Morgan Pretty
32495f0a8a
Did some refactoring to better distinguish between publicKeys and sessionIds in the codebase
2 years ago
Morgan Pretty
18b296bcd8
Merge branch 'disappearing-message-redesign' into feature/drop-yap-database-support
...
# Conflicts:
# Session.xcodeproj/project.pbxproj
# Session/Meta/AppDelegate.swift
# Session/Meta/Translations/de.lproj/Localizable.strings
# Session/Meta/Translations/es-ES.lproj/Localizable.strings
# Session/Meta/Translations/fi.lproj/Localizable.strings
# Session/Meta/Translations/fr.lproj/Localizable.strings
# Session/Meta/Translations/it.lproj/Localizable.strings
# Session/Meta/Translations/ja.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/sk.lproj/Localizable.strings
# Session/Meta/Translations/zh-CN.lproj/Localizable.strings
# Session/Meta/Translations/zh-TW.lproj/Localizable.strings
# SessionMessagingKit/Database/LegacyDatabase/SMKLegacy.swift
# SessionMessagingKit/Database/Migrations/_003_YDBToGRDBMigration.swift
# SessionMessagingKit/Messages/Control Messages/ConfigurationMessage.swift
# SessionSnodeKit/Database/LegacyDatabase/SSKLegacy.swift
# SessionSnodeKit/Database/Migrations/_003_YDBToGRDBMigration.swift
# SessionUtilitiesKit/Database/LegacyDatabase/SUKLegacy.swift
# SessionUtilitiesKit/Database/Migrations/_003_YDBToGRDBMigration.swift
2 years ago
Morgan Pretty
d8b0f76902
Merge remote-tracking branch 'RyanFork/disappearing-message-redesign' into feature/groups-rebuild
...
# Conflicts:
# Session.xcodeproj/project.pbxproj
# SessionMessagingKit/Configuration.swift
# SessionMessagingKit/Database/LegacyDatabase/SMKLegacy.swift
# SessionMessagingKit/Database/Models/Interaction.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+Calls.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+DataExtractionNotification.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+VisibleMessages.swift
# SessionMessagingKit/Sending & Receiving/MessageReceiver.swift
# SessionMessagingKit/SessionUtil/Config Handling/SessionUtil+ConvoInfoVolatile.swift
# SessionMessagingKit/Shared Models/SessionThreadViewModel.swift
# SessionMessagingKitTests/Open Groups/OpenGroupAPISpec.swift
# SessionMessagingKitTests/Sending & Receiving/MessageReceiverSpec.swift
# SessionSnodeKit/Database/LegacyDatabase/SSKLegacy.swift
# SessionTests/Conversations/Settings/ThreadDisappearingMessagesViewModelSpec.swift
# SessionUtilitiesKit/Database/LegacyDatabase/SUKLegacy.swift
# SessionUtilitiesKit/Database/Migrations/_003_YDBToGRDBMigration.swift
# SessionUtilitiesKit/General/SNUserDefaults.swift
# SignalUtilitiesKit/Utilities/AppVersion.m
2 years ago
Ryan Zhao
01671438d5
fix issues that the expiresStartAtMs not being set correctly
2 years ago
Ryan Zhao
33ef2b0920
refactor and fix issues that some control messages were not following disappearing messages settings
2 years ago
Ryan Zhao
77ceac54e0
fix closed group default disappearing messages settings
2 years ago
Morgan Pretty
7b04a4b888
Updated logic to prepare for updated group message crypto
...
Updated the message send/receive pipelines to better handle config and updated group messages
Changed the hard-coded 'WebSocketRequestMessage' proto wrapper to not have random data
Removed the old 'SharedConfigMessage' (deprecated and removed within 'libSession')
2 years ago
Morgan Pretty
f44b545265
[WIP] Initial start on updated groups via configs
...
Started writing up wrappers and unit tests for group config types
Refactored some duplicate batch & prepared request code to be more generic and reusable
Renamed a number of legacy closed group functions to have the term 'legacy' in them for ease of coding
2 years ago
Morgan Pretty
6c1b997e9b
Merge branch 'feature/drop-yap-database-support' into feature/groups-rebuild
...
# Conflicts:
# Session.xcodeproj/project.pbxproj
# SessionMessagingKit/Database/Migrations/_003_YDBToGRDBMigration.swift
# SessionMessagingKit/Messages/Control Messages/ConfigurationMessage.swift
# SessionUtilitiesKit/Database/Storage.swift
2 years ago
Morgan Pretty
63be502434
Merge remote-tracking branch 'upstream/dev' into disappearing-message-redesign
...
# Conflicts:
# Session.xcodeproj/project.pbxproj
# Session/Conversations/Settings/ThreadDisappearingMessagesSettingsViewModel.swift
# SessionMessagingKit/Configuration.swift
# SessionMessagingKit/Sending & Receiving/MessageSender.swift
# SessionSnodeKit/Networking/SnodeAPI.swift
# SessionTests/Conversations/Settings/ThreadDisappearingMessagesViewModelSpec.swift
# SessionUtilitiesKit/General/Dictionary+Utilities.swift
# SessionUtilitiesKit/JobRunner/JobRunner.swift
2 years ago
Morgan Pretty
50bc2f9a5c
Removed YapDatabase and the migrations
...
Removed the YapDatabase CocoaPod
Removed logic to migrate from YapDatabase to GRDB
Removed the logic to check for legacy config messages during onboarding
Added a database error for when a migration is no longer supported
2 years ago
Morgan Pretty
a41f1c1366
Fixed the broken tests
...
Cleaned up the Dependencies so that tests can run synchronously without having to custom set queues as much
Sorted out the crypto and network dependencies to avoid needing weird dependency inheritance
Fixed the flaky tests so they are no longer flaky
Fixed some unexpected JobRunner behaviours
Updated the CI config to use a local build directory for derivedData (now works with build tweaks)
2 years ago
ryanzhao
18d3ab0e0e
Merge branch 'dev' into disappearing-message-redesign
2 years ago
Morgan Pretty
bc5d8d0931
Cleaning up final things before release
...
Added basic support for the '25' blinded prefix
Fixed a unit test CI issue
2 years ago
ryanzhao
40f1d6491d
Merge branch 'feature/updated-user-config-handling' of https://github.com/mpretty-cyro/session-ios into disappearing-message-redesign
2 years ago