172 lines
6.9 KiB
Plaintext
172 lines
6.9 KiB
Plaintext
Changes between 1.4b3 and 1.3.3
|
|
-------------------------------
|
|
|
|
Aside from all the changes Guido made to the machine-independent part
|
|
of Python the following mac-specific changes have been made:
|
|
|
|
- The standard 68K Python is built for CFM68K. This means that PPC and
|
|
68K Python are now largely compatible, both supporting dynamically
|
|
loaded modules, python applets, etc.
|
|
As a result of this there have been numerous subtle changes in
|
|
filenames for PPC plugin modules and such, but these changes should
|
|
be transparent to Python programs.
|
|
The one missing module in cfm68k is Macspeech, for which no CFM68K
|
|
interface library is available (yet?).
|
|
- Raise MemoryError on stack overflow.
|
|
- Python now always uses 8-byte doubles.
|
|
- Removed mactcp, macdnr and stdwin modules from standard
|
|
distribution.
|
|
- New releases of Tcl/Tk (4.1p1), CWGUSI (1.7.2) and Waste (1.2f) have
|
|
been incorporated.
|
|
- Macfs.SetFolder method added, which sets initial folder for standard
|
|
file dialogs.
|
|
- New py_resource module to handle PYC resources.
|
|
- List mgr objects "selFlags" and "listFlags" members now accessible.
|
|
- QuickDraw got a few new symbolic constants.
|
|
- Qt and Cm modules now live in a separate dynamically loadable
|
|
module, so other toolbox modules work if you don't have QuickTime
|
|
installed.
|
|
- Old sound mgr calls {Set,Get}SoundVol removed, version number
|
|
interface changed.
|
|
- Added convenience routines setarrowcursor and setwatchcursor to
|
|
FrameWork.
|
|
- Bugfixes to time.sleep(), FrameWork, macostools,
|
|
- Minor fixes/additions/updates to demos and documentation in the Demo
|
|
folder.
|
|
- Internal changes:
|
|
- Ported to CW9
|
|
- mwerks_????_config.h organization rationalized
|
|
- Projects renamed to reflect architecture (ppc, cfm68k, 68k).
|
|
- various defines (HAVE_CONFIG_H, USE_MAC_DYNAMIC_LOADING) no longer
|
|
needed.
|
|
- shared-library architecture made more conforming to metrowerks
|
|
documentation. Check xx plugin projects if you have built your own
|
|
dynamically loaded modules.
|
|
|
|
|
|
Changes between 1.3.3 and 1.3.2
|
|
--------------------------------
|
|
|
|
A major change since 1.3.2 is in the organization of the files: The
|
|
Mac folder has mac-specific demo programs, attempts at documentation and
|
|
more. Browse the HTML files in Mac:Demo for more info.
|
|
|
|
Also, Toolbox:bgen is not needed anymore for normal use: the relevant
|
|
python modules have been moved to Mac:Lib:toolbox.
|
|
|
|
Other changes:
|
|
- Uses final Tk 4.1 and Tcl 7.5 distributions.
|
|
- Override preferences (stored in the interpreter/applet application)
|
|
allow overriding of system-wide preferences. Explained in
|
|
"using.html".
|
|
- New functionality in FrameWork.py:
|
|
- ScrolledWindow class
|
|
- enable(), settext(), setitem(), setmark(), seticon(),
|
|
checkmenu() and delete() methods for menu entries.
|
|
- event parameter added to idle() method
|
|
- windowbounds() function helps programmer with staggering windows.
|
|
- Erase only visRgn on an update event.
|
|
- TextEdit interface module added
|
|
- Waste interface module added
|
|
- Demos for waste, including skeleton for html editor
|
|
- Scrap manager interface added
|
|
- Ctl.FindControl() could return reference to deleted object. Fixed.
|
|
- GrafPorts have an _id attribute (address of grafport) allowing them
|
|
to be compared (since a new python object is created each time).
|
|
- Standard File folder no longer changed on chdir() (this was
|
|
introduced in 1.3.2).
|
|
- sys.argv can now be set if you option-drag or option-click a python
|
|
source.
|
|
- Various dialogs now have sensible defaults.
|
|
- binhextree is now a bit more intelligent about when to binhex.
|
|
- gensuitemodule fixed to hand '****' type arguments.
|
|
|
|
Changes between 1.3.2 and 1.3.1
|
|
-------------------------------
|
|
|
|
The main reason for the 1.3.2 distribution is the availability of Tk
|
|
for the mac. The Tk port and its integration in Python is definitely
|
|
not bug-free, hence this distribution should be treated as beta
|
|
software at best.
|
|
|
|
Another major change in this release is that the Python I/O system is
|
|
now based on the GUSI library. This is an I/O library that attempts to
|
|
mimic a Posix I/O system. Hence, modules like socket and select are
|
|
now available in MacPython. If you build dynamically loaded modules
|
|
and you use any unix-like feature such as stat() calls you should
|
|
compile using the GUSI include files.
|
|
|
|
A third major change is that the MacOS creator code has been changed
|
|
from 'PYTH' to 'Pyth', due to a conflict. This means that you will
|
|
have to change the creator of all your old python programs. The
|
|
distribution contains a script "FixCreator.py" that does this
|
|
recursively for a whole folder.
|
|
|
|
Here are all the changes since 1.3.1, in no particular order:
|
|
- complex number support added
|
|
- cmath module added
|
|
- startup options ("option-drag" dialog) can be retrieved from the
|
|
preferences file. EditPythonPrefs hasn't been updated yet, though.
|
|
- Creator changed from PYTH to Pyth
|
|
- {mac,os}.unlink is now also called {mac,os}.remove
|
|
- {mac,os}.mkdir second arg optional
|
|
- dup and fdopen calls added
|
|
- select module added
|
|
- socket module added
|
|
- open(file, '*r') for opening resource forks has been removed. It is
|
|
replaced by MacOS.openrf(file, 'r'), which returns a simple
|
|
file-like object to read (or write) resource forks.
|
|
- Added AppleEvent URL suite
|
|
- Added AppleEvent netscape suite
|
|
- QuickDraw globals are now all accessible, as Qd.qd.xxxx
|
|
|
|
|
|
Mac-specific changes between 1.3 and 1.3.1
|
|
--------------------------------------
|
|
|
|
Aside from the changes mentioned here there have also been some
|
|
changes in the core python, but these are not documented here.
|
|
However, these changes are mainly bugfixes, so there shouldn't be any
|
|
incompatabilities.
|
|
|
|
- imgsgi and imgpbm modules added
|
|
- Various hooks installed to allow integration with MacTk (currently
|
|
disabled)
|
|
- Added support for MacOS Fixed type in toolbox arguments (represented
|
|
as floats in python)
|
|
- Added option to keep output window open on normal termination
|
|
- Decreased minimum heapsize to run interpreter
|
|
- Added progress-bar to EasyDialogs
|
|
- Fixed socket.getportname()
|
|
- Renamed MACTCP.py to MACTCPconst.py
|
|
|
|
- Many fixes to FrameWork.py:
|
|
- Added window.SetPort() method
|
|
- Added optional bounds and resid parameters to Window.open()
|
|
- Fixed apple-menu DA handling
|
|
- Fixed activate-event handling
|
|
- Added default Application.makeusermenus() (File:Quit only)
|
|
- Fixed bug with keyboard input handling
|
|
- added idle() method, called from event loop if there are no events
|
|
pending
|
|
|
|
Toolbox modules:
|
|
- component manager module added
|
|
- quicktime module added
|
|
- font manager module added
|
|
- Added color window support
|
|
- Added support to obtain pixmap from a window
|
|
- Added BitMap type
|
|
- Added GrafPort type
|
|
- Added support for PenState, Patterns, FontInfo, RGB colors,
|
|
- Fixed GetPen and SetPt arguments
|
|
- Added read access to members of {C}GrafPort objects
|
|
- Added support for cursors
|
|
- Provide access to some QuickDraw globals
|
|
- Fixed InsetRect, OffsetRect, MapRect
|
|
- Added support for various handles such as PatHandle, CursHandle
|
|
- Added functions to access members of Window objects
|
|
|
|
|
|
|