Changes in 2.2a3 since 2.1.1 ---------------------------- These release notes refer to Mac-specific changes only. See NEWS (in the Misc folder) for machine-independent changes. - The main change is that all toolbox modules have moved to a package called Carbon. So things like "import Res" should be changed to "from Carbon import Res", and "from Res import *" to "from Carbon.Res import *". Please see the readme file for some open questions and join the discussions on pythonmac-sig if you have anything to contribute. Aside from reducing clutter this change will also benefit the port to Mach-O/OSX Python later. - On input MacPython now accepts either \n (unix style) or \r (mac style) newlines for text files. This behaviour can be turned off with a preference. This is an experimental feature; again: feedback is requested. - There is a new module macresource which makes it easier to open a resource file accompanying your script when the script is not (yet) converted to an applet. This module will later also do the right thing in Mach-O/OSX Python. - Threads had a stack that was too small for many serious Python applications (20K). They now get 64K. There is still no overflow check, though. - Garbage collection and the gc module have (finally) been enabled. - EasyDialogs.ProgressBar now has indeterminate progressbars if you specify maxval=0. This is also the new default. Patch supplied by Dean Draayer. - There are new preferences for enabling old-style division warnings and for accepting unix-style newlines in text input files. These can also be set during startup, and in addition you can select very verbose import tracing. - Various outdated scripts have been moved to :Mac:Unsupported. - Various outdated items from :Mac:Lib:test have been removed. What is not in this distribution -------------------------------- - Stackless Python/microthreads hasn't been ported to 2.2 yet. If/when it becomes available Just will undoubtedly announce it on pythonmac-sig and the MacPython homepage. - The toolbox modules have not been updated to Universal Header 3.4 or CarbonLib 1.4 yet. Known problems -------------- This list is probably incomplete, more problems may be listed on the MacPython homepage, http://www.cwi.nl/~jack/macpython.html. - MacPython 2.2a3 (and MacPython 2.1) will not run correctly on a multiprocessor MacOS X machine, it will quickly deadlock during I/O operations. The GUSI I/O library is suspected, hints/clues/workarounds are solicited. - Tkinter does not work under Carbon. - The IDE and Tkinter do not work together. Run tkinter programs under PythonInterpreter. - Tkinter file events do not work, unless you have opened the file through Tcl (but then you cannot access it from Python). - Aliases may not work in sys.path entries. - Under Carbon on OS9 only you may occasionally see a spurious KeyboardInterrupt. I have absolutely no clue as to what is causing this. - PythonInterpreter used interactively will eat a lot of processor cycles. You should use PythonIDE for interactive work and PythonInterpreter for scripts only. This is especially true under OSX. - AliasMenu 2.2 conflicts with the Carbon version of Python. This is most likely a problem with AliasMenu (which is from 1999, and thus predates Carbon altogether).