braze-inc / braze-swift-sdk

Braze SDK for the Apple ecosystem, including: iOS, macOS, iPadOS, visionOS, tvOS
https://www.braze.com
Other
52 stars 19 forks source link

[Bug]: Crashed: com.braze.core #79

Closed WonkiJo closed 1 year ago

WonkiJo commented 1 year ago

Platform

iOS

Platform Version

iOS 14 +

Braze SDK Version

6.5.0

Xcode Version

14.3.1

Computer Processor

Intel

Repro Rate

100%

Steps To Reproduce

This is likely to happen when a push notification is selected. After that, the session starts and the device model is fetched.

Expected Behavior

Not crashing

Actual Incorrect Behavior

Crashing

Verbose Logs

Crashed: com.braze.core
0   MyService                   0x77c5c4 String.init(cString:)
1   MyService                   0x77bce0 deviceModel()
2   MyService                   0x77ba0c closure #1 in static Host.deviceDataLive(properties:)
3   MyService                   0x7d1760 closure #1 in Deferred.init(createPublisher:)
4   MyService                   0x7d0e58 Publisher.subscribe(_:)
5   MyService                   0x7d0fb8 protocol witness for PublisherType.subscribe(_:) in conformance Publisher<A, B>
6   MyService                   0x7cc9b8 PublisherType.sink(name:receiveCompletion:receiveValue:)
7   MyService                   0x7d0d94 closure #1 in Publisher.init(name:_:)
8   MyService                   0x7d0e58 Publisher.subscribe(_:)
9   MyService                   0x7d0fb8 protocol witness for PublisherType.subscribe(_:) in conformance Publisher<A, B>
10  MyService                   0x7cc9b8 PublisherType.sink(name:receiveCompletion:receiveValue:)
11  MyService                   0x7c68e0 closure #1 in PublisherType.map<A>(_:)
12  MyService                   0x7d0e58 Publisher.subscribe(_:)
13  MyService                   0x7d0fb8 protocol witness for PublisherType.subscribe(_:) in conformance Publisher<A, B>
14  MyService                   0x7cc9b8 PublisherType.sink(name:receiveCompletion:receiveValue:)
15  MyService                   0x7d0d94 closure #1 in Publisher.init(name:_:)
16  MyService                   0x7d0e58 Publisher.subscribe(_:)
17  MyService                   0x7d0fb8 protocol witness for PublisherType.subscribe(_:) in conformance Publisher<A, B>
18  MyService                   0x7cc9b8 PublisherType.sink(name:receiveCompletion:receiveValue:)
19  MyService                   0x7c68e0 closure #1 in PublisherType.map<A>(_:)
20  MyService                   0x7d0e58 Publisher.subscribe(_:)
21  MyService                   0x7d0fb8 protocol witness for PublisherType.subscribe(_:) in conformance Publisher<A, B>
22  MyService                   0x7cc9b8 PublisherType.sink(name:receiveCompletion:receiveValue:)
23  MyService                   0x7d0d94 closure #1 in Publisher.init(name:_:)
24  MyService                   0x7d0e58 Publisher.subscribe(_:)
25  MyService                   0x7d0fb8 protocol witness for PublisherType.subscribe(_:) in conformance Publisher<A, B>
26  MyService                   0x7cc9b8 PublisherType.sink(name:receiveCompletion:receiveValue:)
27  MyService                   0x7d3284 closure #1 in Publishers.MergeMany.init<A>(_:)
28  MyService                   0x7d0e58 Publisher.subscribe(_:)
29  MyService                   0x7d0fb8 protocol witness for PublisherType.subscribe(_:) in conformance Publisher<A, B>
30  MyService                   0x7cc9b8 PublisherType.sink(name:receiveCompletion:receiveValue:)
31  MyService                   0x7d0d94 closure #1 in Publisher.init(name:_:)
32  MyService                   0x7d0e58 Publisher.subscribe(_:)
33  MyService                   0x7d0fb8 protocol witness for PublisherType.subscribe(_:) in conformance Publisher<A, B>
34  MyService                   0x7cc9b8 PublisherType.sink(name:receiveCompletion:receiveValue:)
35  MyService                   0x7d3284 closure #1 in Publishers.MergeMany.init<A>(_:)
36  MyService                   0x7d0e58 Publisher.subscribe(_:)
37  MyService                   0x7d0fb8 protocol witness for PublisherType.subscribe(_:) in conformance Publisher<A, B>
38  MyService                   0x7cc9b8 PublisherType.sink(name:receiveCompletion:receiveValue:)
39  MyService                   0x7d0d94 closure #1 in Publisher.init(name:_:)
40  MyService                   0x7d0e58 Publisher.subscribe(_:)
41  MyService                   0x7d0fb8 protocol witness for PublisherType.subscribe(_:) in conformance Publisher<A, B>
42  MyService                   0x7cc9b8 PublisherType.sink(name:receiveCompletion:receiveValue:)
43  MyService                   0x7d3284 closure #1 in Publishers.MergeMany.init<A>(_:)
44  MyService                   0x7d0e58 Publisher.subscribe(_:)
45  MyService                   0x7d0fb8 protocol witness for PublisherType.subscribe(_:) in conformance Publisher<A, B>
46  MyService                   0x7cc9b8 PublisherType.sink(name:receiveCompletion:receiveValue:)
47  MyService                   0x7d0d94 closure #1 in Publisher.init(name:_:)
48  MyService                   0x7d0e58 Publisher.subscribe(_:)
49  MyService                   0x7d0fb8 protocol witness for PublisherType.subscribe(_:) in conformance Publisher<A, B>
50  MyService                   0x7cc9b8 PublisherType.sink(name:receiveCompletion:receiveValue:)
51  MyService                   0x7baea8 closure #1 in PublisherType.collect(_:)
52  MyService                   0x7d0e58 Publisher.subscribe(_:)
53  MyService                   0x7d0fb8 protocol witness for PublisherType.subscribe(_:) in conformance Publisher<A, B>
54  MyService                   0x7cc9b8 PublisherType.sink(name:receiveCompletion:receiveValue:)
55  MyService                   0x7ca038 closure #1 in PublisherType.replaceEmpty(with:)
56  MyService                   0x7d0e58 Publisher.subscribe(_:)
57  MyService                   0x7d0fb8 protocol witness for PublisherType.subscribe(_:) in conformance Publisher<A, B>
58  MyService                   0x7cc9b8 PublisherType.sink(name:receiveCompletion:receiveValue:)
59  MyService                   0x7587d8 specialized Publisher<>.assertSync()
60  MyService                   0x6c7544 specialized closure #1 in Reducer<>.atomics()
61  MyService                   0x7e20d8 closure #1 in Reducer.pullback<A, B, C>(state:action:environment:)
62  MyService                   0x7e3c4c partial apply for closure #1 in Reducer.pullback<A, B, C>(state:action:environment:)
63  MyService                   0x7e4538 partial apply for closure #1 in closure #1 in static Reducer.combine(_:)
64  libswiftCore.dylib             0x15b3c Collection.map<A>(_:) + 720
65  MyService                   0x7e1cfc closure #1 in static Reducer.combine(_:)
66  MyService                   0x7e4538 partial apply for closure #1 in closure #1 in static Reducer.combine(_:)
67  libswiftCore.dylib             0x15b3c Collection.map<A>(_:) + 720
68  MyService                   0x7e1cfc closure #1 in static Reducer.combine(_:)
69  MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
70  MyService                   0x7561ec specialized closure #1 in Reducer.onChange<A>(of:perform:)
71  MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
72  MyService                   0x7560b0 specialized closure #1 in Reducer.onChange<A>(of:perform:)
73  MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
74  MyService                   0x755f90 specialized closure #1 in Reducer.onChange<A>(of:perform:)
75  MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
76  MyService                   0x756418 specialized closure #1 in Reducer.onChange<A>(of:perform:)
77  MyService                   0x7e4538 partial apply for closure #1 in closure #1 in static Reducer.combine(_:)
78  libswiftCore.dylib             0x15b3c Collection.map<A>(_:) + 720
79  MyService                   0x7e1cfc closure #1 in static Reducer.combine(_:)
80  MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
81  MyService                   0x756524 specialized closure #1 in Reducer.onChange<A>(of:perform:)
82  MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
83  MyService                   0x756524 specialized closure #1 in Reducer.onChange<A>(of:perform:)
84  MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
85  MyService                   0x7573bc specialized closure #1 in Reducer.onChange<A>(of:perform:)
86  MyService                   0x7564d8 specialized closure #1 in Reducer.onChange<A>(of:perform:)
87  MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
88  MyService                   0x7573bc specialized closure #1 in Reducer.onChange<A>(of:perform:)
89  MyService                   0x7565e8 specialized closure #1 in Reducer.onChange<A>(of:perform:)
90  MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
91  MyService                   0x6c6ec4 specialized closure #1 in Reducer<>.atomics()
92  MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
93  MyService                   0x757208 specialized closure #1 in Reducer.onChange<A>(of:perform:)
94  MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
95  MyService                   0x7570f8 specialized closure #1 in Reducer.onChange<A>(of:perform:)
96  MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
97  MyService                   0x756fa8 specialized closure #1 in Reducer.onChange<A>(of:perform:)
98  MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
99  MyService                   0x756d64 specialized closure #1 in Reducer.onChange<A>(of:perform:)
100 MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
101 MyService                   0x7573bc specialized closure #1 in Reducer.onChange<A>(of:perform:)
102 MyService                   0x756c84 specialized closure #1 in Reducer.onChange<A>(of:perform:)
103 MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
104 MyService                   0x756bf0 specialized closure #1 in Reducer.onChange<A>(of:perform:)
105 MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
106 MyService                   0x756a70 specialized closure #1 in Reducer.onChange<A>(of:perform:)
107 MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
108 MyService                   0x75696c specialized closure #1 in Reducer.onChange<A>(of:perform:)
109 MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
110 MyService                   0x7568b4 specialized closure #1 in Reducer.onChange<A>(of:perform:)
111 MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
112 MyService                   0x7567fc specialized closure #1 in Reducer.onChange<A>(of:perform:)
113 MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
114 MyService                   0x75672c specialized closure #1 in Reducer.onChange<A>(of:perform:)
115 MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
116 MyService                   0x756668 specialized closure #1 in Reducer.onChange<A>(of:perform:)
117 MyService                   0x75660c specialized closure #1 in Reducer.onChange<A>(of:perform:)
118 MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
119 MyService                   0x756668 specialized closure #1 in Reducer.onChange<A>(of:perform:)
120 MyService                   0x756630 specialized closure #1 in Reducer.onChange<A>(of:perform:)
121 MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
122 MyService                   0x7573bc specialized closure #1 in Reducer.onChange<A>(of:perform:)
123 MyService                   0x757384 specialized closure #1 in Reducer.onChange<A>(of:perform:)
124 MyService                   0x7e4538 partial apply for closure #1 in closure #1 in static Reducer.combine(_:)
125 libswiftCore.dylib             0x15b3c Collection.map<A>(_:) + 720
126 MyService                   0x7e1cfc closure #1 in static Reducer.combine(_:)
127 MyService                   0x7e3b20 Reducer.callAsFunction(_:_:_:)
128 MyService                   0x7e4b34 closure #1 in Store.init<A>(initialState:reducer:environment:)
129 MyService                   0x7e51d8 Store.send(_:)
130 MyService                   0x7e77f8 ViewStore.send(_:)
131 MyService                   0x56c660 closure #1 in BrazeViewStore.start()
132 MyService                   0x56e68c partial apply for specialized closure #1 in AsyncViewStore.executeSync(_:)
133 MyService                   0x56dc40 specialized closure #1 in AsyncViewStore.execute(_:)
134 MyService                   0x5bd780 thunk for @escaping @callee_guaranteed () -> ()
135 libdispatch.dylib              0x60298 _dispatch_call_block_and_release + 24
136 libdispatch.dylib              0x61280 _dispatch_client_callout + 16
137 libdispatch.dylib              0x9dcc _dispatch_lane_serial_drain$VARIANT$mp + 612
138 libdispatch.dylib              0xa8a8 _dispatch_lane_invoke$VARIANT$mp + 424
139 libdispatch.dylib              0x14338 _dispatch_workloop_worker_thread + 712
140 libsystem_pthread.dylib        0xa5a4 _pthread_wqthread + 272
141 libsystem_pthread.dylib        0xd874 start_wqthread + 8

