Commit Graph

33 Commits

Author SHA1 Message Date
Sasha Weiss
a6387b9bfd
Use failIfThrows in Backup archiving enumerations 2026-05-21 16:16:33 -07:00
Max Radermacher
13d5fe93dc
Run swiftformat . using v0.60.1 2026-03-26 17:10:38 -05:00
Max Radermacher
a23a721e58
Modernize receipts pending message requests 2026-02-20 21:13:54 -06:00
Pete Walters
b198b9e8a9
Fix a permissions issue related to validating media tier attachments. 2026-02-06 15:18:24 -06:00
Sasha Weiss
d267ec8305
Run swiftformat . 2025-12-30 11:34:05 -08:00
Max Radermacher
e1f5eebf6f
Always run the same migration code 2025-12-23 09:09:55 -06:00
Sasha Weiss
a237b9c114
Simplify and consolidate "DB Corruption" handling 2025-12-18 17:11:36 -08:00
Max Radermacher
30060e12d5
Run schema migrations before creating globals 2025-09-29 16:55:17 -05:00
Harry
24f5e73633
Consolidate oversize text handling 2025-07-30 13:27:06 -07:00
Sasha Weiss
bb048e8b59
One transaction type to rule them all and in the darkness bind them 2025-03-13 21:43:35 -07:00
Sasha Weiss
2000b82c0b
One KeyValueStore to rule them all 2024-11-15 18:47:54 -06:00
Ehren Kret
de32c7799d remove NSObject and Dependencies extension computed vars for SignalServiceKit 2024-10-11 23:12:59 -05:00
Harry Sanabria
044f277a28 Pass AppReadiness instance to a ton of classes that need to retain it as an instance var 2024-09-27 15:03:52 -07:00
Sasha Weiss
78ae578aa0
Use the withDefaults pattern for TSOutgoingMessageBuilder 2024-08-06 10:22:07 -07:00
Adam Sharp
34a8cf2bda
Rename owsAssert to owsPrecondition 2024-07-09 10:42:56 -04:00
Sasha Weiss
2c5f47e95e
Consolidate similar InteractionFinder methods 2024-06-04 14:55:36 -07:00
Sasha Weiss
6ff76dd7e6
Do away with some ObjC test infra 2024-05-06 09:57:21 -07:00
Sasha Weiss
a25868491f
Make defaults in TSIncomingMessageBuilder explicit and complete 2024-05-02 15:56:02 -07:00
Max Radermacher
20783085bb
Replace SAMKeychain with direct keychain access 2024-04-05 21:50:00 -05:00
Max Radermacher
0a24b7b357
Clean up recipient searches 2024-03-07 11:57:45 -06:00
Max Radermacher
ded1d2f5b8
Assume everybody is PNI-capable 2024-02-13 14:53:39 -06:00
Sasha Weiss
43256c85e8
Add extension for sqliteRowId 2023-10-13 15:17:54 -07:00
Harry
aa0e250cb7
[Death to TSAccountManager, long live TSAccountManager][9] Migrate usages of old TSAccountManager to new 2023-10-05 08:56:08 -07:00
Max Radermacher
29472146a2
[ServiceId] Update outgoing receipts 2023-08-17 12:10:58 -05:00
Max Radermacher
ac14bc637e
[ServiceId] Update TSIncomingMessageBuilder 2023-08-02 17:40:56 -05:00
Max Radermacher
46f8d6cb56
[ServiceId] Update reactions 2023-08-02 17:14:52 -05:00
Max Radermacher
17a2fb4093
Rename ServiceId -> UntypedServiceId 2023-07-26 16:56:19 -05:00
Max Radermacher
b593cba603
Adopt randomForTesting/constantForTesting 2023-07-26 16:29:14 -05:00
Max Radermacher
5acabbe61f
Prepare interactions for modern recipient merging 2023-06-28 11:58:44 -05:00
Evan Hahn
2895b84ef1
Database recovery: REINDEX as a first step
*I recommend reviewing this with whitespace changes disabled.*
2023-04-05 15:21:16 -05:00
Evan Hahn
b95a1c4363
Make FullTextSearchFinder stateless
This change should have no user impact. I think this is a useful
cleanup.
2023-02-06 13:33:43 -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
349681ff85
Attempt to recover corrupted databases
If a user's database is corrupted, we now try to fix it. I recommend
reviewing `DatabaseRecovery` to see how this works, and
`DatabaseRecoveryViewController` for the bulk of the UI.
2022-10-06 16:42:19 -05:00