[Python-checkins] python/dist/src/Doc/whatsnew whatsnew23.tex,1.33,1.34

akuchling@users.sourceforge.net akuchling@users.sourceforge.net
Thu, 11 Jul 2002 13:50:37 -0700


Update of /cvsroot/python/python/dist/src/Doc/whatsnew
In directory usw-pr-cvs1:/tmp/cvs-serv15804

Modified Files:
	whatsnew23.tex 
Log Message:
Make another pass through Misc/NEWS and add stuff.
Bump version number.


Index: whatsnew23.tex
===================================================================
RCS file: /cvsroot/python/python/dist/src/Doc/whatsnew/whatsnew23.tex,v
retrieving revision 1.33
retrieving revision 1.34
diff -C2 -d -r1.33 -r1.34
*** whatsnew23.tex	11 Jul 2002 20:09:50 -0000	1.33
--- whatsnew23.tex	11 Jul 2002 20:50:34 -0000	1.34
***************
*** 6,10 ****
  
  \title{What's New in Python 2.3}
! \release{0.02}
  \author{A.M. Kuchling}
  \authoraddress{\email{akuchlin@mems-exchange.org}}
--- 6,10 ----
  
  \title{What's New in Python 2.3}
! \release{0.03}
  \author{A.M. Kuchling}
  \authoraddress{\email{akuchlin@mems-exchange.org}}
***************
*** 14,37 ****
  \tableofcontents
  
- % Types now callable; `new' module replaced
- %
- % Timeout sockets: 
- % Executive summary: after sock.settimeout(T), all methods of sock will
- % block for at most T floating seconds and fail if they can't complete
- % within that time.  sock.settimeout(None) restores full blocking mode.
- %
  % Optik (or whatever it gets called)
  %
  % New dependency argument to distutils.Extension
  %
  
  %\section{Introduction \label{intro}}
  
  {\large This article is a draft, and is currently up to date for some
! random version of the CVS tree around May 26 2002.  Please send any
  additions, comments or errata to the author.}
  
  This article explains the new features in Python 2.3.  The tentative
! release date of Python 2.3 is currently scheduled for August 30 2002.
  
  This article doesn't attempt to provide a complete specification of
--- 14,34 ----
  \tableofcontents
  
  % Optik (or whatever it gets called)
  %
  % New dependency argument to distutils.Extension
  %
+ % The assert statement no longer tests __debug__ at runtime. 
+ %
+ % 
  
  %\section{Introduction \label{intro}}
  
  {\large This article is a draft, and is currently up to date for some
! random version of the CVS tree around mid-July 2002.  Please send any
  additions, comments or errata to the author.}
  
  This article explains the new features in Python 2.3.  The tentative
! release date of Python 2.3 is currently scheduled for some undefined
! time before the end of 2002.
  
  This article doesn't attempt to provide a complete specification of
***************
*** 463,469 ****
  \end{verbatim}
  
  \item 
  A new warning, \exception{PendingDeprecationWarning} was added to
! provide direction on features which are in the process of being
  deprecated.  The warning will \emph{not} be printed by default.  To
  check for use of features that will be deprecated in the future,
--- 460,489 ----
  \end{verbatim}
  
+ \item A new type object, \class{basestring}, has been added.  
+    Both 8-bit strings and Unicode strings inherit from this type, so
+    \code{isinstance(obj, basestring)} will return \constant{True} for
+    either kind of string.  It's a completely abstract type, so you
+    can't create \class{basestring} instances.
+ 
+ \item Most type objects are now callable, so you can use them
+ to create new objects such as functions, classes, and modules.  (This
+ means that the \module{new} module can be deprecated in a future
+ Python version, because you can now use the type objects available
+ in the \module{types} module.)
+ % XXX should new.py use PendingDeprecationWarning?
+ For example, you can create a new module object with the following code:
+ 
+ \begin{verbatim}
+ >>> import types
+ >>> m = types.ModuleType('abc','docstring')
+ >>> m
+ <module 'abc' (built-in)>
+ >>> m.__doc__
+ 'docstring'
+ \end{verbatim}
+ 
  \item 
  A new warning, \exception{PendingDeprecationWarning} was added to
! indicate features which are in the process of being
  deprecated.  The warning will \emph{not} be printed by default.  To
  check for use of features that will be deprecated in the future,
***************
*** 583,587 ****
  \begin{itemize}
  
! \item The \module{textwrap} module contains functions for wrapping
  strings containing paragraphs of text.  The \function{wrap(\var{text},
  \var{width})} function takes a string and returns a list containing
--- 603,607 ----
  \begin{itemize}
  
! \item The new \module{textwrap} module contains functions for wrapping
  strings containing paragraphs of text.  The \function{wrap(\var{text},
  \var{width})} function takes a string and returns a list containing
***************
*** 630,633 ****
--- 650,665 ----
  and Geert Jansen.)
  
+ \item The \module{socket} module now supports timeouts.  You
+ can call the \method{settimeout(\var{t})} method on a socket object to
+ set a timeout of \var{t} seconds.  Subsequent socket operations that
+ take longer than \var{t} seconds to complete will abort and raise a
+ \exception{socket.error} exception.  
+ 
+ (The original timeout implementation was by Tim O'Malley.  Michael
+ Gilfix integrated it into the Python \module{socket} module, after the
+ patch had undergone a lengthy review.  After it was checked in, Guido
+ van~Rossum rewrote parts of it.  This is a good example of the free
+ software development process.)
+ 
  \item The \module{getopt} module gained a new function,
  \function{gnu_getopt()}, that supports the same arguments as the existing
***************
*** 650,654 ****
  \code{bdist_pkgtool} builds \file{.pkg} files to use with Solaris
  \program{pkgtool}, and \code{bdist_sdux} builds \program{swinstall}
! packages for use on HP-UX.  (Contributed by Mark Alexander.)
  
  \item The \module{array} module now supports arrays of Unicode
--- 682,690 ----
  \code{bdist_pkgtool} builds \file{.pkg} files to use with Solaris
  \program{pkgtool}, and \code{bdist_sdux} builds \program{swinstall}
! packages for use on HP-UX.  
! An abstract binary packager class, 
! \module{distutils.command.bdist_packager}, was added; this may make it
! easier to write binary packaging commands.  (Contributed by Mark
! Alexander.)
  
  \item The \module{array} module now supports arrays of Unicode
***************
*** 658,662 ****
  (Contributed by Jason Orendorff.)
  
! \item The \module{grp} module now returns enhanced tuples:
  
  \begin{verbatim}
--- 694,699 ----
  (Contributed by Jason Orendorff.)
  
! \item The \module{grp}, \module{pwd}, and \module{resource} modules
! now return enhanced tuples: 
  
  \begin{verbatim}
***************
*** 677,680 ****
--- 714,722 ----
  unavoidable race conditions.
  
+ \item The DOM implementation
+ in \module{xml.dom.minidom} can now generate XML output in a
+ particular encoding, by specifying an optional encoding argument to
+ the \method{toxml()} and \method{toprettyxml()} methods of DOM nodes.
+ 
  \end{itemize}
  
***************
*** 694,702 ****
  \item The interpreter can be compiled without any docstrings for 
  the built-in functions and modules by supplying
! \longprogramopt{--without-doc-strings} to the \file{configure} script.
  This makes the Python executable about 10\% smaller, but will also
  mean that you can't get help for Python's built-ins.  (Contributed by
  Gustavo Niemeyer.)
  
  \item The \cfunction{PyArg_NoArgs()} macro is now deprecated, and code
  that uses it should be changed.  For Python 2.2 and later, the method
--- 736,749 ----
  \item The interpreter can be compiled without any docstrings for 
  the built-in functions and modules by supplying
! \longprogramopt{without-doc-strings} to the \file{configure} script.
  This makes the Python executable about 10\% smaller, but will also
  mean that you can't get help for Python's built-ins.  (Contributed by
  Gustavo Niemeyer.)
  
+ \item The cycle detection implementation used by the garbage collection
+ has proven to be stable, so it's now being made mandatory; you can no
+ longer compile Python without it, and the
+ \longprogramopt{with-cycle-gc} switch to \file{configure} has been removed.
+ 
  \item The \cfunction{PyArg_NoArgs()} macro is now deprecated, and code
  that uses it should be changed.  For Python 2.2 and later, the method
***************
*** 751,754 ****
--- 798,803 ----
  Python source distribution, were updated for 2.3.  (Contributed by
  Sean Reifschneider.)
+ 
+ Python now supports AtheOS (\url{www.atheos.cx}) and GNU/Hurd.