Additional Information

No response

jerielng commented 1 year ago

Hi @WonkiJo, thanks for reporting this crash. Could you share the device model and type you were testing this on?

You mentioned that this is reproducible 100% of the time. However, regarding this statement: This is likely to happen when a push notification is selected., does this only happen when you tap a push notification, or does it also crash when you launch the app normally?

WonkiJo commented 1 year ago

Hi, @jerielng,

Presumably it happened in clusters at a certain point in time when the push was triggered, and most of the users who received the push notification crashed within 1 second of their session. The number of users at any given time was over 200, so it's hard to pinpoint devices.

In terms of OS version, iOS15 was 54%, iOS16: 29%, iOS14: 17%.

I've been experiencing this since we recently migrated from Appboy to BrazeKitCompat. But it didn't happen in our test environment.

jerielng commented 1 year ago

Thanks @WonkiJo, we've filed an internal ticket to investigate the crash and will keep you updated on the fix.

jacksonemiller commented 1 year ago

Hi @WonkiJo, we've just released version 7.1.0 of the Swift SDK. We've added additional safeguards that should prevent crashes related to reading device model. Feel free to reopen or comment back on this thread if you continue to experience issues. Thank you!

remarcus commented 11 months ago

Hey,

We've just recently migrated to Swift SDK, currently on 7.2.0 version and noticed similar issues. I was unable to replicate it with Push Notification yet though.

