Commit Graph

122 Commits

Author SHA1 Message Date
Max Radermacher
337e40e83f
Enable Enhanced Security 2025-12-04 11:39:05 -06:00
Max Radermacher
6e9c8ed888
Reduce verbosity when launching 2024-12-17 19:54:13 -06:00
Adam Sharp
b363094e06
Enable recommended build settings for Xcode 16
- Turn on warnings for quoted includes in framework headers
- DEFINES_MODULE was incorrectly set to YES for SignalTests
- ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES is obsolete
2024-09-16 11:57:58 -04:00
Adam Sharp
9aba5c71ab Switch to Apple Development code signing at build time
Signing for distribution happens at archive/export time anyway, so there's no
need to have manual code signing configured for local builds.

Also enables use of the Archive build action without a distribution certificate
being installed.
2024-06-27 11:01:13 -04:00
Harry
bb083ca39c
Fold SignalCoreKit into SignalServiceKit
Co-authored-by: Adam Sharp <sharplet@signal.org>
2024-06-26 08:44:41 -07:00
Jordan Rose
54e4f752c9 Add OWSAuthConnectionUsingLibSignal
This is a *subclass* of OWSChatConnectionUsingLibSignal, mainly
because the authenticated/identified connection really does have
capabilities the unauth/unidentified one does not, and splitting those
out makes it easier to see which are which.

For now each websocket connection, identified and unidentified, has
its own libsignal ChatService instance, even though ChatService is
designed to manage both connections together. Later on in the
migration it'll make sense to consolidate them, but under the existing
structure of OWSChatConnection this is the easiest way to manage their
lifecycles.

Controlled by new RemoteConfig flag
"ios.experimentalTransportEnabled.libsignalAuth" (and for local
testing, UserDefaults flag UseLibsignalForIdentifiedWebsocket).
2024-06-20 15:42:00 -07:00
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