Browse Source

run 'pod deintegrate; pod install' and update pod deployment version to 11.0

B. Petersen 1 year ago
parent
commit
4b6bfa3424
56 changed files with 682 additions and 620 deletions
  1. 9 9
      Podfile.lock
  2. 14 0
      Pods/CocoaLumberjack/CHANGELOG.md
  3. 1 1
      Pods/CocoaLumberjack/LICENSE
  4. 2 1
      Pods/CocoaLumberjack/README.md
  5. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/CLI/CLIColor.m
  6. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/DDASLLogCapture.m
  7. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/DDASLLogger.m
  8. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/DDAbstractDatabaseLogger.m
  9. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/DDFileLogger+Internal.h
  10. 26 14
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/DDFileLogger.m
  11. 95 80
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/DDLog.m
  12. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/DDLoggerNames.m
  13. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/DDOSLogger.m
  14. 118 165
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/DDTTYLogger.m
  15. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/Extensions/DDContextFilterLogFormatter+Deprecated.m
  16. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/Extensions/DDContextFilterLogFormatter.m
  17. 21 50
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/Extensions/DDDispatchQueueLogFormatter.m
  18. 3 3
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/Extensions/DDFileLogger+Buffering.m
  19. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/Extensions/DDMultiFormatter.m
  20. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/Supporting Files/CocoaLumberjack.h
  21. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/Supporting Files/DDLegacyMacros.h
  22. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/CLIColor.h
  23. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDASLLogCapture.h
  24. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDASLLogger.h
  25. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDAbstractDatabaseLogger.h
  26. 2 2
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDAssertMacros.h
  27. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDContextFilterLogFormatter+Deprecated.h
  28. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDContextFilterLogFormatter.h
  29. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDDispatchQueueLogFormatter.h
  30. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDFileLogger+Buffering.h
  31. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDFileLogger.h
  32. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDLog+LOGV.h
  33. 69 5
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDLog.h
  34. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDLogMacros.h
  35. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDLoggerNames.h
  36. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDMultiFormatter.h
  37. 1 1
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDOSLogger.h
  38. 2 2
      Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDTTYLogger.h
  39. 9 9
      Pods/Manifest.lock
  40. 164 161
      Pods/Pods.xcodeproj/project.pbxproj
  41. BIN
      Pods/SwiftFormat/CommandLineTool/swiftformat
  42. 32 5
      Pods/SwiftFormat/README.md
  43. BIN
      Pods/SwiftLint/swiftlint
  44. 1 1
      Pods/Target Support Files/CocoaLumberjack/CocoaLumberjack-Info.plist
  45. 1 1
      Pods/Target Support Files/Pods-deltachat-ios/Pods-deltachat-ios-acknowledgements.markdown
  46. 1 1
      Pods/Target Support Files/Pods-deltachat-ios/Pods-deltachat-ios-acknowledgements.plist
  47. 1 1
      Pods/Target Support Files/Pods-deltachat-ios/Pods-deltachat-ios-frameworks.sh
  48. 1 1
      Pods/Target Support Files/Pods-deltachat-ios/Pods-deltachat-ios.debug.xcconfig
  49. 1 1
      Pods/Target Support Files/Pods-deltachat-ios/Pods-deltachat-ios.release.xcconfig
  50. 1 1
      Pods/Target Support Files/ReachabilitySwift/ReachabilitySwift.debug.xcconfig
  51. 1 1
      Pods/Target Support Files/ReachabilitySwift/ReachabilitySwift.release.xcconfig
  52. 1 1
      Pods/Target Support Files/SwiftFormat/SwiftFormat.debug.xcconfig
  53. 1 1
      Pods/Target Support Files/SwiftFormat/SwiftFormat.release.xcconfig
  54. 1 1
      Pods/Target Support Files/Swifter/Swifter.debug.xcconfig
  55. 1 1
      Pods/Target Support Files/Swifter/Swifter.release.xcconfig
  56. 77 75
      deltachat-ios.xcodeproj/project.pbxproj

+ 9 - 9
Podfile.lock

@@ -1,7 +1,7 @@
 PODS:
 PODS:
-  - CocoaLumberjack (3.8.0):
-    - CocoaLumberjack/Core (= 3.8.0)
-  - CocoaLumberjack/Core (3.8.0)
+  - CocoaLumberjack (3.8.1):
+    - CocoaLumberjack/Core (= 3.8.1)
+  - CocoaLumberjack/Core (3.8.1)
   - libwebp (1.3.2):
   - libwebp (1.3.2):
     - libwebp/demux (= 1.3.2)
     - libwebp/demux (= 1.3.2)
     - libwebp/mux (= 1.3.2)
     - libwebp/mux (= 1.3.2)
@@ -28,8 +28,8 @@ PODS:
   - SVGKit (3.0.0):
   - SVGKit (3.0.0):
     - CocoaLumberjack (~> 3.0)
     - CocoaLumberjack (~> 3.0)
   - Swifter (1.5.0)
   - Swifter (1.5.0)
-  - SwiftFormat/CLI (0.51.8)
-  - SwiftLint (0.51.0)
+  - SwiftFormat/CLI (0.52.4)
+  - SwiftLint (0.53.0)
 
 
 DEPENDENCIES:
 DEPENDENCIES:
   - ReachabilitySwift
   - ReachabilitySwift
@@ -66,7 +66,7 @@ CHECKOUT OPTIONS:
     :git: https://github.com/httpswift/swifter.git
     :git: https://github.com/httpswift/swifter.git
 
 
 SPEC CHECKSUMS:
 SPEC CHECKSUMS:
-  CocoaLumberjack: 78abfb691154e2a9df8ded4350d504ee19d90732
+  CocoaLumberjack: 5c7e64cdb877770859bddec4d3d5a0d7c9299df9
   libwebp: 1786c9f4ff8a279e4dac1e8f385004d5fc253009
   libwebp: 1786c9f4ff8a279e4dac1e8f385004d5fc253009
   ReachabilitySwift: 985039c6f7b23a1da463388634119492ff86c825
   ReachabilitySwift: 985039c6f7b23a1da463388634119492ff86c825
   SCSiriWaveformView: 016392911fb442c17d6dbad68e666edb13193c02
   SCSiriWaveformView: 016392911fb442c17d6dbad68e666edb13193c02
@@ -75,9 +75,9 @@ SPEC CHECKSUMS:
   SDWebImageWebPCoder: af09429398d99d524cae2fe00f6f0f6e491ed102
   SDWebImageWebPCoder: af09429398d99d524cae2fe00f6f0f6e491ed102
   SVGKit: 1ad7513f8c74d9652f94ed64ddecda1a23864dea
   SVGKit: 1ad7513f8c74d9652f94ed64ddecda1a23864dea
   Swifter: aa3514bbb8df8980c118f7bb1b80f2da24e39c2b
   Swifter: aa3514bbb8df8980c118f7bb1b80f2da24e39c2b
-  SwiftFormat: 4334264324e20bad415888316165bdc1fc2860bc
-  SwiftLint: 1b7561918a19e23bfed960e40759086e70f4dba5
+  SwiftFormat: 3471ff966ddb724bd7acd091c865aaa6582dde08
+  SwiftLint: 5ce4d6a8ff83f1b5fd5ad5dbf30965d35af65e44
 
 
 PODFILE CHECKSUM: bbaaa9c3242dd69a1c26c334c2eeb92bbece8f27
 PODFILE CHECKSUM: bbaaa9c3242dd69a1c26c334c2eeb92bbece8f27
 
 
-COCOAPODS: 1.12.1
+COCOAPODS: 1.13.0

+ 14 - 0
Pods/CocoaLumberjack/CHANGELOG.md