Crash rate is small for now, still we're just rolling out the new app version. There are two crash variants:

First one:

Device: iPad (7th generation) iPad OS: 17.1.1 Crash time: Within 3 seconds of app launch

com.braze.http

Crashed: com.braze.http
0  libobjc.A.dylib                0x4014 objc_msgSend + 20
1  libswiftCore.dylib             0x8e790 Dictionary._Variant.removeValue(forKey:) + 180
2  libswiftCore.dylib             0x49438 Dictionary.subscript.setter + 228
3  VintedCRM                      0x39e984 Publisher.unsubscribe(_:) + 1988
4  VintedCRM                      0x3a2328 Subject.unsubscribe(_:) + 656
5  VintedCRM                      0x3a2654 partial apply for closure #1 in Subject.send(completion:) + 1468
6  libswiftCore.dylib             0xb40a8 Sequence.forEach(_:) + 492
7  VintedCRM                      0x3a2610 Subject.send(completion:) + 1400
8  VintedCRM                      0x392020 closure #1 in closure #1 in PublisherType.innerFlatMap<A, B>(maxPublishers:_:) + 2592
9  VintedCRM                      0x3a3508 Subscriber.receive(completion:) + 788
10 VintedCRM                      0x393c6c closure #1 in closure #1 in PublisherType.handleEvents(ncombine_receiveSubscriber:ncombine_receiveSubscription:receiveOutput:receiveCompletion:receiveCancel:ncombine_receiveRequest:) + 1484
11 VintedCRM                      0x3a3508 Subscriber.receive(completion:) + 788
12 VintedCRM                      0x39ba90 partial apply for implicit closure #2 in implicit closure #1 in closure #1 in PublisherType.subscribe<A>(on:options:) + 3116
13 VintedCRM                      0x3a3508 Subscriber.receive(completion:) + 788
14 VintedCRM                      0x394e48 partial apply for implicit closure #2 in implicit closure #1 in closure #1 in PublisherType.tryMap<A>(_:) + 4148
15 VintedCRM                      0x39abc8 closure #1 in PublisherType.cancellableTrySink(name:receiveCompletion:receiveValue:) + 2808
16 VintedCRM                      0x39aaa8 closure #1 in closure #2 in PublisherType.cancellableSink(name:receiveCompletion:receiveValue:) + 2520
17 VintedCRM                      0x3a3508 Subscriber.receive(completion:) + 788
18 VintedCRM                      0x394e84 partial apply for implicit closure #2 in implicit closure #1 in closure #1 in PublisherType.map<A>(_:) + 4208
19 VintedCRM                      0x3a3508 Subscriber.receive(completion:) + 788
20 VintedCRM                      0x3a2668 partial apply for closure #1 in Subject.send(completion:) + 1488
21 libswiftCore.dylib             0xb40a8 Sequence.forEach(_:) + 492
22 VintedCRM                      0x3a2610 Subject.send(completion:) + 1400
23 VintedCRM                      0x3925a4 closure #1 in closure #2 in closure #1 in PublisherType.innerFlatMap<A, B>(maxPublishers:_:) + 4004
24 VintedCRM                      0x392810 partial apply for closure #1 in closure #2 in closure #1 in PublisherType.innerFlatMap<A, B>(maxPublishers:_:) + 4624
25 VintedCRM                      0x3a3508 Subscriber.receive(completion:) + 788
26 VintedCRM                      0x39537c closure #1 in closure #1 in PublisherType.mapError<A>(_:) + 1096
27 VintedCRM                      0x3a3508 Subscriber.receive(completion:) + 788
28 VintedCRM                      0x3969b0 partial apply for closure #1 in closure #1 in closure #1 in PublisherType.receive<A>(on:options:) + 3156
29 VintedCRM                      0x188998 thunk for @escaping @callee_guaranteed () -> () + 540
30 libdispatch.dylib              0x61f68 _dispatch_call_block_and_release + 24
31 libdispatch.dylib              0x62f60 _dispatch_client_callout + 16
32 libdispatch.dylib              0xacbc _dispatch_lane_serial_drain$VARIANT$mp + 708
33 libdispatch.dylib              0xb738 _dispatch_lane_invoke$VARIANT$mp + 380
34 libdispatch.dylib              0x14f4c _dispatch_root_queue_drain_deferred_wlh + 252
35 libdispatch.dylib              0x1485c _dispatch_workloop_worker_thread + 404
36 libsystem_pthread.dylib        0x1a70 _pthread_wqthread + 284
37 libsystem_pthread.dylib        0x1b10 start_wqthread + 8

com.braze.core.persistence

