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).
