Updated for 1.4b3

This commit is contained in:
Jack Jansen 1996-08-28 13:51:11 +00:00
parent a78d76dcaf
commit a1293dae7b
2 changed files with 214 additions and 21 deletions

View File

@ -1,4 +1,4 @@
How to install Python 1.3.3 on your Macintosh
How to install Python 1.4 on your Macintosh
------------------------------------------------
Even if you don't usually read readme files: please read at least the
@ -7,9 +7,11 @@ an unuseable python system. If this warning is too late and you already
have an non-functional python: it is best to remove all traces and start
with a fresh distribution. Especially don't forget to remove the
"python preferences" file from the Preferences folder, and possibly
"PythonCore" from the Extensions folder. Before you mail me for help *please*
"PythonCore", "PythonCorePPC" and/or "PythonCoreCFM68K"
from the Extensions folder. Before you mail me for help *please*
try the steps above (cleaning up and re-installing): it should fix most
common mistakes.
common mistakes. If you are installing a CFM68K python also check that
your installation of CFM68K was done correctly.
If this is your first encounter with Python: you definitely need the common
user documentation (common to all platforms). You can find this (in various
@ -33,10 +35,16 @@ freezing. If this happens I would like to hear of it.
Note that if you're using Tk you might want to raise the memory size, tcl
and tk are quite a memory hog.
A final note to CFM68K (and possibly PPC) users: the Code Fragment Manager
can (incorrectly) produce "library not found" and other strange error messages
when it really means that there is not enough room in the system heap. Decreasing
(yes, *de*creasing) the size of the interpreter and/or enabling virtual memory
may solve these problems.
PowerPC Macintosh instructions
------------------------------
1. Remove older versions of "PythonCore" and "Python Preferences"
1. Remove older versions of "PythonCorePPC", "PythonCore" and "Python Preferences"
from your system folder.
2. Run the MkPluginAliases applet. This will first ask you whether it should
@ -46,20 +54,31 @@ PowerPC Macintosh instructions
by hand (and tell me what you did to make the script fail:-).
3. To make sure any applets you create can find the common interpreter code
you should move PythonCore to the Extensions folder (drop it on the
you should move PythonCorePPC to the Extensions folder (drop it on the
System Folder and it will find its own way). Alternatively, you can
make an alias called "PythonCore" in the Extensions folder and
point it to the real PythonCore. You may want to start PythonPPC
make an alias called "PythonCorePPC" in the Extensions folder and
point it to the real PythonCorePPC. You may want to start PythonPPC
again at this point to check that you actually put the extension in
the right place.
4. You're all set now. Continue with the common instructions.
68K Macintosh instructions
--------------------------
CFM68K Macintosh instructions
-----------------------------
1. Remove old "Python Preferences" file from the Preferences folder, if you
have one (the file, that is, not the folder:-).
For this you need a Mac with a 68020, 68030 or 68040, and at least System 7.1.1.
CFM68K Python will not run on PowerPC Macs.
1. Install the stuff from the "CFM68K for System Folder" into the Extensions
folder and restart.
2. Continue with the PowerPC instructions, but read "CFM68K" every time you see
"PPC".
Classic 68K Macintosh instructions
----------------------------------
1. Remove the old "Python Preferences" file from the Preferences folder, if there is one.
2. Run Python68K. This will create an initial preferences file (after
asking you if that's ok with you). Quit python.
@ -76,22 +95,21 @@ interpreter.
Next, try "compileall.py" from :Lib to create all .pyc files (but this isn't
really important).
PPC users have a couple of applets in the main folder they may want to try,
PPC and CFM68K users have a couple of applets in the main folder they may want to try,
(68K users can use the corresponding scripts from the "scripts" folder):
- EditPythonPrefs allows you to edit the preferences file, to change the
python home folder or modify the initial sys.path setting.
The default settings are "liberal", you can remove stdwin and tkinter if
you don't use them and maybe others.
- RunLibScript allows you to run any script as __main__ after setting arguments,
changing stdin/stdout/workdir, etc. Most of this functionality can also be
obtained nowadays by option-dragging a script to the interpreter.
- For PPC only, mkapplet creates a python applet, a tiny application written
The default settings are somewhat arbitrary, you can remove tkinter if
you don't use it and possibly add Extensions:img:Lib.
- mkapplet creates a python applet, a tiny application written
in python. Drop a python source on it and out comes the application. More
information can be found in the "Mac:Demo" folder.
PPC users will see one more files in the python folder: PythonApplet. This is
the template for building applets, leave it alone.
PPC and CFM68K users will see one more files in the python folder: PythonApplet. This is
the template for building applets, leave it alone. For the 1.4b3 release the applet is
specific for your installation, i.e. PPC applets will not run on CFM68K machines and vice
versa. I hope to fix this soon.
Things to see
-------------
@ -115,8 +133,12 @@ Feedback
--------
Send bug reports, suggestions, contributions and fanmail to <jack@cwi.nl>.
Be warned however that I'm pretty busy at the moment, so I may not always
Be warned however that I'm pretty busy, so I may not always
respond immedeately.
A better way to discuss MacPython is to join the <pythonmac-sig@python.org>
mailing list, which is explicitly meant for this purpose.
Alternatively, you can try sending to comp.lang.python or python-list@cwi.nl,
but since I read the newsgroup, not the mailinglist, I may miss it there
(but other people may know quite a bit more than me anyway:-).

171
Mac/Relnotes-1.4b3 Normal file
View File

@ -0,0 +1,171 @@
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