com.braze.core.persistence
0  CoreFoundation                 0x515260 _approximateSizeOfPlistValue.cold.1 + 7135232608
1  CoreFoundation                 0x437a0 _CFStringGetFileSystemRepresentationWithErrorStatus + 68
2  CoreFoundation                 0x4374c CFStringGetFileSystemRepresentation + 16
3  CoreFoundation                 0x42bc8 POSIXPathToURLPath + 148
4  CoreFoundation                 0x427fc _CFURLCreateWithFileSystemPath + 1380
5  Foundation                     0xba778 +[NSURL(NSURL) fileURLWithPath:isDirectory:] + 36
6  Foundation                     0xffdac -[NSFileManager URLsForDirectory:inDomains:] + 192
7  VintedCRM                      0x133e54 specialized closure #1 in static Persistence.Client.saveLive(fileManager:destination:) + 12048
8  VintedCRM                      0x1358b8 partial apply for specialized closure #1 in static Persistence.Client.saveLive(fileManager:destination:) + 18804
9  VintedCRM                      0x357f90 thunk for @escaping @callee_guaranteed (@guaranteed Data, @guaranteed String) -> (@error @owned Error) + 448
10 VintedCRM                      0x1358d0 partial apply for thunk for @escaping @callee_guaranteed (@guaranteed Data, @guaranteed String) -> (@error @owned Error) + 18828
11 VintedCRM                      0x2195f0 specialized closure #1 in closure #1 in Persistence.Client.saveEffect(_:for:execute:) + 91308
12 VintedCRM                      0x21b1d0 specialized closure #1 in closure #1 in Persistence.Client.saveEffect(_:for:execute:) + 98444
13 VintedCRM                      0x21c854 partial apply for specialized closure #1 in closure #1 in Persistence.Client.saveEffect(_:for:execute:) + 104208
14 VintedCRM                      0x335b08 specialized closure #1 in DispatchWorkItem.init<A>(fulfill:work:) + 79536
15 VintedCRM                      0x188998 thunk for @escaping @callee_guaranteed () -> () + 540
16 libdispatch.dylib              0x11544 _dispatch_block_async_invoke2 + 104
17 libdispatch.dylib              0x62f60 _dispatch_client_callout + 16
18 libdispatch.dylib              0xacbc _dispatch_lane_serial_drain$VARIANT$mp + 708
19 libdispatch.dylib              0xb738 _dispatch_lane_invoke$VARIANT$mp + 380
20 libdispatch.dylib              0x14f4c _dispatch_root_queue_drain_deferred_wlh + 252
21 libdispatch.dylib              0x1485c _dispatch_workloop_worker_thread + 404
22 libsystem_pthread.dylib        0x1a70 _pthread_wqthread + 284
23 libsystem_pthread.dylib        0x1b10 start_wqthread + 8

and second variant:

Devices: iPhone XS, 11 Pro, 13 Pro Max, 12 Pro, 14 Pro Max, iPad (9th generation) iOS Versions: 17.1.1, 16.0.2, 16.3.0, iPad OS 17.1.1 Crash time: 1 - 3 seconds from the app launch

com.braze.core

