Skip to content

Commit 84a6e3c

Browse files
author
Josh Holtz
authored
Mac app crash support, mac example, and gzip requests (#36)
* OSX crash support and gzip requests * Actually using a KSCrash sink and opening up kscrash support to osx * Bump some version, bump some requirements * Updated examples and added mac example * Cleaner code and other fixes from PR * Removed an early pop
1 parent 4510093 commit 84a6e3c

File tree

32 files changed

+2911
-2880
lines changed

32 files changed

+2911
-2880
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -44,5 +44,6 @@ Carthage/Checkouts
4444
**/Pods
4545

4646
# Fastlane
47+
fastlane/test_output/
4748
report.xml
4849
.env

Cartfile

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,2 +1 @@
1-
# Using KSCrash commit that fixes all platforms (this should be 1.5.8 eventually)
2-
github "kstenerud/KSCrash" "dfaa7b4ad17de7030a5d258bb5c911f8d2f08e79"
1+
github "kstenerud/KSCrash" ~> 1.5.11

Cartfile.resolved

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
github "kstenerud/KSCrash" "dfaa7b4ad17de7030a5d258bb5c911f8d2f08e79"
1+
github "kstenerud/KSCrash" "1.5.11"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,360 @@
1+
// !$*UTF8*$!
2+
{
3+
archiveVersion = 1;
4+
classes = {
5+
};
6+
objectVersion = 46;
7+
objects = {
8+
9+
/* Begin PBXBuildFile section */
10+
03E1EC7A1D09980200D46167 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 03E1EC791D09980200D46167 /* AppDelegate.swift */; };
11+
03E1EC7C1D09980200D46167 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 03E1EC7B1D09980200D46167 /* ViewController.swift */; };
12+
03E1EC7E1D09980200D46167 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 03E1EC7D1D09980200D46167 /* Assets.xcassets */; };
13+
03E1EC811D09980200D46167 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 03E1EC7F1D09980200D46167 /* Main.storyboard */; };
14+
3D3C51652A0E7C17D4EF2BE5 /* Pods_MacExample.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1ED10C52B74F9C73040FD395 /* Pods_MacExample.framework */; };
15+
/* End PBXBuildFile section */
16+
17+
/* Begin PBXFileReference section */
18+
03E1EC761D09980200D46167 /* MacExample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MacExample.app; sourceTree = BUILT_PRODUCTS_DIR; };
19+
03E1EC791D09980200D46167 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
20+
03E1EC7B1D09980200D46167 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = "<group>"; };
21+
03E1EC7D1D09980200D46167 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
22+
03E1EC801D09980200D46167 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
23+
03E1EC821D09980200D46167 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
24+
1ED10C52B74F9C73040FD395 /* Pods_MacExample.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MacExample.framework; sourceTree = BUILT_PRODUCTS_DIR; };
25+
22FCFD80D7944D19A82F5DFE /* Pods-MacExample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MacExample.release.xcconfig"; path = "Pods/Target Support Files/Pods-MacExample/Pods-MacExample.release.xcconfig"; sourceTree = "<group>"; };
26+
B8D3DB45142CD7F929E31B58 /* Pods-MacExample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MacExample.debug.xcconfig"; path = "Pods/Target Support Files/Pods-MacExample/Pods-MacExample.debug.xcconfig"; sourceTree = "<group>"; };
27+
/* End PBXFileReference section */
28+
29+
/* Begin PBXFrameworksBuildPhase section */
30+
03E1EC731D09980200D46167 /* Frameworks */ = {
31+
isa = PBXFrameworksBuildPhase;
32+
buildActionMask = 2147483647;
33+
files = (
34+
3D3C51652A0E7C17D4EF2BE5 /* Pods_MacExample.framework in Frameworks */,
35+
);
36+
runOnlyForDeploymentPostprocessing = 0;
37+
};
38+
/* End PBXFrameworksBuildPhase section */
39+
40+
/* Begin PBXGroup section */
41+
03E1EC6D1D09980100D46167 = {
42+
isa = PBXGroup;
43+
children = (
44+
03E1EC781D09980200D46167 /* MacExample */,
45+
03E1EC771D09980200D46167 /* Products */,
46+
369E8B5753AD2F54EDA60DEE /* Pods */,
47+
4865CCA4C3F8922FEF1F8163 /* Frameworks */,
48+
);
49+
sourceTree = "<group>";
50+
};
51+
03E1EC771D09980200D46167 /* Products */ = {
52+
isa = PBXGroup;
53+
children = (
54+
03E1EC761D09980200D46167 /* MacExample.app */,
55+
);
56+
name = Products;
57+
sourceTree = "<group>";
58+
};
59+
03E1EC781D09980200D46167 /* MacExample */ = {
60+
isa = PBXGroup;
61+
children = (
62+
03E1EC791D09980200D46167 /* AppDelegate.swift */,
63+
03E1EC7B1D09980200D46167 /* ViewController.swift */,
64+
03E1EC7D1D09980200D46167 /* Assets.xcassets */,
65+
03E1EC7F1D09980200D46167 /* Main.storyboard */,
66+
03E1EC821D09980200D46167 /* Info.plist */,
67+
);
68+
path = MacExample;
69+
sourceTree = "<group>";
70+
};
71+
369E8B5753AD2F54EDA60DEE /* Pods */ = {
72+
isa = PBXGroup;
73+
children = (
74+
B8D3DB45142CD7F929E31B58 /* Pods-MacExample.debug.xcconfig */,
75+
22FCFD80D7944D19A82F5DFE /* Pods-MacExample.release.xcconfig */,
76+
);
77+
name = Pods;
78+
sourceTree = "<group>";
79+
};
80+
4865CCA4C3F8922FEF1F8163 /* Frameworks */ = {
81+
isa = PBXGroup;
82+
children = (
83+
1ED10C52B74F9C73040FD395 /* Pods_MacExample.framework */,
84+
);
85+
name = Frameworks;
86+
sourceTree = "<group>";
87+
};
88+
/* End PBXGroup section */
89+
90+
/* Begin PBXNativeTarget section */
91+
03E1EC751D09980200D46167 /* MacExample */ = {
92+
isa = PBXNativeTarget;
93+
buildConfigurationList = 03E1EC851D09980200D46167 /* Build configuration list for PBXNativeTarget "MacExample" */;
94+
buildPhases = (
95+
154B52C63227C4C963616E08 /* [CP] Check Pods Manifest.lock */,
96+
03E1EC721D09980200D46167 /* Sources */,
97+
03E1EC731D09980200D46167 /* Frameworks */,
98+
03E1EC741D09980200D46167 /* Resources */,
99+
62C4CA1E1192BB6A25DCA330 /* [CP] Embed Pods Frameworks */,
100+
39144C5DEFEF2C2BEC79F58F /* [CP] Copy Pods Resources */,
101+
);
102+
buildRules = (
103+
);
104+
dependencies = (
105+
);
106+
name = MacExample;
107+
productName = MacExample;
108+
productReference = 03E1EC761D09980200D46167 /* MacExample.app */;
109+
productType = "com.apple.product-type.application";
110+
};
111+
/* End PBXNativeTarget section */
112+
113+
/* Begin PBXProject section */
114+
03E1EC6E1D09980100D46167 /* Project object */ = {
115+
isa = PBXProject;
116+
attributes = {
117+
LastSwiftUpdateCheck = 0730;
118+
LastUpgradeCheck = 0730;
119+
ORGANIZATIONNAME = RokkinCat;
120+
TargetAttributes = {
121+
03E1EC751D09980200D46167 = {
122+
CreatedOnToolsVersion = 7.3.1;
123+
};
124+
};
125+
};
126+
buildConfigurationList = 03E1EC711D09980100D46167 /* Build configuration list for PBXProject "MacExample" */;
127+
compatibilityVersion = "Xcode 3.2";
128+
developmentRegion = English;
129+
hasScannedForEncodings = 0;
130+
knownRegions = (
131+
en,
132+
Base,
133+
);
134+
mainGroup = 03E1EC6D1D09980100D46167;
135+
productRefGroup = 03E1EC771D09980200D46167 /* Products */;
136+
projectDirPath = "";
137+
projectRoot = "";
138+
targets = (
139+
03E1EC751D09980200D46167 /* MacExample */,
140+
);
141+
};
142+
/* End PBXProject section */
143+
144+
/* Begin PBXResourcesBuildPhase section */
145+
03E1EC741D09980200D46167 /* Resources */ = {
146+
isa = PBXResourcesBuildPhase;
147+
buildActionMask = 2147483647;
148+
files = (
149+
03E1EC7E1D09980200D46167 /* Assets.xcassets in Resources */,
150+
03E1EC811D09980200D46167 /* Main.storyboard in Resources */,
151+
);
152+
runOnlyForDeploymentPostprocessing = 0;
153+
};
154+
/* End PBXResourcesBuildPhase section */
155+
156+
/* Begin PBXShellScriptBuildPhase section */
157+
154B52C63227C4C963616E08 /* [CP] Check Pods Manifest.lock */ = {
158+
isa = PBXShellScriptBuildPhase;
159+
buildActionMask = 2147483647;
160+
files = (
161+
);
162+
inputPaths = (
163+
);
164+
name = "[CP] Check Pods Manifest.lock";
165+
outputPaths = (
166+
);
167+
runOnlyForDeploymentPostprocessing = 0;
168+
shellPath = /bin/sh;
169+
shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n exit 1\nfi\n";
170+
showEnvVarsInLog = 0;
171+
};
172+
39144C5DEFEF2C2BEC79F58F /* [CP] Copy Pods Resources */ = {
173+
isa = PBXShellScriptBuildPhase;
174+
buildActionMask = 2147483647;
175+
files = (
176+
);
177+
inputPaths = (
178+
);
179+
name = "[CP] Copy Pods Resources";
180+
outputPaths = (
181+
);
182+
runOnlyForDeploymentPostprocessing = 0;
183+
shellPath = /bin/sh;
184+
shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-MacExample/Pods-MacExample-resources.sh\"\n";
185+
showEnvVarsInLog = 0;
186+
};
187+
62C4CA1E1192BB6A25DCA330 /* [CP] Embed Pods Frameworks */ = {
188+
isa = PBXShellScriptBuildPhase;
189+
buildActionMask = 2147483647;
190+
files = (
191+
);
192+
inputPaths = (
193+
);
194+
name = "[CP] Embed Pods Frameworks";
195+
outputPaths = (
196+
);
197+
runOnlyForDeploymentPostprocessing = 0;
198+
shellPath = /bin/sh;
199+
shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-MacExample/Pods-MacExample-frameworks.sh\"\n";
200+
showEnvVarsInLog = 0;
201+
};
202+
/* End PBXShellScriptBuildPhase section */
203+
204+
/* Begin PBXSourcesBuildPhase section */
205+
03E1EC721D09980200D46167 /* Sources */ = {
206+
isa = PBXSourcesBuildPhase;
207+
buildActionMask = 2147483647;
208+
files = (
209+
03E1EC7C1D09980200D46167 /* ViewController.swift in Sources */,
210+
03E1EC7A1D09980200D46167 /* AppDelegate.swift in Sources */,
211+
);
212+
runOnlyForDeploymentPostprocessing = 0;
213+
};
214+
/* End PBXSourcesBuildPhase section */
215+
216+
/* Begin PBXVariantGroup section */
217+
03E1EC7F1D09980200D46167 /* Main.storyboard */ = {
218+
isa = PBXVariantGroup;
219+
children = (
220+
03E1EC801D09980200D46167 /* Base */,
221+
);
222+
name = Main.storyboard;
223+
sourceTree = "<group>";
224+
};
225+
/* End PBXVariantGroup section */
226+
227+
/* Begin XCBuildConfiguration section */
228+
03E1EC831D09980200D46167 /* Debug */ = {
229+
isa = XCBuildConfiguration;
230+
buildSettings = {
231+
ALWAYS_SEARCH_USER_PATHS = NO;
232+
CLANG_ANALYZER_NONNULL = YES;
233+
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
234+
CLANG_CXX_LIBRARY = "libc++";
235+
CLANG_ENABLE_MODULES = YES;
236+
CLANG_ENABLE_OBJC_ARC = YES;
237+
CLANG_WARN_BOOL_CONVERSION = YES;
238+
CLANG_WARN_CONSTANT_CONVERSION = YES;
239+
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
240+
CLANG_WARN_EMPTY_BODY = YES;
241+
CLANG_WARN_ENUM_CONVERSION = YES;
242+
CLANG_WARN_INT_CONVERSION = YES;
243+
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
244+
CLANG_WARN_UNREACHABLE_CODE = YES;
245+
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
246+
CODE_SIGN_IDENTITY = "-";
247+
COPY_PHASE_STRIP = NO;
248+
DEBUG_INFORMATION_FORMAT = dwarf;
249+
ENABLE_STRICT_OBJC_MSGSEND = YES;
250+
ENABLE_TESTABILITY = YES;
251+
GCC_C_LANGUAGE_STANDARD = gnu99;
252+
GCC_DYNAMIC_NO_PIC = NO;
253+
GCC_NO_COMMON_BLOCKS = YES;
254+
GCC_OPTIMIZATION_LEVEL = 0;
255+
GCC_PREPROCESSOR_DEFINITIONS = (
256+
"DEBUG=1",
257+
"$(inherited)",
258+
);
259+
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
260+
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
261+
GCC_WARN_UNDECLARED_SELECTOR = YES;
262+
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
263+
GCC_WARN_UNUSED_FUNCTION = YES;
264+
GCC_WARN_UNUSED_VARIABLE = YES;
265+
MACOSX_DEPLOYMENT_TARGET = 10.11;
266+
MTL_ENABLE_DEBUG_INFO = YES;
267+
ONLY_ACTIVE_ARCH = YES;
268+
SDKROOT = macosx;
269+
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
270+
};
271+
name = Debug;
272+
};
273+
03E1EC841D09980200D46167 /* Release */ = {
274+
isa = XCBuildConfiguration;
275+
buildSettings = {
276+
ALWAYS_SEARCH_USER_PATHS = NO;
277+
CLANG_ANALYZER_NONNULL = YES;
278+
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
279+
CLANG_CXX_LIBRARY = "libc++";
280+
CLANG_ENABLE_MODULES = YES;
281+
CLANG_ENABLE_OBJC_ARC = YES;
282+
CLANG_WARN_BOOL_CONVERSION = YES;
283+
CLANG_WARN_CONSTANT_CONVERSION = YES;
284+
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
285+
CLANG_WARN_EMPTY_BODY = YES;
286+
CLANG_WARN_ENUM_CONVERSION = YES;
287+
CLANG_WARN_INT_CONVERSION = YES;
288+
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
289+
CLANG_WARN_UNREACHABLE_CODE = YES;
290+
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
291+
CODE_SIGN_IDENTITY = "-";
292+
COPY_PHASE_STRIP = NO;
293+
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
294+
ENABLE_NS_ASSERTIONS = NO;
295+
ENABLE_STRICT_OBJC_MSGSEND = YES;
296+
GCC_C_LANGUAGE_STANDARD = gnu99;
297+
GCC_NO_COMMON_BLOCKS = YES;
298+
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
299+
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
300+
GCC_WARN_UNDECLARED_SELECTOR = YES;
301+
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
302+
GCC_WARN_UNUSED_FUNCTION = YES;
303+
GCC_WARN_UNUSED_VARIABLE = YES;
304+
MACOSX_DEPLOYMENT_TARGET = 10.11;
305+
MTL_ENABLE_DEBUG_INFO = NO;
306+
SDKROOT = macosx;
307+
};
308+
name = Release;
309+
};
310+
03E1EC861D09980200D46167 /* Debug */ = {
311+
isa = XCBuildConfiguration;
312+
baseConfigurationReference = B8D3DB45142CD7F929E31B58 /* Pods-MacExample.debug.xcconfig */;
313+
buildSettings = {
314+
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
315+
COMBINE_HIDPI_IMAGES = YES;
316+
INFOPLIST_FILE = MacExample/Info.plist;
317+
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks";
318+
PRODUCT_BUNDLE_IDENTIFIER = com.getsentry.MacExample;
319+
PRODUCT_NAME = "$(TARGET_NAME)";
320+
};
321+
name = Debug;
322+
};
323+
03E1EC871D09980200D46167 /* Release */ = {
324+
isa = XCBuildConfiguration;
325+
baseConfigurationReference = 22FCFD80D7944D19A82F5DFE /* Pods-MacExample.release.xcconfig */;
326+
buildSettings = {
327+
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
328+
COMBINE_HIDPI_IMAGES = YES;
329+
INFOPLIST_FILE = MacExample/Info.plist;
330+
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks";
331+
PRODUCT_BUNDLE_IDENTIFIER = com.getsentry.MacExample;
332+
PRODUCT_NAME = "$(TARGET_NAME)";
333+
};
334+
name = Release;
335+
};
336+
/* End XCBuildConfiguration section */
337+
338+
/* Begin XCConfigurationList section */
339+
03E1EC711D09980100D46167 /* Build configuration list for PBXProject "MacExample" */ = {
340+
isa = XCConfigurationList;
341+
buildConfigurations = (
342+
03E1EC831D09980200D46167 /* Debug */,
343+
03E1EC841D09980200D46167 /* Release */,
344+
);
345+
defaultConfigurationIsVisible = 0;
346+
defaultConfigurationName = Release;
347+
};
348+
03E1EC851D09980200D46167 /* Build configuration list for PBXNativeTarget "MacExample" */ = {
349+
isa = XCConfigurationList;
350+
buildConfigurations = (
351+
03E1EC861D09980200D46167 /* Debug */,
352+
03E1EC871D09980200D46167 /* Release */,
353+
);
354+
defaultConfigurationIsVisible = 0;
355+
defaultConfigurationName = Release;
356+
};
357+
/* End XCConfigurationList section */
358+
};
359+
rootObject = 03E1EC6E1D09980100D46167 /* Project object */;
360+
}

Examples/MacExample/MacExample.xcodeproj/project.xcworkspace/contents.xcworkspacedata

+7
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Examples/MacExample/MacExample.xcworkspace/contents.xcworkspacedata

+10
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)