Update: PyObjC 1.3.5 contained a bug that prevented plug-ins from working correctly. It has been fixed in 1.3.6.
PyObjC 1.3.6 is now available for download. This release adds support for many new features in Tiger, maintains backwards compatibility with Panther/Jaguar, and fixes many important bugs.
See the NEWS file for full details.
- The Xcode templates now use py2app. This means that development builds usually take less than a few seconds for a build from clean and considerably less than a second for incremental builds. Deployment builds will automatically create drag-n-droppable products for easy distribution.
- in and inout parameters are fully supported. This includes the ability to pass NULL to the underlying API.
- Core Data is fully supported. This includes py2app automatically compiling Core Data models from their development form into the runtime form.
- A decorator is provided that allows easier specification of method signatures when using Python 2.4.@objc.signature('i@:if')
def methodWithX_andY_(self, x, y):
- NSData, NSDecimalNumber, and NSDate are now converted to appropriate native Python types automatically. serializePropertyList() and deserializePropertyList() can be used to convert an Obj-C property list to an NSData and back.
- The proxy for pure Python objects acts more like a proper NSObject than before. This allows objects returned from pure Python libraries to be used from Objective-C in a more transparent fashion, including support for KVC.
Overall, this release really adds a tremendous amount of polish to PyObjC. Everything is very well tested and the behavior is just more consistent. Py2app has evolved significantly, as well, gaining Tiger specific features and many other refinements.
Great stuff. A huge thank you to Ronald and Bob. PyObjC is a production quality development tool that is truly a joy to work on and use.