Morgan Pretty
290bce5ce0
Merge branch 'feature/session-id-blinding-part-2' into feature/database-refactor
...
# Conflicts:
# Podfile
# Podfile.lock
# Session.xcodeproj/project.pbxproj
# Session/Closed Groups/EditClosedGroupVC.swift
# Session/Closed Groups/NewClosedGroupVC.swift
# Session/Conversations/Context Menu/ContextMenuVC+Action.swift
# Session/Conversations/Context Menu/ContextMenuVC.swift
# Session/Conversations/ConversationMessageMapping.swift
# Session/Conversations/ConversationSearch.swift
# Session/Conversations/ConversationVC+Interaction.swift
# Session/Conversations/ConversationVC.swift
# Session/Conversations/ConversationViewItem.h
# Session/Conversations/ConversationViewItem.m
# Session/Conversations/ConversationViewModel.m
# Session/Conversations/Input View/InputView.swift
# Session/Conversations/Input View/MentionSelectionView.swift
# Session/Conversations/LongTextViewController.swift
# Session/Conversations/Message Cells/Content Views/LinkPreviewView.swift
# Session/Conversations/Message Cells/MessageCell.swift
# Session/Conversations/Message Cells/VisibleMessageCell.swift
# Session/Conversations/Settings/OWSConversationSettingsViewController.m
# Session/Conversations/Views & Modals/ConversationTitleView.swift
# Session/Conversations/Views & Modals/DownloadAttachmentModal.swift
# Session/Conversations/Views & Modals/JoinOpenGroupModal.swift
# Session/Conversations/Views & Modals/LinkPreviewModal.swift
# Session/Conversations/Views & Modals/MessagesTableView.swift
# Session/Conversations/Views & Modals/URLModal.swift
# Session/Home/GlobalSearch/GlobalSearchViewController.swift
# Session/Home/HomeVC.swift
# Session/Home/Message Requests/MessageRequestsViewController.swift
# Session/Media Viewing & Editing/MediaDetailViewController.m
# Session/Media Viewing & Editing/MediaPageViewController.swift
# Session/Meta/AppDelegate.m
# Session/Meta/AppDelegate.swift
# Session/Meta/AppEnvironment.swift
# Session/Meta/Signal-Bridging-Header.h
# Session/Meta/Translations/en.lproj/Localizable.strings
# Session/Meta/Translations/hi.lproj/Localizable.strings
# Session/Meta/Translations/si.lproj/Localizable.strings
# Session/Meta/Translations/zh-Hant.lproj/Localizable.strings
# Session/Notifications/AppNotifications.swift
# Session/Open Groups/JoinOpenGroupVC.swift
# Session/Settings/NukeDataModal.swift
# Session/Settings/SeedModal.swift
# Session/Settings/SettingsVC.swift
# Session/Settings/ShareLogsModal.swift
# Session/Shared/ConversationCell.swift
# Session/Shared/UserSelectionVC.swift
# Session/Utilities/BackgroundPoller.swift
# Session/Utilities/MentionUtilities.swift
# Session/Utilities/MockDataGenerator.swift
# SessionMessagingKit/Database/OWSPrimaryStorage.m
# SessionMessagingKit/Database/SSKPreferences.swift
# SessionMessagingKit/Database/Storage+Contacts.swift
# SessionMessagingKit/Database/Storage+Jobs.swift
# SessionMessagingKit/Database/Storage+Messaging.swift
# SessionMessagingKit/Database/Storage+OpenGroups.swift
# SessionMessagingKit/Database/TSDatabaseView.m
# SessionMessagingKit/File Server/FileServerAPIV2.swift
# SessionMessagingKit/Jobs/AttachmentDownloadJob.swift
# SessionMessagingKit/Jobs/AttachmentUploadJob.swift
# SessionMessagingKit/Jobs/JobQueue.swift
# SessionMessagingKit/Jobs/MessageReceiveJob.swift
# SessionMessagingKit/Jobs/MessageSendJob.swift
# SessionMessagingKit/Jobs/NotifyPNServerJob.swift
# SessionMessagingKit/Messages/Control Messages/ClosedGroupControlMessage.swift
# SessionMessagingKit/Messages/Control Messages/ConfigurationMessage+Convenience.swift
# SessionMessagingKit/Messages/Message+Destination.swift
# SessionMessagingKit/Messages/Signal/TSIncomingMessage.h
# SessionMessagingKit/Messages/Signal/TSIncomingMessage.m
# SessionMessagingKit/Messages/Signal/TSInfoMessage.h
# SessionMessagingKit/Messages/Signal/TSInfoMessage.m
# SessionMessagingKit/Messages/Signal/TSInteraction.h
# SessionMessagingKit/Messages/Signal/TSInteraction.m
# SessionMessagingKit/Messages/Signal/TSMessage.h
# SessionMessagingKit/Messages/Signal/TSMessage.m
# SessionMessagingKit/Open Groups/OpenGroupAPIV2+ObjC.swift
# SessionMessagingKit/Open Groups/OpenGroupAPIV2.swift
# SessionMessagingKit/Open Groups/OpenGroupManagerV2.swift
# SessionMessagingKit/Open Groups/OpenGroupMessageV2.swift
# SessionMessagingKit/Sending & Receiving/Mentions/MentionsManager.swift
# SessionMessagingKit/Sending & Receiving/MessageReceiver+Decryption.swift
# SessionMessagingKit/Sending & Receiving/MessageReceiver+Handling.swift
# SessionMessagingKit/Sending & Receiving/MessageReceiver.swift
# SessionMessagingKit/Sending & Receiving/MessageSender+ClosedGroups.swift
# SessionMessagingKit/Sending & Receiving/MessageSender+Encryption.swift
# SessionMessagingKit/Sending & Receiving/MessageSender.swift
# SessionMessagingKit/Sending & Receiving/Notifications/NotificationsProtocol.h
# SessionMessagingKit/Sending & Receiving/Pollers/ClosedGroupPoller.swift
# SessionMessagingKit/Sending & Receiving/Pollers/OpenGroupPollerV2.swift
# SessionMessagingKit/Sending & Receiving/Pollers/Poller.swift
# SessionMessagingKit/Storage.swift
# SessionMessagingKit/Threads/Notification+Thread.swift
# SessionMessagingKit/Threads/TSContactThread.h
# SessionMessagingKit/Threads/TSContactThread.m
# SessionMessagingKit/Threads/TSGroupModel.h
# SessionMessagingKit/Threads/TSGroupModel.m
# SessionMessagingKit/Threads/TSGroupThread.m
# SessionMessagingKit/Utilities/General.swift
# SessionNotificationServiceExtension/NSENotificationPresenter.swift
# SessionNotificationServiceExtension/NotificationServiceExtension.swift
# SessionSnodeKit/OnionRequestAPI+Encryption.swift
# SessionSnodeKit/OnionRequestAPI.swift
# SessionSnodeKit/SnodeAPI.swift
# SessionSnodeKit/SnodeMessage.swift
# SessionSnodeKit/Storage+SnodeAPI.swift
# SessionSnodeKit/Storage.swift
# SessionUtilitiesKit/General/Array+Utilities.swift
# SessionUtilitiesKit/General/Dictionary+Utilities.swift
# SessionUtilitiesKit/General/SNUserDefaults.swift
# SessionUtilitiesKit/General/Set+Utilities.swift
# SessionUtilitiesKit/Meta/SessionUtilitiesKit.h
# SessionUtilitiesKit/Utilities/Optional+Utilities.swift
# SessionUtilitiesKit/Utilities/Sodium+Conversion.swift
# SignalUtilitiesKit/Configuration.swift
# SignalUtilitiesKit/Database/Migrations/OpenGroupServerIdLookupMigration.swift
# SignalUtilitiesKit/Messaging/FullTextSearcher.swift
# SignalUtilitiesKit/Messaging/Sending & Receiving/MessageSender+Convenience.swift
# SignalUtilitiesKit/Profile Pictures/Identicon+ObjC.swift
# SignalUtilitiesKit/To Do/OWSProfileManager.m
# SignalUtilitiesKit/Utilities/NoopNotificationsManager.swift
# SignalUtilitiesKit/Utilities/UIView+OWS.swift
3 years ago
Morgan Pretty
07d1d8acee
Merge branch 'dev' into feature/session-id-blinding-part-2
...
# Conflicts:
# Podfile
# Podfile.lock
# Session/Calls/Views & Modals/CallVideoView.swift
# Session/Utilities/BackgroundPoller.swift
# SessionSnodeKit/SnodeAPI.swift
3 years ago
Morgan Pretty
59696f7d2c
Removed all the old Storage classes and YapDB extensions
...
Removed the AppUpdateNag code (unused)
Removed the Mantle dependency
3 years ago
Morgan Pretty
18d833f152
Optimised the home screen query (~50% speed improvement)
...
Updated to the latest version of GRDB
Renamed some variables for clarity
Updated the "seed viewed" banner on the HomeVC to be driven by a database setting to be consistent with other UI changes
3 years ago
Morgan Pretty
c500d4c6ca
Fixed a few bugs, resolved a number of TODOs and deleted more unused code
...
Fixed a couple of bugs with search term highlighting (updated the logic to make the highlighted content follow similar logic to what terms would have actually matched)
Fixed a bug where info messages in search results weren't rendering correctly
Shifted some duplicate query code for global search into variables
Fixed a small bug where sending attachments could incorrectly result in the mentions UI being visible
Fixed a bug where quote content was appearing incorrectly
Consolidated the ShareExtension Item and the ConversationCell.ViewModel into one type (with a more-limited query) to remove duplicate code
Added back a missing asset (deleted a long time ago)
3 years ago
Morgan Pretty
5bcc124388
Updated the SessionShareExtension to work with GRDB
...
Updated to the latest version of GRDB
Fixed an issue with db reentrant behaviour with the Attachment upload function
Finished up the updated 'sendNonDurability' functions
3 years ago
Morgan Pretty
531ddcb079
Replaced the GoogleWebRTC library (deprecated) with WebRTC-lib
3 years ago
Morgan Pretty
4eaa8c4d36
Updated Nimble to the latest version
...
Fixed some flaky OpenGroupManager tests
3 years ago
Morgan Pretty
1c575e520d
Merge remote-tracking branch 'upstream/voice-calls-2' into feature/session-id-blinding-part-2
...
# Conflicts:
# Podfile.lock
# Session.xcodeproj/project.pbxproj
# Session/Conversations/ConversationVC+Interaction.swift
# Session/Conversations/Views & Modals/JoinOpenGroupModal.swift
# Session/Home/HomeVC.swift
# Session/Open Groups/JoinOpenGroupVC.swift
# Session/Utilities/BackgroundPoller.swift
# SessionMessagingKit/Jobs/AttachmentUploadJob.swift
# SessionMessagingKit/Open Groups/OpenGroupAPIV2.swift
# SessionMessagingKit/Sending & Receiving/MessageReceiver+Handling.swift
# SessionNotificationServiceExtension/NotificationServiceExtension.swift
3 years ago
Morgan Pretty
ed9f4ea6c6
Fixed a few closed group and job issues
...
Fixed a few job migration issues
Fixed an issue with the closed group key pair management (wasn't storing keys correctly)
Refactored the OWSSound (now Preferences.Sound)
Added the logic for the AttachmentDownloadJob and enabled jobs to be cascade deleted via interactions
Optimised the HomeViewModel database observation query (fetch specific columns so changes outside those don't trigger updates)
Updated to the latest GRDB (ran into a deadlock which should be fixed in a newer version)
3 years ago
Morgan Pretty
11231599db
Further work on migrations and message pipeline refactoring
...
Refactored the AppDelegate from Objective C to Swift
Updated the HomeVC to use GRDB
Refactored a number of the Job types to be driven via GRDB and the new JobRunner
Fixed a bug where the LinkPreviewView wouldn't render correctly in dark mode
3 years ago
Morgan Pretty
b1cfa4f50a
Updated the Podfile to include the needed libraries
3 years ago
Morgan Pretty
31ecd78737
Refactored the mocking code to use a better convention which also allows for call validation
...
Added a Nimble predicate for checking a function on a mock was called
Added the various remove methods to the Storage protocol
Updated the Ed25519Type to be an instance-based protocol (needed for mocking)
3 years ago
Morgan Pretty
c04d4544f2
Added more unit tests
...
Refactored the existing unit tests to use Quick
Started adding unit tests for a number of the OpenGroupAPI network models
Added unit tests for the SessionId type
3 years ago
Morgan Pretty
a26ee12f8d
Further work on Id Blinding
...
Renamed the setter for the SOGS 'Server' object for consistency
Updated the Curve25519Kit repo to use an Oxen fork
Updated the MockDataGenerator to accomodate the latest changes
Updated the ConversationVC to better support getting replaced when the conversion from blinded to unblinded happens while on that screen
Added a cache for the mapping between blinded ids and standard ids (gets cached whenever a valid match is found)
Added a migration to remove the old 'authToken, 'lastMessageServerId' and 'lastDeletionServerId' collections (redundant in SOGS V4)
3 years ago
Morgan Pretty
3e97782d18
Merge branch 'dev' into feature/session-id-blinding-part-2
...
# Conflicts:
# Session.xcodeproj/project.pbxproj
# Session/Conversations/ConversationVC.swift
# Session/Meta/Translations/de.lproj/Localizable.strings
# Session/Meta/Translations/en.lproj/Localizable.strings
# Session/Meta/Translations/es.lproj/Localizable.strings
# Session/Meta/Translations/fa.lproj/Localizable.strings
# Session/Meta/Translations/fi.lproj/Localizable.strings
# Session/Meta/Translations/fr.lproj/Localizable.strings
# Session/Meta/Translations/hi.lproj/Localizable.strings
# Session/Meta/Translations/hr.lproj/Localizable.strings
# Session/Meta/Translations/id-ID.lproj/Localizable.strings
# Session/Meta/Translations/it.lproj/Localizable.strings
# Session/Meta/Translations/ja.lproj/Localizable.strings
# Session/Meta/Translations/nl.lproj/Localizable.strings
# Session/Meta/Translations/pl.lproj/Localizable.strings
# Session/Meta/Translations/pt_BR.lproj/Localizable.strings
# Session/Meta/Translations/ru.lproj/Localizable.strings
# Session/Meta/Translations/si.lproj/Localizable.strings
# Session/Meta/Translations/sk.lproj/Localizable.strings
# Session/Meta/Translations/sv.lproj/Localizable.strings
# Session/Meta/Translations/th.lproj/Localizable.strings
# Session/Meta/Translations/vi-VN.lproj/Localizable.strings
# Session/Meta/Translations/zh-Hant.lproj/Localizable.strings
# Session/Meta/Translations/zh_CN.lproj/Localizable.strings
3 years ago
Morgan Pretty
cc2a077a6c
Started working on `MessageRequestResponse` handling for SOGS message requests
...
Pointing Curve25519 to use a fork that exposes an XEd25519 conversion method
Fixed an issue where I had broken all message sending due to the SnodeAPI casting Onion responses to `Any`
3 years ago
Morgan Pretty
30cbe77366
Added labels to the NewConversationButtonSet
3 years ago
Morgan Pretty
f5e48cec01
Updated the project to use the Oxen fork of Sodium (instead of my one)
3 years ago
Morgan Pretty
ef09d4d5aa
Additional encryption work on id blinding
...
Got the updated blinding logic working (at least when authenticating a request - still need to deal with message signing and verification)
Storing the server capabilities in the database now so we can correctly blind requests based on them
Renamed the remaining 'v2' functions and classes to just be 'OpenGroup' since there isn't a 'V2' anymore
Cleaned up a few TODOs and functions
3 years ago
Morgan Pretty
eb927c36a9
Started cleaning up some of the SOGS and Onion Requests structure
...
Cleaned up the OnionRequestAPI so we don't need the LegacyOnionRequestAPI
Added requests for the user endpoints
Added deprecated flags to the legacy endpoints and functions
Added some logic to start handling the new poll (batch) response
Started adding unit tests for the OpenGroupAPI functions
3 years ago
Morgan Pretty
67d2a13dfb
Ran pod install to update the Podfile.lock
3 years ago
Ryan Zhao
a61e99216d
update pods
3 years ago
Ryan Zhao
64374bb59e
Revert "update pods for merge"
...
This reverts commit 6cb571bb1b
.
3 years ago
Ryan Zhao
6cb571bb1b
update pods for merge
3 years ago
Ryan Zhao
b1c2802613
update pods
3 years ago
Ryan Zhao
18fea4ab73
Merge branch 'dev' into global-search
3 years ago
Morgan Pretty
03fb5cbeeb
Cleanup and tweaks
...
Fixed some compilation issues.
Removed an unused dependency.
Cleaned up the Podfile to minimise duplication.
Pointed at an oxen fork of SignalCoreKit instead of a personal one.
3 years ago
Morgan Pretty
9994c04f1e
Updated the Podfile to fix M1 Mac build issues
3 years ago
Niels Andriesse
876814dd43
Basic proof of concept
4 years ago
Niels Andriesse
74e9cacd58
Implement MockWebSocket
4 years ago
Niels Andriesse
170da7a276
Implement VideoCallVC & CameraManager
4 years ago
Niels Andriesse
030c869d06
Add WebRTC dependency & implement CallMessage
4 years ago
coo1k
e328ab9bfd
Support for App Links
4 years ago
Niels Andriesse
a1c23394d6
Remove unused pods
4 years ago
Niels Andriesse
4958d3d368
Implement ONS API
4 years ago
nielsandriesse
afeabf0fe9
Potentially fix race condition
4 years ago
Niels Andriesse
6a810d959b
Fix initial scroll position bug
4 years ago
nielsandriesse
bffde9451c
Update CocoaPods
4 years ago
Niels Andriesse
aa027a28c5
Implement preliminary link preview view
4 years ago
nielsandriesse
1924e01edc
Merge branch 'multi-device' into ui
4 years ago
nielsandriesse
4803b96eb1
Only handle the first config sync message after restoration
4 years ago
Niels Andriesse
90e53e5cef
Redesign conversation screen part 1
4 years ago
Niels Andriesse
f2f3025554
Remove unused pod
4 years ago
Niels Andriesse
464e8864af
Clean up onboarding
4 years ago
Niels Andriesse
54e902c848
Fix various warnings
4 years ago
Niels Andriesse
ff09ee3e79
Delete unused files
4 years ago
Niels Andriesse
2a4977d269
Implement Session protocol
4 years ago
Niels Andriesse
75f7a7973b
Debug PN extension
4 years ago
Niels Andriesse
76f92000b9
Add missing pod
4 years ago
Niels Andriesse
2be42e892a
Prune unused notification service extension pods
4 years ago
Niels Andriesse
d33fcb0756
Re-install pods
4 years ago
Niels Andriesse
02454b6cc9
Point to forked YapDatabase repo
4 years ago
Niels Andriesse
ac6baec6f2
Make things compile again
4 years ago
nielsandriesse
5dfd4b1965
Restructure
4 years ago
nielsandriesse
b218a16b05
Implement attachment downloading
4 years ago
nielsandriesse
877751445d
Clean
4 years ago
nielsandriesse
e819d8f536
Update dependencies
4 years ago
nielsandriesse
1c0b32af3c
Fix ECKeyPair usage
4 years ago
nielsandriesse
000e907d47
Clean up Podfile
4 years ago
nielsandriesse
7e213c71d5
Make everything build again
4 years ago
nielsandriesse
ffa64e4747
Merge SignalMessaging into SignalUtilitiesKit
4 years ago
nielsandriesse
ae635dbd36
Make SignalMessaging work with SignalUtilitiesKit
4 years ago
nielsandriesse
c475f895e8
Create SignalUtilitiesKit
4 years ago
nielsandriesse
362e2e9c03
Update SessionMessagingKit for open groups
4 years ago
nielsandriesse
a3382f41d4
Re-organize files
4 years ago
nielsandriesse
21fe9558a4
Partially implement messaging kit encryption & decryption
5 years ago
nielsandriesse
2d618cc6e9
Re-add proof of work
5 years ago
nielsandriesse
10582e0381
Add SSKs to SessionProtocolKit
5 years ago
nielsandriesse
dcb218c864
Create SessionProtocolKit framework
5 years ago
nielsandriesse
96bfab5d93
Re-generate protos
5 years ago
nielsandriesse
c1196a6921
Start SessionMessagingKit
5 years ago
nielsandriesse
f3753abe5a
Create SessionUtilities framework
5 years ago
nielsandriesse
2b1e322832
Create SessionSnodeKit
5 years ago
nielsandriesse
0598fdfb99
Update Pods
5 years ago
nielsandriesse
dc901d7528
Update Pods
5 years ago
nielsandriesse
b63bc8e9eb
Add Sodium & remove GCDWebServer
5 years ago
nielsandriesse
8e651aadc2
Move SwiftCSV into the project
5 years ago
nielsandriesse
056ec0349a
Move ZXingObjC & SwiftCSV to CocoaPods
5 years ago
nielsandriesse
e4c8369c93
Update for metadata kit changes
5 years ago
nielsandriesse
33d23b3e51
Update Pods
5 years ago
nielsandriesse
9b527424e6
Ditch pod in favor of own implementation
5 years ago
nielsandriesse
cd761d2687
Make new private chat screen use a UITextView
5 years ago
nielsandriesse
6e6e9332bf
Improve performance
5 years ago
nielsandriesse
7475c7c6b8
Update Pods
5 years ago
nielsandriesse
707dad64d9
Update Pods
5 years ago
nielsandriesse
79655169bd
Update Pods
5 years ago
nielsandriesse
832e70f588
Debug
5 years ago
nielsandriesse
80dcca627a
Implement polling, encryption & decryption
5 years ago
nielsandriesse
16918a50d8
Update Pods
5 years ago
nielsandriesse
93b3054c17
Update CryptoSwift
5 years ago
nielsandriesse
301be4a957
Update Pods
5 years ago
nielsandriesse
eab26c504c
Fix build
5 years ago
nielsandriesse
74bbe067d8
Update Pods
5 years ago
gmbnt
5f9b0aec9f
Update pods
5 years ago
ryanzhao
ca20f3f979
add a Notification Service Extension for PN with preview
5 years ago
Niels Andriesse
40bb4ba1a4
Set device link message TTL, clean & add more analytics
6 years ago
Niels Andriesse
a604ba5646
Start implementing device linking UI
6 years ago
Niels Andriesse
1e4b88d616
Set up Crashlytics
6 years ago
Niels Andriesse
b367ea7ab8
Set up Mixpanel
6 years ago