1- This is Python release 1.5 alpha 4
1+ This is Python release 1.5 beta 1
22==================================
33
4- ******************************************
5- *** RELEASE RESTRICTED TO PSA MEMBERS! ***
6- ******************************************
7-
8-
94What's new in this release?
105---------------------------
116
127Too much has changed to list it all here. There's a loooong list of
13- changes in Misc/NEWS. This file is now *complete*: it has all changes
14- made since 1.4 (all changes worth mentioning, anyway). The complete
15- list of changes since 1.5a4 is presented at the end of the file. (It
16- could still use a better organization. Want to volunteer to add
17- better structor or convert it to HTML?)
18-
19- - There's support in the readline module to change bindings and
20- write your own command completer in Python. An example completer is
21- in rlcompleter.py.
22-
23- - The new re module is here. It is based on Philip Hazel's pcre
24- code; the Python interfaces were put together by Andrew Kuchling.
25- The regex module is declared obsolete. (The previous re
26- implementation, obsolete though it is, is still available as
27- re1.py, as a keepsake.)
8+ changes since release 1.4 in the file Misc/NEWS. If you were an alpha
9+ tester, the list of changes since 1.5a4 is presented at the end of
10+ that file.
2811
29- - All standard exceptions and most exceptions defined in standard
30- extension modules are now classes. Use python -X to revert back to
31- string exceptions. See
32- http://grail.cnri.reston.va.us/python/essays/stdexceptions.html
33- for more info.
12+ Most relevant changes since 1.5a4 (of course all known bugs have been
13+ fixed, leaks plugged, and documentation has been added):
14+
15+ - Package directories now *require* the presence of __init__.py.
16+ Packages can now contain shared libraries.
17+
18+ - New module 'fileinput' to iterate over the lines of a list of files.
19+
20+ - New module 'locale' for localized number formatting and string case
21+ sensitivity.
22+
23+ - New module 'xmllib' to parse XML files.
24+
25+ - Some more support for Tk extensions (PIL, TIX, BLT, TOGL).
26+
27+ - Fixed address list parsing in module 'rfc822'.
28+
29+ - More deployment (and only one fix) for the 're' module.
30+
31+ - New Python mode for Emacs.
32+
33+ - OS/2 support.
3434
35- - Sequence assignments no longer require exact matching of the type
36- of sequence on the left- and right-hand side. For example
37- (a, b, c) = [1, 2, 3]
38- is now legal. (The lengths must still match exactly.)
35+ Other important changes, if this is the first release you see since
36+ 1.4:
3937
40- - dict.get(key, default) returns dict[key] if it exists, and default
41- otherwise; default defaults to None.
38+ - It's much faster (almost twice for the Lib/test/pystone.py
39+ benchmark.)
4240
43- - Class objects now have a __module__ attribute giving the module
44- name in which they were defined.
41+ - There's an assert statement: assert <condition> or
42+ assert <condition>, <errormessage>. It raises AssertionError if the
43+ condition evaluates to false.
4544
4645 - There is now built-in support for importing hierarchical module
4746 names (e.g. "import spam.ham.eggs"); ni is declared obsolete. Note
@@ -51,38 +50,30 @@ better structor or convert it to HTML?)
5150 http://grail.cnri.reston.va.us/python/essays/packages.html
5251 for more info.
5352
54- - A site can append items to the end of the default sys.path by
55- placing directory names in files named *.pth in either
56- $prefix/lib/site-python/ or $prefix/lib/python1.5/site-packages/.
57- This is implemented in the module site.py which is now loaded by
58- default at the end of initialization; use python -S to skip this.
59- See
60- http://grail.cnri.reston.va.us/python/essays/packages.html
61- for more info.
62-
63- Other important changes, if this is the first release you see since
64- 1.4:
65-
66- - It's much faster (almost twice for pystone.py -- see
67- Tools/scripts.)
68-
69- - There's an assert statement.
53+ - The new "re" module (Perl style regular expressions) is here. It
54+ is based on Philip Hazel's pcre code; the Python interfaces were put
55+ together by Andrew Kuchling. The regex module is declared obsolete.
7056
7157 - In support of the re module, a new form of string literals is
7258 introduced, "raw strings": e.g. r"\n" is equal to "\\n".
7359
60+ - All standard exceptions and most exceptions defined in standard
61+ extension modules are now classes. Use python -X to revert back to
62+ string exceptions. See
63+ http://grail.cnri.reston.va.us/python/essays/stdexceptions.html
64+ for more info.
65+
7466 - Comparisons can now raise exceptions.
7567
76- - New dictionary methods: .clear(), .update(), .copy().
68+ - New dictionary methods: .clear(), .update(), .copy(), .get().
69+
70+ - New regression test harness tests more.
7771
7872 - It's much smarter about the initial value for sys.path; you can
7973 control it easier using $PYTHONHOME (see the usage message, e.g. try
8074 ``python -h''). In most situations, the interpreter can be
8175 installed at an arbitrary location without having to recompile.
8276
83- - The infamous killer joke, ehh, metaclass support, is now
84- available. See Demo/metaclasses/ for more info.
85-
8677 - The build process now builds a single library (libpython1.5.a)
8778 which contains everything except for the main() entry point. This
8879 makes life much easier for applications that embed Python.
@@ -100,7 +91,15 @@ Other important changes, if this is the first release you see since
10091 defined by Python now have a "Py" or "_Py" prefix, and the same is
10192 true for most macros and typedefs.
10293
103- - New regression test harness tests more.
94+
95+ If you don't read instructions
96+ ------------------------------
97+
98+ Congratulations on getting this far. :-)
99+
100+ To start building right away (on UNIX): type "./configure" in the
101+ current directory and when it finishes, type "make". The section
102+ Build Instructions below is still recommended reading. :-)
104103
105104
106105What is Python anyway?
@@ -159,26 +158,15 @@ If you can read German, try:
159158 ISBN: 3-8273-1110-1
160159
161160
162- If you don't read instructions
163- ------------------------------
164-
165- Congratulations on getting this far. :-)
166-
167- To start building right away (on UNIX): type "./configure" in the
168- current directory and when it finishes, type "make". The section
169- Build Instructions below is still recommended reading. :-)
170-
171-
172161Copyright issues
173162----------------
174163
175164Python is COPYRIGHTED but free to use for all. See the full copyright
176- notice at the end of this file.
165+ notice at the end of this file and in the file Misc/COPYRIGHT .
177166
178167The Python distribution is *not* affected by the GNU Public Licence
179168(GPL). There are interfaces to some GNU code but these are entirely
180- optional and no GNU code is distributed with Python. For all these
181- packages, GPL-free public domain versions also exist.
169+ optional and no GNU code is distributed with Python.
182170
183171
184172Build instructions
@@ -286,7 +274,7 @@ Minix: When using ack, use "CC=cc AR=aal RANLIB=: ./configure"!
286274
287275SCO: 1) Everything works much better if you add -U__STDC__ to the
288276 defs. This is because all the SCO header files are broken.
289- Anything that isn't mentioned in the C standard it's
277+ Anything that isn't mentioned in the C standard is
290278 conditionally excluded when __STDC__ is defined.
291279
292280 2) Due to the U.S. export restrictions, SCO broke the crypt
@@ -298,9 +286,16 @@ SCO: 1) Everything works much better if you add -U__STDC__ to the
298286 3) According to at least one report, the above apply only to
299287 SCO 3 -- Python builds out of the box on SCO 5.
300288
301- SunOS: On SunOS 4.1.x, when using the SunPro C compiler, you may want
302- to use the '-Xa' option instead of '-Xc', to enable some
303- needed non-ANSI Sunisms.
289+ SunOS 4.x: When using the standard "cc" compiler, certain modules may
290+
291+ not be compilable because they use non-K&R syntax. You should
292+ be able to get a basic Python interpreter by commenting out
293+ such modules in the Modules/Setup file, but I really recommend
294+ using gcc.
295+
296+ When using the SunPro C compiler, you may want to use the
297+ '-Xa' option instead of '-Xc', to enable some needed non-ANSI
298+ Sunisms.
304299
305300NeXT: To build fat binaries, use the --with-next-archs switch
306301 described below.
@@ -326,6 +321,11 @@ SGI: SGI's standard "make" utility (/bin/make or /usr/bin/make)
326321 you set the first line of the Makefile to #!/usr/sbin/smake
327322 smake will be invoked by make (likewise for GNU make).
328323
324+ OS/2: If you are running Warp3 or Warp4 and have IBM's VisualAge C/C++
325+ compiler installed, just change into the pc\os2vacpp directory
326+ and type NMAKE. Threading and sockets are supported by default
327+ in the resulting binaries of PYTHON15.DLL and PYTHON.EXE.
328+
329329
330330Configuring additional built-in modules
331331---------------------------------------
@@ -400,28 +400,34 @@ different directory). This runs the test in verbose mode.
400400Installing
401401----------
402402
403- Installing Python was never this easy!
404-
405403To install the Python binary, library modules, shared library modules
406404(see below), include files, configuration files, and the manual page,
407- just type "make install". This will install all platform-independent
408- files in subdirectories the directory given with the --prefix option
409- to configure or the 'prefix' Make variable (default /usr/local), and
410- all binary and other platform-specific files in subdirectories if the
411- directory given by --exec-prefix or the 'exec_prefix' Make variable
412- (defaults to the --prefix directory). All subdirectories created will
413- have Python's version number in their name, e.g. the library modules
414- are installed in "/usr/local/lib/python1.5/" by default. The Python
415- binary is installed as "python1.5" and a hard link named "python" is
416- created. The only file not installed with a version number in its
417- name is the manual page, installed as "/usr/local/man/man1/python.1"
418- by default.
405+ just type
406+
407+ make install
408+
409+ This will install all platform-independent files in subdirectories the
410+ directory given with the --prefix option to configure or the 'prefix'
411+ Make variable (default /usr/local), and all binary and other
412+ platform-specific files in subdirectories if the directory given by
413+ --exec-prefix or the 'exec_prefix' Make variable (defaults to the
414+ --prefix directory).
415+
416+ All subdirectories created will have Python's version number in their
417+ name, e.g. the library modules are installed in
418+ "/usr/local/lib/python1.5/" by default. The Python binary is
419+ installed as "python1.5" and a hard link named "python" is created.
420+ The only file not installed with a version number in its name is the
421+ manual page, installed as "/usr/local/man/man1/python.1" by default.
419422
420423If you have a previous installation of a pre-1.5 Python that you don't
421- want to replace yet, use "make altinstall". This installs the same
422- set of files as "make install" except it doesn't create the hard link
423- to "python1.5" named "python" and it doesn't install the manual page
424- at all.
424+ want to replace yet, use
425+
426+ make altinstall
427+
428+ This installs the same set of files as "make install" except it
429+ doesn't create the hard link to "python1.5" named "python" and it
430+ doesn't install the manual page at all.
425431
426432The only thing you may have to install manually is the Python mode for
427433Emacs. (But then again, more recent versions of Emacs may already
@@ -675,7 +681,7 @@ Bugs are best reported to the comp.lang.python newsgroup or the Python
675681mailing list -- see the section "Newsgroup and mailing list" above.
676682Before posting, check the newsgroup archives (see above) to see if
677683your bug has already been reported! If you don't want to go public,
678- send them to me <
[email protected] >.
684+ send them to me
: <
[email protected] >.
679685
680686
681687Questions
@@ -698,18 +704,19 @@ also usable from Python. Since this requires that you first build and
698704install Tcl/Tk, the Tk interface is not enabled by default. Python
699705supports all Tcl/Tk versions from version 7.5/4.1 through 8.0 (and it
700706is expected that it will also work with newer versions). Tcl/Tk
701- 7.4/4.0 is no longer supported.
707+ 7.4/4.0 is no longer supported. 8.0 or any later non-alpha non-beta
708+ release is recommended.
709+
710+ See http://sunscript.sun.com/ for more info on Tcl/Tk, including the
711+ on-line manual pages.
702712
703- See http://www.sunlabs.com/research/tcl/ for more info on where to get
704- Tcl/Tk. Also http://sunscript.sun.com/.
705713
706714To enable the Python/Tk interface, once you've built and installed
707- Tcl/Tk, all you need to do is edit two lines in Modules/Setup; search
708- for the string "_tkinter". Uncomment one (normally the first) of the
709- lines beginning with "#_tkinter" and un-comment the line beginning
710- with "#TKPATH". If you have installed Tcl/Tk or X11 in unusual
711- places, you will have to edit the first line to fix or add -I and -L
712- options. See the Build Instructions above for more details.
715+ Tcl/Tk, load the file Modules/Setup in your favorite text editor and
716+ search for the string "_tkinter". Then follow the instructions found
717+ there. If you have installed Tcl/Tk or X11 in unusual places, you
718+ will have to edit the first line to fix or add -I and -L options.
719+ (Also see the general instructions at the top of that file.)
713720
714721There is little documentation on how to use Tkinter; however most of
715722the Tk manual pages apply quite straightforwardly. Begin with
@@ -757,7 +764,8 @@ Makefile.in Source from which config.status creates Makefile
757764Misc/ Miscellaneous useful files
758765Modules/ Implementation of most built-in modules
759766Objects/ Implementation of most built-in object types
760- PC/ PC porting files (DOS, Windows, NT, OS/2)
767+ PC/ PC porting files (DOS, Windows, OS/2)
768+ PCbuild/ Directory where you should build for Windows NT/95
761769Parser/ The parser and tokenizer and their input handling
762770Python/ The "compiler" and interpreter
763771README The file you're reading now
0 commit comments