@@ -1,3 +1,17 @@
+# [3.8.1 - Xcode 14.3 on Aug 21st, 2023](https://github.com/CocoaLumberjack/CocoaLumberjack/releases/tag/3.8.1)
+
+### Public
+
+- Silence double conversion warnings for 32-bit watchOS (#1320)
+- Enable ALLOW_TARGET_PLATFORM_SPECIALIZATION (#1321)
+- Update to swift-log 1.5.2, implement metadata providers (#1329)
+- Preserve `messageFormat` in `DDLogMessage` (#1347)
+
+### Internal
+
+- Update copyright for 2023
+
+
 ## [3.8.0 - Xcode 14.1 on Nov 2nd, 2022](https://github.com/CocoaLumberjack/CocoaLumberjack/releases/tag/3.8.0)
 ## [3.8.0 - Xcode 14.1 on Nov 2nd, 2022](https://github.com/CocoaLumberjack/CocoaLumberjack/releases/tag/3.8.0)
 
 
 ### Public
 ### Public

+ 1 - 1
Pods/CocoaLumberjack/LICENSE

@@ -1,6 +1,6 @@
 BSD 3-Clause License
 BSD 3-Clause License
 
 
-Copyright (c) 2010-2022, Deusty, LLC
+Copyright (c) 2010-2023, Deusty, LLC
 All rights reserved.
 All rights reserved.
 
 
 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

+ 2 - 1
Pods/CocoaLumberjack/README.md

@@ -204,7 +204,7 @@ The current version of Lumberjack requires:
 - watchOS 4 or later
 - watchOS 4 or later
 
 
 ### Backwards compatibility
 ### Backwards compatibility
-- for Xcode 12 and Swift up to 5.4, use the 3.7.4 version
+- for iOS/tvOS up to 10, watchOS up to 3, macOS up to 10.12, Xcode up to 13 and Swift up to 5.4, use the 3.7.4 version
 - for Xcode 11 and Swift up to 5.2, use the 3.6.2 version
 - for Xcode 11 and Swift up to 5.2, use the 3.6.2 version
 - for Xcode 10 and Swift 4.2, use the 3.5.2 version
 - for Xcode 10 and Swift 4.2, use the 3.5.2 version
 - for iOS 8, use the 3.6.1 version
 - for iOS 8, use the 3.6.1 version
@@ -289,6 +289,7 @@ _Example_: `DDLogInfo("User: \(myUser)")` will add the `myUser` info to the logs
 - CocoaLumberjack is available under the BSD 3 license. See the [LICENSE file](LICENSE).
 - CocoaLumberjack is available under the BSD 3 license. See the [LICENSE file](LICENSE).
 
 
 ## Extensions
 ## Extensions
+- [Birch-Lumberjack](https://github.com/gruffins/birch-lumberjack) A remote logger for CocoaLumberjack
 - [BugfenderSDK-CocoaLumberjack](https://github.com/bugfender/BugfenderSDK-CocoaLumberjack) A Bugfender logger for CocoaLumberjack
 - [BugfenderSDK-CocoaLumberjack](https://github.com/bugfender/BugfenderSDK-CocoaLumberjack) A Bugfender logger for CocoaLumberjack
 - [LogIO-CocoaLumberjack](https://github.com/s4nchez/LogIO-CocoaLumberjack) A log.io logger for CocoaLumberjack
 - [LogIO-CocoaLumberjack](https://github.com/s4nchez/LogIO-CocoaLumberjack) A log.io logger for CocoaLumberjack
 - [XCDLumberjackNSLogger](https://github.com/0xced/XCDLumberjackNSLogger) CocoaLumberjack logger which sends logs to NSLogger
 - [XCDLumberjackNSLogger](https://github.com/0xced/XCDLumberjackNSLogger) CocoaLumberjack logger which sends logs to NSLogger

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/CLI/CLIColor.m

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/DDASLLogCapture.m

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/DDASLLogger.m

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/DDAbstractDatabaseLogger.m

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/DDFileLogger+Internal.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 26 - 14
Pods/CocoaLumberjack/Sources/CocoaLumberjack/DDFileLogger.m

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,
@@ -1137,6 +1137,13 @@ NSTimeInterval     const kDDRollingLeeway              = 1.0;              // 1s
     NSAssert([self isOnInternalLoggerQueue], @"lt_ methods should be on logger queue.");
     NSAssert([self isOnInternalLoggerQueue], @"lt_ methods should be on logger queue.");
     NSAssert(_currentLogFileHandle, @"Can not monitor without handle.");
     NSAssert(_currentLogFileHandle, @"Can not monitor without handle.");
 
 
+    // This seems to work around crashes when an active source is replaced / released.
+    // See https://github.com/CocoaLumberjack/CocoaLumberjack/issues/1341
+    // And https://stackoverflow.com/questions/36296528/what-does-this-dispatch-xref-dispose-error-mean
+    if (_currentLogFileVnode) {
+        dispatch_source_cancel(_currentLogFileVnode);
+    }
+
     _currentLogFileVnode = dispatch_source_create(DISPATCH_SOURCE_TYPE_VNODE,
     _currentLogFileVnode = dispatch_source_create(DISPATCH_SOURCE_TYPE_VNODE,
                                                   (uintptr_t)[_currentLogFileHandle fileDescriptor],
                                                   (uintptr_t)[_currentLogFileHandle fileDescriptor],
                                                   DISPATCH_VNODE_DELETE | DISPATCH_VNODE_RENAME | DISPATCH_VNODE_REVOKE,
                                                   DISPATCH_VNODE_DELETE | DISPATCH_VNODE_RENAME | DISPATCH_VNODE_REVOKE,
@@ -1730,15 +1737,15 @@ static NSString *_xattrToExtensionName(NSString *attrName) {
 
 
     if (result < 0) {
     if (result < 0) {
         if (errno != ENOENT) {
         if (errno != ENOENT) {
-            NSLogError(@"DDLogFileInfo: setxattr(%@, %@): error = %s",
+            NSLogError(@"DDLogFileInfo: setxattr(%@, %@): error = %@",
                        attrName,
                        attrName,
                        filePath,
                        filePath,
-                       strerror(errno));
+                       @(strerror(errno)));
         } else {
         } else {
-            NSLogDebug(@"DDLogFileInfo: File does not exist in setxattr(%@, %@): error = %s",
+            NSLogDebug(@"DDLogFileInfo: File does not exist in setxattr(%@, %@): error = %@",
                        attrName,
                        attrName,
                        filePath,
                        filePath,
-                       strerror(errno));
+                       @(strerror(errno)));
         }
         }
     }
     }
 #if TARGET_IPHONE_SIMULATOR
 #if TARGET_IPHONE_SIMULATOR
@@ -1755,10 +1762,10 @@ static NSString *_xattrToExtensionName(NSString *attrName) {
     int result = removexattr(path, name, 0);
     int result = removexattr(path, name, 0);
 
 
     if (result < 0 && errno != ENOATTR) {
     if (result < 0 && errno != ENOATTR) {
-        NSLogError(@"DDLogFileInfo: removexattr(%@, %@): error = %s",
+        NSLogError(@"DDLogFileInfo: removexattr(%@, %@): error = %@",
                    attrName,
                    attrName,
                    self.fileName,
                    self.fileName,
-                   strerror(errno));
+                   @(strerror(errno)));
     }
     }
 
 
 #if TARGET_IPHONE_SIMULATOR
 #if TARGET_IPHONE_SIMULATOR
@@ -1784,16 +1791,21 @@ static NSString *_xattrToExtensionName(NSString *attrName) {
     return [filePath hash];
     return [filePath hash];
 }
 }
 
 
+- (NSComparisonResult)reverseCompareDatesUs:(NSDate *_Nullable)us them:(NSDate *_Nullable)them {
+    if (us != nil && them != nil) {
+        return [them compare:(NSDate * _Nonnull)us];
+    } else if (us == nil && them == nil) {
+       return NSOrderedSame;
+    }
+    return them == nil ? NSOrderedAscending : NSOrderedDescending;
+}
+
 - (NSComparisonResult)reverseCompareByCreationDate:(DDLogFileInfo *)another {
 - (NSComparisonResult)reverseCompareByCreationDate:(DDLogFileInfo *)another {
-    __auto_type us = [self creationDate];
-    __auto_type them = [another creationDate];
-    return [them compare:us];
+    return [self reverseCompareDatesUs:[self creationDate] them:[another creationDate]];
 }
 }
 
 
 - (NSComparisonResult)reverseCompareByModificationDate:(DDLogFileInfo *)another {
 - (NSComparisonResult)reverseCompareByModificationDate:(DDLogFileInfo *)another {
-    __auto_type us = [self modificationDate];
-    __auto_type them = [another modificationDate];
-    return [them compare:us];
+    return [self reverseCompareDatesUs:[self modificationDate] them:[another modificationDate]];
 }
 }
 
 
 @end
 @end
@@ -1806,7 +1818,7 @@ static NSString *_xattrToExtensionName(NSString *attrName) {
  * want (even if device is locked). Thats why that attribute have to be changed to
  * want (even if device is locked). Thats why that attribute have to be changed to
  * NSFileProtectionCompleteUntilFirstUserAuthentication.
  * NSFileProtectionCompleteUntilFirstUserAuthentication.
  */
  */
-BOOL doesAppRunInBackground() {
+BOOL doesAppRunInBackground(void) {
     BOOL answer = NO;
     BOOL answer = NO;
 
 
     NSArray *backgroundModes = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"UIBackgroundModes"];
     NSArray *backgroundModes = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"UIBackgroundModes"];

+ 95 - 80
Pods/CocoaLumberjack/Sources/CocoaLumberjack/DDLog.m

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,
@@ -349,21 +349,16 @@ static NSUInteger _numProcessors;
     if (format) {
     if (format) {
         va_start(args, format);
         va_start(args, format);
 
 
-        NSString *message = [[NSString alloc] initWithFormat:format arguments:args];
-
-        va_end(args);
-
-        va_start(args, format);
-
         [self log:asynchronous
         [self log:asynchronous
-          message:message
             level:level
             level:level
              flag:flag
              flag:flag
           context:context
           context:context
              file:file
              file:file
          function:function
          function:function
              line:line
              line:line
-              tag:tag];
+              tag:tag
+           format:format
+             args:args];
 
 
         va_end(args);
         va_end(args);
     }
     }
@@ -383,21 +378,16 @@ static NSUInteger _numProcessors;
     if (format) {
     if (format) {
         va_start(args, format);
         va_start(args, format);
 
 
-        NSString *message = [[NSString alloc] initWithFormat:format arguments:args];
-
-        va_end(args);
-
-        va_start(args, format);
-
         [self log:asynchronous
         [self log:asynchronous
-          message:message
             level:level
             level:level
              flag:flag
              flag:flag
           context:context
           context:context
              file:file
              file:file
          function:function
          function:function
              line:line
              line:line
-              tag:tag];
+              tag:tag
+           format:format
+             args:args];
 
 
         va_end(args);
         va_end(args);
     }
     }
@@ -427,56 +417,24 @@ static NSUInteger _numProcessors;
      format:(NSString *)format
      format:(NSString *)format
        args:(va_list)args {
        args:(va_list)args {
     if (format) {
     if (format) {
-        NSString *message = [[NSString alloc] initWithFormat:format arguments:args];
-        [self log:asynchronous
-          message:message
-            level:level
-             flag:flag
-          context:context
-             file:file
-         function:function
-             line:line
-              tag:tag];
-    }
-}
-
-+ (void)log:(BOOL)asynchronous
-    message:(NSString *)message
-      level:(DDLogLevel)level
-       flag:(DDLogFlag)flag
-    context:(NSInteger)context
-       file:(const char *)file
-   function:(const char *)function
-       line:(NSUInteger)line
-        tag:(id)tag {
-    [self.sharedInstance log:asynchronous message:message level:level flag:flag context:context file:file function:function line:line tag:tag];
-}
-
-- (void)log:(BOOL)asynchronous
-    message:(NSString *)message
-      level:(DDLogLevel)level
-       flag:(DDLogFlag)flag
-    context:(NSInteger)context
-       file:(const char *)file
-   function:(const char *)function
-       line:(NSUInteger)line
-        tag:(id)tag {
-// Nullity checks are handled by -initWithMessage:
+        // Nullity checks are handled by -initWithMessage:
 #pragma clang diagnostic push
 #pragma clang diagnostic push
 #pragma clang diagnostic ignored "-Wnullable-to-nonnull-conversion"
 #pragma clang diagnostic ignored "-Wnullable-to-nonnull-conversion"
-    DDLogMessage *logMessage = [[DDLogMessage alloc] initWithMessage:message
-                                                               level:level
-                                                                flag:flag
-                                                             context:context
-                                                                file:@(file)
-                                                            function:@(function)
-                                                                line:line
-                                                                 tag:tag
-                                                             options:(DDLogMessageOptions)0
-                                                           timestamp:nil];
+        DDLogMessage *logMessage = [[DDLogMessage alloc] initWithFormat:format
+                                                                   args:args
+                                                                  level:level
+                                                                   flag:flag
+                                                                context:context
+                                                                   file:@(file)
+                                                               function:@(function)
+                                                                   line:line
+                                                                    tag:tag
+                                                                options:(DDLogMessageOptions)0
+                                                              timestamp:nil];
 #pragma clang diagnostic pop
 #pragma clang diagnostic pop
 
 
-    [self queueLogMessage:logMessage asynchronously:asynchronous];
+        [self queueLogMessage:logMessage asynchronously:asynchronous];
+    }
 }
 }
 
 
 + (void)log:(BOOL)asynchronous message:(DDLogMessage *)logMessage {
 + (void)log:(BOOL)asynchronous message:(DDLogMessage *)logMessage {
@@ -978,25 +936,28 @@ NSString * __nullable DDExtractFileNameWithoutExtension(const char *filePath, BO
     return self;
     return self;
 }
 }
 
 
-- (instancetype)initWithMessage:(NSString *)message
-                          level:(DDLogLevel)level
-                           flag:(DDLogFlag)flag
-                        context:(NSInteger)context
-                           file:(NSString *)file
-                       function:(NSString *)function
-                           line:(NSUInteger)line
-                            tag:(id)tag
-                        options:(DDLogMessageOptions)options
-                      timestamp:(NSDate *)timestamp {
+- (instancetype)initWithFormat:(NSString *)messageFormat
+                     formatted:(NSString *)message
+                         level:(DDLogLevel)level
+                          flag:(DDLogFlag)flag
+                       context:(NSInteger)context
+                          file:(NSString *)file
+                      function:(NSString *)function
+                          line:(NSUInteger)line
+                           tag:(id)tag
+                       options:(DDLogMessageOptions)options
+                     timestamp:(NSDate *)timestamp {
+    NSParameterAssert(messageFormat);
     NSParameterAssert(message);
     NSParameterAssert(message);
     NSParameterAssert(file);
     NSParameterAssert(file);
 
 
     if ((self = [super init])) {
     if ((self = [super init])) {
         BOOL copyMessage = (options & DDLogMessageDontCopyMessage) == 0;
         BOOL copyMessage = (options & DDLogMessageDontCopyMessage) == 0;
-        _message      = copyMessage ? [message copy] : message;
-        _level        = level;
-        _flag         = flag;
-        _context      = context;
+        _messageFormat = copyMessage ? [messageFormat copy] : messageFormat;
+        _message       = copyMessage ? [message copy] : message;
+        _level         = level;
+        _flag          = flag;
+        _context       = context;
 
 
         BOOL copyFile = (options & DDLogMessageCopyFile) != 0;
         BOOL copyFile = (options & DDLogMessageCopyFile) != 0;
         _file = copyFile ? [file copy] : file;
         _file = copyFile ? [file copy] : file;
@@ -1013,13 +974,13 @@ NSString * __nullable DDExtractFileNameWithoutExtension(const char *filePath, BO
 #pragma clang diagnostic pop
 #pragma clang diagnostic pop
 #endif
 #endif
         _options      = options;
         _options      = options;
-        _timestamp    = timestamp ?: [NSDate new];
+        _timestamp    = timestamp ?: [NSDate date];
 
 
         __uint64_t tid;
         __uint64_t tid;
         if (pthread_threadid_np(NULL, &tid) == 0) {
         if (pthread_threadid_np(NULL, &tid) == 0) {
             _threadID = [[NSString alloc] initWithFormat:@"%llu", tid];
             _threadID = [[NSString alloc] initWithFormat:@"%llu", tid];
         } else {
         } else {
-            _threadID = @"missing threadId";
+            _threadID = @"N/A";
         }
         }
         _threadName   = NSThread.currentThread.name;
         _threadName   = NSThread.currentThread.name;
 
 
@@ -1032,12 +993,63 @@ NSString * __nullable DDExtractFileNameWithoutExtension(const char *filePath, BO
         }
         }
 
 
         // Try to get the current queue's label
         // Try to get the current queue's label
-        _queueLabel = [[NSString alloc] initWithFormat:@"%s", dispatch_queue_get_label(DISPATCH_CURRENT_QUEUE_LABEL)];
+        _queueLabel = @(dispatch_queue_get_label(DISPATCH_CURRENT_QUEUE_LABEL));
         _qos = (NSUInteger) qos_class_self();
         _qos = (NSUInteger) qos_class_self();
     }
     }
     return self;
     return self;
 }
 }
 
 
+- (instancetype)initWithFormat:(NSString *)messageFormat
+                          args:(va_list)messageArgs
+                         level:(DDLogLevel)level
+                          flag:(DDLogFlag)flag
+                       context:(NSInteger)context
+                          file:(NSString *)file
+                      function:(NSString *)function
+                          line:(NSUInteger)line
+                           tag:(id)tag
+                       options:(DDLogMessageOptions)options
+                     timestamp:(NSDate *)timestamp {
+    BOOL copyMessage = (options & DDLogMessageDontCopyMessage) == 0;
+    NSString *format = copyMessage ? [messageFormat copy] : messageFormat;
+    self = [self initWithFormat:format
+                      formatted:[[NSString alloc] initWithFormat:format arguments:messageArgs]
+                          level:level
+                           flag:flag
+                        context:context
+                           file:file
+                       function:function
+                           line:line
+                            tag:tag
+                        options:options | DDLogMessageDontCopyMessage // we already did the copying if needed.
+                      timestamp:timestamp];
+    return self;
+}
+
+- (instancetype)initWithMessage:(NSString *)message
+                          level:(DDLogLevel)level
+                           flag:(DDLogFlag)flag
+                        context:(NSInteger)context
+                           file:(NSString *)file
+                       function:(NSString *)function
+                           line:(NSUInteger)line
+                            tag:(id)tag
+                        options:(DDLogMessageOptions)options
+                      timestamp:(NSDate *)timestamp {
+    self = [self initWithFormat:message
+                      formatted:message
+                          level:level
+                           flag:flag
+                        context:context
+                           file:file
+                       function:function
+                           line:line
+                            tag:tag
+                        options:options
+                      timestamp:timestamp];
+    return self;
+}
+
 NS_INLINE BOOL _nullable_strings_equal(NSString* _Nullable lhs, NSString* _Nullable rhs)
 NS_INLINE BOOL _nullable_strings_equal(NSString* _Nullable lhs, NSString* _Nullable rhs)
 {
 {
     if (lhs == nil) {
     if (lhs == nil) {
@@ -1058,6 +1070,7 @@ NS_INLINE BOOL _nullable_strings_equal(NSString* _Nullable lhs, NSString* _Nulla
     } else {
     } else {
         __auto_type otherMsg = (DDLogMessage *)other;
         __auto_type otherMsg = (DDLogMessage *)other;
         return [otherMsg->_message isEqualToString:_message]
         return [otherMsg->_message isEqualToString:_message]
+        && [otherMsg->_messageFormat isEqualToString:_messageFormat]
         && otherMsg->_level == _level
         && otherMsg->_level == _level
         && otherMsg->_flag == _flag
         && otherMsg->_flag == _flag
         && otherMsg->_context == _context
         && otherMsg->_context == _context
@@ -1076,6 +1089,7 @@ NS_INLINE BOOL _nullable_strings_equal(NSString* _Nullable lhs, NSString* _Nulla
     // Subclasses of NSObject should not call [super hash] here.
     // Subclasses of NSObject should not call [super hash] here.
     // See https://stackoverflow.com/questions/36593038/confused-about-the-default-isequal-and-hash-implements
     // See https://stackoverflow.com/questions/36593038/confused-about-the-default-isequal-and-hash-implements
     return _message.hash
     return _message.hash
+    ^ _messageFormat.hash
     ^ _level
     ^ _level
     ^ _flag
     ^ _flag
     ^ _context
     ^ _context
@@ -1092,6 +1106,7 @@ NS_INLINE BOOL _nullable_strings_equal(NSString* _Nullable lhs, NSString* _Nulla
 - (id)copyWithZone:(NSZone * __attribute__((unused)))zone {
 - (id)copyWithZone:(NSZone * __attribute__((unused)))zone {
     DDLogMessage *newMessage = [DDLogMessage new];
     DDLogMessage *newMessage = [DDLogMessage new];
 
 
+    newMessage->_messageFormat = _messageFormat;
     newMessage->_message = _message;
     newMessage->_message = _message;
     newMessage->_level = _level;
     newMessage->_level = _level;
     newMessage->_flag = _flag;
     newMessage->_flag = _flag;

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/DDLoggerNames.m

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/DDOSLogger.m

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 118 - 165
Pods/CocoaLumberjack/Sources/CocoaLumberjack/DDTTYLogger.m

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,
@@ -79,23 +79,18 @@
 #define MAP_TO_TERMINAL_APP_COLORS 1
 #define MAP_TO_TERMINAL_APP_COLORS 1
 
 
 typedef struct {
 typedef struct {
-  uint8_t r;
-  uint8_t g;
-  uint8_t b;
+    uint8_t r;
+    uint8_t g;
+    uint8_t b;
 } DDRGBColor;
 } DDRGBColor;
 
 
 @interface DDTTYLoggerColorProfile : NSObject {
 @interface DDTTYLoggerColorProfile : NSObject {
-    @public
+@public
     DDLogFlag mask;
     DDLogFlag mask;
     NSInteger context;
     NSInteger context;
 
 
-    uint8_t fg_r;
-    uint8_t fg_g;
-    uint8_t fg_b;
-
-    uint8_t bg_r;
-    uint8_t bg_g;
-    uint8_t bg_b;
+    DDRGBColor fg;
+    DDRGBColor bg;
 
 
     NSUInteger fgCodeIndex;
     NSUInteger fgCodeIndex;
     NSString *fgCodeRaw;
     NSString *fgCodeRaw;
@@ -117,19 +112,15 @@ typedef struct {
 
 
 @end
 @end
 
 
-////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-#pragma mark -
-////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-
 @interface DDTTYLogger () {
 @interface DDTTYLogger () {
     NSString *_appName;
     NSString *_appName;
     char *_app;
     char *_app;
     size_t _appLen;
     size_t _appLen;
-    
+
     NSString *_processID;
     NSString *_processID;
     char *_pid;
     char *_pid;
     size_t _pidLen;
     size_t _pidLen;
-    
+
     BOOL _colorsEnabled;
     BOOL _colorsEnabled;
     NSMutableArray *_colorProfilesArray;
     NSMutableArray *_colorProfilesArray;
     NSMutableDictionary *_colorProfilesDict;
     NSMutableDictionary *_colorProfilesDict;
@@ -137,6 +128,7 @@ typedef struct {
 
 
 @end
 @end
 
 
+#pragma mark -
 
 
 @implementation DDTTYLogger
 @implementation DDTTYLogger
 
 
@@ -144,30 +136,30 @@ static BOOL isaColorTTY;
 static BOOL isaColor256TTY;
 static BOOL isaColor256TTY;
 static BOOL isaXcodeColorTTY;
 static BOOL isaXcodeColorTTY;
 
 
-static NSArray *codes_fg = nil;
-static NSArray *codes_bg = nil;
+static NSArray *codesFg = nil;
+static NSArray *codesBg = nil;
 static NSArray *colors   = nil;
 static NSArray *colors   = nil;
 
 
 static DDTTYLogger *sharedInstance;
 static DDTTYLogger *sharedInstance;
 
 
 /**
 /**
- * Initializes the colors array, as well as the codes_fg and codes_bg arrays, for 16 color mode.
+ * Initializes the colors array, as well as the `codesFg` and `codesBg` arrays, for 16 color mode.
  *
  *
  * This method is used when the application is running from within a shell that only supports 16 color mode.
  * This method is used when the application is running from within a shell that only supports 16 color mode.
  * This method is not invoked if the application is running within Xcode, or via normal UI app launch.
  * This method is not invoked if the application is running within Xcode, or via normal UI app launch.
  **/
  **/
-+ (void)initialize_colors_16 {
-    if (codes_fg || codes_bg || colors) {
++ (void)initializeColors16 {
+    if (codesFg || codesBg || colors) {
         return;
         return;
     }
     }
 
 
-    NSMutableArray *m_colors   = [NSMutableArray arrayWithCapacity:16];
+    NSMutableArray *mColors = [NSMutableArray arrayWithCapacity:16];
 
 
     // In a standard shell only 16 colors are supported.
     // In a standard shell only 16 colors are supported.
     //
     //
     // More information about ansi escape codes can be found online.
     // More information about ansi escape codes can be found online.
     // http://en.wikipedia.org/wiki/ANSI_escape_code
     // http://en.wikipedia.org/wiki/ANSI_escape_code
-    codes_fg = @[
+    codesFg = @[
         @"30m",  // normal - black
         @"30m",  // normal - black
         @"31m",  // normal - red
         @"31m",  // normal - red
         @"32m",  // normal - green
         @"32m",  // normal - green
@@ -186,7 +178,7 @@ static DDTTYLogger *sharedInstance;
         @"1;37m",  // bright - white
         @"1;37m",  // bright - white
     ];
     ];
 
 
-    codes_bg = @[
+    codesBg = @[
         @"40m",  // normal - black
         @"40m",  // normal - black
         @"41m",  // normal - red
         @"41m",  // normal - red
         @"42m",  // normal - green
         @"42m",  // normal - green
@@ -205,13 +197,12 @@ static DDTTYLogger *sharedInstance;
         @"1;47m",  // bright - white
         @"1;47m",  // bright - white
     ];
     ];
 
 
-
 #if MAP_TO_TERMINAL_APP_COLORS
 #if MAP_TO_TERMINAL_APP_COLORS
 
 
     // Standard Terminal.app colors:
     // Standard Terminal.app colors:
     //
     //
     // These are the default colors used by Apple's Terminal.app.
     // These are the default colors used by Apple's Terminal.app.
-    DDRGBColor rgbColors[] = {
+    const DDRGBColor rgbColors[] = {
         {  0,   0,   0}, // normal - black
         {  0,   0,   0}, // normal - black
         {194,  54,  33}, // normal - red
         {194,  54,  33}, // normal - red
         { 37, 188,  36}, // normal - green
         { 37, 188,  36}, // normal - green
@@ -235,8 +226,7 @@ static DDTTYLogger *sharedInstance;
     // Standard xterm colors:
     // Standard xterm colors:
     //
     //
     // These are the default colors used by most xterm shells.
     // These are the default colors used by most xterm shells.
-
-    DDRGBColor rgbColors[] = {
+    const DDRGBColor rgbColors[] = {
         {  0,   0,   0}, // normal - black
         {  0,   0,   0}, // normal - black
         {205,   0,   0}, // normal - red
         {205,   0,   0}, // normal - red
         {  0, 205,   0}, // normal - green
         {  0, 205,   0}, // normal - green
@@ -257,30 +247,30 @@ static DDTTYLogger *sharedInstance;
 #endif /* if MAP_TO_TERMINAL_APP_COLORS */
 #endif /* if MAP_TO_TERMINAL_APP_COLORS */
 
 
     for (size_t i = 0; i < sizeof(rgbColors) / sizeof(rgbColors[0]); ++i) {
     for (size_t i = 0; i < sizeof(rgbColors) / sizeof(rgbColors[0]); ++i) {
-        [m_colors addObject:DDMakeColor(rgbColors[i].r, rgbColors[i].g, rgbColors[i].b)];
+        [mColors addObject:DDMakeColor(rgbColors[i].r, rgbColors[i].g, rgbColors[i].b)];
     }
     }
-    colors   = [m_colors   copy];
+    colors = [mColors copy];
 
 
-    NSAssert([codes_fg count] == [codes_bg count], @"Invalid colors/codes array(s)");
-    NSAssert([codes_fg count] == [colors count],   @"Invalid colors/codes array(s)");
+    NSAssert([codesFg count] == [codesBg count], @"Invalid colors/codes array(s)");
+    NSAssert([codesFg count] == [colors count],   @"Invalid colors/codes array(s)");
 }
 }
 
 
 /**
 /**
- * Initializes the colors array, as well as the codes_fg and codes_bg arrays, for 256 color mode.
+ * Initializes the colors array, as well as the `codesFg` and `codesBg` arrays, for 256 color mode.
  *
  *
  * This method is used when the application is running from within a shell that supports 256 color mode.
  * This method is used when the application is running from within a shell that supports 256 color mode.
  * This method is not invoked if the application is running within Xcode, or via normal UI app launch.
  * This method is not invoked if the application is running within Xcode, or via normal UI app launch.
  **/
  **/
-+ (void)initialize_colors_256 {
-    if (codes_fg || codes_bg || colors) {
++ (void)initializeColors256 {
+    if (codesFg || codesBg || colors) {
         return;
         return;
     }
     }
 
 
-    NSMutableArray *m_codes_fg = [NSMutableArray arrayWithCapacity:(256 - 16)];
-    NSMutableArray *m_codes_bg = [NSMutableArray arrayWithCapacity:(256 - 16)];
-    NSMutableArray *m_colors   = [NSMutableArray arrayWithCapacity:(256 - 16)];
+    NSMutableArray *mCodesFg = [NSMutableArray arrayWithCapacity:(256 - 16)];
+    NSMutableArray *mCodesBg = [NSMutableArray arrayWithCapacity:(256 - 16)];
+    NSMutableArray *mColors  = [NSMutableArray arrayWithCapacity:(256 - 16)];
 
 
-    #if MAP_TO_TERMINAL_APP_COLORS
+#if MAP_TO_TERMINAL_APP_COLORS
 
 
     // Standard Terminal.app colors:
     // Standard Terminal.app colors:
     //
     //
@@ -307,7 +297,7 @@ static DDTTYLogger *sharedInstance;
     // http://en.wikipedia.org/wiki/ANSI_escape_code
     // http://en.wikipedia.org/wiki/ANSI_escape_code
 
 
     // Colors
     // Colors
-    DDRGBColor rgbColors[] = {
+    const DDRGBColor rgbColors[] = {
         { 47,  49,  49},
         { 47,  49,  49},
         { 60,  42, 144},
         { 60,  42, 144},
         { 66,  44, 183},
         { 66,  44, 183},
@@ -592,21 +582,19 @@ static DDTTYLogger *sharedInstance;
     };
     };
 
 
     for (size_t i = 0; i < sizeof(rgbColors) / sizeof(rgbColors[0]); ++i) {
     for (size_t i = 0; i < sizeof(rgbColors) / sizeof(rgbColors[0]); ++i) {
-        [m_colors addObject:DDMakeColor(rgbColors[i].r, rgbColors[i].g, rgbColors[i].b)];
+        [mColors addObject:DDMakeColor(rgbColors[i].r, rgbColors[i].g, rgbColors[i].b)];
     }
     }
 
 
     // Color codes
     // Color codes
-
     int index = 16;
     int index = 16;
-
     while (index < 256) {
     while (index < 256) {
-        [m_codes_fg addObject:[NSString stringWithFormat:@"38;5;%dm", index]];
-        [m_codes_bg addObject:[NSString stringWithFormat:@"48;5;%dm", index]];
+        [mCodesFg addObject:[NSString stringWithFormat:@"38;5;%dm", index]];
+        [mCodesBg addObject:[NSString stringWithFormat:@"48;5;%dm", index]];
 
 
         index++;
         index++;
     }
     }
 
 
-    #else /* if MAP_TO_TERMINAL_APP_COLORS */
+#else /* if MAP_TO_TERMINAL_APP_COLORS */
 
 
     // Standard xterm colors:
     // Standard xterm colors:
     //
     //
@@ -652,9 +640,9 @@ static DDTTYLogger *sharedInstance;
             for (bi = 0; bi < 6; bi++) {
             for (bi = 0; bi < 6; bi++) {
                 b = (bi == 0) ? 0 : 95 + (40 * (bi - 1));
                 b = (bi == 0) ? 0 : 95 + (40 * (bi - 1));
 
 
-                [m_codes_fg addObject:[NSString stringWithFormat:@"38;5;%dm", index]];
-                [m_codes_bg addObject:[NSString stringWithFormat:@"48;5;%dm", index]];
-                [m_colors addObject:DDMakeColor(r, g, b)];
+                [mCodesFg addObject:[NSString stringWithFormat:@"38;5;%dm", index]];
+                [mCodesBg addObject:[NSString stringWithFormat:@"48;5;%dm", index]];
+                [mColors  addObject:DDMakeColor(r, g, b)];
 
 
                 index++;
                 index++;
             }
             }
@@ -668,9 +656,9 @@ static DDTTYLogger *sharedInstance;
     b = 8;
     b = 8;
 
 
     while (index < 256) {
     while (index < 256) {
-        [m_codes_fg addObject:[NSString stringWithFormat:@"38;5;%dm", index]];
-        [m_codes_bg addObject:[NSString stringWithFormat:@"48;5;%dm", index]];
-        [m_colors addObject:DDMakeColor(r, g, b)];
+        [mCodesFg addObject:[NSString stringWithFormat:@"38;5;%dm", index]];
+        [mCodesBg addObject:[NSString stringWithFormat:@"48;5;%dm", index]];
+        [mColor s addObject:DDMakeColor(r, g, b)];
 
 
         r += 10;
         r += 10;
         g += 10;
         g += 10;
@@ -679,21 +667,20 @@ static DDTTYLogger *sharedInstance;
         index++;
         index++;
     }
     }
 
 
-    #endif /* if MAP_TO_TERMINAL_APP_COLORS */
+#endif /* if MAP_TO_TERMINAL_APP_COLORS */
 
 
-    codes_fg = [m_codes_fg copy];
-    codes_bg = [m_codes_bg copy];
-    colors   = [m_colors   copy];
+    codesFg = [mCodesFg copy];
+    codesBg = [mCodesBg copy];
+    colors  = [mColors  copy];
 
 
-    NSAssert([codes_fg count] == [codes_bg count], @"Invalid colors/codes array(s)");
-    NSAssert([codes_fg count] == [colors count],   @"Invalid colors/codes array(s)");
+    NSAssert([codesFg count] == [codesBg count], @"Invalid colors/codes array(s)");
+    NSAssert([codesFg count] == [colors count],   @"Invalid colors/codes array(s)");
 }
 }
 
 
 + (void)getRed:(CGFloat *)rPtr green:(CGFloat *)gPtr blue:(CGFloat *)bPtr fromColor:(DDColor *)color {
 + (void)getRed:(CGFloat *)rPtr green:(CGFloat *)gPtr blue:(CGFloat *)bPtr fromColor:(DDColor *)color {
-    #if TARGET_OS_IPHONE
+#if TARGET_OS_IPHONE
 
 
     // iOS
     // iOS
-
     BOOL done = NO;
     BOOL done = NO;
 
 
     if ([color respondsToSelector:@selector(getRed:green:blue:alpha:)]) {
     if ([color respondsToSelector:@selector(getRed:green:blue:alpha:)]) {
@@ -715,11 +702,9 @@ static DDTTYLogger *sharedInstance;
         if (rPtr) {
         if (rPtr) {
             *rPtr = pixel[0] / 255.0;
             *rPtr = pixel[0] / 255.0;
         }
         }
-
         if (gPtr) {
         if (gPtr) {
             *gPtr = pixel[1] / 255.0;
             *gPtr = pixel[1] / 255.0;
         }
         }
-
         if (bPtr) {
         if (bPtr) {
             *bPtr = pixel[2] / 255.0;
             *bPtr = pixel[2] / 255.0;
         }
         }
@@ -728,20 +713,27 @@ static DDTTYLogger *sharedInstance;
         CGColorSpaceRelease(rgbColorSpace);
         CGColorSpaceRelease(rgbColorSpace);
     }
     }
 
 
-    #elif defined(DD_CLI) || !__has_include(<AppKit/NSColor.h>)
+#elif defined(DD_CLI) || !__has_include(<AppKit/NSColor.h>)
 
 
     // OS X without AppKit
     // OS X without AppKit
-
     [color getRed:rPtr green:gPtr blue:bPtr alpha:NULL];
     [color getRed:rPtr green:gPtr blue:bPtr alpha:NULL];
 
 
-    #else /* if TARGET_OS_IPHONE */
+#else /* if TARGET_OS_IPHONE */
 
 
     // OS X with AppKit
     // OS X with AppKit
-
-    NSColor *safeColor = [color colorUsingColorSpaceName:NSCalibratedRGBColorSpace];
+    NSColor *safeColor;
+    if (@available(macOS 10.14,*)) {
+        safeColor = [color colorUsingColorSpace:NSColorSpace.deviceRGBColorSpace];
+    } else {
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wdeprecated-declarations"
+        safeColor = [color colorUsingColorSpaceName:NSCalibratedRGBColorSpace];
+#pragma clang diagnostic pop
+    }
 
 
     [safeColor getRed:rPtr green:gPtr blue:bPtr alpha:NULL];
     [safeColor getRed:rPtr green:gPtr blue:bPtr alpha:NULL];
-    #endif /* if TARGET_OS_IPHONE */
+
+#endif /* if TARGET_OS_IPHONE */
 }
 }
 
 
 /**
 /**
@@ -750,7 +742,7 @@ static DDTTYLogger *sharedInstance;
  *
  *
  * This method loops through the known supported color set, and calculates the closest color.
  * This method loops through the known supported color set, and calculates the closest color.
  * The array index of that color, within the colors array, is then returned.
  * The array index of that color, within the colors array, is then returned.
- * This array index may also be used as the index within the codes_fg and codes_bg arrays.
+ * This array index may also be used as the index within the `codesFg` and `codesBg` arrays.
  **/
  **/
 + (NSUInteger)codeIndexForColor:(DDColor *)inColor {
 + (NSUInteger)codeIndexForColor:(DDColor *)inColor {
     CGFloat inR, inG, inB;
     CGFloat inR, inG, inB;
@@ -768,14 +760,14 @@ static DDTTYLogger *sharedInstance;
         CGFloat r, g, b;
         CGFloat r, g, b;
         [self getRed:&r green:&g blue:&b fromColor:color];
         [self getRed:&r green:&g blue:&b fromColor:color];
 
 
-    #if CGFLOAT_IS_DOUBLE
+#if CGFLOAT_IS_DOUBLE
         CGFloat distance = sqrt(pow(r - inR, 2.0) + pow(g - inG, 2.0) + pow(b - inB, 2.0));
         CGFloat distance = sqrt(pow(r - inR, 2.0) + pow(g - inG, 2.0) + pow(b - inB, 2.0));
-    #else
+#else
         CGFloat distance = sqrtf(powf(r - inR, 2.0f) + powf(g - inG, 2.0f) + powf(b - inB, 2.0f));
         CGFloat distance = sqrtf(powf(r - inR, 2.0f) + powf(g - inG, 2.0f) + powf(b - inB, 2.0f));
-    #endif
+#endif
 
 
         NSLogVerbose(@"DDTTYLogger: %3lu : %.3f,%.3f,%.3f & %.3f,%.3f,%.3f = %.6f",
         NSLogVerbose(@"DDTTYLogger: %3lu : %.3f,%.3f,%.3f & %.3f,%.3f,%.3f = %.6f",
-                     (unsigned long)i, inR, inG, inB, r, g, b, distance);
+                     (unsigned long)i, (double)inR, (double)inG, (double)inB, (double)r, (double)g, (double)b, (double)distance);
 
 
         if (distance < lowestDistance) {
         if (distance < lowestDistance) {
             bestIndex = i;
             bestIndex = i;
@@ -799,10 +791,10 @@ static DDTTYLogger *sharedInstance;
         //
         //
         // PS - Please read the header file before diving into the source code.
         // PS - Please read the header file before diving into the source code.
 
 
-        char *xcode_colors = getenv("XcodeColors");
+        char *xcodeColors = getenv("XcodeColors");
         char *term = getenv("TERM");
         char *term = getenv("TERM");
 
 
-        if (xcode_colors && (strcmp(xcode_colors, "YES") == 0)) {
+        if (xcodeColors && (strcmp(xcodeColors, "YES") == 0)) {
             isaXcodeColorTTY = YES;
             isaXcodeColorTTY = YES;
         } else if (term) {
         } else if (term) {
             if (strcasestr(term, "color") != NULL) {
             if (strcasestr(term, "color") != NULL) {
@@ -810,9 +802,9 @@ static DDTTYLogger *sharedInstance;
                 isaColor256TTY = (strcasestr(term, "256") != NULL);
                 isaColor256TTY = (strcasestr(term, "256") != NULL);
 
 
                 if (isaColor256TTY) {
                 if (isaColor256TTY) {
-                    [self initialize_colors_256];
+                    [self initializeColors256];
                 } else {
                 } else {
-                    [self initialize_colors_16];
+                    [self initializeColors16];
                 }
                 }
             }
             }
         }
         }
@@ -840,9 +832,7 @@ static DDTTYLogger *sharedInstance;
 
 
     if ((self = [super init])) {
     if ((self = [super init])) {
         // Initialize 'app' variable (char *)
         // Initialize 'app' variable (char *)
-
         _appName = [[NSProcessInfo processInfo] processName];
         _appName = [[NSProcessInfo processInfo] processName];
-
         _appLen = [_appName lengthOfBytesUsingEncoding:NSUTF8StringEncoding];
         _appLen = [_appName lengthOfBytesUsingEncoding:NSUTF8StringEncoding];
 
 
         if (_appLen == 0) {
         if (_appLen == 0) {
@@ -851,14 +841,12 @@ static DDTTYLogger *sharedInstance;
         }
         }
 
 
         _app = (char *)calloc(_appLen + 1, sizeof(char));
         _app = (char *)calloc(_appLen + 1, sizeof(char));
-
         if (_app == NULL) {
         if (_app == NULL) {
             return nil;
             return nil;
         }
         }
 
 
         BOOL processedAppName = [_appName getCString:_app maxLength:(_appLen + 1) encoding:NSUTF8StringEncoding];
         BOOL processedAppName = [_appName getCString:_app maxLength:(_appLen + 1) encoding:NSUTF8StringEncoding];
-
-        if (NO == processedAppName) {
+        if (!processedAppName) {
             free(_app);
             free(_app);
             return nil;
             return nil;
         }
         }
@@ -876,8 +864,7 @@ static DDTTYLogger *sharedInstance;
         }
         }
 
 
         BOOL processedID = [_processID getCString:_pid maxLength:(_pidLen + 1) encoding:NSUTF8StringEncoding];
         BOOL processedID = [_processID getCString:_pid maxLength:(_pidLen + 1) encoding:NSUTF8StringEncoding];
-
-        if (NO == processedID) {
+        if (!processedID) {
             free(_app);
             free(_app);
             free(_pid);
             free(_pid);
             return nil;
             return nil;
@@ -918,11 +905,8 @@ static DDTTYLogger *sharedInstance;
     NSAssert(![self isOnGlobalLoggingQueue], @"Core architecture requirement failure");
     NSAssert(![self isOnGlobalLoggingQueue], @"Core architecture requirement failure");
     NSAssert(![self isOnInternalLoggerQueue], @"MUST access ivar directly, NOT via self.* syntax.");
     NSAssert(![self isOnInternalLoggerQueue], @"MUST access ivar directly, NOT via self.* syntax.");
 
 
-    dispatch_queue_t globalLoggingQueue = [DDLog loggingQueue];
-
     __block BOOL result;
     __block BOOL result;
-
-    dispatch_sync(globalLoggingQueue, ^{
+    dispatch_sync([DDLog loggingQueue], ^{
         dispatch_sync(self.loggerQueue, ^{
         dispatch_sync(self.loggerQueue, ^{
             result = self->_colorsEnabled;
             result = self->_colorsEnabled;
         });
         });
@@ -955,9 +939,7 @@ static DDTTYLogger *sharedInstance;
     NSAssert(![self isOnGlobalLoggingQueue], @"Core architecture requirement failure");
     NSAssert(![self isOnGlobalLoggingQueue], @"Core architecture requirement failure");
     NSAssert(![self isOnInternalLoggerQueue], @"MUST access ivar directly, NOT via self.* syntax.");
     NSAssert(![self isOnInternalLoggerQueue], @"MUST access ivar directly, NOT via self.* syntax.");
 
 
-    dispatch_queue_t globalLoggingQueue = [DDLog loggingQueue];
-
-    dispatch_async(globalLoggingQueue, ^{
+    dispatch_async([DDLog loggingQueue], ^{
         dispatch_async(self.loggerQueue, block);
         dispatch_async(self.loggerQueue, block);
     });
     });
 }
 }
@@ -969,11 +951,10 @@ static DDTTYLogger *sharedInstance;
 - (void)setForegroundColor:(DDColor *)txtColor backgroundColor:(DDColor *)bgColor forFlag:(DDLogFlag)mask context:(NSInteger)ctxt {
 - (void)setForegroundColor:(DDColor *)txtColor backgroundColor:(DDColor *)bgColor forFlag:(DDLogFlag)mask context:(NSInteger)ctxt {
     dispatch_block_t block = ^{
     dispatch_block_t block = ^{
         @autoreleasepool {
         @autoreleasepool {
-            DDTTYLoggerColorProfile *newColorProfile =
-                [[DDTTYLoggerColorProfile alloc] initWithForegroundColor:txtColor
-                                                         backgroundColor:bgColor
-                                                                    flag:mask
-                                                                 context:ctxt];
+            DDTTYLoggerColorProfile *newColorProfile = [[DDTTYLoggerColorProfile alloc] initWithForegroundColor:txtColor
+                                                                                                backgroundColor:bgColor
+                                                                                                           flag:mask
+                                                                                                        context:ctxt];
 
 
             NSLogInfo(@"DDTTYLogger: newColorProfile: %@", newColorProfile);
             NSLogInfo(@"DDTTYLogger: newColorProfile: %@", newColorProfile);
 
 
@@ -1001,25 +982,22 @@ static DDTTYLogger *sharedInstance;
     if ([self isOnInternalLoggerQueue]) {
     if ([self isOnInternalLoggerQueue]) {
         block();
         block();
     } else {
     } else {
-        dispatch_queue_t globalLoggingQueue = [DDLog loggingQueue];
         NSAssert(![self isOnGlobalLoggingQueue], @"Core architecture requirement failure");
         NSAssert(![self isOnGlobalLoggingQueue], @"Core architecture requirement failure");
-
-        dispatch_async(globalLoggingQueue, ^{
+        dispatch_async([DDLog loggingQueue], ^{
             dispatch_async(self.loggerQueue, block);
             dispatch_async(self.loggerQueue, block);
         });
         });
     }
     }
 }
 }
 
 
 - (void)setForegroundColor:(DDColor *)txtColor backgroundColor:(DDColor *)bgColor forTag:(id <NSCopying>)tag {
 - (void)setForegroundColor:(DDColor *)txtColor backgroundColor:(DDColor *)bgColor forTag:(id <NSCopying>)tag {
-    NSAssert([(id < NSObject >) tag conformsToProtocol: @protocol(NSCopying)], @"Invalid tag");
+    NSAssert([(id <NSObject>)tag conformsToProtocol: @protocol(NSCopying)], @"Invalid tag");
 
 
     dispatch_block_t block = ^{
     dispatch_block_t block = ^{
         @autoreleasepool {
         @autoreleasepool {
-            DDTTYLoggerColorProfile *newColorProfile =
-                [[DDTTYLoggerColorProfile alloc] initWithForegroundColor:txtColor
-                                                         backgroundColor:bgColor
-                                                                    flag:(DDLogFlag)0
-                                                                 context:0];
+            DDTTYLoggerColorProfile *newColorProfile = [[DDTTYLoggerColorProfile alloc] initWithForegroundColor:txtColor
+                                                                                                backgroundColor:bgColor
+                                                                                                           flag:(DDLogFlag)0
+                                                                                                        context:0];
 
 
             NSLogInfo(@"DDTTYLogger: newColorProfile: %@", newColorProfile);
             NSLogInfo(@"DDTTYLogger: newColorProfile: %@", newColorProfile);
 
 
@@ -1033,10 +1011,8 @@ static DDTTYLogger *sharedInstance;
     if ([self isOnInternalLoggerQueue]) {
     if ([self isOnInternalLoggerQueue]) {
         block();
         block();
     } else {
     } else {
-        dispatch_queue_t globalLoggingQueue = [DDLog loggingQueue];
         NSAssert(![self isOnGlobalLoggingQueue], @"Core architecture requirement failure");
         NSAssert(![self isOnGlobalLoggingQueue], @"Core architecture requirement failure");
-
-        dispatch_async(globalLoggingQueue, ^{
+        dispatch_async([DDLog loggingQueue], ^{
             dispatch_async(self.loggerQueue, block);
             dispatch_async(self.loggerQueue, block);
         });
         });
     }
     }
@@ -1071,17 +1047,15 @@ static DDTTYLogger *sharedInstance;
     if ([self isOnInternalLoggerQueue]) {
     if ([self isOnInternalLoggerQueue]) {
         block();
         block();
     } else {
     } else {
-        dispatch_queue_t globalLoggingQueue = [DDLog loggingQueue];
         NSAssert(![self isOnGlobalLoggingQueue], @"Core architecture requirement failure");
         NSAssert(![self isOnGlobalLoggingQueue], @"Core architecture requirement failure");
-
-        dispatch_async(globalLoggingQueue, ^{
+        dispatch_async([DDLog loggingQueue], ^{
             dispatch_async(self.loggerQueue, block);
             dispatch_async(self.loggerQueue, block);
         });
         });
     }
     }
 }
 }
 
 
 - (void)clearColorsForTag:(id <NSCopying>)tag {
 - (void)clearColorsForTag:(id <NSCopying>)tag {
-    NSAssert([(id < NSObject >) tag conformsToProtocol: @protocol(NSCopying)], @"Invalid tag");
+    NSAssert([(id <NSObject>) tag conformsToProtocol: @protocol(NSCopying)], @"Invalid tag");
 
 
     dispatch_block_t block = ^{
     dispatch_block_t block = ^{
         @autoreleasepool {
         @autoreleasepool {
@@ -1095,10 +1069,8 @@ static DDTTYLogger *sharedInstance;
     if ([self isOnInternalLoggerQueue]) {
     if ([self isOnInternalLoggerQueue]) {
         block();
         block();
     } else {
     } else {
-        dispatch_queue_t globalLoggingQueue = [DDLog loggingQueue];
         NSAssert(![self isOnGlobalLoggingQueue], @"Core architecture requirement failure");
         NSAssert(![self isOnGlobalLoggingQueue], @"Core architecture requirement failure");
-
-        dispatch_async(globalLoggingQueue, ^{
+        dispatch_async([DDLog loggingQueue], ^{
             dispatch_async(self.loggerQueue, block);
             dispatch_async(self.loggerQueue, block);
         });
         });
     }
     }
@@ -1117,10 +1089,8 @@ static DDTTYLogger *sharedInstance;
     if ([self isOnInternalLoggerQueue]) {
     if ([self isOnInternalLoggerQueue]) {
         block();
         block();
     } else {
     } else {
-        dispatch_queue_t globalLoggingQueue = [DDLog loggingQueue];
         NSAssert(![self isOnGlobalLoggingQueue], @"Core architecture requirement failure");
         NSAssert(![self isOnGlobalLoggingQueue], @"Core architecture requirement failure");
-
-        dispatch_async(globalLoggingQueue, ^{
+        dispatch_async([DDLog loggingQueue], ^{
             dispatch_async(self.loggerQueue, block);
             dispatch_async(self.loggerQueue, block);
         });
         });
     }
     }
@@ -1139,10 +1109,8 @@ static DDTTYLogger *sharedInstance;
     if ([self isOnInternalLoggerQueue]) {
     if ([self isOnInternalLoggerQueue]) {
         block();
         block();
     } else {
     } else {
-        dispatch_queue_t globalLoggingQueue = [DDLog loggingQueue];
         NSAssert(![self isOnGlobalLoggingQueue], @"Core architecture requirement failure");
         NSAssert(![self isOnGlobalLoggingQueue], @"Core architecture requirement failure");
-
-        dispatch_async(globalLoggingQueue, ^{
+        dispatch_async([DDLog loggingQueue], ^{
             dispatch_async(self.loggerQueue, block);
             dispatch_async(self.loggerQueue, block);
         });
         });
     }
     }
@@ -1162,10 +1130,8 @@ static DDTTYLogger *sharedInstance;
     if ([self isOnInternalLoggerQueue]) {
     if ([self isOnInternalLoggerQueue]) {
         block();
         block();
     } else {
     } else {
-        dispatch_queue_t globalLoggingQueue = [DDLog loggingQueue];
         NSAssert(![self isOnGlobalLoggingQueue], @"Core architecture requirement failure");
         NSAssert(![self isOnGlobalLoggingQueue], @"Core architecture requirement failure");
-
-        dispatch_async(globalLoggingQueue, ^{
+        dispatch_async([DDLog loggingQueue], ^{
             dispatch_async(self.loggerQueue, block);
             dispatch_async(self.loggerQueue, block);
         });
         });
     }
     }
@@ -1242,8 +1208,9 @@ static DDTTYLogger *sharedInstance;
 
 
         if (isFormatted) {
         if (isFormatted) {
             // The log message has already been formatted.
             // The log message has already been formatted.
-            const int iovec_len = (_automaticallyAppendNewlineForCustomFormatters) ? 5 : 4;
-            struct iovec v[iovec_len];
+            const size_t maxIovecLen = 5;
+            size_t iovecLen = _automaticallyAppendNewlineForCustomFormatters ? 5 : 4;
+            struct iovec v[maxIovecLen] = { 0 };
 
 
             if (colorProfile) {
             if (colorProfile) {
                 v[0].iov_base = colorProfile->fgCode;
                 v[0].iov_base = colorProfile->fgCode;
@@ -1252,28 +1219,20 @@ static DDTTYLogger *sharedInstance;
                 v[1].iov_base = colorProfile->bgCode;
                 v[1].iov_base = colorProfile->bgCode;
                 v[1].iov_len = colorProfile->bgCodeLen;
                 v[1].iov_len = colorProfile->bgCodeLen;
 
 
-                v[iovec_len - 1].iov_base = colorProfile->resetCode;
-                v[iovec_len - 1].iov_len = colorProfile->resetCodeLen;
-            } else {
-                v[0].iov_base = "";
-                v[0].iov_len = 0;
-
-                v[1].iov_base = "";
-                v[1].iov_len = 0;
-
-                v[iovec_len - 1].iov_base = "";
-                v[iovec_len - 1].iov_len = 0;
+                v[maxIovecLen - 1].iov_base = colorProfile->resetCode;
+                v[maxIovecLen - 1].iov_len = colorProfile->resetCodeLen;
             }
             }
 
 
             v[2].iov_base = msg;
             v[2].iov_base = msg;
-            v[2].iov_len = msgLen;
+            v[2].iov_len = (msgLen > SIZE_MAX - 1) ? SIZE_MAX - 1 : msgLen;
 
 
-            if (iovec_len == 5) {
+            if (_automaticallyAppendNewlineForCustomFormatters && (v[2].iov_len == 0 || msg[v[2].iov_len - 1] != '\n')) {
                 v[3].iov_base = "\n";
                 v[3].iov_base = "\n";
-                v[3].iov_len = (msg[msgLen] == '\n') ? 0 : 1;
+                v[3].iov_len = 1;
+                iovecLen = 5;
             }
             }
 
 
-            writev(STDERR_FILENO, v, iovec_len);
+            writev(STDERR_FILENO, v, (int)iovecLen);
         } else {
         } else {
             // The log message is unformatted, so apply standard NSLog style formatting.
             // The log message is unformatted, so apply standard NSLog style formatting.
 
 
@@ -1381,7 +1340,7 @@ static DDTTYLogger *sharedInstance;
 
 
 @end
 @end
 
 
-////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+#pragma mark -
 
 
 @implementation DDTTYLoggerColorProfile
 @implementation DDTTYLoggerColorProfile
 
 
@@ -1395,31 +1354,31 @@ static DDTTYLogger *sharedInstance;
         if (fgColor) {
         if (fgColor) {
             [DDTTYLogger getRed:&r green:&g blue:&b fromColor:fgColor];
             [DDTTYLogger getRed:&r green:&g blue:&b fromColor:fgColor];
 
 
-            fg_r = (uint8_t)(r * 255.0);
-            fg_g = (uint8_t)(g * 255.0);
-            fg_b = (uint8_t)(b * 255.0);
+            fg.r = (uint8_t)(r * (CGFloat)255.0);
+            fg.g = (uint8_t)(g * (CGFloat)255.0);
+            fg.b = (uint8_t)(b * (CGFloat)255.0);
         }
         }
 
 
         if (bgColor) {
         if (bgColor) {
             [DDTTYLogger getRed:&r green:&g blue:&b fromColor:bgColor];
             [DDTTYLogger getRed:&r green:&g blue:&b fromColor:bgColor];
 
 
-            bg_r = (uint8_t)(r * 255.0);
-            bg_g = (uint8_t)(g * 255.0);
-            bg_b = (uint8_t)(b * 255.0);
+            bg.r = (uint8_t)(r * (CGFloat)255.0);
+            bg.g = (uint8_t)(g * (CGFloat)255.0);
+            bg.b = (uint8_t)(b * (CGFloat)255.0);
         }
         }
 
 
         if (fgColor && isaColorTTY) {
         if (fgColor && isaColorTTY) {
             // Map foreground color to closest available shell color
             // Map foreground color to closest available shell color
 
 
             fgCodeIndex = [DDTTYLogger codeIndexForColor:fgColor];
             fgCodeIndex = [DDTTYLogger codeIndexForColor:fgColor];
-            fgCodeRaw   = codes_fg[fgCodeIndex];
+            fgCodeRaw   = codesFg[fgCodeIndex];
 
 
-            NSString *escapeSeq = @"\033[";
+            const NSString *escapeSeq = @"\033[";
 
 
             NSUInteger len1 = [escapeSeq lengthOfBytesUsingEncoding:NSUTF8StringEncoding];
             NSUInteger len1 = [escapeSeq lengthOfBytesUsingEncoding:NSUTF8StringEncoding];
             NSUInteger len2 = [fgCodeRaw lengthOfBytesUsingEncoding:NSUTF8StringEncoding];
             NSUInteger len2 = [fgCodeRaw lengthOfBytesUsingEncoding:NSUTF8StringEncoding];
 
 
-            BOOL escapeSeqEnc = [escapeSeq getCString:(fgCode)      maxLength:(len1 + 1) encoding:NSUTF8StringEncoding];
+            BOOL escapeSeqEnc = [escapeSeq getCString:(fgCode) maxLength:(len1 + 1) encoding:NSUTF8StringEncoding];
             BOOL fgCodeRawEsc = [fgCodeRaw getCString:(fgCode + len1) maxLength:(len2 + 1) encoding:NSUTF8StringEncoding];
             BOOL fgCodeRawEsc = [fgCodeRaw getCString:(fgCode + len1) maxLength:(len2 + 1) encoding:NSUTF8StringEncoding];
 
 
             if (!escapeSeqEnc || !fgCodeRawEsc) {
             if (!escapeSeqEnc || !fgCodeRawEsc) {
@@ -1429,14 +1388,11 @@ static DDTTYLogger *sharedInstance;
             fgCodeLen = len1 + len2;
             fgCodeLen = len1 + len2;
         } else if (fgColor && isaXcodeColorTTY) {
         } else if (fgColor && isaXcodeColorTTY) {
             // Convert foreground color to color code sequence
             // Convert foreground color to color code sequence
-
             const char *escapeSeq = XCODE_COLORS_ESCAPE_SEQ;
             const char *escapeSeq = XCODE_COLORS_ESCAPE_SEQ;
-
-            int result = snprintf(fgCode, 24, "%sfg%u,%u,%u;", escapeSeq, fg_r, fg_g, fg_b);
+            int result = snprintf(fgCode, 24, "%sfg%u,%u,%u;", escapeSeq, fg.r, fg.g, fg.b);
             fgCodeLen = (NSUInteger)MAX(MIN(result, (24 - 1)), 0);
             fgCodeLen = (NSUInteger)MAX(MIN(result, (24 - 1)), 0);
         } else {
         } else {
             // No foreground color or no color support
             // No foreground color or no color support
-
             fgCode[0] = '\0';
             fgCode[0] = '\0';
             fgCodeLen = 0;
             fgCodeLen = 0;
         }
         }
@@ -1445,14 +1401,14 @@ static DDTTYLogger *sharedInstance;
             // Map background color to closest available shell color
             // Map background color to closest available shell color
 
 
             bgCodeIndex = [DDTTYLogger codeIndexForColor:bgColor];
             bgCodeIndex = [DDTTYLogger codeIndexForColor:bgColor];
-            bgCodeRaw   = codes_bg[bgCodeIndex];
+            bgCodeRaw   = codesBg[bgCodeIndex];
 
 
-            NSString *escapeSeq = @"\033[";
+            const NSString *escapeSeq = @"\033[";
 
 
             NSUInteger len1 = [escapeSeq lengthOfBytesUsingEncoding:NSUTF8StringEncoding];
             NSUInteger len1 = [escapeSeq lengthOfBytesUsingEncoding:NSUTF8StringEncoding];
             NSUInteger len2 = [bgCodeRaw lengthOfBytesUsingEncoding:NSUTF8StringEncoding];
             NSUInteger len2 = [bgCodeRaw lengthOfBytesUsingEncoding:NSUTF8StringEncoding];
 
 
-            BOOL escapeSeqEnc = [escapeSeq getCString:(bgCode)      maxLength:(len1 + 1) encoding:NSUTF8StringEncoding];
+            BOOL escapeSeqEnc = [escapeSeq getCString:(bgCode) maxLength:(len1 + 1) encoding:NSUTF8StringEncoding];
             BOOL bgCodeRawEsc = [bgCodeRaw getCString:(bgCode + len1) maxLength:(len2 + 1) encoding:NSUTF8StringEncoding];
             BOOL bgCodeRawEsc = [bgCodeRaw getCString:(bgCode + len1) maxLength:(len2 + 1) encoding:NSUTF8StringEncoding];
 
 
             if (!escapeSeqEnc || !bgCodeRawEsc) {
             if (!escapeSeqEnc || !bgCodeRawEsc) {
@@ -1462,14 +1418,11 @@ static DDTTYLogger *sharedInstance;
             bgCodeLen = len1 + len2;
             bgCodeLen = len1 + len2;
         } else if (bgColor && isaXcodeColorTTY) {
         } else if (bgColor && isaXcodeColorTTY) {
             // Convert background color to color code sequence
             // Convert background color to color code sequence
-
             const char *escapeSeq = XCODE_COLORS_ESCAPE_SEQ;
             const char *escapeSeq = XCODE_COLORS_ESCAPE_SEQ;
-
-            int result = snprintf(bgCode, 24, "%sbg%u,%u,%u;", escapeSeq, bg_r, bg_g, bg_b);
+            int result = snprintf(bgCode, 24, "%sbg%u,%u,%u;", escapeSeq, bg.r, bg.g, bg.b);
             bgCodeLen = (NSUInteger)MAX(MIN(result, (24 - 1)), 0);
             bgCodeLen = (NSUInteger)MAX(MIN(result, (24 - 1)), 0);
         } else {
         } else {
             // No background color or no color support
             // No background color or no color support
-
             bgCode[0] = '\0';
             bgCode[0] = '\0';
             bgCodeLen = 0;
             bgCodeLen = 0;
         }
         }
@@ -1490,7 +1443,7 @@ static DDTTYLogger *sharedInstance;
 - (NSString *)description {
 - (NSString *)description {
     return [NSString stringWithFormat:
     return [NSString stringWithFormat:
             @"<DDTTYLoggerColorProfile: %p mask:%i ctxt:%ld fg:%u,%u,%u bg:%u,%u,%u fgCode:%@ bgCode:%@>",
             @"<DDTTYLoggerColorProfile: %p mask:%i ctxt:%ld fg:%u,%u,%u bg:%u,%u,%u fgCode:%@ bgCode:%@>",
-            self, (int)mask, (long)context, fg_r, fg_g, fg_b, bg_r, bg_g, bg_b, fgCodeRaw, bgCodeRaw];
+            self, (int)mask, (long)context, fg.r, fg.g, fg.b, bg.r, bg.g, bg.b, fgCodeRaw, bgCodeRaw];
 }
 }
 
 
 @end
 @end

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/Extensions/DDContextFilterLogFormatter+Deprecated.m

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/Extensions/DDContextFilterLogFormatter.m

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 21 - 50
Pods/CocoaLumberjack/Sources/CocoaLumberjack/Extensions/DDDispatchQueueLogFormatter.m

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,
@@ -134,98 +134,69 @@ static DDQualityOfServiceName _qos_name(NSUInteger qos) {
 - (NSString *)queueThreadLabelForLogMessage:(DDLogMessage *)logMessage {
 - (NSString *)queueThreadLabelForLogMessage:(DDLogMessage *)logMessage {
     // As per the DDLogFormatter contract, this method is always invoked on the same thread/dispatch_queue
     // As per the DDLogFormatter contract, this method is always invoked on the same thread/dispatch_queue
 
 
-    NSUInteger minQueueLength = self.minQueueLength;
-    NSUInteger maxQueueLength = self.maxQueueLength;
-
-    // Get the name of the queue, thread, or machID (whichever we are to use).
-
-    NSString *queueThreadLabel = nil;
-
-    BOOL useQueueLabel = YES;
-    BOOL useThreadName = NO;
-
+    BOOL useQueueLabel = NO;
     if (logMessage->_queueLabel) {
     if (logMessage->_queueLabel) {
+        useQueueLabel = YES;
+
         // If you manually create a thread, it's dispatch_queue will have one of the thread names below.
         // If you manually create a thread, it's dispatch_queue will have one of the thread names below.
         // Since all such threads have the same name, we'd prefer to use the threadName or the machThreadID.
         // Since all such threads have the same name, we'd prefer to use the threadName or the machThreadID.
-
-        NSArray *names = @[
+        const NSArray *names = @[
             @"com.apple.root.low-priority",
             @"com.apple.root.low-priority",
             @"com.apple.root.default-priority",
             @"com.apple.root.default-priority",
             @"com.apple.root.high-priority",
             @"com.apple.root.high-priority",
             @"com.apple.root.low-overcommit-priority",
             @"com.apple.root.low-overcommit-priority",
             @"com.apple.root.default-overcommit-priority",
             @"com.apple.root.default-overcommit-priority",
             @"com.apple.root.high-overcommit-priority",
             @"com.apple.root.high-overcommit-priority",
-            @"com.apple.root.default-qos.overcommit"
+            @"com.apple.root.default-qos.overcommit",
         ];
         ];
-
-        for (NSString * name in names) {
+        for (NSString *name in names) {
             if ([logMessage->_queueLabel isEqualToString:name]) {
             if ([logMessage->_queueLabel isEqualToString:name]) {
                 useQueueLabel = NO;
                 useQueueLabel = NO;
-                useThreadName = [logMessage->_threadName length] > 0;
                 break;
                 break;
             }
             }
         }
         }
-    } else {
-        useQueueLabel = NO;
-        useThreadName = [logMessage->_threadName length] > 0;
     }
     }
 
 
-    if (useQueueLabel || useThreadName) {
-        NSString *fullLabel;
-        NSString *abrvLabel;
-
-        if (useQueueLabel) {
-            fullLabel = logMessage->_queueLabel;
-        } else {
-            fullLabel = logMessage->_threadName;
-        }
+    // Get the name of the queue, thread, or machID (whichever we are to use).
+    NSString *queueThreadLabel;
+    if (useQueueLabel || [logMessage->_threadName length] > 0) {
+        NSString *fullLabel = useQueueLabel ? logMessage->_queueLabel : logMessage->_threadName;
 
 
+        NSString *abrvLabel;
         pthread_mutex_lock(&_mutex);
         pthread_mutex_lock(&_mutex);
         {
         {
             abrvLabel = _replacements[fullLabel];
             abrvLabel = _replacements[fullLabel];
         }
         }
         pthread_mutex_unlock(&_mutex);
         pthread_mutex_unlock(&_mutex);
 
 
-        if (abrvLabel) {
-            queueThreadLabel = abrvLabel;
-        } else {
-            queueThreadLabel = fullLabel;
-        }
+        queueThreadLabel = abrvLabel ?: fullLabel;
     } else {
     } else {
         queueThreadLabel = logMessage->_threadID;
         queueThreadLabel = logMessage->_threadID;
     }
     }
 
 
     // Now use the thread label in the output
     // Now use the thread label in the output
-
-    NSUInteger labelLength = [queueThreadLabel length];
-
     // labelLength > maxQueueLength : truncate
     // labelLength > maxQueueLength : truncate
     // labelLength < minQueueLength : padding
     // labelLength < minQueueLength : padding
     //                              : exact
     //                              : exact
-
-    if ((maxQueueLength > 0) && (labelLength > maxQueueLength)) {
+    NSUInteger minQueueLength = self.minQueueLength;
+    NSUInteger maxQueueLength = self.maxQueueLength;
+    NSUInteger labelLength = [queueThreadLabel length];
+    if (maxQueueLength > 0 && labelLength > maxQueueLength) {
         // Truncate
         // Truncate
-
         return [queueThreadLabel substringToIndex:maxQueueLength];
         return [queueThreadLabel substringToIndex:maxQueueLength];
     } else if (labelLength < minQueueLength) {
     } else if (labelLength < minQueueLength) {
         // Padding
         // Padding
-
-        NSUInteger numSpaces = minQueueLength - labelLength;
-
-        char spaces[numSpaces + 1];
-        memset(spaces, ' ', numSpaces);
-        spaces[numSpaces] = '\0';
-
-        return [NSString stringWithFormat:@"%@%s", queueThreadLabel, spaces];
+        return [queueThreadLabel stringByPaddingToLength:minQueueLength
+                                              withString:@" "
+                                         startingAtIndex:0];
     } else {
     } else {
         // Exact
         // Exact
-
         return queueThreadLabel;
         return queueThreadLabel;
     }
     }
 }
 }
 
 
 - (NSString *)formatLogMessage:(DDLogMessage *)logMessage {
 - (NSString *)formatLogMessage:(DDLogMessage *)logMessage {
-    NSString *timestamp = [self stringFromDate:(logMessage->_timestamp)];
+    NSString *timestamp = [self stringFromDate:logMessage->_timestamp];
     NSString *queueThreadLabel = [self queueThreadLabelForLogMessage:logMessage];
     NSString *queueThreadLabel = [self queueThreadLabelForLogMessage:logMessage];
 
 
     return [NSString stringWithFormat:@"%@ [%@ (QOS:%@)] %@", timestamp, queueThreadLabel, _qos_name(logMessage->_qos), logMessage->_message];
     return [NSString stringWithFormat:@"%@ [%@ (QOS:%@)] %@", timestamp, queueThreadLabel, _qos_name(logMessage->_qos), logMessage->_message];

+ 3 - 3
Pods/CocoaLumberjack/Sources/CocoaLumberjack/Extensions/DDFileLogger+Buffering.m

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,
@@ -41,7 +41,7 @@ static inline NSUInteger p_DDGetDefaultBufferSizeBytesMax(const BOOL max) {
     return max ? kDDMaxBufferSize : kDDDefaultBufferSize;
     return max ? kDDMaxBufferSize : kDDDefaultBufferSize;
 }
 }
 
 
-static NSUInteger DDGetMaxBufferSizeBytes() {
+static NSUInteger DDGetMaxBufferSizeBytes(void) {
     static NSUInteger maxBufferSize = 0;
     static NSUInteger maxBufferSize = 0;
     static dispatch_once_t onceToken;
     static dispatch_once_t onceToken;
     dispatch_once(&onceToken, ^{
     dispatch_once(&onceToken, ^{
@@ -50,7 +50,7 @@ static NSUInteger DDGetMaxBufferSizeBytes() {
     return maxBufferSize;
     return maxBufferSize;
 }
 }
 
 
-static NSUInteger DDGetDefaultBufferSizeBytes() {
+static NSUInteger DDGetDefaultBufferSizeBytes(void) {
     static NSUInteger defaultBufferSize = 0;
     static NSUInteger defaultBufferSize = 0;
     static dispatch_once_t onceToken;
     static dispatch_once_t onceToken;
     dispatch_once(&onceToken, ^{
     dispatch_once(&onceToken, ^{

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/Extensions/DDMultiFormatter.m

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/Supporting Files/CocoaLumberjack.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/Supporting Files/DDLegacyMacros.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/CLIColor.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDASLLogCapture.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDASLLogger.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDAbstractDatabaseLogger.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 2 - 2
Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDAssertMacros.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,
@@ -22,7 +22,7 @@
             DDLogError(@"%@", description);                                           \
             DDLogError(@"%@", description);                                           \
             NSAssert(NO, @"%@", description);                                         \
             NSAssert(NO, @"%@", description);                                         \
         }
         }
-#define DDAssertCondition(condition) DDAssert(condition, @"Condition not satisfied: %s", #condition)
+#define DDAssertCondition(condition) DDAssert(condition, @"Condition not satisfied: %@", @(#condition))
 
 
 /**
 /**
  * Analog to `DDAssertionFailure` from DDAssert.swift for use in Objective C
  * Analog to `DDAssertionFailure` from DDAssert.swift for use in Objective C

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDContextFilterLogFormatter+Deprecated.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDContextFilterLogFormatter.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDDispatchQueueLogFormatter.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDFileLogger+Buffering.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDFileLogger.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDLog+LOGV.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 69 - 5
Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDLog.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,
@@ -791,6 +791,7 @@ DD_SENDABLE
     // Direct accessors to be used only for performance
     // Direct accessors to be used only for performance
     @public
     @public
     NSString *_message;
     NSString *_message;
+    NSString *_messageFormat;
     DDLogLevel _level;
     DDLogLevel _level;
     DDLogFlag _flag;
     DDLogFlag _flag;
     NSInteger _context;
     NSInteger _context;
@@ -798,9 +799,9 @@ DD_SENDABLE
     NSString *_fileName;
     NSString *_fileName;
     NSString *_function;
     NSString *_function;
     NSUInteger _line;
     NSUInteger _line;
-    #if DD_LEGACY_MESSAGE_TAG
+#if DD_LEGACY_MESSAGE_TAG
     id _tag __attribute__((deprecated("Use _representedObject instead", "_representedObject")));
     id _tag __attribute__((deprecated("Use _representedObject instead", "_representedObject")));
-    #endif
+#endif
     id _representedObject;
     id _representedObject;
     DDLogMessageOptions _options;
     DDLogMessageOptions _options;
     NSDate * _timestamp;
     NSDate * _timestamp;
@@ -829,6 +830,64 @@ DD_SENDABLE
  * so it makes sense to optimize and skip the unnecessary allocations.
  * so it makes sense to optimize and skip the unnecessary allocations.
  * However, if you need them to be copied you may use the options parameter to specify this.
  * However, if you need them to be copied you may use the options parameter to specify this.
  *
  *
+ *  @param messageFormat   the message format
+ *  @param message  the formatted message
+ *  @param level     the log level
+ *  @param flag      the log flag
+ *  @param context   the context (if any is defined)
+ *  @param file      the current file
+ *  @param function  the current function
+ *  @param line      the current code line
+ *  @param tag       potential tag
+ *  @param options   a bitmask which supports DDLogMessageCopyFile and DDLogMessageCopyFunction.
+ *  @param timestamp the log timestamp
+ *
+ *  @return a new instance of a log message model object
+ */
+- (instancetype)initWithFormat:(NSString *)messageFormat
+                     formatted:(NSString *)message
+                         level:(DDLogLevel)level
+                          flag:(DDLogFlag)flag
+                       context:(NSInteger)context
+                          file:(NSString *)file
+                      function:(nullable NSString *)function
+                          line:(NSUInteger)line
+                           tag:(nullable id)tag
+                       options:(DDLogMessageOptions)options
+                     timestamp:(nullable NSDate *)timestamp NS_DESIGNATED_INITIALIZER;
+
+/**
+ *     Convenience initializer taking a `va_list` as arguments to create the formatted message.
+ *
+ *  @param messageFormat   the message format
+ *  @param messageArgs   the message arguments.
+ *  @param level     the log level
+ *  @param flag      the log flag
+ *  @param context   the context (if any is defined)
+ *  @param file      the current file
+ *  @param function  the current function
+ *  @param line      the current code line
+ *  @param tag       potential tag
+ *  @param options   a bitmask which supports DDLogMessageCopyFile and DDLogMessageCopyFunction.
+ *  @param timestamp the log timestamp
+ *
+ *  @return a new instance of a log message model object
+ */
+- (instancetype)initWithFormat:(NSString *)messageFormat
+                          args:(va_list)messageArgs
+                         level:(DDLogLevel)level
+                          flag:(DDLogFlag)flag
+                       context:(NSInteger)context
+                          file:(NSString *)file
+                      function:(nullable NSString *)function
+                          line:(NSUInteger)line
+                           tag:(nullable id)tag
+                       options:(DDLogMessageOptions)options
+                     timestamp:(nullable NSDate *)timestamp;
+
+/**
+ *  Deprecated initialier. See initWithFormat:args:formatted:level:flag:context:file:function:line:tag:options:timestamp:.
+ *
  *  @param message   the message
  *  @param message   the message
  *  @param level     the log level
  *  @param level     the log level
  *  @param flag      the log flag
  *  @param flag      the log flag
@@ -851,16 +910,21 @@ DD_SENDABLE
                            line:(NSUInteger)line
                            line:(NSUInteger)line
                             tag:(nullable id)tag
                             tag:(nullable id)tag
                         options:(DDLogMessageOptions)options
                         options:(DDLogMessageOptions)options
-                      timestamp:(nullable NSDate *)timestamp NS_DESIGNATED_INITIALIZER;
+                      timestamp:(nullable NSDate *)timestamp
+__attribute__((deprecated("Use initializer taking unformatted message and args instead", "initWithFormat:formatted:level:flag:context:file:function:line:tag:options:timestamp:")));
 
 
 /**
 /**
  * Read-only properties
  * Read-only properties
  **/
  **/
 
 
 /**
 /**
- *  The log message
+ *  The log message.
  */
  */
 @property (readonly, nonatomic) NSString *message;
 @property (readonly, nonatomic) NSString *message;
+/**
+ * The message format. When the deprecated initializer is used, this might be the same as `message`.
+ */
+@property (readonly, nonatomic) NSString *messageFormat;
 @property (readonly, nonatomic) DDLogLevel level;
 @property (readonly, nonatomic) DDLogLevel level;
 @property (readonly, nonatomic) DDLogFlag flag;
 @property (readonly, nonatomic) DDLogFlag flag;
 @property (readonly, nonatomic) NSInteger context;
 @property (readonly, nonatomic) NSInteger context;

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDLogMacros.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDLoggerNames.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDMultiFormatter.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 1 - 1
Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDOSLogger.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,

+ 2 - 2
Pods/CocoaLumberjack/Sources/CocoaLumberjack/include/CocoaLumberjack/DDTTYLogger.h

@@ -1,6 +1,6 @@
 // Software License Agreement (BSD License)
 // Software License Agreement (BSD License)
 //
 //
-// Copyright (c) 2010-2022, Deusty, LLC
+// Copyright (c) 2010-2023, Deusty, LLC
 // All rights reserved.
 // All rights reserved.
 //
 //
 // Redistribution and use of this software in source and binary forms,
 // Redistribution and use of this software in source and binary forms,
@@ -28,7 +28,7 @@
     // iOS or tvOS or watchOS
     // iOS or tvOS or watchOS
     #import <UIKit/UIColor.h>
     #import <UIKit/UIColor.h>
     typedef UIColor DDColor;
     typedef UIColor DDColor;
-    static inline DDColor* _Nonnull DDMakeColor(CGFloat r, CGFloat g, CGFloat b) {return [DDColor colorWithRed:(r/255.0) green:(g/255.0) blue:(b/255.0) alpha:1.0];}
+    static inline DDColor* _Nonnull DDMakeColor(CGFloat r, CGFloat g, CGFloat b) {return [DDColor colorWithRed:(r/(CGFloat)255.0) green:(g/(CGFloat)255.0) blue:(b/(CGFloat)255.0) alpha:1.0];}
 #elif defined(DD_CLI) || !__has_include(<AppKit/NSColor.h>)
 #elif defined(DD_CLI) || !__has_include(<AppKit/NSColor.h>)
     // OS X CLI
     // OS X CLI
     #import <CocoaLumberjack/CLIColor.h>
     #import <CocoaLumberjack/CLIColor.h>

+ 9 - 9
Pods/Manifest.lock

@@ -1,7 +1,7 @@
 PODS:
 PODS:
-  - CocoaLumberjack (3.8.0):
-    - CocoaLumberjack/Core (= 3.8.0)
-  - CocoaLumberjack/Core (3.8.0)
+  - CocoaLumberjack (3.8.1):
+    - CocoaLumberjack/Core (= 3.8.1)
+  - CocoaLumberjack/Core (3.8.1)
   - libwebp (1.3.2):
   - libwebp (1.3.2):
     - libwebp/demux (= 1.3.2)
     - libwebp/demux (= 1.3.2)
     - libwebp/mux (= 1.3.2)
     - libwebp/mux (= 1.3.2)
@@ -28,8 +28,8 @@ PODS:
   - SVGKit (3.0.0):
   - SVGKit (3.0.0):
     - CocoaLumberjack (~> 3.0)
     - CocoaLumberjack (~> 3.0)
   - Swifter (1.5.0)
   - Swifter (1.5.0)
-  - SwiftFormat/CLI (0.51.8)
-  - SwiftLint (0.51.0)
+  - SwiftFormat/CLI (0.52.4)
+  - SwiftLint (0.53.0)
 
 
 DEPENDENCIES:
 DEPENDENCIES:
   - ReachabilitySwift
   - ReachabilitySwift
@@ -66,7 +66,7 @@ CHECKOUT OPTIONS:
     :git: https://github.com/httpswift/swifter.git
     :git: https://github.com/httpswift/swifter.git
 
 
 SPEC CHECKSUMS:
 SPEC CHECKSUMS:
-  CocoaLumberjack: 78abfb691154e2a9df8ded4350d504ee19d90732
+  CocoaLumberjack: 5c7e64cdb877770859bddec4d3d5a0d7c9299df9
   libwebp: 1786c9f4ff8a279e4dac1e8f385004d5fc253009
   libwebp: 1786c9f4ff8a279e4dac1e8f385004d5fc253009
   ReachabilitySwift: 985039c6f7b23a1da463388634119492ff86c825
   ReachabilitySwift: 985039c6f7b23a1da463388634119492ff86c825
   SCSiriWaveformView: 016392911fb442c17d6dbad68e666edb13193c02
   SCSiriWaveformView: 016392911fb442c17d6dbad68e666edb13193c02
@@ -75,9 +75,9 @@ SPEC CHECKSUMS:
   SDWebImageWebPCoder: af09429398d99d524cae2fe00f6f0f6e491ed102
   SDWebImageWebPCoder: af09429398d99d524cae2fe00f6f0f6e491ed102
   SVGKit: 1ad7513f8c74d9652f94ed64ddecda1a23864dea
   SVGKit: 1ad7513f8c74d9652f94ed64ddecda1a23864dea
   Swifter: aa3514bbb8df8980c118f7bb1b80f2da24e39c2b
   Swifter: aa3514bbb8df8980c118f7bb1b80f2da24e39c2b
-  SwiftFormat: 4334264324e20bad415888316165bdc1fc2860bc
-  SwiftLint: 1b7561918a19e23bfed960e40759086e70f4dba5
+  SwiftFormat: 3471ff966ddb724bd7acd091c865aaa6582dde08
+  SwiftLint: 5ce4d6a8ff83f1b5fd5ad5dbf30965d35af65e44
 
 
 PODFILE CHECKSUM: bbaaa9c3242dd69a1c26c334c2eeb92bbece8f27
 PODFILE CHECKSUM: bbaaa9c3242dd69a1c26c334c2eeb92bbece8f27
 
 
-COCOAPODS: 1.12.1
+COCOAPODS: 1.13.0

File diff suppressed because it is too large
+ 164 - 161
Pods/Pods.xcodeproj/project.pbxproj


BIN
Pods/SwiftFormat/CommandLineTool/swiftformat


+ 32 - 5
Pods/SwiftFormat/README.md

@@ -3,7 +3,7 @@
 [![PayPal](https://img.shields.io/badge/paypal-donate-blue.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=9ZGWNK5FEZFF6&source=url)
 [![PayPal](https://img.shields.io/badge/paypal-donate-blue.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=9ZGWNK5FEZFF6&source=url)
 [![Build](https://github.com/nicklockwood/SwiftFormat/actions/workflows/build.yml/badge.svg)](https://github.com/nicklockwood/SwiftFormat/actions/workflows/build.yml)
 [![Build](https://github.com/nicklockwood/SwiftFormat/actions/workflows/build.yml/badge.svg)](https://github.com/nicklockwood/SwiftFormat/actions/workflows/build.yml)
 [![Codecov](https://codecov.io/gh/nicklockwood/SwiftFormat/graphs/badge.svg)](https://codecov.io/gh/nicklockwood/SwiftFormat)
 [![Codecov](https://codecov.io/gh/nicklockwood/SwiftFormat/graphs/badge.svg)](https://codecov.io/gh/nicklockwood/SwiftFormat)
-[![Swift 4.2](https://img.shields.io/badge/swift-4.2-red.svg?style=flat)](https://developer.apple.com/swift)
+[![Swift 5.1](https://img.shields.io/badge/swift-5.1-red.svg?style=flat)](https://developer.apple.com/swift)
 [![License](https://img.shields.io/badge/license-MIT-lightgrey.svg)](https://opensource.org/licenses/MIT)
 [![License](https://img.shields.io/badge/license-MIT-lightgrey.svg)](https://opensource.org/licenses/MIT)
 [![Mastodon](https://img.shields.io/badge/mastodon-@nicklockwood@mastodon.social-636dff.svg)](https://mastodon.social/@nicklockwood)
 [![Mastodon](https://img.shields.io/badge/mastodon-@nicklockwood@mastodon.social-636dff.svg)](https://mastodon.social/@nicklockwood)
 
 
@@ -43,7 +43,7 @@ Table of Contents
 What is this?
 What is this?
 ----------------
 ----------------
 
 
-SwiftFormat is a code library and command-line tool for reformatting Swift code on macOS or Linux.
+SwiftFormat is a code library and command-line tool for reformatting Swift code on macOS, Linux or Windows.
 
 
 SwiftFormat goes above and beyond what you might expect from a code formatter. In addition to adjusting white space it can insert or remove implicit `self`, remove redundant parentheses, and correct many other deviations from the standard Swift idioms.
 SwiftFormat goes above and beyond what you might expect from a code formatter. In addition to adjusting white space it can insert or remove implicit `self`, remove redundant parentheses, and correct many other deviations from the standard Swift idioms.
 
 
@@ -91,7 +91,7 @@ $ brew upgrade swiftformat
 Alternatively, you can install the tool on macOS or Linux by using [Mint](https://github.com/yonaskolb/Mint) as follows:
 Alternatively, you can install the tool on macOS or Linux by using [Mint](https://github.com/yonaskolb/Mint) as follows:
 
 
 ```bash
 ```bash
-$ mint install nicklockwood/SwiftFormat
+$ mint install nicklockwood/SwiftFormat@main
 ```
 ```
 
 
 Or if you prefer, you can check out and build SwiftFormat manually on macOS, Linux or Windows as follows:
 Or if you prefer, you can check out and build SwiftFormat manually on macOS, Linux or Windows as follows:
@@ -314,6 +314,32 @@ fi
 
 
 This is not recommended for shared projects however, as different team members using different versions of SwiftFormat may result in noise in the commit history as code gets reformatted inconsistently.
 This is not recommended for shared projects however, as different team members using different versions of SwiftFormat may result in noise in the commit history as code gets reformatted inconsistently.
 
 
+If you installed SwiftFormat via Homebrew on Apple Silicon, you might experience this warning:
+
+> warning: SwiftFormat not installed, download from https://github.com/nicklockwood/SwiftFormat
+
+That is because Homebrew on Apple Silicon installs the binaries into the `/opt/homebrew/bin`
+folder by default. To instruct Xcode where to find SwiftFormat, you can either add
+`/opt/homebrew/bin` to the `PATH` environment variable in your build phase
+
+```bash
+if [[ "$(uname -m)" == arm64 ]]; then
+    export PATH="/opt/homebrew/bin:$PATH"
+fi
+
+if which swiftformat > /dev/null; then
+  swiftformat .
+else
+  echo "warning: SwiftFormat not installed, download from https://github.com/nicklockwood/SwiftFormat"
+fi
+```
+
+or you can create a symbolic link in `/usr/local/bin` pointing to the actual binary:
+
+```bash
+ln -s /opt/homebrew/bin/swiftlint /usr/local/bin/swiftlint
+```
+
 Swift Package Manager plugin
 Swift Package Manager plugin
 -----------------------------
 -----------------------------
 
 
@@ -480,7 +506,7 @@ The options available in SwiftFormat can be displayed using the `--options` comm
 
 
 Rules are configured by adding `--[option_name] [value]` to your command-line arguments, or by creating a `.swiftformat` [config file](#config-file) and placing it in your project directory.
 Rules are configured by adding `--[option_name] [value]` to your command-line arguments, or by creating a `.swiftformat` [config file](#config-file) and placing it in your project directory.
 
 
-A given option may affect multiple rules. Use `--ruleinfo [rule_name]` command for details about which options affect a given rule, or see the [Rules.md](https://github.com/nicklockwood/SwiftFormat/blob/master/Rules.md) file.
+A given option may affect multiple rules. Use `--ruleinfo [rule_name]` command for details about which options affect a given rule, or see the [Rules.md](https://github.com/nicklockwood/SwiftFormat/blob/main/Rules.md) file.
 
 
 You can configure options for specific files or code ranges by using `swiftformat:options` directive in comments inside your Swift file. To temporarily set one or more options inside a source file, use:
 You can configure options for specific files or code ranges by using `swiftformat:options` directive in comments inside your Swift file. To temporarily set one or more options inside a source file, use:
 
 
@@ -499,7 +525,7 @@ doTheThing(); print("Did the thing")
 Rules
 Rules
 -----
 -----
 
 
-SwiftFormat includes over 50 rules, and new ones are added all the time. An up-to-date list can be found in [Rules.md](https://github.com/nicklockwood/SwiftFormat/blob/master/Rules.md) along with documentation for how they are used.
+SwiftFormat includes over 50 rules, and new ones are added all the time. An up-to-date list can be found in [Rules.md](https://github.com/nicklockwood/SwiftFormat/blob/main/Rules.md) along with documentation for how they are used.
 
 
 The list of available rules can be displayed within the command-line app using the `--rules` argument. Rules can be either enabled or disabled. Most are enabled by default. Disabled rules are marked with "(disabled)" when displayed using `--rules`.
 The list of available rules can be displayed within the command-line app using the `--rules` argument. Rules can be either enabled or disabled. Most are enabled by default. Disabled rules are marked with "(disabled)" when displayed using `--rules`.
 
 
@@ -929,6 +955,7 @@ Credits
 * [Daniele Formichelli](https://github.com/danyf90) - JSON reporter
 * [Daniele Formichelli](https://github.com/danyf90) - JSON reporter
 * [Jonas Boberg](https://github.com/bobergj) - Github actions log reporter
 * [Jonas Boberg](https://github.com/bobergj) - Github actions log reporter
 * [Mahdi Bchatnia](https://github.com/inket) - Linux build workflow
 * [Mahdi Bchatnia](https://github.com/inket) - Linux build workflow
+* [Saleem Abdulrasool](https://github.com/compnerd) - Windows build workflow
 * [Arthur Semenyutin](https://github.com/vox-humana) - Docker image
 * [Arthur Semenyutin](https://github.com/vox-humana) - Docker image
 * [Marco Eidinger](https://github.com/MarcoEidinger) - Swift Package Manager plugin
 * [Marco Eidinger](https://github.com/MarcoEidinger) - Swift Package Manager plugin
 * [Nick Lockwood](https://github.com/nicklockwood) - Everything else
 * [Nick Lockwood](https://github.com/nicklockwood) - Everything else

BIN
Pods/SwiftLint/swiftlint


+ 1 - 1
Pods/Target Support Files/CocoaLumberjack/CocoaLumberjack-Info.plist

@@ -15,7 +15,7 @@
   <key>CFBundlePackageType</key>
   <key>CFBundlePackageType</key>
   <string>FMWK</string>
   <string>FMWK</string>
   <key>CFBundleShortVersionString</key>
   <key>CFBundleShortVersionString</key>
-  <string>3.8.0</string>
+  <string>3.8.1</string>
   <key>CFBundleSignature</key>
   <key>CFBundleSignature</key>
   <string>????</string>
   <string>????</string>
   <key>CFBundleVersion</key>
   <key>CFBundleVersion</key>

+ 1 - 1
Pods/Target Support Files/Pods-deltachat-ios/Pods-deltachat-ios-acknowledgements.markdown

@@ -5,7 +5,7 @@ This application makes use of the following third party libraries:
 
 
 BSD 3-Clause License
 BSD 3-Clause License
 
 
-Copyright (c) 2010-2022, Deusty, LLC
+Copyright (c) 2010-2023, Deusty, LLC
 All rights reserved.
 All rights reserved.
 
 
 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

+ 1 - 1
Pods/Target Support Files/Pods-deltachat-ios/Pods-deltachat-ios-acknowledgements.plist

@@ -16,7 +16,7 @@
 			<key>FooterText</key>
 			<key>FooterText</key>
 			<string>BSD 3-Clause License
 			<string>BSD 3-Clause License
 
 
-Copyright (c) 2010-2022, Deusty, LLC
+Copyright (c) 2010-2023, Deusty, LLC
 All rights reserved.
 All rights reserved.
 
 
 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

+ 1 - 1
Pods/Target Support Files/Pods-deltachat-ios/Pods-deltachat-ios-frameworks.sh

@@ -18,7 +18,7 @@ echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
 mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
 mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
 
 
 COCOAPODS_PARALLEL_CODE_SIGN="${COCOAPODS_PARALLEL_CODE_SIGN:-false}"
 COCOAPODS_PARALLEL_CODE_SIGN="${COCOAPODS_PARALLEL_CODE_SIGN:-false}"
-SWIFT_STDLIB_PATH="${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}"
+SWIFT_STDLIB_PATH="${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}"
 BCSYMBOLMAP_DIR="BCSymbolMaps"
 BCSYMBOLMAP_DIR="BCSymbolMaps"
 
 
 
 

+ 1 - 1
Pods/Target Support Files/Pods-deltachat-ios/Pods-deltachat-ios.debug.xcconfig

@@ -4,7 +4,7 @@ FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/CocoaLumb
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 $(inherited) SD_WEBP=1
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 $(inherited) SD_WEBP=1
 HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/CocoaLumberjack/CocoaLumberjack.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/ReachabilitySwift/Reachability.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SCSiriWaveformView/SCSiriWaveformView.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImage/SDWebImage.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageSVGKitPlugin/SDWebImageSVGKitPlugin.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageWebPCoder/SDWebImageWebPCoder.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SVGKit/SVGKit.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Swifter/Swifter.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/libwebp/libwebp.framework/Headers"
 HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/CocoaLumberjack/CocoaLumberjack.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/ReachabilitySwift/Reachability.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SCSiriWaveformView/SCSiriWaveformView.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImage/SDWebImage.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageSVGKitPlugin/SDWebImageSVGKitPlugin.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageWebPCoder/SDWebImageWebPCoder.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SVGKit/SVGKit.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Swifter/Swifter.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/libwebp/libwebp.framework/Headers"
 LD_RUNPATH_SEARCH_PATHS = $(inherited) /usr/lib/swift '@executable_path/Frameworks' '@loader_path/Frameworks'
 LD_RUNPATH_SEARCH_PATHS = $(inherited) /usr/lib/swift '@executable_path/Frameworks' '@loader_path/Frameworks'
-LIBRARY_SEARCH_PATHS = $(inherited) "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
+LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
 OTHER_CFLAGS = $(inherited) -isystem "${PODS_CONFIGURATION_BUILD_DIR}/CocoaLumberjack/CocoaLumberjack.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/ReachabilitySwift/Reachability.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SCSiriWaveformView/SCSiriWaveformView.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImage/SDWebImage.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageSVGKitPlugin/SDWebImageSVGKitPlugin.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageWebPCoder/SDWebImageWebPCoder.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SVGKit/SVGKit.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/Swifter/Swifter.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/libwebp/libwebp.framework/Headers" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/CocoaLumberjack" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/ReachabilitySwift" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SCSiriWaveformView" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImage" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageSVGKitPlugin" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageWebPCoder" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SVGKit" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/Swifter" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/libwebp"
 OTHER_CFLAGS = $(inherited) -isystem "${PODS_CONFIGURATION_BUILD_DIR}/CocoaLumberjack/CocoaLumberjack.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/ReachabilitySwift/Reachability.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SCSiriWaveformView/SCSiriWaveformView.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImage/SDWebImage.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageSVGKitPlugin/SDWebImageSVGKitPlugin.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageWebPCoder/SDWebImageWebPCoder.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SVGKit/SVGKit.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/Swifter/Swifter.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/libwebp/libwebp.framework/Headers" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/CocoaLumberjack" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/ReachabilitySwift" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SCSiriWaveformView" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImage" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageSVGKitPlugin" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageWebPCoder" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SVGKit" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/Swifter" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/libwebp"
 OTHER_LDFLAGS = $(inherited) -l"xml2" -framework "AVFoundation" -framework "CocoaLumberjack" -framework "CoreGraphics" -framework "CoreTelephony" -framework "CoreText" -framework "Foundation" -framework "ImageIO" -framework "QuartzCore" -framework "Reachability" -framework "SCSiriWaveformView" -framework "SDWebImage" -framework "SDWebImageSVGKitPlugin" -framework "SDWebImageWebPCoder" -framework "SVGKit" -framework "Swifter" -framework "SystemConfiguration" -framework "UIKit" -framework "libwebp"
 OTHER_LDFLAGS = $(inherited) -l"xml2" -framework "AVFoundation" -framework "CocoaLumberjack" -framework "CoreGraphics" -framework "CoreTelephony" -framework "CoreText" -framework "Foundation" -framework "ImageIO" -framework "QuartzCore" -framework "Reachability" -framework "SCSiriWaveformView" -framework "SDWebImage" -framework "SDWebImageSVGKitPlugin" -framework "SDWebImageWebPCoder" -framework "SVGKit" -framework "Swifter" -framework "SystemConfiguration" -framework "UIKit" -framework "libwebp"
 OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS
 OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS

+ 1 - 1
Pods/Target Support Files/Pods-deltachat-ios/Pods-deltachat-ios.release.xcconfig

@@ -4,7 +4,7 @@ FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/CocoaLumb
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 $(inherited) SD_WEBP=1
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 $(inherited) SD_WEBP=1
 HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/CocoaLumberjack/CocoaLumberjack.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/ReachabilitySwift/Reachability.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SCSiriWaveformView/SCSiriWaveformView.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImage/SDWebImage.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageSVGKitPlugin/SDWebImageSVGKitPlugin.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageWebPCoder/SDWebImageWebPCoder.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SVGKit/SVGKit.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Swifter/Swifter.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/libwebp/libwebp.framework/Headers"
 HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/CocoaLumberjack/CocoaLumberjack.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/ReachabilitySwift/Reachability.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SCSiriWaveformView/SCSiriWaveformView.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImage/SDWebImage.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageSVGKitPlugin/SDWebImageSVGKitPlugin.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageWebPCoder/SDWebImageWebPCoder.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SVGKit/SVGKit.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Swifter/Swifter.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/libwebp/libwebp.framework/Headers"
 LD_RUNPATH_SEARCH_PATHS = $(inherited) /usr/lib/swift '@executable_path/Frameworks' '@loader_path/Frameworks'
 LD_RUNPATH_SEARCH_PATHS = $(inherited) /usr/lib/swift '@executable_path/Frameworks' '@loader_path/Frameworks'
-LIBRARY_SEARCH_PATHS = $(inherited) "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
+LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
 OTHER_CFLAGS = $(inherited) -isystem "${PODS_CONFIGURATION_BUILD_DIR}/CocoaLumberjack/CocoaLumberjack.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/ReachabilitySwift/Reachability.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SCSiriWaveformView/SCSiriWaveformView.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImage/SDWebImage.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageSVGKitPlugin/SDWebImageSVGKitPlugin.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageWebPCoder/SDWebImageWebPCoder.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SVGKit/SVGKit.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/Swifter/Swifter.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/libwebp/libwebp.framework/Headers" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/CocoaLumberjack" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/ReachabilitySwift" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SCSiriWaveformView" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImage" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageSVGKitPlugin" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageWebPCoder" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SVGKit" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/Swifter" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/libwebp"
 OTHER_CFLAGS = $(inherited) -isystem "${PODS_CONFIGURATION_BUILD_DIR}/CocoaLumberjack/CocoaLumberjack.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/ReachabilitySwift/Reachability.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SCSiriWaveformView/SCSiriWaveformView.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImage/SDWebImage.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageSVGKitPlugin/SDWebImageSVGKitPlugin.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageWebPCoder/SDWebImageWebPCoder.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/SVGKit/SVGKit.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/Swifter/Swifter.framework/Headers" -isystem "${PODS_CONFIGURATION_BUILD_DIR}/libwebp/libwebp.framework/Headers" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/CocoaLumberjack" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/ReachabilitySwift" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SCSiriWaveformView" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImage" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageSVGKitPlugin" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SDWebImageWebPCoder" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/SVGKit" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/Swifter" -iframework "${PODS_CONFIGURATION_BUILD_DIR}/libwebp"
 OTHER_LDFLAGS = $(inherited) -l"xml2" -framework "AVFoundation" -framework "CocoaLumberjack" -framework "CoreGraphics" -framework "CoreTelephony" -framework "CoreText" -framework "Foundation" -framework "ImageIO" -framework "QuartzCore" -framework "Reachability" -framework "SCSiriWaveformView" -framework "SDWebImage" -framework "SDWebImageSVGKitPlugin" -framework "SDWebImageWebPCoder" -framework "SVGKit" -framework "Swifter" -framework "SystemConfiguration" -framework "UIKit" -framework "libwebp"
 OTHER_LDFLAGS = $(inherited) -l"xml2" -framework "AVFoundation" -framework "CocoaLumberjack" -framework "CoreGraphics" -framework "CoreTelephony" -framework "CoreText" -framework "Foundation" -framework "ImageIO" -framework "QuartzCore" -framework "Reachability" -framework "SCSiriWaveformView" -framework "SDWebImage" -framework "SDWebImageSVGKitPlugin" -framework "SDWebImageWebPCoder" -framework "SVGKit" -framework "Swifter" -framework "SystemConfiguration" -framework "UIKit" -framework "libwebp"
 OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS
 OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS

+ 1 - 1
Pods/Target Support Files/ReachabilitySwift/ReachabilitySwift.debug.xcconfig

@@ -1,7 +1,7 @@
 CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
 CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
 CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/ReachabilitySwift
 CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/ReachabilitySwift
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-LIBRARY_SEARCH_PATHS = $(inherited) "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
+LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
 OTHER_LDFLAGS = $(inherited) -framework "CoreTelephony" -framework "SystemConfiguration"
 OTHER_LDFLAGS = $(inherited) -framework "CoreTelephony" -framework "SystemConfiguration"
 OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -suppress-warnings
 OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -suppress-warnings
 PODS_BUILD_DIR = ${BUILD_DIR}
 PODS_BUILD_DIR = ${BUILD_DIR}

+ 1 - 1
Pods/Target Support Files/ReachabilitySwift/ReachabilitySwift.release.xcconfig

@@ -1,7 +1,7 @@
 CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
 CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
 CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/ReachabilitySwift
 CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/ReachabilitySwift
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-LIBRARY_SEARCH_PATHS = $(inherited) "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
+LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
 OTHER_LDFLAGS = $(inherited) -framework "CoreTelephony" -framework "SystemConfiguration"
 OTHER_LDFLAGS = $(inherited) -framework "CoreTelephony" -framework "SystemConfiguration"
 OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -suppress-warnings
 OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -suppress-warnings
 PODS_BUILD_DIR = ${BUILD_DIR}
 PODS_BUILD_DIR = ${BUILD_DIR}

+ 1 - 1
Pods/Target Support Files/SwiftFormat/SwiftFormat.debug.xcconfig

@@ -1,7 +1,7 @@
 CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
 CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
 CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/SwiftFormat
 CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/SwiftFormat
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-LIBRARY_SEARCH_PATHS = $(inherited) "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
+LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
 OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -suppress-warnings
 OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -suppress-warnings
 PODS_BUILD_DIR = ${BUILD_DIR}
 PODS_BUILD_DIR = ${BUILD_DIR}
 PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
 PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)

+ 1 - 1
Pods/Target Support Files/SwiftFormat/SwiftFormat.release.xcconfig

@@ -1,7 +1,7 @@
 CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
 CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
 CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/SwiftFormat
 CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/SwiftFormat
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-LIBRARY_SEARCH_PATHS = $(inherited) "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
+LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
 OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -suppress-warnings
 OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -suppress-warnings
 PODS_BUILD_DIR = ${BUILD_DIR}
 PODS_BUILD_DIR = ${BUILD_DIR}
 PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
 PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)

+ 1 - 1
Pods/Target Support Files/Swifter/Swifter.debug.xcconfig

@@ -1,7 +1,7 @@
 CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
 CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
 CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/Swifter
 CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/Swifter
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-LIBRARY_SEARCH_PATHS = $(inherited) "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
+LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
 OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -suppress-warnings
 OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -suppress-warnings
 PODS_BUILD_DIR = ${BUILD_DIR}
 PODS_BUILD_DIR = ${BUILD_DIR}
 PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
 PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)

+ 1 - 1
Pods/Target Support Files/Swifter/Swifter.release.xcconfig

@@ -1,7 +1,7 @@
 CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
 CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
 CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/Swifter
 CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/Swifter
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-LIBRARY_SEARCH_PATHS = $(inherited) "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
+LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
 OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -suppress-warnings
 OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -suppress-warnings
 PODS_BUILD_DIR = ${BUILD_DIR}
 PODS_BUILD_DIR = ${BUILD_DIR}
 PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
 PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)

+ 77 - 75
deltachat-ios.xcodeproj/project.pbxproj

@@ -7,10 +7,9 @@
 	objects = {
 	objects = {
 
 
 /* Begin PBXBuildFile section */
 /* Begin PBXBuildFile section */
-		0B0A5C05F49E30F57B6F73C5 /* Pods_DcShare.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 456267D3A3AE57C533877C2B /* Pods_DcShare.framework */; };
 		21D54500299415B9008B54D5 /* Character+Extentions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21D544FF299415B9008B54D5 /* Character+Extentions.swift */; };
 		21D54500299415B9008B54D5 /* Character+Extentions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21D544FF299415B9008B54D5 /* Character+Extentions.swift */; };
 		21D6C941260623F500D0755A /* NotificationManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21D6C9392606190600D0755A /* NotificationManager.swift */; };
 		21D6C941260623F500D0755A /* NotificationManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21D6C9392606190600D0755A /* NotificationManager.swift */; };
-		29AAA03053C393EAEF537AFE /* Pods_deltachat_ios.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 88C8BBF4611AA3963E496219 /* Pods_deltachat_ios.framework */; };
+		2C0B3392019C51BC9DDBB960 /* Pods_deltachat_ios.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 12E18F2336264C265BB756C2 /* Pods_deltachat_ios.framework */; };
 		3008CB7224F93EB900E6A617 /* AudioMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3008CB7124F93EB900E6A617 /* AudioMessageCell.swift */; };
 		3008CB7224F93EB900E6A617 /* AudioMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3008CB7124F93EB900E6A617 /* AudioMessageCell.swift */; };
 		3008CB7424F9436C00E6A617 /* AudioPlayerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3008CB7324F9436C00E6A617 /* AudioPlayerView.swift */; };
 		3008CB7424F9436C00E6A617 /* AudioPlayerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3008CB7324F9436C00E6A617 /* AudioPlayerView.swift */; };
 		3008CB7624F95B6D00E6A617 /* AudioController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3008CB7524F95B6D00E6A617 /* AudioController.swift */; };
 		3008CB7624F95B6D00E6A617 /* AudioController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3008CB7524F95B6D00E6A617 /* AudioController.swift */; };
@@ -146,12 +145,13 @@
 		78ED838321D5379000243125 /* TextFieldCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78ED838221D5379000243125 /* TextFieldCell.swift */; };
 		78ED838321D5379000243125 /* TextFieldCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78ED838221D5379000243125 /* TextFieldCell.swift */; };
 		78ED839421D5AF8A00243125 /* QrCodeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78ED839321D5AF8A00243125 /* QrCodeView.swift */; };
 		78ED839421D5AF8A00243125 /* QrCodeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78ED839321D5AF8A00243125 /* QrCodeView.swift */; };
 		7A0052C81FBE6CB40048C3BF /* NewContactController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A0052C71FBE6CB40048C3BF /* NewContactController.swift */; };
 		7A0052C81FBE6CB40048C3BF /* NewContactController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A0052C71FBE6CB40048C3BF /* NewContactController.swift */; };
-		7A0A04B522ACBAF93B0A27E7 /* Pods_deltachat_iosTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 53B2210FF5A043EA0A115368 /* Pods_deltachat_iosTests.framework */; };
 		7A451DB01FB1F84900177250 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A451DAF1FB1F84900177250 /* AppCoordinator.swift */; };
 		7A451DB01FB1F84900177250 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A451DAF1FB1F84900177250 /* AppCoordinator.swift */; };
 		7A9FB1441FB061E2001FEA36 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A9FB1431FB061E2001FEA36 /* AppDelegate.swift */; };
 		7A9FB1441FB061E2001FEA36 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A9FB1431FB061E2001FEA36 /* AppDelegate.swift */; };
 		7A9FB14B1FB061E2001FEA36 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 7A9FB14A1FB061E2001FEA36 /* Assets.xcassets */; };
 		7A9FB14B1FB061E2001FEA36 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 7A9FB14A1FB061E2001FEA36 /* Assets.xcassets */; };
 		7A9FB14E1FB061E2001FEA36 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 7A9FB14C1FB061E2001FEA36 /* LaunchScreen.storyboard */; };
 		7A9FB14E1FB061E2001FEA36 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 7A9FB14C1FB061E2001FEA36 /* LaunchScreen.storyboard */; };
 		7AE0A5491FC42F65005ECB4B /* NewChatViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7AE0A5481FC42F65005ECB4B /* NewChatViewController.swift */; };
 		7AE0A5491FC42F65005ECB4B /* NewChatViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7AE0A5481FC42F65005ECB4B /* NewChatViewController.swift */; };
+		8322D73686330E887566D754 /* Pods_DcShare.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A6A81736FBF0A4844C6D619F /* Pods_DcShare.framework */; };
+		A8EBD816A8021D0BC6B09048 /* Pods_deltachat_iosTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E23C80FA36453692862D4A90 /* Pods_deltachat_iosTests.framework */; };
 		AE0AA952247800E700D42A7F /* GalleryCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE0AA951247800E700D42A7F /* GalleryCell.swift */; };
 		AE0AA952247800E700D42A7F /* GalleryCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE0AA951247800E700D42A7F /* GalleryCell.swift */; };
 		AE0AA9562478191900D42A7F /* GridCollectionViewFlowLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE0AA9552478191900D42A7F /* GridCollectionViewFlowLayout.swift */; };
 		AE0AA9562478191900D42A7F /* GridCollectionViewFlowLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE0AA9552478191900D42A7F /* GridCollectionViewFlowLayout.swift */; };
 		AE0AA958247834A400D42A7F /* Date+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE0AA957247834A400D42A7F /* Date+Extension.swift */; };
 		AE0AA958247834A400D42A7F /* Date+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE0AA957247834A400D42A7F /* Date+Extension.swift */; };
@@ -253,9 +253,11 @@
 /* End PBXCopyFilesBuildPhase section */
 /* End PBXCopyFilesBuildPhase section */
 
 
 /* Begin PBXFileReference section */
 /* Begin PBXFileReference section */
+		0BC6FD76CA0F3A90C00DDC3A /* Pods-deltachat-iosTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-deltachat-iosTests.release.xcconfig"; path = "Target Support Files/Pods-deltachat-iosTests/Pods-deltachat-iosTests.release.xcconfig"; sourceTree = "<group>"; };
+		12D100E31F2B9011A3F77CA1 /* Pods-deltachat-ios.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-deltachat-ios.release.xcconfig"; path = "Target Support Files/Pods-deltachat-ios/Pods-deltachat-ios.release.xcconfig"; sourceTree = "<group>"; };
+		12E18F2336264C265BB756C2 /* Pods_deltachat_ios.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_deltachat_ios.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		21D544FF299415B9008B54D5 /* Character+Extentions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Character+Extentions.swift"; sourceTree = "<group>"; };
 		21D544FF299415B9008B54D5 /* Character+Extentions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Character+Extentions.swift"; sourceTree = "<group>"; };
 		21D6C9392606190600D0755A /* NotificationManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationManager.swift; sourceTree = "<group>"; };
 		21D6C9392606190600D0755A /* NotificationManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationManager.swift; sourceTree = "<group>"; };
-		2B36A26574DBF55EEACD7877 /* Pods-deltachat-ios.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-deltachat-ios.release.xcconfig"; path = "Target Support Files/Pods-deltachat-ios/Pods-deltachat-ios.release.xcconfig"; sourceTree = "<group>"; };
 		3008CB7124F93EB900E6A617 /* AudioMessageCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AudioMessageCell.swift; sourceTree = "<group>"; };
 		3008CB7124F93EB900E6A617 /* AudioMessageCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AudioMessageCell.swift; sourceTree = "<group>"; };
 		3008CB7324F9436C00E6A617 /* AudioPlayerView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AudioPlayerView.swift; sourceTree = "<group>"; };
 		3008CB7324F9436C00E6A617 /* AudioPlayerView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AudioPlayerView.swift; sourceTree = "<group>"; };
 		3008CB7524F95B6D00E6A617 /* AudioController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AudioController.swift; sourceTree = "<group>"; };
 		3008CB7524F95B6D00E6A617 /* AudioController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AudioController.swift; sourceTree = "<group>"; };
@@ -417,11 +419,6 @@
 		30FDB6F824D1C1000066C48D /* ChatViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatViewController.swift; sourceTree = "<group>"; };
 		30FDB6F824D1C1000066C48D /* ChatViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatViewController.swift; sourceTree = "<group>"; };
 		30FDB71E24D8170E0066C48D /* TextMessageCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TextMessageCell.swift; sourceTree = "<group>"; };
 		30FDB71E24D8170E0066C48D /* TextMessageCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TextMessageCell.swift; sourceTree = "<group>"; };
 		30FDB72024D838240066C48D /* BaseMessageCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BaseMessageCell.swift; sourceTree = "<group>"; };
 		30FDB72024D838240066C48D /* BaseMessageCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BaseMessageCell.swift; sourceTree = "<group>"; };
-		367D402BEFCE9A6E4FDC5256 /* Pods-DcShare.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DcShare.debug.xcconfig"; path = "Target Support Files/Pods-DcShare/Pods-DcShare.debug.xcconfig"; sourceTree = "<group>"; };
-		3733C8B80B9236DBF6253372 /* Pods-deltachat-ios.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-deltachat-ios.debug.xcconfig"; path = "Target Support Files/Pods-deltachat-ios/Pods-deltachat-ios.debug.xcconfig"; sourceTree = "<group>"; };
-		456267D3A3AE57C533877C2B /* Pods_DcShare.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_DcShare.framework; sourceTree = BUILT_PRODUCTS_DIR; };
-		45FFE772E2F94FBE4E64F362 /* Pods-deltachat-iosTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-deltachat-iosTests.debug.xcconfig"; path = "Target Support Files/Pods-deltachat-iosTests/Pods-deltachat-iosTests.debug.xcconfig"; sourceTree = "<group>"; };
-		53B2210FF5A043EA0A115368 /* Pods_deltachat_iosTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_deltachat_iosTests.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		7070FB9A2101ECBB000DC258 /* NewGroupController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NewGroupController.swift; sourceTree = "<group>"; };
 		7070FB9A2101ECBB000DC258 /* NewGroupController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NewGroupController.swift; sourceTree = "<group>"; };
 		7092474020B3869500AF8799 /* ContactDetailViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactDetailViewController.swift; sourceTree = "<group>"; };
 		7092474020B3869500AF8799 /* ContactDetailViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactDetailViewController.swift; sourceTree = "<group>"; };
 		70B8882D2091B8550074812E /* ContactCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactCell.swift; sourceTree = "<group>"; };
 		70B8882D2091B8550074812E /* ContactCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactCell.swift; sourceTree = "<group>"; };
@@ -442,7 +439,8 @@
 		7A9FB14D1FB061E2001FEA36 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
 		7A9FB14D1FB061E2001FEA36 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
 		7A9FB14F1FB061E2001FEA36 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
 		7A9FB14F1FB061E2001FEA36 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
 		7AE0A5481FC42F65005ECB4B /* NewChatViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NewChatViewController.swift; sourceTree = "<group>"; };
 		7AE0A5481FC42F65005ECB4B /* NewChatViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NewChatViewController.swift; sourceTree = "<group>"; };
-		88C8BBF4611AA3963E496219 /* Pods_deltachat_ios.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_deltachat_ios.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		8C59EE96DDE92F0E6C645056 /* Pods-deltachat-iosTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-deltachat-iosTests.debug.xcconfig"; path = "Target Support Files/Pods-deltachat-iosTests/Pods-deltachat-iosTests.debug.xcconfig"; sourceTree = "<group>"; };
+		A6A81736FBF0A4844C6D619F /* Pods_DcShare.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_DcShare.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		AE0AA951247800E700D42A7F /* GalleryCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GalleryCell.swift; sourceTree = "<group>"; };
 		AE0AA951247800E700D42A7F /* GalleryCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GalleryCell.swift; sourceTree = "<group>"; };
 		AE0AA9552478191900D42A7F /* GridCollectionViewFlowLayout.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GridCollectionViewFlowLayout.swift; sourceTree = "<group>"; };
 		AE0AA9552478191900D42A7F /* GridCollectionViewFlowLayout.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GridCollectionViewFlowLayout.swift; sourceTree = "<group>"; };
 		AE0AA957247834A400D42A7F /* Date+Extension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Date+Extension.swift"; sourceTree = "<group>"; };
 		AE0AA957247834A400D42A7F /* Date+Extension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Date+Extension.swift"; sourceTree = "<group>"; };
@@ -576,8 +574,10 @@
 		B2D729EA27C57B9000A4E0BE /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/Localizable.strings"; sourceTree = "<group>"; };
 		B2D729EA27C57B9000A4E0BE /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/Localizable.strings"; sourceTree = "<group>"; };
 		B2D729EB27C57B9000A4E0BE /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = "zh-Hans"; path = "zh-Hans.lproj/Localizable.stringsdict"; sourceTree = "<group>"; };
 		B2D729EB27C57B9000A4E0BE /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = "zh-Hans"; path = "zh-Hans.lproj/Localizable.stringsdict"; sourceTree = "<group>"; };
 		B2F899E029F96A67003797D5 /* AllMediaViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AllMediaViewController.swift; sourceTree = "<group>"; };
 		B2F899E029F96A67003797D5 /* AllMediaViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AllMediaViewController.swift; sourceTree = "<group>"; };
-		B3ABD4C361673EE2C4E0DD66 /* Pods-deltachat-iosTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-deltachat-iosTests.release.xcconfig"; path = "Target Support Files/Pods-deltachat-iosTests/Pods-deltachat-iosTests.release.xcconfig"; sourceTree = "<group>"; };
-		BD321F20BEE5052C1223348D /* Pods-DcShare.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DcShare.release.xcconfig"; path = "Target Support Files/Pods-DcShare/Pods-DcShare.release.xcconfig"; sourceTree = "<group>"; };
+		B9CDCE77DAE9389E205F094C /* Pods-DcShare.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DcShare.release.xcconfig"; path = "Target Support Files/Pods-DcShare/Pods-DcShare.release.xcconfig"; sourceTree = "<group>"; };
+		D30610767F4AF8040B739987 /* Pods-deltachat-ios.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-deltachat-ios.debug.xcconfig"; path = "Target Support Files/Pods-deltachat-ios/Pods-deltachat-ios.debug.xcconfig"; sourceTree = "<group>"; };
+		DFBB6227B203C9B6FB5F4321 /* Pods-DcShare.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DcShare.debug.xcconfig"; path = "Target Support Files/Pods-DcShare/Pods-DcShare.debug.xcconfig"; sourceTree = "<group>"; };
+		E23C80FA36453692862D4A90 /* Pods_deltachat_iosTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_deltachat_iosTests.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 /* End PBXFileReference section */
 /* End PBXFileReference section */
 
 
 /* Begin PBXFrameworksBuildPhase section */
 /* Begin PBXFrameworksBuildPhase section */
@@ -586,7 +586,7 @@
 			buildActionMask = 2147483647;
 			buildActionMask = 2147483647;
 			files = (
 			files = (
 				30E8F2252447622300CE2C90 /* DcCore.framework in Frameworks */,
 				30E8F2252447622300CE2C90 /* DcCore.framework in Frameworks */,
-				0B0A5C05F49E30F57B6F73C5 /* Pods_DcShare.framework in Frameworks */,
+				8322D73686330E887566D754 /* Pods_DcShare.framework in Frameworks */,
 			);
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 			runOnlyForDeploymentPostprocessing = 0;
 		};
 		};
@@ -594,7 +594,7 @@
 			isa = PBXFrameworksBuildPhase;
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			buildActionMask = 2147483647;
 			files = (
 			files = (
-				29AAA03053C393EAEF537AFE /* Pods_deltachat_ios.framework in Frameworks */,
+				2C0B3392019C51BC9DDBB960 /* Pods_deltachat_ios.framework in Frameworks */,
 			);
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 			runOnlyForDeploymentPostprocessing = 0;
 		};
 		};
@@ -602,7 +602,7 @@
 			isa = PBXFrameworksBuildPhase;
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			buildActionMask = 2147483647;
 			files = (
 			files = (
-				7A0A04B522ACBAF93B0A27E7 /* Pods_deltachat_iosTests.framework in Frameworks */,
+				A8EBD816A8021D0BC6B09048 /* Pods_deltachat_iosTests.framework in Frameworks */,
 			);
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 			runOnlyForDeploymentPostprocessing = 0;
 		};
 		};
@@ -869,9 +869,9 @@
 			children = (
 			children = (
 				304219D1243F588500516852 /* DcCore.framework */,
 				304219D1243F588500516852 /* DcCore.framework */,
 				787D6699229F2237000A7A9D /* libdeltachat.a */,
 				787D6699229F2237000A7A9D /* libdeltachat.a */,
-				456267D3A3AE57C533877C2B /* Pods_DcShare.framework */,
-				88C8BBF4611AA3963E496219 /* Pods_deltachat_ios.framework */,
-				53B2210FF5A043EA0A115368 /* Pods_deltachat_iosTests.framework */,
+				A6A81736FBF0A4844C6D619F /* Pods_DcShare.framework */,
+				12E18F2336264C265BB756C2 /* Pods_deltachat_ios.framework */,
+				E23C80FA36453692862D4A90 /* Pods_deltachat_iosTests.framework */,
 			);
 			);
 			name = Frameworks;
 			name = Frameworks;
 			sourceTree = "<group>";
 			sourceTree = "<group>";
@@ -1049,12 +1049,12 @@
 		AFE4D4B4B038293E63BC1537 /* Pods */ = {
 		AFE4D4B4B038293E63BC1537 /* Pods */ = {
 			isa = PBXGroup;
 			isa = PBXGroup;
 			children = (
 			children = (
-				367D402BEFCE9A6E4FDC5256 /* Pods-DcShare.debug.xcconfig */,
-				BD321F20BEE5052C1223348D /* Pods-DcShare.release.xcconfig */,
-				3733C8B80B9236DBF6253372 /* Pods-deltachat-ios.debug.xcconfig */,
-				2B36A26574DBF55EEACD7877 /* Pods-deltachat-ios.release.xcconfig */,
-				45FFE772E2F94FBE4E64F362 /* Pods-deltachat-iosTests.debug.xcconfig */,
-				B3ABD4C361673EE2C4E0DD66 /* Pods-deltachat-iosTests.release.xcconfig */,
+				DFBB6227B203C9B6FB5F4321 /* Pods-DcShare.debug.xcconfig */,
+				B9CDCE77DAE9389E205F094C /* Pods-DcShare.release.xcconfig */,
+				D30610767F4AF8040B739987 /* Pods-deltachat-ios.debug.xcconfig */,
+				12D100E31F2B9011A3F77CA1 /* Pods-deltachat-ios.release.xcconfig */,
+				8C59EE96DDE92F0E6C645056 /* Pods-deltachat-iosTests.debug.xcconfig */,
+				0BC6FD76CA0F3A90C00DDC3A /* Pods-deltachat-iosTests.release.xcconfig */,
 			);
 			);
 			path = Pods;
 			path = Pods;
 			sourceTree = "<group>";
 			sourceTree = "<group>";
@@ -1085,7 +1085,7 @@
 			isa = PBXNativeTarget;
 			isa = PBXNativeTarget;
 			buildConfigurationList = 30E8F21E2447285600CE2C90 /* Build configuration list for PBXNativeTarget "DcShare" */;
 			buildConfigurationList = 30E8F21E2447285600CE2C90 /* Build configuration list for PBXNativeTarget "DcShare" */;
 			buildPhases = (
 			buildPhases = (
-				C78C65B4F0617F16E9DD21E8 /* [CP] Check Pods Manifest.lock */,
+				240C6A284FA7D70D04750199 /* [CP] Check Pods Manifest.lock */,
 				30E8F20C2447285600CE2C90 /* Sources */,
 				30E8F20C2447285600CE2C90 /* Sources */,
 				30E8F20D2447285600CE2C90 /* Frameworks */,
 				30E8F20D2447285600CE2C90 /* Frameworks */,
 				30E8F20E2447285600CE2C90 /* Resources */,
 				30E8F20E2447285600CE2C90 /* Resources */,
@@ -1103,7 +1103,7 @@
 			isa = PBXNativeTarget;
 			isa = PBXNativeTarget;
 			buildConfigurationList = 7A9FB1521FB061E2001FEA36 /* Build configuration list for PBXNativeTarget "deltachat-ios" */;
 			buildConfigurationList = 7A9FB1521FB061E2001FEA36 /* Build configuration list for PBXNativeTarget "deltachat-ios" */;
 			buildPhases = (
 			buildPhases = (
-				E7D09C716DD65CF630609D86 /* [CP] Check Pods Manifest.lock */,
+				03F52CE3272C44C39CE6F82F /* [CP] Check Pods Manifest.lock */,
 				7A9FB13C1FB061E2001FEA36 /* Sources */,
 				7A9FB13C1FB061E2001FEA36 /* Sources */,
 				7A9FB13D1FB061E2001FEA36 /* Frameworks */,
 				7A9FB13D1FB061E2001FEA36 /* Frameworks */,
 				7A9FB13E1FB061E2001FEA36 /* Resources */,
 				7A9FB13E1FB061E2001FEA36 /* Resources */,
@@ -1111,7 +1111,7 @@
 				7837B64621E5532B00CDE126 /* ShellScript */,
 				7837B64621E5532B00CDE126 /* ShellScript */,
 				304219D4243F588600516852 /* Embed Frameworks */,
 				304219D4243F588600516852 /* Embed Frameworks */,
 				30E8F21B2447285600CE2C90 /* Embed Foundation Extensions */,
 				30E8F21B2447285600CE2C90 /* Embed Foundation Extensions */,
-				D9A39B5FE63A010E11829D38 /* [CP] Embed Pods Frameworks */,
+				1FAC70D8D279D2B98C5EA04C /* [CP] Embed Pods Frameworks */,
 			);
 			);
 			buildRules = (
 			buildRules = (
 			);
 			);
@@ -1127,7 +1127,7 @@
 			isa = PBXNativeTarget;
 			isa = PBXNativeTarget;
 			buildConfigurationList = AE851A08227AECDF00ED86F0 /* Build configuration list for PBXNativeTarget "deltachat-iosTests" */;
 			buildConfigurationList = AE851A08227AECDF00ED86F0 /* Build configuration list for PBXNativeTarget "deltachat-iosTests" */;
 			buildPhases = (
 			buildPhases = (
-				E915E3F713CED45AB76300DA /* [CP] Check Pods Manifest.lock */,
+				6A7828131EB8195AFA35CE36 /* [CP] Check Pods Manifest.lock */,
 				AE8519FD227AECDE00ED86F0 /* Sources */,
 				AE8519FD227AECDE00ED86F0 /* Sources */,
 				AE8519FE227AECDE00ED86F0 /* Frameworks */,
 				AE8519FE227AECDE00ED86F0 /* Frameworks */,
 				AE8519FF227AECDE00ED86F0 /* Resources */,
 				AE8519FF227AECDE00ED86F0 /* Resources */,
@@ -1284,42 +1284,7 @@
 /* End PBXResourcesBuildPhase section */
 /* End PBXResourcesBuildPhase section */
 
 
 /* Begin PBXShellScriptBuildPhase section */
 /* Begin PBXShellScriptBuildPhase section */
-		7837B63821E54CB400CDE126 /* Run Script */ = {
-			isa = PBXShellScriptBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-			);
-			inputFileListPaths = (
-			);
-			inputPaths = (
-			);
-			name = "Run Script";
-			outputFileListPaths = (
-			);
-			outputPaths = (
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-			shellPath = /bin/sh;
-			shellScript = "\"${PODS_ROOT}/SwiftLint/swiftlint\"\n";
-		};
-		7837B64621E5532B00CDE126 /* ShellScript */ = {
-			isa = PBXShellScriptBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-			);
-			inputFileListPaths = (
-			);
-			inputPaths = (
-			);
-			outputFileListPaths = (
-			);
-			outputPaths = (
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-			shellPath = /bin/sh;
-			shellScript = "\"${PODS_ROOT}/SwiftFormat/CommandLineTool/swiftformat\"\n";
-		};
-		C78C65B4F0617F16E9DD21E8 /* [CP] Check Pods Manifest.lock */ = {
+		03F52CE3272C44C39CE6F82F /* [CP] Check Pods Manifest.lock */ = {
 			isa = PBXShellScriptBuildPhase;
 			isa = PBXShellScriptBuildPhase;
 			buildActionMask = 2147483647;
 			buildActionMask = 2147483647;
 			files = (
 			files = (
@@ -1334,14 +1299,14 @@
 			outputFileListPaths = (
 			outputFileListPaths = (
 			);
 			);
 			outputPaths = (
 			outputPaths = (
-				"$(DERIVED_FILE_DIR)/Pods-DcShare-checkManifestLockResult.txt",
+				"$(DERIVED_FILE_DIR)/Pods-deltachat-ios-checkManifestLockResult.txt",
 			);
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 			runOnlyForDeploymentPostprocessing = 0;
 			shellPath = /bin/sh;
 			shellPath = /bin/sh;
 			shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n    # print error to STDERR\n    echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n    exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
 			shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n    # print error to STDERR\n    echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n    exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
 			showEnvVarsInLog = 0;
 			showEnvVarsInLog = 0;
 		};
 		};
-		D9A39B5FE63A010E11829D38 /* [CP] Embed Pods Frameworks */ = {
+		1FAC70D8D279D2B98C5EA04C /* [CP] Embed Pods Frameworks */ = {
 			isa = PBXShellScriptBuildPhase;
 			isa = PBXShellScriptBuildPhase;
 			buildActionMask = 2147483647;
 			buildActionMask = 2147483647;
 			files = (
 			files = (
@@ -1356,6 +1321,7 @@
 				"${BUILT_PRODUCTS_DIR}/SDWebImageWebPCoder/SDWebImageWebPCoder.framework",
 				"${BUILT_PRODUCTS_DIR}/SDWebImageWebPCoder/SDWebImageWebPCoder.framework",
 				"${BUILT_PRODUCTS_DIR}/SVGKit/SVGKit.framework",
 				"${BUILT_PRODUCTS_DIR}/SVGKit/SVGKit.framework",
 				"${BUILT_PRODUCTS_DIR}/Swifter/Swifter.framework",
 				"${BUILT_PRODUCTS_DIR}/Swifter/Swifter.framework",
+				"${BUILT_PRODUCTS_DIR}/libwebp/libwebp.framework",
 			);
 			);
 			name = "[CP] Embed Pods Frameworks";
 			name = "[CP] Embed Pods Frameworks";
 			outputPaths = (
 			outputPaths = (
@@ -1367,13 +1333,14 @@
 				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SDWebImageWebPCoder.framework",
 				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SDWebImageWebPCoder.framework",
 				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SVGKit.framework",
 				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SVGKit.framework",
 				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Swifter.framework",
 				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Swifter.framework",
+				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/libwebp.framework",
 			);
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 			runOnlyForDeploymentPostprocessing = 0;
 			shellPath = /bin/sh;
 			shellPath = /bin/sh;
 			shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-deltachat-ios/Pods-deltachat-ios-frameworks.sh\"\n";
 			shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-deltachat-ios/Pods-deltachat-ios-frameworks.sh\"\n";
 			showEnvVarsInLog = 0;
 			showEnvVarsInLog = 0;
 		};
 		};
-		E7D09C716DD65CF630609D86 /* [CP] Check Pods Manifest.lock */ = {
+		240C6A284FA7D70D04750199 /* [CP] Check Pods Manifest.lock */ = {
 			isa = PBXShellScriptBuildPhase;
 			isa = PBXShellScriptBuildPhase;
 			buildActionMask = 2147483647;
 			buildActionMask = 2147483647;
 			files = (
 			files = (
@@ -1388,14 +1355,14 @@
 			outputFileListPaths = (
 			outputFileListPaths = (
 			);
 			);
 			outputPaths = (
 			outputPaths = (
-				"$(DERIVED_FILE_DIR)/Pods-deltachat-ios-checkManifestLockResult.txt",
+				"$(DERIVED_FILE_DIR)/Pods-DcShare-checkManifestLockResult.txt",
 			);
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 			runOnlyForDeploymentPostprocessing = 0;
 			shellPath = /bin/sh;
 			shellPath = /bin/sh;
 			shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n    # print error to STDERR\n    echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n    exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
 			shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n    # print error to STDERR\n    echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n    exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
 			showEnvVarsInLog = 0;
 			showEnvVarsInLog = 0;
 		};
 		};
-		E915E3F713CED45AB76300DA /* [CP] Check Pods Manifest.lock */ = {
+		6A7828131EB8195AFA35CE36 /* [CP] Check Pods Manifest.lock */ = {
 			isa = PBXShellScriptBuildPhase;
 			isa = PBXShellScriptBuildPhase;
 			buildActionMask = 2147483647;
 			buildActionMask = 2147483647;
 			files = (
 			files = (
@@ -1417,6 +1384,41 @@
 			shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n    # print error to STDERR\n    echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n    exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
 			shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n    # print error to STDERR\n    echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n    exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
 			showEnvVarsInLog = 0;
 			showEnvVarsInLog = 0;
 		};
 		};
+		7837B63821E54CB400CDE126 /* Run Script */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			inputFileListPaths = (
+			);
+			inputPaths = (
+			);
+			name = "Run Script";
+			outputFileListPaths = (
+			);
+			outputPaths = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/sh;
+			shellScript = "\"${PODS_ROOT}/SwiftLint/swiftlint\"\n";
+		};
+		7837B64621E5532B00CDE126 /* ShellScript */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			inputFileListPaths = (
+			);
+			inputPaths = (
+			);
+			outputFileListPaths = (
+			);
+			outputPaths = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/sh;
+			shellScript = "\"${PODS_ROOT}/SwiftFormat/CommandLineTool/swiftformat\"\n";
+		};
 /* End PBXShellScriptBuildPhase section */
 /* End PBXShellScriptBuildPhase section */
 
 
 /* Begin PBXSourcesBuildPhase section */
 /* Begin PBXSourcesBuildPhase section */
@@ -1817,7 +1819,7 @@
 /* Begin XCBuildConfiguration section */
 /* Begin XCBuildConfiguration section */
 		30E8F21C2447285600CE2C90 /* Debug */ = {
 		30E8F21C2447285600CE2C90 /* Debug */ = {
 			isa = XCBuildConfiguration;
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = 367D402BEFCE9A6E4FDC5256 /* Pods-DcShare.debug.xcconfig */;
+			baseConfigurationReference = DFBB6227B203C9B6FB5F4321 /* Pods-DcShare.debug.xcconfig */;
 			buildSettings = {
 			buildSettings = {
 				CLANG_ENABLE_OBJC_WEAK = YES;
 				CLANG_ENABLE_OBJC_WEAK = YES;
 				CODE_SIGN_ENTITLEMENTS = DcShare/DcShare.entitlements;
 				CODE_SIGN_ENTITLEMENTS = DcShare/DcShare.entitlements;
@@ -1863,7 +1865,7 @@
 		};
 		};
 		30E8F21D2447285600CE2C90 /* Release */ = {
 		30E8F21D2447285600CE2C90 /* Release */ = {
 			isa = XCBuildConfiguration;
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = BD321F20BEE5052C1223348D /* Pods-DcShare.release.xcconfig */;
+			baseConfigurationReference = B9CDCE77DAE9389E205F094C /* Pods-DcShare.release.xcconfig */;
 			buildSettings = {
 			buildSettings = {
 				CLANG_ENABLE_OBJC_WEAK = YES;
 				CLANG_ENABLE_OBJC_WEAK = YES;
 				CODE_SIGN_ENTITLEMENTS = DcShare/DcShare.entitlements;
 				CODE_SIGN_ENTITLEMENTS = DcShare/DcShare.entitlements;
@@ -2026,7 +2028,7 @@
 		};
 		};
 		7A9FB1531FB061E2001FEA36 /* Debug */ = {
 		7A9FB1531FB061E2001FEA36 /* Debug */ = {
 			isa = XCBuildConfiguration;
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = 3733C8B80B9236DBF6253372 /* Pods-deltachat-ios.debug.xcconfig */;
+			baseConfigurationReference = D30610767F4AF8040B739987 /* Pods-deltachat-ios.debug.xcconfig */;
 			buildSettings = {
 			buildSettings = {
 				ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
 				ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
 				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
 				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
@@ -2099,7 +2101,7 @@
 		};
 		};
 		7A9FB1541FB061E2001FEA36 /* Release */ = {
 		7A9FB1541FB061E2001FEA36 /* Release */ = {
 			isa = XCBuildConfiguration;
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = 2B36A26574DBF55EEACD7877 /* Pods-deltachat-ios.release.xcconfig */;
+			baseConfigurationReference = 12D100E31F2B9011A3F77CA1 /* Pods-deltachat-ios.release.xcconfig */;
 			buildSettings = {
 			buildSettings = {
 				ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
 				ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
 				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
 				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
@@ -2171,7 +2173,7 @@
 		};
 		};
 		AE851A09227AECDF00ED86F0 /* Debug */ = {
 		AE851A09227AECDF00ED86F0 /* Debug */ = {
 			isa = XCBuildConfiguration;
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = 45FFE772E2F94FBE4E64F362 /* Pods-deltachat-iosTests.debug.xcconfig */;
+			baseConfigurationReference = 8C59EE96DDE92F0E6C645056 /* Pods-deltachat-iosTests.debug.xcconfig */;
 			buildSettings = {
 			buildSettings = {
 				BUNDLE_LOADER = "$(TEST_HOST)";
 				BUNDLE_LOADER = "$(TEST_HOST)";
 				CLANG_ENABLE_OBJC_WEAK = YES;
 				CLANG_ENABLE_OBJC_WEAK = YES;
@@ -2256,7 +2258,7 @@
 		};
 		};
 		AE851A0A227AECDF00ED86F0 /* Release */ = {
 		AE851A0A227AECDF00ED86F0 /* Release */ = {
 			isa = XCBuildConfiguration;
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = B3ABD4C361673EE2C4E0DD66 /* Pods-deltachat-iosTests.release.xcconfig */;
+			baseConfigurationReference = 0BC6FD76CA0F3A90C00DDC3A /* Pods-deltachat-iosTests.release.xcconfig */;
 			buildSettings = {
 			buildSettings = {
 				BUNDLE_LOADER = "$(TEST_HOST)";
 				BUNDLE_LOADER = "$(TEST_HOST)";
 				CLANG_ENABLE_OBJC_WEAK = YES;
 				CLANG_ENABLE_OBJC_WEAK = YES;

Some files were not shown because too many files changed in this diff