[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 <kode54@gmail.com>
swiftingly
Christopher Snowhill 2022-06-17 00:11:48 -07:00
parent 4e782807d8
commit 95df58dd75
8 changed files with 221 additions and 212 deletions

3
.gitmodules vendored
View File

@ -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

View File

@ -16,22 +16,18 @@
#import <MediaPlayer/MPRemoteCommandCenter.h>
#import <MediaPlayer/MPRemoteCommandEvent.h>
#import <Bugsnag/Bugsnag.h>
@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];

View File

@ -365,11 +365,6 @@ static PluginController *sharedPluginController = nil;
<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n\
<plist version=\"1.0\">\n\
<dict>\n\
\t<key>bugsnag</key>\n\
\t<dict>\n\
\t\t<key>apiKey</key>\n\
\t\t<string>fd4d71d1f019581c562edab9ca019e4b</string>\n\
\t</dict>\n\
\t<key>CFBundleDevelopmentRegion</key>\n\
\t<string>English</string>\n\
\t<key>CFBundleDocumentTypes</key>\n\

View File

@ -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 = "<group>"; };
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 = "<group>"; };
837E5ABB2852D5B80020D205 /* Bugsnag.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Bugsnag.xcodeproj; path = "ThirdParty/bugsnag-cocoa/Bugsnag.xcodeproj"; sourceTree = "<group>"; };
8381A09027C5F72F00A1C530 /* SHA256Digest.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SHA256Digest.h; sourceTree = "<group>"; };
8381A09127C5F72F00A1C530 /* SHA256Digest.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SHA256Digest.m; sourceTree = "<group>"; };
8384912518080F2D00E7332D /* Logging.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Logging.h; sourceTree = "<group>"; };
@ -1092,6 +1020,7 @@
83859520234FEB35004E9946 /* Cog.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Cog.entitlements; sourceTree = "<group>"; };
838F84FF25687C5C00C3E614 /* Cog-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Cog-Bridging-Header.h"; sourceTree = "<group>"; };
838F851D256B4E5E00C3E614 /* Sparkle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Sparkle.framework; path = ThirdParty/Frameworks/Sparkle.framework; sourceTree = "<group>"; };
83978E28285C5C0A0076ED21 /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = "<group>"; };
83988F0C27BE0A5900A0E89A /* RedundantPlaylistDataStore.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RedundantPlaylistDataStore.h; sourceTree = "<group>"; };
83988F0D27BE0A5900A0E89A /* RedundantPlaylistDataStore.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = RedundantPlaylistDataStore.m; sourceTree = "<group>"; };
8399D4E01805A55000B503B1 /* XmlContainer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = XmlContainer.m; sourceTree = "<group>"; };
@ -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 = "<group>";
};
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 = "<group>";
};
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;

View File

@ -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
}

34
GoogleService-Info.plist Normal file
View File

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CLIENT_ID</key>
<string>408808922471-d9rq3oulde6o2et6djf7m1ul6svrpoqf.apps.googleusercontent.com</string>
<key>REVERSED_CLIENT_ID</key>
<string>com.googleusercontent.apps.408808922471-d9rq3oulde6o2et6djf7m1ul6svrpoqf</string>
<key>API_KEY</key>
<string>AIzaSyDP_Bef1CjnJHKfDBfcVFUS38JVO4dFa50</string>
<key>GCM_SENDER_ID</key>
<string>408808922471</string>
<key>PLIST_VERSION</key>
<string>1</string>
<key>BUNDLE_ID</key>
<string>org.cogx.cog</string>
<key>PROJECT_ID</key>
<string>cog-macos</string>
<key>STORAGE_BUCKET</key>
<string>cog-macos.appspot.com</string>
<key>IS_ADS_ENABLED</key>
<false></false>
<key>IS_ANALYTICS_ENABLED</key>
<false></false>
<key>IS_APPINVITE_ENABLED</key>
<true></true>
<key>IS_GCM_ENABLED</key>
<true></true>
<key>IS_SIGNIN_ENABLED</key>
<true></true>
<key>GOOGLE_APP_ID</key>
<string>1:408808922471:ios:5932eaf2b161b424eba3c2</string>
</dict>
</plist>

View File

@ -2,11 +2,6 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>bugsnag</key>
<dict>
<key>apiKey</key>
<string>fd4d71d1f019581c562edab9ca019e4b</string>
</dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleDocumentTypes</key>

@ -1 +0,0 @@
Subproject commit efd8dc7af9efb2d0e3748e6e2437a5081ca0b195