From mal@lemburg.com Tue Jul 1 17:37:55 2003 From: mal@lemburg.com (M.-A. Lemburg) Date: Tue, 01 Jul 2003 18:37:55 +0200 Subject: eGenix mxODBC Zope DA for FreeBSD Message-ID: _______________________________________________________________________ ANNOUNCEMENT EGENIX.COM mxODBC Zope Database Adapter Version 1.0.6 Beta 1 for FreeBSD 4.8 _______________________________________________________________________ INTRODUCTION The eGenix mxODBC Zope Database Adapter (Zope DA) allows you to easily connect your Zope installation to just about any database backend on the market today, giving you the reliability of the commercially supported eGenix.com product mxODBC and the flexibility of the ODBC standard as middle-tier architecture. One Interface on all Platforms... Unlike Zope's ZODBC Zope DA, the mxODBC Zope DA works on Windows XP/NT/2000/98/95, Linux, Solaris and now FreeBSD using the same interface on all platforms High Performance... The mxODBC Zope DA implements thread-safe connection pooling and multiple physical connects per logical Zope connection. You can safely run Z SQL Methods in parallel, achieving a much better performance than ZODBC Zope DA or similar Zope database adapters under heavy load. This makes it ideal for deployment in Zope Clusters and Zope hosting environments where stability and high performance are a top priority. _______________________________________________________________________ BETA TESTING Please report any bugs you find to support@egenix.com. Evaluation licenses can be had from licenses@egenix.com. _______________________________________________________________________ MORE INFORMATION For more information on the mxODBC Zope DA, licensing and download instructions, please visit our web-site: http://www.egenix.com/ You can buy mxODBC Zope DA licenses online from the eGenix.com shop at: http://shop.egenix.com/ _______________________________________________________________________ Thank you, -- Marc-Andre Lemburg eGenix.com Professional Python Software directly from the Source (#1, Jul 01 2003) >>> Python/Zope Products & Consulting ... http://www.egenix.com/ >>> mxODBC, mxDateTime, mxTextTools ... http://python.egenix.com/ ________________________________________________________________________ 2003-07-01: Released mxODBC Zope DA for FreeBSD 1.0.6 beta 1 From uche.ogbuji@fourthought.com Wed Jul 2 08:32:06 2003 From: uche.ogbuji@fourthought.com (Uche Ogbuji) Date: 02 Jul 2003 01:32:06 -0600 Subject: ANN: 4Suite 1.0a2 Message-ID: Today we release of 1.0 alpha 2, now available from Sourceforge and ftp.4suite.org. 4Suite is a comprehensive platform for XML and RDF processing, with base libraries and a server framework. It is implemented in Python and C, and provides Python and XSLT APIs, Web and command line interfaces. For general information, see: http://4suite.org http://uche.ogbuji.net/tech/4Suite/ http://uche.ogbuji.net/tech/akara/nodes/2003-01-01/pyxml-akara For the files, see: ftp://ftp.4suite.org/pub/4Suite/ Sources: ftp://ftp.4suite.org/pub/4Suite/4Suite-1.0a2.tar.gz Windows installer: ftp://ftp.4suite.org/pub/4Suite/4Suite-1.0a2.win32-py2.1.exe ftp://ftp.4suite.org/pub/4Suite/4Suite-1.0a2.win32-py2.2.exe ftp://ftp.4suite.org/pub/4Suite/4Suite-1.0a2.win32-py2.3.exe Windows zip: ftp://ftp.4suite.org/pub/4Suite/4Suite-1.0a2.zip You can also get the files on Sourceforge: https://sourceforge.net/projects/foursuite/ https://sourceforge.net/project/showfiles.php?group_id=39954 IMPORTANT alpha release notes ----------------------------- If you have built a 4Suite repository using an older version of 4Suite, you will probably have to make adjustments for this new release. If you used 0.12.0a3, or a more recent version, then it should suffice to recompile all stylesheets for each repository instance: 4ss_manager recompile In any case, see the following document for more details: http://uche.ogbuji.net/tech/akara/nodes/2003-01-01/backup There has been some progress with builds on Mac OS X in this release. See http://uche.ogbuji.net/tech/akara/nodes/2003-01-01/osx Please offer any suggestions on the mailing list. -- Uche Ogbuji Fourthought, Inc. http://uche.ogbuji.net http://4Suite.org http://fourthought.com XML Data Bindings in Python - http://www.xml.com/pub/a/2003/06/11/py-xml.html Introducing Examplotron - http://www-106.ibm.com/developerworks/xml/library/x-xmptron/ Charming Jython - http://www-106.ibm.com/developerworks/java/library/j-jython.html The commons of creativity - http://www-106.ibm.com/developerworks/xml/library/x-think18.html A custom-fit career in app development - http://www.adtmag.com/article.asp?id=7744 From guido@python.org Wed Jul 2 17:57:03 2003 From: guido@python.org (Guido van Rossum) Date: Wed, 02 Jul 2003 12:57:03 -0400 Subject: OSCON lightning talks -- submit yours now! Message-ID: We still have a few lightning talk slots open for the Python conference at OSCON (the O'Reilly Open Source Conference, July 7-11 in Portland, Oregon -- http://conferences.oreillynet.com/os2003/ ). A lightning talk is a presentation of no more than 5 minutes (we'll have a gong!) on any subject that you think might interest Python users or developers. The Python lightning talks session is Thursday afternoon (July 10) from 4:30 till 6 pm. To submit your proposal, send email to David Ascher with "lightning" in the subject. He'll be accepting proposals until late in the game (even in person at the conference), but slots will be assigned first-come first-serve, so don't wait too long! If you've never heard of lightning talks, you can find out more information at: http://perl.plover.com/lt/osc2003/lightning-talks.html But ignore the submission informations on that site, just send email to David as explained above. See you in Portland, Guido and David --Guido van Rossum (home page: http://www.python.org/~guido/) From uche.ogbuji@fourthought.com Thu Jul 3 19:32:18 2003 From: uche.ogbuji@fourthought.com (Uche Ogbuji) Date: 03 Jul 2003 12:32:18 -0600 Subject: Recent articles on Python Message-ID: Using SAX for Proper XML Output http://www.xml.com/pub/a/2003/03/12/py-xml.html Explains how to use Python SAX libraries to generate proper XML output from Python programs. [Mar. 12, 2003] Gems From the Archives http://www.xml.com/pub/a/2003/04/09/py-xml.html Hunts for treasures in the archives of the Python XML SIG, locating interesting tidbits for producing and displaying XML. [Apr. 9, 2003] Charming Jython http://www-106.ibm.com/developerworks/java/library/j-jython.html Introduces Jython, the 100% Pure Java implementation of the Python programming language, which combines the advantages of Python and the Java virtual machine and library and serves as a handy complement to the Java platform. [May 6, 2003] Using libxml in Python http://www.xml.com/pub/a/2003/05/14/py-xml.html Introduces libxml's Python bindings. [May. 14, 2003] XML Data Bindings in Python http://www.xml.com/pub/a/2003/06/11/py-xml.html Considers Python data bindings for XML, including generateDS, a script which builds Python bindings from a WXS instance. [Jun. 11, 2003] The power of three: Python, Web services, and XSLT (with Mike Olson) http://www-106.ibm.com/developerworks/xml/library/ws-pyth13/ Looks at using the Python XSLT API for Web services development. [Jun. 30, 2003] XML Data Bindings in Python, Part 2 http://www.xml.com/pub/a/2003/07/02/py-xml.html Second part of series on XML data binding tools in Python, examining the XML data binding library which is part of David Mertz's Gnosis Utils. [Jul. 2, 2003] -- Uche Ogbuji Fourthought, Inc. http://uche.ogbuji.net http://4Suite.org http://fourthought.com XML Data Bindings in Python - http://www.xml.com/pub/a/2003/06/11/py-xml.html Introducing Examplotron - http://www-106.ibm.com/developerworks/xml/library/x-xmptron/ Charming Jython - http://www-106.ibm.com/developerworks/java/library/j-jython.html The commons of creativity - http://www-106.ibm.com/developerworks/xml/library/x-think18.html A custom-fit career in app development - http://www.adtmag.com/article.asp?id=7744 From stuff@nonpoint.mailzilla.net Fri Jul 4 14:18:01 2003 From: stuff@nonpoint.mailzilla.net (Phil) Date: 4 Jul 2003 06:18:01 -0700 Subject: Scratchy 0.6 - An Apache access_log file parser and HTML report generator Message-ID: http://scratchy.sourceforge.net Changes since 0.5: * Added country name lookup support * Added COUNTRY_CACHE config file option (please read the important note). * Code cleanup. Created a FileBase class that file_tracker, dns_cache all derive from. and country_cache * template files are now configurable * Each chart can be disabled (default is enabled) * Added accessed files table * Added CHARSET_ENCODING to config. * Added additional file types (swf, ra, pdf, php) * Addressed issue with ylabel_density in chart output * Added additional browsers, robots and search engines * Added some additional search engines * Added additional robots * Fixed daily chart display if days > 25 * Fixed report since it was ignoring preferences for search phrases/keywords * Erroneously reporting "Unix" as operating system for all X11 derivatives. * Fixed bug in creating summary when gdchart was not installed. * Added config file option for CHART_HEIGHT * Catches chart draw() exceptions * makedirs no longer produces information if dirs already exist * Added /usr/bin/env python to parse.py and report.py * File types are truncated to atmost 10 chars. About Scratchy Scratchy is a set of scripts to parse Apache web server log files and extract useful information. From this data, Scratchy will create HTML reports so that website administrators can easily view the information and determine trends and their typical audience. Scratchy began as a proof-of-concept which allowed me to compile stats about my personal website. As time progressed I continually added features and improvements and I felt that it was now at a point that it would be useful to others. Why Scratchy? Well, the name of the project of course comes from the Simpsons "Itchy and Scratchy Show". The functionality that the project aims to supply is a complete log parsing and report generating tool. Also, there seemed to be a need for such a project in Python. I have seen some other Apache log parsers but they were developed in other languages (such as Perl, C, etc). One goal of this project is for it to be extensible, to that tune, most of the report appearance can be easily modified by tweaking a single config file. What information does Scratchy report? * Accessed web pages * hosts accessing your website * operating systems * browsers * search engines * robots/spiders * file types accessed * errors * countries * a trace of pages accessed by each ip address (if enabled). * charts are produced for many of the tables (if enabled) http://scratchy.sourceforge.net From uche.ogbuji@fourthought.com Fri Jul 4 06:34:45 2003 From: uche.ogbuji@fourthought.com (Uche Ogbuji) Date: 03 Jul 2003 23:34:45 -0600 Subject: ANN: 4Suite 1.0a3 Message-ID: Today we release 1.0 alpha 3, now available from Sourceforge and ftp.4suite.org. 1.0a3 replaces the last release, 1.0a2, which had some files missing, and has been withdrawn. 4Suite is a comprehensive platform for XML and RDF processing, with base libraries and a server framework. It is implemented in Python and C, and provides Python and XSLT APIs, Web and command line interfaces. For general information, see: http://4suite.org http://uche.ogbuji.net/tech/4Suite/ http://uche.ogbuji.net/tech/akara/nodes/2003-01-01/pyxml-akara For the files, see: ftp://ftp.4suite.org/pub/4Suite/ Sources: ftp://ftp.4suite.org/pub/4Suite/4Suite-1.0a3.tar.gz Windows installer: ftp://ftp.4suite.org/pub/4Suite/4Suite-1.0a3.win32-py2.1.exe ftp://ftp.4suite.org/pub/4Suite/4Suite-1.0a3.win32-py2.2.exe ftp://ftp.4suite.org/pub/4Suite/4Suite-1.0a3.win32-py2.3.exe Windows zip: ftp://ftp.4suite.org/pub/4Suite/4Suite-1.0a3.zip You can also get the files on Sourceforge: https://sourceforge.net/projects/foursuite/ https://sourceforge.net/project/showfiles.php?group_id=39954 IMPORTANT alpha release notes -- If you have built a 4Suite repository using an older version of 4Suite, you will probably have to make adjustments for this new release. If you used 0.12.0a3, or a more recent version, then it should suffice to recompile all stylesheets for each repository instance: 4ss_manager recompile In any case, see the following document for more details: http://uche.ogbuji.net/tech/akara/nodes/2003-01-01/backup There has been some progress with builds on Mac OS X in this release. See http://uche.ogbuji.net/tech/akara/nodes/2003-01-01/osx Please offer any suggestions on the mailing list. -- Uche Ogbuji Fourthought, Inc. http://uche.ogbuji.net http://4Suite.org http://fourthought.com XML Data Bindings in Python, Part 2 - http://www.xml.com/pub/a/2003/07/02/py-xml.html Introducing Examplotron - http://www-106.ibm.com/developerworks/xml/library/x-xmptron/ Charming Jython - http://www-106.ibm.com/developerworks/java/library/j-jython.html Python, Web services, and XSLT - http://www-106.ibm.com/developerworks/xml/library/ws-pyth13/ A custom-fit career in app development - http://www.adtmag.com/article.asp?id=7744 From Bram@moolenaar.net Fri Jul 4 17:28:49 2003 From: Bram@moolenaar.net (Bram Moolenaar) Date: Fri, 04 Jul 2003 18:28:49 +0200 Subject: The A-A-P project offers awards Message-ID: Aap version 1.0 has been released. The next version should be even more powerful, faster, reliable and simpler to use. If you help making this possible you will not only receive appreciation from Aap users, but have a chance to make money as well! AWARDS 444 euro for the best contribution to the A-A-P project 222 euro for the most useful patch for Aap or Agide 111 euro for the brightest idea for the A-A-P project THE RULES - The "best contribution" can be anything that helps the progress of the A-A-P project or improves the usability of Aap and/or Agide. - The "most useful patch" can be for fixing a long standing bug, adding support for a specific compiler, a port to another system, etc. - The "brightest idea" is a suggestion for a useful addition to the A-A-P project or for improving Aap or Agide without the need for an actual implementation. - Contributions are to be sent to the A-A-P-develop maillist. No specific format is required. Everybody contributing to A-A-P automatically becomes a potential award winner. - You may submit as many times as you like. All contributions must go under the GNU GPL. - The closing date is September 30, 2003. The winners will be announced on the A-A-P web site in October 2003. - The selection of the award winners will be done by Bram Moolenaar, the A-A-P project leader. - The money is provided by the NLnet foundation. A-A-P AT THE O'REILLY CONFERENCE Bram Moolenaar will do a presentation on Aap on July 10 at the O'Reilly Open Source Convention in Portland. See: http://conferences.oreillynet.com/cs/os2003/view/e_sess/4026 There is also a BOF session about the A-A-P project: http://conferences.oreillynet.com/cs/os2003/view/e_sess/4348 You are welcome to join a discussion about the future of Aap. WHAT IS AAP? The Aap program is make on steroids. It does everything that other build systems do, has a powerful script language build-in and has integrated internet support. You can use it to: - Build a program, on multiple platforms and in several variants - Download a file the moment it is needed - Maintain a web site (Aap is used for the Vim web site) - Download and install an application (like FreeBSD ports) - Obtain a module from CVS, update files in CVS - Generate and filter files - And much more Most of these things can be done with an Aap recipe of just a few lines. Have a look at the examples: http://www.a-a-p.org/examples.html. The Aap recipe works better than a Makefile in many ways: - Uses signatures to avoid trouble with timestamps; restoring an old version of a source file causes recompiling - Integrated support for up- and downloading - Integrated support for CVS (other version control systems can be added) - Python script can be used for more complicated tasks - Reduces the need for shell scripts, improves portability - Messages are brief, a log file contains the details - Automatically figures out dependencies for C programs - Simple syntax: mostly like a Makefile but avoids the need for line continuation backslashes, spaces in a file name are possible - Good support for a project with multiple directories Aap is written in Python. It runs on any Unix, MS-Windows and Mac OS X system with Python 1.5 or later, WHAT IS THE A-A-P PROJECT? A-A-P makes it easy to locate, download, build and install software. It also supports browsing source code, developing programs, managing different versions and distribution of software and documentation. This means that A-A-P is useful both for users and for developers. A-A-P currently consists of the Aap program and Agide, the A-A-P GUI IDE. Agide makes it possible for existing tools to work together. For example: to use Vim with gdb for debugging, lookup remote documentation with the cross referencer, preview a TeX file, etc. Aap is now stable. Agide is still in the development phase. A-A-P is open source under the GNU GPL. LINKS Home page: http://www.a-a-p.org Manual HTML: http://www.a-a-p.org/exec/index.html Manual PDF: http://www.a-a-p.org/exec/exec.pdf Maillists: http://www.a-a-p.org/maillist.html Freshmeat: http://freshmeat.net/projects/a-a-p/ -- This is the polymorph virus! Follow these instructions carefully: 1. Send this message to everybody you know. 2. Format your harddisk. Thank you for your cooperation in spreading the most powerful virus ever! /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// Creator of Vim - Vi IMproved -- http://www.Vim.org \\\ \\\ Project leader for A-A-P -- http://www.A-A-P.org /// \\\ Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html /// From simonb@webone.com.au Sat Jul 5 02:40:04 2003 From: simonb@webone.com.au (Simon Burton) Date: Sat, 05 Jul 2003 11:40:04 +1000 Subject: ANN: hYPerSonic-1.0 Message-ID: hYPerSonic allows one to build and manipulate signal processing pipelines from python scripts. It is designed for real-time control. It includes objects for oscillators, filters, file-io, soundcard and memory operations. It is low-level: every byte counts. Source code, examples, docs, here: http://arrowtheory.com/software/hypersonic/index.html Runs on Linux and OSX, with python2.2 or 2.3. I'd like to know what you think of it. Simon Burton. From ianb@colorstudy.com Sat Jul 5 05:57:18 2003 From: ianb@colorstudy.com (Ian Bicking) Date: 04 Jul 2003 23:57:18 -0500 Subject: ANN: SQLObject 0.4 Message-ID: SQLObject 0.4: http://sqlobject.org Changes ======= * New (cleaner) column definition style, including for foreign keys * Alternate naming conventions supported * Subclassing supported What Is SQLObject? ================== SQLObject is an object-relational mapper, translating RDBMS tables into classes, rows into instances of those classes, allowing you to manipulate those objects to transparently manipulate the database. SQLObject currently supports Postgres, MySQL, and SQLite. Links ===== Download: http://prdownloads.sourceforge.net/sqlobject/SQLObject-0.4.tar.gz?download Documentation: http://sqlobject.org/docs/SQLObject.html News: http://sqlobject.org/docs/News.html -- Ian Bicking ianb@colorstudy.com http://colorstudy.com PGP: gpg --keyserver pgp.mit.edu --recv-keys 0x9B9E28B7 From detlev@die-offenbachs.de Sat Jul 5 10:17:01 2003 From: detlev@die-offenbachs.de (Detlev Offenbach) Date: Sat, 05 Jul 2003 11:17:01 +0200 Subject: ANN: Eric 3.2 released Message-ID: Hi Trolls, I am pround to announce, that eric3 3.2 has been released today. It is available via http://www.die-offenbachs.de/detlev/eric3.html This version includes a Subversion interface, possibility to simply run a script/project, to profile it and to determine code coverage statistics. The editor supports autocompletion and calltips and a whole bunch of additional lexers. For details see the history file in the distribution. What is it? ----------- Eric 3.2 (or short eric3) is a Python IDE written using PyQt and QScintilla. It has integrated project management capabilities, it gives you an unlimited number of editors, an integrated Python shell, an integrated debugger and much more. Please see for yourself by visiting the a.m. page (it contains a picture of Eric our mascot as well). Please report bugs, feature wishes or code contributions to eric-bugs@die-offenbachs.de Help wanted!! ------------- I really need some support in the area of more translations and user documentation. Any volunteers out there? Just let me know. Regards, Detlev -- Detlev Offenbach detlev@die-offenbachs.de From Jack.Jansen@cwi.nl Sat Jul 5 12:08:50 2003 From: Jack.Jansen@cwi.nl (Jack Jansen) Date: Sat, 5 Jul 2003 13:08:50 +0200 Subject: MacPython 2.3b2 binary installer for MacOSX Message-ID: a binary installer for MacPython 2.3b2 is available through , or (for the impatient) directly at . This installer gives you a framework-based Python, which has all the normal unix-python functionality, lots of extension modules to interface to technology such as Carbon, Quicktime and AppleScript, plus the IDE, the Package Manager, the ability to create small semi-standalone applications and more. Please try it, and send feedback either straight to me or (preferably) to pythonmac-sig@python.org. -- - Jack Jansen http://www.cwi.nl/~jack - - If I can't dance I don't want to be part of your revolution -- Emma Goldman - From phil@riverbankcomputing.co.uk Sat Jul 5 19:01:35 2003 From: phil@riverbankcomputing.co.uk (Phil Thompson) Date: Sat, 5 Jul 2003 19:01:35 +0100 Subject: ANN: PyQt v3.7 Released Message-ID: PyQt v3.7 has been released and can be downloaded from http://www.riverbankcomputing.co.uk/pyqt/ PyQt is a comprehensive set of Python bindings for Trolltech's Qt GUI toolkit. It includes approximately 300 classes and 5,750 methods including OpenGL, SQL and XML support as well as a rich set of GUI widgets. It also includes a utility to generate Python code from Qt Designer, Qt's GUI builder. PyQt runs on UNIX/Linux, Windows and the Sharp Zaurus. PyQt is licensed under the GPL, commercial, educational and non-commercial licenses. Phil From T.A.Meyer@massey.ac.nz Mon Jul 7 01:45:40 2003 From: T.A.Meyer@massey.ac.nz (Meyer, Tony) Date: Mon, 7 Jul 2003 12:45:40 +1200 Subject: SpamBayes-1.0a4 Released Message-ID: Hot on the heels of the 1.0a3 release comes Spambayes 1.0a4. This release fixes a couple of potentially serious bugs that were introduced in a3, as well as including various other improvements. Upgrading is recommended for all users. SpamBayes =3D=3D=3D=3D=3D=3D=3D=3D=3D The SpamBayes project (http://spambayes.org) is working on developing a Bayesian anti-spam filter, initially based on the work of Paul Graham. The major difference between this and other, similar projects is the emphasis on testing newer approaches to scoring messages. While most anti-spam projects are still working with the original graham algorithm, we found that a number of alternate methods yielded a more useful response. SpamBayes is implemented purely in Python. New in Alpha Release 4 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Outlook Plug-in --------------- o Display a message for "Delete as Spam" or "Recover from Spam" when SpamBayes is not enabled. o The toolbar is now initialized when "Outlook Today" is the default view. POP3 Proxy ---------- o Fix a bug where long attachments would be broken. o If an exception occurs parsing a message, recover and append a new 'exception' header. (This will be added to other SpamBayes applications by the next release). o Stop including the trailing dot in messages. IMAP Filter ----------- o In imapfilter, try to append without flags if appending fails. o Fix the -i switch in imapfilter and an import error. o Don't try and get password from options if -p is specified in imapfilter. Developer --------- o Various changes/improvements to storage.py. Note that this includes a fix for a potentially serious bug introduced in a3 which could result in incorrect token counts. General ------- o The web interface (used by pop3proxy and imapfilter) now shows the correct date and time in the footer. o A new stripper to squash yet another way of hiding content in HTML spam, like Erections to hide Erections. Transition =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Transition between release a3 and a4 should be seamless. Refer to the a3 release for information about transitioning between a2 and a4. Reported Bugs Fixed =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D The following bugs tracked via the Sourceforge system were fixed: 761677, 761670 A url containing the details of these bugs can be made by appending the bug number to this url: http://sourceforge.net/tracker/index.php?func=3Ddetail&group_id=3D61702&a= tid =3D498103&aid=3D Feature Requests Added =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D The following feature request tracked via the Sourceforge system was added: 755098 A url containing the details of these feature requests can be made by appending the request number to this url: http://sourceforge.net/tracker/index.php?func=3Ddetail&group_id=3D61702&a= tid =3D498104&aid=3D From phil@etsu.edu Mon Jul 7 04:20:54 2003 From: phil@etsu.edu (Phil Pfeiffer) Date: 6 Jul 2003 20:20:54 -0700 Subject: ANN: ADEPT (A Declarative, Eval()-based Program Tester) Message-ID: ADEPT--"A Declarative, Eval-based Program Tester"--is an open source unit testing tool that allows users to define test cases as tuples-- e.g., # reworking of unittest example from Python unittest doc, # minus initializers and finalizers getTest =\ ( "check default size", eqValue((50,50)), Widget("The Widget").size ) testWidget = Widget("The widget") setTest =\ ( "check resize", eqValue((100,150)), "testWidget.size()", testWidget.resize, (100,150) ) testSuite =\ (("get actions", (getTest,)), ("set actions", (setTest,))) --and then execute, label, log, and check the tests' results: # widgetLogger labels tests, and stores labels and test results # >>> suite =\ [("get actions",(getTest,)), ("set actions",(setTest,))] >>> widgetLogger = TestLogger() >>> doTestSuite(suite, widgetLogger) # # assumption here: all tests succeeded, hence, no advisories # >>> widgetLogger.failureCount() 0 >>> widgetLogger.successCount() 2 >>> widgetLogger.failures() () # # cases could be stored to a list and sorted, if required # >>> widgetLogger.successes() ((2, 1), (1, 1)) >>> map(widgetLogger.getBanner, widgetLogger.successes) ('2.1. set actions: check Widget.resize(100,150)', '1.1. get actions: check Widget default size') The getTest and setTest tuples shown here typify what ADEPT calls "get actions" and "set actions" tests: checks for a callable object's returned results and effects, respectively. *. The getTest tuple, when evaluated as a "get actions" test, directs ADEPT to evaluate eqValue((50,50))(Widget("The widget").size()), and record success iff this expression evaluates to 1 (true). *. The setTest tuple, when evaluated as a "set actions" test, directs ADEPT to execute testWidget.resize(100,150), then record success iff the expression eqValue((100,150))(testWidget.size()) evaluates to 1. I wrote ADEPT as a tool for creating succinct, self-documenting test cases for a large utility that I've been working on since March--3,000+ test cases, with about 3/4 of the way to go. I'm releasing ADEPT because I've appreciated having it, and would like to get people's impressions of ADEPT--along with suggestions for improvement. ADEPT is at http://csciwww.etsu.edu/phil/samples/adept.zip. This first release includes the following: -. a 5 pp. HTML overview of ADEPT's functionality, features, and limitations (http://csciwww.etsu.edu/phil/samples/adept.htm). -. adept.py, ADEPT's source code: about 950 lines of Python, with about 1,000 lines of banners, comments and whitespace (http://csciwww.etsu.edu/phil/samples/adept.py). -. adept.txt, the ADEPT user manual: about 40 pp. of text (60 lines x 80 columns), organized as -. an introduction, plus sections that describe -. ADEPT's nine types of tests: get actions, set actions, get+set actions, null actions, error actions, get prop actions, set prop actions, get prop error actions, set prop error actions --with comments on strategies for using each kind of test, and a special section on repr string testing. -. ADEPT test indexing. -. additional ADEPT features, including nested test suite execution and the use of AND/OR-tree-like objects to apply multiple predicates to a single test. -. ADEPT's design--including notes on how to add test types, and comments on the tool's limitations. (http://csciwww.etsu.edu/phil/samples/adept.txt). -. adeptExamples.py, a program that illustrates the operation of the examples in the ADEPT manual. (http://csciwww.etsu.edu/phil/samples/adeptExamples.py). -. adeptTestSuite.py, a 782-test-case-long validation suite for ADEPT, written in ADEPT. (http://csciwww.etsu.edu/phil/samples/adeptTestSuite.py). =================== Phil Pfeiffer/East TN State U. |Kindness in thought leads to wisdom. Dept. of CIS /P.O. Box 70711 |Kindness in speech leads to eloquence. Johnson City, TN. 37614-1266 |Kindness in action leads to love phil@etsu.edu (423) 439-5355 | -- Lao-Tsu From oussoren@cistron.nl Mon Jul 7 09:01:52 2003 From: oussoren@cistron.nl (Ronald Oussoren) Date: Mon, 7 Jul 2003 10:01:52 +0200 Subject: ANN: PyObjC 1.0b1 Message-ID: PyObjC 1.0b1 is now available for download at http://pyobjc.sourceforge.net/ PyObjC is a bridge between Python and Objective-C. It allows full featured Cocoa applications to be written in pure Python. It is also easy to use other frameworks containing Objective-C class libraries from Python and to mix in Objective-C, C and C++ source. Python is a highly dynamic programming language with a shallow learning curve. It combines remarkable power with very clear syntax. The installer package includes a number of Project Builder templates for easily creating new Cocoa-Python projects, as well as support for syntax-coloring Python files in Project Builder. PyObjC also supports full introspection of Objective-C classes and direct invocation of Objective-C APIs from the interactive interpreter. PyObjC requires MacOS X 10.2 or later. PyObjC works both with the Apple provided Python installation in MacOS X 10.2 (and later) and with MacPython 2.3b1. Users of MacPython 2.3b1 can install PyObjC though the PackageManager application. PyObjC 1.0b1 includes numerous improvements over earlier versions, including: * Improved performance and stability * Better tutorials and examples * Initial support for MacOS X 10.1 * Support for the WebKit framework * Write plugin bundles in Python (requires Python 2.3b1) PyObjC is released with an open source license. From gvermeul@grenoble.cnrs.fr Mon Jul 7 14:11:13 2003 From: gvermeul@grenoble.cnrs.fr (Gerard Vermeulen) Date: Mon, 7 Jul 2003 15:11:13 +0200 Subject: Announcing PyQwt-3.7 Message-ID: PyQwt-3.7 = FAST and EASY data plotting for Python and Qt. PyQwt is a set of Python bindings for the Qwt C++ class library. Qwt extends the Qt framework with widgets for scientific and engineering applications. PyQwt really shines with Numeric and/or numarray. Numeric and numarray extend Python with new data types that make Python an ideal language for numerical computing and experimentation. PyQwt requires and extends PyQt, a set of Python bindings for Qt. PyQwt runs on Windows and Unix/Linux. The home page of PyQwt has moved to http://pyqwt.sourceforge.net. New features in PyQwt-3.7: 1. PyQwt will work with either Numeric, or numarray or both (depending on the presence of Numeric and numarray during PyQwt's build). 2. PyQwt will work without Numeric and numarray (is not recommended). 3. PyQwt is compatible with the Python Command Line Interpreter or IPython, provided that the readline module is installed: Qt's event processing is scheduled by the readline library through (int)(*PyOS_InputHook)(void). 4. PyQwt is always rlcompleter-friendly, even though PyQt-3.6 and earlier are not (the dir() function has been enhanced in PyQt-3.7). 5. The module qwt.qplt is enhanced: qwt.qplt is sugar coating for the QwtPlot widget to facilitate plotting from an interpreter. 6. QwtImagePlot maps a 2-dimensional array of z-values on a QImage using a color scale. 7. New Qwt widgets: QwtDial and QwtCompass. 8. Works with PyQt-3.7, PyQt-3.6, PyQt-3.5 and PyQt-3.4. 9. Works with Qt-2.3.x, Qt-3.0.x and Qt-3.1.x. Gerard Vermeulen From Rimon Barr Tue Jul 8 00:53:11 2003 From: Rimon Barr (Rimon Barr) Date: Mon, 7 Jul 2003 19:53:11 -0400 (EDT) Subject: spyce v1.3.11 released Message-ID: Spyce v1.3.11 released on 7 July 2003 SPYCE is a server-side language that supports simple and efficient Python-based dynamic HTML generation. Those who are familiar with JSP, PHP, or ASP and like Python, should have a look at Spyce. Its modular design makes it very flexible and extensible. It can also be used as a command-line utility for static text pre-processing. Get it at: http://spyce.sourceforge.net Important changes since v1.3.10: - parser rewritten; compile times are now 2-6x times faster! (i.e. if you use CGI, the command-line interface, or frequently modify files during development, you'll greatly benefit from this release) - daemon mode for spyce webserver - exposed functionality for integration with Coil MVC framework - miscellaneous user-requested fixes Enjoy, Rimon. Change log: v1.3.11 user request: daemon webserver mode fix: mod_python flush problem performance: rewrote tokenizer/parser - no longer using clusmy parser generator package - still pure python, compilation times between 2-6x faster user request: expose functionality to define spyceProcess function with arbitrary parameters, and pass in parameters... helps Coil framework with Spyce integration fix: spyce webserver not performing path manipulations correctly on Windows fix: spyce.mime file not copied for .rpm and Windows installers v1.3.10 Default development configuration changed to: Apache 2.0.40 and Python 2.2.x Release testing will be performed: both on Linux and Windows under CGI, FastCGI and mod_python Other versions of Apache and Python should continue to work, but will not be tested. I am depending on user feedback to catch any errant bugs under these older configurations. fix: spyceWWW properly deals with directory URLs that don't end in '/' fix: request.getpost1/postget1() now accept default values fix: memory cache checks file permission as well as modification time fix: makefile was including .pyc/.pyo files in tarball fix: spyce.vim syntax highlighting for spyce lambdas fix: error module should be loaded last to avoid stdout module being unloaded on error, thereby causing print statements to no longer go to the browser during error handling fix: error module setHandler used incorrect variable name, causing setHandler to fail updated spyce.vim syntax file for JSP/ASP like delimeters spyce.vim now included in vim distribution rpm generates spyceParserTable.py (allowing for different versions of python) added 'no-store' and 'must-revalidate' to response.uncacheable() added pageerror configuration option to modify default page-level handler rpm now requires http >2.0 and python >2.2 installed For prior release information, refer to the CHANGES file. From sylvain.thenault@logilab.fr Wed Jul 9 09:44:15 2003 From: sylvain.thenault@logilab.fr (Sylvain =?iso-8859-1?q?Th=E9nault?=) Date: 09 Jul 2003 10:44:15 +0200 Subject: [ANN] PortalTransforms 1.0a1 Message-ID: Hi all, I'm pleased to announce the first alpha release of the Portal Transforms Zope product. It provides two new CMF tools in order to make MIME types based transformations on the portal contents and so an easy to way to plugin some new transformations for previously unsupported content types. You will find more info in the package's README and docs directory. This product is part of the Archetypes project, but the only requirement to use it is to have a CMF based site. If you are using Archetypes, this package replaces the transform package. Installation ------------ Extract the package and move it into the Products directory of your Zope installation (remove the '-1.0a1' part of the name in the same time). Now you can install it to your CMF sites using the quick installer or the usual PortalTransforms.Install.install external method. Home page --------- http://www.sourceforge.net/projects/archetypes Download -------- https://sourceforge.net/project/showfiles.php?group_id=3D75272 Contribute ! ------------ Please contribute your transformations so we'll be able to provide a great transformations base ! I'll try to make available some developper oriented documentation until the 1.0 final to make that easier. Until that it shouldn't be too hard to write your own transform by looking at the interfaces and at the existant ones ;) Enjoy ! --=20 Sylvain Th=E9nault LOGILAB, Paris (France). http://www.logilab.com http://www.logilab.fr http://www.logilab.org From g_will@cyberus.ca Wed Jul 9 19:38:07 2003 From: g_will@cyberus.ca (Gordon Williams) Date: Wed, 9 Jul 2003 14:38:07 -0400 Subject: [ANN] wxPyPlot V1.1 Final Message-ID: Hi All, I have released Version 1.1 Final of wxPyPlot for producing simple plots in wxPython. This release fixes two bugs: 1. SaveFile was not saving a file properly if called with a file name. 2. Some CRLF issues corrected. Users will require wxPython 2.4.0.6 or later and Numeric. For your viewing pleasure, the website now has some html docs as well as a few more screen shots of things. Check out: http://www.cyberus.ca/~g_will/wxPython/wxpyplot.html Comments and suggestions welcome. Regards, Gordon Williams ------------------------------------------------------------- What is wxPyPlot?? wxPyPlot is an enhanced derivative version of wxPlotCanvas to provide simple lightweight plotting in wxPython. The emphasis is both on simple and lightweight. Before starting this work I looked at two plotting packages that could be adapted to work with wxPython. SciPy Plt and Chaco are sophisticated and powerful, but at the expense of consuming huge amounts of computer resources for simple plots. They can be found at http://scipy.com. I was looking for something that could be incorporated into a Boa application and had the ability to plot lines with large numbers of points quickly for data capture applications. wxPlotCanvas had the speed and some of the functionality that I was looking for, but lacked a lot of features that I needed. This effort has filled the gap. Features: - Automatic Scaling of Axes - Legends for lines and markers - Plot Title and Axis Labels - Zoom Region with Mouse (Rubber Band) or Programmatically - Scroll Up/Down, Left/Right - Plot Grid (Graticule) on Graph - Printing, Preview, and Page Set-up (margins) -WYSIWYG - Save Plot using various Picture Formats - Cursor X-Y User Axis Values - Simple, Lightweight and Fast - Can be Used with Boa Applications if Desired - Lots of Comments and Doc Strings along with Example Usage I have tested this out on Windows using Python 2.2 and wxPython 2.4.0.6. If you have the chance to test it on Linux, please let me know how it works. Suggestions and improvements welcome. Screen shots, source and instructions for Boa can be found at http://www.cyberus.ca/~g_will/wxPython/wxpyplot.html From max@alcyone.com Wed Jul 9 23:11:40 2003 From: max@alcyone.com (Erik Max Francis) Date: Wed, 09 Jul 2003 15:11:40 -0700 Subject: ANN: EmPy 3.0.3 -- A powerful and robust templating system for Python Message-ID: Overview EmPy is a system for embedding Python expressions and statements in template text; it takes an EmPy source file, processes it, and produces output. This is accomplished via expansions, which are special signals to the EmPy system and are set off by a special prefix (by default the at sign, '@'). EmPy can expand arbitrary Python expressions and statements in this way, as well as a variety of special forms. Textual data not explicitly delimited in this way is sent unaffected to the output, allowing Python to be used in effect as a markup language. Also supported are callbacks via hooks, recording and playback via diversions, and dynamic, chainable filters. The system is highly configurable via command line options and embedded commands. Expressions are embedded in text with the '@(...)' notation; variations include conditional expressions with '@(...?...!...)' and the ability to handle thrown exceptions with '@(...$...)'. As a shortcut, simple variables and expressions can be abbreviated as '@variable', '@object.attribute', '@function(arguments)', '@sequence[index]', and combinations. Full-fledged statements are embedded with '@{...}'. Control flow in terms of conditional or repeated expansion is available with '@[...]'. A '@' followed by a whitespace character (including a newline) expands to nothing, allowing string concatenations and line continuations. Comments are indicated with '@#' and consume the rest of the line, up to and including the trailing newline. '@%' indicate "significators," which are special forms of variable assignment intended to specify per-file identification information in a format which is easy to parse externally. Context name and line number changes can be done with '@?' and '@!' respectively. Escape sequences analogous to those in C can be specified with '@\...', and finally a '@@' sequence expands to a single literal at sign. Getting the software The current version of empy is 3.0.3. The latest version of the software is available in a tarball here: http://www.alcyone.com/pyos/empy/empy-latest.tar.gz. The official URL for this Web site is http://www.alcyone.com/pyos/empy/. Requirements EmPy should work with any version of Python from 1.5.2 onward. It has been tested with all major versions of CPython from 1.5 up, and Jython from 2.0 up (using Java runtimes 1.3.0 and 1.4.1). The included test script is intended to run on Unix-like systems with a Bourne shell. License This code is released under the GPL. .... Release history [since 3.0] - 3.0.3; 2003 Jul 9. Fix bug regarding recursive tuple unpacking using '@[for]'; add 'empy.saveGlobals', 'empy.restoreGlobals', and 'empy.defined' functions. - 3.0.2; 2003 Jun 19. '@?' and '@!' markups for changing the current context name and line, respectively; add 'update' method to interpreter; new and renamed context operations, 'empy.setContextName', 'empy.setContextLine', 'empy.pushContext', 'empy.popContext'. - 3.0.1; 2003 Jun 9. Fix simple bug preventing command line preprocessing directives (-I, -D, -E, -F, -P) from executing properly; defensive PEP 317 compliance. -- Erik Max Francis && max@alcyone.com && http://www.alcyone.com/max/ __ San Jose, CA, USA && 37 20 N 121 53 W && &tSftDotIotE / \ You are my martyr / I'm a vestige of a revolution \__/ Lamya From drifty@alum.berkeley.edu Wed Jul 9 23:14:29 2003 From: drifty@alum.berkeley.edu (Brett C.) Date: Wed, 09 Jul 2003 15:14:29 -0700 Subject: python-dev Summary for 2003-06-01 through 2003-06-30 Message-ID: python-dev Summary for 2003-06-01 through 2003-06-30 ++++++++++++++++++++++++++++++++++++++++++++++++++++ This is a summary of traffic on the `python-dev mailing list`_ from June=20 1, 2003 through June 30, 2003. It is intended to inform the wider=20 Python community of on-going developments on the list and to have an=20 archived summary of each thread started on the list. To comment on=20 anything mentioned here, just post to python-list@python.org or=20 `comp.lang.python`_ with a subject line mentioning what you are=20 discussing. All python-dev members are interested in seeing ideas=20 discussed by the community, so don't hesitate to take a stance on=20 something. And if all of this really interests you then get involved=20 and join `python-dev`_! This is the eighteenth/nineteenth summary written by Brett Cannon (has=20 his own room with a door for the first time in his life). All summaries are archived at http://www.python.org/dev/summary/ . Please note that this summary is written using reStructuredText_ which=20 can be found at http://docutils.sf.net/rst.html . Any unfamiliar=20 punctuation is probably markup for reST_ (otherwise it is probably=20 regular expression syntax or a typo =3D); you can safely ignore it,=20 although I suggest learning reST; its simple and is accepted for `PEP=20 markup`_. Also, because of the wonders of programs that like to=20 reformat text, I cannot guarantee you will be able to run the text=20 version of this summary through Docutils_ as-is unless it is from the=20 original text file. .. _PEP Markup: http://www.python.org/peps/pep-0012.html The in-development version of the documentation for Python can be found=20 at http://www.python.org/dev/doc/devel/ and should be used when wanting=20 to look up any documentation on something mentioned here. Python PEPs=20 (Python Enhancement Proposals) are located at=20 http://www.python.org/peps/ . To view files in the Python CVS online,=20 go to http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/python/ . .. _python-dev: http://www.python.org/dev/ .. _python-dev mailing list:=20 http://mail.python.org/mailman/listinfo/python-dev .. _comp.lang.python: http://groups.google.com/groups?q=3Dcomp.lang.pytho= n .. _Docutils: http://docutils.sf.net/ .. _reST: .. _reStructuredText: http://docutils.sf.net/rst.html .. contents:: .. _last summary:=20 http://www.python.org/dev/summary/2003-05-16_2003-05-31.html =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Summary Announcements =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D I lost Internet on the morning of June 18 and did not regain it until=20 June 29. Since it was so close to the end of the month I decided to=20 just combine the next summary into this month-long summary. During my Internet blackout that reminded me of the days back when I=20 spent my days playing video games and watching television, my future=20 life as a graduate student began to form. Since I am going to have the=20 joy of taking three upper-division undergraduate courses this upcoming=20 fall semester I don't think I am going to have the time to do the=20 summaries when school starts, at least in the capacity I am doing them=20 currently. At minimum I suspect I will have to cut back on the depth of them since=20 I refuse to put the summaries before hacking on the core (hacking is=20 more fun and I would like to think I can contribute more to Python that=20 way). If you want this job I will be willing to give it up starting in=20 September (I want a full year's worth of summaries behind me before I am=20 willing to pass the torch). But if no one takes it I can probably=20 continue to do them in a rather informal way by summarizing only big=20 threads that I find interesting until someone steps forward to do a=20 good, thorough job. If you *really* want to do the summaries at the same level of depth as I=20 am currently doing them and are interested in taking over starting in=20 September, give me an email at brett@python.org . =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D `Descriptor write-up [Draft: Please comment]`__ =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D __ http://mail.python.org/pipermail/python-dev/2003-June/035922.html Related threads: - `Descriptor write-up [second draft]`__ __ http://mail.python.org/pipermail/python-dev/2003-June/035936.html Raymond Hettinger has written an paper on descriptors covering what they=20 are to how to write your own. Since not only are properties class=20 methods, static methods, and 'super' object descriptors (more on the=20 last one later on in this summary) but descriptors are used throughout=20 Python now to create bound objects for functions, methods, etc. It would behoove all serious Python programmers to read=20 http://users.rcn.com/python/download/Descriptor.htm . =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D `Where to put the interrupt module?`__ =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D __ http://mail.python.org/pipermail/python-dev/2003-June/036265.html Not earth-shattering, but to make sure that people know when new things=20 are added to the stdlib I figured I should make this thread have a=20 full-blown summary. Thanks to the development work on IDLEfork_, a new function in the=20 thread module called interrupt_main has been added. It raises=20 KeyboardInterrupt in the main thread of a program. The reason the=20 exception is KeyboardInterrupt and not some new exception is because=20 KeyboardInterrupt is the only asynchronous error in Python. There was discussion of making it much more general, which led to the=20 PyThreadState_SetAsyncState API that allows the raising of an exception=20 in another thread. .. _IDLEfork: http://idlefork.sf.net/ =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D `Can't compile _tkinter.c with Redhat 9`__ =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D __ http://mail.python.org/pipermail/python-dev/2003-June/036277.html `Red Hat`_, apparently, modified their distribution of Tcl_ so as to=20 support `UCS-4`_ text encoding so that their distribution of Python 2.2=20 could be compiled with UCS-4 support. Problem is that this does not=20 allow Python to compile with UCS-2 support; you **have** to compile with=20 UCS-4 support and not UCS-2 under Red Hat 9 with their custom version of=20 Tcl. Thanks to Martin v. L=F6wis, 2.3 has been modified so that Python compile= d=20 in either UCS-4 or UCS-2 will work with standard Tcl which is UCS-2=20 natively. .. _Red Hat: http://www.redhat.com/ .. _Tcl: http://www.tcl.tk/ .. _UCS-4: http://www.wikipedia.org/wiki/UCS-4 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D `PEP-317`__ =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D __ http://mail.python.org/pipermail/python-dev/2003-June/036027.html Splintered threads: - `Exception masking/chaining`__ __ http://mail.python.org/pipermail/python-dev/2003-June/036070.html A discussion of PEP 317 broke out on python-dev. You can read the PEP=20 for details but it advocated removing string exceptions (they are going=20 to be gone in Python 3) and implicit exception instantiation (that is=20 not changing). The PEP was eventually rejected and has the details of=20 why it was rejected in the end. Part of this discussion forked off to discuss exception masking. The=20 idea came up that it might be nice for an exception to keep a reference=20 to a previous exception that was still uncaught at that point. An=20 example is an exception in the function passed to map; the function gets=20 returned without knowing that it was in map. Masking it wouldn't work=20 though since you then wouldn't know about the error in the function=20 itself. But if there was a way to raise an exception from map that=20 reference the original exception from the function then no information=20 would be lost. Chaining the exceptions together would most likely just=20 be sticking the previous exception in an attribute of the new one. This=20 was all originally discussed `in January=20 `__= =20 and `February=20 `_= _=20 of this year. There was also discussion of adding the traceback for an exception as an=20 attribute of the exception. This would make getting respective=20 tracebacks easier period but also easier if exception chaining was=20 implemented. The traceback would most likely be attached to the=20 exception when it is caught and not at instantiation. Both of these ideas are just that, ideas. They most likely won't occur=20 until exceptions are moved over to new-style classes which probably=20 won't be for a while. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D `towards a faster Python`__ =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D __ http://mail.python.org/pipermail/python-dev/2003-June/036059.html Related threads: - `problem with assignment shadows builtin warning`__ __ http://mail.python.org/pipermail/python-dev/2003-June/036422.html A new warning has been added to Python for when you inject an attribute=20 into a module to shadows a built-in:: import os os.open =3D 42 This is in hopes of making this kind of thing illegal so as to allow the=20 bytecode to be optimized for accessing built-ins. It also led to=20 package imports, such as ``import A.B.C`` to work directly on the=20 namespace dict instead of doing essentially ``setattr(A, 'B', A.B);=20 setattr(A.B, 'C', A.B.C)``. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D `Sneaky 'super' instances`__ =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D __ http://mail.python.org/pipermail/python-dev/2003-June/036155.html Splinter threads: - `PEP 246 and Protocols`__ __ http://mail.python.org/pipermail/python-dev/2003-June/036235.html Discovering that an instance to the 'super' type is both an instance of=20 a class *and* a non-data descriptor was causing issues for pydoc and=20 inspect led to the question of whether there was any definitive way to=20 tell whether an object was an instance of a class defined by using the=20 'class' statement in Python. It turns out there is: if=20 object.__class__.__flags__ >> 9 & 1 is 1 (which is the=20 Py_TPFLAGS_HEAPTYPE in C) *and* its metaclass is or a subclass of type. This then spawned a discussion about protocols and interfaces (which was=20 discussed once way back when under the title `type categories`_) since=20 protocols could supposedly allow one to define a protocol for what makes=20 up a 'super' instance. None of this will get into the language (if it=20 ever gets in) until Guido can really think it through and that will be a=20 while. .. _type categories: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D `Details on Python shutting down`__ =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D __ http://mail.python.org/pipermail/python-dev/2003-June/036386.html What happens while Python is shutting down? Well, it calls Py_Finalize=20 in Python/pythonrun.c . This means that signals are turned off,=20 gc.collect is called, calls PyImport_Cleanup in Python/import.c, and=20 then calls. gc.collect one more time. PyImport_Cleanup is where modules are torn down. __main__ is deleted,=20 then everything but sys and __builtin__, and then sys and __builtin__=20 (in that order). Now "deletion" as mentioned he is setting the module=20 to None in sys.modules, setting all names starting with a single=20 underscore to None in the module, and then all others sans __builtins__ . This is why when you define a __del__ method you need to make sure that=20 all things referenced in it are local; global names in the module will=20 have been set to None by the time the code is called if the object is=20 collected during shutdown and raise an exception. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D `Re: [Python-checkins] python/dist/src/Objectslistobject.c,2.15`__ =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D __ http://mail.python.org/pipermail/python-dev/2003-June/036445.html list.index now has optional start and end arguments. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D `RELEASED: Python 2.3b2`__ =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D __ http://mail.python.org/pipermail/python-dev/2003-June/036623.html Related threads: - `2.3b2 this weekend`__ - `Python 2.3b2 branch tag created`__ __ http://mail.python.org/pipermail/python-dev/2003-June/036596.html __ http://mail.python.org/pipermail/python-dev/2003-June/036614.html Title says it all. Big thing with this beta release is the new version=20 of IDLE. As with all betas, please download it and give it a whirl to=20 try to shake out any bugs that need fixing *ASAP*; we are going to aim=20 for an August 1 release date for final thanks to Apple planning to=20 incorporate Python 2.3 into Panther_. .. _Panther: http://www.apple.com/macosx/panther/ =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D `Re: Activating `-i' from inside a script?`__ =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D __ http://mail.python.org/pipermail/python-dev/2003-June/036579.html Related threads: - `Delayed `-i'! :-)`__ __ http://mail.python.org/pipermail/python-dev/2003-June/036636.html Thanks to Skip Montanaro and someone curious at comp.lang.python_ you=20 can now set the PYTHONINSPECT environment variable to something and then=20 be started into an interactive interpreter if an exception propagates=20 all the way to the end of a program without being caught. =3D=3D=3D=3D=3D=3D=3D=3D Quickies =3D=3D=3D=3D=3D=3D=3D=3D Weekly Python Bug/Patch Summary ------------------------------- - `2003-06-01`__ - `2003-06-08`__ - `2003-06-15`__ - `2003-06-22`__ - `2003-06-29`__ __ http://mail.python.org/pipermail/python-dev/2003-June/035926.html __ http://mail.python.org/pipermail/python-dev/2003-June/036021.html __ http://mail.python.org/pipermail/python-dev/2003-June/036364.html __ http://mail.python.org/pipermail/python-dev/2003-June/036525.html __ http://mail.python.org/pipermail/python-dev/2003-June/036610.html `BaseHTTPServer parsing`__ --------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/035948.html Code marked as internal to a module in the stdlib means you should not=20 directly reference it in your code lest you are willing to deal with=20 possible future breakage when a refactoring of that module is done. `popen2.py strangeness`__ ------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/035955.html A race condition in popen2 was found and fixed in 2.3 but was not solved=20 in time for 2.2.3 . It has been marked for backporting for 2.2.4 . `timsort?`__ ------------ __ http://mail.python.org/pipermail/python-dev/2003-June/035958.html The new sorting algorithm for lists (known affectionately as "timsort"=20 since Tim Peters wrote that tricky piece of code) is a 2.3 feature. But=20 if you would like it for older versions of Python you can get it from=20 http://py-stablesort.sourceforge.net/ . `Mundane dict __setitem__...`__ ------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/035970.html The hash value for an object in a dictionary is not guaranteed to be=20 done based on identity; having two names set to equal tuples and used as=20 keys will overwrite each other. `Meaning of trailing comma?`__ ------------------------------ __ http://mail.python.org/pipermail/python-dev/2003-June/035990.html Improper for python-dev, but Michael Chermside was nice enough to answer=20 the question nonetheless. `test_strptime failed`__ ------------------------ __ http://mail.python.org/pipermail/python-dev/2003-June/035995.html A failing test was reported. Follow-up on the thread is still pending. `IDLEfork Re-integration into Python`__ --------------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/035994.html The new version of IDLE (being developed by the `IDLEfork`_ team) is=20 going to be kept in Lib/idlelib/ . `On Syntax Extensibility (again)`__ ----------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036002.html Samuele Pedroni's thoughts on blocks (like thunks) in Python. This goes=20 way back to the `2003-02-01 summary`_ and the `thunks=20 `__=20 summary. .. _2003-02-01 summary:=20 http://www.python.org/dev/summary/2003-02-01_2003-02-15.html `The Python interpreter is not fully thread-safe.`__ ---------------------------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036004.html It is going to be added to the documentation for threading in the Python=20 core that it does not support free threading. For those of you who=20 aren't familiar with what free threading is (it apparently comes from=20 the Windows programming world), it means that something can be called at=20 any time from any thread. In other words it is thread-safe without=20 requiring any special API. `urllib2 proxy support broken?`__ --------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036005.html This was initially covered in the `last summary`_. The broken proxy support in urllib2 has been fixed. `Re: [Python-checkins] python/dist/src/Lib pprint.py`__... ----------------------------------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036008.html A patch applied to pprint to try to notice if a type's __repr__ had=20 changed was backed out. `mimetypes.guess_all_extensions()`__ ------------------------------------ __ http://mail.python.org/pipermail/python-dev/2003-June/036076.html Now returns the empty list when there are no matching extensions. `[OT] Thank you, python-dev`__ ------------------------------ __ http://mail.python.org/pipermail/python-dev/2003-June/036083.html An email from me to python-dev thanking the list for everything they=20 have done since it helped get me into grad school. `Re: [DB-SIG] API suggestion: expose 'quote' method`__ ------------------------------------------------------ __ http://mail.python.org/pipermail/python-dev/2003-June/036108.html Email about adding an optional quote function to the Python `DB-API`_ spe= c. .. _DB-API: http://www.python.org/topics/database/ `Updated 2.3 Release Schedule`__ -------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036163.html Don't expect 2.3 final to be released until some time after OSCON (it=20 ends on July 11). `cPickle coredump with 2.3/cvs`__ --------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036187.html Someone was having core dump on them thanks to cPickle, but with no one=20 else able to reproduce the problem so it's up to the OP to help solve=20 this one. `Patch to remove eval from csv sniffer`__ ----------------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036203.html A patch for the new csv package was questioned since 2.3 is in beta.=20 Guido gave the clear, though, since the chances of people's code being=20 dependent on the package were negligible. `Proposal to drop f_tstate`__ ----------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036204.html A misunderstanding on the use of the f_tstate value in frames in C code. `Caching of builtins and globals in action`__ --------------------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036228.html Samuele Pedroni playing with caching accesses to globals and built-ins. `Two useful patches involving tracebacks`__ ------------------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036230.html After discussing a useful patch, the idea of refactoring the cgitb and=20 traceback module for 2.4 came up and seemed to be agreed upon to be a=20 good idea. `PEP-311 operational?`__ ------------------------ __ http://mail.python.org/pipermail/python-dev/2003-June/036282.html Someone asking if PEP 311 has been applied. `Can we switch different "byte code interpreters"?`__ ----------------------------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036105.html Answer: no. Lesson learned: when you want to start a new thread do not piggyback on=20 an existing one unless it is somehow related. `Sporadic test failures in Lib/test/test_mimetools.py`__ -------------------------------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036299.html When writing tests that base results on the time difference between time=20 measurements you *must* make sure that the difference is big enough to=20 be noticed by a platforms time.time function (Windows only measures 18.2=20 times a second). `porting problems`__ -------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036308.html Someone has gotten Python to run on an XBox and GameCube. =3D) `Python language standard; LSB`__ --------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036325.html Python has no "standard"; CPython is as close as you are going to get. `VC 7.1 compiler for key developers - last call!`__ --------------------------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036339.html Guido asked for key developers who wanted a free copy of VC 7.1 to speak = up. `PEP280 and my experiment`__ ---------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036356.html Taking cues from PEP 280, Samuele Pedroni experimented with caching=20 access to builtins and globals and got about a 15% increase. `On the possibility of "optimizing" range() calls in for-loops`__ ----------------------------------------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036358.html The idea of optimizing the bytecode for calls to range in 'for' loops is=20 still being thrown around. Alex Martelli, though, pointed out that if=20 you just need to do something a set number of times nothing beats=20 itertools.repeat . `Changes to IDLE`__ ------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036366.html All new bugs and patches in regards to IDLE should go into the Python=20 tracker. `zipfile.py (SF #755031)`__ --------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036372.html A bug with zipfile was found and subsequently patched. `New PEP: 319`__ ---------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036387.html A new PEP on adding a keyword for synchronizing code has been put online. `Py2.3 Todo List`__ ------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036453.html Related threads: - `More work on SRE`__ __ http://mail.python.org/pipermail/python-dev/2003-June/036520.html Essentially a discussion as to whether to apply Gustavo Niemeyer's patch=20 to remove the recursion limit from the re module and to add=20 sys.(get|set)defaultsourceencoding functions. The former is in (with=20 help of a coverage tool that comes with gcc and is talked about at=20 https://moin.conectiva.com.br/GustavoNiemeyer/2003-06-19 ) and the=20 latter had new tests added but won't have the code removing recursion=20 limits applied until after 2.3. .. _EuroPython: http://www.europython.org/ `Handler.setLevel()`__ ---------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036466.html Misunderstanding over how the method worked. `No Net at home`__ ------------------ __ http://mail.python.org/pipermail/python-dev/2003-June/036485.html I lost Internet, as you probably know from the `Summary Announcements`_=20 section, on June 18 and didn't get it back until June 29. `SF CVS hosed?`__ ----------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036489.html Usual issues with cvs. Some talk about Subversion_. .. _Subversion: http://subversion.tigris.org/ `curses module has_key emulation`__ ----------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036501.html Problem with curses was found and a proposed patch at=20 http://www.python.org/sf/759208 has been created. `A vote against dict(keyword=3Dvalue) sugar`__... ----------------------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036502.html What the subject says. `Python on dual-processor Macs?`__ ---------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036530.html Greg Ewing was worried about a bug he heard about on dual-processor=20 Macs. Jack Jansen said it was solved, though. `Patch 595601`__ ----------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036537.html A race condition with files and closing/reading is being worked on at=20 http://www.python.org/sf/595601 . `cookie support for FancyURLopener?`__ -------------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036553.html Someone asking if a certain feature was under development. `proposed Tkinter change; any likelihood of acceptance?`__ ---------------------------------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036555.html Not for 2.3.0, but maybe for 2.4 or 2.3.1 . `Python hash function`__ ------------------------ __ http://mail.python.org/pipermail/python-dev/2003-June/036556.html Damien Morton continues to try to speed up Python, this time by trying=20 to speed up the hashing of strings. `Py2.1`__ --------- __ http://mail.python.org/pipermail/python-dev/2003-June/036564.html Backporting a fix all the way to Python 2.1 is only needed if it is=20 really critical. `deprecate dbm module & add bsddb185 module for 2.2`__ ------------------------------------------------------ __ http://mail.python.org/pipermail/python-dev/2003-June/036569.html "No" and probably "if you put the effort into it yourself". `OSCON Lightning Talk Proposals still being accepted`__ ------------------------------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036574.html If you want to give a lightning talk at OSCON_, read this email. .. _OSCON: http://conferences.oreilly.com/oscon/ `Yet more SRE`__ ---------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036575.html Gustavo Niemeyer fiddles with the re module some more. `Python 2.3b1, distutils and PEP 263`__ --------------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036577.html Bug in Distutils is squashed involving the shebang line. `test_copy_reg failing in 2.3 CVS`__ ------------------------------------ __ http://mail.python.org/pipermail/python-dev/2003-June/036582.html Dealt with by a comment. `socket timeouts and httplib`__ ------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036587.html Dealt with by adding a specific exception for timeouts. `Embedding Python, threading and scalability`__ ----------------------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036589.html David Abrahams redirecting a question to python-dev. `[ANN] SciPy '03 -- The 2nd Annual Python for Scientific Computing=20 Workshop`__ -------------------------------------------------------------------------= ----- __ http://mail.python.org/pipermail/python-dev/2003-June/036591.html Title says it all. `Proposed DNS query library`__ ------------------------------ __ http://mail.python.org/pipermail/python-dev/2003-June/036604.html Take a look at dnspython_ if you need DNS stuff. .. _dnspython: http://www.dnspython.org `Problems in stdlib before 2.3b2`__ ----------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036606.html They are being/have been dealt with. `Running tests on freebsd5`__ ----------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036611.html ...had two failures. They are being worked on. `threads duplicated on fork() prevent child from terminating properly`__ ------------------------------------------------------------------------ __ http://mail.python.org/pipermail/python-dev/2003-June/036619.html Person was told to file a bug report. `Meaty debugging mystery`__ --------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036627.html ... which Martin v. L=F6wis figured out the basic cause although how it i= s=20 happening is still unknown. `2.3b2 known bugs?`__ --------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036632.html The bugs listed previously at http://www.python.org/2.3/bugs.html have=20 been fixed but two new ones take their place. `Problem with 2.3b2 tarfile?`__ ------------------------------- __ http://mail.python.org/pipermail/python-dev/2003-June/036637.html Solaris tar was choking on a *really* long pathname in the stdlib. The=20 pathname will most likely end up being changed to be under 100=20 characters so as to meet the POSIX tarfile format specification. From amk@amk.ca Fri Jul 11 13:46:20 2003 From: amk@amk.ca (A.M. Kuchling) Date: Fri, 11 Jul 2003 08:46:20 -0400 Subject: Mailing list for Web framework discussion Message-ID: I've created a mailing list called pyweb for discussion of Python Web frameworks. The initial topic of the list will likely be a discussion of what to use as an example web application, continuing the current python-list thread. It's a Mailman list, so just point your web browser at: http://www.amk.ca/mailman/listinfo/pyweb/ and follow the usual steps. --amk From anthony@computronix.com Fri Jul 11 18:02:37 2003 From: anthony@computronix.com (Anthony Tuininga) Date: 11 Jul 2003 11:02:37 -0600 Subject: cx_Freeze 2.0 Message-ID: After a rather long hiatus, I am happy to announce the release of cx_Freeze 2.0 which contains a number of significant enhancements. What is cx_Freeze? cx_Freeze is a set of utilities for freezing Python scripts into executables using many of the techniques found in Thomas Heller's py2exe, Gordon McMillan's Installer and the Freeze utility that ships with Python itself. Where do I get it? http://starship.python.net/crew/atuining http://www.computronix.com/utilities.shtml (it may be a few days before the second site is updated) What's new? 1) Added support for in process (DLL) COM servers using PythonCOM 2) Made use of new Python 2.3 modules (that work under Python 2.2 as well) as they contain advanced functionality that make the task of finding modules simpler and less error prone 3) Fixed import error with C extensions in packages (thanks to Thomas Heller for pointing out the solution to that problem) 4) Added options to FreezePython to force the inclusion of modules that are not found by the module finder (--include-modules) and force the exclusion of modules that are found by the module finder (--exclude-modules) 5) Dropped the option --copy-extensions since the resulting binary is useless without the extensions 6) Inclusion of a sample for building a Win32 service 7) Other smaller bug fixes -- Anthony Tuininga anthony@computronix.com Computronix Distinctive Software. Real People. Suite 200, 10216 - 124 Street NW Edmonton, AB, Canada T5N 4A3 Phone: (780) 454-3700 Fax: (780) 454-3838 http://www.computronix.com From guido@python.org Fri Jul 11 20:13:43 2003 From: guido@python.org (Guido van Rossum) Date: Fri, 11 Jul 2003 15:13:43 -0400 Subject: Help Support Python Message-ID: I'm pleased to announce that the Python Software Foundation (PSF) is now accepting donations from individuals and companies interested in supporting our mission to improve the Python programming language. The PSF holds the intellectual property rights for Python and is working towards building a program to fund future Python development. Your donation will make a real difference in the quality of Python's future. For US individuals: The PSF is recognized as a 501(c)(3) charity, which means that you can deduct the full amount of your donation from your taxes. There is no minimum donation amount, so please help even if you can only afford a small contribution. For companies: The PSF is also seeking additional companies interested in becoming sponsors. For more information, please email psf@python.org. About the PSF: http://python.org/psf/ To donate: http://python.org/psf/donations.html You can donate using PayPal or by writing a check. Please pass this message along to anyone who may be able to help us. Thank You! Guido van Rossum, President of the Python Software Foundation --Guido van Rossum (home page: http://www.python.org/~guido/) From tbryan@python.net Sat Jul 12 23:25:56 2003 From: tbryan@python.net (Tom Bryan) Date: Sat, 12 Jul 2003 22:25:56 GMT Subject: TriZPUG July Meeting: Introduction to CMF Message-ID: The Triangle Zope/Python User Group (TriZPUG) will hold its next meeting on Wednesday, July 23, at 6:30 p.m. in Raleigh, NC. We will be meeting in the DELTA conference room(s) at Venture III, who has kindly permitted us to use their meeting room, on NCSU's Centennial Campus. Directions to Venture III are below. Sam Brauer will be giving a talk on Zope's CMF. Hope to see you there! Title: Introduction to CMF ========================== The Zope Content Management Framework (CMF) is a set of related Zope products which provides a flexible, easily-customizable base for developing sites that allow end users to manage site content themselves. This talk will introduce the CMF, give a tour of a standard uncustomized CMF site, and provide an overview of CMF customization. (Sam may also present a CMF-based site he recently put into production as a sort of case study.) Directions to the TriZPUG Meeting: ================================== If you need directions to NCSU's Centennial Campus, try the following link http://centennial.ncsu.edu/howtogethere/htgh.htm If you need directions to the Venture III building, follow this link http://lts.ncsu.edu/about/venture3.html, but skip step #3 since the meeting is after hours. For more about TriZPUG: ======================= Web page http://dev.zope.org/Members/tbryan/TriZPUG/FrontPage Mailing list http://starship.python.net/mailman/listinfo/triangle-zpug From mcfletch@rogers.com Sun Jul 13 16:11:07 2003 From: mcfletch@rogers.com (Mike C. Fletcher) Date: Sun, 13 Jul 2003 11:11:07 -0400 Subject: ResourcePackage 1.0.0b1 released Message-ID: What is ResourcePackage: ResourcePackage is a mechanism for automatically managing resources (i.e. non-Python files: small images, documentation files, binary data) embedded in Python modules (as Python source code), particularly for those wishing to create re-usable Python packages which require their own resource-sets. What's new: The only change from the last alpha release is including an encoding comment to silence a new deprecation warning in Python 2.3b2. Where to get it: http://resourcepackage.sourceforge.net/ http://sourceforge.net/project/showfiles.php?group_id=71287 Enjoy yourselves, Mike _______________________________________ Mike C. Fletcher Designer, VR Plumber, Coder http://members.rogers.com/mcfletch/ From nas@mems-exchange.org Mon Jul 14 23:51:30 2003 From: nas@mems-exchange.org (Neil Schemenauer) Date: Mon, 14 Jul 2003 18:51:30 -0400 Subject: ANNOUNCE: scgi 1.1 released Message-ID: Version 1.1 of the scgi package is now available from: http://www.mems-exchange.org/software/scgi/ The SCGI protocol is a replacement for the Common Gateway Interface (CGI) protocol. It is a standard for applications to interface with HTTP servers. It is similar to FastCGI but is designed to be easier to implement. Included in this package is mod_scgi, an Apache module that implements the client side of the protocol. There is also a a Python package called "scgi" which implements the server side of the protocol. Changes in version 1.1 ---------------------- * Pass HTTP/1.1 request headers to SCGI servers. * Try to make passfd compile on OpenBSD and older versions of Solaris. * Implement graceful restart for scgi_server.py. From jjl@pobox.com Tue Jul 15 01:05:26 2003 From: jjl@pobox.com (John J. Lee) Date: 15 Jul 2003 01:05:26 +0100 Subject: ANN: ClientForm 0.0.11 and 0.1.5a released Message-ID: http://wwwsearch.sourceforge.net/ClientForm/ A new stable and development release. Changes from 0.0.10 to 0.0.11: * Default selection for RADIO with no explictly selected items in HTML now correctly follows browser behaviour. This browser behaviour is in conflict with HTML 4.01. The various select_default arguments, as before, make everything follow HTML 4.01. * RadioControls now no longer have to have exactly one item selected: zero items can now be selected, in accordance with browser behaviour. Changes from 0.1.3a to 0.1.5a: This may be the last alpha release. A lot of interface changes. I don't recommend upgrading to 0.1.x from old 0.0.x code unless you want the new features. Everything is now much more consistent and, I hope, convenient. Also, direct use of Control objects should now be needed only rarely. Instead, just call methods on HTMLForm objects. Note that the web page above refers to the old interface. See here for the new one: http://wwwsearch.sourceforge.net/ClientForm/src/README-0_1_5a.html * Equivalent changes to those listed above for the stable release. * File upload now actually seems to work (replaced \n with \r\n). * Multiple file upload has been implemented (not yet tested on the web). * ListControls now always take sequence values, never string-like values or None. * Exceptions raised have now changed completely. * disabled attribute is now handled differently: if any item is disabled, the control's value can only be set directly if no attempt is made to select a disabled item (deselection is OK). The set and .toggle methods can still be used, but again, individual items can't be selected if they're disabled. There are several new methods to manipulate the disabled state of items. OPTGROUP is taken account of when parsing, to determine which items are disabled. * All controls now have the readonly attribute. * clear methods are gone, to be replaced by selected argument to set methods. * The HTMLForm.set and .toggle methods now take value as second and first arguments respectively, with the other arguments reflecting those of find_control (ie. name, type, kind, nr). * New argument to various HTMLForm methods: by_label. * Lots of new methods on HTMLForm. HTMLForm.find_control shouldn't be needed any more (rarely, anyway). All these methods take the same style of arguments as .set and .toggle. * New argument to HTMLForm.find_control: kind. Allows you to request controls that satisfy particular interfaces without specifying the exact type string. Values are "list", "singlelist", "multilist", "text", "file", "clickable". Also in HTMLForm methods, where appropriate. * New argument to HTMLForm.find_control: predicate. Not exposed in other HTMLForm methods. * Renamed HTMLForm.find_item --> get_item_attrs. * Renamed HTMLForm.click_items --> click_pairs. * Renamed items --> pairs everywhere. * Renamed get_value_as_label --> get_value_by_label. * Renamed possible_values --> possible_items. * Renamed possible_labels --> possible_item_labels. * Removed nr argument from all methods related to get_item_attrs. * SelectControl.set_by_label and .toggle_by_label have now gone, to be replaced by by_label arguments to .set and .toggle. * HTML attribute dictionaries now contain *all* original HTML attributes, including those that are exposed elsewhere in the ClientForm API (such as name, type, multiple, selected). * HTMLForm.set and .toggle methods have been extended to work with single-selection controls. * HTMLForm now has toggle_single and set_single methods. This is useful when you have a single-item list control (usually a single checkbox that you want to check), and you want to select that item without having to know what the item's name is (it's usually something meaningless like "1" or "on"). * Empty SelectControl can now be constructed. * Moved most documentation from Control objects into HTMLForm. The class docstring for HTMLForm now contains most of what you need to know. * Assorted code cleanup and minor bugfixes. Requires Python >= 1.5.2. ClientForm is a Python module for handling HTML forms on the client side, useful for parsing HTML forms, filling them in and returning the completed forms to the server. It has developed from a port of Gisle Aas' Perl module HTML::Form, from the libwww-perl library, but the interface is not the same. Simple example: from urllib2 import urlopen from ClientForm import ParseResponse forms = ParseResponse(urlopen("http://www.acme.com/form.html")) form = forms[0] print form form["author"] = "Gisle Aas" # form.click returns a urllib2.Request object # (see HTMLForm.click_request_data.__doc__ if you're not using urllib2) response = urlopen(form.click("Thanks")) John From peter@engcorp.com Tue Jul 15 02:33:23 2003 From: peter@engcorp.com (Peter Hansen) Date: Mon, 14 Jul 2003 21:33:23 -0400 Subject: Next meeting of Toronto Python User Group: Tue July 29 8pm Message-ID: The next regular meeting of the Greater Toronto Area Python User Group (aka PyGTA) will occur on Tuesday July 29 at 8pm in the usual location. See the wiki page at http://web.engcorp.com/pygta/wiki/NextMeeting for details. There are as of yet no offers of presentations, but the last two meetings seemed to be well received so maybe we'll continue the impromptu-presentation-with-laptop-with-broken-keyboard style of meetings... ;-) A projector should be available for use *if* requested in advance. See you there! -Ian Garmaise, Peter Hansen, PyGTA organizers From nas@mems-exchange.org Tue Jul 15 15:45:25 2003 From: nas@mems-exchange.org (Neil Schemenauer) Date: Tue, 15 Jul 2003 10:45:25 -0400 Subject: ANNOUNCE: Quixote 0.6.1 released Message-ID: Version 0.6.1 of Quixote is now available from: http://www.mems-exchange.org/software/quixote/ Quixote is yet another framework for developing Web applications in Python. Changes from 0.6.1 ------------------ * Form.add_widget() now returns the widget. * Allow the Expires header to be suppressed by setting the HTTPResponse.cache attribute to None. * Use title case for header names added by HTTPResponse.set_headers(). Clients are not supposed to care about case but it's better to be conservative. * Catch IOError exceptions raised when writing the response and log a message (rather than exiting with a traceback). * Fix bug regarding _q_exception_handler. 'namespace_stack' needs to be updated while the traversal is occuring. Thanks to Jason Sibre for spotting it and for the fix. * Add If-Modified-Since support for StaticFile objects. Also, don't set the Expires header by default. Instead, set the Last-Modified header based on the modification time of the file. The Expires header can be enabled by providing a value for the 'cache_time' argument. From webmaster@keyphrene.com Tue Jul 15 15:29:58 2003 From: webmaster@keyphrene.com (webmaster@keyphrene.com) Date: Tue, 15 Jul 2003 14:29:58 GMT Subject: ANN: Naja 0.8.3 is now available Message-ID: Naja is a freeware tool written in Python/wxPython. Naja is a download manager and a website grabber. It can be used for extract JPEG images from news server. Naja supports proxy (HTTP, FTP, SOCKS v4a, SOCKS v5). The downloading maybe achieved by splitting the file being downloaded into several parts and downloading these parts at the same time (HTTP & FTP). Donwload speeds are increased by downloading the file from the mirror sites, when the sites propose it. Version 0.8.3 of Naja has been released and is available for download from the Keyphrene web site: http://www.keyphrene.com products/naja From donald_rivard@hotmail.com Tue Jul 15 17:48:25 2003 From: donald_rivard@hotmail.com (Don Rivard) Date: Tue, 15 Jul 2003 12:48:25 -0400 Subject: cx_Freeze 2.0 References: Message-ID: Has anyone had any luck getting this application to support in process (DLL) COM servers using PythonCOM I cannot get this to work at all Don "Anthony Tuininga" wrote in message news:mailman.1057944903.5762.clpa-moderators@python.org... > After a rather long hiatus, I am happy to announce the release of > cx_Freeze 2.0 which contains a number of significant enhancements. > > > What is cx_Freeze? > cx_Freeze is a set of utilities for freezing Python scripts into > executables using many of the techniques found in Thomas Heller's > py2exe, Gordon McMillan's Installer and the Freeze utility that ships > with Python itself. > > Where do I get it? > http://starship.python.net/crew/atuining > http://www.computronix.com/utilities.shtml > (it may be a few days before the second site is updated) > > What's new? > 1) Added support for in process (DLL) COM servers using PythonCOM > 2) Made use of new Python 2.3 modules (that work under Python 2.2 > as well) as they contain advanced functionality that make the task > of finding modules simpler and less error prone > 3) Fixed import error with C extensions in packages (thanks to Thomas > Heller for pointing out the solution to that problem) > 4) Added options to FreezePython to force the inclusion of modules that > are not found by the module finder (--include-modules) and force the > exclusion of modules that are found by the module finder > (--exclude-modules) > 5) Dropped the option --copy-extensions since the resulting binary is > useless without the extensions > 6) Inclusion of a sample for building a Win32 service > 7) Other smaller bug fixes > > -- > Anthony Tuininga > anthony@computronix.com > > Computronix > Distinctive Software. Real People. > Suite 200, 10216 - 124 Street NW > Edmonton, AB, Canada T5N 4A3 > Phone: (780) 454-3700 > Fax: (780) 454-3838 > http://www.computronix.com > > From cben@techunix.technion.ac.il Tue Jul 15 17:48:55 2003 From: cben@techunix.technion.ac.il (Beni Cherniavsky) Date: Tue, 15 Jul 2003 19:48:55 +0300 (IDT) Subject: streams - lazy streams abstraction tightly integrated with iterators Message-ID: As a result of the thread about "Snapshottable iterators" on c.l.py I decided to separate lazy linked lists from the iterators over them. The API now looks much more elegant. Here__ is the result. __ http://www.technion.ac.il/~cben/python/streams.py This module exposes the duality between linked lists and iterators: - Simple linked lists have the drawback that their tail must be known and finite. This can be fixed by overloading head/tail access and making it lazy; the result is popular in functional programming languages [1]_ under the name ''stream''. This is implemented by the `Stream` class. - Iterators have the drawback that advancing them is destructive but there is no way to capture the ''remaining future'' of an iterator at some moment. This can be fixed by making an iterator explicitly point to a stream and allow separate iterators to be forked from it. This is implemented by the `StreamIter` class. Another useful thing about linked lists is that you can non-destructively cons in front of them. This is implemented by the `Cons` class (which is also used to represent the part of stream that has already been computed) and is also accessible through the `StreamIter.unyield()` method. A `__stream__()` protocol is defined, paralleling `__iter__()`. Object can implement it to provide special implementaion of streams over them (but normally you would simply implement `__iter__()` and `Stream` will know to wrap it). On stream objects this method returns self. A convenince subscripting interface is provided for streams. .. [1] See also: - The `Streams chapter of SICP`__ shows how streams with a lazy tail can be a very powerful abstraction. __ http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-24.html#%_sec_3.5 - `SRFI 40: A Library of Streams`__ specifies streams whose head is lazy too, which is more elegant and predictable. It's also a better parallel for iterators. This is the flavour implemented by this module. __ http://srfi.schemers.org/srfi-40/srfi-40.html - `STREAM_IO layer`__ of the standard ML basic library seems to provide a similar abstration but with buffering. I don't know ML enough to say more. __ http://www.standardml.org/Basis/stream-io.html#STREAM_IO:SIG:SPEC -- Beni Cherniavsky If I don't hack on it, who will? And if I don't GPL it, what am I? And if it itches, why not now? [With apologies to Hilel ;] From indrek@inversion.ee Tue Jul 15 21:54:40 2003 From: indrek@inversion.ee (Indrek =?ISO-8859-1?Q?J=E4rve?=) Date: 15 Jul 2003 23:54:40 +0300 Subject: ANNOUNCE: Conflux Lite 1.0 Message-ID: 15 July 2003, Tallinn Inversion Software O=C3=9C is pleased to announce the release of C=C3=B2n= flux Lite 1.0, a web-based groupware and file management application. Key features of C=C3=B2nflux Lite include: * Powerful groupware components o shared calendars with support for repeating events o tasks which can also be assigned to coworkers o shared organization contacts and private contacts o discussions * A file management module * An e-mail client * All data is accessable from any internet-connected computer with a browser * Easily localizable - support for multiple languages and date formats * Unicode support About C=C3=B2nflux C=C3=B2nflux Lite is an open source groupware and file management system.= It uses the common web browsers as it's user interface to achieve the access-anywhere functionality. Based on open source components and offering easy localizability, the product offers a cost-effective solution for organizing your daily work and bringing it online. C=C3=B2nflux Lite is written in Python using the Apache2/Python integrati= on module mod_python and uses the PostgreSQL database as a back end. The source code is released under the GNU General Public License. Read more about C=C3=B2nflux and try the online demo from the C=C3=B2nflu= x home page, http://www.conflux.ee/ About Inversion Software Inversion Software O=C3=9C is a privately owned software development comp= any based in the capital of Estonia, Tallinn. Our employees have extensive experience in the field of groupware and web-based information systems. The company's product range also includes C=C3=B2nflux Professional - a commercial offering, C=C3=B2nflux ASP - a package specially designed for = ASP service providers, C=C3=B2nflux Lite - an open source and freeware groupw= are package, and customized development. From jcribbs@twmi.rr.com Thu Jul 17 02:38:01 2003 From: jcribbs@twmi.rr.com (Jamey Cribbs) Date: Thu, 17 Jul 2003 01:38:01 GMT Subject: ANNOUNCE: KirbyBase 1.02 Message-ID: Version 1.02 of KirbyBase is now available at: http://www.netpromi.com/files/KirbyBase-1.02.zip KirbyBase is a simple, pure-python, plain-text database management system that can be used either embedded or client/server. You can find out more about KirbyBase at: http://www.netpromi.com/KirbyBase.html Changes in version 1.02 ----------------------- * Fixed bug in createTable, and insert methods where field list passed into method was getting modified. * Added the ability to use special characters in table data such as \r, \n, \032, and |. * Changed the name of all private methods to start with two underscores in order to follow recommended naming conventions. * Improved documentation. * Added licensing information. * Now uses distutils for installation. I would like to thank Mark Bucciarelli for not only reporting the createTable bug and the special characters bug, but also sending me patches to fix both of them. Thanks Mark! Also, I would like to thank Brian Benjamin for providing valuable suggestions regarding the private methods and documentation, and for his kind words about KirbyBase. Thanks Brian! Jamey Cribbs www.netpromi.com From jcribbs@twmi.rr.com Thu Jul 17 12:33:08 2003 From: jcribbs@twmi.rr.com (Jamey Cribbs) Date: Thu, 17 Jul 2003 11:33:08 GMT Subject: ANNOUNCE: KirbyBase 1.02 In-Reply-To: References: Message-ID: Jamey Cribbs wrote: > > You can find out more about KirbyBase at: > > http://www.netpromi.com/KirbyBase.html > Oops! That should be: http://www.netpromi.com/kirbybase.html Sorry about that! Jamey Cribbs www.netpromi.com From tim@zope.com Thu Jul 17 21:23:32 2003 From: tim@zope.com (Tim Peters) Date: Thu, 17 Jul 2003 16:23:32 -0400 Subject: ZODB3 3.3 alpha 1 released Message-ID: The ZODB3 package provides a set of tools for using the Zope Object Database (ZODB) in Python programs separately from Zope. ZODB3 3.3a1 is an experimental version that is compatible with new-style classes. This version of ZODB currently works only with Python 2.3. The primary change is that ExtensionClass is gone: the Persistent base class is a regular Python type instead of an ExtensionClass type now. As a result, you should be able to use properties, descriptors, and other new Python features with persistent objects. Compatibility with other Python features new in 2.2 is also improved, primarily that 3.3 BTree-based containers participate in Python's newer iteration and __contains__ protocols. These changes were largely backported from ZODB4, used in Zope3. Development on ZODB4 has been suspended, and the intent is that the ZODB3 3.3 line will eventually be used in both Zope2 and Zope3. The current release has a lot of rough edges, but we hope developers will find it useful to give it a test drive. We have not tested Persistent objects that use properties or slots. We expect that code with getattr or setattr hooks will need to be written with care, probably using different techniques than in earlier versions of ZODB. A source tarball and Windows installer can be downloaded from: http://www.zope.org/Products/ZODB3.3/ The Windows installer was built with Python 2.3c1 (2.3. release candidate 1), which will be released later tonight. Enjoy! From richard@commonground.com.au Fri Jul 18 08:20:18 2003 From: richard@commonground.com.au (Richard Jones) Date: Fri, 18 Jul 2003 17:20:18 +1000 Subject: SC-Track Roundup 0.5.9 - an issue tracking system Message-ID: -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 ================================================= SC-Track Roundup 0.5.9 - an issue tracking system ================================================= This is a bugfix (and performance) release for version 0.5.x - if you're upgrading from before 0.5, you *must* read doc/upgrading.txt! Unfortunately, the Zope frontend for Roundup is currently broken. If you'd like to volunteer to fix it, let me know. Roundup requires python 2.1.3 or later for correct operation. Users of the sqlite backend are encouraged to upgrade sqlite to version 2.7.3. Python 2.3 in any form is *not* supported. This release has: - - backported XSS message cleaning fix (sf bug 757128) - - only clean sessions once per hour (backport from HEAD) - - remember the session db type (much faster session db opening) - - backported last-modified and if-modified-since header support for static files (ie. style.css etc.) from HEAD - - changed rdbms_common to fix sql backends under Py2.3 - - don't open the database in cgi if it's not necessary Source and documentation is available at the website: http://roundup.sourceforge.net/ Release Info (via download page): http://sourceforge.net/projects/roundup Mailing lists - the place to ask questions: http://sourceforge.net/mail/?group_id=31577 About Roundup ============= Roundup is a simple-to-use and -install issue-tracking system with command-line, web and e-mail interfaces. It is based on the winning design from Ka-Ping Yee in the Software Carpentry "Track" design competition. Note: Ping is not responsible for this project. The contact for this project is richard@users.sourceforge.net. Roundup manages a number of issues (with flexible properties such as "description", "priority", and so on) and provides the ability to: (a) submit new issues, (b) find and edit existing issues, and (c) discuss issues with other participants. The system will facilitate communication among the participants by managing discussions and notifying interested parties when issues are edited. One of the major design goals for Roundup that it be simple to get going. Roundup is therefore usable "out of the box" with any python 2.1+ installation. It doesn't even need to be "installed" to be operational, though a disutils-based install script is provided. It comes with two issue tracker templates (a classic bug/feature tracker and a minimal skeleton) and six database back-ends (anydbm, bsddb, bsddb3, sqlite, metakit and gadfly). -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (Darwin) iD8DBQE/F5+zrGisBEHG6TARAjNRAJ9dOCQDGaMc7QC3AJIMKtA7d+966wCfajEo UdKm1cxMkFINGB5KJ+KdrAU= =guFJ -----END PGP SIGNATURE----- From JoergBudi@gmx.de Fri Jul 18 20:18:18 2003 From: JoergBudi@gmx.de (Joerg Budischewski) Date: Fri, 18 Jul 2003 21:18:18 +0200 Subject: PyUNO in OpenOffice.org1.1rc Message-ID: Hi, I am happy to announce the availability of PyUNO in OpenOffice.org1.1rc. PyUNO is a generic bridge between python and OpenOffice.org's component model UNO (Universal Network Objects). The bridge enables python programmers to script a running OpenOffice.org -instance from the python executable via the UNO interprocess bridge. Additionally it allows to implement UNO components in python, which e.g. can be loaded directly into the OpenOffice.org process. OpenOffice.org1.1rc ships with a nearly complete prebuilt python-2.2.2 runtime. This is necessary, because python 2.2.x does not yet build a shared library by default and the python executable is linked vs. the system's stdc++ library, which in general is incompatible to OpenOffice's stdc++ library. In theory, PyUNO can also be used only with the core libraries of OpenOffice.org in order to use low-level-features like an interprocess bridge, C++ vs. Java vs. Python bridge, etc. See http://udk.openoffice.org/python/python-bridge.html for a more detailed description of pyuno. See http://www.openoffice.org/dev_docs/source/1.1rc for getting OOo's source and/or binaries. Please put any feedback to dev@udk.openoffice.org (see http://udk.openoffice.org and click on Mailing lists to subscribe). Bye, Joerg Budischewski From jeremy@alum.mit.edu Fri Jul 18 22:09:15 2003 From: jeremy@alum.mit.edu (Jeremy Hylton) Date: 18 Jul 2003 17:09:15 -0400 Subject: Python 2.3 release candidate 1 Message-ID: I am very happy to announce the release of Python 2.3 release candidate 1. The python-dev crew has fixed almost 50 bugs since the beta release last month. You can find the downloads at the usual place: http://www.python.org/2.3/ All major reported bugs have been fixed for this release. If we do not discover any major bugs in the next week, we will re-release this code as Python 2.3 final. We encourage potential users of Python 2.3 to try the release candidate with their programs and report any bugs as soon as possible. To report a new bug, use the SourceForge bug tracker http://sourceforge.net/bugs/?func=addbug&group_id=5470 This release of Python does not have any big changes, but it does have many small changes that improve the libraries, fix bugs, and increase stability. According to some simple benchmarks, Python 2.3 is 25-30% faster than Python 2.2.3. There are about 15 new or significantly revised standard library modules, and a few new builtins. Andrew Kuchling's What's New in Python 2.3 describes the most visible changes since Python 2.2 in more detail: http://www.python.org/doc/2.3c1/whatsnew/ Have fun! -- Jeremy Hylton From halley@dnspython.org Sat Jul 19 11:24:25 2003 From: halley@dnspython.org (Bob Halley) Date: 19 Jul 2003 03:24:25 -0700 Subject: dnspython 1.1.0b1 Message-ID: dnspython 1.1.0b1 has been released. New in this release: Message sections are now lists of RRsets, not lists of nodes. Many tests have been added to the test suite; dnspython 1.0.0 had 47 tests, 1.1.0b1 has 217. The improved testing uncovered a number of bugs, all of which have been fixed. The NameDict class provides a dictionary whose keys are DNS names. In addition to behaving like a normal Python dictionary, it also provides the get_deepest_match() method. If, for example, you had a dictionary containing the keys foo.com and com, then get_deepest_match() of the name a.b.foo.com would match the foo.com key. Zone and Node factories may be specified, allowing applications to subclass Zone or Node and yet still use the algorithms which build zones from master files or AXFR data. A new Renderer class for those applications which want finer control over the DNS wire format message generation process. Support for a "TooBig" exception if the size of wire format output exceeds a specified limit. dns.ipv6.inet_ntoa() now minimizes the text representation of IPv6 addresses in the usual way, e.g. "0000:0000:0000:0000:0000:0000:0000:0001" is minimized to "::1". (One caveat is that it still does not use the "dotted quad" syntax for embedded IPv4 addresses.) dns.query functions now take an optional address family parameter. This release fixes all known bugs from 1.0.0. From djc@object-craft.com.au Sun Jul 20 11:58:24 2003 From: djc@object-craft.com.au (Dave Cole) Date: 20 Jul 2003 20:58:24 +1000 Subject: Albatross 1.10 released Message-ID: OVERVIEW Albatross is a small toolkit for developing highly stateful web applications. The toolkit has been designed to take a lot of the pain out of constructing intranet applications although you can also use Albatross for deploying publicly accessed web applications. In slightly less than 3000 lines of Python (according to pycount) you get the following: * An extensible HTML templating system similar to DTML including tags for: - Conditional processing. - Macro definition and expansion. - Sequence iteration and pagination. - Tree browsing. - Lookup tables to translate Python values to arbitrary template text. * Application classes which offer the following features: - Optional server side or browser side sessions. - The ability to place Python code for each page in a dynamically loaded module, or to place all page processing code in a single mainline. * The ability to deploy applications either as CGI or via mod_python by changing less than 10 lines of code. The toolkit application functionality is defined by a collection of fine grained mixin classes. Nine different application types and five different execution contexts are prepackaged, you are able to define your own drop in replacements for any of the mixins to alter any aspect of the toolkit semantics. Application deployment is controlled by your choice of either cgi, FastCGI, mod_python, or BaseHTTPServer Request class. It should be possible to develop a Request class for Medusa or Twisted to allow applications to be deployed on those platforms with minimal changes. Albatross comes with over 160 pages of documentation. HTML, PDF and PostScript formatted documentation is available from the toolkit homepage. The toolkit homepage: http://www.object-craft.com.au/projects/albatross/ The Albatross mailing list subscription and archives: http://object-craft.com.au/cgi-bin/mailman/listinfo/albatross-users CHANGES SINCE 1.01 There have been many improvements and bug fixes since release 1.01. The following page describes the changes in detail. http://www.object-craft.com.au/projects/albatross/albatross/rel-1.10.html (There were no changes to 1.10pre4) -- http://www.object-craft.com.au From martin@v.loewis.de Mon Jul 21 07:23:38 2003 From: martin@v.loewis.de (Martin v. =?iso-8859-15?q?L=F6wis?=) Date: 21 Jul 2003 08:23:38 +0200 Subject: Fnorb 1.3 is available Message-ID: We are pleased to announce the availability of Fnorb 1.3. Fnorb is a pure-Python CORBA implementation. This release can be downloaded from http://sourceforge.net/project/showfiles.php?group_id=44742&release_id=172834 This release adds support for CORBA 2.1 and its type extensions, and for corbaloc/corbaname object references. It also adds a pure-python preprocessor and a test suite. Please report any problems with this release to sf.net/projects/fnorb. Enjoy, Martin From rufus@o-town.de Mon Jul 21 20:08:40 2003 From: rufus@o-town.de (Thomas Koester) Date: 21 Jul 2003 19:08:40 GMT Subject: ANN: SciParam 1.0.0 Message-ID: SciParam 1.0.0 is a Python package to easily add additional quality control for entering scientific parameters in wxPython-based user interfaces. See http://great-er.intevation.org/sciparam/ for download, documentation and screenshots. License ======= Copyright (C) 2002, 2003 Intevation GmbH Georgstrasse 4 D-49074 Osnabrueck Germany Author: Thomas Koester After my wedding on July 30th, 2003: Thomas Arendsen Hein SciParam is released under the GNU General Public License. -- Email: rufus@o-town.de (at work: tkoester@intevation.de) http://rufus.o-town.de/ From tso@users.sourceforge.net Tue Jul 22 03:16:49 2003 From: tso@users.sourceforge.net (T. Ogawa) Date: 21 Jul 2003 19:16:49 -0700 Subject: pynum2word-0.1 released Message-ID: The first public release of pynum2word is now available. pynum2word is a suite of Python Modules that translate numbers into words. Currently the languages supported are English (10**12 == "one trillion" - max of 10**304-1), old UK numbers (10**18 == "one trillion", max 10**606-1), German, French, and Spanish. The design is clean and extensible, so that other languages should be simple to add. The modules handle positive and negative cardinal numbers ("minus four hundred and ten"), floating point numbers with precision specified ("three point one four"), ordinals ("six billionth"), and ordnums ("101st") The project page is: http://sourceforge.net/projects/pynum2word/ The package is available from: http://sourceforge.net/project/showfiles.php?group_id=85362 Assistance (particularly from those fluent in languages other than English) gratefully accepted Ta, Ro. From user@domain.invalid Tue Jul 22 09:42:37 2003 From: user@domain.invalid (user@domain.invalid) Date: Tue, 22 Jul 2003 01:42:37 -0700 Subject: [ANN] epydoc 2.0 released Message-ID: Epydoc is a tool for generating API documentation for Python modules, based on their docstrings. For some examples of the documentation generated by epydoc, see: - The API documentation for epydoc. (HTML) - The API documentation for epydoc. (PDF) - The API documentation for the Python 2.2 standard library. - The API documentation for NLTK, the natural langauge toolkit. - The API documentation for Docutils Epydoc currently understands four markup languages: - Epytext, a lightweight markup language with support for basic formatting constructs. - ReStructuredText, an "easy-to-read, what-you-see-is-what-you-get plaintext markup syntax." - Javadoc, the standard markup language for documenting java source. - Plaintext. New features added since 1.1 include: Improvements to Docstring processing ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Support for ReStructuredText docstrings. - Support for Javadoc docstrings. - Many new documentation fields for docstrings. - More robust crossreference link resolving. Improvements to Output Generation ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - New output formats: LaTeX, DVI, PostScript, and PDF. - Three new formats for displaying inherited methods and variables: listed, grouped, and included. Improvements to Inspection ~~~~~~~~~~~~~~~~~~~~~~~~~~ - Support for new Python 2.2+ objects, including class methods, static methods, properties, and metaclasses. - Automatic detection of imported variables. - Documentation inheritance for inherited methods and variables. Improvements to Efficiency ~~~~~~~~~~~~~~~~~~~~~~~~~~ - Epydoc 2.0 runs 50%-200% faster than epydoc 1.1. (e.g., it runs 2.6 times as fast when documenting the Python standard library). A complete list of new features and the change log are available at: From edreamleo@charter.net Tue Jul 22 15:25:40 2003 From: edreamleo@charter.net (Edward K. Ream) Date: Tue, 22 Jul 2003 09:25:40 -0500 Subject: ANN: Leo 3.12 outlining editor Message-ID: leo.py 3.12 July 17, 2003 leo.py 3.12 is now available at: http://sourceforge.net/projects/leo/ This version fixes many bugs and adds several major new features. The first announcement of 3.12 appeared a few days ago on SourceForge. Since then, a few minor bugs have been found. In particular, when installing Leo on Linux, please remove previous installations of Leo before running the install script. This will ensure that the new subdirectories of the main Leo directory are created properly. Window sizes are now in pixels rather than grid units, so you must resize existing outlines (.leo files) when opening them for the first time using this version of Leo. Don't panic! Highlights of this version: * Plugged a huge memory leak. * Fixed a major bug involving undo. * Added Icon & Status areas to Leo window for use by plugins. * Important new plugins: - The file leoPlugins.leo now contains all plugins. - add_directives.py allows plugins to define new directives. - color_markup.py supports wiki-styled markup. - mod_spelling.py checks spelling (requires aspell to be installed). - nav_buttons.py creates browser-style navigation plugins in the icon area. - plugins_menu.py creates a Plugins menu items for all loaded plugins. - scripts_menu.py creates a Scripts menu for all scripts in scripts folder. - spell - trace_gc traces all changes to memory at idle time. * Other enhancements: - Redesigned the Find panel. Non-functional options are dimmed. - Added @wrap and @nowrap directives. - Added Write Dirty @file Nodes command. - Added several new "stub hooks". - Hyperlinks are now enabled by default. - Leo now loads plugins in alphabetical order. - Leo now remembers the size and location of Leo windows. - Undo now restores the insert point or the selection range after most commands. - Added apply button to Font panel. - Improved the reporting of characters that do not exist in the present encoding. * The usual assortment of bug fixes and minor improvements. - There are no known bugs in this version of Leo. Quote of the month: ------------------- "Thanks for such a great mind-opening program!" -- Eduardo Dominguez What is Leo? ------------ - A programmer's editor, an outlining editor and a flexible browser. - A literate programming tool, compatible with noweb and CWEB. - A data organizer and project manager. Leo provides multiple views of projects within a single outline. - Fully scriptable using Python. Leo saves its files in XML format. - Portable. leo.py is 100% pure Python. - Open Software, distributed under the Python License. leo.py requires Python 2.1 or above and tcl/tk 8.3 or above. leo.py works on Linux, Windows and MacOs X Jaguar. Links: ------ Leo: http://webpages.charter.net/edreamleo/front.html Home: http://sourceforge.net/projects/leo/ Download: http://sourceforge.net/project/showfiles.php?group_id=3458 CVS: http://sourceforge.net/cvs/?group_id=3458 Wiki: http://leo.hd1.org/ Edward K. Ream -------------------------------------------------------------------- Edward K. Ream email: edreamleo@charter.net Leo: Literate Editor with Outlines Leo: http://webpages.charter.net/edreamleo/front.html -------------------------------------------------------------------- From anthony@computronix.com Wed Jul 23 18:27:27 2003 From: anthony@computronix.com (Anthony Tuininga) Date: 23 Jul 2003 11:27:27 -0600 Subject: cx_Freeze 2.1 Message-ID: What is cx_Freeze? cx_Freeze is a set of utilities for freezing Python scripts into executables using many of the techniques found in Thomas Heller's py2exe, Gordon McMillan's Installer and the Freeze utility that ships with Python itself. Where do I get it? http://starship.python.net/crew/atuining http://www.computronix.com/utilities.shtml (it may be a few days before the second site is updated) What's new? 1) Remove dependency on Python 2.2. Thanks to Paul Moore for not only pointing it out but providing patches. 2) Set up the list of frozen modules in advance, rather than doing it after Python is initialized so that implicit imports done by Python can be satisfied. The bug in Python 2.3 that demonstrated this issue has been fixed in the first release candidate. Thanks to Thomas Heller for pointing out the obvious in this instance! 3) Added additional base executable (ConsoleSetLibPath) to support setting the LD_LIBRARY_PATH variable on Unix platforms and restarting the executable to put the new setting into effect. This is primarily of use in distributing wxPython applications on Unix where the shared library has an embedded RPATH value which can cause problems. 4) Small improvements of documentation based on feedback from several people. 5) Print information about the files written or copied during the freezing process. 6) Do not copy extensions when freezing if the path is being overridden since it is expected that a full Python installation is available to the target users of the frozen binary. 7) Provide meaningful error message when the wxPython library cannot be found during the freezing process. -- Anthony Tuininga anthony@computronix.com Computronix Distinctive Software. Real People. Suite 200, 10216 - 124 Street NW Edmonton, AB, Canada T5N 4A3 Phone: (780) 454-3700 Fax: (780) 454-3838 http://www.computronix.com From xavier@plebia.org Tue Jul 22 16:39:41 2003 From: xavier@plebia.org (Xavier Antoviaque) Date: Tue, 22 Jul 2003 17:39:41 +0200 Subject: [ANN] WebTK v0.alpha3 Message-ID: ================= WebTK v0.alpha3 ================= Find a new alpha-release of WebTK: http://www.webtk.org/ It includes a brand new data model (featuring data events!), a Forum application and a refactored module architecture. The examples below have been updated to reflect changes. What is WebTK ? =============== WebTK is a Python framework, using Twisted as its underlying Web server, and allowing webmasters to develop websites like any classic GUI software. It is object-oriented, providing and handling event-based widgets. It also does not need any database to work, as it uses objects persitance, with the help of PyPerSyst. Disclaimer ========== Please note that the alpha series are mainly for developers that want to have a look at WebTK internals - there are plenty of bugs, dirty tricks and the installation is not easy. This is NOT for production websites. URLs ==== You can find more about WebTK here : Homepage : http://www.webtk.org/ Download : http://www.webtk.org/download/ Web CVS : http://cvs.plebia.org/index.py/?cvsroot=webtk Current API : http://www.webtk.org/doc/current/api/ Changelog : http://www.webtk.org/Changelog Examples ======== To give you some idea of what WebTK is, here is some small sample websites, working with the alpha3 version. It shows an image whose content change each time you click on it: # Modules ################################################################# import sys from webtk.core.system import Session from webtk.widget.window import RootWindow from webtk.widget.display import Pixmap # Classes ################################################################# class MySession(Session): def init(self): window = RootWindow(wtkTitle='WebTK Test') self.wtkAddRootObject(window) image = PlebiaPlonePixmap() window.wtkAppendChild(image) class PlebiaPlonePixmap(Pixmap): def init(self): self.ploneURI = 'http://plone.org/logo.jpg' self.plebiaURI = 'http://www.plebia.org/images/logo.png' self.wtkURI = self.plebiaURI self.wtkAddEvent('click', self.onClick) def onClick(self): if self.wtkURI == self.plebiaURI: self.wtkURI = self.ploneURI else: self.wtkURI = self.plebiaURI Here is a slighlty more elaborated one, which uses a Poll widget to ask the visitor an important question ! # Modules ################################################################# import sys from webtk.core.system import Session from webtk.widget.window import RootWindow from webtk.widget.app.poll import Poll, PollResult from webtk.data.base import Data # Classes ################################################################# class MySession(Session): def init(self): # Poll window = RootWindow(wtkTitle='WebTK Test Poll') self.wtkAddRootObject(window) pollData = self.wtkSystem.wtkPoolGet('poll') if pollData is None: pollData = self.wtkSystem.wtkPoolRegister('poll', Data) question = Data() question.wtkTitle = 'Do you like WebTK ?' for ans in ['Yes, sure.', 'Mmmh, I do not know.', 'Bah!']: answer = Data() answer.wtkTitle = ans answer.wtkNbVotes = 0 question.wtkAppendChild(answer) pollData.wtkAppendChild(question) question = Data() question.wtkTitle = 'Will you use it ?' for ans in ['For all my future websites!', 'Perhaps...', 'Never!']: answer = Data() answer.wtkTitle = ans answer.wtkNbVotes = 0 question.wtkAppendChild(answer) pollData.wtkAppendChild(question) pollResult = PollResult(wtkPollData=pollData) pollResult.wtkIsVisible = 0 poll = TestPoll(wtkPollData=pollData, pollResult=pollResult) window.wtkAppendChild(poll) window.wtkAppendChild(pollResult) class TestPoll(Poll): def init(self, pollResult): self.pollResult = pollResult self.wtkAddEvent('onSelectAnswer', self.wtkCallbackOnSelectAnswer) def wtkCallbackOnSelectAnswer(self): self.pollResult.wtkIsVisible = 1 -- Xavier. From edreamleo@charter.net Wed Jul 23 16:34:48 2003 From: edreamleo@charter.net (Edward K. Ream) Date: Wed, 23 Jul 2003 10:34:48 -0500 Subject: ANN: Leo 3.12 outlining editor Message-ID: leo.py 3.12 is now available at: http://sourceforge.net/projects/leo/ This version fixes many bugs and adds several major new features. The first announcement of 3.12 appeared a few days ago on SourceForge. Since then, a few minor bugs have been found. In particular, if would be best, when installing Leo on Linux, to remove previous installations of Leo before running the install script. This will ensure that the new subdirectories of the main Leo directory are created properly. Window sizes are now in pixels rather than grid units, so you must resize existing outlines (.leo files) when opening them for the first time using this version of Leo. Don't panic! Highlights of this version: * Plugged a huge memory leak. * Fixed a major bug involving undo. * Added Icon & Status areas to Leo window for use by plugins. * Important new plugins: - The file leoPlugins.leo now contains all plugins. - add_directives.py allows plugins to define new directives. - color_markup.py supports wiki-styled markup. - mod_spelling.py checks spelling (requires aspell to be installed). - nav_buttons.py creates browser-style navigation plugins in the icon area. - plugins_menu.py creates a Plugins menu items for all loaded plugins. - scripts_menu.py creates a Scripts menu for all scripts in scripts folder. - spell - trace_gc traces all changes to memory at idle time. * Other enhancements: - Redesigned the Find panel. Non-functional options are dimmed. - Added @wrap and @nowrap directives. - Added Write Dirty @file Nodes command. - Added several new "stub hooks". - Hyperlinks are now enabled by default. - Leo now loads plugins in alphabetical order. - Leo now remembers the size and location of Leo windows. - Undo now restores the insert point or the selection range after most commands. - Added apply button to Font panel. - Improved the reporting of characters that do not exist in the present encoding. * The usual assortment of bug fixes and minor improvements. - There are no known bugs in this version of Leo. Quote of the month: ------------------- "Thanks for such a great mind-opening program!" -- Eduardo Dominguez What is Leo? ------------ - A programmer's editor, an outlining editor and a flexible browser. - A literate programming tool, compatible with noweb and CWEB. - A data organizer and project manager. Leo provides multiple views of projects within a single outline. - Fully scriptable using Python. Leo saves its files in XML format. - Portable. leo.py is 100% pure Python. - Open Software, distributed under the Python License. leo.py requires Python 2.1 or above and tcl/tk 8.3 or above. leo.py works on Linux, Windows and MacOs X Jaguar. Links: ------ Leo: http://webpages.charter.net/edreamleo/front.html Home: http://sourceforge.net/projects/leo/ Download: http://sourceforge.net/project/showfiles.php?group_id=3458 CVS: http://sourceforge.net/cvs/?group_id=3458 Wiki: http://leo.hd1.org/ Edward K. Ream -------------------------------------------------------------------- Edward K. Ream email: edreamleo@charter.net Leo: Literate Editor with Outlines Leo: http://webpages.charter.net/edreamleo/front.html -------------------------------------------------------------------- From jmiller@stsci.edu Wed Jul 23 21:17:23 2003 From: jmiller@stsci.edu (Todd Miller) Date: 23 Jul 2003 16:17:23 -0400 Subject: ANN: numarray-0.6 Message-ID: Numarray is an array processing package designed to efficiently manipulate large multi-dimensional arrays. Numarray is modelled after Numeric and features c-code generated from python template scripts, the capacity to operate directly on arrays in files, and improved type promotions. I. ENHANCEMENTS 1. Repackaging numarray has been modified from a collection of Python modules into a Python package. See Doc/Repackaging in the source distribution for more details. 2. Median Filter Function See numarray.image.combine.median for a function which computes the median pixels in a stack of images. 3. Thread Safety Work Modifications to ufunc caching and IEEE error handling enable numarray to work in multi-threaded programs. This is barebones support, not thread awareness. II. BUGS FIXED 733534 Broadcasts of non-array sequences fails 733535 NA_typeNoToTypeObject sometimes fails 736674 PyArray_ContiguousFromObject() fails for some scalars 750320 CharArray.raw() is broken 750326 building RPMS fails 754836 Missing Src/_convmodule.c during setup 756050 chararray multi-d copy fails for recarray 772519 memory.new_memory() 64-bit scanning bug III. CAUTIONS 1. Due to the distribution repackaging, numarray-0.6 will not install correctly on top of an existing numarray installation. Before installing numarray-0.6 remove your old version of numarray. IV. REQUIREMENTS numarray-0.6 requires Python 2.2.2 or greater. V. AUTHORS Numarray was written by Perry Greenfield, Rick White, Todd Miller, JC Hsu, Paul Barrett, Phil Hodge at the Space Telescope Science Institute. Thanks go to Jochen Kupper of the University of North Carolina for his work on Numarray and for porting the Numarray manual to TeX format. Thanks also to Edward C. Jones, Francesc Alted, Paul Dubois, Eric Jones, Travis Oliphant, Pearu Peterson, Konrad Hinsen, and everyone who has contributed with comments and feedback. VI. LICENSE Numarray is made available under a BSD-style License. See LICENSE.txt in the source distribution for details. VII. WEB PAGE

