Commit Graph

116 Commits

Author SHA1 Message Date
Max Radermacher
93785df9e8
Remove references to old test targets 2024-05-30 17:22:58 -05:00
Max Radermacher
1daef3b202
Remove unused performance tests 2024-05-29 12:20:31 -05:00
Max Radermacher
e7af1554e0
Run SignalCoreKit tests only when it changes 2024-05-29 11:47:21 -05:00
Harry
eba1309d9f
Add addOwner for existing attachment method 2024-05-28 15:51:52 -07:00
Harry
056b68c59e
Throw when inserting a duplicate attachment by plaintext hash 2024-05-28 15:51:06 -07:00
Harry
f32f98d826
Implement attachment owner duplication 2024-05-28 15:42:30 -07:00
Harry
a8ab3582e3
Implement attachment owner removal 2024-05-28 15:40:14 -07:00
Harry
08e7989f70
Implement enumerating attachment references by attachment id 2024-05-28 15:39:38 -07:00
Harry
ee8d4369a4
Implement updating MessageAttachmentReference receivedAtTimestamp 2024-05-28 15:38:59 -07:00
Harry
3bd4dca844
Early fail on large UInt64 values in Attachments 2024-05-28 15:38:18 -07:00
Harry
b97a25c3d8
Handle global thread wallpaper reinsertion 2024-05-28 15:37:26 -07:00
Harry
5b31c91e9f
Enable AttachmentStore insertion tests 2024-05-28 15:36:42 -07:00
Adam Sharp
c675ec09c7
Resolve designated initializer warnings in SignalServiceKit 2024-05-28 10:47:15 -04:00
Harry
3bc52c4954
Add a bunch of AttachmentStore tests 2024-05-24 13:52:06 -07:00
Jordan Rose
4a0879eb78
Add OWSChatConnectionUsingLibsignal
The choice of whether or not to use this is controlled by a
RemoteConfig flag, ios.experimentalTransportEnabled.libsignal, but
because ChatConnectionManager is set up before RemoteConfig has even
loaded its cached settings, the flag is cached in UserDefaults, like
the shadowing kill switch setting.
2024-04-26 13:13:48 -07:00
Ehren Kret
616aaa4c89 remove SignalMessaging framework 2024-03-12 03:35:34 -05:00
Ehren Kret
ad625759ca remove Signal-Internal scheme 2024-02-26 15:01:50 -06:00
Max Radermacher
fc0c5dccf7
Enable code coverage during tests for more targets 2023-11-27 20:47:59 -06:00
Max Radermacher
34c3a7ddf9
Remove Curve25519Kit schemes 2023-11-02 15:29:48 -05:00
Marissa Le Coz
d821ee7fbb Revert "Don't disable OS_ACTIVITY_MODE"
This reverts commit 54ad9fac15.
2023-10-05 22:20:58 -04:00
Marissa Le Coz
54ad9fac15 Don't disable OS_ACTIVITY_MODE 2023-10-05 22:20:30 -04:00
Elaine
6563addcde
Rewrite subscription request factory in Swift 2023-10-05 10:08:01 -06:00
Jordan Rose
fc36073a85
Add USE_STAGING environment variable to the Signal scheme 2023-09-06 16:08:29 -05:00
Evan Hahn
b042c42732 Remove new registration build target
This change should have no user impact.

Now that registration is enabled for all builds (see
53046e41cd), we can remove this build
target.
2023-03-29 17:02:10 -05:00
Harry
39ec3d8d56
Hook together RegistrationNavigationController and RegistrationCoordinator
* Move RegistrationNavigationController

* Create the most basic version of RegistrationNavController conceivable

* Hook up RegistrationCoordinator

* Add new scheme for testing registration bravo
2023-02-17 08:00:48 -08:00
Nora Trapp
e354e94587 Show proxy connection toasts from sheet view 2022-09-27 17:56:07 -07:00
Harry
8c702c8a02
Add Signal-Staging build scheme 2022-09-26 17:11:02 -07:00
Max Radermacher
f1a92f004c Remove references to SignalServiceKit (the pod) 2022-08-22 09:18:55 -07:00
Evan Hahn
6305cdc0e6
SignalServiceKit: no longer a separate pod
SignalServiceKit is currently a separate pod. This makes merges tedious
and error-prone. Ultimately, it slows us down. It might've made sense as
a standalone library before, but it's so tightly integrated now that it
isn't useful to have it be separate.

This changes that, and makes SignalServiceKit a "normal" target.

IMO, most of this change isn't that exciting—just a bunch of changes to
scaffolding. There's one slightly spicier change: our generated
`Acknowledgements.plist` is now a little more clever.

