Commit Graph

48 Commits

Author SHA1 Message Date
Ehren Kret
c76f7dfbdf
migrate HTTPUtils to swift 2024-03-01 08:32:34 -08:00
Ehren Kret
8a69067d97 convert RESTNetworkManager to swift 2024-02-29 12:58:55 -06:00
Pete Walters
5429ec20bd
Refactor CDN2 uploads 2024-02-02 12:41:21 -06:00
Max Radermacher
d24c370cb1
Convert OWSUserProfile to SDSCodableModel 2024-01-24 17:14:10 -06:00
Max Radermacher
6c1c4b931d
Clean up DecryptedProfile 2024-01-18 16:01:48 -06:00
Max Radermacher
59f2f23d68
Swiftify ReceiptSender (OWSOutgoingReceiptManager) 2024-01-04 15:55:39 -06:00
Harry
c4ad4dbc3b
Swiftify OWSRecordTranscriptJob/OWSIncomingSentMessageTranscript 2023-12-19 09:08:09 -08:00
Max Radermacher
90d89d7a5b
Swiftify the rest of OWSMessageManager 2023-12-04 15:42:04 -06:00
Max Radermacher
f848a6373f
Swiftify the rest of MessageSender 2023-11-27 11:29:23 -06:00
Max Radermacher
46ed408517
Remove some unused code 2023-11-15 18:24:20 -06:00
Igor Solomennikov
be1d8220d3
Convert OWSContact to Swift. 2023-11-07 16:21:00 -08:00
Max Radermacher
d52082abbe
Prefer IdentityKey over typeless Data objects 2023-11-07 11:37:02 -06:00
Max Radermacher
bf41b3e3e7
Swiftify contact sync code & move queries around 2023-11-02 23:07:23 -05:00
Max Radermacher
4a94d7db3e
Remove unused code that was replaced by LibSignal 2023-10-31 13:29:27 -05:00
Harry
9037c31816
[Death to TSAccountManager, long live TSAccountManager][10] Delete old TSAccountManager 2023-10-05 09:23:41 -07:00
Max Radermacher
434317cb02
Swiftify & protocolize OWSIdentityManager 2023-08-29 10:28:11 -05:00
Max Radermacher
c57376a269
Remove unused/obsolete payments code 2023-08-24 18:05:38 -05:00
Harry
ecbb1057c9
[MOB] Payments activation request in chat 2023-08-24 15:38:13 -07:00
Harry
2ac759408a
[MOB] Payment messages in chat 2023-08-24 13:55:39 -07:00
Sasha Weiss
73c17931dc
Swiftify OWSOutgoingGroupCallMessage 2023-08-14 16:04:23 -07:00
Sasha Weiss
9657ad2507
Move and document call-related message types 2023-08-14 10:10:35 -07:00
Pete Walters
4356b505b2
Migrate TSPreKeyManager to Swift 2023-07-27 21:02:33 -05:00
Max Radermacher
7e66ad45dd
Remove unused fragment files
They appear to be unused since 7927bc1afe.
2023-06-30 14:50:35 -05:00
Harry
2f621c27b9
Translate OWSFingerprint to swift 2023-06-23 09:52:53 -07:00
Sasha Weiss
2845d60e13
Remove lots of GV1-related code 2023-06-01 11:47:43 -07:00
Max Radermacher
94f96fcd8e
Migrate SignalRecipient to SDSCodableModel 2023-05-24 15:50:17 -07:00
Marissa Le Coz
4be334c5ad
Migrate SignalAccount to use SDSCodableModel 2023-05-11 17:34:15 -04:00
Harry
4fdd5b712f
Migrate TSRequest to swift 2023-05-08 11:01:59 -07:00
Max Radermacher
92e170fe12
Swiftify SSKEnvironment 2023-04-14 10:58:21 -07:00
Sasha Weiss
f1063c1071
Migrate OWSDevice to SDSCodableModel 2023-04-13 14:00:46 -07:00
Max Radermacher
e4eac76ffb Clean up framework headers 2023-04-13 13:45:30 -07:00
Max Radermacher
073a2e1081 Define CocoaLumberjack constants only where needed 2023-04-13 13:44:36 -07:00
Sasha Weiss
c9fbc9a9ee
Migrate SSKJobRecord and subclasses to SDSCodableModel using factory init 2023-04-13 10:57:48 -07:00
Max Radermacher
22ef2d8e55
Swiftify AppSetup 2023-04-12 17:54:48 -07:00
Evan Hahn
9e18a245df Swiftify AppVersion, stop storing properties
This commit:

- Converts `AppVersion` to Swift
- Creates `AppVersionForObjC` as a bridge
- Stops storing many properties; instead, pulls them off `UserDefaults`
  as needed
