LeoNatan / Apple-Runtime-Headers

Objective-C runtime headers for Apple's iOS, macOS, tvOS and watchOS frameworks
230 stars 49 forks source link

iOS 14/Xcode 12 Runtime Headers #1

Open efremidze opened 4 years ago

efremidze commented 4 years ago

Do you have an ETA for iOS 14/Xcode 12 runtime headers? And to contribute, is there a process you follow to generate them?

Thank you for providing this repo.

LeoNatan commented 4 years ago

class-dump is broken for Xcode 12/iOS 14. I haven’t found a working fork yet, or an alternative.

melvinma commented 4 years ago

I was come to say this. Seems a lot of errors related one error -

2020-09-09 13:27:58.647 class-dump[20302:607886] Unknown load command: 0x00000032 2020-09-09 13:27:58.650 class-dump[20302:607886] Assertion failure in -[CDObjectiveC2Processor loadMethodsAtAddress:extendedMethodTypesCursor:], /Users/lnatan/Desktop/class-dump-master/Source/CDObjectiveC2Processor.m:408 2020-09-09 13:27:58.651 class-dump[20302:607886] Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Invalid parameter not satisfying: listHeader.entsize == 3 * [self.machOFile ptrSize]' *** First throw call stack: ( 0 CoreFoundation 0x00007fff38664b57 __exceptionPreprocess + 250 1 libobjc.A.dylib 0x00007fff714ab5bf objc_exception_throw + 48 2 CoreFoundation 0x00007fff3868dd08 +[NSException raise:format:arguments:] + 88 3 Foundation 0x00007fff3ad7fe9d -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 191 4 class-dump 0x000000010287e0bc -[CDObjectiveC2Processor loadMethodsAtAddress:extendedMethodTypesCursor:] + 1036 5 class-dump 0x000000010287dca3 -[CDObjectiveC2Processor loadMethodsAtAddress:] + 67 6 class-dump 0x000000010287c2cf -[CDObjectiveC2Processor loadClassAtAddress:] + 2159 7 class-dump 0x0000000102879586 -[CDObjectiveC2Processor loadClasses] + 294 8 class-dump 0x0000000102874e60 -[CDObjectiveCProcessor process] + 528 9 class-dump 0x000000010283d1e5 -[CDClassDump processObjectiveCData] + 405 10 class-dump 0x0000000102858af2 main + 4978 11 libdyld.dylib 0x00007fff72653cc9 start + 1

Thank you very much for working on this. It will be really helpful.

melvinma commented 4 years ago

By the way, the class-dump file here is 2 years old and it appears current class-dump project (https://github.com/nygard/class-dump) had many updates. However, it seems having similar issues (https://github.com/nygard/class-dump/issues/94).

LeoNatan commented 4 years ago

I am not actively working on this. I am waiting for a fork of class-dump to solve the issues. I don't have time to dive into fixing class-dump.

melvinma commented 4 years ago

Got it. Thank you.

elrid commented 4 years ago

Looks like a working fork: https://github.com/hosijyun/class-dump

LeoNatan commented 4 years ago

Great, thanks. Will test.

LeoNatan commented 4 years ago

WatchOS is crashing with the following exception:

Processing /Applications/Xcode.app/Contents/Developer/Platforms/WatchOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/watchOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks/AVFoundation.framework/Frameworks/AVFAudio.framework
2020-10-06 22:17:22.661 class-dump[19788:300808] *** Assertion failure in -[CDObjectiveC2Processor loadMethodsAtAddress:extendedMethodTypesCursor:], CDObjectiveC2Processor.m:409
2020-10-06 22:17:22.666 class-dump[19788:300808] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Invalid parameter not satisfying: listHeader.entsize == 3 * [self.machOFile ptrSize]'
*** First throw call stack:
(
    0   CoreFoundation                      0x00007fff32c19b57 __exceptionPreprocess + 250
    1   libobjc.A.dylib                     0x00007fff6baa85bf objc_exception_throw + 48
    2   CoreFoundation                      0x00007fff32c42d08 +[NSException raise:format:arguments:] + 88
    3   Foundation                          0x00007fff35334e9d -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 191
    4   class-dump                          0x000000010449e732 -[CDObjectiveC2Processor loadMethodsAtAddress:extendedMethodTypesCursor:] + 1186
    5   class-dump                          0x000000010449e283 -[CDObjectiveC2Processor loadMethodsAtAddress:] + 67
    6   class-dump                          0x000000010449caa3 -[CDObjectiveC2Processor loadClassAtAddress:] + 1779
    7   class-dump                          0x000000010449cfc0 -[CDObjectiveC2Processor loadClassAtAddress:] + 3088
    8   class-dump                          0x000000010449a081 -[CDObjectiveC2Processor loadClasses] + 273
    9   class-dump                          0x0000000104495bea -[CDObjectiveCProcessor process] + 538
    10  class-dump                          0x000000010445fcb6 -[CDClassDump processObjectiveCData] + 406
    11  class-dump                          0x000000010447aabf main + 4815
    12  libdyld.dylib                       0x00007fff6cc50cc9 start + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException