blob: 1047fdd25e3cd1a75eb7cf1dd69db675a86d34ea [file] [log] [blame]
Jack Jansen24033e32001-02-27 23:24:07 +00001Changes in 2.1a3 since 2.0
Jack Jansen538bd132000-10-19 21:58:27 +00002--------------------------
Jack Jansenecbc1cc1998-01-06 12:13:16 +00003
Jack Jansen26d7c142000-09-11 22:47:12 +00004These release notes refer to Mac-specific changes only. See NEWS (in the Misc folder)
Jack Jansen24033e32001-02-27 23:24:07 +00005for machine-independent changes. Changes since previous alfa/beta releases for 2.1 are
6marked with [*] and at the bottom of the list. Note that 2.1a3 is a Mac-only release.
7The machine-independent stuff is at a state somewhere between 2.1a2 and 2.1b1.
Jack Jansenecbc1cc1998-01-06 12:13:16 +00008
Jack Jansen2f9a9e32001-02-17 22:03:42 +00009- The good news: this release is Carbon-based, so it runs natively on MacOS 8.6 or
10 later and MacOSX.
11- The bad news: this release is Carbon-only. The next alpha release will be both
12 Carbon and classic PPC.
13- Distutils is included and seems to work.
14- There's a new module (package, actually) mkcwproject which builds CodeWarrior
15 projects from simple templates. See Distutils or :Mac:scripts:genpluginprojects.py
16 for examples of use.
17- Windows and Dialogs can now be different beasts, so you may have to call
18 dlg.GetDialogWindow() where you used to be able to call window methods straight
19 on the dialog. This also has consequences for code using FrameWork.DialogWindow.
20 THIS IS AN INCOMPATIBLE CHANGE.
21- ctl.GetControlDataHandle() has been renamed to GetControlData_Handle(), and similarly
22 for the other variants of GetControlData and SetControlData. This was needed
23 because Carbon defines a completely different routine with the name GetControlDataHandle.
24 THIS IS AN INCOMPATIBLE CHANGE.
25- Method mac.xstat() has disappeared. THIS IS AN INCOMPATIBLE CHANGE.
26- Menu.SetPopupData() and GetPopupData() are gone. Use SetPopupMenuHandle() and
27 SetPopupMenuID() (and the getters) in stead. THIS IS AN INCOMPATIBLE CHANGE.
28- Various methods have disappeared when running under Carbon. The script
29 :Mac:scripts:missingcarbonmethods.py can check your sources, but you need unix to run
30 it. Or use it as documentation and search by hand. THIS IS AN INCOMPATIBLE CHANGE.
31- The good news is that "direct access to toolbox structs" still works from Python,
32 so Python programmers have a lot less to fix than C programmers.
33 That's because the lowlevel code simply uses the accessors internally. The accessors
34 are available both in Carbon and Classic MacPython.
35- Scrap under Carbon is, you guessed it, the Carbon Scrap Manager. Some workarounds are
36 provided, though. THIS IS AN INCOMPATIBLE CHANGE.
37- The Internet Config routines that are missing from Carbon have been removed. This
38 is no problem if you use the "ic" module, but may be if you use "icglue" directly.
39 THIS IS AN INCOMPATIBLE CHANGE.
40- Various old toolbox names (CountMItems, EnableItem, etc) have disappeared. Use the
41 new forms (CountMenuItems, EnableMenuItem, etc). THIS IS AN INCOMPATIBLE CHANGE.
42- Waste now uses Waste 2.0.
43- The default memory size for the interpreter has been upped again.
44- The MacOS error messages have been updated to reflect the current state of
45 things. This was long overdue.
46- The crash in BuildApplication has been fixed.
47- struct.pack related problems (in Audio_Mac, for example) have been fixed.
48- (src/dev/cvs only): The project files now use the .mcp extension in stead of .prj.
49 Projects for almost all plugins and the img modules are automatically generated
50 with :Mac:scripts:genpluginprojects.py (also called by fullbuild). The .mcp files
51 are not in the repository, if you don't want to use genpluginprojects you can import
52 the .mcp.xml files in CodeWarrior.
Jack Jansen24033e32001-02-27 23:24:07 +000053- ConfigurePython has been replace by two applets: ConfigurePythonClassic and
54 ConfigurePythonCarbon. These will select either execution model for machines
55 supporting both, and it will also build all the standard applets. [*]
56- Dlg.ModalDialog() almost invariably crashed. This showed in EasyDialogs, EditPythonPrefs
57 and meny other things. Fixed. [*]
58- Carbon MacPython did not work with CarbonLib 1.1 or later. Fixed. [*]
59- IDE flashed a window and complained about it. Fixed, by getting rid of regex in
60 favor of re. Code not fully tested. [*]
61- IDE could crash on some edit operations due to WEGetUndoInfo(). Fixed. [*]
62- time.time() again returns positive values. [*]
Jack Jansen46e13022000-09-24 22:01:53 +000063
Jack Jansen26d7c142000-09-11 22:47:12 +000064
65What is not in this distribution
66--------------------------------
67
Jack Jansen2f9a9e32001-02-17 22:03:42 +000068- The garbage collection mods have not been enabled, mainly due to lack of test-time.
Jack Jansen2d017ec2000-09-14 21:02:22 +000069- Stackless Python/microthreads hasn't been ported to 2.0 yet. If/when it becomes available
Jack Jansende519092000-10-12 21:21:43 +000070 Just will undoubtedly announce it on pythonmac-sig and the MacPython homepage.
Jack Jansen26d7c142000-09-11 22:47:12 +000071
72Known problems
73--------------
74
75This list is far from complete, more problems may be listed on the MacPython homepage,
76http://www.cwi.nl/~jack/macpython.html.
77
78- The IDE and Tkinter do not work together. Run tkinter programs under PythonInterpreter.
79- Aliases do not work in sys.path entries.
Jack Jansen2f9a9e32001-02-17 22:03:42 +000080- The menu bar isn't always correctly restored before MacPython turns to <<terminated>>.
81- Under Carbon only you may occasionally see a spurious KeyboardInterrupt. I have absolutely
82 no clue as to what is causing this.