Friday, July 31, 2009

GriP, GriPGRIP & class-dump-z 0.1-11q Released

Starting from this version, Memory Watcher will not be included in GriP. Instead, it will be moved to a new package, "GriP Really Impressive Pack" (GriPGRIP). The distinction is that, GriP shall only contains the most needed extensions, i.e.
  • Mail
  • Push notification
  • SMS (by xshad0w, not included in 0.1-11q yet),
the 2 themes, Default and Double Height Status Bar (also by xshad0w, also not included yet), and 3 modal table themes, Default, HUD and Translucent Black (I may remove the last one too). On the other hand, GriPGRIP is a collection of all other stuff that will utilize GriP, like calendar events, remote Growl notifications, themes, etc. (The distinction is because GriP is growing to 1 MiB pretty soon. I want to keep the size down.)

Anyway, 0.1-11q is mainly an issue-fixing release, that include:
  • Issue 223. You can configure some GriP messages to wake the device up.
  • Issue 176. An new option so that GriP message can be expanded by default.
  • Issue 209. You've Got Mail will show the user name of the mail owner, instead of the address.
  • Issue 168. All apps can be selected shown in Game Mode. The UI is improved too :)
  • Issue 172. Multiple push notifications from the same app will be coalesced.
  • Suspension behavior can be updated properly.

If you have GriP 0.1-11p, you don't need GriPGRIP 0.1-11q, because there's nothing new.

And class-dump-z. There are 4 new features in this release:
  • The -N flag, which allows you to disable struct name prettifying (__CFArray* → CFArrayRef).
  • Optional properties. Such a thing does not exist directly, but can be inferred when its getter and setter are optional. (See the UITextTraits protocol for example).
  • The -h proto flag, which will hide all methods that's just adopting a protocol.
  • The -h super flag, which will hide all inherited methods.

Note that if you use the -h super flag directly on the Mac, it is almost certain that class-dump-z will crash. This is because to get the superclass info class-dump-z must open some framework bundles, and by default it will search in /System/Library/..., which certainly does not contain anything iPhoneOS-related. You have to provide the -y flag to specify the sysroot as well. For those who have installed SDK, you need to add

-y /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk