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.
7 months ago
Morgan Pretty
09a14358ee
Updated to the latest GRDB (use pre-built framework to cut ~30 sec from build time)
7 months ago
Morgan Pretty
ddd36b96a2
Reworked deadlock handling, fixed a few other issues
...
• Fixed an issue where the background task to finish sending messages may not have sent the sync message or the main message after and upload
• Fixed an issue where the SessionBackgroundTask was incorrectly reporting a failure to be created
• Fixed an incorrect modal action colour
• Fixed a crash when creating legacy groups
• Updated the code so that we take charge of resolving the deadlock issue instead of relying on GRDB to do it
• Updated the logic to timeout the SessionBackgroundTask with 5 seconds of background time remaining (to ensure we have enough time to suspend the network & database)
7 months ago
Morgan Pretty
e1aedb36da
Fixed a few bugs found when testing strings
...
• Fixed an issue where creating a legacy group could be blocked by the legacy PN subscription failing (was part of the synchronous request)
• Fixed an issue where the code would incorrectly use profile data from incoming messages sent from the current user to update it's profile info
• Fixed an issue where saving media would fail silently if the user had rejected the OS permission
• Refactored a little code around profile changes to make things more readable
7 months ago
Ryan ZHAO
30ec5a1b0d
bump up build number
7 months ago
Ryan ZHAO
36c6696ea8
update version number
7 months ago
Ryan ZHAO
ce8c6bd971
fix a clear data modal
7 months ago
Ryan ZHAO
39efcc4d2b
bump up version and build number
7 months ago
Ryan ZHAO
d31036f60c
clean errors
8 months ago
Ryan ZHAO
8d05a9dce3
move webRTC constants to its own file
8 months ago
Ryan ZHAO
ca5c979f8f
Merge branch 'dev' into standardised-strings
8 months ago
Morgan Pretty
67830ed767
Fixed a legacy group message decryption issue
...
Fixed a bug where we were incorrectly generating and requiring 64 byte secrets for legacy groups (we only need 32 bytes), since we do length checks before calling the libSession C API (to prevent crashes) we would fail before attempting to decrypt because the key was too short
8 months ago
Ryan ZHAO
b980e52873
update scripts
8 months ago
Ryan ZHAO
5c18019e6b
Merge branch 'dev' into standardised-strings
8 months ago
Morgan Pretty
b3e7fa66fc
Removed settings data change animations, fixed settings dismiss bug
...
• Remove the data change animations on the settings screens as they were causing frequent crashes
• Fixed an issue where deleting a message request via settings would dismissing the settings screen
8 months ago
Ryan ZHAO
771b21a96d
Merge branch 'dev' into standardised-strings
8 months ago
Ryan ZHAO
0413baa06e
refactor localized string with style
8 months ago
Morgan Pretty
027ce1604d
Fixed a few issues found during QA
...
• Fixed an issue where incoming legacy group messages were failing to decrypt
• Fixed an issue where decoding push notifications could result in an infinite loop
• Fixed an issue where the extensions would incorrectly try to append extension logs (only want the main app to do this)
• Updated the accessibility ids for the switches and radios on the privacy and disappearing message settings screens
8 months ago
Morgan Pretty
5da842a109
Fixed an issue where joinedAt wasn't getting set for legacy groups
8 months ago
Morgan Pretty
9b7b61e0d7
Merge remote-tracking branch 'upstream/dev' into standardised-strings
...
# Conflicts:
# Session/Conversations/ConversationVC+Interaction.swift
8 months ago
Morgan Pretty
c5feb76759
Added back incorrectly removed accessibilityIds, bumped build number
8 months ago
Morgan Pretty
2bcd8e28ab
Merge remote-tracking branch 'upstream/dev' into standardised-strings
...
# Conflicts:
# Scripts/LintLocalizableStrings.swift
# Session.xcodeproj/project.pbxproj
# Session/Closed Groups/EditClosedGroupVC.swift
# Session/Conversations/ConversationVC+Interaction.swift
# Session/Conversations/Message Cells/Content Views/QuoteView.swift
# Session/Conversations/Settings/ThreadDisappearingMessagesSettingsViewModel.swift
# Session/Conversations/Settings/ThreadSettingsViewModel.swift
# Session/Conversations/Views & Modals/ConversationTitleView.swift
# Session/Home/GlobalSearch/GlobalSearchViewController.swift
# Session/Media Viewing & Editing/GIFs/GifPickerViewController.swift
# Session/Media Viewing & Editing/PhotoCaptureViewController.swift
# Session/Media Viewing & Editing/PhotoLibrary.swift
# Session/Notifications/UserNotificationsAdaptee.swift
# Session/Open Groups/JoinOpenGroupVC.swift
# Session/Settings/NukeDataModal.swift
# Session/Shared/ScanQRCodeWrapperVC.swift
# SessionMessagingKit/Database/Models/Attachment.swift
# SessionMessagingKit/Database/Models/DisappearingMessageConfiguration.swift
# SessionMessagingKit/Database/Models/RecipientState.swift
# SessionMessagingKit/Sending & Receiving/Attachments/SignalAttachment.swift
# SessionShareExtension/ShareNavController.swift
# SessionShareExtension/ThreadPickerVC.swift
# SessionUIKit/Components/TopBannerController.swift
# SessionUtilitiesKit/General/String+Utilities.swift
# SessionUtilitiesKit/Networking/IPv4.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/Screen Lock/ScreenLock.swift
8 months ago
Morgan Pretty
07cbbbbd94
Fixed compile issue and bumped version number
8 months ago
Ryan ZHAO
7764f7f3f6
clean with constants
8 months ago
Ryan ZHAO
1e1d71f788
deep clean
8 months ago
Morgan Pretty
31ae994941
Added Keychain migration code just in case (really shouldn't be needed)
8 months ago
Ryan ZHAO
aaea97fbdb
update strings script for updating permission strings
8 months ago
Morgan Pretty
b3d90df15e
Fixed a camera bug and minor optimisation
...
• Fixed an issue with portrait photo orientation
• Fixed a project config which would prevent debugging the framework targets properly
• Tweaked an unneeded icon resize
8 months ago
Ryan ZHAO
aee69887cd
Lint strings script
8 months ago
Ryan ZHAO
715a6fd7ec
WIP: update the lint strings script
8 months ago
Morgan Pretty
bef27ee0c7
Fixed build issues resulting from rebase after Onboarding
8 months ago
Morgan Pretty
ed34ebcae9
Fixed the share extension and moved the WebRTC logic
...
Moved the WebRTC dependency out of SessionMessagingKit and into the main Session app (it's the only one that used it and it was causing library linker issues in the share extension because it wasn't directly linked)
8 months ago
Morgan Pretty
2f5aeaeedf
Fixed some missing dependencies and removed pod references
8 months ago
Morgan Pretty
4571038008
Fixed the broken tests
8 months ago
Morgan Pretty
419182805f
Updated GRDB dependency with build fix
8 months ago
Morgan Pretty
25c1fb6b45
Fixed the unit tests
8 months ago
Morgan Pretty
ce01f128f3
Replaced Cocoapods with Swift Package Manager for dependency management
8 months ago
Ryan ZHAO
fcfca0e7f4
migrate to strings catalog
8 months ago
Ryan ZHAO
003816117f
Merge branch 'dev' into standardised-strings
8 months ago
Morgan Pretty
6a838a486c
Fixed an issue where the blocked contacts screen might not show values
8 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)
8 months ago
Morgan Pretty
3676f63cb0
Fixed some bugs found during QA
...
• Fixed a bug where the onboarding wouldn't be considered complete after successfully retrieving a displayName when restoring an account
• Fixed a couple of libSession networking bugs
• Tweaked some logging
• Removed some legacy code
8 months ago
Morgan Pretty
7874095d21
Tweaked a couple of errors, fixed a network bugs resulting from merge
9 months ago
Morgan Pretty
d95744ce2e
Merge remote-tracking branch 'upstream/master' into release/2.7.0
...
# Conflicts:
# Session.xcodeproj/project.pbxproj
9 months ago
Morgan Pretty
ae2561502b
Merged 2.6.3 changes and minor bug fixes
...
• Fixed an issue where attachments in communities weren't downloading
• Attempted to fix an occasional build issue due to an order-of-execution issue with processing the Info.plist files
• Updated to the latest `libSession` version (include 2.6.3 changes)
9 months ago
Morgan Pretty
63704750c4
libSession changes with version check for the final node in a path
9 months ago
Morgan Pretty
f4ab80e015
Updated build & version numbers
9 months ago
Morgan Pretty
ed472f44c5
Merge remote-tracking branch 'upstream/dev' into release/2.6.3
...
# Conflicts:
# Session/Meta/AppDelegate.swift
# Session/Onboarding/LandingVC.swift
# Session/Onboarding/LinkDeviceVC.swift
# Session/Onboarding/RegisterVC.swift
# Session/Onboarding/RestoreVC.swift
9 months ago
Morgan Pretty
04a0c7a67f
Progressing Groups Rebuild changes further
...
• Updated the code so an admin will update their 'promotion_status' as part of processing a 'GROUP_MEMBERS' message
• Updated the handling of the `GroupUpdateInviteResponseMessage` to take the `isApproved` flag into account
• Updated the logic to update the group name in 'USER_GROUPS' when getting kicked (so linked devices have the same name)
• Removed the 'ManualResultJob' (have better ways to do it now)
• Maintain the 'ServiceNetwork' setting after clearing account data
9 months ago
Morgan Pretty
f7dcd47c0c
Fixed a few more minor bugs and updated GeoLite2 data
...
• Updated the GeoLite2 country database data, added some basic localisation to it
• Managed to optimise the size of the GeoLite2 data bundled with the app (10mb -> 8mb)
• Cleaned up the IP2Country logic a little
• Removed some pluralisation from logs (want the logs to be identical outside of numbers)
• Tweaked the PushRegistrationManager to actually timeout
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)
9 months ago
Morgan Pretty
86200829e3
Finished up the remaining testing and added some more improvements
...
• Updated the libSession networking to be injected
• Reworked a couple of the cache methods to run via Combine instead of callbacks
• Cleaned up some logic now that the path & status observers are using Combine
• Fixed an issue with the PathVC could render incorrectly
9 months ago
Morgan Pretty
0002810c7f
Merge remote-tracking branch 'origin/feature/swift-package-manager' into feature/groups-rebuild
...
# Conflicts:
# Session.xcodeproj/project.pbxproj
# SessionMessagingKit/Crypto/Crypto+SessionMessagingKit.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+Calls.swift
9 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
9 months ago
Morgan Pretty
d6fe54e9a0
Fixed the share extension and moved the WebRTC logic
...
Moved the WebRTC dependency out of SessionMessagingKit and into the main Session app (it's the only one that used it and it was causing library linker issues in the share extension because it wasn't directly linked)
9 months ago
Morgan Pretty
16f08bf861
Fixed some missing dependencies and removed pod references
9 months ago
Morgan Pretty
25150f931e
Logging improvements, incorrect version number fix
9 months ago
Ryan ZHAO
09500b1695
bump up build number
9 months ago
Ryan ZHAO
19b4055a2e
Merge branch 'onboarding' into standardised-strings
9 months ago
Ryan ZHAO
881d74c100
bump up build number
9 months ago
Morgan Pretty
59bc1f4ec9
Added another missed change
9 months ago
Morgan Pretty
1fd65230b7
Fixed the broken unit tests
...
• Added a method to customise mock parameter summaries for unit tests
• Pulled across the updated libSession cache logic
9 months ago
Morgan Pretty
3dada9e58a
Updated mention styling and added back path "recovery" logic
9 months ago
Morgan Pretty
e2fc0a5b51
Further fixes
...
• Fixed an issue where the default log level was set too low
• Fixed an issue where sending the app to the background without any pending jobs could result in the database and network not being suspended correctly
• Updated to latest libSession (don't try to recover paths, just rebuild)
10 months ago
Morgan Pretty
d26e5468cb
Fixed the broken tests
10 months ago
Morgan Pretty
f1ec4c90c5
Updated GRDB dependency with build fix
10 months ago
Morgan Pretty
990216266b
Fixed the unit tests
10 months ago
Morgan Pretty
e89a77a279
Replaced Cocoapods with Swift Package Manager for dependency management
10 months ago
Ryan ZHAO
8bd418f289
bump up build number
10 months ago
Ryan ZHAO
4196225a7d
bump up build number
10 months ago
Morgan Pretty
185e84dc95
Fixed a few PN behaviours
...
• Tweaked the message request notification behaviour
• Fixed an issue where duplicate message errors would result in the generic notification being shown
• Further notification logging improvements
10 months ago
Ryan ZHAO
6887abb9ab
bump up build & version number
10 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
10 months ago
Ryan ZHAO
94bac5bc07
fix merging issues
10 months ago
Morgan Pretty
20eb791f75
Fixed an ONS lookup issue, update check frequency tweak
10 months ago
Morgan Pretty
cac5542868
Additional bug fixes, log tweaks and update checking
...
• Added a new CheckForAppUpdates job which runs at most once every 24 hours
• Updated the job failure logs to include the error that caused the failure
• Updated the network instance to use 'single_path_mode' when not executing within the main app
• Updated the logger to append extension logs when resuming instead of only during startup
• Updated the export logs behaviour to append the previously rotated log data if the latest log file is too short (to ensure we get more useful info when debugging)
• Updated to the latest libSession commit to resolve a couple of edge-cases
10 months ago
Morgan Pretty
6663bd64c4
Stopped the PN extension suspending the network and improved logging
...
• Removed the SOGS polling from the notification extension (rarely worked and caused network suspension bugs)
• Cleaned up some logging
10 months ago
Ryan ZHAO
527c921df3
Merge branch 'onboarding' into standardised-strings
10 months ago
Morgan Pretty
1726930e2e
Merge remote-tracking branch 'upstream/dev' into onboarding
10 months ago
Ryan ZHAO
573e3cbc28
update version and build number
10 months ago
Morgan Pretty
afa93d3320
Updated with latest libSession fixes, minor logging tweaks
10 months ago
Morgan Pretty
999ddfe50e
Made a couple of tweaks to make the build process easier
...
• Added a script to extract the app group during the build and load it in at runtime (fallback to the current one)
• Updated the 'App Store Release' scheme to 'App_Store_Release' to fix build issues on some machines
• Fixed some broken unit tests
10 months ago
Morgan Pretty
a91024f0bb
Separate streams for attachment upload/download and bug fixes
...
• Updated the code to stop sending legacy PNs outside of legacy group conversations
• Updated the logger logic to clean things up and use the local date/time (with time zone info) to ease debugging user reports
• Fixed an issue where messages in a community could incorrectly accept disappearing message settings
• Fixed an issue where duplicate messages could be sent in some cases
• Fixed an issue where the conversation might not scroll to the bottom after sending an attachment
• Fixed an issue where attachment encryption was happening in a db write thread
10 months ago
Ryan ZHAO
fea940c69d
fix an issue that the screen stack is odd when sending message requests
10 months ago
Morgan Pretty
b0eec5a4c2
Updated to the latest libSession and updated it's error handling
10 months ago
Ryan ZHAO
ecb1b83a8e
upgrade to minimum iOS 15.0 support
10 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
11 months ago
Morgan Pretty
f9d9954cf5
Attempts to fix more crashes and fix unit tests
...
• Fixed an index out of bounds issue with the mnemonic
• Attempt to fix a crash due to failing to hash SignalAttachment
• Attempt to fix a crash due to list data change inconsistencies
• Ensuring we are shutting down the network when resetting app data
• Updated the broken unit tests
11 months ago
Morgan Pretty
3b5eaa6bbb
Fixed a few minor issues noticed in the logs
...
• Fixed an issue where SOGS pollers could be started multiple times
• Avoid checking if blinded conversations exist in the config (will always return false)
• Updated some logs to provide more timing information
11 months ago
Morgan Pretty
1bc294114b
Second batch of fixes for the libQuic release crashes
...
• Fixed a rare crash which could occur when receiving a network response
• Updated to the latest libSession (contains some libQuic fixes)
• Bumped version number
11 months ago
Ryan ZHAO
392790a56f
add script to write permission strings to InfoPlist.xcstrings at build time
11 months ago
Morgan Pretty
d9a64e0148
Merge remote-tracking branch 'upstream/dev' into standardised-strings
...
# Conflicts:
# Session.xcodeproj/project.pbxproj
# Session/Closed Groups/EditClosedGroupVC.swift
# Session/Closed Groups/NewClosedGroupVC.swift
# Session/Conversations/ConversationVC+Interaction.swift
# Session/Conversations/ConversationVC.swift
# Session/Conversations/Emoji Picker/EmojiPickerCollectionView.swift
# Session/Conversations/Settings/ThreadSettingsViewModel.swift
# Session/Emoji/Emoji+Available.swift
# Session/Home/New Conversation/NewDMVC.swift
# Session/Media Viewing & Editing/GIFs/GifPickerViewController.swift
# Session/Meta/AppDelegate.swift
# Session/Meta/SessionApp.swift
# Session/Onboarding/PNModeVC.swift
# Session/Path/PathVC.swift
# Session/Utilities/IP2Country.swift
# SessionMessagingKit/Messages/Control Messages/SharedConfigMessage.swift
# SessionMessagingKit/Sending & Receiving/Pollers/OpenGroupPoller.swift
# SessionMessagingKit/Sending & Receiving/Pollers/Poller.swift
# SessionNotificationServiceExtension/NotificationError.swift
# SessionUIKit/Style Guide/Values.swift
# SignalUtilitiesKit/Media Viewing & Editing/Attachment Approval/AttachmentCaptionToolbar.swift
11 months ago
Morgan Pretty
e420ce4e58
Merge remote-tracking branch 'upstream/dev' into onboarding
...
# Conflicts:
# Session.xcodeproj/project.pbxproj
# Session/Conversations/ConversationVC.swift
# Session/Home/New Conversation/NewDMVC.swift
# Session/Onboarding/PNModeVC.swift
# SessionUIKit/Style Guide/Values.swift
11 months ago
Morgan Pretty
f50d7fcee4
Updated to the latest libSession, added new build arg
11 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
11 months ago
Morgan Pretty
601ba9a9b2
Objective-C Refactoring, Removed PureLayout, General Cleanup
11 months ago
Ryan ZHAO
9ac3fc6290
clean
11 months ago
Ryan ZHAO
eb8f2d3c26
minor fix
11 months ago
Morgan Pretty
93f136c0c1
Fixed an issue where reactions wouldn't appear
11 months ago
Morgan Pretty
eccaa29c4a
Fixed the background crash issues
...
• Updated GRDB and SQLCipher
• Shifted the ThreadSettingsViewModel code into a separate function to fix a compilation issue
11 months ago
Ryan ZHAO
f4a979f55f
Merge branch 'onboarding' into standardised-strings
11 months ago
Ryan ZHAO
c4b035eb78
add localised strings for system controlled permission modals
12 months 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
12 months 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
12 months ago
Morgan Pretty
5ee15bbc3f
Moved a bunch of networking logic into libSession
...
• Moved the snode cache and path building into libSession (deleted associated logic)
• Moved reachability detection into libSession (remove Reachability dependency)
• Fixed a couple of crashes with using libQuic requests
• Fixed a bug where the MessageRequestFooterView would show buttons on outgoing message requests
12 months ago
Morgan Pretty
352f6d7337
Fixed a number of bugs found while testing the internal build
...
• Reworked the keyboard avoidance in ConversationVC to fix some bugs and simplify the behaviour
• Moved the message request footer UI into it's own view
• Fixed an issue where paths wouldn't get built for a new isntall
• Fixed an issue where a couple of LibSession+Networking errors weren't getting logged correctly
• Fixed a log that could be thrown incorrect for a unique constraint failure
• Fixed an annoying startup warning due to thread priorities
12 months ago
Morgan Pretty
3ea5868b24
Increased build number
1 year ago
Morgan Pretty
a3188ebea4
Fixed a number of bugs found in the internal release
...
• Moved the 'getSwarm' behaviour into a distinct job to prevent duplicate API calls
• Updated to the latest libSession (fix libQuic crash)
• Updated the JobRunner to support the `runOnceTransient` behaviour and be able to run transient jobs in the app extensions
• Reworked the extension file logging to be written directly to the file in a single operation rather than line-by-line via the logger
• Fixed a bug where community invites has the wrong author
• Fixed a bug where the title on the disappearing messages settings screen was clipping vertically
• Fixed a bug where tapping on the disappearing messages setting subtitle could incorrectly appear in read-only state for admins
• Fixed a log which contained notification content
• Tweaks to extension logging logic
1 year ago
Ryan ZHAO
5c9140cb4c
Merge branch 'dev' into standardised-strings
1 year ago
Ryan ZHAO
7c993673bb
Merge branch 'dev' into onboarding
1 year ago
Morgan Pretty
f150732e99
Merge pull request #959 from mpretty-cyro/fix/sync-message-issues
...
Fixed a few bugs with sync messages
1 year ago
Morgan Pretty
2cffda17bc
Merge remote-tracking branch 'upstream/dev' into feature/lib-quic-integration
...
# Conflicts:
# Scripts/build_libSession_util.sh
1 year ago
Morgan Pretty
afe1efbd90
Deduped path building and attempted to improve extension logging
...
• Moved the build paths logic into the BuildPathsJob to allow for better deduping
• Updated the notification and share extensions to generate log files and append to the bottom of the app log file
1 year ago
Morgan Pretty
c6c2881338
Reworked the libSession network to be instance based
...
• Fixed an issue where the DisappearingMessagesJob was getting run for every individual message process instead of just once after processing all messages from a poll
• Tweaked the polling logic to split the user, groups and community pollers into separate queues
• Tweaked the logic to restart the open group poller immediately after joining a community (to avoid an edge-case where there could be a long delay before the initial poll is made)
• Tweaked the logic for checking if PNs are susceptible to failure to only dispatch to the main thread once
• Cleaned up some warnings
• Updated the app versioning to be at the project level instead of target level
• Added the ability to define a unique hash for a job for deduplication
1 year ago
Morgan Pretty
8c467dc511
Merge remote-tracking branch 'origin/fix/sync-message-issues' into feature/lib-quic-integration
...
# Conflicts:
# .drone.jsonnet
# SessionSnodeKit/Networking/SnodeAPI.swift
# SessionSnodeKit/Types/OnionRequestAPIError.swift
# SessionSnodeKit/Types/SnodeAPIError.swift
1 year ago
Ryan ZHAO
28dbef71c3
Merge branch 'dev' into standardised-strings
1 year ago
Ryan ZHAO
928fe3a1d6
Merge branch 'dev' into onboarding
1 year ago
Ryan ZHAO
63658f70d7
Merge branch 'dev' into standardised-strings
1 year ago
Morgan Pretty
53196b4694
Added new PrivacyInfo plist required by Apple
1 year ago
Morgan Pretty
c065abc584
Cleaned up a bunch of warnings, renamed a couple of folders
1 year ago
Morgan Pretty
927f8206f5
Update to the latest build config
1 year ago
Morgan Pretty
83c3834669
Gather coverage data
1 year ago
Morgan Pretty
4935269de4
Fixed a cocoapods warning
1 year ago
Ryan ZHAO
86576e4193
fix a crash on iPad when tapping share in invite a friend screen
1 year ago
Morgan Pretty
4818a6d074
Merge remote-tracking branch 'origin/dev' into feature/lib-quic-integration
...
# Conflicts:
# Podfile.lock
# Session.xcodeproj/project.pbxproj
# Session/Meta/Session-Info.plist
1 year ago
Morgan Pretty
097f9c2903
Fixed scheme and SessionSnodeKitTest runs
1 year ago
Morgan Pretty
9833ac91de
Fixed the broken unit tests
1 year ago
RyanZhao
c1c8825fe8
bring back code coverage enabled
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
Ryan ZHAO
de0a3b0ee0
Merge branch 'dev' into onboarding
1 year ago
Morgan Pretty
7eb7eda74e
[WIP] Cleaned up interface, error handling and redundant code
1 year ago
Morgan Pretty
1ee4c29a16
[WIP] Pulling in a bunch of changes around request management
1 year ago
Morgan Pretty
8ef1c24215
[WIP] Working on the libQuic onion requests
1 year ago
Ryan ZHAO
526172243b
Merge branch 'dev' into onboarding
1 year ago
Ryan ZHAO
88a8ac3d01
Merge branch 'dev' into standardised-strings
1 year ago
Morgan Pretty
756e256d9a
Moving libSession into SessionUtilitiesKit to expose it to other targets
1 year ago
Ryan ZHAO
6dc5d3031b
Merge branch 'dev' into message-detail-screen
1 year ago
Ryan ZHAO
028334a174
update build and version number for testing
1 year ago
Ryan ZHAO
10bc7d47f6
update build and version number for testing
1 year ago
Ryan ZHAO
3c7ac96b5a
replace NSLocalizedString() wiith .localized, and remove CommonStrings
1 year ago
Ryan ZHAO
0ebf0ea365
Merge branch 'dev' into standardised-strings
1 year ago
Ryan ZHAO
1d043157e0
fix an issue where messages with quotes are truncated
1 year ago
Ryan ZHAO
f5afdae646
Merge branch 'dev' into message-detail-screen
1 year ago
Morgan Pretty
b3f57bc677
Updated accessibility ids as per documentation
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
Ryan ZHAO
86ee0317ef
implement contacts and global search tweaks
1 year ago
Ryan ZHAO
673170360d
Merge branch 'dev' into onboarding
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
Morgan Pretty
2ee6c84199
Updated build number and feature flag timestamp
1 year ago
Morgan Pretty
f528742752
Bumped build number and re-enabled feature flag
1 year ago
Ryan ZHAO
da0a459e89
Merge branch 'disappearing-message-redesign' of https://github.com/RyanRory/loki-messenger-ios into disappearing-message-redesign
1 year ago
Ryan ZHAO
d63f3a8bee
fix disappearing message settings subtitle copy
1 year ago
Morgan Pretty
92299e92a9
Updated build number
1 year ago
Ryan ZHAO
11abdf4f88
Add new localization logic
1 year ago
Morgan Pretty
5ff9ae96c7
Updated build number
1 year ago
Ryan ZHAO
10e2734f34
remove caption function with strings
1 year ago
Morgan Pretty
8777d1b2d0
Updated build number
1 year ago
Ryan ZHAO
91760c00bb
minor fix
1 year ago
Ryan ZHAO
b2360d8e1a
fix an issue where DaR messages are read on linked devices won't have correct expiration start time
1 year ago
Ryan ZHAO
a4286212b4
imp: default contact list of global search screen
1 year ago
Ryan ZHAO
d25783c4df
Merge branch 'dev' into onboarding
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
Morgan Pretty
9951d5c75d
Increased build & version number, removed ATS hack
1 year ago
Morgan Pretty
84492be016
Fixed build issues, removed invalid unit tests and missing copy
1 year ago
Morgan Pretty
661720a988
Merge remote-tracking branch 'upstream/dev' into disappearing-message-redesign
...
# Conflicts:
# Session.xcodeproj/project.pbxproj
# 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
# SessionMessagingKit/Configuration.swift
# SessionUtilitiesKit/Database/Storage.swift
1 year ago
Ryan ZHAO
ecd8083ebe
WIP: refactor global search screen into SwiftUI
1 year ago
Ryan ZHAO
3ea127ab5e
imp: customised search bar in SwiftUI
1 year ago
Ryan ZHAO
16b597e35a
organize file
1 year ago
Ryan ZHAO
5aaf02180a
clean
1 year ago
Ryan ZHAO
c985d3b361
clean up
1 year ago
Ryan ZHAO
ce50fd9265
ui: implement invite a friend screen with SwiftUI
1 year ago
Ryan ZHAO
c5eb55d1e8
WIP: implement start new conversation screen with SwiftUI
1 year ago
Ryan ZHAO
9faf835617
ui: refactor QR code screen with SwiftUI and update QR code style
1 year ago
Ryan ZHAO
5eca31aaa2
refactor & clean
1 year ago
Morgan Pretty
bac1f7b3a5
Increase build and version numbers
1 year ago
Morgan Pretty
e1d6a9dfc1
Added a migration to recreate any invalid FTS tables
1 year ago
Morgan Pretty
cbcdb9b37f
Refactored AppContext and AppRediness to Swift
1 year ago
Ryan ZHAO
3667d304f2
Merge branch 'dev' into disappearing-message-redesign
1 year ago
Morgan Pretty
f532496ee4
Increased build and version numbers
1 year ago
Morgan Pretty
33a3a42392
Reintegrated pods to fix app store build
1 year ago
Morgan Pretty
ea45951f72
Renamed the release scheme to 'App_Store_Release' to help libSession build
1 year ago
Morgan Pretty
9b21a0d251
More unit tests, attempting to parallelize CI test running
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
1 year ago
Morgan Pretty
3d60757c40
Reworked test DSL to speed up build time and added more tests
...
Fixed a bug where the group invite message could be incorrectly added in some cases
1 year ago
Morgan Pretty
476858401c
Added some more unit tests
1 year ago
Morgan Pretty
fadde4d1f2
Fixed the broken unit tests
1 year ago
Morgan Pretty
988fa5c550
Fixed build errors from merge
1 year ago
Morgan Pretty
1057a4c3fa
Merge remote-tracking branch 'origin/feature/drop-yap-database-support' into feature/groups-rebuild-part-2
...
# Conflicts:
# LibSession-Util
# Session.xcodeproj/project.pbxproj
# Session/Conversations/ConversationVC+Interaction.swift
# Session/Conversations/ConversationViewModel.swift
# Session/Conversations/Message Cells/InfoMessageCell.swift
# Session/Conversations/Settings/ThreadDisappearingMessagesSettingsViewModel.swift
# SessionMessagingKit/Database/Models/SessionThread.swift
# SessionMessagingKit/Sending & Receiving/MessageSender.swift
# SessionMessagingKit/SessionUtil/Config Handling/SessionUtil+UserGroups.swift
# SessionMessagingKit/SessionUtil/SessionUtil.swift
# SessionUtilitiesKit/Database/SSKKeychainStorage.swift
1 year ago
Morgan Pretty
60684bc977
Merge remote-tracking branch 'RyanFork/disappearing-message-redesign' into feature/drop-yap-database-support
1 year 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
1 year ago
Ryan ZHAO
0d27bbed00
refactor quote view into SwiftUI and clean up UIKit quote view
1 year ago
Morgan Pretty
32f5a18e00
WIP adding PNs for updated groups and changes for enabling unit testing
...
Started adding logic to subscribe and unsubscribe for updated group push notifications
Updated the keychain service to be injected via dependencies
Reworked the Dependencies logic to avoid a concurrent access issue
Fixed an issue where some keychain data might not be cleared in some cases
Fixed an issue where being kicked and readded to a group would make it seem to disappear ("invited" message wasn't getting created)
1 year ago
ryanzhao
2a10ab208a
clean up and implementation in message info screen
1 year ago
Morgan Pretty
0c1ea23b08
Started adding tests for the DisplayPictureDownloadJob and clean up
...
Started adding tests for the DisplayPictureDownloadJob
Cleaned up the Crypto singleton a bit
Moved the DisplayPictureManager encryption/decryption into Crypto methods
1 year ago
Morgan Pretty
4f2b629239
Added bolding to the control messages and unit testing work
...
Added bolding to the control messages
Reworked the MockFunctionHandler to have different calls with inferred return types to reduce boilerplate
Fixed broken unit tests
Fixed an issue which could occur in the ObservableTableSource where it could miss the first output if it returned too quickly
Started adding DownloadDisplayPictureJob unit tests
Minor copy tweak
1 year ago
Ryan Zhao
b9ba355008
WIP: refactor document view and voice message view
1 year ago
Morgan Pretty
a5118157b3
Finished invite statuses and toasts
...
Added invitation statuses for updated groups
Added the invite and failed invite toasts
Added proper support for the group description
Refactored the EditClosedGroupVC and UserSelectionVC to use the SessionTableViewModel
Updated the ObservableTableSource to support forcing a refresh either before or after the database observation
Removed support for the per-thread notification sound
1 year ago
Ryan Zhao
83a64c5ca1
clean
1 year ago
Ryan Zhao
61df9e2cf1
refactor disappearing timer view from objc to swift
1 year ago
Ryan Zhao
809e0eb6e6
WIP: refactor document view to Swift UI
1 year ago