From 95df58dd757d2ee867cf238a30b40649839d6196 Mon Sep 17 00:00:00 2001 From: Christopher Snowhill Date: Fri, 17 Jun 2022 00:11:48 -0700 Subject: [PATCH] [Crash Reporting] Replace Bugsnag with Crashlytics It was a fun ride, but I think I want to try something different. Users, please be sure not to have DNS blocking for Crashlytics if you want me to have any useful bug reporting info if it crashes on you, or otherwise blows up. Otherwise, I don't get any useful data to help me fix crashes. Signed-off-by: Christopher Snowhill --- .gitmodules | 3 - Application/MediaKeysApplication.m | 10 +- Audio/PluginController.mm | 5 - Cog.xcodeproj/project.pbxproj | 262 +++++------------- .../xcshareddata/swiftpm/Package.resolved | 113 ++++++++ GoogleService-Info.plist | 34 +++ Info.plist | 5 - ThirdParty/bugsnag-cocoa | 1 - 8 files changed, 221 insertions(+), 212 deletions(-) create mode 100644 Cog.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved create mode 100644 GoogleService-Info.plist delete mode 160000 ThirdParty/bugsnag-cocoa diff --git a/.gitmodules b/.gitmodules index 03f20ceaf..3adc906a4 100644 --- a/.gitmodules +++ b/.gitmodules @@ -22,6 +22,3 @@ [submodule "Audio/ThirdParty/r8brain-free-src"] path = Audio/ThirdParty/r8brain-free-src url = https://github.com/kode54/r8brain-free-src -[submodule "ThirdParty/bugsnag-cocoa"] - path = ThirdParty/bugsnag-cocoa - url = https://github.com/bugsnag/bugsnag-cocoa diff --git a/Application/MediaKeysApplication.m b/Application/MediaKeysApplication.m index fa1831ba5..569b1f4e1 100644 --- a/Application/MediaKeysApplication.m +++ b/Application/MediaKeysApplication.m @@ -16,22 +16,18 @@ #import #import -#import +@import Firebase; @implementation MediaKeysApplication { AppController *_appController; } -- (void)reportException:(NSException *)theException { - [Bugsnag notify:theException]; - [super reportException:theException]; -} - - (void)finishLaunching { [super finishLaunching]; _appController = (AppController *)[self delegate]; - [Bugsnag start]; + [[NSUserDefaults standardUserDefaults] registerDefaults:@{@"NSApplicationCrashOnExceptions" : @(YES)}]; + [FIRApp configure]; MPRemoteCommandCenter *remoteCommandCenter = [MPRemoteCommandCenter sharedCommandCenter]; diff --git a/Audio/PluginController.mm b/Audio/PluginController.mm index 7d35c5ecc..9420668ba 100644 --- a/Audio/PluginController.mm +++ b/Audio/PluginController.mm @@ -365,11 +365,6 @@ static PluginController *sharedPluginController = nil; \n\ \n\ \n\ -\tbugsnag\n\ -\t\n\ -\t\tapiKey\n\ -\t\tfd4d71d1f019581c562edab9ca019e4b\n\ -\t\n\ \tCFBundleDevelopmentRegion\n\ \tEnglish\n\ \tCFBundleDocumentTypes\n\ diff --git a/Cog.xcodeproj/project.pbxproj b/Cog.xcodeproj/project.pbxproj index 7f4cdfc60..2fe40e834 100644 --- a/Cog.xcodeproj/project.pbxproj +++ b/Cog.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 46; + objectVersion = 52; objects = { /* Begin PBXBuildFile section */ @@ -106,7 +106,6 @@ 832C1253180BD1E2005507C1 /* Cog.help in Resources */ = {isa = PBXBuildFile; fileRef = 832C1252180BD1E2005507C1 /* Cog.help */; }; 832CFC4F2851AA1A002AC26F /* NSView+Visibility.m in Sources */ = {isa = PBXBuildFile; fileRef = 832CFC4E2851AA1A002AC26F /* NSView+Visibility.m */; }; 832CFC562851AA8B002AC26F /* SpectrumViewLegacy.m in Sources */ = {isa = PBXBuildFile; fileRef = 832CFC552851AA8B002AC26F /* SpectrumViewLegacy.m */; }; - 833C02672855642F00A7A159 /* Bugsnag.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 837E5ACB2852D5B80020D205 /* Bugsnag.framework */; }; 833D0C2527C4ABB80060E16A /* ScriptAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 833D0C2427C4ABB80060E16A /* ScriptAdditions.m */; }; 83489C6B2782F78700BDCEA2 /* libvgmPlayer.bundle in CopyFiles */ = {isa = PBXBuildFile; fileRef = 83489C542782F2DF00BDCEA2 /* libvgmPlayer.bundle */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 8349270C27B4EFFC0009AB2B /* duplicateItemsTemplate.pdf in Resources */ = {isa = PBXBuildFile; fileRef = 8349270127B4EFFC0009AB2B /* duplicateItemsTemplate.pdf */; }; @@ -153,8 +152,6 @@ 8377C6B927B900F000E8BC0F /* SpectrumItem.m in Sources */ = {isa = PBXBuildFile; fileRef = 8377C6B827B900F000E8BC0F /* SpectrumItem.m */; }; 837DC92B285B05710005C58A /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 837DC92A285B05710005C58A /* CoreData.framework */; }; 837DC931285B3F790005C58A /* DataModel.xcdatamodeld in Sources */ = {isa = PBXBuildFile; fileRef = 837DC92F285B3F790005C58A /* DataModel.xcdatamodeld */; }; - 837E5ADF2852D5FD0020D205 /* Bugsnag.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 837E5ACB2852D5B80020D205 /* Bugsnag.framework */; }; - 837E5AE02852D5FD0020D205 /* Bugsnag.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 837E5ACB2852D5B80020D205 /* Bugsnag.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 8381A09227C5F72F00A1C530 /* SHA256Digest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8381A09127C5F72F00A1C530 /* SHA256Digest.m */; }; 8384914018083E4E00E7332D /* filetype.icns in Resources */ = {isa = PBXBuildFile; fileRef = 8384913D18083E4E00E7332D /* filetype.icns */; }; 8384915918083EAB00E7332D /* infoTemplate.pdf in Resources */ = {isa = PBXBuildFile; fileRef = 8384914318083EAB00E7332D /* infoTemplate.pdf */; }; @@ -177,6 +174,9 @@ 8384916E18083EAB00E7332D /* volume3Template.pdf in Resources */ = {isa = PBXBuildFile; fileRef = 8384915818083EAB00E7332D /* volume3Template.pdf */; }; 838F851E256B4E5E00C3E614 /* Sparkle.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 838F851D256B4E5E00C3E614 /* Sparkle.framework */; }; 838F851F256B4E8B00C3E614 /* Sparkle.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 838F851D256B4E5E00C3E614 /* Sparkle.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + 83978E16285C58190076ED21 /* FirebaseCrashlytics in Frameworks */ = {isa = PBXBuildFile; productRef = 83978E15285C58190076ED21 /* FirebaseCrashlytics */; }; + 83978E26285C596F0076ED21 /* FirebaseAnalytics in Frameworks */ = {isa = PBXBuildFile; productRef = 83978E25285C596F0076ED21 /* FirebaseAnalytics */; }; + 83978E29285C5C0A0076ED21 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 83978E28285C5C0A0076ED21 /* GoogleService-Info.plist */; }; 83988F0E27BE0A5900A0E89A /* RedundantPlaylistDataStore.m in Sources */ = {isa = PBXBuildFile; fileRef = 83988F0D27BE0A5900A0E89A /* RedundantPlaylistDataStore.m */; }; 8399D4E21805A55000B503B1 /* XmlContainer.m in Sources */ = {isa = PBXBuildFile; fileRef = 8399D4E01805A55000B503B1 /* XmlContainer.m */; }; 839DA7CF274A2D4C001B18E5 /* NSDictionary+Merge.m in Sources */ = {isa = PBXBuildFile; fileRef = 839DA7CE274A2D4C001B18E5 /* NSDictionary+Merge.m */; }; @@ -552,76 +552,6 @@ remoteGlobalIDString = 8359FF1617FEF35C0060F3ED; remoteInfo = ArchiveSource; }; - 837E5AC82852D5B80020D205 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 837E5ABB2852D5B80020D205 /* Bugsnag.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 00AD1C7224869B0E00A27979; - remoteInfo = "Bugsnag-iOS"; - }; - 837E5ACA2852D5B80020D205 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 837E5ABB2852D5B80020D205 /* Bugsnag.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 00AD1CAD24869C1200A27979; - remoteInfo = "Bugsnag-macOS"; - }; - 837E5ACC2852D5B80020D205 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 837E5ABB2852D5B80020D205 /* Bugsnag.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 00AD1CC924869C2400A27979; - remoteInfo = "Bugsnag-tvOS"; - }; - 837E5ACE2852D5B80020D205 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 837E5ABB2852D5B80020D205 /* Bugsnag.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = CBBDE8F8280067AB0070DCD3; - remoteInfo = "Bugsnag-watchOS"; - }; - 837E5AD02852D5B80020D205 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 837E5ABB2852D5B80020D205 /* Bugsnag.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 00AD1CE424869C6C00A27979; - remoteInfo = BugsnagStatic; - }; - 837E5AD22852D5B80020D205 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 837E5ABB2852D5B80020D205 /* Bugsnag.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 00AD1C7B24869B0E00A27979; - remoteInfo = "Bugsnag-iOSTests"; - }; - 837E5AD42852D5B80020D205 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 837E5ABB2852D5B80020D205 /* Bugsnag.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 00AD1CB524869C1200A27979; - remoteInfo = "Bugsnag-macOSTests"; - }; - 837E5AD62852D5B80020D205 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 837E5ABB2852D5B80020D205 /* Bugsnag.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 00AD1CD124869C2400A27979; - remoteInfo = "Bugsnag-tvOSTests"; - }; - 837E5AD82852D5B80020D205 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 837E5ABB2852D5B80020D205 /* Bugsnag.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = CBBDE901280067AB0070DCD3; - remoteInfo = "Bugsnag-watchOSTests"; - }; - 837E5ADA2852D5B80020D205 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 837E5ABB2852D5B80020D205 /* Bugsnag.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 01A6176B2733CFEA00024A0B; - remoteInfo = "TestHost-iOS"; - }; 83B066A0180D5669008E3612 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 83B0669C180D5668008E3612 /* MIDI.xcodeproj */; @@ -808,7 +738,6 @@ 836EF0E027BB98A800BF35B2 /* libopus.0.dylib in CopyFiles */, 836EF0CB27BB91EE00BF35B2 /* libFLAC.8.dylib in CopyFiles */, 836EF0CA27BB91EB00BF35B2 /* libvorbis.0.dylib in CopyFiles */, - 837E5AE02852D5FD0020D205 /* Bugsnag.framework in CopyFiles */, 836EF0C927BB91E900BF35B2 /* libvorbisfile.3.dylib in CopyFiles */, 836EF0C827BB91E600BF35B2 /* libogg.0.dylib in CopyFiles */, 83AA7D07279EBCAF00087AA4 /* libswresample.4.dylib in CopyFiles */, @@ -1066,7 +995,6 @@ 8377C6B827B900F000E8BC0F /* SpectrumItem.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = SpectrumItem.m; path = Visualization/SpectrumItem.m; sourceTree = ""; }; 837DC92A285B05710005C58A /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; }; 837DC930285B3F790005C58A /* DataModel.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = DataModel.xcdatamodel; sourceTree = ""; }; - 837E5ABB2852D5B80020D205 /* Bugsnag.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Bugsnag.xcodeproj; path = "ThirdParty/bugsnag-cocoa/Bugsnag.xcodeproj"; sourceTree = ""; }; 8381A09027C5F72F00A1C530 /* SHA256Digest.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SHA256Digest.h; sourceTree = ""; }; 8381A09127C5F72F00A1C530 /* SHA256Digest.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SHA256Digest.m; sourceTree = ""; }; 8384912518080F2D00E7332D /* Logging.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Logging.h; sourceTree = ""; }; @@ -1092,6 +1020,7 @@ 83859520234FEB35004E9946 /* Cog.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Cog.entitlements; sourceTree = ""; }; 838F84FF25687C5C00C3E614 /* Cog-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Cog-Bridging-Header.h"; sourceTree = ""; }; 838F851D256B4E5E00C3E614 /* Sparkle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Sparkle.framework; path = ThirdParty/Frameworks/Sparkle.framework; sourceTree = ""; }; + 83978E28285C5C0A0076ED21 /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = ""; }; 83988F0C27BE0A5900A0E89A /* RedundantPlaylistDataStore.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RedundantPlaylistDataStore.h; sourceTree = ""; }; 83988F0D27BE0A5900A0E89A /* RedundantPlaylistDataStore.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = RedundantPlaylistDataStore.m; sourceTree = ""; }; 8399D4E01805A55000B503B1 /* XmlContainer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = XmlContainer.m; sourceTree = ""; }; @@ -1172,13 +1101,13 @@ 835FAC7F27BCDF5B00BA8562 /* libavif.a in Frameworks */, 835FAC7E27BCDF5B00BA8562 /* libaom.a in Frameworks */, 837DC92B285B05710005C58A /* CoreData.framework in Frameworks */, + 83978E26285C596F0076ED21 /* FirebaseAnalytics in Frameworks */, 17BB5CF90B8A86350009ACB1 /* AudioUnit.framework in Frameworks */, 17BB5CFA0B8A86350009ACB1 /* CoreAudio.framework in Frameworks */, 838F851E256B4E5E00C3E614 /* Sparkle.framework in Frameworks */, - 833C02672855642F00A7A159 /* Bugsnag.framework in Frameworks */, 17BB5CFB0B8A86350009ACB1 /* CoreAudioKit.framework in Frameworks */, + 83978E16285C58190076ED21 /* FirebaseCrashlytics in Frameworks */, 17BB5EA60B8A87850009ACB1 /* IOKit.framework in Frameworks */, - 837E5ADF2852D5FD0020D205 /* Bugsnag.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1219,7 +1148,6 @@ 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = { isa = PBXGroup; children = ( - 837E5ABB2852D5B80020D205 /* Bugsnag.xcodeproj */, ED69CBB825BE328C0090B90D /* MASShortcut.xcodeproj */, 838F851D256B4E5E00C3E614 /* Sparkle.framework */, 17F5612A0C3BD4DC0019975C /* CogAudio.xcodeproj */, @@ -1588,6 +1516,7 @@ 29B97314FDCFA39411CA2CEA /* Cog */ = { isa = PBXGroup; children = ( + 83978E28285C5C0A0076ED21 /* GoogleService-Info.plist */, 83D0380E24A40DF2004CF90F /* CogAssets.xcassets */, 83859520234FEB35004E9946 /* Cog.entitlements */, 080E96DDFE201D6D7F000001 /* Classes */, @@ -1923,23 +1852,6 @@ name = Visualization; sourceTree = ""; }; - 837E5ABC2852D5B80020D205 /* Products */ = { - isa = PBXGroup; - children = ( - 837E5AC92852D5B80020D205 /* Bugsnag.framework */, - 837E5ACB2852D5B80020D205 /* Bugsnag.framework */, - 837E5ACD2852D5B80020D205 /* Bugsnag.framework */, - 837E5ACF2852D5B80020D205 /* Bugsnag.framework */, - 837E5AD12852D5B80020D205 /* libBugsnagStatic.a */, - 837E5AD32852D5B80020D205 /* Bugsnag-iOSTests.xctest */, - 837E5AD52852D5B80020D205 /* Bugsnag-macOSTests.xctest */, - 837E5AD72852D5B80020D205 /* Bugsnag-tvOSTests.xctest */, - 837E5AD92852D5B80020D205 /* Bugsnag-watchOSTests.xctest */, - 837E5ADB2852D5B80020D205 /* TestHost-iOS.app */, - ); - name = Products; - sourceTree = ""; - }; 83B0669D180D5668008E3612 /* Products */ = { isa = PBXGroup; children = ( @@ -2102,7 +2014,7 @@ 177FD1000B90CB570011C3B5 /* CopyFiles */, 07DFC3930ECDF80100DA400D /* CopyFiles */, 8384911C1807E9ED00E7332D /* Run version generator script */, - 837E5AE12852D9A00020D205 /* Run bugsnag symbol upload */, + 83978E27285C5A4C0076ED21 /* Run Crashlytics symbol upload */, ); buildRules = ( ); @@ -2140,6 +2052,10 @@ 17643CBC0D5BD44900F0A9FE /* PBXTargetDependency */, ); name = Cog; + packageProductDependencies = ( + 83978E15285C58190076ED21 /* FirebaseCrashlytics */, + 83978E25285C596F0076ED21 /* FirebaseAnalytics */, + ); productInstallPath = "$(HOME)/Applications"; productName = Cog; productReference = 1770424E0B8BC41800B86321 /* Cog.app */; @@ -2177,6 +2093,9 @@ ja, ); mainGroup = 29B97314FDCFA39411CA2CEA /* Cog */; + packageReferences = ( + 83978E14285C58190076ED21 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */, + ); projectDirPath = ""; projectReferences = ( { @@ -2191,10 +2110,6 @@ ProductGroup = 8359FF2D17FEF35C0060F3ED /* Products */; ProjectRef = 8359FF2C17FEF35C0060F3ED /* ArchiveSource.xcodeproj */; }, - { - ProductGroup = 837E5ABC2852D5B80020D205 /* Products */; - ProjectRef = 837E5ABB2852D5B80020D205 /* Bugsnag.xcodeproj */; - }, { ProductGroup = 17F5612B0C3BD4DC0019975C /* Products */; ProjectRef = 17F5612A0C3BD4DC0019975C /* CogAudio.xcodeproj */; @@ -2481,76 +2396,6 @@ remoteRef = 8372C92F27C785BE00E250C9 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 837E5AC92852D5B80020D205 /* Bugsnag.framework */ = { - isa = PBXReferenceProxy; - fileType = wrapper.framework; - path = Bugsnag.framework; - remoteRef = 837E5AC82852D5B80020D205 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 837E5ACB2852D5B80020D205 /* Bugsnag.framework */ = { - isa = PBXReferenceProxy; - fileType = wrapper.framework; - path = Bugsnag.framework; - remoteRef = 837E5ACA2852D5B80020D205 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 837E5ACD2852D5B80020D205 /* Bugsnag.framework */ = { - isa = PBXReferenceProxy; - fileType = wrapper.framework; - path = Bugsnag.framework; - remoteRef = 837E5ACC2852D5B80020D205 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 837E5ACF2852D5B80020D205 /* Bugsnag.framework */ = { - isa = PBXReferenceProxy; - fileType = wrapper.framework; - path = Bugsnag.framework; - remoteRef = 837E5ACE2852D5B80020D205 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 837E5AD12852D5B80020D205 /* libBugsnagStatic.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libBugsnagStatic.a; - remoteRef = 837E5AD02852D5B80020D205 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 837E5AD32852D5B80020D205 /* Bugsnag-iOSTests.xctest */ = { - isa = PBXReferenceProxy; - fileType = wrapper.cfbundle; - path = "Bugsnag-iOSTests.xctest"; - remoteRef = 837E5AD22852D5B80020D205 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 837E5AD52852D5B80020D205 /* Bugsnag-macOSTests.xctest */ = { - isa = PBXReferenceProxy; - fileType = wrapper.cfbundle; - path = "Bugsnag-macOSTests.xctest"; - remoteRef = 837E5AD42852D5B80020D205 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 837E5AD72852D5B80020D205 /* Bugsnag-tvOSTests.xctest */ = { - isa = PBXReferenceProxy; - fileType = wrapper.cfbundle; - path = "Bugsnag-tvOSTests.xctest"; - remoteRef = 837E5AD62852D5B80020D205 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 837E5AD92852D5B80020D205 /* Bugsnag-watchOSTests.xctest */ = { - isa = PBXReferenceProxy; - fileType = wrapper.cfbundle; - path = "Bugsnag-watchOSTests.xctest"; - remoteRef = 837E5AD82852D5B80020D205 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 837E5ADB2852D5B80020D205 /* TestHost-iOS.app */ = { - isa = PBXReferenceProxy; - fileType = wrapper.application; - path = "TestHost-iOS.app"; - remoteRef = 837E5ADA2852D5B80020D205 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; 83B066A1180D5669008E3612 /* MIDI.bundle */ = { isa = PBXReferenceProxy; fileType = wrapper.cfbundle; @@ -2700,6 +2545,7 @@ 83ED3AD1279A91C000904199 /* hdcdLogoTemplate.pdf in Resources */, 836F462328207F55005B9B87 /* PlayNormal.png in Resources */, 8384916318083EAB00E7332D /* repeatModeAlbumTemplate.pdf in Resources */, + 83978E29285C5C0A0076ED21 /* GoogleService-Info.plist in Resources */, 8384916118083EAB00E7332D /* previousTemplate.pdf in Resources */, 1778D3B00F645A190037E7A0 /* missingArt.png in Resources */, 8384915918083EAB00E7332D /* infoTemplate.pdf in Resources */, @@ -2709,24 +2555,6 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ - 837E5AE12852D9A00020D205 /* Run bugsnag symbol upload */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 8; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - ); - name = "Run bugsnag symbol upload"; - outputFileListPaths = ( - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 1; - shellPath = /usr/bin/ruby; - shellScript = "fork do\n Process.setsid\n STDIN.reopen(\"/dev/null\")\n STDOUT.reopen(\"/dev/null\", \"a\")\n STDERR.reopen(\"/dev/null\", \"a\")\n\n require 'shellwords'\n\n Dir[\"#{ENV[\"DWARF_DSYM_FOLDER_PATH\"]}/*/Contents/Resources/DWARF/*\"].each do |dsym|\n system(\"curl --http1.1 -F apiKey=fd4d71d1f019581c562edab9ca019e4b -F dsym=@#{Shellwords.escape(dsym)} -F projectRoot=#{Shellwords.escape(ENV[\"PROJECT_DIR\"])} https://upload.bugsnag.com/\")\n end\nend\n"; - }; 8384911C1807E9ED00E7332D /* Run version generator script */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -2741,6 +2569,26 @@ shellPath = /bin/sh; shellScript = "\"${PROJECT_DIR}/Scripts/genversion.sh\"\n"; }; + 83978E27285C5A4C0076ED21 /* Run Crashlytics symbol upload */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 12; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${TARGET_NAME}", + "$(SRCROOT)/$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)", + ); + name = "Run Crashlytics symbol upload"; + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${BUILD_DIR%/Build/*}/SourcePackages/checkouts/firebase-ios-sdk/Crashlytics/run\"\n"; + }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ @@ -3115,7 +2963,11 @@ HEADER_SEARCH_PATHS = ThirdParty/avif/include; INFOPLIST_FILE = Info.plist; INSTALL_PATH = "$(HOME)/Applications"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); LIBRARY_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/ThirdParty/avif/lib", @@ -3164,7 +3016,11 @@ HEADER_SEARCH_PATHS = ThirdParty/avif/include; INFOPLIST_FILE = Info.plist; INSTALL_PATH = "$(HOME)/Applications"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); LIBRARY_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/ThirdParty/avif/lib", @@ -3302,6 +3158,30 @@ }; /* End XCConfigurationList section */ +/* Begin XCRemoteSwiftPackageReference section */ + 83978E14285C58190076ED21 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */ = { + isa = XCRemoteSwiftPackageReference; + repositoryURL = "https://github.com/firebase/firebase-ios-sdk"; + requirement = { + kind = upToNextMajorVersion; + minimumVersion = 9.0.0; + }; + }; +/* End XCRemoteSwiftPackageReference section */ + +/* Begin XCSwiftPackageProductDependency section */ + 83978E15285C58190076ED21 /* FirebaseCrashlytics */ = { + isa = XCSwiftPackageProductDependency; + package = 83978E14285C58190076ED21 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */; + productName = FirebaseCrashlytics; + }; + 83978E25285C596F0076ED21 /* FirebaseAnalytics */ = { + isa = XCSwiftPackageProductDependency; + package = 83978E14285C58190076ED21 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */; + productName = FirebaseAnalytics; + }; +/* End XCSwiftPackageProductDependency section */ + /* Begin XCVersionGroup section */ 837DC92F285B3F790005C58A /* DataModel.xcdatamodeld */ = { isa = XCVersionGroup; diff --git a/Cog.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Cog.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved new file mode 100644 index 000000000..c9955dd87 --- /dev/null +++ b/Cog.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -0,0 +1,113 @@ +{ + "pins" : [ + { + "identity" : "abseil-cpp-swiftpm", + "kind" : "remoteSourceControl", + "location" : "https://github.com/firebase/abseil-cpp-SwiftPM.git", + "state" : { + "revision" : "d302de612e3d57c6f4afaf087da18fba8eac72a7", + "version" : "0.20220203.1" + } + }, + { + "identity" : "boringssl-swiftpm", + "kind" : "remoteSourceControl", + "location" : "https://github.com/firebase/boringssl-SwiftPM.git", + "state" : { + "revision" : "79db6516894a932d0ddaff3b05b9da1e4f6c4069", + "version" : "0.9.0" + } + }, + { + "identity" : "firebase-ios-sdk", + "kind" : "remoteSourceControl", + "location" : "https://github.com/firebase/firebase-ios-sdk", + "state" : { + "revision" : "2eb177effe7baf1f13ad0c5f4eb8c71a98429fb5", + "version" : "9.1.0" + } + }, + { + "identity" : "googleappmeasurement", + "kind" : "remoteSourceControl", + "location" : "https://github.com/google/GoogleAppMeasurement.git", + "state" : { + "revision" : "192cce3e0486aecfdb61102a9c694c78dc89dc48", + "version" : "9.1.0" + } + }, + { + "identity" : "googledatatransport", + "kind" : "remoteSourceControl", + "location" : "https://github.com/google/GoogleDataTransport.git", + "state" : { + "revision" : "b905c49326b72211531ed9d7baa02d724828a8dc", + "version" : "9.1.4" + } + }, + { + "identity" : "googleutilities", + "kind" : "remoteSourceControl", + "location" : "https://github.com/google/GoogleUtilities.git", + "state" : { + "revision" : "f4abe56ce62a779e64b525eb133c8fc2a84bbc1f", + "version" : "7.7.1" + } + }, + { + "identity" : "grpc-ios", + "kind" : "remoteSourceControl", + "location" : "https://github.com/grpc/grpc-ios.git", + "state" : { + "revision" : "2af4f6e9c2b18beae228f50b1198c641be859d2b", + "version" : "1.44.2-grpc" + } + }, + { + "identity" : "gtm-session-fetcher", + "kind" : "remoteSourceControl", + "location" : "https://github.com/google/gtm-session-fetcher.git", + "state" : { + "revision" : "19605024d59eaefdb1f6a2cb11ebe75df4421126", + "version" : "2.0.0" + } + }, + { + "identity" : "leveldb", + "kind" : "remoteSourceControl", + "location" : "https://github.com/firebase/leveldb.git", + "state" : { + "revision" : "0706abcc6b0bd9cedfbb015ba840e4a780b5159b", + "version" : "1.22.2" + } + }, + { + "identity" : "nanopb", + "kind" : "remoteSourceControl", + "location" : "https://github.com/firebase/nanopb.git", + "state" : { + "revision" : "819d0a2173aff699fb8c364b6fb906f7cdb1a692", + "version" : "2.30909.0" + } + }, + { + "identity" : "promises", + "kind" : "remoteSourceControl", + "location" : "https://github.com/google/promises.git", + "state" : { + "revision" : "46c1e6b5ac09d8f82c991061c659f67e573d425d", + "version" : "2.1.0" + } + }, + { + "identity" : "swift-protobuf", + "kind" : "remoteSourceControl", + "location" : "https://github.com/apple/swift-protobuf.git", + "state" : { + "revision" : "e1499bc69b9040b29184f7f2996f7bab467c1639", + "version" : "1.19.0" + } + } + ], + "version" : 2 +} diff --git a/GoogleService-Info.plist b/GoogleService-Info.plist new file mode 100644 index 000000000..a68343c58 --- /dev/null +++ b/GoogleService-Info.plist @@ -0,0 +1,34 @@ + + + + + CLIENT_ID + 408808922471-d9rq3oulde6o2et6djf7m1ul6svrpoqf.apps.googleusercontent.com + REVERSED_CLIENT_ID + com.googleusercontent.apps.408808922471-d9rq3oulde6o2et6djf7m1ul6svrpoqf + API_KEY + AIzaSyDP_Bef1CjnJHKfDBfcVFUS38JVO4dFa50 + GCM_SENDER_ID + 408808922471 + PLIST_VERSION + 1 + BUNDLE_ID + org.cogx.cog + PROJECT_ID + cog-macos + STORAGE_BUCKET + cog-macos.appspot.com + IS_ADS_ENABLED + + IS_ANALYTICS_ENABLED + + IS_APPINVITE_ENABLED + + IS_GCM_ENABLED + + IS_SIGNIN_ENABLED + + GOOGLE_APP_ID + 1:408808922471:ios:5932eaf2b161b424eba3c2 + + \ No newline at end of file diff --git a/Info.plist b/Info.plist index 89c626255..08e8e6dc3 100644 --- a/Info.plist +++ b/Info.plist @@ -2,11 +2,6 @@ - bugsnag - - apiKey - fd4d71d1f019581c562edab9ca019e4b - CFBundleDevelopmentRegion English CFBundleDocumentTypes diff --git a/ThirdParty/bugsnag-cocoa b/ThirdParty/bugsnag-cocoa deleted file mode 160000 index efd8dc7af..000000000 --- a/ThirdParty/bugsnag-cocoa +++ /dev/null @@ -1 +0,0 @@ -Subproject commit efd8dc7af9efb2d0e3748e6e2437a5081ca0b195