numarray 0.6 - array processing extension supporting records and memory mapping. (18-07-03) From ilya Thu Jul 24 13:53:47 2003 From: ilya (ilya) Date: Thu, 24 Jul 2003 18:53:47 +0600 Subject: ANNOUNCE: xmlSiteMakerPy 0.2 Message-ID: xmlSiteMakerPy are lightweight Python based xml-xslt framework for static site generation. use 4Suite for xslt. available at: http://xmlsitemakerpy.by.ru You find there some UML diagrams of architecture, examples and download. Ilya From theller@python.net Thu Jul 24 20:55:01 2003 From: theller@python.net (Thomas Heller) Date: Thu, 24 Jul 2003 21:55:01 +0200 Subject: [ANN] py2exe 0.4.1 released Message-ID: py2exe is a distutils extension to convert python scripts into windows exe-files (plus a few dlls), able to run on computers without requiring a python installation. New in release 0.4.1: Integrated support for dll and exe COM servers, contributed by Mark Hammond. Thanks! Much better modulefinder module from Python 2.3 included. The build process should now give a lot less warnings and better results. py2exe now is compatible with PyXML, for example. The support of Python 2.3 is still preliminary, and has to be improved. I intend to use the new zipimport feature instead of good old imputil. Thanks to Just van Rossum for his work on both the zipimport and the improved modulefinder. Download from the usual location: http://starship.python.net/crew/theller/py2exe/ Enjoy, Thomas From forodejazz@yahoo.es Thu Jul 24 22:19:57 2003 From: forodejazz@yahoo.es (=?ISO-8859-1?Q?David_Asorey_=C1lvarez?=) Date: 24 Jul 2003 14:19:57 -0700 Subject: [ANN] Pymprovisator 0.1 released Message-ID: Hi all! I've released the first version of my program Pymprovisator. Pymprovisator is a program that emulates the program Band in a Box from PG Music. You can think in it like the electronic version of the books+CD from Jamey Aebersold. You set the basic parameters in a jazz song (title, style, key, chords sequence,...) and the program will generate a Midi file with the correct accompainment. Pymprovisator is written in Python and Tkinter, and needs some auxiliary programs: abc2midi (http://abc.sourceforge.net/abcMIDI/) and a MIDI player (on Windows boxes, Windows Media Player is a good choice; on other systems, you can use playmidi, timidity, kmid or another program). Pymprovisator runs on several operating systems: Windows, Linux, FreeBSD, BeOS, MacOS and many other O.S. The program is available at http://www.angelfire.com/jazz/forodejazz/ Happy playing! -- David Asorey Álvarez Mail: forodejazz (at) yahoo (dot) es Web (spanish): http://www.geocities.com/forodejazz/programacion/ From forodejazz@yahoo.es Thu Jul 24 22:19:55 2003 From: forodejazz@yahoo.es (=?ISO-8859-1?Q?David_Asorey_=C1lvarez?=) Date: 24 Jul 2003 14:19:55 -0700 Subject: [ANN] Pymprovisator 0.1 released Message-ID: Hi all! I've released the first version of my program Pymprovisator. Pymprovisator is a program that emulates the program Band in a Box from PG Music. You can think in it like the electronic version of the books+CD from Jamey Aebersold. You set the basic parameters in a jazz song (title, style, key, chords sequence,...) and the program will generate a Midi file with the correct accompainment. Pymprovisator is written in Python and Tkinter, and needs some auxiliary programs: abc2midi (http://abc.sourceforge.net/abcMIDI/) and a MIDI player (on Windows boxes, Windows Media Player is a good choice; on other systems, you can use playmidi, timidity, kmid or another program). Pymprovisator runs on several operating systems: Windows, Linux, FreeBSD, BeOS, MacOS and many other O.S. The program is available at http://www.angelfire.com/jazz/forodejazz/ Happy playing! -- David Asorey Álvarez Mail: forodejazz (at) yahoo (dot) es Web (spanish): http://www.geocities.com/forodejazz/programacion/ From bart@decrem.com Fri Jul 25 01:50:39 2003 From: bart@decrem.com (Bart Decrem) Date: Thu, 24 Jul 2003 17:50:39 -0700 Subject: open source applicatons foundation is hiring python hackers Message-ID: --Apple-Mail-8--817339323 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=WINDOWS-1252; format=flowed Hi folks, During boom years, this message would definitely be spam, but in those=20= lean years, I'm hoping that it's not quite a mortal sin to post this=20 announcement on the Python list, especially since Chandler is entirely=20= build in Python. I'm helping with recruiting for the open source applications foundation=20= in San Francisco. Mitch Kapor, who runs OSAF, is (m)itching to speed=20 up development on Chandler, an innovative open source PIM project, but=20= the team is chronically understaffed. I think Chandler has great potential. Rather than try to explain it=20 myself, here's how Mitch explains it:=20 http://www.osafoundation.org/Chandler_Compelling_Vision.htm. In addition to working on a very interesting open source end-user=20 application, there's a couple of other really compelling things about=20 working at OSAF: - The team: It's an amazing group of people: Mitch Kapor, Andy, Michael=20= Toy (who pushed a bunch of Netscape releases out the door), John=20 Anderson (who wrote WriteNow), Mitchell Baker (of Mozilla fame). See=20 the people page at http://www.osafoundation.org/people.htm - A hub for interesting open source initiatives. OSAF is helping the=20 Mozilla Foundation get off the ground and we're working on several=20 other significant open source initiatives - An incredible office: Really cool digs, south of Market, dog friendly - Great, relax work environment, no 80 hour weeks. Below is an overview of what kind of people we're looking to hire. =20 Please send me mail (bart@decrem.com) if you're interested or know=20 people I should be talking to. Bart Decrem OSAF Hiring Wishlist OSAF is looking for people of all shapes and sizes. Obviously we would=20= like to hire the best people we can find. All people we are looking=20 for would: =95 Live in San Francisco or be willing to commute to San Francisco = three=20 days a week =95 Have significant experience with object oriented languages =95 Be able to understand and work with large bodies of code they did = not=20 write without getting too cynical. =95 Be fun to hang out with. It would be nice, but not necessary for people to also have: =95 Significant experience working with a functional language =95 Python experience =95 Strong contribution to other open source projects As our plans for the future are still sketchy, it is impossible to=20 write complete job descriptions for the people we want to hire, we=20 would be happy to hire people with combinations of these skills. User Interface Implementation. Someone needs to turn the pretty=20 drawings into something which works spectacularly well. This person=20 would ideally have worked on well though of end-user software on more=20 than one platform and be proud to show off her or his past work. Network Internals Architect =96 Inside Chandler will be a component=20 which manages asynchronous data streams from many different sources and=20= provides the plumbing for Chandler. We need someone who can design and=20= implement this. E-Mail data wizard. We will need someone to evaluate exiting code for=20= communicating with e-mail servers and parsing e-mail messsages, make a=20= fix/build decision, and then hook it to the networking and data=20 repository frameworks. wxPython platform wizard. Someone who is familiar with with win32, gtk=20= and mac toolbox who can help us polish wxwindows to be a modern ui=20 platform. Toolkit implementor =96 Someone who has written a fair share of UI=20 toolkits in their life and would be interested in helping us extend=20 wWindows into a fairly high-level toolkit for data based applications. Indexing expert. Chandler will require full text indexes for=20 constantly changing data, we need someone to show us the way. We will need rich text editing and HTML display in wxWindows. Someone=20= familiar with parts of this landscape who could take us where we need=20 to go would be excellent. Gecko/Konqueror, CSS, XBL, XSL, yadda yadda=20= yadda. qa coordinator =96 eventually there will be some community based qa=20 effort with an osaf contact managing the work. this person needs to be=20= able to evaluate the quality of tests and to be fliexible in choosing=20 approaches to testing and verification. It is unlikely that someone=20 from a QA organization will be able to do this job. tech writer =96 it would be good to have someone who wrote well, it = would=20 be nice if that person also had some other skill on this list Another development manager. We imagine the org chart will eventually=20= require the hirhing of a second manager. This person needs to be=20 organized enough to provide structure, but not so organized that they=20 provide calicification.= --Apple-Mail-8--817339323 Content-Transfer-Encoding: quoted-printable Content-Type: text/enriched; charset=WINDOWS-1252 Hi folks, During boom years, this message would definitely be spam, but in those lean years, I'm hoping that it's not quite a mortal sin to post this announcement on the Python list, especially since Chandler is entirely build in Python. ArialI'm helping with recruiting for the open source applications foundation in San Francisco. Mitch Kapor, who runs OSAF, is (m)itching to speed up development on Chandler, an innovative open source PIM project, but the team is chronically understaffed. =20 I think Chandler has great potential. Rather than try to explain it myself, here's how Mitch explains it: = 1996,1996,FFFChttp://www.osafoundation.or= g/Chandler_Compelling_Vision.htm. In addition to working on a very interesting open source end-user application, there's a couple of other really compelling things about working at OSAF: - The team: It's an amazing group of people: Mitch Kapor, Andy, Michael Toy (who pushed a bunch of Netscape releases out the door), John Anderson (who wrote WriteNow), Mitchell Baker (of Mozilla fame).=20 See the people page at = 1996,1996,FFFChttp://www.osafoundation.or= g/people.htm - A hub for interesting open source initiatives. OSAF is helping the Mozilla Foundation get off the ground and we're working on several other significant open source initiatives - An incredible office: Really cool digs, south of Market, dog friendly - Great, relax work environment, no 80 hour weeks. Below is an overview of what kind of people we're looking to hire.=20 Please send me mail (bart@decrem.com) if you're interested or know people I should be talking to. Bart Decrem Times = TimesOSAF Hiring Wishlist = T= imes OSAF is looking for people of all shapes and sizes. Obviously we would like to hire the best people we can find. All people we are looking for would: =95 Live in San Francisco or be willing to commute to San Francisco three days a week =95 Have significant experience with object oriented languages =95 Be able to understand and work with large bodies of code they did not write without getting too cynical. =95 Be fun to hang out with. It would be nice, but not necessary for people to also have: =95 Significant experience working with a functional language =95 Python experience =95 Strong contribution to other open source projects As our plans for the future are still sketchy, it is impossible to write complete job descriptions for the people we want to hire, we would be happy to hire people with combinations of these skills. User Interface Implementation. Someone needs to turn the pretty drawings into something which works spectacularly well. This person would ideally have worked on well though of end-user software on more than one platform and be proud to show off her or his past work. Network Internals Architect =96 Inside Chandler will be a component which manages asynchronous data streams from many different sources and provides the plumbing for Chandler. We need someone who can design and implement this.=20 E-Mail data wizard. We will need someone to evaluate exiting code for communicating with e-mail servers and parsing e-mail messsages, make a fix/build decision, and then hook it to the networking and data repository frameworks. wxPython platform wizard. Someone who is familiar with with win32, gtk and mac toolbox who can help us polish wxwindows to be a modern ui platform. Toolkit implementor =96 Someone who has written a fair share of UI toolkits in their life and would be interested in helping us extend wWindows into a fairly high-level toolkit for data based applications. Indexing expert. Chandler will require full text indexes for constantly changing data, we need someone to show us the way. We will need rich text editing and HTML display in wxWindows. =20 Someone familiar with parts of this landscape who could take us where we need to go would be excellent. Gecko/Konqueror, CSS, XBL, XSL, yadda yadda yadda. qa coordinator =96 eventually there will be some community based qa effort with an osaf contact managing the work. this person needs to be able to evaluate the quality of tests and to be fliexible in choosing approaches to testing and verification. It is unlikely that someone from a QA organization will be able to do this job. tech writer =96 it would be good to have someone who wrote well, it would be nice if that person also had some other skill on this list Another development manager. We imagine the org chart will eventually require the hirhing of a second manager. This person needs to be organized enough to provide structure, but not so organized that they provide calicification.= --Apple-Mail-8--817339323-- From travis@enthought.com Fri Jul 25 02:53:09 2003 From: travis@enthought.com (Travis N. Vaught) Date: Thu, 24 Jul 2003 20:53:09 -0500 Subject: [ANN] SciPy 03 Workshop - Scientific Computing with Python Message-ID: ------------------ SciPy '03 Workshop ------------------ The SciPy '03 Workshop on Scientific Computing with Python is being held at Cal Tech again this year. Online registration is now available. After last year's success, we expect another great turnout with compelling presentations/tutorials. It is a two day workshop held September 11-12 in Pasadena, CA. More information may be found at: http://www.scipy.org/site_content/scipy03 Online registration is available at: https://www.enthought.com/scipy03 Please register early. Last minute registrants will have to suffer the indignity of a handwritten name tag. It currently looks like breakfast (bagels, etc.), lunch and supper will be provided Thursday, and breakfast and lunch will be provided Friday. Discussion about the workshop may be directed to the SciPy-user mailing list (http://www.scipy.org/site_content/MailList) to which you may post messages at scipy-user@scipy.org. Presenters: If you would like to present at the workshop, there are two formats: - Lightning Talks: Short (5-15 minute) presentations of a particular scientific problem solved with Python. - Presentations: Traditional presentation format ~45 minute talks. If you would like to present, contact Eric Jones at eric@enthought.com. For any other questions, please feel free to call or email Travis Vaught: travis@enthought.com, (512)536-1057. You can call the same number to register via phone (Business Hours CST). Links: SciPy.org community site: http://www.scipy.org Workshop Home: http://www.scipy.org/site_content/scipy03 Summary of last year's workshop: http://www.scipy.org/site_content/scipy02/scipy02summary.htm From barry@python.org Fri Jul 25 04:01:05 2003 From: barry@python.org (Barry Warsaw) Date: 24 Jul 2003 23:01:05 -0400 Subject: RELEASED Python 2.3c2 Message-ID: Python 2.3c2 is the second and last release candidate for Python 2.3. There have been a bunch of bug fixes and memory leak plugs since the first release candidate, but no new features. As described in PEP 283, Python 2.3 final will be released before the end of July 2003. We are planning for Tuesday 29-Jul-2003 if everything looks good. We highly encourage everyone to rigorously test this release candidate. Only critical bug fixes will be allowed from here to the final release, but we want this release to be as stable as possible. Highlights since rc1 include: - It is now possible to import from zipfiles containing additional data bytes before the zip compatible archive. Zipfiles containing a comment at the end are still unsupported. - Fixed leaks in pyexpat and locale, and a long standing bug in the parser module. - The MacOSX build is now built with -mno-fused-madd to fix test_coercion on Panther (OSX 10.3). For more highlights, see http://www.python.org/2.3/highlights.html Other new stuff since Python 2.2: - Many new and improved library modules, e.g. sets, heapq, datetime, textwrap, optparse, logging, bsddb, bz2, tarfile, ossaudiodev, and a new random number generator based on the highly acclaimed Mersenne Twister algorithm (with a period of 2**19937-1!). - New builtin enumerate(): an iterator yielding (index, item) pairs. - Extended slices, e.g. "hello"[::-1] returns "olleh". - Universal newlines mode for reading files (converts \r, \n and \r\n all into \n). - Source code encoding declarations. (PEP 263) - Import from zip files. (PEP 273 and PEP 302) - FutureWarning issued for "unsigned" operations on ints. (PEP 237) - Faster list.sort() is now stable. - Unicode filenames on Windows. - Karatsuba long multiplication (running time O(N**1.58) instead of O(N**2)). To report problems, use the SourceForge bug tracker: http://sourceforge.net/tracker/?group_id=5470&atid=105470 brought-to-you-by-the-letter-'D'-for-drifty-ly y'rs, -Barry From bdeck@lycos.co.uk Fri Jul 25 11:50:44 2003 From: bdeck@lycos.co.uk (deckerben) Date: Fri, 25 Jul 2003 12:50:44 +0200 Subject: ANNOUNCE: PyEdifact alpha with ENGDAT Message-ID: PyEdifact is a XML-customizable edifact document parser. **************************************************************************** ******* ANNOUNCE: A pre-release alpha of PyEdifact is available at: http://members.lycos.co.uk/bdeck/programming.htm Included is a sample ENGDAT template. Regards, Ben From bdeck@lycos.co.uk Fri Jul 25 11:33:34 2003 From: bdeck@lycos.co.uk (bdeck) Date: Fri, 25 Jul 2003 12:33:34 +0200 Subject: Announce: PythonD 2.2.1 Release 2.0 development platform for DOS Message-ID: Python is an interpreted, interactive, object-oriented programming language. PythonD is a 32-bit, multi-threaded, networking- and OpenGL-enabled Python interpreter for DOS and Windows. **************************************************************************** ******* ANNOUNCEMENT: PythonD 2.2.1 Release 2.0 is now available for public download at: http://members.lycos.co.uk Many additional modules are also available for download including: Reportlab 1.15 PDF library PyHL HDF5 file format library Gnome LibXML2 and LibXSLT modules (based on LibXML2 2.5.8) PyXML 0.82 PyNumeric 23.0 Previous versions of these PythonD modules are no longer usable, as the DXE file format has changed. **************************************************************************** ******* ENHANCEMENTS and FIXES over last (1.13) Release: PythonD now passes more that 145 tests (155 in verbose mode) Threading. PythonD attempts the first multi-threaded posix scripting engine for DOS. Thanks to R. Dawe for his pth threads patch. Added PyOpenGL using Mesa 5. Some demos provided. Added Python Imaging Library Added dbmmodule Upgraded socketmodule with new Wattcp-32 2.2.4 release. New DXE format & Many additional C and Assembly tokens added to export list. re-compiled with newest DJGPP 2.0.4 alpha libraries. DJGPP's 'FNCASE' variable is automaticaly set to 'y' during PythonD sessions. This may be turned off by commenting out the appropriate lines from site.py. This is currently only activated during NT sessions. 'commands' module hacked for DOS/DJGPP. Requires 'bash.exe'. copy_absolute() in getpath.c has been fixed for DOS-DJGPP... consequently, 'sys.executable' now returns the correct value. *limited* library support for 8.3 OSes (pure DOS without LFN driver). PythonD standard library found in: os.path.join(prefix, "lib", "python" + sys.version[:1]) the standard declaration uses 'sys.version[:3]' This is for dos 8.3 compatibility (one library for both LFN and non-LFN!). posixpath.abspath() fixed for DOS/DJGPP. site.py loads error-free on non-djgpp systems. Networking exceptions have been added to the list kept in the errno module. Socketmodule now initializes upon module import. Requires packet driver. Somewhat better selectmodule build. Added select.poll() (from Wattcp). Note that select.poll() is largely untested. Other small fixes I want to thank those whose work greatly helped to make this release possible, including: Daniel Borca Richard Dawe Charles Sandmann Regards, Ben Decker From Jack.Jansen@cwi.nl Fri Jul 25 12:30:11 2003 From: Jack.Jansen@cwi.nl (Jack Jansen) Date: Fri, 25 Jul 2003 13:30:11 +0200 Subject: Binary installer for MacPython-2.3rc2 available Message-ID: A binary installer for MacPython-2.3rc2 for Mac OS X 10.2 is available at . This will hopefully go out as 2.3 final some time next week. Please report any problems, preferably to pythonmac-sig@python.org, or otherwise directly to me. -- Jack Jansen, , http://www.cwi.nl/~jack If I can't dance I don't want to be part of your revolution -- Emma Goldman From bdeck@lycos.co.uk Fri Jul 25 15:54:56 2003 From: bdeck@lycos.co.uk (bdeck) Date: Fri, 25 Jul 2003 16:54:56 +0200 Subject: Announce: PythonD 2.2.1 Release 2.0 development platform for DOS Message-ID: The correct link is: http://members.lycos.co.uk/bdeck/pythond.htm Sorry "bdeck" wrote in message news:... > Python is an interpreted, interactive, object-oriented programming language. > PythonD is a 32-bit, multi-threaded, networking- and OpenGL-enabled > Python interpreter for DOS and Windows. > > **************************************************************************** > ******* > ANNOUNCEMENT: > PythonD 2.2.1 Release 2.0 is now available for public download at: > http://members.lycos.co.uk > > Many additional modules are also available for download including: > > Reportlab 1.15 PDF library > PyHL HDF5 file format library > Gnome LibXML2 and LibXSLT modules (based on LibXML2 2.5.8) > PyXML 0.82 > PyNumeric 23.0 > > Previous versions of these PythonD modules are no longer usable, > as the DXE file format has changed. > > > > **************************************************************************** > ******* > ENHANCEMENTS and FIXES over last (1.13) Release: > > PythonD now passes more that 145 tests (155 in verbose mode) > > Threading. PythonD attempts the first multi-threaded posix scripting > engine for DOS. Thanks to R. Dawe for his pth threads patch. > > Added PyOpenGL using Mesa 5. Some demos provided. > > Added Python Imaging Library > > Added dbmmodule > > Upgraded socketmodule with new Wattcp-32 2.2.4 release. > > New DXE format & Many additional C and Assembly tokens added to export list. > > re-compiled with newest DJGPP 2.0.4 alpha libraries. > > DJGPP's 'FNCASE' variable is automaticaly set to 'y' during PythonD > sessions. > This may be turned off by commenting out the appropriate lines from site.py. > This is currently only activated during NT sessions. > > 'commands' module hacked for DOS/DJGPP. Requires 'bash.exe'. > > copy_absolute() in getpath.c has been fixed for DOS-DJGPP... > consequently, 'sys.executable' now returns the correct value. > > *limited* library support for 8.3 OSes (pure DOS without LFN driver). > > PythonD standard library found in: > os.path.join(prefix, "lib", "python" + sys.version[:1]) > the standard declaration uses 'sys.version[:3]' > This is for dos 8.3 compatibility (one library for both LFN and non-LFN!). > > posixpath.abspath() fixed for DOS/DJGPP. > > site.py loads error-free on non-djgpp systems. > > Networking exceptions have been added to the list kept in the errno module. > > Socketmodule now initializes upon module import. Requires packet driver. > > Somewhat better selectmodule build. Added select.poll() (from Wattcp). > Note that select.poll() is largely untested. > > Other small fixes > > > > I want to thank those whose work greatly helped to make this release > possible, including: > > Daniel Borca > Richard Dawe > Charles Sandmann > > > Regards, > Ben Decker > > > > > From anthony@computronix.com Fri Jul 25 16:09:24 2003 From: anthony@computronix.com (Anthony Tuininga) Date: 25 Jul 2003 09:09:24 -0600 Subject: cx_OracleDBATools 1.2 Message-ID: What is it? cx_OracleDBATools is a set of Python scripts that handle Oracle DBA tasks in a cross platform manner. These scripts are intended to work the same way on all platforms and hide the complexities involved in managing Oracle databases, especially on Windows. Binaries are provided for those who do not have a Python installation. Where do I get it? http://starship.python.net/crew/atuining http://www.computronix.com/utilities.shtml (it may be a few days before the second site is updated) What's new? This is the first release of this project to the public. It has been in use in our company for several months already. -- Anthony Tuininga anthony@computronix.com Computronix Distinctive Software. Real People. Suite 200, 10216 - 124 Street NW Edmonton, AB, Canada T5N 4A3 Phone: (780) 454-3700 Fax: (780) 454-3838 http://www.computronix.com From anthony@computronix.com Fri Jul 25 16:12:51 2003 From: anthony@computronix.com (Anthony Tuininga) Date: 25 Jul 2003 09:12:51 -0600 Subject: cx_OracleTools 7.1 Message-ID: What is it? cx_OracleTools is a set of Python scripts that handle Oracle database development tasks in a cross platform manner and improve (in my opinion) on the tools that are available by default in an Oracle client installation. Those who use cx_Oracle (a Python interface driver for Oracle compatible with the DB API) may also be interested in this project, if only as examples. Binaries are provided for those who do not have a Python installation. Where do I get it? http://starship.python.net/crew/atuining http://www.computronix.com/utilities.shtml utronix.com (it may be a few days before the second site is updated) What's new? This is the first release of this project to the public. It has been in heavy use in our company for several years already. -- Anthony Tuininga anthony@computronix.com Computronix Distinctive Software. Real People. Suite 200, 10216 - 124 Street NW Edmonton, AB, Canada T5N 4A3 Phone: (780) 454-3700 Fax: (780) 454-3838 http://www.computronix.com From mail@heikokoehler.de Sun Jul 27 16:05:18 2003 From: mail@heikokoehler.de (Heiko =?ISO-8859-15?Q?K=F6hler?=) Date: Sun, 27 Jul 2003 17:05:18 +0200 Subject: ANN: scintilla based, scriptable code editor CUTE 0.1.6 released Message-ID: CUTE is a Qt and Scintilla based text editor which can be easily extended using python . It 's main purpose is to be an user-friendly source code editor with a common graphical user interface. The editor is in beta stage, but can already be used for common editing tasks . CUTE is released under the terms of the GNU General Public License . It's homepage is http://cute.sf.net From s.keim Mon Jul 28 08:34:28 2003 From: s.keim (s.keim) Date: Mon, 28 Jul 2003 09:34:28 +0200 Subject: ANN : mem package 0.1 Message-ID: Hello, I have worked on a set of extension modules which allow to work on objects memory from Python code. This package contains: * an object for managing mallocated chunks of memory as a mutable sequence of bytes. * a set of functions which work on any objects which define the buffer API: memcopy, index, memlen, memcmp ... * a reimplementation of the buffer() built-in object which should correct it's most annoying problems. It contains also some pure Python modules: * an adaptater which provide the file interface to any object which define the buffer API. * an other adaptater for the array interface. You can give it a try at: http://www.zope.org/Members/s.keim/wiki/MemPackage/FrontPage From richardjones@optushome.com.au Tue Jul 29 00:40:35 2003 From: richardjones@optushome.com.au (Richard Jones) Date: Tue, 29 Jul 2003 09:40:35 +1000 Subject: SC-Track Roundup 0.6.0b4 - an issue tracking system Message-ID: --Boundary-02=_zRbJ/BkluAfDYhC Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Description: signed data Content-Disposition: inline --Boundary-02=_nRbJ/Au6axdch/i Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Description: signed data Content-Disposition: inline --Boundary-02=_fRbJ/1FXxdL/h2x Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Description: signed data Content-Disposition: inline --Boundary-02=_RRbJ/FtWCIqncsI Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Content-Description: signed data Content-Disposition: inline =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D SC-Track Roundup 0.6.0b4 - an issue tracking system =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D This is a pre-release of the new version of Roundup which contains a lot of new features. This release may contain bugs, so please run this using a backup of your production tracker. Always follow the "Software Upgrade" guidelines given in the maintenance documentation. If you're upgrading from an older version of Roundup you *must* read doc/upgrading.txt! Specific bugs fixed in this release: =2D plugged cross-site-scripting hole (thanks Jeff Epler) =2D handle deprecation of FCNTL in python2.2+ (sf bug 756756) =2D handle missing Subject: line (sf bug 755331) =2D fix New User creation (sf bug 754510) =2D fix hackish message escaping (sf bug 757128) =2D fix :required ordering problem (sf bug 740214) =2D audit some user properties for valid values (roles, address) (sf bugs 742968 and 739653) =2D fix HTML file detection (hence history xref linking) (sf bug 741478) =2D session database caches it's type, rather than calling whichdb each time around. =2D changed rdbms_common to fix sql backends for new Boolean types under Py= 2.3 Unfortunately, the Zope frontend for Roundup is currently broken, with no fix in the forseeable future. The gadfly backend has now been removed, having served its purpose as a template for other RDBMS implementations. It is replaced by the mysql backend. Roundup requires python 2.1.3 or later for correct operation. The 0.6 release has lots of new goodies including: =2D new instant-gratification Demo Mode ("python demo.py" :) =2D added mysql backend (see doc/mysql.txt for details) =2D web interface cleanups including nicer history display, nicer index navigation and nicer popup list windows =2D searching of date ranges =2D better international support, including utf-8 email handling and ability to display localized dates in web interface. =2D more documentation including revamped design document, unix manual pages and some FAQ entries =2D significantly more powerful form handling allowing editing of multiple = items and creation of multiple items =2D tracker templates can contain subdirectories and static files (e.g. ima= ges) and we may now distribute templates separately from Roundup. Template HTML files now have a .html extension too. =2D user registration is now a two-step process, with confirmation from the email address supplied in the registration form, and we also have a passw= ord reset feature for forgotten password / login =2D Windows Service mode for roundup-server when daemonification is attempt= ed on Windows. =2D fixed issues with dumb email or web clients =2D lots more little tweaks and back-end work... =2D email system handles more SMTP and POP features (TLS, APOP, ...) Source and documentation is available at the website: http://roundup.sourceforge.net/ Release Info (via download page): http://sourceforge.net/projects/roundup Mailing lists - the place to ask questions: http://sourceforge.net/mail/?group_id=3D31577 About Roundup =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Roundup is a simple-to-use and -install issue-tracking system with=20 command-line, web and e-mail interfaces. It is based on the winning design= =20 from Ka-Ping Yee in the Software Carpentry "Track" design competition. Note: Ping is not responsible for this project. The contact for this projec= t=20 is richard@users.sourceforge.net. Roundup manages a number of issues (with flexible properties such as=20 "description", "priority", and so on) and provides the ability to: (a) submit new issues, (b) find and edit existing issues, and (c) discuss issues with other participants. The system will facilitate communication among the participants by managing discussions and notifying interested parties when issues are edited. One of the major design goals for Roundup that it be simple to get going. Roundup is therefore usable "out of the box" with any python 2.1+ installation. It doesn't even need to be "installed" to be operational, though a disutils-based install script is provided. It comes with two issue tracker templates (a classic bug/feature tracker and a minimal skeleton) and six database back-ends (anydbm, bsddb, bsddb3, sqli= te, metakit and mysql).=20 --Boundary-02=_RRbJ/FtWCIqncsI Content-Type: application/pgp-signature Content-Description: signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQA/JbRRrGisBEHG6TARAntkAJ9EvPAL80BphmEvYv85GpZqsT4tswCZAeZ8 Tki8tlSI5KPj4wNMFqsTOd0= =6Ork -----END PGP SIGNATURE----- --Boundary-02=_RRbJ/FtWCIqncsI-- --Boundary-02=_fRbJ/1FXxdL/h2x Content-Type: application/pgp-signature Content-Description: signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQA/JbRfrGisBEHG6TARAs5FAJ9XRXXbUgLAg2zeCVspQ4rd+uxB+wCcCrx7 GQz6OwhGjyi9Yceg7DZLNO0= =DxIg -----END PGP SIGNATURE----- --Boundary-02=_fRbJ/1FXxdL/h2x-- --Boundary-02=_nRbJ/Au6axdch/i Content-Type: application/pgp-signature Content-Description: signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQA/JbRnrGisBEHG6TARApe/AJkBVBkZt6+O9i+WmkbHY5PV1E36gwCfWVGb OMXpiFJrG7sZnEQ4zwhEqEE= =h/y/ -----END PGP SIGNATURE----- --Boundary-02=_nRbJ/Au6axdch/i-- --Boundary-02=_zRbJ/BkluAfDYhC Content-Type: application/pgp-signature Content-Description: signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQA/JbRzrGisBEHG6TARAlPIAJ9ffoa472L8RjgUVtmcjtYDahrVcgCfUFPN oMM8iaACeWapj4/NulyYOnU= =iUJ/ -----END PGP SIGNATURE----- --Boundary-02=_zRbJ/BkluAfDYhC-- From richard@commonground.com.au Tue Jul 29 02:14:11 2003 From: richard@commonground.com.au (Richard Jones) Date: Tue, 29 Jul 2003 11:14:11 +1000 Subject: SC-Track Roundup 0.6.0b4 - an issue tracking system Message-ID: -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 [Let's try that again (again)... sorry!] =================================================== SC-Track Roundup 0.6.0b4 - an issue tracking system =================================================== This is a pre-release of the new version of Roundup which contains a lot of new features. This release may contain bugs, so please run this using a backup of your production tracker. Always follow the "Software Upgrade" guidelines given in the maintenance documentation. If you're upgrading from an older version of Roundup you *must* read doc/upgrading.txt! Specific bugs fixed in this release: - - plugged cross-site-scripting hole (thanks Jeff Epler) - - handle deprecation of FCNTL in python2.2+ (sf bug 756756) - - handle missing Subject: line (sf bug 755331) - - fix New User creation (sf bug 754510) - - fix hackish message escaping (sf bug 757128) - - fix :required ordering problem (sf bug 740214) - - audit some user properties for valid values (roles, address) (sf bugs 742968 and 739653) - - fix HTML file detection (hence history xref linking) (sf bug 741478) - - session database caches it's type, rather than calling whichdb each time around. - - changed rdbms_common to fix sql backends for new Boolean types under Py2.3 Unfortunately, the Zope frontend for Roundup is currently broken, with no fix in the forseeable future. The gadfly backend has now been removed, having served its purpose as a template for other RDBMS implementations. It is replaced by the sqlite and mysql backends. Roundup requires python 2.1.3 or later for correct operation. This release has a couple of bufixes mostly important to Windows users, making it possible for them to install new trackers! The 0.6 release has lots of new goodies including: - - new instant-gratification Demo Mode ("python demo.py" :) - - added mysql backend (see doc/mysql.txt for details) - - web interface cleanups including nicer history display, nicer index navigation and nicer popup list windows - - searching of date ranges - - better international support, including utf-8 email handling and ability to display localized dates in web interface. - - more documentation including revamped design document, unix manual pages and some FAQ entries - - significantly more powerful form handling allowing editing of multiple items and creation of multiple items - - tracker templates can contain subdirectories and static files (e.g. images) and we may now distribute templates separately from Roundup. Template HTML files now have a .html extension too. - - user registration is now a two-step process, with confirmation from the email address supplied in the registration form, and we also have a password reset feature for forgotten password / login - - Windows Service mode for roundup-server when daemonification is attempted on Windows. - - fixed issues with dumb email or web clients - - lots more little tweaks and back-end work... - - email system handles more SMTP and POP features (TLS, APOP, ...) Source and documentation is available at the website: http://roundup.sourceforge.net/ Release Info (via download page): http://sourceforge.net/projects/roundup Mailing lists - the place to ask questions: http://sourceforge.net/mail/?group_id=31577 About Roundup ============= Roundup is a simple-to-use and -install issue-tracking system with command-line, web and e-mail interfaces. It is based on the winning design from Ka-Ping Yee in the Software Carpentry "Track" design competition. Note: Ping is not responsible for this project. The contact for this project is richard@users.sourceforge.net. Roundup manages a number of issues (with flexible properties such as "description", "priority", and so on) and provides the ability to: (a) submit new issues, (b) find and edit existing issues, and (c) discuss issues with other participants. The system will facilitate communication among the participants by managing discussions and notifying interested parties when issues are edited. One of the major design goals for Roundup that it be simple to get going. Roundup is therefore usable "out of the box" with any python 2.1+ installation. It doesn't even need to be "installed" to be operational, though a disutils-based install script is provided. It comes with two issue tracker templates (a classic bug/feature tracker and a minimal skeleton) and six database back-ends (anydbm, bsddb, bsddb3, sqlite, metakit and mysql). -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (Darwin) iD8DBQE/JcpkrGisBEHG6TARAotEAJ4lfWFq8ydT53PZhB8OeSTbW9lpbwCfYYzp rasisS76UwY2CJNT4gkmloY= =PE1u -----END PGP SIGNATURE----- From ahaas@airmail.net Tue Jul 29 19:38:27 2003 From: ahaas@airmail.net (Art Haas) Date: Tue, 29 Jul 2003 13:38:27 -0500 Subject: [ANNOUNCE] Ninth release of PythonCAD now available Message-ID: I'd like to announce the ninth development release of PythonCAD, a CAD package for open-source software users. As the name implies, PythonCAD is written entirely in Python. The goal of this project is to create a fully scriptable drafting program that will match and eventually exceed features found in commercial CAD software. PythonCAD is released under the GNU Public License (GPL). PythonCAD requires Python 2.2. The interface is GTK 2.0 based, and uses the PyGTK module for interfacing to GTK. The design of PythonCAD is built around the idea of separating the interface from the back end as much as possible. By doing this, it is hoped that both GNOME and KDE interfaces can be added to PythonCAD through usage of the appropriate Python module. Addition of other interfaces will depend on the availability of a Python module for that particular interface and developer interest and action. The ninth release concentrated on internal improvements to the code. The storage and manipulation of optional values was heavily reworked. The first batch of changes regarding storing various drawing entities was finished, with the handling of colors having the largest number of changes. Linetypes and drawing styles will be updated in a similar manner to colors in future releases. This release also has numerous improvements in handling default values for many of the objects used in PythonCAD. A large number of bug fixes are included in this release. Various bugs relating to line splitting, tangent point calculation, and line intersection calculation have been fixed. In addition to bug fixes, numerous changes in the code are for data validation and error checking, resulting in several fixes where using improper data types was uncovered. A few changes have been made with regards to saving and loading of files as well. The ninth release also allows for the setting of the inactive layer entity color. This change is probably the only user interface change present in the release. As was stated above, the vast majority of changes present in this release are deep within the code and not UI related. Unfortunately the redraw bug in the preference dialog is still present, and when making the eighth release I had hoped to have it eliminated by the time the ninth release went out. That goal was not met, but hope springs eternal and maybe it will be removed in the next release. The mailing list for the development and use of PythonCAD is available. Visit the following page for information about subscribing and viewing the mailing list archive: http://mail.python.org/mailman/listinfo/pythoncad Visit the PythonCAD web site for more information about what PythonCAD does and aims to be: http://www.pythoncad.org/ Come and join me in developing PythonCAD into a world class drafting program! Art Haas -- Man once surrendering his reason, has no remaining guard against absurdities the most monstrous, and like a ship without rudder, is the sport of every wind. -Thomas Jefferson to James Smith, 1822 From jmiller@stsci.edu Tue Jul 29 20:15:27 2003 From: jmiller@stsci.edu (Todd Miller) Date: 29 Jul 2003 15:15:27 -0400 Subject: ANN: numarray-0.6.1 Message-ID: Numarray is an array processing package designed to efficiently manipulate large multi-dimensional arrays. Numarray is modeled after Numeric and features c-code generated from python template scripts, the capacity to operate directly on arrays in files, and improved type promotions. numarray-0.6.1 is a source only release which corrects a problem with installation under Mac OS 10. Non-Mac-OS-10 users should use numarray-0.6. I. ENHANCEMENTS None II. BUGS FIXED 779755 Mac OS 10 installation problem III. CAUTIONS 1. Due to the distribution repackaging, numarray-0.6.1 will not install correctly on top of an existing numarray-0.5 installation. Before installing numarray-0.6.1 remove your old version of numarray. WHERE ----------- numarray-0.6.1 source code is here: http://sourceforge.net/project/showfiles.php?group_id=1369 Numarray is hosted by Source Forge in the same project which hosts Numeric: http://sourceforge.net/projects/numpy/ The web page for Numarray information is at: http://stsdas.stsci.edu/numarray/index.html REQUIREMENTS ------------------------------ numarray-0.6.1 requires Python 2.2.2 or greater. AUTHORS, LICENSE ------------------------------ Numarray was written by Perry Greenfield, Rick White, Todd Miller, JC Hsu, Paul Barrett, Phil Hodge at the Space Telescope Science Institute. Thanks go to Jochen Kupper of the University of North Carolina for his work on Numarray and for porting the Numarray manual to TeX format. Thanks also to Edward C. Jones, Francesc Alted, Paul Dubois, Eric Jones, Travis Oliphant, Pearu Peterson and everyone who has contributed with comments and feedback. Numarray is made available under a BSD-style License. See LICENSE.txt in the source distribution for details. -- Todd Miller jmiller@stsci.edu STSCI / ESS / SSB From paradox@BBHC.ORG Tue Jul 29 21:43:16 2003 From: paradox@BBHC.ORG (Christopher Nelson) Date: Tue, 29 Jul 2003 14:43:16 -0600 Subject: Rebuild 1.0 Message-ID: Rebuild is a python module that replaces make. It is not a drop-in replacement, and does not use "makefiles." Instead, it includes a number of modules which try to be more intelligent about building projects. Rebuild is reasonably stable, as I have been using it for my own projects for the past year or so. Obviously it will contain problems that I have not run into yet. Questions and bug reports can be sent to paradox@bbhc.org Please put [rebuild] somewhere in the subject line if mailing regarding this project. The homepage for rebuild contains a download link, some documentation, and some examples. It can be found at: http://staff.bbhc.org/christophern/exos/rebuild/index.html Features: +Intelligent parsing heuristics for C/C++ source and headers, as well as nasm assembler source.=20 +Automatic gathering of dependencies for supported languages and a more intelligent build process reduces overall time spent in the building algorithms.=20 +Flexible options and a black-box approach to compilers.=20 +Supports compiling with gcc and nasm. Easily extensible for other compilers.=20 +Supports user-defined actions (Python functions) that can be linked into dependency chains for autobuilding source files like configuration headers.=20

