home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 7 / Apprentice-Release7.iso / Source Code / C / Applications / Python 1.4 / Python 1.4 source / Mac / Relnotes-1.4 < prev    next >
Encoding:
Text File  |  1996-10-24  |  9.3 KB  |  224 lines  |  [TEXT/R*ch]

  1.     Changes between 1.4 and 1.3.3
  2.     -------------------------------
  3.  
  4. Aside from all the changes Guido made to the machine-independent part
  5. of Python (see NEWS for those)the following mac-specific changes have
  6. been made:
  7.  
  8. - Preference file and other items in the System folder now have the
  9.   version number in their name, so old and new python installations
  10.   can coexist.
  11. - Fixed a GUSI crash when exiting with files open.
  12. - Fixed interference with some extensions that added resources that
  13.   looked like ours.
  14. - Fixed slowness of Python in the background.
  15. - About box added (at last...).
  16. - New release of CWGUSI (1.8.0) incorporated. Note that for Tcl/Tk the
  17.   4.1p1 release is still used (4.2 was a little too late). Everything
  18.   ported to CW10.
  19. - Applets can now turn off argc/argv processing (so they can do their
  20.   own initial AppleEvent handling). Applets can also delay opening the
  21.   console window until it is actually used (and, hence, not open it at
  22.   all by refraining from using it).
  23. - MiniAEFrame: Preliminary AppleScript server support. Example code
  24.   provided, including an initial stab at writing CGI scripts in Python.
  25. - macfs: FindApplication() locates application given 4-char creator
  26.   code.
  27. - macfs: GetDates and SetDates get and set creation date, etc.
  28. - FrameWork: preferred method of ending mainloop() is calling _quit().
  29. - FrameWork: different menubar handling resulting in less flashing
  30.   during menu creation.
  31. - FrameWork: added setarrowcursor and setwatchcursor functions.
  32. - findertools: new module that makes various finder features
  33.   available.
  34. - macostools: copy file times too.
  35. - macostools: added touch() to tell finder about changes to a file.
  36. - macerrors: New module with symbolic names for all os-releated
  37.   errors.
  38. - EasyDialogs: ProgressBar fixed.
  39. - aetools: start application if needed
  40. - aetools: use aetools.error for server-generated errors, MacOS.error
  41.   for communication errors, etc.
  42. - Finder_7_0_Suite: New module with the "simple" finder scripting
  43.   interface.
  44. - mac (aka os): xstat() returns resourcesize, creator, type in
  45.   addition to stat() information.
  46. - MacOS: added DebugStr method to drop to low-level debugger.
  47. - MacOS: fixed splash() to actually draw the splash box:-)
  48. - Ctl: fixed very nasty bug in DisposeControl and object deletion.
  49. - Dlg: Added GetDialogWindow and other accessor functions
  50. - Waste: fixed bug with object hanlder installation
  51. - Waste: added tab support
  52. - time: added strftime
  53. - twit: a windowing debugger for Python (preliminary release)
  54. - BBPy: a BBEdit extension that send scripts to the Python interpreter,
  55.   by Just van Rossum.
  56.  
  57. The following set of changes were already in place for the 1.4b3
  58. release:
  59. - The standard 68K Python is built for CFM68K. This means that PPC and
  60.   68K Python are now largely compatible, both supporting dynamically
  61.   loaded modules, python applets, etc.
  62.   As a result of this there have been numerous subtle changes in
  63.   filenames for PPC plugin modules and such, but these changes should
  64.   be transparent to Python programs.
  65.   The one missing module in cfm68k is Macspeech, for which no CFM68K
  66.   interface library is available (yet?).
  67. - Raise MemoryError on stack overflow.
  68. - Python now always uses 8-byte doubles.
  69. - Removed mactcp, macdnr and stdwin modules from standard
  70.   distribution.
  71. - New releases of Tcl/Tk (4.1p1), CWGUSI (1.7.2) and Waste (1.2f) have
  72.   been incorporated.
  73. - Macfs.SetFolder method added, which sets initial folder for standard
  74.   file dialogs.
  75. - New py_resource module to handle PYC resources.
  76. - List mgr objects "selFlags" and "listFlags" members now accessible.
  77. - QuickDraw got a few new symbolic constants.
  78. - Qt and Cm modules now live in a separate dynamically loadable
  79.   module, so other toolbox modules work if you don't have QuickTime
  80.   installed.
  81. - Old sound mgr calls {Set,Get}SoundVol removed, version number
  82.   interface changed.
  83. - Added convenience routines setarrowcursor and setwatchcursor to
  84.   FrameWork.
  85. - Bugfixes to time.sleep(), FrameWork, macostools,
  86. - Minor fixes/additions/updates to demos and documentation in the Demo
  87.   folder.
  88. - Internal changes:
  89.   - Ported to CW9
  90.   - mwerks_????_config.h organization rationalized
  91.   - Projects renamed to reflect architecture (ppc, cfm68k, 68k).
  92.   - various defines (HAVE_CONFIG_H, USE_MAC_DYNAMIC_LOADING) no longer
  93.     needed.
  94.   - shared-library architecture made more conforming to metrowerks
  95.     documentation. Check xx plugin projects if you have built your own
  96.     dynamically loaded modules.
  97.   
  98.     
  99.     Changes between 1.3.3 and 1.3.2
  100.     --------------------------------
  101.  
  102. A major change since 1.3.2 is in the organization of the files: The
  103. Mac folder has mac-specific demo programs, attempts at documentation and
  104. more. Browse the HTML files in Mac:Demo for more info.
  105.  
  106. Also, Toolbox:bgen is not needed anymore for normal use: the relevant
  107. python modules have been moved to Mac:Lib:toolbox.
  108.  
  109. Other changes:
  110. - Uses final Tk 4.1 and Tcl 7.5 distributions.
  111. - Override preferences (stored in the interpreter/applet application)
  112.   allow overriding of system-wide preferences. Explained in
  113.   "using.html".
  114. - New functionality in FrameWork.py:
  115.   - ScrolledWindow class
  116.   - enable(), settext(), setitem(), setmark(), seticon(),
  117.     checkmenu() and delete() methods for menu entries.
  118.   - event parameter added to idle() method
  119.   - windowbounds() function helps programmer with staggering windows.
  120.   - Erase only visRgn on an update event.
  121. - TextEdit interface module added
  122. - Waste interface module added
  123. - Demos for waste, including skeleton for html editor
  124. - Scrap manager interface added
  125. - Ctl.FindControl() could return reference to deleted object. Fixed.
  126. - GrafPorts have an _id attribute (address of grafport) allowing them
  127.   to be compared (since a new python object is created each time).
  128. - Standard File folder no longer changed on chdir() (this was
  129.   introduced in 1.3.2).
  130. - sys.argv can now be set if you option-drag or option-click a python
  131.   source.
  132. - Various dialogs now have sensible defaults.
  133. - binhextree is now a bit more intelligent about when to binhex.
  134. - gensuitemodule fixed to hand '****' type arguments.
  135.  
  136.     Changes between 1.3.2 and 1.3.1
  137.     -------------------------------
  138.  
  139. The main reason for the 1.3.2 distribution is the availability of Tk
  140. for the mac. The Tk port and its integration in Python is definitely
  141. not bug-free, hence this distribution should be treated as beta
  142. software at best.
  143.  
  144. Another major change in this release is that the Python I/O system is
  145. now based on the GUSI library. This is an I/O library that attempts to
  146. mimic a Posix I/O system. Hence, modules like socket and select are
  147. now available in MacPython. If you build dynamically loaded modules
  148. and you use any unix-like feature such as stat() calls you should
  149. compile using the GUSI include files.
  150.  
  151. A third major change is that the MacOS creator code has been changed
  152. from 'PYTH' to 'Pyth', due to a conflict. This means that you will
  153. have to change the creator of all your old python programs. The
  154. distribution contains a script "FixCreator.py" that does this
  155. recursively for a whole folder.
  156.  
  157. Here are all the changes since 1.3.1, in no particular order:
  158. - complex number support added
  159. - cmath module added
  160. - startup options ("option-drag" dialog) can be retrieved from the
  161.   preferences file. EditPythonPrefs hasn't been updated yet, though.
  162. - Creator changed from PYTH to Pyth
  163. - {mac,os}.unlink is now also called {mac,os}.remove
  164. - {mac,os}.mkdir second arg optional
  165. - dup and fdopen calls added
  166. - select module added
  167. - socket module added
  168. - open(file, '*r') for opening resource forks has been removed. It is
  169.   replaced by MacOS.openrf(file, 'r'), which returns a simple
  170.   file-like object to read (or write) resource forks.
  171. - Added AppleEvent URL suite
  172. - Added AppleEvent netscape suite
  173. - QuickDraw globals are now all accessible, as Qd.qd.xxxx
  174.  
  175.  
  176.     Mac-specific changes between 1.3 and 1.3.1
  177.     --------------------------------------
  178.  
  179. Aside from the changes mentioned here there have also been some
  180. changes in the core python, but these are not documented here.
  181. However, these changes are mainly bugfixes, so there shouldn't be any
  182. incompatabilities.
  183.  
  184. - imgsgi and imgpbm modules added
  185. - Various hooks installed to allow integration with MacTk (currently
  186.   disabled)
  187. - Added support for MacOS Fixed type in toolbox arguments (represented
  188.   as floats in python)
  189. - Added option to keep output window open on normal termination
  190. - Decreased minimum heapsize to run interpreter
  191. - Added progress-bar to EasyDialogs
  192. - Fixed socket.getportname()
  193. - Renamed MACTCP.py to MACTCPconst.py
  194.  
  195. - Many fixes to FrameWork.py:
  196.   - Added window.SetPort() method
  197.   - Added optional bounds and resid parameters to Window.open()
  198.   - Fixed apple-menu DA handling
  199.   - Fixed activate-event handling
  200.   - Added default Application.makeusermenus() (File:Quit only)
  201.   - Fixed bug with keyboard input handling
  202.   - added idle() method, called from event loop if there are no events
  203.     pending
  204.  
  205. Toolbox modules:
  206. - component manager module added
  207. - quicktime module added
  208. - font manager module added
  209. - Added color window support
  210. - Added support to obtain pixmap from a window
  211. - Added BitMap type
  212. - Added GrafPort type
  213. - Added support for PenState, Patterns, FontInfo, RGB colors,
  214. - Fixed GetPen and SetPt arguments
  215. - Added read access to members of {C}GrafPort objects
  216. - Added support for cursors
  217. - Provide access to some QuickDraw globals
  218. - Fixed InsetRect, OffsetRect, MapRect
  219. - Added support for various handles such as PatHandle, CursHandle
  220. - Added functions to access members of Window objects
  221.  
  222.  
  223.  
  224.