Crashed: com.braze.core
0   libobjc.A.dylib                0x1c20 objc_msgSend + 32
1   libswiftCore.dylib             0xb5f14 Dictionary._Variant.removeValue(forKey:) + 284
2   libswiftCore.dylib             0x5a658 Dictionary.subscript.setter + 372
3   VintedCRM                      0x39e984 Publisher.unsubscribe(_:) + 1988
4   VintedCRM                      0x3a2328 Subject.unsubscribe(_:) + 656
5   VintedCRM                      0x392708 closure #3 in closure #1 in PublisherType.innerFlatMap<A, B>(maxPublishers:_:) + 4360
6   VintedCRM                      0x381634 Cancellable.deinit + 144
7   VintedCRM                      0x38166c Cancellable.__deallocating_deinit + 200
8   libswiftCore.dylib             0x3da1d4 _swift_release_dealloc + 56
9   libswiftCore.dylib             0x5a69c Dictionary.subscript.setter + 440
10  VintedCRM                      0x39e984 Publisher.unsubscribe(_:) + 1988
11  VintedCRM                      0x39ea2c protocol witness for PublisherType.unsubscribe(_:) in conformance Publisher<A, B> + 2156
12  VintedCRM                      0x39ad64 partial apply for closure #1 in PublisherType.sink(name:receiveCompletion:receiveValue:) + 3220
13  VintedCRM                      0x381634 Cancellable.deinit + 144
14  VintedCRM                      0x38166c Cancellable.__deallocating_deinit + 200
15  libswiftCore.dylib             0x3da1d4 _swift_release_dealloc + 56
16  libswiftCore.dylib             0x5a69c Dictionary.subscript.setter + 440
17  VintedCRM                      0x39e984 Publisher.unsubscribe(_:) + 1988
18  VintedCRM                      0x39ea2c protocol witness for PublisherType.unsubscribe(_:) in conformance Publisher<A, B> + 2156
19  VintedCRM                      0x39ad64 partial apply for closure #1 in PublisherType.sink(name:receiveCompletion:receiveValue:) + 3220
20  VintedCRM                      0x381634 Cancellable.deinit + 144
21  VintedCRM                      0x38166c Cancellable.__deallocating_deinit + 200
22  libswiftCore.dylib             0x3da1d4 _swift_release_dealloc + 56
23  libswiftCore.dylib             0x5a69c Dictionary.subscript.setter + 440
24  VintedCRM                      0x39e984 Publisher.unsubscribe(_:) + 1988
25  VintedCRM                      0x39ea2c protocol witness for PublisherType.unsubscribe(_:) in conformance Publisher<A, B> + 2156
26  VintedCRM                      0x39ad64 partial apply for closure #1 in PublisherType.sink(name:receiveCompletion:receiveValue:) + 3220
27  VintedCRM                      0x381634 Cancellable.deinit + 144
28  VintedCRM                      0x38166c Cancellable.__deallocating_deinit + 200
29  libswiftCore.dylib             0x3da1d4 _swift_release_dealloc + 56
30  libswiftCore.dylib             0x5a69c Dictionary.subscript.setter + 440
31  VintedCRM                      0x39e984 Publisher.unsubscribe(_:) + 1988
32  VintedCRM                      0x39ea2c protocol witness for PublisherType.unsubscribe(_:) in conformance Publisher<A, B> + 2156
33  VintedCRM                      0x39ad64 partial apply for closure #1 in PublisherType.sink(name:receiveCompletion:receiveValue:) + 3220
34  VintedCRM                      0x3816a4 Cancellable.cancel() + 256
35  VintedCRM                      0x3926f4 closure #3 in closure #1 in PublisherType.innerFlatMap<A, B>(maxPublishers:_:) + 4340
36  VintedCRM                      0x381634 Cancellable.deinit + 144
37  VintedCRM                      0x38166c Cancellable.__deallocating_deinit + 200
38  libswiftCore.dylib             0x3da1d4 _swift_release_dealloc + 56
39  libswiftCore.dylib             0x5a69c Dictionary.subscript.setter + 440
40  VintedCRM                      0x39e984 Publisher.unsubscribe(_:) + 1988
41  VintedCRM                      0x39ea2c protocol witness for PublisherType.unsubscribe(_:) in conformance Publisher<A, B> + 2156
42  VintedCRM                      0x39ad64 partial apply for closure #1 in PublisherType.sink(name:receiveCompletion:receiveValue:) + 3220
43  VintedCRM                      0x381634 Cancellable.deinit + 144
44  VintedCRM                      0x38166c Cancellable.__deallocating_deinit + 200
45  libswiftCore.dylib             0x3da1d4 _swift_release_dealloc + 56
46  libswiftCore.dylib             0x5a69c Dictionary.subscript.setter + 440
47  VintedCRM                      0x39e984 Publisher.unsubscribe(_:) + 1988
48  VintedCRM                      0x39ea2c protocol witness for PublisherType.unsubscribe(_:) in conformance Publisher<A, B> + 2156
49  VintedCRM                      0x39ad64 partial apply for closure #1 in PublisherType.sink(name:receiveCompletion:receiveValue:) + 3220
50  VintedCRM                      0x381634 Cancellable.deinit + 144
51  VintedCRM                      0x38166c Cancellable.__deallocating_deinit + 200
52  libswiftCore.dylib             0x3da1d4 _swift_release_dealloc + 56
53  libswiftCore.dylib             0x5a69c Dictionary.subscript.setter + 440
54  VintedCRM                      0x39e984 Publisher.unsubscribe(_:) + 1988
55  VintedCRM                      0x39ea2c protocol witness for PublisherType.unsubscribe(_:) in conformance Publisher<A, B> + 2156
56  VintedCRM                      0x39ad64 partial apply for closure #1 in PublisherType.sink(name:receiveCompletion:receiveValue:) + 3220
57  VintedCRM                      0x3816a4 Cancellable.cancel() + 256
58  VintedCRM                      0x3926f4 closure #3 in closure #1 in PublisherType.innerFlatMap<A, B>(maxPublishers:_:) + 4340
59  VintedCRM                      0x381634 Cancellable.deinit + 144
60  VintedCRM                      0x38166c Cancellable.__deallocating_deinit + 200
61  libswiftCore.dylib             0x3da1d4 _swift_release_dealloc + 56
62  libswiftCore.dylib             0x5a69c Dictionary.subscript.setter + 440
63  VintedCRM                      0x39e984 Publisher.unsubscribe(_:) + 1988
64  VintedCRM                      0x39ea2c protocol witness for PublisherType.unsubscribe(_:) in conformance Publisher<A, B> + 2156
65  VintedCRM                      0x39ad64 partial apply for closure #1 in PublisherType.sink(name:receiveCompletion:receiveValue:) + 3220
66  VintedCRM                      0x3816a4 Cancellable.cancel() + 256
67  VintedCRM                      0x3877cc closure #2 in closure #1 in PublisherType.catch<A>(_:) + 1644
68  VintedCRM                      0x381634 Cancellable.deinit + 144
69  VintedCRM                      0x38166c Cancellable.__deallocating_deinit + 200
70  libswiftCore.dylib             0x3da1d4 _swift_release_dealloc + 56
71  libswiftCore.dylib             0x5a69c Dictionary.subscript.setter + 440
72  VintedCRM                      0x39e984 Publisher.unsubscribe(_:) + 1988
73  VintedCRM                      0x39ea2c protocol witness for PublisherType.unsubscribe(_:) in conformance Publisher<A, B> + 2156
74  VintedCRM                      0x39ad64 partial apply for closure #1 in PublisherType.sink(name:receiveCompletion:receiveValue:) + 3220
75  VintedCRM                      0x381634 Cancellable.deinit + 144
76  VintedCRM                      0x38166c Cancellable.__deallocating_deinit + 200
77  libswiftCore.dylib             0x3da1d4 _swift_release_dealloc + 56
78  libswiftCore.dylib             0x5a69c Dictionary.subscript.setter + 440
79  VintedCRM                      0x39e984 Publisher.unsubscribe(_:) + 1988
80  VintedCRM                      0x39ea2c protocol witness for PublisherType.unsubscribe(_:) in conformance Publisher<A, B> + 2156
81  VintedCRM                      0x39ad64 partial apply for closure #1 in PublisherType.sink(name:receiveCompletion:receiveValue:) + 3220
82  VintedCRM                      0x381634 Cancellable.deinit + 144
83  VintedCRM                      0x38166c Cancellable.__deallocating_deinit + 200
84  libswiftCore.dylib             0x3da1d4 _swift_release_dealloc + 56
85  VintedCRM                      0x3a12e8 closure #1 in closure #1 in Publishers.MergeMany.init<A>(_:) + 2900
86  VintedCRM                      0x3a16b8 partial apply for closure #1 in closure #1 in Publishers.MergeMany.init<A>(_:) + 3876
87  VintedCRM                      0x3a3508 Subscriber.receive(completion:) + 788
88  VintedCRM                      0x3a3508 Subscriber.receive(completion:) + 788
89  VintedCRM                      0x3a2668 partial apply for closure #1 in Subject.send(completion:) + 1488
90  libswiftCore.dylib             0xe56d0 Sequence.forEach(_:) + 740
91  VintedCRM                      0x3a2610 Subject.send(completion:) + 1400
92  VintedCRM                      0x39ed74 partial apply for implicit closure #2 in implicit closure #1 in PublisherType.subscribe(_:) + 2996
93  VintedCRM                      0x3a3508 Subscriber.receive(completion:) + 788
94  VintedCRM                      0x3a05d0 closure #1 in Just.init(_:) + 364
95  VintedCRM                      0x39e8a4 Publisher.subscribe(_:) + 1764
96  VintedCRM                      0x39ea04 protocol witness for PublisherType.subscribe(_:) in conformance Publisher<A, B> + 2116
97  VintedCRM                      0x39a404 PublisherType.sink(name:receiveCompletion:receiveValue:) + 820
98  VintedCRM                      0x39e3f4 PublisherType.subscribe(_:) + 564
99  VintedCRM                      0x3876d0 closure #1 in closure #1 in PublisherType.catch<A>(_:) + 1392
100 VintedCRM                      0x3a3508 Subscriber.receive(completion:) + 788
101 VintedCRM                      0x3a2668 partial apply for closure #1 in Subject.send(completion:) + 1488
102 libswiftCore.dylib             0xe56d0 Sequence.forEach(_:) + 740
103 VintedCRM                      0x3a2610 Subject.send(completion:) + 1400
104 VintedCRM                      0x392038 closure #1 in closure #1 in PublisherType.innerFlatMap<A, B>(maxPublishers:_:) + 2616
105 VintedCRM                      0x3a3508 Subscriber.receive(completion:) + 788
106 VintedCRM                      0x3a3508 Subscriber.receive(completion:) + 788
107 VintedCRM                      0x3969b0 partial apply for closure #1 in closure #1 in closure #1 in PublisherType.receive<A>(on:options:) + 3156
108 VintedCRM                      0x188998 thunk for @escaping @callee_guaranteed () -> () + 540
109 libdispatch.dylib              0x24b4 _dispatch_call_block_and_release + 32
110 libdispatch.dylib              0x3fdc _dispatch_client_callout + 20
111 libdispatch.dylib              0xb694 _dispatch_lane_serial_drain + 672
112 libdispatch.dylib              0xc1e0 _dispatch_lane_invoke + 384
113 libdispatch.dylib              0x16e10 _dispatch_workloop_worker_thread + 652
114 libsystem_pthread.dylib        0xdf8 _pthread_wqthread + 288
115 libsystem_pthread.dylib        0xb98 start_wqthread + 8
lowip commented 11 months ago