2023-04-05 16:02:58 -05:00
Max Radermacher
0a105cf732 Remove unused NSArray+OWS.[hm] files 2023-03-27 11:30:06 -07:00
Max Radermacher
98f3c03d41
Remove unused OWSDispatch class 2023-02-27 14:17:05 -08:00
Max Radermacher
135074b570 Verify IAS certificates using LibSignalClient 2023-02-10 10:23:50 -08:00
Harry
b3136fb42c
Call Disposition
* Add CallEvent sync message proto

* Add CallRecord class and db table

* Renames and comments for clarity

* create and update CallRecord from local device call events

* Handle incoming call event sync messages

* Add outgoing call sync event piping

* Send call event sync messages

* Handle call record sync messages before the app is launched

* Mark TSCall interactions as read and update their status when getting call event sync messages

* Prevent CallKit race conditions by checking state before creating TSCall interactions

* Update chat call event text for unanswered and declined calls

* Remove incorrect debug assert which fires every time a call is missed in the background

* PR comments, mostly nits

* convert old debug assert into a log + task comment

* nit

* Update copy for in chat call logs

* Smaller PR comments

* Add foreign key to CallRecord's interactionUniqueId

* Update write transaction ordering comment

* run genstrings

* fix strings
2023-01-10 11:48:46 -08:00
Evan Hahn
b7cd791caf Swiftify OWSDisappearingMessagesFinder
This change should have no user impact.
2022-12-13 17:11:50 -06:00
Evan Hahn
859ef8e9e6
Swiftify test-only call message handler
This change should have no user impact.

This converts `OWSFakeCallMessageHandler` to Swift (renaming it to
`FakeCallMessageHandler`). It was a mechanical conversion.
2022-11-10 12:46:13 -06:00
Evan Hahn
370ff654e7
Change license to AGPL
Change license to AGPL

This commit:

- Updates the `LICENSE` file

- Start every file with something like:

      // Copyright YEAR_FIRST_PUBLISHED Signal Messenger, LLC
      // SPDX-License-Identifier: AGPL-3.0-only

---

First, I removed existing license headers with this Ruby 3.1.2 script:

    require 'set'

    EXTENSIONS_TO_CHECK = Set['.h', '.hpp', '.cpp', '.m', '.mm', '.pch', '.swift']

    same = 0
    different = 0

    all_files = `git ls-files`.lines.map { |line| line.strip }
    all_files.each do |relative_path|
      if relative_path == 'Pods'
        next
      end

      unless EXTENSIONS_TO_CHECK.include? File.extname(relative_path)
        next
      end

      path = File.expand_path(relative_path)

      contents = File.read(path)
      new_contents = contents.sub(/\/\/\n\/\/  Copyright .*\n\/\/\n\n/, '')

      if contents == new_contents
        same += 1
      else
        different += 1
      end

      File.write(path, new_contents)
    end

    puts "updated #{different} file(s), left #{same} untouched"

I'm sure this script could be improved, but it worked well enough.

Then, I created `Scripts/lint/lint-license-headers` and ran it to auto-
fix a lot of files. This changed the mode of some files, but I think
that's actually desirable. For example,
`SignalServiceKit/src/Util/AppContext.m` previously had a mode of
`0755/-rwxr-xr-x`, and it's now `0644/-rw-r--r--`.

Then I fixed some stragglers and updated the precommit script.

See [a similar change in the Desktop app][0].

[0]: 8bfaf598af
2022-10-13 08:25:37 -05:00
Evan Hahn
09a279e55d Swiftify fake message sender
This should only affect tests.

This was a pretty mechanical conversion. I removed some unused variables
while I was here, too.
2022-10-05 10:50:53 +00:00
Sasha Weiss
7fb1da0cec
Migrate ExperienceUpgrade models to SDSCodableModel 2022-10-04 08:52:03 -07:00
Evan Hahn
5a15f2f224
Move message padding to Data
Message padding is currently on `NSData`.

This moves it to Data, and rewrites everything in Swift.

Tested this by sending and receiving a message.
2022-09-15 12:50:20 -05:00
Sasha Weiss
569cdb2aad
Durable jobs for leaving groups 2022-08-26 13:13:23 -07:00
Harry
33e26b6c4c
Migrate OWSSignalService from objc to swift, and split it into a protocol and implementation
* Split OWSSignalService into a swift protocol and implementation, migrated from objc

* Put OWSSignalService under SSKEnvironment and use mock in mock environment

* Rename from basename + impl to protocol + basename

* extend mock functionality a bit

* pr feedback
2022-08-24 14:36:52 -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