Re: [Pyobjc-dev] Revisiting the next release...
Brought to you by:
ronaldoussoren
From: Ronald O. <ous...@ci...> - 2002-11-01 06:54:53
|
On Friday, Nov 1, 2002, at 06:33 Europe/Amsterdam, Stephen Steiner wrote: > I'd answer the 'what do we need to do' by: > > First and foremost documenting the 'holes not to fall into'. What > hasn't worked most often? What is the solution to having fallen into > each of the holes? This is a very good question, which I can't really answer. The holes I fall into tend to get filled pretty soon. The only 'hole' I know of right now is 'which python do I use to install PyObjC, and which one to actually run it'. If you use PB and have installed a custom Python (/usr/local/bin/python, /sw/bin/python .../) the two might not be the same if you use 'python setup.py install' to install PyObjC. The only important bug is IMHO the automatic processing of retain/release/autorelease in combination with methods that transfer object ownership to the caller and in combination with 'init...' methods that just remove the object when initialisation fails (e.g. NSDictionary.initFromFile_) Reference counting in the PyObjC implementation is also not 100% correct, I'm pretty sure that the Python refcounts of some objects are too high. I'll have to carefully check the code for this. Some other work left for 1.0: - Complete the work on Lib/objc/_convenience.py We're slowly adding more methods that make NS<Collection> classes act more like their Python counterparts, but this is not yet 100% complete (at least not the last time I looked at it) - Complete the wrappers for constants and global functions in Cocoa Constants should be picked up automaticly, but someone should check that we really have all values. Some global variables that are currently added as constants might really be variable, if so special wrapper functions should be added. Not all functions in Cocoa are wrapped at the moment. Most of these require manual work (nothing complex, just more information than available to the generator script) For bonus points: The wrappers should also compile on OSX 10.1. For more bonus points: The generator script isn't very robust, and currently needs manual fixup of the output. Fix this, or replace by a better script. - Complete custom wrappers for complex methods Some methods have pointer arguments or return pointers. If the pointer arguments are pass-by-reference arguments nothing has to be done, otherwise it is necessary to write custom method wrappers for the method. - Maybe port to GNUstep I'd like to see a GNUstep port in the future, but IMHO this is not something that is really required for 1.0 Ronald |