Hi @remarcus,

Thanks for those stack traces. We'll take a look and try to reproduce them. We'll update here once we have more information.

remarcus commented 11 months ago

Hey, are there any updates as crash amount is ramping up for us.

hokstuff commented 11 months ago

Hi @remarcus,

Since this stack trace has a different root cause than the original thread, can you open a thread with support@braze.com with additional information such as:

Thanks!

evelyne96 commented 9 months ago

We've just started seeing some new crashes with version 7.5.0 added with SPM. Seems to be happening right after initialising Braze, we did not reproduce it yet.

Crashed: com.braze.core 0 MyApp 0xc0f534 String.init(cString:) + 4380898612 1 MyApp 0xc0ec6c deviceModel() + 4380896364 2 MyApp 0xc0e9ac closure #1 in static Host.deviceDataLive(properties:) + 4380895660 3 MyApp 0xd8797c closure #1 in Deferred.init(createPublisher:) + 4382439804 4 MyApp 0xd9660c Publisher.subscribe(:) + 4382500364 5 MyApp 0xd96a70 protocol witness for PublisherType.subscribe(:) in conformance Publisher<A, B> + 4382501488 6 MyApp 0xd9bc84 PublisherType.sink(name:receiveCompletion:receiveValue:) + 4382522500 7 MyApp 0xd969a4 closure #1 in Publisher.init(name::) + 4382501284 8 MyApp 0xd9660c Publisher.subscribe(:) + 4382500364 9 MyApp 0xd96a70 protocol witness for PublisherType.subscribe(:) in conformance Publisher<A, B> + 4382501488 10 MyApp 0xd9bc84 PublisherType.sink(name:receiveCompletion:receiveValue:) + 4382522500 11 MyApp 0xd93394 closure #1 in PublisherType.map(:) + 4382487444 12 MyApp 0xd9660c Publisher.subscribe(:) + 4382500364 13 MyApp 0xd96a70 protocol witness for PublisherType.subscribe(:) in conformance Publisher<A, B> + 4382501488 14 MyApp 0xd9bc84 PublisherType.sink(name:receiveCompletion:receiveValue:) + 4382522500 15 MyApp 0xd969a4 closure #1 in Publisher.init(name::) + 4382501284 16 MyApp 0xd9660c Publisher.subscribe(:) + 4382500364 17 MyApp 0xd96a70 protocol witness for PublisherType.subscribe(:) in conformance Publisher<A, B> + 4382501488 18 MyApp 0xd9bc84 PublisherType.sink(name:receiveCompletion:receiveValue:) + 4382522500 19 MyApp 0xd93394 closure #1 in PublisherType.map(:) + 4382487444 20 MyApp 0xd9660c Publisher.subscribe(:) + 4382500364 21 MyApp 0xd96a70 protocol witness for PublisherType.subscribe(:) in conformance Publisher<A, B> + 4382501488 22 MyApp 0xd9bc84 PublisherType.sink(name:receiveCompletion:receiveValue:) + 4382522500 23 MyApp 0xd969a4 closure #1 in Publisher.init(name::) + 4382501284 24 MyApp 0xd9660c Publisher.subscribe(:) + 4382500364 25 MyApp 0xd96a70 protocol witness for PublisherType.subscribe(:) in conformance Publisher<A, B> + 4382501488 26 MyApp 0xd9bc84 PublisherType.sink(name:receiveCompletion:receiveValue:) + 4382522500 27 MyApp 0xd94aac closure #1 in Publishers.MergeMany.init(:) + 4382493356 28 MyApp 0xd9660c Publisher.subscribe(:) + 4382500364 29 MyApp 0xd96a70 protocol witness for PublisherType.subscribe(:) in conformance Publisher<A, B> + 4382501488 30 MyApp 0xd9bc84 PublisherType.sink(name:receiveCompletion:receiveValue:) + 4382522500 31 MyApp 0xd969a4 closure #1 in Publisher.init(name::) + 4382501284 32 MyApp 0xd9660c Publisher.subscribe(:) + 4382500364 33 MyApp 0xd96a70 protocol witness for PublisherType.subscribe(:) in conformance Publisher<A, B> + 4382501488 34 MyApp 0xd9bc84 PublisherType.sink(name:receiveCompletion:receiveValue:) + 4382522500 35 MyApp 0xd94aac closure #1 in Publishers.MergeMany.init(:) + 4382493356 36 MyApp 0xd9660c Publisher.subscribe(:) + 4382500364 37 MyApp 0xd96a70 protocol witness for PublisherType.subscribe(:) in conformance Publisher<A, B> + 4382501488 38 MyApp 0xd9bc84 PublisherType.sink(name:receiveCompletion:receiveValue:) + 4382522500 39 MyApp 0xd969a4 closure #1 in Publisher.init(name::) + 4382501284 40 MyApp 0xd9660c Publisher.subscribe(:) + 4382500364 41 MyApp 0xd96a70 protocol witness for PublisherType.subscribe(:) in conformance Publisher<A, B> + 4382501488 42 MyApp 0xd9bc84 PublisherType.sink(name:receiveCompletion:receiveValue:) + 4382522500 43 MyApp 0xd94aac closure #1 in Publishers.MergeMany.init(:) + 4382493356 44 MyApp 0xd9660c Publisher.subscribe(:) + 4382500364 45 MyApp 0xd96a70 protocol witness for PublisherType.subscribe(:) in conformance Publisher<A, B> + 4382501488 46 MyApp 0xd9bc84 PublisherType.sink(name:receiveCompletion:receiveValue:) + 4382522500 47 MyApp 0xd969a4 closure #1 in Publisher.init(name::) + 4382501284 48 MyApp 0xd9660c Publisher.subscribe(:) + 4382500364 49 MyApp 0xd96a70 protocol witness for PublisherType.subscribe(:) in conformance Publisher<A, B> + 4382501488 50 MyApp 0xd9bc84 PublisherType.sink(name:receiveCompletion:receiveValue:) + 4382522500 51 MyApp 0xd8219c closure #1 in PublisherType.collect(:) + 4382417308 52 MyApp 0xd9660c Publisher.subscribe(:) + 4382500364 53 MyApp 0xd96a70 protocol witness for PublisherType.subscribe(:) in conformance Publisher<A, B> + 4382501488 54 MyApp 0xd9bc84 PublisherType.sink(name:receiveCompletion:receiveValue:) + 4382522500 55 MyApp 0xd98bbc closure #1 in PublisherType.replaceEmpty(with:) + 4382510012 56 MyApp 0xd9660c Publisher.subscribe(:) + 4382500364 57 MyApp 0xd96a70 protocol witness for PublisherType.subscribe(:) in conformance Publisher<A, B> + 4382501488 58 MyApp 0xd9bc84 PublisherType.sink(name:receiveCompletion:receiveValue:) + 4382522500 59 MyApp 0xd5af3c specialized Publisher<>.assertSync() + 4382256956 60 MyApp 0xbc40f8 specialized closure #1 in Reducer<>.atomics() + 4380590328 61 MyApp 0xdac1d0 closure #1 in Reducer.pullback<A, B, C>(state:action:environment:) + 4382589392 62 MyApp 0xdadcc0 partial apply for closure #1 in Reducer.pullback<A, B, C>(state:action:environment:) + 4382596288 63 MyApp 0xdae5ac partial apply for closure #1 in closure #1 in static Reducer.combine(:) + 4382598572 64 libswiftCore.dylib 0x149f4 Collection.map(:) + 560 65 MyApp 0xdabdf4 closure #1 in static Reducer.combine(:) + 4382588404 66 MyApp 0xdae5ac partial apply for closure #1 in closure #1 in static Reducer.combine(:) + 4382598572 67 libswiftCore.dylib 0x149f4 Collection.map(:) + 560 68 MyApp 0xdabdf4 closure #1 in static Reducer.combine(:) + 4382588404 69 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 70 MyApp 0xc78ba4 specialized closure #1 in Reducer.onChange(of:perform:) + 4381330340 71 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 72 MyApp 0xc78a5c specialized closure #1 in Reducer.onChange(of:perform:) + 4381330012 73 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 74 MyApp 0xc78990 specialized closure #1 in Reducer.onChange(of:perform:) + 4381329808 75 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 76 MyApp 0xc78878 specialized closure #1 in Reducer.onChange(of:perform:) + 4381329528 77 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 78 MyApp 0xc7875c specialized closure #1 in Reducer.onChange(of:perform:) + 4381329244 79 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 80 MyApp 0xc78dc4 specialized closure #1 in Reducer.onChange(of:perform:) + 4381330884 81 MyApp 0xdae5ac partial apply for closure #1 in closure #1 in static Reducer.combine(:) + 4382598572 82 libswiftCore.dylib 0x149f4 Collection.map(:) + 560 83 MyApp 0xdabdf4 closure #1 in static Reducer.combine(:) + 4382588404 84 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 85 MyApp 0xc78ee0 specialized closure #1 in Reducer.onChange(of:perform:) + 4381331168 86 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 87 MyApp 0xc78ee0 specialized closure #1 in Reducer.onChange(of:perform:) + 4381331168 88 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 89 MyApp 0xc7a458 specialized closure #1 in Reducer.onChange(of:perform:) + 4381336664 90 MyApp 0xc78e94 specialized closure #1 in Reducer.onChange(of:perform:) + 4381331092 91 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 92 MyApp 0xc7a458 specialized closure #1 in Reducer.onChange(of:perform:) + 4381336664 93 MyApp 0xc78fc4 specialized closure #1 in Reducer.onChange(of:perform:) + 4381331396 94 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 95 MyApp 0xbc3a38 specialized closure #1 in Reducer<>.atomics() + 4380588600 96 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 97 MyApp 0xc79a70 specialized closure #1 in Reducer.onChange(of:perform:) + 4381334128 98 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 99 MyApp 0xc7995c specialized closure #1 in Reducer.onChange(of:perform:) + 4381333852 100 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 101 MyApp 0xc79800 specialized closure #1 in Reducer.onChange(of:perform:) + 4381333504 102 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 103 MyApp 0xc7a5e8 specialized closure #1 in Reducer.onChange(of:perform:) + 4381337064 104 MyApp 0xc79754 specialized closure #1 in Reducer.onChange(of:perform:) + 4381333332 105 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 106 MyApp 0xc7a458 specialized closure #1 in Reducer.onChange(of:perform:) + 4381336664 107 MyApp 0xc79724 specialized closure #1 in Reducer.onChange(of:perform:) + 4381333284 108 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 109 MyApp 0xc79674 specialized closure #1 in Reducer.onChange(of:perform:) + 4381333108 110 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 111 MyApp 0xc794f0 specialized closure #1 in Reducer.onChange(of:perform:) + 4381332720 112 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 113 MyApp 0xc793e0 specialized closure #1 in Reducer.onChange(of:perform:) + 4381332448 114 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 115 MyApp 0xc79328 specialized closure #1 in Reducer.onChange(of:perform:) + 4381332264 116 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 117 MyApp 0xc79270 specialized closure #1 in Reducer.onChange(of:perform:) + 4381332080 118 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 119 MyApp 0xc791b0 specialized closure #1 in Reducer.onChange(of:perform:) + 4381331888 120 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 121 MyApp 0xc790bc specialized closure #1 in Reducer.onChange(of:perform:) + 4381331644 122 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 123 MyApp 0xc7a330 specialized closure #1 in Reducer.onChange(of:perform:) + 4381336368 124 MyApp 0xc79000 specialized closure #1 in Reducer.onChange(of:perform:) + 4381331456 125 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 126 MyApp 0xc7a330 specialized closure #1 in Reducer.onChange(of:perform:) + 4381336368 127 MyApp 0xc79078 specialized closure #1 in Reducer.onChange(of:perform:) + 4381331576 128 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 129 MyApp 0xc7a458 specialized closure #1 in Reducer.onChange(of:perform:) + 4381336664 130 MyApp 0xc7903c specialized closure #1 in Reducer.onChange(of:perform:) + 4381331516 131 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 132 MyApp 0xc7a458 specialized closure #1 in Reducer.onChange(of:perform:) + 4381336664 133 MyApp 0xc7ac70 specialized closure #1 in Reducer.onChange(of:perform:) + 4381338736 134 MyApp 0xdae5ac partial apply for closure #1 in closure #1 in static Reducer.combine(:) + 4382598572 135 libswiftCore.dylib 0x149f4 Collection.map(:) + 560 136 MyApp 0xdabdf4 closure #1 in static Reducer.combine(:) + 4382588404 137 MyApp 0xdadb90 Reducer.callAsFunction(:::) + 4382595984 138 MyApp 0xdb01b4 closure #1 in Store.init(initialState:reducer:environment:) + 4382605748 139 MyApp 0xdb0804 Store.send(:) + 4382607364 140 MyApp 0xdb37bc ViewStore.send(:) + 4382619580 141 MyApp 0xb52094 closure #1 in BrazeViewStore.start() + 4380123284 142 MyApp 0xb53e34 partial apply for specialized closure #1 in AsyncViewStore.executeSync(:) + 4380130868 143 MyApp 0xb5348c specialized closure #1 in AsyncViewStore.execute(:) + 4380128396 144 MyApp 0xbe3f6c thunk for @escaping @callee_guaranteed () -> () + 4380721004 145 libdispatch.dylib 0x63094 _dispatch_call_block_and_release + 24 146 libdispatch.dylib 0x64094 _dispatch_client_callout + 16 147 libdispatch.dylib 0xa73c _dispatch_lane_serial_drain$VARIANT$mp + 644 148 libdispatch.dylib 0xb1f4 _dispatch_lane_invoke$VARIANT$mp + 408 149 libdispatch.dylib 0x14ec8 _dispatch_workloop_worker_thread + 632 150 libsystem_pthread.dylib 0x1e00 _pthread_wqthread + 284 151 libsystem_pthread.dylib 0x192c start_wqthread + 8