Co-authored-by: Max Radermacher <max@signal.org>
2022-08-05 16:14:15 -05:00
Jordan Rose
a275ec63ad Show the launch failure screen if the last app launch crashed
This can happen if we get past our *early* launch failure checks and
then crash. The crash is detected by setting a flag early in the app
launch process and clearing it once the UI is visible.
2022-04-22 09:55:59 -07:00
Jordan Rose
a61088b76f Add "Export Database" to the internal settings, for debugging 2022-04-18 17:36:42 -07:00
Michelle Linington
2559fa8bb4 Disable broken test 2022-02-01 10:14:51 -08:00
Ehren Kret
6c37348f8a Update to iOS 12.2 deployment target 2022-01-24 12:47:21 -06:00
Matthew Chen
bba0517478 Clean up logging. 2021-10-28 13:10:46 -03:00
Matthew Chen
8713623906 Fix profiling configuration for new SignalNSE target. 2021-10-28 12:06:59 -03:00
Matthew Chen
8472571d0a Rename NSE. 2021-10-28 11:40:26 -03:00
Matthew Chen
b9b66646ff Add SignalUI framework target. 2021-10-19 09:39:52 -03:00
Matthew Chen
d402636225 Simplify AFNetworking usage. 2021-10-15 10:50:35 -03:00
Michelle Linington
8ced863098 Fix a bug with date comparison. Added tests 2021-08-16 13:14:19 -07:00
Jordan Rose
0cb46951fa Build (but don't run) the perf tests along with the regular tests 2021-03-22 16:18:30 -07:00
Jordan Rose
68a27a76e2 Move AxolotlKit model classes into SSK and remove the dependency
We still need the AxolotlKit model classes to migrate old sessions,
but we don't need any of the actual protocol support. This also
means we can drop HKDFKit.

Additionally, we do still use some utilities from AxolotlKit:

- AxolotlExceptions.h: NSException names, should eventually be
  replaced by NSErrors everywhere

- NSData+keyVersionByte.h: prepend/remove public key type byte,
  should eventually be replaced by strong types (ECPublicKey)

- SPKProtocolContext.h: defines the SPKProtocol{Read,Write}Context
  marker protocols, should be replaced by direct use of
  SDSAny{Read,Write}Transaction
2021-03-22 16:17:47 -07:00
Nora Trapp
3669066e42 Begone OWSBatchMessageProcessor 2021-02-23 10:45:50 -08:00
Nora Trapp
7ba48d8484 PR Feedback 2021-02-17 12:00:50 -08:00
Matthew Chen
410b62f508 Add perf test around group membership serialization. 2020-09-01 17:11:08 -03:00
Nora Trapp
36dcaad781 Add 'Profiling' scheme 2020-08-17 08:22:05 -07:00
Matthew Chen
c0547f33d2 Merge remote-tracking branch 'private/release/3.5.0' 2020-02-24 20:29:33 -03:00
Nora Trapp
88ac10de05 Notification Service Extension
The NSE should only run on iOS 13.3 or later where the "filtering" entitlement
is available since our notifications don't contain any content and will often
not trigger any user visible content. We control this by setting the deployment
target to iOS 13.3.

This does not handle calls as it's currently impossible to wake the main app or
launch CallKit from within the NSE. Should we reach a point where we need to use
this extension in production the service will need to be able to differentiate
between call and non-call messages and deliver them as VOIP or Vanilla pushes as
appropriate. Alternatively, Apple may introduce some way for us to signal the
main app that a call message has been received.

This does not currently address the potential for the NSE and the main app to be
running and trying to process messages at the same time. As long as the
websocket is connected and the main app is processing messages in a timely
fashion the NSE will never be called since the service will not send pushes for
these messages, but censorship circumvention users and users where the websocket
is disconnected for some reason will legitimately receive pushes and we will
want to process those messages. How we will handle these cases requires further
thought since just terminating the NSE when the app launches is not sufficient.
We could potentially do something like terminate the NSE everytime the main app
runs the message fetcher job which should only happen if either the user
pulls-to-refresh on the conversation list or the websocket is actively connected
and receiving messsages. I plan to address this in a follow-up pull request.

Currently this code will not ever be run since the service never sends vanilla
push notifications. Eventually we will need to add logic into the main app to:
a) detect we're on iOS 13.3 or later and b) update a flag on the service telling
it to stop using VOIP pushes for non-call messages. The API for requesting this
from the service does not yet exist.
2020-01-30 11:44:41 -08:00
Michael Kirk
032feb3b9c speed up FTS deletes/updates 2020-01-14 09:40:45 -07:00
Michael Kirk
9b3ec3b1ca baselines 2020-01-14 09:40:45 -07:00
Orta Therox
f1993e7c79 Convert to using cocoapods-binary for ZXing 2020-01-02 12:03:57 -08:00