diff --git a/Backtrace.podspec b/Backtrace.podspec index 355ddc33..ec0727c4 100644 --- a/Backtrace.podspec +++ b/Backtrace.podspec @@ -24,9 +24,7 @@ Pod::Spec.new do |s| s.ios.source_files = ["Sources/**/*.{swift}", "Backtrace-iOS/**/*.{h*,swift}"] s.osx.source_files = ["Sources/**/*.{swift}", "Backtrace-macOS/**/*.{h*,swift}"] s.tvos.source_files = ["Sources/**/*.{swift}", "Backtrace-tvOS/**/*.{h*,swift}"] - - s.tvos.exclude_files = ["Sources/Features/Breadcrumb/**/*.{swift}"] - + s.ios.public_header_files = ["Backtrace-iOS/**/*.h*"] s.osx.public_header_files = ["Backtrace-macOS/**/*.h*"] s.tvos.public_header_files = ["Backtrace-tvOS/**/*.h*"] diff --git a/Backtrace.xcodeproj/project.pbxproj b/Backtrace.xcodeproj/project.pbxproj index 763cce1b..0621970d 100644 --- a/Backtrace.xcodeproj/project.pbxproj +++ b/Backtrace.xcodeproj/project.pbxproj @@ -7,11 +7,17 @@ objects = { /* Begin PBXBuildFile section */ + 0302B21CB33EA01F44B34743 /* Pods_Example_macOS_ObjC.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C6C55F755FA270859980099B /* Pods_Example_macOS_ObjC.framework */; }; 0B6B4CFD25CD8331002DA15C /* BacktraceOomWatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B6B4CFC25CD8331002DA15C /* BacktraceOomWatcher.swift */; }; 0B6B4CFE25CD8331002DA15C /* BacktraceOomWatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B6B4CFC25CD8331002DA15C /* BacktraceOomWatcher.swift */; }; 0B6B4CFF25CD8331002DA15C /* BacktraceOomWatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B6B4CFC25CD8331002DA15C /* BacktraceOomWatcher.swift */; }; - 23AAE436BA431C814B0936F5 /* Pods_Backtrace_tvOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7A6BADA9A258E6A8C84A12EA /* Pods_Backtrace_tvOS.framework */; }; + 23DFCEDBB4DB8B913FB3B969 /* Pods_Example_tvOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E9324F45B2A0A9335B2F4A0D /* Pods_Example_tvOS.framework */; }; 282C85E7223FD8E70014FE75 /* BacktraceCrashExceptionApplication.swift in Sources */ = {isa = PBXBuildFile; fileRef = 282C85E6223FD8E70014FE75 /* BacktraceCrashExceptionApplication.swift */; }; + 2840D74028BD34D2007663DB /* BacktraceBreadcrumbFileHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28A652E9285C6C1400306631 /* BacktraceBreadcrumbFileHelper.swift */; }; + 2840D74128BD34D9007663DB /* BacktraceBreadcrumbSettings.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B8C28B5961A004F5052 /* BacktraceBreadcrumbSettings.swift */; }; + 2840D74228BD34DE007663DB /* BacktraceBreadcrumbs.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B8828B5960E004F5052 /* BacktraceBreadcrumbs.swift */; }; + 2840D74328BD34E2007663DB /* BacktraceNotificationObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B8428B59604004F5052 /* BacktraceNotificationObserver.swift */; }; + 2840D74428BD34E6007663DB /* BacktraceBreadcrumbsLogManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28A652EB285C6C1500306631 /* BacktraceBreadcrumbsLogManager.swift */; }; 2846E1F8222F1DE60035F98C /* NetworkReachability.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2846E1F7222F1DE50035F98C /* NetworkReachability.swift */; }; 2846E1F9222F1DE60035F98C /* NetworkReachability.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2846E1F7222F1DE50035F98C /* NetworkReachability.swift */; }; 2846E1FE223070CB0035F98C /* Attachment.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2846E1FD223070CB0035F98C /* Attachment.swift */; }; @@ -31,6 +37,22 @@ 28AC773D21FA5A8900FED661 /* BacktraceDatabaseSettings.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28AC773B21FA5A8400FED661 /* BacktraceDatabaseSettings.swift */; }; 28AC773F220A2A2900FED661 /* MultipartRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28AC773E220A2A2900FED661 /* MultipartRequest.swift */; }; 28AC7740220A2A3300FED661 /* MultipartRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28AC773E220A2A2900FED661 /* MultipartRequest.swift */; }; + 28CC911128C91E0000759230 /* BacktraceBreadcrumbTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5628B595D8004F5052 /* BacktraceBreadcrumbTests.swift */; }; + 28CC911828C91EB300759230 /* BacktraceCredentialsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5028B595D8004F5052 /* BacktraceCredentialsTests.swift */; }; + 28CC911928C91F3B00759230 /* BacktraceRateLimiterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4E28B595D8004F5052 /* BacktraceRateLimiterTests.swift */; }; + 28CC911B28C91F3B00759230 /* BacktraceMetricsTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4828B595D8004F5052 /* BacktraceMetricsTest.swift */; }; + 28CC911C28C91FAB00759230 /* DispatcherTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5228B595D8004F5052 /* DispatcherTests.swift */; }; + 28CC911D28C91FAB00759230 /* CrashReporterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5528B595D8004F5052 /* CrashReporterTests.swift */; }; + 28CC912028C9207000759230 /* Quick+Throws.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2AB63692244243500939BC9 /* Quick+Throws.swift */; }; + 28CC912128C9207800759230 /* BacktraceWatcherTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4928B595D8004F5052 /* BacktraceWatcherTests.swift */; }; + 28CC912228C920A500759230 /* BacktraceReporterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4C28B595D8004F5052 /* BacktraceReporterTests.swift */; }; + 28CC912328C920AB00759230 /* BacktraceOomWatcherTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4D28B595D8004F5052 /* BacktraceOomWatcherTests.swift */; }; + 28CC912428C920B000759230 /* BacktraceFileManagerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4B28B595D8004F5052 /* BacktraceFileManagerTests.swift */; }; + 28CC912528C920B500759230 /* BacktraceDatabaseTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4A28B595D8004F5052 /* BacktraceDatabaseTests.swift */; }; + 28CC912A28C921AD00759230 /* AttributesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5328B595D8004F5052 /* AttributesTests.swift */; }; + 28CC912B28C921FA00759230 /* AttachmentTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4F28B595D8004F5052 /* AttachmentTests.swift */; }; + 28CC912C28C921FA00759230 /* AttachmentStorageTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5428B595D8004F5052 /* AttachmentStorageTests.swift */; }; + 28CC912D28C9220900759230 /* test.txt in Resources */ = {isa = PBXBuildFile; fileRef = F21DD3B02255EA2A00404CC3 /* test.txt */; }; 28F95BB922525DCC003936E0 /* Backtrace.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 28F95BB022525DCC003936E0 /* Backtrace.framework */; }; 28F95BBE22525DCC003936E0 /* Backtrace_tvOSTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28F95BBD22525DCC003936E0 /* Backtrace_tvOSTests.swift */; }; 28F95BC022525DCC003936E0 /* Backtrace.h in Headers */ = {isa = PBXBuildFile; fileRef = 28F95BB222525DCC003936E0 /* Backtrace.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -68,9 +90,9 @@ 28F95BEC225260C9003936E0 /* AttributesStorage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28966EF92214BBD200E6E891 /* AttributesStorage.swift */; }; 28F95BED225260D3003936E0 /* AttributesProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = F259E4E12229C29A00F282C7 /* AttributesProvider.swift */; }; 28F95BEE225260D5003936E0 /* NetworkReachability.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2846E1F7222F1DE50035F98C /* NetworkReachability.swift */; }; - 5B9A6316CCCC5F04057195D8 /* Pods_Backtrace_iOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1177F259EBD06B9042C924FF /* Pods_Backtrace_iOS.framework */; }; - 61B185949BD16ED95F797C6C /* Pods_Example_iOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2F84FCBE2C155A6EDCD13DA3 /* Pods_Example_iOS.framework */; }; - 66B308BBBEAB20E6B21865CD /* Pods_Example_macOS_ObjC.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 86FA6ECB67FC42BAC8C66B21 /* Pods_Example_macOS_ObjC.framework */; }; + 41AC9E7E847D1F9744BFDE63 /* Pods_Backtrace_tvOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 46EAADA38448426B8063F5E8 /* Pods_Backtrace_tvOS.framework */; }; + 65957B8ECA6169CE5DC5D021 /* Pods_Example_iOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0B0D5B031602BE47564B882F /* Pods_Example_iOS.framework */; }; + 66B1A09965E0CE0C83481375 /* Pods_Backtrace_macOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08CFB385C482A024AF0729B7 /* Pods_Backtrace_macOS.framework */; }; 6E45A3A7273095E500DB0BAC /* BacktraceMetricsSettings.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E45A3A6273095E500DB0BAC /* BacktraceMetricsSettings.swift */; }; 6E45A3A8273095E500DB0BAC /* BacktraceMetricsSettings.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E45A3A6273095E500DB0BAC /* BacktraceMetricsSettings.swift */; }; 6E45A3A9273095E500DB0BAC /* BacktraceMetricsSettings.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E45A3A6273095E500DB0BAC /* BacktraceMetricsSettings.swift */; }; @@ -104,52 +126,35 @@ 6EB713F8276294160075D1C1 /* MetricsRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6EB713F7276294160075D1C1 /* MetricsRequest.swift */; }; 6EB713F9276294160075D1C1 /* MetricsRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6EB713F7276294160075D1C1 /* MetricsRequest.swift */; }; 6EB713FA276294160075D1C1 /* MetricsRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6EB713F7276294160075D1C1 /* MetricsRequest.swift */; }; - 6F0BF6349057726F088D59C1 /* Pods_Example_tvOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5F259CADCE03CF31669043E4 /* Pods_Example_tvOS.framework */; }; - 7300A170089CF1E455840E47 /* Pods_Backtrace_macOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BECDC44D2F82A1F1FD5CD9D1 /* Pods_Backtrace_macOS.framework */; }; - 87498D6984B8D95C39FE1793 /* Pods_Backtrace_macOSTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D3ECFB169B902C0D4C33E583 /* Pods_Backtrace_macOSTests.framework */; }; - 95286394B151684D754C98AC /* Pods_Example_iOS_ObjC.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BFAF826CD2E1314532AD4FF6 /* Pods_Example_iOS_ObjC.framework */; }; + 8F7F15E3BA6A2259635C7B2F /* Pods_Example_iOS_ObjC.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D3042A332304D68DB0D02702 /* Pods_Example_iOS_ObjC.framework */; }; A24A4B5728B595D9004F5052 /* BacktraceMetricsTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4828B595D8004F5052 /* BacktraceMetricsTest.swift */; }; A24A4B5828B595D9004F5052 /* BacktraceMetricsTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4828B595D8004F5052 /* BacktraceMetricsTest.swift */; }; - A24A4B5928B595D9004F5052 /* BacktraceMetricsTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4828B595D8004F5052 /* BacktraceMetricsTest.swift */; }; A24A4B5A28B595D9004F5052 /* BacktraceWatcherTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4928B595D8004F5052 /* BacktraceWatcherTests.swift */; }; A24A4B5B28B595D9004F5052 /* BacktraceWatcherTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4928B595D8004F5052 /* BacktraceWatcherTests.swift */; }; - A24A4B5C28B595D9004F5052 /* BacktraceWatcherTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4928B595D8004F5052 /* BacktraceWatcherTests.swift */; }; A24A4B5D28B595D9004F5052 /* BacktraceDatabaseTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4A28B595D8004F5052 /* BacktraceDatabaseTests.swift */; }; A24A4B5E28B595D9004F5052 /* BacktraceDatabaseTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4A28B595D8004F5052 /* BacktraceDatabaseTests.swift */; }; - A24A4B5F28B595D9004F5052 /* BacktraceDatabaseTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4A28B595D8004F5052 /* BacktraceDatabaseTests.swift */; }; A24A4B6028B595D9004F5052 /* BacktraceFileManagerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4B28B595D8004F5052 /* BacktraceFileManagerTests.swift */; }; A24A4B6128B595D9004F5052 /* BacktraceFileManagerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4B28B595D8004F5052 /* BacktraceFileManagerTests.swift */; }; - A24A4B6228B595D9004F5052 /* BacktraceFileManagerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4B28B595D8004F5052 /* BacktraceFileManagerTests.swift */; }; A24A4B6328B595D9004F5052 /* BacktraceReporterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4C28B595D8004F5052 /* BacktraceReporterTests.swift */; }; A24A4B6428B595D9004F5052 /* BacktraceReporterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4C28B595D8004F5052 /* BacktraceReporterTests.swift */; }; - A24A4B6528B595D9004F5052 /* BacktraceReporterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4C28B595D8004F5052 /* BacktraceReporterTests.swift */; }; A24A4B6628B595D9004F5052 /* BacktraceOomWatcherTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4D28B595D8004F5052 /* BacktraceOomWatcherTests.swift */; }; A24A4B6728B595D9004F5052 /* BacktraceOomWatcherTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4D28B595D8004F5052 /* BacktraceOomWatcherTests.swift */; }; - A24A4B6828B595D9004F5052 /* BacktraceOomWatcherTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4D28B595D8004F5052 /* BacktraceOomWatcherTests.swift */; }; A24A4B6928B595D9004F5052 /* BacktraceRateLimiterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4E28B595D8004F5052 /* BacktraceRateLimiterTests.swift */; }; A24A4B6A28B595D9004F5052 /* BacktraceRateLimiterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4E28B595D8004F5052 /* BacktraceRateLimiterTests.swift */; }; - A24A4B6B28B595D9004F5052 /* BacktraceRateLimiterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4E28B595D8004F5052 /* BacktraceRateLimiterTests.swift */; }; A24A4B6C28B595D9004F5052 /* AttachmentTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4F28B595D8004F5052 /* AttachmentTests.swift */; }; A24A4B6D28B595D9004F5052 /* AttachmentTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4F28B595D8004F5052 /* AttachmentTests.swift */; }; - A24A4B6E28B595D9004F5052 /* AttachmentTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B4F28B595D8004F5052 /* AttachmentTests.swift */; }; A24A4B6F28B595D9004F5052 /* BacktraceCredentialsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5028B595D8004F5052 /* BacktraceCredentialsTests.swift */; }; A24A4B7028B595D9004F5052 /* BacktraceCredentialsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5028B595D8004F5052 /* BacktraceCredentialsTests.swift */; }; - A24A4B7128B595D9004F5052 /* BacktraceCredentialsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5028B595D8004F5052 /* BacktraceCredentialsTests.swift */; }; A24A4B7228B595D9004F5052 /* BacktraceApiTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5128B595D8004F5052 /* BacktraceApiTests.swift */; }; A24A4B7328B595D9004F5052 /* BacktraceApiTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5128B595D8004F5052 /* BacktraceApiTests.swift */; }; - A24A4B7428B595D9004F5052 /* BacktraceApiTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5128B595D8004F5052 /* BacktraceApiTests.swift */; }; A24A4B7528B595D9004F5052 /* DispatcherTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5228B595D8004F5052 /* DispatcherTests.swift */; }; A24A4B7628B595D9004F5052 /* DispatcherTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5228B595D8004F5052 /* DispatcherTests.swift */; }; - A24A4B7728B595D9004F5052 /* DispatcherTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5228B595D8004F5052 /* DispatcherTests.swift */; }; A24A4B7828B595D9004F5052 /* AttributesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5328B595D8004F5052 /* AttributesTests.swift */; }; A24A4B7928B595D9004F5052 /* AttributesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5328B595D8004F5052 /* AttributesTests.swift */; }; - A24A4B7A28B595D9004F5052 /* AttributesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5328B595D8004F5052 /* AttributesTests.swift */; }; A24A4B7B28B595D9004F5052 /* AttachmentStorageTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5428B595D8004F5052 /* AttachmentStorageTests.swift */; }; A24A4B7C28B595D9004F5052 /* AttachmentStorageTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5428B595D8004F5052 /* AttachmentStorageTests.swift */; }; - A24A4B7D28B595D9004F5052 /* AttachmentStorageTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5428B595D8004F5052 /* AttachmentStorageTests.swift */; }; A24A4B7E28B595D9004F5052 /* CrashReporterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5528B595D8004F5052 /* CrashReporterTests.swift */; }; A24A4B7F28B595D9004F5052 /* CrashReporterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5528B595D8004F5052 /* CrashReporterTests.swift */; }; - A24A4B8028B595D9004F5052 /* CrashReporterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5528B595D8004F5052 /* CrashReporterTests.swift */; }; A24A4B8128B595D9004F5052 /* BacktraceBreadcrumbTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5628B595D8004F5052 /* BacktraceBreadcrumbTests.swift */; }; A24A4B8228B595D9004F5052 /* BacktraceBreadcrumbTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B5628B595D8004F5052 /* BacktraceBreadcrumbTests.swift */; }; A24A4B8528B59604004F5052 /* BacktraceNotificationObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B8428B59604004F5052 /* BacktraceNotificationObserver.swift */; }; @@ -163,7 +168,7 @@ A24A4B9328B59653004F5052 /* BacktraceNotificationObserverMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24A4B9028B59653004F5052 /* BacktraceNotificationObserverMock.swift */; }; A24A4B9428B59768004F5052 /* BacktraceBreadcrumbsLogManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28A652EB285C6C1500306631 /* BacktraceBreadcrumbsLogManager.swift */; }; A24A4B9628B59789004F5052 /* BacktraceBreadcrumbFileHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28A652E9285C6C1400306631 /* BacktraceBreadcrumbFileHelper.swift */; }; - AA4C5F61F71591357F503E4A /* Pods_Backtrace_iOSTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7DBFBE4F296B897EB758ADD5 /* Pods_Backtrace_iOSTests.framework */; }; + A673C7BB80EF4884231BE2AB /* Pods_Backtrace_iOSTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2CB45293ADA6EBD6EFD33240 /* Pods_Backtrace_iOSTests.framework */; }; AF5AB03A26261A4E0003698C /* AttachmentsStorage.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF7833BA2613D1B400530A10 /* AttachmentsStorage.swift */; }; AF5AB04726261A760003698C /* AttachmentBookmarkHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = AFCCCEC126260BC400B83A28 /* AttachmentBookmarkHandler.swift */; }; AF5AB05526261BDD0003698C /* AttachmentBookmarkHandlerMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF5AB05426261BDD0003698C /* AttachmentBookmarkHandlerMock.swift */; }; @@ -179,7 +184,9 @@ AFCCCE232625392300B83A28 /* ReportMetadataStorageMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = AFCCCE222625392300B83A28 /* ReportMetadataStorageMock.swift */; }; AFCCCE242625392300B83A28 /* ReportMetadataStorageMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = AFCCCE222625392300B83A28 /* ReportMetadataStorageMock.swift */; }; AFCCCE252625392300B83A28 /* ReportMetadataStorageMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = AFCCCE222625392300B83A28 /* ReportMetadataStorageMock.swift */; }; - DAF627C0CA0FE995B581C33B /* Pods_Backtrace_tvOSTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CD097A22120C3DCE08382BA5 /* Pods_Backtrace_tvOSTests.framework */; }; + C555B9F6C578BE46D81EDDAE /* Pods_Backtrace_iOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E01800A4B637DF75CDF3A8F2 /* Pods_Backtrace_iOS.framework */; }; + CC3337BBDCECAACFCB68AA9B /* Pods_Backtrace_macOSTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D9800D641D6F42F01F876359 /* Pods_Backtrace_macOSTests.framework */; }; + D560291756CA72D1DEB0C9F5 /* Pods_Backtrace_tvOSTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E76C89ABE89C6B740277F227 /* Pods_Backtrace_tvOSTests.framework */; }; F21211A5222348AC000B3692 /* BacktraceCrashReporter.swift in Sources */ = {isa = PBXBuildFile; fileRef = F21211A4222348AC000B3692 /* BacktraceCrashReporter.swift */; }; F21211A6222348AC000B3692 /* BacktraceCrashReporter.swift in Sources */ = {isa = PBXBuildFile; fileRef = F21211A4222348AC000B3692 /* BacktraceCrashReporter.swift */; }; F21211A8222348C2000B3692 /* SignalContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = F21211A7222348C2000B3692 /* SignalContext.swift */; }; @@ -187,13 +194,11 @@ F21771BE21E341CA0059896E /* Dispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2CC8ACA21CF8D8400A68CAC /* Dispatcher.swift */; }; F21D302B224A18D60013B5D7 /* Store.swift in Sources */ = {isa = PBXBuildFile; fileRef = F21D302A224A18D50013B5D7 /* Store.swift */; }; F21D302C224A18D60013B5D7 /* Store.swift in Sources */ = {isa = PBXBuildFile; fileRef = F21D302A224A18D50013B5D7 /* Store.swift */; }; - F21DD39D2255666F00404CC3 /* Quick+Throws.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2AB63692244243500939BC9 /* Quick+Throws.swift */; }; F21DD39F2255666F00404CC3 /* WatcherRepositoryMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2AB63742246484100939BC9 /* WatcherRepositoryMock.swift */; }; F21DD3A02255666F00404CC3 /* UrlSessionMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = F229D789223A56ED008EC851 /* UrlSessionMock.swift */; }; F21DD3A12255666F00404CC3 /* DebuggerCheckerMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2AB637D22464FD500939BC9 /* DebuggerCheckerMock.swift */; }; F21DD3B12255EA2A00404CC3 /* test.txt in Resources */ = {isa = PBXBuildFile; fileRef = F21DD3B02255EA2A00404CC3 /* test.txt */; }; F21DD3B22255EA2A00404CC3 /* test.txt in Resources */ = {isa = PBXBuildFile; fileRef = F21DD3B02255EA2A00404CC3 /* test.txt */; }; - F21DD3B32255EA2A00404CC3 /* test.txt in Resources */ = {isa = PBXBuildFile; fileRef = F21DD3B02255EA2A00404CC3 /* test.txt */; }; F229D78C223A591F008EC851 /* UrlSessionMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = F229D789223A56ED008EC851 /* UrlSessionMock.swift */; }; F229D78D223A5920008EC851 /* UrlSessionMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = F229D789223A56ED008EC851 /* UrlSessionMock.swift */; }; F22EB87721BBD36800DEE94E /* BacktraceClient.swift in Sources */ = {isa = PBXBuildFile; fileRef = F22EB87621BBD36800DEE94E /* BacktraceClient.swift */; }; @@ -377,11 +382,12 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ + 0780943F35E4DA622682BF23 /* Pods-Backtrace-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-iOS.debug.xcconfig"; path = "Target Support Files/Pods-Backtrace-iOS/Pods-Backtrace-iOS.debug.xcconfig"; sourceTree = ""; }; + 08CFB385C482A024AF0729B7 /* Pods_Backtrace_macOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Backtrace_macOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 0B0D5B031602BE47564B882F /* Pods_Example_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Example_iOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 0B6B4CFC25CD8331002DA15C /* BacktraceOomWatcher.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BacktraceOomWatcher.swift; sourceTree = ""; }; - 0BD25E424A2C0A01BC783DF6 /* Pods-Example-iOS-ObjC.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Example-iOS-ObjC.release.xcconfig"; path = "Target Support Files/Pods-Example-iOS-ObjC/Pods-Example-iOS-ObjC.release.xcconfig"; sourceTree = ""; }; - 0C7CA588016EB774C992E9DC /* Pods-Example-iOS-ObjC.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Example-iOS-ObjC.debug.xcconfig"; path = "Target Support Files/Pods-Example-iOS-ObjC/Pods-Example-iOS-ObjC.debug.xcconfig"; sourceTree = ""; }; - 1177F259EBD06B9042C924FF /* Pods_Backtrace_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Backtrace_iOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 1489BA2A995612C6FD63746C /* Pods-Backtrace-macOSTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-macOSTests.release.xcconfig"; path = "Target Support Files/Pods-Backtrace-macOSTests/Pods-Backtrace-macOSTests.release.xcconfig"; sourceTree = ""; }; + 0CF6A7CDEC26CC47BDC1A1B5 /* Pods-Backtrace-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-macOS.release.xcconfig"; path = "Target Support Files/Pods-Backtrace-macOS/Pods-Backtrace-macOS.release.xcconfig"; sourceTree = ""; }; + 10E0DE3EDF9D642F93962F5C /* Pods-Backtrace-macOSTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-macOSTests.release.xcconfig"; path = "Target Support Files/Pods-Backtrace-macOSTests/Pods-Backtrace-macOSTests.release.xcconfig"; sourceTree = ""; }; 282C85E6223FD8E70014FE75 /* BacktraceCrashExceptionApplication.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BacktraceCrashExceptionApplication.swift; sourceTree = ""; }; 2846E1F7222F1DE50035F98C /* NetworkReachability.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NetworkReachability.swift; sourceTree = ""; }; 2846E1FD223070CB0035F98C /* Attachment.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Attachment.swift; sourceTree = ""; }; @@ -399,11 +405,9 @@ 28F95BB822525DCC003936E0 /* Backtrace-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "Backtrace-tvOSTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; 28F95BBD22525DCC003936E0 /* Backtrace_tvOSTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Backtrace_tvOSTests.swift; sourceTree = ""; }; 28F95BBF22525DCC003936E0 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 2AD1F18F003AEE4B504EF565 /* Pods-Example-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Example-iOS.debug.xcconfig"; path = "Target Support Files/Pods-Example-iOS/Pods-Example-iOS.debug.xcconfig"; sourceTree = ""; }; - 2F84FCBE2C155A6EDCD13DA3 /* Pods_Example_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Example_iOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 57F2B4E685B75CC731674666 /* Pods-Backtrace-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-macOS.release.xcconfig"; path = "Target Support Files/Pods-Backtrace-macOS/Pods-Backtrace-macOS.release.xcconfig"; sourceTree = ""; }; - 5C21E6E3263D3F822055DC6F /* Pods-Backtrace-tvOSTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-tvOSTests.release.xcconfig"; path = "Target Support Files/Pods-Backtrace-tvOSTests/Pods-Backtrace-tvOSTests.release.xcconfig"; sourceTree = ""; }; - 5F259CADCE03CF31669043E4 /* Pods_Example_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Example_tvOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 2B5AE2B78E949D4B71E34DB6 /* Pods-Example-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Example-tvOS.debug.xcconfig"; path = "Target Support Files/Pods-Example-tvOS/Pods-Example-tvOS.debug.xcconfig"; sourceTree = ""; }; + 2CB45293ADA6EBD6EFD33240 /* Pods_Backtrace_iOSTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Backtrace_iOSTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 46EAADA38448426B8063F5E8 /* Pods_Backtrace_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Backtrace_tvOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 6E45A3A6273095E500DB0BAC /* BacktraceMetricsSettings.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BacktraceMetricsSettings.swift; sourceTree = ""; }; 6E87F5EA2733174C00B90B07 /* Event.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Event.swift; sourceTree = ""; }; 6E87F5F2273325A800B90B07 /* UniqueEvent.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UniqueEvent.swift; sourceTree = ""; }; @@ -415,15 +419,9 @@ 6EB713EF276125760075D1C1 /* BacktraceMetricsSender.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BacktraceMetricsSender.swift; sourceTree = ""; }; 6EB713F327617ED00075D1C1 /* BacktraceMetricsContainer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BacktraceMetricsContainer.swift; sourceTree = ""; }; 6EB713F7276294160075D1C1 /* MetricsRequest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MetricsRequest.swift; sourceTree = ""; }; - 7A6BADA9A258E6A8C84A12EA /* Pods_Backtrace_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Backtrace_tvOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 7C6B849EED4A5BC8549A8626 /* Pods-Backtrace-macOSTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-macOSTests.debug.xcconfig"; path = "Target Support Files/Pods-Backtrace-macOSTests/Pods-Backtrace-macOSTests.debug.xcconfig"; sourceTree = ""; }; - 7DBFBE4F296B897EB758ADD5 /* Pods_Backtrace_iOSTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Backtrace_iOSTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 86FA6ECB67FC42BAC8C66B21 /* Pods_Example_macOS_ObjC.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Example_macOS_ObjC.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 88EED3675F32568EE8208086 /* Pods-Backtrace-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-macOS.debug.xcconfig"; path = "Target Support Files/Pods-Backtrace-macOS/Pods-Backtrace-macOS.debug.xcconfig"; sourceTree = ""; }; - 8EB595BEA326A3C319273488 /* Pods-Backtrace-iOSTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-iOSTests.debug.xcconfig"; path = "Target Support Files/Pods-Backtrace-iOSTests/Pods-Backtrace-iOSTests.debug.xcconfig"; sourceTree = ""; }; - 901953BC961C3FE4B5AD9833 /* Pods-Example-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Example-tvOS.release.xcconfig"; path = "Target Support Files/Pods-Example-tvOS/Pods-Example-tvOS.release.xcconfig"; sourceTree = ""; }; - 9E745BEC22F73DD1C35CDEB1 /* Pods-Example-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Example-iOS.release.xcconfig"; path = "Target Support Files/Pods-Example-iOS/Pods-Example-iOS.release.xcconfig"; sourceTree = ""; }; - 9FA21CD5245BFF9D3A3949ED /* Pods-Example-macOS-ObjC.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Example-macOS-ObjC.release.xcconfig"; path = "Target Support Files/Pods-Example-macOS-ObjC/Pods-Example-macOS-ObjC.release.xcconfig"; sourceTree = ""; }; + 75B4B04BCC0778209D23A2B1 /* Pods-Backtrace-iOSTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-iOSTests.release.xcconfig"; path = "Target Support Files/Pods-Backtrace-iOSTests/Pods-Backtrace-iOSTests.release.xcconfig"; sourceTree = ""; }; + 88B374494E194CC67F37AA64 /* Pods-Backtrace-tvOSTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-tvOSTests.release.xcconfig"; path = "Target Support Files/Pods-Backtrace-tvOSTests/Pods-Backtrace-tvOSTests.release.xcconfig"; sourceTree = ""; }; + 9E36EFABCF1657DBE7F84F02 /* Pods-Backtrace-iOSTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-iOSTests.debug.xcconfig"; path = "Target Support Files/Pods-Backtrace-iOSTests/Pods-Backtrace-iOSTests.debug.xcconfig"; sourceTree = ""; }; A24A4B4828B595D8004F5052 /* BacktraceMetricsTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BacktraceMetricsTest.swift; sourceTree = ""; }; A24A4B4928B595D8004F5052 /* BacktraceWatcherTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BacktraceWatcherTests.swift; sourceTree = ""; }; A24A4B4A28B595D8004F5052 /* BacktraceDatabaseTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BacktraceDatabaseTests.swift; sourceTree = ""; }; @@ -443,23 +441,28 @@ A24A4B8828B5960E004F5052 /* BacktraceBreadcrumbs.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BacktraceBreadcrumbs.swift; sourceTree = ""; }; A24A4B8C28B5961A004F5052 /* BacktraceBreadcrumbSettings.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BacktraceBreadcrumbSettings.swift; sourceTree = ""; }; A24A4B9028B59653004F5052 /* BacktraceNotificationObserverMock.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BacktraceNotificationObserverMock.swift; sourceTree = ""; }; - A5CC76178939D9A1241B1CF2 /* Pods-Backtrace-tvOSTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-tvOSTests.debug.xcconfig"; path = "Target Support Files/Pods-Backtrace-tvOSTests/Pods-Backtrace-tvOSTests.debug.xcconfig"; sourceTree = ""; }; + A407C5BAF89807C551411BAB /* Pods-Backtrace-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-tvOS.release.xcconfig"; path = "Target Support Files/Pods-Backtrace-tvOS/Pods-Backtrace-tvOS.release.xcconfig"; sourceTree = ""; }; + A957ADF0705C3F754207BF75 /* Pods-Example-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Example-iOS.debug.xcconfig"; path = "Target Support Files/Pods-Example-iOS/Pods-Example-iOS.debug.xcconfig"; sourceTree = ""; }; + AD23CAF0B4FBFD1D1C267947 /* Pods-Backtrace-tvOSTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-tvOSTests.debug.xcconfig"; path = "Target Support Files/Pods-Backtrace-tvOSTests/Pods-Backtrace-tvOSTests.debug.xcconfig"; sourceTree = ""; }; AF5AB05426261BDD0003698C /* AttachmentBookmarkHandlerMock.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AttachmentBookmarkHandlerMock.swift; sourceTree = ""; }; AF7477582620C6B200DEE7D1 /* ReportMetadataStorage.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReportMetadataStorage.swift; sourceTree = ""; }; AF7833BA2613D1B400530A10 /* AttachmentsStorage.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AttachmentsStorage.swift; sourceTree = ""; }; AFCCCE222625392300B83A28 /* ReportMetadataStorageMock.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReportMetadataStorageMock.swift; sourceTree = ""; }; AFCCCEC126260BC400B83A28 /* AttachmentBookmarkHandler.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AttachmentBookmarkHandler.swift; sourceTree = ""; }; - B7B445FAC6841A65683F35E9 /* Pods-Backtrace-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-tvOS.debug.xcconfig"; path = "Target Support Files/Pods-Backtrace-tvOS/Pods-Backtrace-tvOS.debug.xcconfig"; sourceTree = ""; }; - BECDC44D2F82A1F1FD5CD9D1 /* Pods_Backtrace_macOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Backtrace_macOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - BFAF826CD2E1314532AD4FF6 /* Pods_Example_iOS_ObjC.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Example_iOS_ObjC.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - CBD7C304EF07EB12C3629BD1 /* Pods-Backtrace-iOSTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-iOSTests.release.xcconfig"; path = "Target Support Files/Pods-Backtrace-iOSTests/Pods-Backtrace-iOSTests.release.xcconfig"; sourceTree = ""; }; - CD097A22120C3DCE08382BA5 /* Pods_Backtrace_tvOSTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Backtrace_tvOSTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - D3ECFB169B902C0D4C33E583 /* Pods_Backtrace_macOSTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Backtrace_macOSTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - DD138024A23535012B547A23 /* Pods-Backtrace-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-iOS.debug.xcconfig"; path = "Target Support Files/Pods-Backtrace-iOS/Pods-Backtrace-iOS.debug.xcconfig"; sourceTree = ""; }; - DF185FD406BBAA3FDB9AE1DA /* Pods-Example-macOS-ObjC.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Example-macOS-ObjC.debug.xcconfig"; path = "Target Support Files/Pods-Example-macOS-ObjC/Pods-Example-macOS-ObjC.debug.xcconfig"; sourceTree = ""; }; - DF6D8BEC5A8A487DFBD88662 /* Pods-Backtrace-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-tvOS.release.xcconfig"; path = "Target Support Files/Pods-Backtrace-tvOS/Pods-Backtrace-tvOS.release.xcconfig"; sourceTree = ""; }; - EE35372CEC0156C6473A53D9 /* Pods-Example-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Example-tvOS.debug.xcconfig"; path = "Target Support Files/Pods-Example-tvOS/Pods-Example-tvOS.debug.xcconfig"; sourceTree = ""; }; - EF393254D96BBC5B93F8B5D7 /* Pods-Backtrace-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-iOS.release.xcconfig"; path = "Target Support Files/Pods-Backtrace-iOS/Pods-Backtrace-iOS.release.xcconfig"; sourceTree = ""; }; + B768F5337B5647F3AA850DCC /* Pods-Backtrace-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-tvOS.debug.xcconfig"; path = "Target Support Files/Pods-Backtrace-tvOS/Pods-Backtrace-tvOS.debug.xcconfig"; sourceTree = ""; }; + C12523DD5F31C4F093B47C63 /* Pods-Backtrace-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-iOS.release.xcconfig"; path = "Target Support Files/Pods-Backtrace-iOS/Pods-Backtrace-iOS.release.xcconfig"; sourceTree = ""; }; + C6C55F755FA270859980099B /* Pods_Example_macOS_ObjC.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Example_macOS_ObjC.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + CDD6029B0AE2D681038D8912 /* Pods-Backtrace-macOSTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-macOSTests.debug.xcconfig"; path = "Target Support Files/Pods-Backtrace-macOSTests/Pods-Backtrace-macOSTests.debug.xcconfig"; sourceTree = ""; }; + CEDA14191C29DF670DF82160 /* Pods-Example-iOS-ObjC.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Example-iOS-ObjC.release.xcconfig"; path = "Target Support Files/Pods-Example-iOS-ObjC/Pods-Example-iOS-ObjC.release.xcconfig"; sourceTree = ""; }; + CFB2D4609941D2A7CDB4D87D /* Pods-Example-iOS-ObjC.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Example-iOS-ObjC.debug.xcconfig"; path = "Target Support Files/Pods-Example-iOS-ObjC/Pods-Example-iOS-ObjC.debug.xcconfig"; sourceTree = ""; }; + D3042A332304D68DB0D02702 /* Pods_Example_iOS_ObjC.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Example_iOS_ObjC.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + D7EEA8D61F36AE78EB511F99 /* Pods-Example-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Example-tvOS.release.xcconfig"; path = "Target Support Files/Pods-Example-tvOS/Pods-Example-tvOS.release.xcconfig"; sourceTree = ""; }; + D9800D641D6F42F01F876359 /* Pods_Backtrace_macOSTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Backtrace_macOSTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + E01800A4B637DF75CDF3A8F2 /* Pods_Backtrace_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Backtrace_iOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + E07E65E57BE4F159E102C349 /* Pods-Example-macOS-ObjC.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Example-macOS-ObjC.debug.xcconfig"; path = "Target Support Files/Pods-Example-macOS-ObjC/Pods-Example-macOS-ObjC.debug.xcconfig"; sourceTree = ""; }; + E76C89ABE89C6B740277F227 /* Pods_Backtrace_tvOSTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Backtrace_tvOSTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + E9324F45B2A0A9335B2F4A0D /* Pods_Example_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Example_tvOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + ECDE19802A2EC36F62468488 /* Pods-Example-macOS-ObjC.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Example-macOS-ObjC.release.xcconfig"; path = "Target Support Files/Pods-Example-macOS-ObjC/Pods-Example-macOS-ObjC.release.xcconfig"; sourceTree = ""; }; F21211A4222348AC000B3692 /* BacktraceCrashReporter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BacktraceCrashReporter.swift; sourceTree = ""; }; F21211A7222348C2000B3692 /* SignalContext.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SignalContext.swift; sourceTree = ""; }; F21D302A224A18D50013B5D7 /* Store.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Store.swift; sourceTree = ""; }; @@ -552,6 +555,8 @@ F2D8BE5221BDA7D0007CFEFA /* Example_macOS_ObjC.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Example_macOS_ObjC.entitlements; sourceTree = ""; }; F2D8BF1B21BDBA5B007CFEFA /* CrashReporter.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CrashReporter.framework; path = Vendor/macOS/CrashReporter.framework; sourceTree = ""; }; F2D8BF1D21BDBB93007CFEFA /* CrashReporter.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CrashReporter.framework; path = Vendor/iOS/CrashReporter.framework; sourceTree = ""; }; + F46CF38C8B8CD292CA531394 /* Pods-Example-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Example-iOS.release.xcconfig"; path = "Target Support Files/Pods-Example-iOS/Pods-Example-iOS.release.xcconfig"; sourceTree = ""; }; + FC8B1629A1BFC7FC335B6405 /* Pods-Backtrace-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Backtrace-macOS.debug.xcconfig"; path = "Target Support Files/Pods-Backtrace-macOS/Pods-Backtrace-macOS.debug.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -559,7 +564,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 23AAE436BA431C814B0936F5 /* Pods_Backtrace_tvOS.framework in Frameworks */, + 41AC9E7E847D1F9744BFDE63 /* Pods_Backtrace_tvOS.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -568,7 +573,7 @@ buildActionMask = 2147483647; files = ( 28F95BB922525DCC003936E0 /* Backtrace.framework in Frameworks */, - DAF627C0CA0FE995B581C33B /* Pods_Backtrace_tvOSTests.framework in Frameworks */, + D560291756CA72D1DEB0C9F5 /* Pods_Backtrace_tvOSTests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -576,7 +581,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 7300A170089CF1E455840E47 /* Pods_Backtrace_macOS.framework in Frameworks */, + 66B1A09965E0CE0C83481375 /* Pods_Backtrace_macOS.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -585,7 +590,7 @@ buildActionMask = 2147483647; files = ( F266B81B21C77AC800D14417 /* Backtrace.framework in Frameworks */, - 87498D6984B8D95C39FE1793 /* Pods_Backtrace_macOSTests.framework in Frameworks */, + CC3337BBDCECAACFCB68AA9B /* Pods_Backtrace_macOSTests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -593,7 +598,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 6F0BF6349057726F088D59C1 /* Pods_Example_tvOS.framework in Frameworks */, + 23DFCEDBB4DB8B913FB3B969 /* Pods_Example_tvOS.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -601,7 +606,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 5B9A6316CCCC5F04057195D8 /* Pods_Backtrace_iOS.framework in Frameworks */, + C555B9F6C578BE46D81EDDAE /* Pods_Backtrace_iOS.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -610,7 +615,7 @@ buildActionMask = 2147483647; files = ( F2C2FA5A21BBD26300934744 /* Backtrace.framework in Frameworks */, - AA4C5F61F71591357F503E4A /* Pods_Backtrace_iOSTests.framework in Frameworks */, + A673C7BB80EF4884231BE2AB /* Pods_Backtrace_iOSTests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -618,7 +623,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 61B185949BD16ED95F797C6C /* Pods_Example_iOS.framework in Frameworks */, + 65957B8ECA6169CE5DC5D021 /* Pods_Example_iOS.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -626,7 +631,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 95286394B151684D754C98AC /* Pods_Example_iOS_ObjC.framework in Frameworks */, + 8F7F15E3BA6A2259635C7B2F /* Pods_Example_iOS_ObjC.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -634,7 +639,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 66B308BBBEAB20E6B21865CD /* Pods_Example_macOS_ObjC.framework in Frameworks */, + 0302B21CB33EA01F44B34743 /* Pods_Example_macOS_ObjC.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -721,26 +726,26 @@ E1CB76ADFD3A1D9326B4E46D /* Pods */ = { isa = PBXGroup; children = ( - DD138024A23535012B547A23 /* Pods-Backtrace-iOS.debug.xcconfig */, - EF393254D96BBC5B93F8B5D7 /* Pods-Backtrace-iOS.release.xcconfig */, - 8EB595BEA326A3C319273488 /* Pods-Backtrace-iOSTests.debug.xcconfig */, - CBD7C304EF07EB12C3629BD1 /* Pods-Backtrace-iOSTests.release.xcconfig */, - 88EED3675F32568EE8208086 /* Pods-Backtrace-macOS.debug.xcconfig */, - 57F2B4E685B75CC731674666 /* Pods-Backtrace-macOS.release.xcconfig */, - 7C6B849EED4A5BC8549A8626 /* Pods-Backtrace-macOSTests.debug.xcconfig */, - 1489BA2A995612C6FD63746C /* Pods-Backtrace-macOSTests.release.xcconfig */, - B7B445FAC6841A65683F35E9 /* Pods-Backtrace-tvOS.debug.xcconfig */, - DF6D8BEC5A8A487DFBD88662 /* Pods-Backtrace-tvOS.release.xcconfig */, - A5CC76178939D9A1241B1CF2 /* Pods-Backtrace-tvOSTests.debug.xcconfig */, - 5C21E6E3263D3F822055DC6F /* Pods-Backtrace-tvOSTests.release.xcconfig */, - 2AD1F18F003AEE4B504EF565 /* Pods-Example-iOS.debug.xcconfig */, - 9E745BEC22F73DD1C35CDEB1 /* Pods-Example-iOS.release.xcconfig */, - 0C7CA588016EB774C992E9DC /* Pods-Example-iOS-ObjC.debug.xcconfig */, - 0BD25E424A2C0A01BC783DF6 /* Pods-Example-iOS-ObjC.release.xcconfig */, - DF185FD406BBAA3FDB9AE1DA /* Pods-Example-macOS-ObjC.debug.xcconfig */, - 9FA21CD5245BFF9D3A3949ED /* Pods-Example-macOS-ObjC.release.xcconfig */, - EE35372CEC0156C6473A53D9 /* Pods-Example-tvOS.debug.xcconfig */, - 901953BC961C3FE4B5AD9833 /* Pods-Example-tvOS.release.xcconfig */, + 0780943F35E4DA622682BF23 /* Pods-Backtrace-iOS.debug.xcconfig */, + C12523DD5F31C4F093B47C63 /* Pods-Backtrace-iOS.release.xcconfig */, + 9E36EFABCF1657DBE7F84F02 /* Pods-Backtrace-iOSTests.debug.xcconfig */, + 75B4B04BCC0778209D23A2B1 /* Pods-Backtrace-iOSTests.release.xcconfig */, + FC8B1629A1BFC7FC335B6405 /* Pods-Backtrace-macOS.debug.xcconfig */, + 0CF6A7CDEC26CC47BDC1A1B5 /* Pods-Backtrace-macOS.release.xcconfig */, + CDD6029B0AE2D681038D8912 /* Pods-Backtrace-macOSTests.debug.xcconfig */, + 10E0DE3EDF9D642F93962F5C /* Pods-Backtrace-macOSTests.release.xcconfig */, + B768F5337B5647F3AA850DCC /* Pods-Backtrace-tvOS.debug.xcconfig */, + A407C5BAF89807C551411BAB /* Pods-Backtrace-tvOS.release.xcconfig */, + AD23CAF0B4FBFD1D1C267947 /* Pods-Backtrace-tvOSTests.debug.xcconfig */, + 88B374494E194CC67F37AA64 /* Pods-Backtrace-tvOSTests.release.xcconfig */, + A957ADF0705C3F754207BF75 /* Pods-Example-iOS.debug.xcconfig */, + F46CF38C8B8CD292CA531394 /* Pods-Example-iOS.release.xcconfig */, + CFB2D4609941D2A7CDB4D87D /* Pods-Example-iOS-ObjC.debug.xcconfig */, + CEDA14191C29DF670DF82160 /* Pods-Example-iOS-ObjC.release.xcconfig */, + E07E65E57BE4F159E102C349 /* Pods-Example-macOS-ObjC.debug.xcconfig */, + ECDE19802A2EC36F62468488 /* Pods-Example-macOS-ObjC.release.xcconfig */, + 2B5AE2B78E949D4B71E34DB6 /* Pods-Example-tvOS.debug.xcconfig */, + D7EEA8D61F36AE78EB511F99 /* Pods-Example-tvOS.release.xcconfig */, ); path = Pods; sourceTree = ""; @@ -1059,16 +1064,16 @@ children = ( F2D8BF1D21BDBB93007CFEFA /* CrashReporter.framework */, F2D8BF1B21BDBA5B007CFEFA /* CrashReporter.framework */, - 1177F259EBD06B9042C924FF /* Pods_Backtrace_iOS.framework */, - 7DBFBE4F296B897EB758ADD5 /* Pods_Backtrace_iOSTests.framework */, - BECDC44D2F82A1F1FD5CD9D1 /* Pods_Backtrace_macOS.framework */, - D3ECFB169B902C0D4C33E583 /* Pods_Backtrace_macOSTests.framework */, - 7A6BADA9A258E6A8C84A12EA /* Pods_Backtrace_tvOS.framework */, - CD097A22120C3DCE08382BA5 /* Pods_Backtrace_tvOSTests.framework */, - 2F84FCBE2C155A6EDCD13DA3 /* Pods_Example_iOS.framework */, - BFAF826CD2E1314532AD4FF6 /* Pods_Example_iOS_ObjC.framework */, - 86FA6ECB67FC42BAC8C66B21 /* Pods_Example_macOS_ObjC.framework */, - 5F259CADCE03CF31669043E4 /* Pods_Example_tvOS.framework */, + E01800A4B637DF75CDF3A8F2 /* Pods_Backtrace_iOS.framework */, + 2CB45293ADA6EBD6EFD33240 /* Pods_Backtrace_iOSTests.framework */, + 08CFB385C482A024AF0729B7 /* Pods_Backtrace_macOS.framework */, + D9800D641D6F42F01F876359 /* Pods_Backtrace_macOSTests.framework */, + 46EAADA38448426B8063F5E8 /* Pods_Backtrace_tvOS.framework */, + E76C89ABE89C6B740277F227 /* Pods_Backtrace_tvOSTests.framework */, + 0B0D5B031602BE47564B882F /* Pods_Example_iOS.framework */, + D3042A332304D68DB0D02702 /* Pods_Example_iOS_ObjC.framework */, + C6C55F755FA270859980099B /* Pods_Example_macOS_ObjC.framework */, + E9324F45B2A0A9335B2F4A0D /* Pods_Example_tvOS.framework */, ); name = Frameworks; sourceTree = ""; @@ -1152,7 +1157,7 @@ isa = PBXNativeTarget; buildConfigurationList = 28F95BC122525DCC003936E0 /* Build configuration list for PBXNativeTarget "Backtrace-tvOS" */; buildPhases = ( - D6F24573A795E8E51B37AEAE /* [CP] Check Pods Manifest.lock */, + 56E06556CDBA23B2FCE0585B /* [CP] Check Pods Manifest.lock */, 28F95BAB22525DCC003936E0 /* Headers */, 28F95BAC22525DCC003936E0 /* Sources */, 28F95BAD22525DCC003936E0 /* Frameworks */, @@ -1172,11 +1177,11 @@ isa = PBXNativeTarget; buildConfigurationList = 28F95BC422525DCC003936E0 /* Build configuration list for PBXNativeTarget "Backtrace-tvOSTests" */; buildPhases = ( - 9E5C0EDCBCA2B5BCD0419F14 /* [CP] Check Pods Manifest.lock */, + 013F100D2B52F2F8B86217AB /* [CP] Check Pods Manifest.lock */, 28F95BB422525DCC003936E0 /* Sources */, 28F95BB522525DCC003936E0 /* Frameworks */, 28F95BB622525DCC003936E0 /* Resources */, - D0DF09E852BBDF4500CEF513 /* [CP] Embed Pods Frameworks */, + C6D6DECE2F928997A04960C7 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -1192,7 +1197,7 @@ isa = PBXNativeTarget; buildConfigurationList = F266B82321C77AC800D14417 /* Build configuration list for PBXNativeTarget "Backtrace-macOS" */; buildPhases = ( - 961BE156CE22B8EE48252B8C /* [CP] Check Pods Manifest.lock */, + D208ACDB770E21786C1BA2DE /* [CP] Check Pods Manifest.lock */, F266B80D21C77AC800D14417 /* Headers */, F266B80E21C77AC800D14417 /* Sources */, F266B80F21C77AC800D14417 /* Frameworks */, @@ -1212,11 +1217,11 @@ isa = PBXNativeTarget; buildConfigurationList = F266B82621C77AC800D14417 /* Build configuration list for PBXNativeTarget "Backtrace-macOSTests" */; buildPhases = ( - 7830B7AA8BBB0F643EFAAB0A /* [CP] Check Pods Manifest.lock */, + 31DEEEF3BBED8EC777BFF318 /* [CP] Check Pods Manifest.lock */, F266B81621C77AC800D14417 /* Sources */, F266B81721C77AC800D14417 /* Frameworks */, F266B81821C77AC800D14417 /* Resources */, - F9C671E037AD993FBDD04E3C /* [CP] Embed Pods Frameworks */, + 0CEB95FA6D425CDF192909B1 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -1232,12 +1237,12 @@ isa = PBXNativeTarget; buildConfigurationList = F2A11C0522553C2A00354640 /* Build configuration list for PBXNativeTarget "Example-tvOS" */; buildPhases = ( - 1C013980D43344F46C554694 /* [CP] Check Pods Manifest.lock */, + 3BF0FF7213FAA898EDEC9A9C /* [CP] Check Pods Manifest.lock */, F2A11BF322553C2800354640 /* Sources */, F2A11BF422553C2800354640 /* Frameworks */, F2A11BF522553C2800354640 /* Resources */, 28C74A2F226FBD7700CE713A /* Embed Frameworks */, - 6DA0182A9DE4A826596C1A66 /* [CP] Embed Pods Frameworks */, + 9FCD553D178B7DC3D5196E10 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -1252,7 +1257,7 @@ isa = PBXNativeTarget; buildConfigurationList = F2C2FA6221BBD26300934744 /* Build configuration list for PBXNativeTarget "Backtrace-iOS" */; buildPhases = ( - A6B718EBA68137F076DA3E76 /* [CP] Check Pods Manifest.lock */, + 496D84DC969D60D84887857E /* [CP] Check Pods Manifest.lock */, F2C2FA4B21BBD26300934744 /* Headers */, F2C2FA4C21BBD26300934744 /* Sources */, F2C2FA4D21BBD26300934744 /* Frameworks */, @@ -1272,11 +1277,11 @@ isa = PBXNativeTarget; buildConfigurationList = F2C2FA6521BBD26300934744 /* Build configuration list for PBXNativeTarget "Backtrace-iOSTests" */; buildPhases = ( - C5D702C1EDA1305F0B148205 /* [CP] Check Pods Manifest.lock */, + 9D771FEDDC4D6D07457E08F3 /* [CP] Check Pods Manifest.lock */, F2C2FA5521BBD26300934744 /* Sources */, F2C2FA5621BBD26300934744 /* Frameworks */, F2C2FA5721BBD26300934744 /* Resources */, - 88C45D376DFA52E1BEF2E448 /* [CP] Embed Pods Frameworks */, + C05F93792469ABBDD1220AF5 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -1292,12 +1297,12 @@ isa = PBXNativeTarget; buildConfigurationList = F2D8BE1321BC065F007CFEFA /* Build configuration list for PBXNativeTarget "Example-iOS" */; buildPhases = ( - C38F22EED46A6AF33364F86E /* [CP] Check Pods Manifest.lock */, + BA5919E72ECC5FED38581859 /* [CP] Check Pods Manifest.lock */, F2D8BE0021BC065E007CFEFA /* Sources */, F2D8BE0121BC065E007CFEFA /* Frameworks */, F2D8BE0221BC065E007CFEFA /* Resources */, F2D7122821F11303002D2A26 /* Embed Frameworks */, - F674AA0553BA32AA6B96B6AB /* [CP] Embed Pods Frameworks */, + 2C334E371C2F906008609800 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -1312,12 +1317,12 @@ isa = PBXNativeTarget; buildConfigurationList = F2D8BE3221BC5F98007CFEFA /* Build configuration list for PBXNativeTarget "Example-iOS-ObjC" */; buildPhases = ( - 6C250D4EF303919C113C0582 /* [CP] Check Pods Manifest.lock */, + 492ED00A5C793AE9116CD732 /* [CP] Check Pods Manifest.lock */, F2D8BE1B21BC5F97007CFEFA /* Sources */, F2D8BE1C21BC5F97007CFEFA /* Frameworks */, F2D8BE1D21BC5F97007CFEFA /* Resources */, F2D7122B21F115CD002D2A26 /* Embed Frameworks */, - C8E1C17F1E44815460AEEDB8 /* [CP] Embed Pods Frameworks */, + C40871CE6FA1466320F26B0C /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -1332,12 +1337,12 @@ isa = PBXNativeTarget; buildConfigurationList = F2D8BE5321BDA7D0007CFEFA /* Build configuration list for PBXNativeTarget "Example-macOS-ObjC" */; buildPhases = ( - 5D8719DC198471D231A4EF3C /* [CP] Check Pods Manifest.lock */, + EC6A9E1AD20C352CE6AEC860 /* [CP] Check Pods Manifest.lock */, F2D8BE3E21BDA7CF007CFEFA /* Sources */, F2D8BE3F21BDA7CF007CFEFA /* Frameworks */, F2D8BE4021BDA7CF007CFEFA /* Resources */, F289085621C532D9002B813E /* Embed Frameworks */, - BBEC498BA26D6B9A3AA3CE77 /* [CP] Embed Pods Frameworks */, + 41DAEC7EFE6300FC928616CC /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -1431,7 +1436,7 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - F21DD3B32255EA2A00404CC3 /* test.txt in Resources */, + 28CC912D28C9220900759230 /* test.txt in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1510,7 +1515,7 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ - 1C013980D43344F46C554694 /* [CP] Check Pods Manifest.lock */ = { + 013F100D2B52F2F8B86217AB /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1525,14 +1530,48 @@ outputFileListPaths = ( ); outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Example-tvOS-checkManifestLockResult.txt", + "$(DERIVED_FILE_DIR)/Pods-Backtrace-tvOSTests-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; 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"; showEnvVarsInLog = 0; }; - 5D8719DC198471D231A4EF3C /* [CP] Check Pods Manifest.lock */ = { + 0CEB95FA6D425CDF192909B1 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Backtrace-macOSTests/Pods-Backtrace-macOSTests-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Backtrace-macOSTests/Pods-Backtrace-macOSTests-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Backtrace-macOSTests/Pods-Backtrace-macOSTests-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; + 2C334E371C2F906008609800 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Example-iOS/Pods-Example-iOS-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Example-iOS/Pods-Example-iOS-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Example-iOS/Pods-Example-iOS-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; + 31DEEEF3BBED8EC777BFF318 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1547,14 +1586,14 @@ outputFileListPaths = ( ); outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Example-macOS-ObjC-checkManifestLockResult.txt", + "$(DERIVED_FILE_DIR)/Pods-Backtrace-macOSTests-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; 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"; showEnvVarsInLog = 0; }; - 6C250D4EF303919C113C0582 /* [CP] Check Pods Manifest.lock */ = { + 3BF0FF7213FAA898EDEC9A9C /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1569,31 +1608,31 @@ outputFileListPaths = ( ); outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Example-iOS-ObjC-checkManifestLockResult.txt", + "$(DERIVED_FILE_DIR)/Pods-Example-tvOS-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; 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"; showEnvVarsInLog = 0; }; - 6DA0182A9DE4A826596C1A66 /* [CP] Embed Pods Frameworks */ = { + 41DAEC7EFE6300FC928616CC /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Example-tvOS/Pods-Example-tvOS-frameworks-${CONFIGURATION}-input-files.xcfilelist", + "${PODS_ROOT}/Target Support Files/Pods-Example-macOS-ObjC/Pods-Example-macOS-ObjC-frameworks-${CONFIGURATION}-input-files.xcfilelist", ); name = "[CP] Embed Pods Frameworks"; outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Example-tvOS/Pods-Example-tvOS-frameworks-${CONFIGURATION}-output-files.xcfilelist", + "${PODS_ROOT}/Target Support Files/Pods-Example-macOS-ObjC/Pods-Example-macOS-ObjC-frameworks-${CONFIGURATION}-output-files.xcfilelist", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Example-tvOS/Pods-Example-tvOS-frameworks.sh\"\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Example-macOS-ObjC/Pods-Example-macOS-ObjC-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; - 7830B7AA8BBB0F643EFAAB0A /* [CP] Check Pods Manifest.lock */ = { + 492ED00A5C793AE9116CD732 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1608,31 +1647,14 @@ outputFileListPaths = ( ); outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Backtrace-macOSTests-checkManifestLockResult.txt", + "$(DERIVED_FILE_DIR)/Pods-Example-iOS-ObjC-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; 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"; showEnvVarsInLog = 0; }; - 88C45D376DFA52E1BEF2E448 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Backtrace-iOSTests/Pods-Backtrace-iOSTests-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Backtrace-iOSTests/Pods-Backtrace-iOSTests-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Backtrace-iOSTests/Pods-Backtrace-iOSTests-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - 961BE156CE22B8EE48252B8C /* [CP] Check Pods Manifest.lock */ = { + 496D84DC969D60D84887857E /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1647,14 +1669,14 @@ outputFileListPaths = ( ); outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Backtrace-macOS-checkManifestLockResult.txt", + "$(DERIVED_FILE_DIR)/Pods-Backtrace-iOS-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; 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"; showEnvVarsInLog = 0; }; - 9E5C0EDCBCA2B5BCD0419F14 /* [CP] Check Pods Manifest.lock */ = { + 56E06556CDBA23B2FCE0585B /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1669,14 +1691,14 @@ outputFileListPaths = ( ); outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Backtrace-tvOSTests-checkManifestLockResult.txt", + "$(DERIVED_FILE_DIR)/Pods-Backtrace-tvOS-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; 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"; showEnvVarsInLog = 0; }; - A6B718EBA68137F076DA3E76 /* [CP] Check Pods Manifest.lock */ = { + 9D771FEDDC4D6D07457E08F3 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1691,31 +1713,31 @@ outputFileListPaths = ( ); outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Backtrace-iOS-checkManifestLockResult.txt", + "$(DERIVED_FILE_DIR)/Pods-Backtrace-iOSTests-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; 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"; showEnvVarsInLog = 0; }; - BBEC498BA26D6B9A3AA3CE77 /* [CP] Embed Pods Frameworks */ = { + 9FCD553D178B7DC3D5196E10 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Example-macOS-ObjC/Pods-Example-macOS-ObjC-frameworks-${CONFIGURATION}-input-files.xcfilelist", + "${PODS_ROOT}/Target Support Files/Pods-Example-tvOS/Pods-Example-tvOS-frameworks-${CONFIGURATION}-input-files.xcfilelist", ); name = "[CP] Embed Pods Frameworks"; outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Example-macOS-ObjC/Pods-Example-macOS-ObjC-frameworks-${CONFIGURATION}-output-files.xcfilelist", + "${PODS_ROOT}/Target Support Files/Pods-Example-tvOS/Pods-Example-tvOS-frameworks-${CONFIGURATION}-output-files.xcfilelist", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Example-macOS-ObjC/Pods-Example-macOS-ObjC-frameworks.sh\"\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Example-tvOS/Pods-Example-tvOS-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; - C38F22EED46A6AF33364F86E /* [CP] Check Pods Manifest.lock */ = { + BA5919E72ECC5FED38581859 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1737,29 +1759,24 @@ 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; }; - C5D702C1EDA1305F0B148205 /* [CP] Check Pods Manifest.lock */ = { + C05F93792469ABBDD1220AF5 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Backtrace-iOSTests/Pods-Backtrace-iOSTests-frameworks-${CONFIGURATION}-input-files.xcfilelist", ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; + name = "[CP] Embed Pods Frameworks"; outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Backtrace-iOSTests-checkManifestLockResult.txt", + "${PODS_ROOT}/Target Support Files/Pods-Backtrace-iOSTests/Pods-Backtrace-iOSTests-frameworks-${CONFIGURATION}-output-files.xcfilelist", ); runOnlyForDeploymentPostprocessing = 0; 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 = "\"${PODS_ROOT}/Target Support Files/Pods-Backtrace-iOSTests/Pods-Backtrace-iOSTests-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; - C8E1C17F1E44815460AEEDB8 /* [CP] Embed Pods Frameworks */ = { + C40871CE6FA1466320F26B0C /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1776,7 +1793,7 @@ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Example-iOS-ObjC/Pods-Example-iOS-ObjC-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; - D0DF09E852BBDF4500CEF513 /* [CP] Embed Pods Frameworks */ = { + C6D6DECE2F928997A04960C7 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1793,7 +1810,7 @@ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Backtrace-tvOSTests/Pods-Backtrace-tvOSTests-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; - D6F24573A795E8E51B37AEAE /* [CP] Check Pods Manifest.lock */ = { + D208ACDB770E21786C1BA2DE /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1808,14 +1825,14 @@ outputFileListPaths = ( ); outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Backtrace-tvOS-checkManifestLockResult.txt", + "$(DERIVED_FILE_DIR)/Pods-Backtrace-macOS-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; 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"; showEnvVarsInLog = 0; }; - F2F0628C22B0453C00BCA6D0 /* Lint */ = { + EC6A9E1AD20C352CE6AEC860 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1823,17 +1840,21 @@ inputFileListPaths = ( ); inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", ); - name = Lint; + name = "[CP] Check Pods Manifest.lock"; outputFileListPaths = ( ); outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Example-macOS-ObjC-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "if which swiftlint >/dev/null; then\nswiftlint\nelse\necho \"warning: SwiftLint not installed, download from https://github.com/realm/SwiftLint\"\nfi\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; }; - F2F0628D22B0458A00BCA6D0 /* Lint */ = { + F2F0628C22B0453C00BCA6D0 /* Lint */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1851,7 +1872,7 @@ shellPath = /bin/sh; shellScript = "if which swiftlint >/dev/null; then\nswiftlint\nelse\necho \"warning: SwiftLint not installed, download from https://github.com/realm/SwiftLint\"\nfi\n"; }; - F2F0628E22B0459600BCA6D0 /* Lint */ = { + F2F0628D22B0458A00BCA6D0 /* Lint */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1869,39 +1890,23 @@ shellPath = /bin/sh; shellScript = "if which swiftlint >/dev/null; then\nswiftlint\nelse\necho \"warning: SwiftLint not installed, download from https://github.com/realm/SwiftLint\"\nfi\n"; }; - F674AA0553BA32AA6B96B6AB /* [CP] Embed Pods Frameworks */ = { + F2F0628E22B0459600BCA6D0 /* Lint */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Example-iOS/Pods-Example-iOS-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Example-iOS/Pods-Example-iOS-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Example-iOS/Pods-Example-iOS-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - F9C671E037AD993FBDD04E3C /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Backtrace-macOSTests/Pods-Backtrace-macOSTests-frameworks-${CONFIGURATION}-input-files.xcfilelist", + inputPaths = ( ); - name = "[CP] Embed Pods Frameworks"; + name = Lint; outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Backtrace-macOSTests/Pods-Backtrace-macOSTests-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Backtrace-macOSTests/Pods-Backtrace-macOSTests-frameworks.sh\"\n"; - showEnvVarsInLog = 0; + shellScript = "if which swiftlint >/dev/null; then\nswiftlint\nelse\necho \"warning: SwiftLint not installed, download from https://github.com/realm/SwiftLint\"\nfi\n"; }; /* End PBXShellScriptBuildPhase section */ @@ -1920,6 +1925,7 @@ 28F95BC92252602C003936E0 /* Foundation+Extensions.swift in Sources */, 28F95BD622526078003936E0 /* DebuggerChecker.swift in Sources */, 28A65308285D1BF700306631 /* Date+Extensions.swift in Sources */, + 2840D74128BD34D9007663DB /* BacktraceBreadcrumbSettings.swift in Sources */, 28F95BE8225260B3003936E0 /* PersistentRepository.swift in Sources */, 6E45A3A9273095E500DB0BAC /* BacktraceMetricsSettings.swift in Sources */, 28F95BDF2252609A003936E0 /* BacktraceReporter.swift in Sources */, @@ -1929,6 +1935,7 @@ 28F95BD422526072003936E0 /* BacktraceCredentials.swift in Sources */, 28F95BE4225260A7003936E0 /* MultipartRequest.swift in Sources */, AF5AB0A12626226D0003698C /* AttachmentsStorage.swift in Sources */, + 2840D74328BD34E2007663DB /* BacktraceNotificationObserver.swift in Sources */, 28F95BCE2252605E003936E0 /* BacktraceClientCustomizing.swift in Sources */, 28F95BE9225260B6003936E0 /* BacktraceFileManager.swift in Sources */, 28F95BD522526075003936E0 /* Store.swift in Sources */, @@ -1939,6 +1946,7 @@ 6EB713FA276294160075D1C1 /* MetricsRequest.swift in Sources */, 6EB713F627617ED00075D1C1 /* BacktraceMetricsContainer.swift in Sources */, 28F95BC822526023003936E0 /* URLSession+Sync.swift in Sources */, + 2840D74228BD34DE007663DB /* BacktraceBreadcrumbs.swift in Sources */, 28F95BED225260D3003936E0 /* AttributesProvider.swift in Sources */, 28F95BDB22526088003936E0 /* SignalContext.swift in Sources */, 6E896E932727627D0005CDF2 /* BacktraceMetrics.swift in Sources */, @@ -1960,10 +1968,12 @@ F2A81B4F23EF1730007C63E4 /* BacktraceApiProtocol.swift in Sources */, F29959AD22553B340085B5C3 /* Model.xcdatamodeld in Sources */, 28F95BE3225260A5003936E0 /* HttpMethod.swift in Sources */, + 2840D74428BD34E6007663DB /* BacktraceBreadcrumbsLogManager.swift in Sources */, 28F95BD22252606B003936E0 /* BacktraceDatabaseSettings.swift in Sources */, F29959AC2255399B0085B5C3 /* BacktraceReport.swift in Sources */, 28F95BE02252609C003936E0 /* BacktraceResponse.swift in Sources */, 6E87F5F9273332B400B90B07 /* SummedEvent.swift in Sources */, + 2840D74028BD34D2007663DB /* BacktraceBreadcrumbFileHelper.swift in Sources */, 6EB713F2276125760075D1C1 /* BacktraceMetricsSender.swift in Sources */, F26EBF3C23F21BC800A64218 /* BacktraceRateLimiter.swift in Sources */, F286353C2283685100F45412 /* Map+KeyPath.swift in Sources */, @@ -1975,28 +1985,28 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - A24A4B7D28B595D9004F5052 /* AttachmentStorageTests.swift in Sources */, - F21DD39D2255666F00404CC3 /* Quick+Throws.swift in Sources */, - A24A4B7428B595D9004F5052 /* BacktraceApiTests.swift in Sources */, - A24A4B7728B595D9004F5052 /* DispatcherTests.swift in Sources */, - A24A4B6828B595D9004F5052 /* BacktraceOomWatcherTests.swift in Sources */, + 28CC912028C9207000759230 /* Quick+Throws.swift in Sources */, + 28CC911B28C91F3B00759230 /* BacktraceMetricsTest.swift in Sources */, + 28CC912528C920B500759230 /* BacktraceDatabaseTests.swift in Sources */, F21DD39F2255666F00404CC3 /* WatcherRepositoryMock.swift in Sources */, - A24A4B5C28B595D9004F5052 /* BacktraceWatcherTests.swift in Sources */, - A24A4B7A28B595D9004F5052 /* AttributesTests.swift in Sources */, - A24A4B6E28B595D9004F5052 /* AttachmentTests.swift in Sources */, + 28CC911C28C91FAB00759230 /* DispatcherTests.swift in Sources */, F21DD3A02255666F00404CC3 /* UrlSessionMock.swift in Sources */, - A24A4B8028B595D9004F5052 /* CrashReporterTests.swift in Sources */, F21DD3A12255666F00404CC3 /* DebuggerCheckerMock.swift in Sources */, - A24A4B6528B595D9004F5052 /* BacktraceReporterTests.swift in Sources */, - A24A4B5928B595D9004F5052 /* BacktraceMetricsTest.swift in Sources */, - A24A4B6228B595D9004F5052 /* BacktraceFileManagerTests.swift in Sources */, + 28CC912428C920B000759230 /* BacktraceFileManagerTests.swift in Sources */, + 28CC911828C91EB300759230 /* BacktraceCredentialsTests.swift in Sources */, + 28CC911128C91E0000759230 /* BacktraceBreadcrumbTests.swift in Sources */, + 28CC912B28C921FA00759230 /* AttachmentTests.swift in Sources */, AFCCCE252625392300B83A28 /* ReportMetadataStorageMock.swift in Sources */, - A24A4B7128B595D9004F5052 /* BacktraceCredentialsTests.swift in Sources */, - A24A4B5F28B595D9004F5052 /* BacktraceDatabaseTests.swift in Sources */, A24A4B9328B59653004F5052 /* BacktraceNotificationObserverMock.swift in Sources */, - A24A4B6B28B595D9004F5052 /* BacktraceRateLimiterTests.swift in Sources */, AF5AB05726261BDD0003698C /* AttachmentBookmarkHandlerMock.swift in Sources */, + 28CC912328C920AB00759230 /* BacktraceOomWatcherTests.swift in Sources */, + 28CC912A28C921AD00759230 /* AttributesTests.swift in Sources */, 28F95BBE22525DCC003936E0 /* Backtrace_tvOSTests.swift in Sources */, + 28CC911D28C91FAB00759230 /* CrashReporterTests.swift in Sources */, + 28CC912C28C921FA00759230 /* AttachmentStorageTests.swift in Sources */, + 28CC912228C920A500759230 /* BacktraceReporterTests.swift in Sources */, + 28CC911928C91F3B00759230 /* BacktraceRateLimiterTests.swift in Sources */, + 28CC912128C9207800759230 /* BacktraceWatcherTests.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2317,7 +2327,7 @@ /* Begin XCBuildConfiguration section */ 28F95BC222525DCC003936E0 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = B7B445FAC6841A65683F35E9 /* Pods-Backtrace-tvOS.debug.xcconfig */; + baseConfigurationReference = B768F5337B5647F3AA850DCC /* Pods-Backtrace-tvOS.debug.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; @@ -2402,7 +2412,7 @@ }; 28F95BC322525DCC003936E0 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = DF6D8BEC5A8A487DFBD88662 /* Pods-Backtrace-tvOS.release.xcconfig */; + baseConfigurationReference = A407C5BAF89807C551411BAB /* Pods-Backtrace-tvOS.release.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; @@ -2481,7 +2491,7 @@ }; 28F95BC522525DCC003936E0 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = A5CC76178939D9A1241B1CF2 /* Pods-Backtrace-tvOSTests.debug.xcconfig */; + baseConfigurationReference = AD23CAF0B4FBFD1D1C267947 /* Pods-Backtrace-tvOSTests.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; @@ -2555,7 +2565,7 @@ }; 28F95BC622525DCC003936E0 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 5C21E6E3263D3F822055DC6F /* Pods-Backtrace-tvOSTests.release.xcconfig */; + baseConfigurationReference = 88B374494E194CC67F37AA64 /* Pods-Backtrace-tvOSTests.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; @@ -2623,7 +2633,7 @@ }; F266B82421C77AC800D14417 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 88EED3675F32568EE8208086 /* Pods-Backtrace-macOS.debug.xcconfig */; + baseConfigurationReference = FC8B1629A1BFC7FC335B6405 /* Pods-Backtrace-macOS.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; @@ -2711,7 +2721,7 @@ }; F266B82521C77AC800D14417 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 57F2B4E685B75CC731674666 /* Pods-Backtrace-macOS.release.xcconfig */; + baseConfigurationReference = 0CF6A7CDEC26CC47BDC1A1B5 /* Pods-Backtrace-macOS.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; @@ -2792,7 +2802,7 @@ }; F266B82721C77AC800D14417 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 7C6B849EED4A5BC8549A8626 /* Pods-Backtrace-macOSTests.debug.xcconfig */; + baseConfigurationReference = CDD6029B0AE2D681038D8912 /* Pods-Backtrace-macOSTests.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; @@ -2871,7 +2881,7 @@ }; F266B82821C77AC800D14417 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 1489BA2A995612C6FD63746C /* Pods-Backtrace-macOSTests.release.xcconfig */; + baseConfigurationReference = 10E0DE3EDF9D642F93962F5C /* Pods-Backtrace-macOSTests.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; @@ -2943,7 +2953,7 @@ }; F2A11C0322553C2A00354640 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = EE35372CEC0156C6473A53D9 /* Pods-Example-tvOS.debug.xcconfig */; + baseConfigurationReference = 2B5AE2B78E949D4B71E34DB6 /* Pods-Example-tvOS.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; @@ -2979,6 +2989,7 @@ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; CODE_SIGN_STYLE = Automatic; COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1.0; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = ""; ENABLE_STRICT_OBJC_MSGSEND = YES; @@ -3002,6 +3013,7 @@ "$(inherited)", "@executable_path/Frameworks", ); + MARKETING_VERSION = 1.7.4-beta2; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; ONLY_ACTIVE_ARCH = YES; @@ -3022,7 +3034,7 @@ }; F2A11C0422553C2A00354640 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 901953BC961C3FE4B5AD9833 /* Pods-Example-tvOS.release.xcconfig */; + baseConfigurationReference = D7EEA8D61F36AE78EB511F99 /* Pods-Example-tvOS.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; @@ -3058,6 +3070,7 @@ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; CODE_SIGN_STYLE = Automatic; COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1.0; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = ""; ENABLE_NS_ASSERTIONS = NO; @@ -3075,6 +3088,7 @@ "$(inherited)", "@executable_path/Frameworks", ); + MARKETING_VERSION = 1.7.4-beta2; MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = apptailors.co.backtrace.swift.tvos.example; @@ -3117,7 +3131,7 @@ }; F2C2FA6321BBD26300934744 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = DD138024A23535012B547A23 /* Pods-Backtrace-iOS.debug.xcconfig */; + baseConfigurationReference = 0780943F35E4DA622682BF23 /* Pods-Backtrace-iOS.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; @@ -3207,7 +3221,7 @@ }; F2C2FA6421BBD26300934744 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = EF393254D96BBC5B93F8B5D7 /* Pods-Backtrace-iOS.release.xcconfig */; + baseConfigurationReference = C12523DD5F31C4F093B47C63 /* Pods-Backtrace-iOS.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; @@ -3291,7 +3305,7 @@ }; F2C2FA6621BBD26300934744 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 8EB595BEA326A3C319273488 /* Pods-Backtrace-iOSTests.debug.xcconfig */; + baseConfigurationReference = 9E36EFABCF1657DBE7F84F02 /* Pods-Backtrace-iOSTests.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; @@ -3372,7 +3386,7 @@ }; F2C2FA6721BBD26300934744 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = CBD7C304EF07EB12C3629BD1 /* Pods-Backtrace-iOSTests.release.xcconfig */; + baseConfigurationReference = 75B4B04BCC0778209D23A2B1 /* Pods-Backtrace-iOSTests.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; @@ -3447,7 +3461,7 @@ }; F2D8BE1421BC065F007CFEFA /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 2AD1F18F003AEE4B504EF565 /* Pods-Example-iOS.debug.xcconfig */; + baseConfigurationReference = A957ADF0705C3F754207BF75 /* Pods-Example-iOS.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; @@ -3483,6 +3497,7 @@ CODE_SIGN_IDENTITY = "iPhone Developer"; CODE_SIGN_STYLE = Automatic; COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1.0; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = LZGFT5UUA9; ENABLE_BITCODE = NO; @@ -3507,6 +3522,7 @@ "$(inherited)", "@executable_path/Frameworks", ); + MARKETING_VERSION = 1.7.4-beta2; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; ONLY_ACTIVE_ARCH = YES; @@ -3526,7 +3542,7 @@ }; F2D8BE1521BC065F007CFEFA /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 9E745BEC22F73DD1C35CDEB1 /* Pods-Example-iOS.release.xcconfig */; + baseConfigurationReference = F46CF38C8B8CD292CA531394 /* Pods-Example-iOS.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; @@ -3562,6 +3578,7 @@ CODE_SIGN_IDENTITY = "iPhone Developer"; CODE_SIGN_STYLE = Automatic; COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1.0; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = LZGFT5UUA9; ENABLE_BITCODE = NO; @@ -3580,6 +3597,7 @@ "$(inherited)", "@executable_path/Frameworks", ); + MARKETING_VERSION = 1.7.4-beta2; MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = apptailors.co.backtrace.swift.ios.example; @@ -3599,7 +3617,7 @@ }; F2D8BE3321BC5F98007CFEFA /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 0C7CA588016EB774C992E9DC /* Pods-Example-iOS-ObjC.debug.xcconfig */; + baseConfigurationReference = CFB2D4609941D2A7CDB4D87D /* Pods-Example-iOS-ObjC.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; @@ -3674,7 +3692,7 @@ }; F2D8BE3421BC5F98007CFEFA /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 0BD25E424A2C0A01BC783DF6 /* Pods-Example-iOS-ObjC.release.xcconfig */; + baseConfigurationReference = CEDA14191C29DF670DF82160 /* Pods-Example-iOS-ObjC.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; @@ -3743,7 +3761,7 @@ }; F2D8BE5421BDA7D0007CFEFA /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = DF185FD406BBAA3FDB9AE1DA /* Pods-Example-macOS-ObjC.debug.xcconfig */; + baseConfigurationReference = E07E65E57BE4F159E102C349 /* Pods-Example-macOS-ObjC.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; @@ -3818,7 +3836,7 @@ }; F2D8BE5521BDA7D0007CFEFA /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 9FA21CD5245BFF9D3A3949ED /* Pods-Example-macOS-ObjC.release.xcconfig */; + baseConfigurationReference = ECDE19802A2EC36F62468488 /* Pods-Example-macOS-ObjC.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; diff --git a/Examples/Example-tvOS/AppDelegate.swift b/Examples/Example-tvOS/AppDelegate.swift index ca063273..5b52fb90 100644 --- a/Examples/Example-tvOS/AppDelegate.swift +++ b/Examples/Example-tvOS/AppDelegate.swift @@ -27,6 +27,8 @@ class AppDelegate: UIResponder, UIApplicationDelegate { BacktraceClient.shared = try? BacktraceClient(configuration: backtraceConfiguration) BacktraceClient.shared?.delegate = self + BacktraceClient.shared?.enableBreadcrumbs() + BacktraceClient.shared?.attributes = ["foo": "bar", "testing": true] do { @@ -38,6 +40,12 @@ class AppDelegate: UIResponder, UIApplicationDelegate { } } + let attributes = ["My Attribute":"My Attribute Value"] + _ = BacktraceClient.shared?.addBreadcrumb("My Breadcrumb", + attributes: attributes, + type: .user, + level: .error) + // Enable error free metrics https://docs.saucelabs.com/error-reporting/web-console/overview/#stability-metrics-widgets BacktraceClient.shared?.metrics.enable(settings: BacktraceMetricsSettings()) diff --git a/Podfile.lock b/Podfile.lock index 44940bc7..2fd4cbe0 100644 --- a/Podfile.lock +++ b/Podfile.lock @@ -26,7 +26,7 @@ EXTERNAL SOURCES: :path: "./Backtrace.podspec" SPEC CHECKSUMS: - Backtrace: c0124ca7e1a84bc7a3b3407671fb99a90be474e9 + Backtrace: 944489289bed0c8f1d05ecac0142424759c67605 Backtrace-PLCrashReporter: 71ddeba11834d2bcc3c19f357aaec7bf87131f89 Cassette: 074c6991391733888990dba728b7ffe00299a0a6 Nimble: 5316ef81a170ce87baf72dd961f22f89a602ff84 diff --git a/Sources/Features/Breadcrumb/BacktraceBreadcrumbFileHelper.swift b/Sources/Features/Breadcrumb/BacktraceBreadcrumbFileHelper.swift index c22477e2..1564e5b7 100644 --- a/Sources/Features/Breadcrumb/BacktraceBreadcrumbFileHelper.swift +++ b/Sources/Features/Breadcrumb/BacktraceBreadcrumbFileHelper.swift @@ -1,6 +1,7 @@ import Foundation +#if os(iOS) || os(macOS) import Cassette - +#endif enum BacktraceBreadcrumbFileHelperError: Error { case invalidFormat } @@ -15,16 +16,20 @@ enum BacktraceBreadcrumbFileHelperError: Error { private let maximumIndividualBreadcrumbSize: Int private let maxQueueFileSizeBytes: Int + private let breadcrumbLogURL: URL +#if os(tvOS) + private lazy var breadcrumbs: [String] = { + let breadcrumbs = getSavedBreadcrumbList() + return breadcrumbs + }() +#else private let queue: CASQueueFile - +#endif /** CASQueueFile is not thread safe, so all interactions with it should be done synchronously through this DispathQueue */ private let dispatchQueue = DispatchQueue(label: "io.backtrace.BacktraceBreadcrumbFileHelper@\(UUID().uuidString)") public init(_ breadcrumbSettings: BacktraceBreadcrumbSettings) throws { - self.queue = try CASQueueFile.init(path: breadcrumbSettings.getBreadcrumbLogPath().path) - self.maximumIndividualBreadcrumbSize = breadcrumbSettings.maxIndividualBreadcrumbSizeBytes - if breadcrumbSettings.maxQueueFileSizeBytes < BacktraceBreadcrumbFileHelper.minimumQueueFileSizeBytes { BacktraceLogger.warning("\(breadcrumbSettings.maxQueueFileSizeBytes) is smaller than the minimum of " + "\(BacktraceBreadcrumbFileHelper.minimumQueueFileSizeBytes)" + @@ -33,7 +38,10 @@ enum BacktraceBreadcrumbFileHelperError: Error { } else { self.maxQueueFileSizeBytes = breadcrumbSettings.maxQueueFileSizeBytes } - + self.breadcrumbLogURL = try breadcrumbSettings.getBreadcrumbLogPath() +#if os(iOS) || os(macOS) + self.queue = try CASQueueFile.init(path: self.breadcrumbLogURL.path) +#endif super.init() } @@ -55,12 +63,20 @@ enum BacktraceBreadcrumbFileHelperError: Error { do { try dispatchQueue.sync { +#if os(tvOS) + while (queueByteSize() + textBytes.count) > (maxQueueFileSizeBytes - 512), + !breadcrumbs.isEmpty { + breadcrumbs.remove(at: 0) + } + breadcrumbs.append(text) + try breadcrumbsText.write(to: breadcrumbLogURL, atomically: true, encoding: .utf8) +#else // Keep removing until there's enough space to add the new breadcrumb (leaving 512 bytes room) while (queueByteSize() + textBytes.count) > (maxQueueFileSizeBytes - 512) { try queue.pop(1, error: ()) } - try queue.add(textBytes, error: ()) +#endif } } catch { BacktraceLogger.warning("\(error.localizedDescription) \nWhen adding breadcrumb to file") @@ -73,7 +89,11 @@ enum BacktraceBreadcrumbFileHelperError: Error { func clear() -> Bool { do { try dispatchQueue.sync { - try queue.clearAndReturnError() +#if os(tvOS) + try "".write(to: breadcrumbLogURL, atomically: false, encoding: .utf8) +#else + try queue.clearAndReturnError() +#endif } } catch { BacktraceLogger.warning("\(error.localizedDescription) \nWhen clearing breadcrumb file") @@ -92,8 +112,26 @@ extension BacktraceBreadcrumbFileHelper { } throw BacktraceBreadcrumbFileHelperError.invalidFormat } - +#if os(tvOS) + var breadcrumbsText: String { + breadcrumbs.joined(separator: "") + } + + func getSavedBreadcrumbList() -> [String] { + do { + let fileContent = try String(contentsOf: breadcrumbLogURL, encoding: .utf8).trimmingCharacters(in: CharacterSet.whitespacesAndNewlines) + return fileContent.components(separatedBy: "\n").filter({ !$0.isEmpty }).map({ "\n" + $0 + "\n" }) + } catch { + print(error.localizedDescription) + return [String]() + } + } +#endif func queueByteSize() -> Int { +#if os(tvOS) + let textBytes = Data(breadcrumbsText.utf8) + return textBytes.count +#else // This is the current fileLength of the QueueFile guard let fileLength = queue.value(forKey: "fileLength") as? Int else { BacktraceLogger.error("fileLength is not an Int, this is unexpected!") @@ -109,5 +147,6 @@ extension BacktraceBreadcrumbFileHelper { } return fileLength - remainingBytes +#endif } } diff --git a/Sources/Features/Breadcrumb/BacktraceNotificationObserver.swift b/Sources/Features/Breadcrumb/BacktraceNotificationObserver.swift index a2225343..1c4f3df8 100644 --- a/Sources/Features/Breadcrumb/BacktraceNotificationObserver.swift +++ b/Sources/Features/Breadcrumb/BacktraceNotificationObserver.swift @@ -20,12 +20,13 @@ protocol BacktraceNotificationObserverDelegate: class { init(breadcrumbs: BacktraceBreadcrumbs) { self.breadcrumbs = breadcrumbs var handlerDelegates: [BacktraceNotificationHandlerDelegate] = [ - BacktraceMemoryNotificationObserver(), - BacktraceBatteryNotificationObserver()] + BacktraceMemoryNotificationObserver()] #if os(iOS) handlerDelegates.append(BacktraceOrientationNotificationObserver()) handlerDelegates.append(BacktraceAppStateNotificationObserver()) handlerDelegates.append(BacktraceCallNotificationObserver()) +#elseif os(OSX) + handlerDelegates.append(BacktraceBatteryNotificationObserver()) #endif self.handlerDelegates = handlerDelegates super.init() @@ -212,6 +213,7 @@ func powerSourceObserver(context: UnsafeMutableRawPointer?) { } #endif +#if os(iOS) || os(OSX) class BacktraceBatteryNotificationObserver: NSObject, BacktraceNotificationHandlerDelegate { weak var delegate: BacktraceNotificationObserverDelegate? @@ -336,6 +338,7 @@ class BacktraceBatteryNotificationObserver: NSObject, BacktraceNotificationHandl } #endif } +#endif #if os(iOS) // MARK: - Application State Observer diff --git a/Sources/Public/BacktraceClient.swift b/Sources/Public/BacktraceClient.swift index 12b2fcbf..4b72f5e5 100644 --- a/Sources/Public/BacktraceClient.swift +++ b/Sources/Public/BacktraceClient.swift @@ -12,10 +12,8 @@ import Foundation /// Error-free metrics class instance @objc private let metricsInstance: BacktraceMetrics -#if os(iOS) || os(OSX) /// Breadcrumbs class instance @objc private let breadcrumbsInstance: BacktraceBreadcrumbs = BacktraceBreadcrumbs() -#endif private let reporter: BacktraceReporter private let dispatcher: Dispatching @@ -220,7 +218,6 @@ extension BacktraceClient: BacktraceMetricsProtocol { } // MARK: - BacktraceBreadcrumbProtocol -#if os(iOS) || os(OSX) extension BacktraceClient: BacktraceBreadcrumbProtocol { @objc public var breadcrumbs: BacktraceBreadcrumbs { return self.breadcrumbsInstance @@ -265,4 +262,3 @@ extension BacktraceClient: BacktraceBreadcrumbProtocol { return breadcrumbsInstance.clear() } } -#endif diff --git a/Sources/Public/BacktraceClientCustomizing.swift b/Sources/Public/BacktraceClientCustomizing.swift index 458e07b7..b3741cff 100644 --- a/Sources/Public/BacktraceClientCustomizing.swift +++ b/Sources/Public/BacktraceClientCustomizing.swift @@ -1,13 +1,8 @@ import Foundation /// Type-alias of `BacktraceClient` type. Custom Backtrace client have to implement all of these protocols. -#if os(iOS) || os(OSX) public typealias BacktraceClientProtocol = BacktraceReporting & BacktraceClientCustomizing & BacktraceLogging & BacktraceMetricsProtocol & BacktraceBreadcrumbProtocol -#else -public typealias BacktraceClientProtocol = BacktraceReporting & BacktraceClientCustomizing & - BacktraceLogging & BacktraceMetricsProtocol -#endif /// Type-alias of passing attributes to library. public typealias Attributes = [String: Any] @@ -104,7 +99,6 @@ enum BacktraceUrlParsingError: Error { case invalidInput(String) } -#if os(iOS) || os(OSX) /// Provides Breadcrumb adding functionality to `BacktraceClient`. @objc public protocol BacktraceBreadcrumbProtocol { @objc var breadcrumbs: BacktraceBreadcrumbs { get } @@ -175,4 +169,3 @@ enum BacktraceUrlParsingError: Error { /// @objc func clearBreadcrumbs() -> Bool } -#endif diff --git a/Tests/BacktraceBreadcrumbTests.swift b/Tests/BacktraceBreadcrumbTests.swift index 47ff5b16..ad5df354 100644 --- a/Tests/BacktraceBreadcrumbTests.swift +++ b/Tests/BacktraceBreadcrumbTests.swift @@ -175,7 +175,11 @@ final class BacktraceBreadcrumbTests: QuickSpec { let breadcrumbText = self.readBreadcrumbText()! // Not very scientific, but this is apparently when the file wraps + #if canImport(Cassette) let wrapIndex = 742 + #else + let wrapIndex = 733 + #endif for readIndex in 0...wrapIndex { // should have been rolled away expect { breadcrumbText }.toNot(contain("\"this is Breadcrumb number \(readIndex)\"")) @@ -230,12 +234,26 @@ final class BacktraceBreadcrumbTests: QuickSpec { expect { backtraceObserverMock2.startObservingCalled }.to(beTrue()) } } -#if os(iOS) + +#if os(tvOS) + describe("when tvOS notifications update") { + context("for memory warning notification") { + it("tvOS breadcrumb added") { + backtraceBreadcrumbs.enableBreadcrumbs() + // Simulate memory event: + // https://stackoverflow.com/questions/4717138/ios-development-how-can-i-induce-low-memory-warnings-on-device + // Can't seem to control much of the levels (warning vs fatal, etc), so we just test the warning level + UIControl().sendAction(Selector(("_performMemoryWarning")), to: UIApplication.shared, for: nil) + + expect { self.readBreadcrumbText() }.toEventually(contain("Warning level memory pressure event")) + } + } + } +#elseif os(iOS) describe("when iOS notifications update") { context("for memory warning notification") { it("iOS breadcrumb added") { backtraceBreadcrumbs.enableBreadcrumbs() - // Simulate memory event: // https://stackoverflow.com/questions/4717138/ios-development-how-can-i-induce-low-memory-warnings-on-device // Can't seem to control much of the levels (warning vs fatal, etc), so we just test the warning level diff --git a/Tests/Mocks/BacktraceNotificationObserverMock.swift b/Tests/Mocks/BacktraceNotificationObserverMock.swift index d1a3a41e..5339583b 100644 --- a/Tests/Mocks/BacktraceNotificationObserverMock.swift +++ b/Tests/Mocks/BacktraceNotificationObserverMock.swift @@ -2,7 +2,6 @@ import Foundation import XCTest @testable import Backtrace -#if os(iOS) || os(OSX) class BacktraceObserverMock: BacktraceNotificationHandlerDelegate { var delegate: BacktraceNotificationObserverDelegate? @@ -14,4 +13,3 @@ class BacktraceObserverMock: BacktraceNotificationHandlerDelegate { startObservingCalled = true } } -#endif