Steve Nygard

Class-dump 3.5 Is Now Available

This release of class-dump has been updated for Mac OS X 10.9 Mountain Lion. It requires the 10.9 SDK, but still targets 10.8. You can download this version from the class-dump project page, and the latest source is always available from the class-dump git repository at Github.

class-dump now parses extended types (available only in protocols), so you get more precise type information on protocol methods. It also recognizes the “arm64” architecture. For a complete list of changes, see the class-dump Release Notes.

You can send but reports to me at nygard at gmail.com, or add it to the project’s Issue Tracker at github.

Class-dump 3.4 Is Now Available

This release of class-dump has been updated for Mac OS X 10.8 Mountain Lion. It requires the 10.8 SDK, but still targets 10.7. You can download this version from the class-dump project page, and the latest source is always available from the class-dump git repository at Github.

Mac OS X 10.8 adds a few new load commands, and now class-dump doesn’t log warnings about these. Two of these load commands indicate the minimum Mac OS X or iOS versions required, and these now appear in the class-dump output. class-dump also recognizes the new ‘armv7s’ architecture.

The project now uses ARC, properties are synthesized by default when possible and instance variables are declared in the implementation. There are several other changes to the coding style.

You can send but reports to me at nygard at gmail.com, or add it to the project’s Issue Tracker at github.

Class-dump 3.3.1 Is Now Available

Version 3.3.1 adds support for dumping 10.6 style protected binaries, so that you can once again look at the Finder, Dock, SystemUIServer, and a few other applications. This release fixes a crasher when trying to dump 64-bit files with the 32-bit version of class-dump. Now it prints an error message saying that this isn’t supported. Finally, it generates typedefs for template types that are used in methods, to make the method declarations shorter and more readable.

You can download this version from the class-dump project page. It is built for Mac OS X 10.5 or later.

As always, you can send bug reports to me at nygard at gmail.com

Class-dump 3.3 Is Now Available

A new version of class-dump is now available. You can download it from the links on the class-dump project page. It is built for Mac OS X 10.5 or later.

Version 3.3 adds support for Snow Leopard, improves property handling, improves structure/union handling, fixes a bunch of bugs (including two crashers), and no doubt adds some new bugs.

Class-dump 3.2 Is Now Available

A new version of class-dump is now available. You can download it from the links on the class-dump project page. It is built for Mac OS X 10.5 or later.

This release includes support for Objective-C 2.0 on both 32 bit (iPhone) and 64 bit (Mac OS X). It shows class properties and handles all documented property attributes. Unrecognized property attributes are noted in a comment following the property declaration. class-dump also shows optional protocol methods. The Objective-C garbage collection status of each file is included in the output, as either “Unsupported”, “Supported”, or “Required”.

Minor Bugfix, Class-dump 3.1.1

This release fixes some old bugs with parsing C++ template types, which occurred frequently with applications like iPhoto. It doesn’t try to parse these types—it just scans for commas, nested < and >, and the closing >.

You can download class-dump 3.1.1. This version is built against the 10.4 Universal SDK and will not run on Mac OS X 10.3 or earlier.

Universal Binary Support

I’ve added universal binary support to class-dump. It will choose the host architecture, if available, or the first architecture otherwise. There is also a –arch command line option to select between ppc and i386. The selected architecture is displayed in the output.

You can download class-dump 3.1. This version is built against the 10.4 Universal SDK and will not run on Mac OS X 10.3 or earlier.

Class-dump 3.0 Released

I have released class-dump 3.0. This is the first update in almost three years, and the biggest update since the first release. Be sure to check out the release notes to see what’s changed.

It’s been a little over seven years since I released class-dump version 2. It now has a new home—I’ve set up this website to distribute the software that I create. At the moment there’s only class-dump, but I’ll probably add some new, smaller projects, and maybe even some of my older code once it’s been updated to work with Mac OS X. (I said it was old!)