com.apple.main-thread 0 libsystem_kernel.dylib 0xae8 semaphore_wait_trap + 8 1 libdispatch.dylib 0x4960 _dispatch_sema4_wait$VARIANT$mp + 24 2 libdispatch.dylib 0x4fb0 _dispatch_semaphore_waitslow + 148 3 MyApp 0xb5231c specialized AsyncViewStore.executeSync(:) + 4380123932 4 MyApp 0xb51a9c BrazeViewStore.start() + 4380121756 5 MyApp 0xb514a4 BrazeViewStore.enabled.setter + 4380120228 6 MyApp 0xb28ab8 Braze.enabled.setter + 4379953848 7 MyApp 0xb29be0 Braze.init(configuration:) + 4379958240 ......... 12 ??? 0x106c5ff14 (Missing) 13 UIKitCore 0x309574 + 336 14 UIKitCore 0x4ddd98 + 3508 15 UIKitCore 0x4c74bc + 1176 16 UIKitCore 0x335284 + 148 17 UIKitCore 0x19bfa8 _UIScenePerformActionsWithLifecycleActionMask + 96 18 UIKitCore 0x2be9dc + 188 19 UIKitCore 0x3d4008 + 240 20 UIKitCore 0x5fc434 + 744 21 UIKitCore 0x58c174 + 336 22 UIKitCore 0x19ccf4 + 188 23 UIKitCore 0x2588e4 + 812 24 UIKitCore 0x19ea84 _UISceneSettingsDiffActionPerformChangesWithTransitionContext + 248 25 UIKitCore 0x283134 + 356 26 UIKitCore 0x6d8f38 + 772 27 UIKitCore 0x1cc72c + 248 28 UIKitCore 0x20e4cc + 264 29 UIKitCore 0x339cec + 560 30 UIKitCore 0x281550 + 360 31 FrontBoardServices 0x26c50 + 412 32 FrontBoardServices 0x48f98 + 100 33 FrontBoardServices 0x9bdc + 232 34 FrontBoardServices 0xafd4 + 312 35 libdispatch.dylib 0x64094 _dispatch_client_callout + 16 36 libdispatch.dylib 0x7150 _dispatch_block_invoke_direct$VARIANT$mp + 220 37 FrontBoardServices 0xb2ac + 40 38 FrontBoardServices 0xa7c0 + 176 39 FrontBoardServices 0xe960 + 24 40 CoreFoundation 0xb3448 + 24 41 CoreFoundation 0xc3578 + 204 42 CoreFoundation 0x5734 + 256 43 CoreFoundation 0xae08 + 768 44 CoreFoundation 0x1e174 CFRunLoopRunSpecific + 572 45 GraphicsServices 0x1988 GSEventRunModal + 160 46 UIKitCore 0x4e5a88 + 1080 47 UIKitCore 0x27ef78 UIApplicationMain + 336 48 Sideline 0x8a3c main + 13 (main.m:13) 49 ??? 0x1025a84d0 (Missing)

jacksonemiller commented 9 months ago

Hi there @evelyne96,

Thank you for this information. This is appears to be related to the original topic of this thread, but could you still please either open a new GitHub issue here or open a thread with support@braze.com?

I think some additional information might be helpful for us here. In particular, do you happen to have a complete crash log, any leads on reproducing the issue, any info on the frequency of the crash or any particular circumstances surrounding it?

Thanks!

hokstuff commented 6 months ago

Hi @WonkiJo @remarcus @evelyne96,

We released Swift SDK 9.1.0 which adds some safeguards around the deviceModel method. Let us know if you continue to run into issues.

Thanks!