iosobjective-crubymotionrubymotion-promotion

Cocoapods update from 1.2.1 to 1.4.0 breaks FontasticIcons


Not sure why but it seems like updating cocoapods from 1.2.1 to 1.4.0 breaks FontasticIcons and ruins my build. My build output:

2018-10-13 22:28:02.015 Appname[67112:3481948] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[__NSDictionaryM setObject:forKeyedSubscript:]: key cannot be nil'
*** First throw call stack:
(
    0   CoreFoundation                      0x000000010478429b __exceptionPreprocess + 331
    1   libobjc.A.dylib                     0x0000000101fff735 objc_exception_throw + 48
    2   CoreFoundation                      0x00000001046ce8fc _CFThrowFormattedException + 194
    3   CoreFoundation                      0x00000001047f680c -[__NSDictionaryM setObject:forKeyedSubscript:] + 1036
    4   Appname                            0x0000000100152f9c +[FIFont fontWithResourcePath:] + 266
    5   Appname                            0x00000001001540d1 +[FIIcon fontNames] + 61
    6   Appname                            0x0000000100153e9c +[FIIcon initialize] + 111
    7   libobjc.A.dylib                     0x00000001020002fe CALLING_SOME_+initialize_METHOD + 19
    8   libobjc.A.dylib                     0x0000000102000691 _class_initialize + 270
    9   libobjc.A.dylib                     0x0000000102007248 lookUpImpOrForward + 196
    10  libobjc.A.dylib                     0x0000000102014814 _objc_msgSend_uncached + 68
    11  Appname                            0x0000000100c26d1b retain_cb + 59
    12  CoreFoundation                      0x00000001047d962c __CFBasicHashAddValue + 1484
    13  CoreFoundation                      0x00000001046a43f1 CFDictionarySetValue + 161
    14  Appname                            0x0000000100c26e55 retrieve_dynamic_objc_class + 229
    15  Appname                            0x0000000100c25026 rb_const_get_0 + 870
    16  Appname                            0x00000001008a6f7d vm_get_const + 269
    17  Appname                            0x00000001008ad44d rb_scope__application_setup__block__.1 + 205
    18  Appname                            0x0000000100c4d992 _ZL13vm_block_evalP7RoxorVMP11rb_vm_blockP13objc_selectormiPKm + 1490
    19  Appname                            0x0000000100c4db50 rb_vm_yield_args + 64
    20  Appname                            0x0000000100c3d0eb rb_yield + 59
    21  Appname                            0x0000000100ba9d5e rb_obj_tap + 14
    22  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    23  Appname                            0x00000001008a7b44 vm_dispatch + 1380
    24  Appname                            0x00000001008ad01c rb_scope__application_setup__ + 8300
    25  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    26  Appname                            0x0000000100578e14 vm_dispatch + 1380
    27  Appname                            0x0000000100582be8 rb_scope__initialize:__ + 456
    28  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    29  Appname                            0x0000000100ba5c77 rb_class_new_instance0 + 535
    30  Appname                            0x0000000100c4bc2e rb_vm_dispatch + 5278
    31  Appname                            0x0000000100578e14 vm_dispatch + 1380
    32  Appname                            0x000000010057c98b rb_scope__stylesheet=:__ + 379
    33  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    34  Appname                            0x000000010079ac74 vm_dispatch + 1380
    35  Appname                            0x00000001007a1260 rb_scope__set_stylesheet__ + 368
    36  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    37  Appname                            0x000000010079ac74 vm_dispatch + 1380
    38  Appname                            0x000000010079ffac rb_scope__viewDidLoad__ + 60
    39  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    40  Appname                            0x00000001006edd94 vm_dispatch + 1380
    41  Appname                            0x00000001006f0cf1 rb_scope__viewDidLoad__ + 81
    42  Appname                            0x00000001006f0dad __unnamed_19 + 13
    43  UIKitCore                           0x0000000110cd9781 -[UIViewController loadViewIfRequired] + 1186
    44  UIKitCore                           0x0000000110cd9be0 -[UIViewController view] + 27
    45  Appname                            0x0000000100c6e456 _ZL14builtin_ostub1PFP11objc_objectS0_P13objc_selectorzES2_S0_hiPm + 22
    46  Appname                            0x0000000100c4c0ba rb_vm_dispatch + 6442
    47  Appname                            0x000000010058bab4 vm_dispatch + 1380
    48  Appname                            0x00000001005910a8 rb_scope__context_or_context_view__ + 232
    49  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    50  Appname                            0x000000010058bab4 vm_dispatch + 1380
    51  Appname                            0x000000010059023f rb_scope__selected__ + 463
    52  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    53  Appname                            0x0000000100611ab4 vm_dispatch + 1380
    54  Appname                            0x0000000100615c73 rb_scope__add_subview:__ + 211
    55  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    56  Appname                            0x0000000100611ab4 vm_dispatch + 1380
    57  Appname                            0x0000000100617a2d rb_scope__create:__ + 381
    58  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    59  Appname                            0x0000000100611ab4 vm_dispatch + 1380
    60  Appname                            0x0000000100617c1e rb_scope__create!:__ + 350
    61  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    62  Appname                            0x000000010079ac74 vm_dispatch + 1380
    63  Appname                            0x000000010079f0c0 rb_scope__create!:__ + 272
    64  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    65  Appname                            0x00000001009adac4 vm_dispatch + 1380
    66  Appname                            0x00000001009b6346 rb_scope__nav_bar__ + 166
    67  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    68  Appname                            0x00000001009adac4 vm_dispatch + 1380
    69  Appname                            0x00000001009b2aba rb_scope__on_init__ + 1018
    70  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    71  Appname                            0x0000000100c3ef3d send_internal + 301
    72  Appname                            0x0000000100c4bc2e rb_vm_dispatch + 5278
    73  Appname                            0x0000000100679dd4 vm_dispatch + 1380
    74  Appname                            0x000000010067c426 rb_scope__try:__ + 246
    75  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    76  Appname                            0x00000001006a0ce4 vm_dispatch + 1380
    77  Appname                            0x00000001006a5ba9 rb_scope__screen_init:__ + 537
    78  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    79  Appname                            0x00000001006edd94 vm_dispatch + 1380
    80  Appname                            0x00000001006f0ad5 rb_scope__new:__ + 661
    81  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    82  Appname                            0x0000000100a51684 vm_dispatch + 1380
    83  Appname                            0x0000000100a537f7 rb_scope__setup__ + 151
    84  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    85  Appname                            0x0000000100c3ef3d send_internal + 301
    86  Appname                            0x0000000100c4bc2e rb_vm_dispatch + 5278
    87  Appname                            0x000000010081a954 vm_dispatch + 1380
    88  Appname                            0x000000010081ebea rb_scope__auto_setup:__ + 986
    89  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    90  Appname                            0x0000000100c3ef3d send_internal + 301
    91  Appname                            0x0000000100c4bc2e rb_vm_dispatch + 5278
    92  Appname                            0x000000010081a954 vm_dispatch + 1380
    93  Appname                            0x000000010081e78a rb_scope__new:__ + 346
    94  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    95  Appname                            0x0000000100728e44 vm_dispatch + 1380
    96  Appname                            0x000000010072dfad rb_scope__open:__ + 221
    97  Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    98  Appname                            0x0000000100a55634 vm_dispatch + 1380
    99  Appname                            0x0000000100a59bf5 rb_scope__open_home_or_login__ + 565
    100 Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    101 Appname                            0x0000000100a55634 vm_dispatch + 1380
    102 Appname                            0x0000000100a58bc9 rb_scope__on_load:__ + 249
    103 Appname                            0x0000000100c4bd4c rb_vm_dispatch + 5564
    104 Appname                            0x0000000100728e44 vm_dispatch + 1380
    105 Appname                            0x000000010072caed rb_scope__application:didFinishLaunchingWithOptions:__ + 189
    106 Appname                            0x000000010072ccfd __unnamed_37 + 61
    107 UIKitCore                           0x00000001105a24d7 -[UIApplication _handleDelegateCallbacksWithOptions:isSuspended:restoreState:] + 280
    108 UIKitCore                           0x00000001105a3ec4 -[UIApplication _callInitializationDelegatesForMainScene:transitionContext:] + 3979
    109 UIKitCore                           0x00000001105a9527 -[UIApplication _runWithMainScene:transitionContext:completion:] + 1623
    110 UIKitCore                           0x0000000110e4be3e __111-[__UICanvasLifecycleMonitor_Compatability _scheduleFirstCommitForScene:transition:firstActivation:completion:]_block_invoke + 866
    111 UIKitCore                           0x0000000110e48403 +[_UICanvas _enqueuePostSettingUpdateTransactionBlock:] + 153
    112 UIKitCore                           0x0000000110e4ba7b -[__UICanvasLifecycleMonitor_Compatability _scheduleFirstCommitForScene:transition:firstActivation:completion:] + 233
    113 UIKitCore                           0x0000000110e4c435 -[__UICanvasLifecycleMonitor_Compatability activateEventsOnly:withContext:completion:] + 1085
    114 UIKitCore                           0x0000000110e09b31 __82-[_UIApplicationCanvas _transitionLifecycleStateWithTransitionContext:completion:]_block_invoke + 795
    115 UIKitCore                           0x0000000110e097db -[_UIApplicationCanvas _transitionLifecycleStateWithTransitionContext:completion:] + 435
    116 UIKitCore                           0x0000000110e4e92c __125-[_UICanvasLifecycleSettingsDiffAction performActionsForCanvas:withUpdatedScene:settingsDiff:fromSettings:transitionContext:]_block_invoke + 584
    117 UIKitCore                           0x0000000110e4f256 _performActionsWithDelayForTransitionContext + 100
    118 UIKitCore                           0x0000000110e4e68b -[_UICanvasLifecycleSettingsDiffAction performActionsForCanvas:withUpdatedScene:settingsDiff:fromSettings:transitionContext:] + 221
    119 UIKitCore                           0x0000000110e47aa1 -[_UICanvas scene:didUpdateWithDiff:transitionContext:completion:] + 392
    120 UIKitCore                           0x00000001105a7d46 -[UIApplication workspace:didCreateScene:withTransitionContext:completion:] + 515
    121 UIKitCore                           0x00000001105d9856 -[UIApplicationSceneClientAgent scene:didInitializeWithEvent:completion:] + 357
    122 FrontBoardServices                  0x000000010eedadda -[FBSSceneImpl _didCreateWithTransitionContext:completion:] + 448
    123 FrontBoardServices                  0x000000010eee5f43 __56-[FBSWorkspace client:handleCreateScene:withCompletion:]_block_invoke_2 + 271
    124 FrontBoardServices                  0x000000010eee563a __40-[FBSWorkspace _performDelegateCallOut:]_block_invoke + 53
    125 libdispatch.dylib                   0x0000000109d7b587 _dispatch_client_callout + 8
    126 libdispatch.dylib                   0x0000000109d7e647 _dispatch_block_invoke_direct + 312
    127 FrontBoardServices                  0x000000010ef1a3c8 __FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK__ + 30
    128 FrontBoardServices                  0x000000010ef1a080 -[FBSSerialQueue _performNext] + 457
    129 FrontBoardServices                  0x000000010ef1a660 -[FBSSerialQueue _performNextFromRunLoopSource] + 45
    130 CoreFoundation                      0x00000001046e7b31 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
    131 CoreFoundation                      0x00000001046e73a3 __CFRunLoopDoSources0 + 243
    132 CoreFoundation                      0x00000001046e1a4f __CFRunLoopRun + 1263
    133 CoreFoundation                      0x00000001046e1221 CFRunLoopRunSpecific + 625
    134 GraphicsServices                    0x000000010a47f1dd GSEventRunModal + 62
    135 UIKitCore                           0x00000001105ab115 UIApplicationMain + 140
    136 Appname                            0x0000000100249ce4 main + 148
    137 libdyld.dylib                       0x0000000109deb551 start + 1
    138 ???                                 0x0000000000000001 0x0 + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException

From best I can tell its trying to add a null value to a library but what I cant figure out is why a change in cocoapods version would cause that to break. Curious if anyone has any insight

FontasticIcons: https://github.com/AlexDenisov/FontasticIcons


Solution

  • Thanks for the help! So I solved it by actually taking the files out of the cocoa pod and putting them directly into the resources folder. Now rubymotion sees the files and all is well