= R ebuild 1.0 - Python make replacement. (July 29, 2003)

From barry@python.org Wed Jul 30 01:02:26 2003 From: barry@python.org (Barry A. Warsaw) Date: Tue, 29 Jul 2003 20:02:26 -0400 Subject: RELEASED Python 2.3 (final) Message-ID: On behalf of the Python development team and the Python community, I'm happy to announce the release of Python 2.3 (final). Nineteen months in the making, Python 2.3 represents a commitment to stability and improved performance, with a minimum of new language features. Countless bugs and memory leaks have been fixed, many new and updated modules have been added, and the new type/class system introduced in Python 2.2 has been significantly improved. Python 2.3 can be up to 30% faster than Python 2.2. For more information on Python 2.3, including download links for various platforms, release notes, and known issues, please see: http://www.python.org/2.3 Highlights of this new release include: - A brand new version of IDLE, the Python IDE, from the IDLEfork project at SourceForge. - Many new and improved library modules including: sets, heapq, datetime, textwrap, optparse, logging, bsddb, bz2, tarfile, ossaudiodev, itertools, platform, csv, timeit, shelve, DocXMLRPCServer, imaplib, imp, trace, and a new random number generator based on the highly acclaimed Mersenne Twister algorithm (with a period of 2**19937-1). Some obsolete modules have been deprecated. - New and improved built-ins including: o enumerate(): an iterator yielding (index, item) pairs o sum(): a new function to sum a sequence of numbers o basestring: an abstract base string type for str and unicode o bool: a proper type with instances True and False o compile(), eval(), exec: fully support Unicode, and allow input not ending in a newline o range(): support for long arguments (magnitude > sys.maxint) o dict(): new constructor signatures o filter(): returns Unicode when the input is Unicode o int() can now return long o isinstance(), super(): Now support instances whose type() is not equal to their __class__. super() no longer ignores data descriptors, except for __class__. o raw_input(): can now return Unicode objects o slice(), buffer(): are now types rather than functions - Many new doctest extensions, allowing them to be run by unittest. - Extended slices, e.g. "hello"[::-1] returns "olleh". - Universal newlines mode for reading files (converts \r, \n and \r\n all into \n). - Source code encoding declarations. (PEP 263) - Import from zip files. (PEP 273 and PEP 302) - FutureWarning issued for "unsigned" operations on ints. (PEP 237) - Faster list.sort() is now stable. - Unicode filenames on Windows. (PEP 227) - Karatsuba long multiplication (running time O(N**1.58) instead of O(N**2)). - pickle, cPickle, and copy support a new pickling protocol for more efficient pickling of (especially) new-style class instances. - The socket module now supports optional timeouts on all operations. - ssl support has been incorporated into the Windows installer. - Many improvements to Tkinter. Python 2.3 contains many other improvements, including the adoption of many Python Enhancement Proposals (PEPs). For details see: http://www.python.org/2.3/highlights.html Enjoy. happy-50th-birthday-geddy-ly y'rs, -Barry Barry Warsaw barry@python.org Python 2.3 Release Manager (and the PythonLabs team: Tim, Fred, Jeremy, and Guido) From a.held@computer.org Wed Jul 30 07:03:59 2003 From: a.held@computer.org (Andreas Held) Date: 29 Jul 2003 23:03:59 -0700 Subject: pyFLTK-1.1.b1 Message-ID: The first beta release of the Python bindings for the FLTK toolkit is now ready for download from http://pyfltk.sourceforge.net. FLTK is a lightweight cross-platform (Windows, Linux, Unix, Mac) GUI toolkit, available from http://www.fltk.org. Changes since pyFLTK-1.1.a1 include: - Updated documentation. - No need to set thiswon=0 anymore. - Fixed bug that caused stack overflow on handling polymorphisms. - Added polymorphism for Fl_Overlay_Window.draw_overlay. - Added polymorphism for Fl_Widget.handle. - Added polymorphism for Fl_Box.draw(). - Added polymorphism for Fl_Single_Window.draw() and Fl_Double_Window.draw(). - Added method getScrollbar to Fl_Scroll and Fl_Browser_. - Applied patch 742665 (thanks to Jerome Laheurte). - Fixed bug (patch) 745651. - Cleaned up enums for boxtypes. - Fixed bug in Fl_Adjuster that prevented updating. - Added contrib/ListSelect. - Created new cross-platform (Windows and Linux) setup script setup.py. - Fixed and expanded test files. Please direct all bug reports and feature requests to the mailing list: pyfltk-user at lists dot sourceforge dot net. Regards Andreas Held pyfltk.sourceforge.net From Oleg Broytmann Wed Jul 30 11:31:02 2003 From: Oleg Broytmann (Oleg Broytmann) Date: Wed, 30 Jul 2003 14:31:02 +0400 Subject: mxCGIPython 2.3 binaries for Linux, Solaris and FreeBSD Message-ID: Hello! I just uploaded new mxCGIPython binaries to http://phd.pp.ru/Software/Python/misc/mxCGI/ Python 2.3, mxCGI 0.7.0. Operating systems: Debian GNU/Linux 3.0, gcc 3.2.1 FreeBSD 4.8, gcc 2.95.4 Solaris 2.8 (SunOS 5.8), gcc 2.95.3. Oleg. -- Oleg Broytmann http://phd.pp.ru/ phd@phd.pp.ru Programmers don't die, they just GOSUB without RETURN. From martin.vonloewis@hpi.uni-potsdam.de Wed Jul 30 14:53:04 2003 From: martin.vonloewis@hpi.uni-potsdam.de (=?ISO-8859-1?Q?Martin_von_L=F6wis?=) Date: Wed, 30 Jul 2003 15:53:04 +0200 Subject: PyXML 0.8.3 is released Message-ID: Version 0.8.3 of the Python/XML distribution is now available. It should be considered a beta release, and can be downloaded from the following URLs: http://prdownloads.sourceforge.net/pyxml/PyXML-0.8.3.tar.gz http://prdownloads.sourceforge.net/pyxml/PyXML-0.8.3.win32-py2.2.exe http://prdownloads.sourceforge.net/pyxml/PyXML-0.8.3.win32-py2.3.exe http://prdownloads.sourceforge.net/pyxml/PyXML-0.8.3-2.2.Suse82.i386.rpm Changes in this version, compared to 0.8.2: * Fix memory leak in Expat bindings (content model information provided by Expat was not freed as required). * New convenience classes in the xml.ns module: ClosedNamespace, OpenNamespace. * The symbol "_" is no longer inserted into the built-in namespace via the gettext module; I18N support is no longer invasive. * expatreader now implements feature_namespace_prefixes. * drv_xmlproc now supports EntityResolvers that return system IDs. * Various bugs have been fixed: 677768: 0.8.2 setup.py errors on OS X 684522: ns_parse parsing error for ampersands in description field 696457: public/system ID swapped [in expatreader] 725010: Script text not contained in script element 728810: Forgotten print statement [in wddx] 733890: Memory Leak in expatparser.py 757799: Correct XmlWriter.processingInstruction() 765249: Problems building PyXML 0.8.2 on MacOSX 767130: Invalid charset breaks installation with Python 2.3(beta)=20 [4DOM] 774091: minidom CharacterData string methods fail when offset=3Dleng= th 774095: minidom hasAttributes method only available on Element 774100: minidom removeAttributeNode return value 774104: minidom setNamedItem unlinks replaced attributes 774108: 4DOM setAttributeNode[NS] setting attribute already on node The Python/XML distribution contains the basic tools required for processing XML data using the Python programming language, assembled into one easy-to-install package. The distribution includes parsers and standard interfaces such as SAX and DOM, along with various other useful modules. The package currently contains: * XML parsers: Pyexpat (Jack Jansen), xmlproc (Lars Marius Garshol), sgmlop (Fredrik Lundh). * SAX interface (Lars Marius Garshol) * minidom DOM implementation (Paul Prescod, others) * 4DOM and 4XPath from Fourthought (Uche Ogbuji, Mike Olson) * Schema implementations: TREX (James Tauber) * Various utility modules and functions (various people) * Documentation and example programs (various people) The code is being developed bazaar-style by contributors from the Python XML Special Interest Group, so please send comments and questions to . Bug reports may be filed on SourceForge: http://sourceforge.net/tracker/index.php?group_id=3D6473&atid=3D106473 For more information about Python and XML, see: http://www.python.org/topics/xml/ --=20 Martin v. L=F6wis http://loewis.de/martin From pyguy30@yahoo.com Wed Jul 30 23:57:41 2003 From: pyguy30@yahoo.com (john) Date: 30 Jul 2003 15:57:41 -0700 Subject: urllib(2) and https blues? try pytunnel for python tunnelling Message-ID: The python libraries like urllib and httplib do not support ssl through a proxy. Urllib2 supports http through a proxy or https alone, but not https through a proxy. A while ago my wife complained to me that perl had trouble w/https. I was surprised since perl has a lot of networking libraries. Preferring python, I took a look a python and found the same problem. Eventually I figured out what python was missing: tunnelling. Though she may _coax_ me to port the code to perl, I'm writing it first in my favorite language. Pytunnel offers a tunnel that can be used for (among other things) tunnelling the ssl through a proxy. I'd be willing to offer suggestions or myself add the necessary code to urllib2. Anyone know how one goes about doing either? Your python code does not need to be changed except that the port and ip are supplied by the tunnel. Pytunnel uses a custom recvall which is like sendall but for recv. Recvall uses non-blocking sockets,timeouts and sleeps to attempt to get all of the data. If you have a bad network connection you'd want to set the timeout to be high. Recvall will probably be slower than a standard recvall. The code is rough and needs better error handling, comments and such. But since I got it working I decided to post it. You can find it at: http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/213238 Example of usage: import pytunnel,httplib def tunnel_this(ip,port): conn = httplib.HTTPSConnection(ip,port=port) conn.putrequest('GET', '/') conn.endheaders() response = conn.getresponse() print response.read() tunnel=pytunnel.build(host='login.yahoo.com',proxy_host='h1',proxy_user='u',proxy_pass='p') tunnel.run(tunnel_this) From halley@play-bow.org Thu Jul 31 08:14:26 2003 From: halley@play-bow.org (Bob Halley) Date: 31 Jul 2003 00:14:26 -0700 Subject: dnspython 1.1.0b2 Message-ID: dnspython 1.1.0b2 has been released; here's the README file: INTRODUCTION dnspython is a DNS toolkit for Python. It supports almost all record types. It can be used for queries, zone transfers, and dynamic updates. It supports TSIG authenticated messages and EDNS0. dnspython provides both high and low level access to DNS. The high level classes perform queries for data of a given name, type, and class, and return an answer set. The low level classes allow direct manipulation of DNS zones, messages, names, and records. To see a few of the ways dnspython can be used, look in the examples/ directory. dnspython originated at Nominum where it was developed to facilitate the testing of DNS software. Nominum has generously allowed it to be open sourced under a BSD-style license, and helps support its future development by continuing to employ the author :). ABOUT THIS RELEASE This is dnspython 1.1.0b2. New in this release: Zones now have find_rrset() and find_rdataset() convenience methods. They let you retrieve rdata with the specified name and type in one call, e.g.: rrset = zone.find_rrset('foo', 'mx') Nodes no longer have names; owner names are associated with nodes in the Zone object's nodes dictionary. (It is my hope that this is the last non-backwards compatible change that will be made to the API.) The Zone class now implements more of the standard mapping interface. E.g. you can say zone.keys(), zone.get('name'), zone.iteritems(), etc. __iter__() has been changed to iterate the keys rather than values to match the standard mapping interface's behavior. The IPv6 version of inet_ntoa now emits embedded IPv4 addresses using the preferred syntax. This release fixes all known bugs from 1.1.0b1. See the ChangeLog file for more detailed information on changes since the prior release. REQUIREMENTS Python 2.2 or later. INSTALLATION To build and install dnspython, type python setup.py install HOME PAGE For the latest in releases, documentation, and information, visit the dnspython home page at http://www.dnspython.org/ DOCUMENTATION Documentation is sparse at the moment. Use pydoc, or read the HTML documentation at the dnspython home page, or download the HTML documentation. BUG REPORTS Bug reports may be sent to bugs@dnspython.org MAILING LISTS A number of mailing lists are available. Visit the dnspython home page to subscribe or unsubscribe.