blob: f776efd9cd48f7a30ebf4565b623259dddb7d04b [file] [log] [blame]
Changes in 2.1.1 since 2.1
--------------------------
These release notes refer to Mac-specific changes only. See NEWS (in the Misc folder)
for machine-independent changes.
- Handling non-ascii characters in sys.path on non-MacRoman systems should be fixed,
iff MacPython has a codec for the charset. Otherwise you should get an error, at least.
Pathnames in sys.path also retain their original case again.
- IDE could crash on corrupt preferences. Fixed.
- IDE will now work if you use either pre or sre as re.
- Evt.WaitNextEvent could give an error when bit 15 was set, which could cause a problem
with IDE in classic mode. Fixed.
- MacOS8.X users in classic mode had problems with Fm not loading, which also caused
IDE not working. Fixed.
- Fm.IsAntiAliasedTextEnabled and Fm.SetAntiAliasedTextEnabled have gone for now, to
fix the problem above.
- Disabled the Tkinter file I/O event handler, which was there but didn't work anyway.
- Problems with loading dynamic modules that are part of a package into BuildApplication-
generated programs were fixed.
- The order of the EasyDialogs yes/no/cancel buttons has been conformed to the Mac
standard.
- Handling of Dialogs and Windows that were not created by Python is a bit more graceful
now, which may fix some crashes.
- Ctl.SendControlMessage has gone. But it didn't work anyway.
- Various problems with the TextEdit and Waste demos have been fixed.
- Embedding/extending only: in preparation to allowing the use of MacPython modules in
unix-Python on OSX the xxx_New and xxx_Convert routines are now optionally vectored via
glue routines in macglue.c. The only change that may be needed for embedders/extenders is
that you may want to include pymactoolbox.h in your sources.
- Embedding/extending only: Most MacPython source is now much more Mach-O friendly, and
should work with Universal Headers 3.4.
- Experimental: an Mlte module has been added, an interface to the Multi Lingual Text
Engine. There is a minimal example in :Mac:Demos:mlte.
- Experimental: some support for FSRef objects has been added. You can do little more that
convert them to/from FSSpecs. Carbon only.
- Experimental: the CF module has some support for CoreFoundation types. CFString
and CFURL work, to a degree, and can be converted to/from Python strings and Unicode
objects. Carbon only.
What is not in this distribution
--------------------------------
- The garbage collection mods have not been enabled, mainly due to lack of test-time.
- Stackless Python/microthreads hasn't been ported to 2.1 yet. If/when it becomes available
Just will undoubtedly announce it on pythonmac-sig and the MacPython homepage.
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.1.1 (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).