From echuck@mindspring.com Thu Mar 1 13:39:07 2001 From: echuck@mindspring.com (Chuck Esterbrook) Date: Thu, 01 Mar 2001 08:39:07 -0500 Subject: [ANNOUNCE] Webware for Python 0.5 Message-ID: Webware for Python is a suite of software components for developing object-oriented, web-based applications. The suite uses well known design patterns and includes popular features such as: * A fast, multi-threaded, easy-to-use application server * Servlets * Python Server Pages (PSP, similar to ASP, PHP and JSP) * An object-relational mapper * Task scheduling * User management and authentication * A CGI wrapper Home: http://webware.sourceforge.net/ Download: http://download.sourceforge.net/webware/Webware-0.5.tar.gz Docs: http://webware.sourceforge.net/Webware/Docs Discuss: mailto:webware-discuss@lists.sourceforge.net Highlights of 0.5: * New kits: * UserKit: User management and authentication * TaskKit: Scheduling * MiddleKit: Object-relational mapping * COMKit: Enable multi-threaded COM support in the app server * WebKit enhancements http://webware.sourceforge.net/Webware/WebKit/Docs/RelNotes-0.5.html * MiscUtils enhancements http://webware.sourceforge.net/Webware/MiscUtils/Docs/RelNotes-0.5.html * PSP enhancements http://webware.sourceforge.net/Webware/PSP/Docs/RelNotes-0.4.html http://webware.sourceforge.net/ From bh@intevation.de Thu Mar 1 19:51:42 2001 From: bh@intevation.de (Bernhard Herzog) Date: 01 Mar 2001 20:51:42 +0100 Subject: Sketch 0.6.9 - A vector drawing program Message-ID: Sketch 0.6.9 - A vector drawing program Sketch is a vector drawing program for Linux and other unices. It's intended to be a flexible and powerful tool for illustrations, diagrams and other purposes. It has advanced features like gradients, text along a path and clip masks and is fully scriptable due to its implementation in a combination of Python and C. Summary of the Changes since 0.6.8: * Italian translation. * The PDF-export filter supports arrow heads now and handles dash patterns correctly. * Several fixes to make Sketch work with Python 2.0. * Several bug fixes For more information, have a look at the Sketch webpage: http://sketch.sourceforge.net/ Sketch is released under the GNU Library General Public License.

Sketch 0.6.9 - Vector drawing program. (01-Mar-2001) From rsalz@zolera.com Thu Mar 1 19:36:40 2001 From: rsalz@zolera.com (Rich Salz) Date: Thu, 1 Mar 2001 14:36:40 -0500 (EST) Subject: [Module] Wizard Message-ID: Wizard ------ Write MS-style GUI wizards A set of classes to make it easy to write "wizards" -- those "enter your name, click next" kinds of things. URL: http://www.zolera.com/~rsalz/wizard License: Open Source Gui: Tkinter Categories: User Interfaces, toolkits Rich Salz (rsalz@zolera.com) http://www.zolera.com/~rsalz -- Wizard -- Write MS-style GUI wizards From abo@minkirri.apana.org.au Fri Mar 2 01:14:10 2001 From: abo@minkirri.apana.org.au (Donovan Baarda) Date: Fri, 02 Mar 2001 12:14:10 +1100 (EST) Subject: [Module] pysync 1.2 Message-ID: pysync 1.2 ---------- A Python implementation of the rsync algorithm. This is a demonstration implementation of the rsync algorithm in Python. It is not fast and is not optimised. The primary aim is to provide a simple example implementation of the algorithm for reference, so code clarity is more important than performance. Ideas have been liberaly taken from libhsync, xdelta and rsync. Release 1.2 introduced the new zlib-like API, allowing for incremental calculation of deltas and applying patches. The comments at the top of pysync.py explains it all; # Low level API signature calculation sig=calcsig(oldfile) # Low level API rsync style incremental delta calc from sig and newdata delta=rdeltaobj(sig) # or for xdelta style incremental delta calc from oldfile and newdata # delta=xdeltaobj(oldfile) incdelta=delta.calcdelta(newdata) : incdelta=delta.flush() # Low level API applying incremental delta to oldfile to get newdata patch=patchobj(oldfile) newdata=patch.calcpatch(incdelta) : The rdeltaobj.flush() method supports R_SYNC_FLUSH and R_FINISH flush modes that behave the same as their zlib equivalents. Next on the TODO list is incremental signature calculation, and further cleanups. Eventualy I plan to create a md4sum module and move the rolling checksum stuff into C code. The performance has been marginaly hurt by this new API. Interestingly, the python profiler shows that most of the time is wasted performing string-copies when taking slices from input buffers, not actualy doing the rsync. This suggests that significant performance increases might be achievable by re- arranging things a bit, rather than moving python code into C. I have also added a pysync-test.py script for thorough formal testing of pysync. It generates/reuses random test files that make pysync really work hard, verifying that it behaves as it should. Incidentaly, release 1.2 also fixed a rather embarassing bug introduced in release 0.9's adler32.py that corrupted the rolling checksums, resulting in heaps of missed matches. This bug caused seriously bad performance and very large deltas. URL: http://freshmeat.net/projects/pysync/ Download: ftp://minkirri.apana.org.au/pub/python/pysync/pysync-1.2.tar.bz2 License: LGPL Categories: Encryption/Encoding Donovan Baarda (abo@minkirri.apana.org.au) http://sourceforge.net/users/abo/ -- ABO: finger abo@minkirri.apana.org.au for more information. From mwh21@cam.ac.uk Fri Mar 2 12:58:49 2001 From: mwh21@cam.ac.uk (Michael Hudson) Date: Fri, 2 Mar 2001 12:58:49 +0000 (GMT) Subject: python-dev summary, 2001-02-15 - 2001-03-01 Message-ID: Thanks for all the positive feedback for the last summary! This is a summary of traffic on the python-dev mailing list between Feb 15 and Feb 28 (inclusive) 2001. It is intended to inform the wider Python community of ongoing developments. To comment, just post to python-list@python.org or comp.lang.python in the usual way. Give your posting a meaningful subject line, and if it's about a PEP, include the PEP number (e.g. Subject: PEP 201 - Lockstep iteration) All python-dev members are interested in seeing ideas discussed by the community, so don't hesitate to take a stance on a PEP if you have an opinion. This is the second python-dev summary written by Michael Hudson. Previous summaries were written by Andrew Kuchling and can be found at: New summaries will appear at: and will continue to be archived at Andrew's site. Posting distribution (with apologies to mbm) Number of articles in summary: 400 | ]|[ | ]|[ 60 | ]|[ | ]|[ | ]|[ | ]|[ ]|[ | ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ 40 | ]|[ ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ 20 | ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ 0 +-033-037-002-008-006-021-071-037-051-012-002-021-054-045 Thu 15| Sat 17| Mon 19| Wed 21| Fri 23| Sun 25| Tue 27| Fri 16 Sun 18 Tue 20 Thu 22 Sat 24 Mon 26 Wed 28 A slightly quieter week on python-dev. As you can see, most Python developers are too well-adjusted to post much on weekends. Or Mondays. There was a lot of traffic on the bugs, patches and checkins lists in preparation for the upcoming 2.1b1 release. * backwards incompatibility * Most of the posts in the large spike in the middle of the posting distribution were on the subject of backward compatibility. On of the unexpected (by those of us that hadn't thought too hard about it) consequences of nested scopes was that some code using the dreaded "from-module-import-*" code inside functions became ambiguous, and the plan was to ban such code in Python 2.1. This provoked a storm of protest from many quarters, including python-dev and comp.lang.python. If you really want to read all of this, start here: However, as you will know if you read comp.lang.python, PythonLabs took note, and in: Guido announced that the new nested scopes behaviour would be opt-in in 2.1, but code that will break in python 2.2 when nested scopes become the default will produce a warning in 2.1. To get the new behaviour in a module, one will need to put from __future__ import nested_scopes at the top of the module. It is possible this gimmick will be used to introduce further backwards compatible features in the future. * obmalloc * After some more discussion, including Neil Schemenauer pointing out that obmalloc might enable him to make the cycle GC faster, obmalloc was finally checked in. There's a second patch from Vladimir Marangoz implementing a memory profiler. (sorry for the long line) Opinion was muted about this; as Neil summed up in: noone cares enough to put the time into it and review this patch. Sufficiently violently wielded opnions may swing the day... * pydoc * Ka-Ping Yee checked in his amazing pydoc. pydoc was described in It gives command line and web browser access to Python's documentation, and will be installed as a separate script in 2.1. * other stuff * It is believed that the case-sensitive import issues mentioned in the last summary have been sorted out, although it will be hard to be sure until the beta. The unit-test discussion petered out. Nothing has been checked in yet. The iteraators discussion seems to have disappeared. At least, your author can't find it! Cheers, M. From sdeibel@archaeopteryx.com Fri Mar 2 19:09:59 2001 From: sdeibel@archaeopteryx.com (Stephan R.A. Deibel) Date: Fri, 2 Mar 2001 14:09:59 -0500 (EST) Subject: Wing IDE for Windows & Linux v. 1.1b3 Message-ID: Hi, We're happy to announce the release of version 1.1b3 of Wing IDE, which is now available on Windows 98/SE and NT/2000 as well as Linux. Since 1.0 we've added debugger attach/detach, a Python indentation manager, an easy-to-install combined Zope+Wing bundled, and numerous bug fixes. Features of Wing IDE include a full graphical debugger with networked debugging, interactive shell, and expression evaluator; powerful source code browser; and a source code editor with syntax highlighting, auto-completion, auto-indentation, source structure menu, zooming to point of definition, multi-part key bindings, keyboard/command macros, and an emacs personality. For more information, see www.wingide.com. Thanks, - Stephan ------------------------------------------------------------------------ Archaeopteryx Software, Inc. Wing IDE for Python www.archaeopteryx.com Take Flight! From guido@digicool.com Fri Mar 2 22:46:09 2001 From: guido@digicool.com (Guido van Rossum) Date: Fri, 02 Mar 2001 17:46:09 -0500 Subject: Python 2.1b1 released Message-ID: With great pleasure I announce the release of Python 2.1b1. This is a big step towards the release of Python 2.1; the final release is expected to take place in mid April. Find out all about 2.1b1, including docs and downloads (Windows installer and source tarball), at the 2.1 release page: http://www.python.org/2.1/ WHAT'S NEW? ----------- For the big picture, see Andrew Kuchling's What New in Python 2.1: http://www.amk.ca/python/2.1/ For more detailed release notes, see SourceForge: http://sourceforge.net/project/shownotes.php?release_id=25924 The big news since 2.1a2 was released a month ago: - Nested Scopes (PEP 227)[*] are now optional. They must be enabled by including the statement "from __future__ import nested_scopes" at the beginning of a module (PEP 236). Nested scopes will be a standard feature in Python 2.2. - Compile-time warnings are now generated for a number of conditions that will break or change in meaning when nested scopes are enabled. - The new tool *pydoc* displays module documentation, extracted from doc strings. It works in a text environment as well as in a GUI environment (where it cooperates with a web browser). On Windows, this is in the Start menu as "Module Docs". - Case-sensitive import. On systems with case-insensitive but case-preserving file systems, such as Windows (including Cygwin) and MacOS, import now continues to search the next directory on sys.path when a case mismatch is detected. See PEP 235 for the full scoop. - New platforms. Python 2.1 now fully supports MacOS X, Cygwin, and RISCOS. [*] For PEPs (Python Enhancement Proposals), see the PEP index: http://python.sourceforge.net/peps/ I hope to see you all next week at the Python9 conference in Long Beach, CA: http://www.python9.org --Guido van Rossum (home page: http://www.python.org/~guido/) From michael@stroeder.com Sun Mar 4 14:29:34 2001 From: michael@stroeder.com (Michael =?iso-8859-1?Q?Str=F6der?=) Date: Sun, 04 Mar 2001 15:29:34 +0100 Subject: New snapshot web2ldap-20010304 Message-ID: HI! There's a new snapshot of web2ldap available at http://www.web2ldap.de/download.html Please check out what has changed: http://www.web2ldap.de/changes.html I hope that many of you find the time to thoroughly test the new features. Thanks for reporting problems. Please use the feedback form: http://www.web2ldap.de/feedback.html Ciao, Michael. Changes since last snapshot: - Input data can be edited after object class violation occured. - HTTP-method POST is used for any serious action. - The usual code cleaning, bug fixing... From kalle@gnupung.net Mon Mar 5 00:40:36 2001 From: kalle@gnupung.net (Kalle Svensson) Date: Mon, 5 Mar 2001 01:40:36 +0100 Subject: [ANN] xmlrpccgi.py 0.1 Message-ID: [Not PGP signed according to c.l.py.announce posting guidelines] xmlrpccgi.py is a CGI XML-RPC server, for those of us not lucky enough to be able to run our own daemons. This is a first release, expect bugs. I'd really appreciate feedback. There's no documentation yet, but check the test() function. Any questions? Don't hesitate to ask. It uses xmlrpclib by Secret Labs, which can be found on http://www.pythonware.com/products/xmlrpc/ URL: http://gnupung.net/programming.php#xmlrpccgi Download: http://gnupung.net/download/xmlrpccgi.py Demo: http://gnupung.net/cgi-bin/xmlrpccgi.py License: GPL About XML-RPC: XML-RPC is, as the name suggests, a protocol for remote procedure calls. It uses XML over e.g. HTTP. Design goals were: * Cross platform compatibility. * Human readability. * Easy implementation. More info: http://www.xml-rpc.com/ Peace, Kalle -- Email: kalle@gnupung.net | You can tune a filesystem, but you Web: http://www.gnupung.net/ | can't tune a fish. -- man tunefs(8) PGP fingerprint: 0C56 B171 8159 327F 1824 F5DE 74D7 80D7 BF3B B1DD From tanel@cs.ioc.ee Mon Mar 5 13:59:11 2001 From: tanel@cs.ioc.ee (Tanel Tammet) Date: Mon, 05 Mar 2001 15:59:11 +0200 Subject: Amphora light 2.2.26 Message-ID: Amphora Light 2.2.26 - a www-based groupware server Amphora Light (http://www.amphora.ee/freeware/) is a free open-source www-based groupware server in Python and Zope, offering basic office functionality: calendars, tasks, contacts, discussion, web email in the context of a hierarchical organisation and flexible access rights. Both Netscape and MS IE are supported as clients. It supports synchronization with MS Outlook calendar, tasks, contacts through a separate MS Windows client. Amphora is built upon the following components: Linux, Apache, MOD_SSL, PostgreSQL, Bsddb, Zope, Python, Mozilla cryptolibrary. Amphora light is a limited version of Amphora, a comprehensive commercial groupware/document management product for Linux by IT Meedia, containing also document-, project- and message management, as well as a simple interface for creating new database tables. Amphora supports ASP functionality (separate clients and quotas). integration with MS Windows and electronic signatures through a separate client. Amphora is currently being extended towards full CRM functionality. For more information, have a look at the Amphora light webpage: http://www.amphora.ee/freeware/ Amphora light is released under combined Mozilla Public Licence and Sun Community Source Licence analogues.

Amphora light 2.2.26 - www-based groupware server (01-Mar-2001) Tanel Tammet tanel@itmeedia.ee From laurie@tratt.net Tue Mar 6 18:00:55 2001 From: laurie@tratt.net (Laurence Tratt) Date: Tue, 06 Mar 2001 18:00:55 +0000 Subject: ASV 0.3 - a library for manipulating simple database formats such as CSV Message-ID: I am pleased to be able to announce the first public version of my ASV module, the successor to my own CSV.py module which many people have used over the past few years. ASV is an incompatible `from the ground up' rewrite incorprating comments CSV.py users have made over the years as well some new ideas to make the whole process of inputting, manipulating and outputting simple database formats as easy as possible. As standard, ASV can read and write CSV (Comma Seperated Values) and TSV (Tab Seperated Values) formats although it is possible to write your own input/output classes to cope with the bizarre variations that people seem to find themselves faced with from time to time. As the `main' format, the CSV handler has been designed to cope gracefully with a wide variety of input formats. The design of ASV specifically allows conversion between different formats (eg TSV -> CSV). As this is the first public release of ASV, it should be treated as a beta release - there may still be bugs and the documentation isn't entirely complete. However for those still brave enough, the download URL is: http://tratt.net/~laurie/python/asv/ Please feel free to mail me with any comments you may have at laurie@tratt.net Laurie

ASV 0.3 beta - a library for manipulating simple database formats such as CSV (01-Mar-01) From x@vex.net Mon Mar 5 11:00:36 2001 From: x@vex.net (Parnassus Submission) Date: Mon, 5 Mar 2001 06:00:36 -0500 (EST) Subject: [Module] PyPaSax 0.1 Message-ID: PyPaSax 0.1 ----------- A SAX2 parser for python code PyPaSax uses the parser module to extract information about classes and methods and generates an XML tree from this. We are working on XSLT to generate XMI files so that we can import the data in some UML tool such as ArgoUML. URL: http://www.logilab.org/pypasax/ Download: ftp://ftp.logilab.org/pub/pypasax License: GPL Requires: PyXML or 4Suite Categories: XML ornicar -- PyPaSax 0.1 -- A SAX2 parser for python code From rapto@arrakis.es Tue Mar 6 19:25:51 2001 From: rapto@arrakis.es (Marcos =?iso-8859-1?Q?S=E1nchez?= Provencio) Date: Tue, 06 Mar 2001 20:25:51 +0100 Subject: A quien interesare: [News for Spanish speaking people:] Message-ID: Como [Since] mailto:python-ar-request@lists.arnet.net.ar?Subject=subscribe está un poco muerto (o descansando demasiado) he puesto a disposición de quien desee una lista de Python en castellano en: [is a bit dead (or resting too much), I have set up a new list for spanish speaking people at:] http://lists.sourceforge.net/lists/listinfo/hispapyzope-python Os recuerdo que el proyecto de Documentación en castellano está bastante avanzado (y sigue necesitando voluntarios): [I remind you that the Spanish documentation project is quite usable now (but still needs volunteers):] http://pySpanishDoc.sourceforge.net Ahora, con documentación en línea [New and improved, featuring on-line documentation] From Anthony@COMPUTRONIX.com Wed Mar 7 15:02:53 2001 From: Anthony@COMPUTRONIX.com (Anthony Tuininga) Date: Wed, 7 Mar 2001 08:02:53 -0700 Subject: [Module] cx_Oracle Message-ID: This message is in MIME format. Since your mail reader does not understand this format, some or all of this message may not be legible. ------_=_NextPart_001_01C0A717.AF93A870 Content-Type: text/plain; charset="iso-8859-1" cx_Oracle --------- Module which permits access to Oracle databases using the Python Database API specification 2.0, including binds of PL/SQL tables (arrays). URL: http://www.computronix.com License: Open Source Categories: Database Interfaces Anthony Tuininga (atuining@computronix.com) ------_=_NextPart_001_01C0A717.AF93A870 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable [Module] cx_Oracle

           &= nbsp;           &= nbsp;        = cx_Oracle          &nb= sp;           &nb= sp;         
           &= nbsp;           &= nbsp;        ---------

Module which permits access to = Oracle databases using the Python Database API specification 2.0, = including binds of PL/SQL tables (arrays).

       URL:  http://www.computronix.com

   License:  Open = Source

  Categories:  = Database Interfaces

Anthony Tuininga = (atuining@computronix.com)



------_=_NextPart_001_01C0A717.AF93A870-- From michael@stroeder.com Thu Mar 8 22:47:37 2001 From: michael@stroeder.com (Michael =?iso-8859-1?Q?Str=F6der?=) Date: Thu, 08 Mar 2001 23:47:37 +0100 Subject: New snapshot web2ldap-20010308 Message-ID: HI! There's a new snapshot of web2ldap available at http://www.web2ldap.de/download.html The change history can be found here: http://www.web2ldap.de/changes.html Hmm, unfortunately no feedback so far... http://www.web2ldap.de/feedback.html Ciao, Michael. Changes since last snapshot: - some small changes in the UI (hopefully improvements) - better handling of the session database - mainly bug fixing... From aahz@panix.com Fri Mar 9 14:55:06 2001 From: aahz@panix.com (Aahz Maruch) Date: 9 Mar 2001 06:55:06 -0800 Subject: Thread slideshow Message-ID: I still don't have a thread tutorial, but I've uploaded the slideshow and sample scripts that I used at IPC9. Look for the new and improved version in five months (after OSCON 2001). http://starship.python.net/crew/aahz/ -- --- Aahz (Copyright 2001 by aahz@pobox.com) Androgynous poly kinky vanilla queer het <*> http://www.rahul.net/aahz/ Hugs and backrubs -- I break Rule 6 "..., and some of you may regard all women as evil traps that exist only to tease, torture, and suck out your very soul." --DrMax From gmcm@hypernet.com Sat Mar 10 19:19:00 2001 From: gmcm@hypernet.com (Gordon McMillan) Date: Sat, 10 Mar 2001 14:19:00 -0500 Subject: ANN: Linux version of Installer for Python 2 Message-ID: The Linux version of Installer for Python 2 is here: http://www.mcmillan-inc.com/installer_dnld.html Background: The Installer is a sort of compilerless Freeze - a way of distributing Python apps with all the required support built in. The Linux version collects all dependencies and packages the pure Python into an archive attached to the executable. Just tar, gzip and ship. Old-Python-style license. Contact: gmcm@hypernet.com

Linux Installer release 3j A compiler-less way of distributing Python 2.0 apps on Windows. (10-Mar-01) - Gordon From robin@alldunn.com Sat Mar 10 20:56:09 2001 From: robin@alldunn.com (Robin Dunn) Date: Sat, 10 Mar 2001 12:56:09 -0800 Subject: ANNOUNCE: PyBSDDB3 version 3.0b4 Message-ID: I've released version 3.0b4 of the Python wrappers for BerkeleyDB. This version adds support for BerkeleyDB 3.2.9, and is also still usable with BerkeleyDB 3.1.17. See http://pybsddb.sourceforge.net/. Binaries are available for Windows and for Linux (RPMs) for both Python 1.5.2 and Python 2.0. -- Robin Dunn Software Craftsman robin@AllDunn.com Java give you jitters? http://wxPython.org Relax with wxPython! From barry@digicool.com Mon Mar 12 22:42:41 2001 From: barry@digicool.com (Barry A. Warsaw) Date: Mon, 12 Mar 2001 17:42:41 -0500 Subject: ANNOUNCE Mailman 2.0.3 Message-ID: [I think I forgot to announce the Mailman 2.0.2 release on these mailing lists. Apologies. -Barry] I've just announced the 2.0.3 release of Mailman, the GNU Mailing List Manager. Mailman is released under the GNU General Public License (GPL). I highly recommend that all sites running earlier versions of Mailman upgrade to 2.0.3. This release includes the important privacy patch from Mailman 2.0.2. Sadly, Mailman 2.0.2 contained a small but nasty typo requiring this new version. Mailman 2.0.3 is being released as both a gzip'd source tarball and as a patchfile. Mailman is software to help manage electronic mail discussion lists, much like Majordomo or Smartmail. Mailman gives each mailing list a unique web page and allows users to subscribe, unsubscribe, and change their account options over the web. Even the list manager can administer his or her list entirely via the web. Mailman has most of the features that people want in a mailing list management system, including built-in archiving, mail-to-news gateways, spam filters, bounce detection, digest delivery, and so on. Mailman is compatible with most web servers, web browsers, and mail servers. It runs on GNU/Linux and should run on any other Unix-like operating system. Mailman 2.0.3 requires Python 1.5.2 or newer. To install Mailman from source, you will need a C compiler. For more information on Mailman, including links to file downloads, please see the Mailman WWW page: http://www.gnu.org/software/mailman And its mirrors at: http://mailman.sourceforge.net http://www.list.org [Only the SourceForge and list.org sites are up-to-date at the moment, I expect the gnu.org site to be updated shortly.] If you want to download just the 2.0.2 -> 2.0.3 patch, please see: http://sourceforge.net/project/showfiles.php?group_id=103 There are email lists (managed by Mailman, of course!) for both Mailman users and developers. See the web sites above for details. Enjoy, -Barry From russc@inline.net Mon Mar 12 23:15:14 2001 From: russc@inline.net (Russ Cobbe) Date: Mon, 12 Mar 2001 23:15:14 +0000 Subject: payment processor integration with Python Message-ID: Might be useful to python users and hopefully you can let them know about it. oPAYc is a standardized way to do payment processing to a large number of different payment processing companies. oPAYc supports all of the major processing companies and can be implemented into most web sites using common programming languages including Python. It has been built to be easy to integrate into any web based application by doing database calls. Features: - very simple standardized code to do a transaction - examples for most major web programming languages - easy integration to any web site - detailed documentation Benefits: - time to market is much quicker - less costly than custom programming an interface to the payment processor - easy to switch payment processing companies Processors supported include CyberCash, Signio/Verisign, iBILL, Authorize.NET, ICS Paypoint, Cardservices/Linkpoint/PSIGate, TeleCheck, Surepay, Echo, Cybersource, ClearCommerce, Clearlink, Pure Payments, GeoPay and E-xact. More being added all the time. More info email info@opayc.com or visit http://www.opayc.com Russ Cobbe President, Inline Internet Systems, Inc. 405 Britannia Road E, Suite 212 Mississauga, ON L4Z 3E2 P: (905) 712 3841 F: (905) 712 2965 http://www.inline.net http://www.ihtml.com Web Application Servers, E-Commerce Solutions From mjp@pilcrow.madison.wi.us Wed Mar 14 00:02:46 2001 From: mjp@pilcrow.madison.wi.us (M.J. Pomraning) Date: Tue, 13 Mar 2001 18:02:46 -0600 (CST) Subject: ANN: python-cdb 0.21 Message-ID: python-cdb 0.21 --------------- cdb files are mappings of keys to values, designed for wickedly fast lookups and atomic updates. The file format is used in mission critical applications like email, DNS, RADIUS, etc. This module provides a dict-like interface to cdb files, as well as facilities for iteration and database creation. The module attempts to mimic all of the functionality of the utilities from the cdb library package. gdbm fans will be pleased to note that CDB objects support firstkey()/nextkey() iteration. See http://pilcrow.madison.wi.us/ for download and related information. See http://cr.yp.to/cdb.html for info on the cdb format. 0.21 is a feature complete (I hope) beta, tested under Python 1.5.2. It is the same as the 0.20 release, the first public release, but (thankfully) with distutils integration. Any feedback is welcome. -Mike -- MJ Pomraning mjp@pilcrow.madison.wi.us

python-cdb 0.21 - High-level interface to constant databases From echuck@mindspring.com Wed Mar 14 00:23:12 2001 From: echuck@mindspring.com (Chuck Esterbrook) Date: Tue, 13 Mar 2001 19:23:12 -0500 Subject: [ANNOUNCE] Using Mix-ins with Python Message-ID: There is a Python article in the April 2001 issue of the Linux Journal, "Using Mix-ins with Python". It covers the general topic of mix-in programming with some comments on various languages, and then dives into Python specifics including examples. I used these concepts when creating the MiddleKit component of Webware (http://webware.sourceforge.net/), which includes a mix-in function in Webware.MiscUtils.MixIn. -Chuck -- Get web dev at http://webware.sourceforge.net/ From lkcl@samba-tng.org Wed Mar 14 13:36:18 2001 From: lkcl@samba-tng.org (Luke Kenneth Casson Leighton) Date: Thu, 15 Mar 2001 00:36:18 +1100 Subject: MS-SQL2000 XML/HTTP interface Message-ID: the first platform-independent python db module to allow access to a microsoft SQL 2000 database has been released. it is based on andy dustman's MySQLdb module, so is close to the DB 2.0 API. this project can be found at http://sourceforge.net/projects/pyxsqmll. this project is one of those interesting necessities that "does the job for me". hence, the version number of the current release, despite being based on MySQLdb 0.3.0, is ramped down to 0.0. requirements: py-xml 0.6.2 or greater (0.6.2 confirmed working and 0.6.4 confirmed working). python 2.0 (confirmed working - lower versions not tested). Microsoft's SQL 2000 server Microsoft's IIS server with the SQL-2000 XML plug-in installed. have fun, enjoy python, it's utterly cool. ["come on i, the water's fine*snap*aaaiieee!"] luke ----- Luke Kenneth Casson Leighton ----- "i want a world of dreams, run by near-sighted visionaries" "good. that's them sorted out. now, on _this_ world..." From bckfnn@worldonline.dk Wed Mar 14 15:33:12 2001 From: bckfnn@worldonline.dk (Finn Bock) Date: Wed, 14 Mar 2001 15:33:12 GMT Subject: ANN: First alpha release of Jython-2.1 Message-ID: I am happy to announce the first alpha release of Jython 2.1. Jython is a Java implementation of the Python programming language. It allows users to compile Python source code to Java byte codes, and run the resulting bytecodes on any Java Virtual Machine. It is a very seamless and smooth integration with Java: from Python you have complete access to all Java libraries, can build applets, can integrate with Java beans, and can subclass Java classes in Python and vice versa. Like Python, and unlike Java, Jython can also be used interactively: just type some Jython code at the prompt and see the results immediately. A java installer is available for download at the Jython website: http://www.jython.org/ Installation of version 2.1a1 is similar to version 2.0. Further information and tips on installation is available at: http://www.jython.org/install.html Jython 2.1 aims to be feature compatible with Python 2.1 and among the new feature are: - Nested scopes - The warning framework - Rich comparison - The numeric coercion model have changed. - Function attributes. The changes from Jython-2.0 include: New features. - Improve speed when indexing a string and iterating over a string in a for loop. - Reworked coercing model (pep-0208) - Added {}.popitem(). - Improved speed for python files by buffering the RandomAccessFile. - Added function attributes (pep-0232) - Rich comparison (pep-0207) - Updated cPickle to handle CPython compatible unicode strings. - Updated sre to CPython-2.1a1 - Added the "new" module - Added a PyServlet class to the util package. - Warning framework (pep-0230). - Added sys.add_classdir and sys.add_extdir. - Added nested scope to the interpreter (pep-0227). Bug fixes. - Allow self referencing adapters to be collected when using weak tables. - Added workaround for a reader bug in MRJ22Jitc.01. - Fixes #127340 where serializable parameter received a PyObject instead of the wrapped java object. - Include a LineNumberTable in the compiled class files. - Fixed a java version test bug in the installer. A complete list of changes and differences are available here: http://www.jython.org/NEWS.html Bugs can be reported to the bug manager on SourceForge: http://sourceforge.net/bugs/?group_id=12867 Cheers, the jython-developers From aahz@panix.com Thu Mar 15 06:14:54 2001 From: aahz@panix.com (Aahz Maruch) Date: 14 Mar 2001 22:14:54 -0800 Subject: PEP 6: Patch and Bug Fix Releases Message-ID: [posted to c.l.py.announce and c.l.py; followups to c.l.py; cc'd to python-dev] Okay, folks, here it is, the first draft of the spec for creating Python maintenance releases. Note that I'm not on python-dev, so it's probably better to have the discussion on c.l.py if possible. PEP: 6 Title: Patch and Bug Fix Releases Version: $Revision: 1.1 $ Author: aahz@pobox.com (Aahz) Status: Draft Type: Informational Created: 15-Mar-2001 Post-History: _________________________________________________________________ Abstract Python has historically had only a single fork of development, with releases having the combined purpose of adding new features and delivering bug fixes (these kinds of releases will be referred to as "feature releases"). This PEP describes how to fork off patch releases of old versions for the primary purpose of fixing bugs. This PEP is not, repeat NOT, a guarantee of the existence of patch releases; it only specifies a procedure to be followed if patch releases are desired by enough of the Python community willing to do the work. Motivation With the move to SourceForge, Python development has accelerated. There is a sentiment among part of the community that there was too much acceleration, and many people are uncomfortable with upgrading to new versions to get bug fixes when so many features have been added, sometimes late in the development cycle. One solution for this issue is to maintain old feature releases, providing bug fixes and (minimal!) feature additions. This will make Python more attractive for enterprise development, where Python may need to be installed on hundreds or thousands of machines. At the same time, many of the core Python developers are understandably reluctant to devote a significant fraction of their time and energy to what they perceive as grunt work. On the gripping hand, people are likely to feel discomfort around installing releases that are not certified by PythonLabs. Prohibitions Patch releases are required to adhere to the following restrictions: 1. There must be zero syntax changes. All .pyc and .pyo files must work (no regeneration needed) with all patch releases forked off from a feature release. 2. There must be no incompatible C API changes. All extensions must continue to work without recompiling in all patch releases in the same fork as a feature release. Bug Fix Releases Bug fix releases are a subset of all patch releases; it is prohibited to add any features to the core in a bug fix release. A patch release that is not a bug fix release may contain minor feature enhancements, subject to the Prohibitions section. The standard for patches to extensions and modules is a bit more lenient, to account for the possible desirability of including a module from a future version that contains mostly bug fixes but may also have some small feature changes. (E.g. Fredrik Lundh making available the 2.1 sre module for 2.0 and 1.5.2.) Version Numbers Starting with Python 2.0, all feature releases are required to have the form X.Y; patch releases will always be of the form X.Y.Z. To clarify the distinction between a bug fix release and a patch release, all non-bug fix patch releases will have the suffix "p" added. For example, "2.1" is a feature release; "2.1.1" is a bug fix release; and "2.1.2p" is a patch release that contains minor feature enhancements. Procedure XXX This section is still a little light (and probably controversial!) The Patch Czar is the counterpart to the BDFL for patch releases. However, the BDFL and designated appointees retain veto power over individual patches and the decision of whether to label a patch release as a bug fix release. As individual patches get contributed to the feature release fork, each patch contributor is requested to consider whether the patch is a bug fix suitable for inclusion in a patch release. If the patch is considered suitable, the patch contributor will mail the SourceForge patch (bug fix?) number to the maintainers' mailing list. In addition, anyone from the Python community is free to suggest patches for inclusion. Patches may be submitted specifically for patch releases; they should follow the guidelines in PEP 3[1]. The Patch Czar decides when there are a sufficient number of patches to warrant a release. The release gets packaged up, including a Windows installer, and made public as a beta release. If any new bugs are found, they must be fixed and a new beta release publicized. Once a beta cycle completes with no new bugs found, the package is sent to PythonLabs for certification and publication on python.org. Each beta cycle must last a minimum of one month. Issues To Be Resolved Should the first patch release following any feature release be required to be a bug fix release? (Aahz proposes "yes".) Is it allowed to do multiple forks (e.g. is it permitted to have both 2.0.2 and 2.0.2p)? (Aahz proposes "no".) Does it makes sense for a bug fix release to follow a patch release? (E.g., 2.0.1, 2.0.2p, 2.0.3.) Exactly how does a candidate patch release get submitted to PythonLabs for certification? And what does "certification" mean, anyway? ;-) Who is the Patch Czar? Is the Patch Czar a single person? (Aahz says "not me alone". Aahz is willing to do a lot of the non-technical work, but Aahz is not a C programmer.) What is the equivalent of python-dev for people who are responsible for maintaining Python? (Aahz proposes either python-patch or python-maint, hosted at either python.org or xs4all.net.) Does SourceForge make it possible to maintain both separate and combined bug lists for multiple forks? If not, how do we mark bugs fixed in different forks? (Simplest is to simply generate a new bug for each fork that it gets fixed in, referring back to the main bug number for details.) References [1] PEP 3, Hylton, http://python.sourceforge.net/peps/pep-0003.html Copyright This document has been placed in the public domain. From mwh21@cam.ac.uk Thu Mar 15 18:28:48 2001 From: mwh21@cam.ac.uk (Michael Hudson) Date: Thu, 15 Mar 2001 18:28:48 +0000 (GMT) Subject: python-dev summary, 2001-03-01 - 2001-03-15 Message-ID: This is a summary of traffic on the python-dev mailing list between Mar 1 and Mar 14 (inclusive) 2001. It is intended to inform the wider Python community of ongoing developments. To comment, just post to python-list@python.org or comp.lang.python in the usual way. Give your posting a meaningful subject line, and if it's about a PEP, include the PEP number (e.g. Subject: PEP 201 - Lockstep iteration) All python-dev members are interested in seeing ideas discussed by the community, so don't hesitate to take a stance on a PEP if you have an opinion. This is the third python-dev summary written by Michael Hudson. Previous summaries were written by Andrew Kuchling and can be found at: New summaries will appear at: and will continue to be archived at Andrew's site. Posting distribution (with apologies to mbm) Number of articles in summary: 264 50 | ]|[ | ]|[ | ]|[ | ]|[ 40 | ]|[ ]|[ | ]|[ ]|[ | ]|[ ]|[ | ]|[ ]|[ ]|[ 30 | ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ ]|[ 20 | ]|[ ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ 10 | ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ | ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ ]|[ 0 +-050-022-012-004-009-006-003-002-003-005-017-059-041-031 Thu 01| Sat 03| Mon 05| Wed 07| Fri 09| Sun 11| Tue 13| Fri 02 Sun 04 Tue 06 Thu 08 Sat 10 Mon 12 Wed 14 A quiet fortnight on python-dev; the conference a week ago is responsible for some of that, but also discussion has been springing up on other mailing lists (including the types-sig, doc-sig, python-iter and stackless lists, and those are just the ones your author is subscribed to). * Bug Fix Releases * Aahz posted a proposal for a 2.0.1 release, fixing the bugs that have been found in 2.0 but not adding the new features. Guido's response was, essentially, "Good idea, but I don't have the time to put into it", and that the wider community would have to put in some of the donkey work if this is going to happen. Signs so far are encouraging. * Numerics * Moshe Zadka posted three new PEP-drafts: which on discussion became four new PEPs, which are not yet online (hint, hint). The four titles are Unifying Long Integers and Integers Non-integer Division Adding a Rational Type to Python Adding a Rational Literal to Python and they will appear fairly soon at respectively. Although pedantically falling slightly out of the remit of this summary, I should mention Guido's partial BDFL pronouncement: A new mailing list had been setup to discuss these issues: * Revive the types-sig? * Paul Prescod has single-handedly kicked the types-sig into life again. The discussion this time seems to be centered on interfaces and how to use them effectively. You never know, we might get somewhere this time! * stackless * Jeremy Hylton posted some comments on Gordon McMillan's new draft of the stackless PEP (PEP 219) and the stackless dev day discussion at Spam 9. The discussion has mostly focussed on technical issues; there has been no comment on if or when the core Python will become stackless. * miscellanea * There was some discussion on nested scopes, but mainly on implementation issues. Thomas Wouters promised to sort out the "continue in finally: clause" wart. Cheers, M. From andy@reportlab.com Thu Mar 15 19:29:19 2001 From: andy@reportlab.com (Andy Robinson) Date: Thu, 15 Mar 2001 19:29:19 +0000 Subject: ReportLab commercial toolkit enters beta testing Message-ID: ReportLab Inc. is introducing a new commercial product range which builds on our existing Open Source Python PDF generation toolkit. RML2PDF and PageCatcher are entering beta testing today. These are the first elements of a tightly integrated suite of packages for building world-class reporting solutions for the Web and back office. Report Markup Language and RML2PDF ---------------------------------- RML2PDF is a powerful tool which allows you to generate reports in PDF with simplicity, speed and flexibility, and without the level of programming knowledge you need to use our Open Source ReportLab toolkit. The primary market is web or application servers, though it can also be embedded in client applications. RML2PDF uses the Report Markup Language. RML is an XML dialect which is simple, flexible and powerful. It allows you to produce PDF documents that include drawings, photographs, multicolumn page layouts - all with the ease of writing basic HTML rather than raw PDF. It=92s even easier than Python. We offer an attractive package to resellers and consultants who already deliver solutions to their customers and who can use this as one more piece of their tool suite; and will consider licensing the technology for use within third party applications. See http://www.reportlab.com/rml/ PageCatcher ----------- This tool allows you to import graphical elements or whole pages from existing PDF files and use them in RMl2PDF or with our Open Source reporting tools. It can be used to - overprint PDF files with extra information - grab specific pages, reorder and assemble documents - save trees by doing 4-up versions of documents - use existing documents as 'forms' and draw over them It gives your graphic designers the freedom to use any tools they wish to design artwork, which can then be included in reports. It also opens up many possibilites for forms processing. See http://www.reportlab.com/pageCatcher/ What about the existing ReportLab toolkit? ------------------------------------------ The ReportLab toolkit is free, and will always be free. If you want to use Python to output PDF, then the ReportLab toolkit will always be available to you. RML2PDF is aimed at a different market: those organizations who want a "straight out of the box" solution, or those who aren=92t Python-savvy. RML and any other commercial products we release will _always_ be in addition to the ReportLab toolkit and never replace it. If you=92re interested, send an email to mailto:info@reportlab.com. Or have a look at the products section on our web site: http://www.reportlab.com/rml/ Andy Robinson CEO and Chief Architect, ReportLab Inc. From msteed@altiris.com Fri Mar 16 19:33:29 2001 From: msteed@altiris.com (Mike Steed) Date: Fri, 16 Mar 2001 12:33:29 -0700 Subject: gdchart-py 0.6 Message-ID: Hi, Version 0.6 of gdchart-py is available at: http://athani.pair.com/msteed/software/gdchart/ New in this version: annotations, background images, scatter, and support for WBMP images. gdchart-py is a Python interface to GDChart, a library for creating charts and graphs in PNG, JPEG, and GIF format. Visit the GDChart home page to get an idea of what it can do: http://www.fred.net/brv/chart/ The Python interface builds on Win32, Linux, Solaris, HP-UX, and probably other Unices. A pre-build Win32 binary is available at the above URL. The software is free to use and distribute. Regards, Mike Steed From lkcl@samba-tng.org Thu Mar 8 12:07:48 2001 From: lkcl@samba-tng.org (Luke Kenneth Casson Leighton) Date: Thu, 8 Mar 2001 07:07:48 -0500 (EST) Subject: [Module] Py-XML-MSSQL 0.0 Message-ID: Py-XML-MSSQL 0.0 ---------------- Python Database Access to an MS SQL Server using XML over HTTP URL: http://sourceforge.net/projects/pyxsqmll License: Python Style Requires: py-xml-0.4 Categories: Database Luke Kenneth Casson Leighton (lkcl@samba-tng.org) http://cb1.com/~lkcl -- Py-XML-MSSQL 0.0 -- Python Database Access to an MS SQL Server using XML over HTTP From Ole@vex.net Fri Mar 16 01:01:32 2001 From: Ole@vex.net (Ole@vex.net) Date: Thu, 15 Mar 2001 20:01:32 -0500 (EST) Subject: [Module] DMtools Message-ID: DMtools ------- Support for data mining of MySQL databases. The DMtools are an efficient and flexible toolbox for accessing MySQL databases. They provide a number of routines for basic data aggregation which aim to facilitate various data mining tasks. Two core features of the DMtools are caching of database queries and parallelism within a collection of independent queries. URL: http://csl.anu.edu.au/ml/dm/dm_software.html Download: ftp://csl.anu.edu.au/pub/dm/dmtools/dmtools.tgz License: GPL Requires: MySQLdb, zlib (recommended) Categories: Database Ole Nielsen, Peter Christen (Ole.Nielsen@anu.edu.au, Peter.Christen@anu.edu.au) http://csl.anu.edu.au/ml/dm/ -- DMtools -- Support for data mining of MySQL databases. From OleM.Nielsen Fri Mar 16 03:05:45 2001 From: OleM.Nielsen (OleM.Nielsen) Date: Thu, 15 Mar 2001 22:05:45 -0500 (EST) Subject: [Module] Caching Message-ID: Caching ------- Smart caching of function results This module allows results of Python functions to be made persistent for subsequent rapid retrieval. Functions are intercepted, evaluated and their results are compressed and pickled using cPickle. Subsequent function calls with same arguments are replaced by the cached results. If the function or its arguments have been modified it will be recomputed. Recomputation can also be made dependent on the time stamp of arbitrary files or it can be triggered explicitly. This form of caching is very useful for time consuming functions that are called repetitively, such as database or WEB queries but it will work for any function which returns picklable objects. The following paper describes the caching module (along with some others) in more detail: A Toolbox Approach to Flexible and Efficient Data Mining Ole M. Nielsen, Peter Christen, Markus Hegland, Tatiana Semenova and Timothy Hancock. Accepted for the PAKDD-2001 Conference, Hong Kong, April 2001. Available at ftp://csl.anu.edu.au/pub/dm/papers/pakdd2001.pdf.gz or by emailing Ole.Nielsen@bigfoot.com URL: http://csl.anu.edu.au/ml/dm/dm_software.html Download: ftp://csl.anu.edu.au/pub/dm/dmtools/caching.py License: GPL Requires: zlib (recommended but not essential) Categories: Python Utilities Ole M. Nielsen (Ole.Nielsen@bigfoot.com) http://www.bigfoot.com/~Ole.Nielsen -- Caching -- Smart caching of function results From mertz@gnosis.cx Sun Mar 18 01:34:23 2001 From: mertz@gnosis.cx (David Mertz) Date: Sat, 17 Mar 2001 20:34:23 -0500 (EST) Subject: [Module] Indexer module Message-ID: Indexer module -------------- Create full-text indexes and search them A full-text indexer in Python, that may be used either as a stand-alone utility, or as a module in larger programs (incl. CGI). Creates a persistent word dictionary with occurrence rates of words in files. Matches files containing multiple words in search, with optional ranking of matches. URL: http://gnosis.cx/download/indexer.py Download: http://gnosis.cx/download/indexer.py License: Public Domain Requires: zlib (recommended), xml_pickle (optional) Categories: Python Utilities, CGI Scripts David Mertz (mertz@gnosis.cx) http://gnosis.cx/publish/ -- Indexer module -- Create full-text indexes and search them From mertz@gnosis.cx Sun Mar 18 01:43:01 2001 From: mertz@gnosis.cx (David Mertz) Date: Sat, 17 Mar 2001 20:43:01 -0500 (EST) Subject: [Module] sql2dtd module Message-ID: sql2dtd module -------------- Convert an SQL query to an XML DTD Convert an SQL query to a DTD that specifies an XML dialect for query results. Possibly useful for automating data flows from RDBMS' to other databases (relational or otherwise at the target). URL: http://gnosis.cx/download/sql2dtd.py Download: http://gnosis.cx/download/sql2dtd.py License: Public Domain Categories: Database, XML David Mertz (mertz@gnosis.cx) http://gnosis.cx/publish/ -- sql2dtd module -- Convert an SQL query to an XML DTD From akuchlin@mems-exchange.org Mon Mar 19 22:30:19 2001 From: akuchlin@mems-exchange.org (Andrew Kuchling) Date: Mon, 19 Mar 2001 17:30:19 -0500 Subject: PEP 241: Metadata for Python Software Packages Message-ID: PEP: 241 Title: Metadata for Python Software Packages Version: $Revision: 1.6 $ Author: A.M. Kuchling Type: Standards Track Created: 12-Mar-2001 Status: Draft Post-History: 19-Mar-2001 Introduction This PEP describes a mechanism for adding metadata to Python packages. It includes specifics of the field names, and their semantics and usage. Including Metadata in Packages The Distutils 'sdist' command will be modified to extract the metadata fields from the arguments and write them to a file in the generated zipfile or tarball. This file will be named PKG-INFO and will be placed in the top directory of the source distribution (where the README, INSTALL, and other files usually go). Developers may not provide their own PKG-INFO file. The "sdist" command will, if it detects an existing PKG-INFO file, terminate with an appropriate error message. This should prevent confusion caused by the PKG-INFO and setup.py files being out of sync. The PKG-INFO file format is a single set of RFC-822 headers parseable by the rfc822.py module. The field names listed in the following section are used as the header names. There's no extension mechanism in this simple format; the Catalog and Distutils SIGs will aim at getting a more flexible format ready for Python 2.2. Fields This section specifies the names and semantics of each of the supported metadata fields. Fields marked with "(Multiple use)" may be specified multiple times in a single PKG-INFO file. Other fields may only occur once in a PKG-INFO file. Fields marked with "(optional)" are not required to appear in a valid PKG-INFO file, all other fields must be present. Metadata-Version Version of the file format; currently "1.0" is the only legal value here. Example: 'Metadata-Version: 1.0' Name The name of the package. Example: 'Name: BeagleVote' Version A string containing the package's version number. This field should be parseable by one of the Version classes (StrictVersion or LooseVersion) in the distutils.version module. Example: 'Version: 1.0a2' Platform (multiple use) A comma-separated list of platform specifications, summarizing the operating systems supported by the package. The major supported platforms are listed below, but this list is necessarily incomplete. POSIX, MacOS, Windows, BeOS, PalmOS. Binary distributions will use the Supported-Platform field in their metadata to specify the OS and CPU for which the binary package was compiled. The semantics of the Supported-Platform are not specified in this PEP. Example: 'Platform: POSIX, Windows' Summary A one-line summary of what the package does. Example: "Summary: A module for collecting votes from beagles." Description (optional) A longer description of the package that can run to several paragraphs. (Software that deals with metadata should not assume any maximum size for this field, though one hopes that people won't include their instruction manual as the long-description.) Example: "Description: This module collects votes from beagles\n in order to determine their electoral wishes.\n Do NOT try to use this module with basset hounds; it makes them grumpy." Keywords (optional) A list of additional keywords to be used to assist searching for the package in a larger catalog. Example: 'Keywords: dog puppy voting election' Home-page (optional) A string containing the URL for the package's home page. Example: 'Home-page: http://www.example.com/~cschultz/bvote/' Author (optional) A string containing at a minimum the author's name. Contact information can also be added, separating each line with newlines. Example: 'Author: C. Schultz Universal Features Syndicate Los Angeles, CA' Author-email A string containing the author's e-mail address. It can contain a name and e-mail address in the legal forms for a RFC-822 'From:' header. It's not optional because cataloging systems can use the e-mail portion of this field as a unique key representing the author. A catalog might provide authors the ability to store their GPG key, personal home page, and other additional metadata *about the author*, and optionally the ability to associate several e-mail addresses with the same person. Author-related metadata fields are not covered by this PEP. Example: 'Author-email: "C. Schultz" ' License A string selected from a short list of choices, specifying the license covering the package. Some licenses result in the software being freely redistributable, so packagers and resellers can automatically know that they're free to redistribute the software. Other licenses will require a careful reading by a human to determine the software can be repackaged and resold. The choices are: Artistic, BSD, DFSG, GNU PL, Lesser GNU PL, "MIT/X11", Mozilla PL, "public domain", Python, Qt PL, Zope PL, unknown, nocommercial, nosell, nosource, shareware, other The definitions are: Python Python 1.6 or higher license. Version 1.5.2 and earlier are under the MIT/X11 license. public domain Software is public domain, not copyrighted. unknown Status is not known nocommercial Free private use but commercial use not permitted nosell Free use but distribution for profit by arrangement nosource Freely distributable but no source code shareware Payment is requested if software is used other General category for other non-DFSG licenses Some of these licenses can be interpreted to mean the software is freely redistributable. The list of redistributable licenses is: Artistic, BSD, DFSG, GNU PL, Lesser GNU PL, "MIT/X11", Mozilla PL, "public domain", Python, Qt PL, Zope PL, nosource, shareware Note that being redistributable does not mean a package qualifies as free software, 'nosource' and 'shareware' being examples. Example: 'License: MIT/X11' Copyright This document has been placed in the public domain. From wesc@deirdre.org Tue Mar 20 20:15:04 2001 From: wesc@deirdre.org (Wesley J. Chun) Date: Tue, 20 Mar 2001 12:15:04 -0800 Subject: EVENT: BayPIGgies mtg Wednesday Message-ID: Subject: ANNOUNCEMENT: BayPIGgies meeting Wednesday The Silicon Valley-San Francisco Bay Area Python Users Group (BayPIGgies.org) is meeting this Wednesday in Mountain View, CA. We will be going over what happened at the Python9 conference. March 21, 2001 Topic: Python9 Conference - News and events from the conference last week in Long Beach - Some of the more interesting papers in the proceedings - Upcoming release of Python 2.1 - Python Software Foundation - Guido's opening keynote: Python Fits Your Brain - Bruce Eckel's closing keynote: Why I Love Python Time and directions available at the website: http://www.baypiggies.org Hope to see some of you there! -wesley - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Silicon Valley-SF Bay Area Python users group: http://baypiggies.org "Core Python Programming", Prentice Hall PTR, December 2000 http://starship.python.net/crew/wesc/cpp/ wesley.j.chun :: wesc@baypiggies.org cyberweb.consulting :: silicon.valley, ca http://www.roadkill.com/~wesc/cyberweb/ From echuck@mindspring.com Wed Mar 21 20:38:53 2001 From: echuck@mindspring.com (Chuck Esterbrook) Date: Wed, 21 Mar 2001 15:38:53 -0500 Subject: [ANNOUNCE] Article: Using Mix-ins with Python Message-ID: I am re-announcing this because at the time of the original announcement, it was not known that the article would be online. This announcement includes the new URL: There is a Python article in the April 2001 issue of the Linux Journal, "Using Mix-ins with Python". It covers the general topic of mix-in programming with some comments on various languages, and then dives into Python specifics including examples. http://noframes.linuxjournal.com/lj-issues/issue84/4540.html I used these concepts when creating the MiddleKit component of Webware (http://webware.sourceforge.net/), which includes a mix-in function in Webware.MiscUtils.MixIn. -Chuck -- Get web dev at http://webware.sourceforge.net/ From lkcl@samba-tng.org Thu Mar 22 15:38:34 2001 From: lkcl@samba-tng.org (Luke Kenneth Casson Leighton) Date: Fri, 23 Mar 2001 02:38:34 +1100 Subject: MS SQL 2000 / HTTP / XML db module Message-ID: python HTTP / XML MS-SQL 2000 database access - v0.1 released. http://sourceforge.net/projects/pyxsqmll (damn, even i have trouble spelling it. stupid name. whoever picked that?? :) version 0.1 uses HTTP Basic Authentication. Your Microsoft SQL 2000 and IIS Server can be configured to require user / password access. btw, the htmlxmlsql2000 module has exactly the same format as MySQLdb 0.3.0 (with a couple of features and functions removed, because i was in a hurry to get this working!) in other words, other than the differences in the SQL statement interoperability (such as SELECT IDENT_CURRENT('tablename') instead of SELECT LAST_INSERT_ID()), you can replace the module name MySQLdb in your code with the module name httpxmlsql2000db and expect it to work. dependencies: - py-xml-0.6.4 (0.6.2 is known to work, too) - python 2.0 (other versions not tested) - MS SQL 2000 (we didn't bother trying with SQL-7, just upgraded) - MS IIS Server with the SQL-2000 XML isapi component enabled. python r0kz! luke ----- Luke Kenneth Casson Leighton ----- "i want a world of dreams, run by near-sighted visionaries" "good. that's them sorted out. now, on _this_ world..." From Vadim.zeitlin@dptmaths.ens-cachan.fr Fri Mar 23 14:49:36 2001 From: Vadim.zeitlin@dptmaths.ens-cachan.fr (Vadim Zeitlin) Date: Fri, 23 Mar 2001 15:49:36 +0100 (CET) Subject: [ANN] Mahogany 0.62 release Message-ID: A new release of the `Mahogany' e-Mail and News client has been made. ===================================================================== Source and binaries for a variety of Linux and Unix systems as well as binaries for Win32 are available at http://sourceforge.net/project/showfiles.php?group_id=3100 You can also get to the download page starting from http://mahogany.sourceforge.net/ NB: My sincere excuses to all people who have written me asking for Win32 binaries and to whom I couldn't reply because there were so many of them. For personal reasons I couldn't make the Win32 version as soon as I hoped to. In this message: 1. Announcing Mahogany Version 0.62 2. Changes Against the Previous Release Announcing Mahogany Version 0.62 ===================================================================== Mahogany is an OpenSource(TM) cross-platform mail and news client. It is available for X11/Unix and MS Windows platforms, supporting a wide range of protocols and standards, including POP3, IMAP4 and full MIME support as well as secure communications via SSL. Mahogany can be extended far beyond its original functionality using its built-in Python interpreter and/or its loadable modules (plug-ins). Mahogany's wealth of features and ease of use make it one of the most powerful clients available, providing a consistent and intuitive interface across all supported platforms and an ideal GUI email client for advanced and novice users alike. Mahogany includes an extendable address book system supporting hierarchical organisation of entries, group aliases, searching the database and easy editing, with support for other programs' address database formats. Currently Mahogany's native format, (X)Emacs' BBDB address books and PalmOS address books are supported. LDAP support is planned for future versions. Mahogany is written using the OpenSource wxWindows application framework for GUI C++ applications, building on the GTK+ toolkit on Unix and native Win32 API under Windows and imap-2000 (c-client) library developed by University of Washington for mail folder access. Mahogany is constantly being tested on a variety of Linux systems, Solaris-sparc and MS Windows. It should compile and work on any modern Unix platform. Changes Since Release 0.60 ===================================================================== Key changes are: - fixes to several fatal crashes with IMAP servers - significant speed up of some operations (although more optimizations are to come) - availability of Win32 version - Mahogany is now dual licensed under its Artistic License and GPL New features: - support for marking message as flagged/important - "Extract all addresses from message" command - possibility to import all MBOX folders under the given directory - possibility to set a hard limit for number of messages retrieved from a (remote) folder Improvements: - folders in the tree can now be rearranged, system folders are at top by default - messages can now be sorted by status and by size as well - title and status bar of folder view are customizable strings which can include information about the number of new/unread/flagged messages - show filtering progress in the status bar - filters dialog is now more convenient to use - new mail reporting was made less intrusive Bug fixes: - reading newsgroups doesn't crash the program immediately - parsing of complex MIME structures fixed - language autodetection fixed - fixed crash when viewing messages with wrong date Please see the CHANGES file in the distribution for an even more detailed list of changes. Future Plans ===================================================================== Next, we hope to tackle the following: - improving the message editor (work in progress) - full HTML message editing/displaying (almost complete) - multi-threading to allow network operations to happen in background - PGP/GPG support - LDAP support Please direct any queries to mahogany-developers@lists.sourceforge.net and don't hesitate to contact us if you would like to participate in Mahogany development! Known bugs: ----------- *** Please note that Mahogany/UNIX is officially in beta state while *** Mahogany/Win32 is still considered to be in alpha stage (although *** we use both versions on the daily basis). There are always some, listed on our bugtracker at http://mahogany.sourceforge.net/bugz/ and we are working on them. Hoping you will find Mahogany useful, M dev-team From guido@digicool.com Fri Mar 23 22:29:02 2001 From: guido@digicool.com (Guido van Rossum) Date: Fri, 23 Mar 2001 17:29:02 -0500 Subject: Python 2.1b2 released Message-ID: On time, and with a minimum of fuss, we've released Python 2.1b2. Thanks again to the many developers who contributed! Check it out on the Python website: http://www.python.org/2.1/ or on SourceForge: http://sourceforge.net/project/showfiles.php?group_id=5470&release_id=28334 As it behooves a second beta release, there's no really big news since 2.1b1 was released on March 2: - Bugs fixed and documentation added. There's now an appendix of the Reference Manual documenting nested scopes: http://python.sourceforge.net/devel-docs/ref/futures.html - When nested scopes are enabled by "from __future__ import nested_scopes", this also applies to exec, eval() and execfile(), and into the interactive interpreter (when using -i). - Assignment to the internal global variable __debug__ is now illegal. - unittest.py, a unit testing framework by Steve Purcell (PyUNIT, inspired by JUnit), is now part of the standard library. See the PyUnit webpage for documentation: http://pyunit.sourceforge.net/ Andrew Kuchling has written (and is continuously updating) an extensive overview: What's New in Python 2.1: http://www.amk.ca/python/2.1/ See also the Release notes posted on SourceForge: http://sourceforge.net/project/shownotes.php?release_id=28334 We are planning to make the final release of Python 2.1 on April 13; we may release a release candidate a week earlier. We're also planning a bugfix release for Python 2.0, dubbed 2.0.1; we don't have a release schedule for this yet. We could use a volunteer to act as the bug release manager! --Guido van Rossum (home page: http://www.python.org/~guido/) From jafo@tummy.com Sat Mar 24 06:50:08 2001 From: jafo@tummy.com (Sean Reifschneider) Date: Fri, 23 Mar 2001 23:50:08 -0700 Subject: Python 2.1b2 SRPM (was: Re: Python 2.1b2 released) In-Reply-To: <200103232229.RAA19777@cj20424-a.reston1.va.home.com>; from guido@digicool.com on Fri, Mar 23, 2001 at 05:29:02PM -0500 References: <200103232229.RAA19777@cj20424-a.reston1.va.home.com> Message-ID: Shy of RPMs because of library or other dependancy problems with most of the RPMs you pick up? The cure, in my experience is to pick up an SRPM. All you need to do to build a binary package tailored to your system is run "rpm --rebuild .src.rpm". I've just put up an SRPM of the 2.1b2 release at: ftp://ftp.tummy.com/pub/tummy/RPMS/SRPMS/ Again, this one builds the executable as "python2.1", and can be installed along-side your normal Python on the system. Want to check out a great new feature? Type "python2.1 /usr/bin/pydoc string". Download the SRPM from above, and most users can install a binary built against exactly the set of packages on their system by doing: rpm --rebuild python-2.1b2-1tummy.src.rpm rpm -i /usr/src/redhat/RPMS/i386/python*2.1b1-1tummy.i386.rpm Note that this release enables "--with-pymalloc". If you experience problems with modules you use, please report the module and how it can be reproduced so that these issues can be taken care of. Enjoy, Sean -- Total strangers need love, too; and I'm stranger than most. Sean Reifschneider, Inimitably Superfluous tummy.com - Linux Consulting since 1995. Qmail, KRUD, Firewalls, Python From doughellmann@bigfoot.com Sat Mar 24 13:28:14 2001 From: doughellmann@bigfoot.com (Doug Hellmann) Date: 24 Mar 2001 08:28:14 -0500 Subject: [ANN] HappyDoc 1.4 released Message-ID: Announcing the latest version of HappyDoc, a Python documentation extraction tool. HappyDoc is a tool for extracting documentation from Python source code. It differs from other such applications by the fact that it uses the parse tree for a module to derive the information used in its output, rather that importing the module directly. This allows the user to generate documentation for modules which need special context to be imported. Version 1.4 -- - Handle Packages separately from Modules. This behavior is optional and consists mostly of creating intermediate level TOC pages and not showing subdirectories of a Package on the Package's parent TOC page. - Changed default title to include instructions about how to change the title - Show exceptions in plugins when there is a problem loading a module - Added a command line argument to support ignoring specific subdirectories. - Fixed problem with ignoring directories by correcting name comparison logic. - Change "link":URL style references which were HTML quoted back to StructuredText so that hyperlinks can be embedded within docstrings. (reported by Mihalopoulos Evangelos) - Changed base class arrangement for docset so the basic interface is documented as part of the docset base class. - Moved some formatter functions into the docset, since they match that API better and more properly belong there. - Fixed bug 131751, problem with string dereference in parseinfo.py - Set the DOCTYPE in hdformatter_htmlfile.py. (Thanks to Shannon -jj Behrens for the patch.) - Fixed problem with references to extra files when using output prefixes. - Changed test harness to use the HappyDoc class directly instead of calling out to a separate program. - Output a oneliner for referenced pre-formatted documents. - Modified parseinfo.py to improve speed - Expanded information extracted about exceptions thrown by functions - Simplified the regressino test to make it faster by removing Zope docs from the default regression test suite Download Download the latest version of HappyDoc from the home page on SourceForge: http://sourceforge.net/projects/happydoc Doc-string Format How does an author write documentation so that it will be marked up and look fancy? This is a perennial question for Python, and seems to have introduced a roadblock into the development of more robust and useful documentation tools. By separating the formatter classes from the docset classes, HappyDoc allows a user to create their own formatter to interpret comments in any way they see fit. The default for the HTMLTableFormatter (the default formatter for HappyDoc) is to treat __doc__ strings as StructuredText. Don't like StructuredText? Write your own formatter that does something different and drop it into place. Documentation not in Doc-strings It is not always desirable to put all documentation in __doc__ strings. Sometime, notably when working with Zope, special meaning is attached to the presence of __doc__ strings. For this reason, and to support existing code which might not have __doc__ strings, HappyDoc will find and extract documentation in Python comments. Comment documentation can contain all of the same formatting as __doc__ strings. The preceding comment marker will be stripped off and the lines will be assembled and treated as a block of StructuredText. To use this feature, it is important to place the comments **before** the named object which they describe. In this example: # # Class documentation goes here # class ClassWithNoDocStrings: "Using __doc__ strings overrides comment documentation." def method1(self, params): "This method uses a __doc__ string." pass # # Method2 does not use a __doc__ string. # def method2(self): pass The output would include the __doc__ strings for the class and for method1. It would also make it appear that method2 had a __doc__ string with the contents "Method2 does not use a __doc__ string." From robin@alldunn.com Sat Mar 24 21:46:10 2001 From: robin@alldunn.com (Robin Dunn) Date: Sat, 24 Mar 2001 13:46:10 -0800 Subject: [ANN] PyBSDDB 3.0 final released Message-ID: Since there have been no trouble reports for some time I have decided to shift PyBSDDB 3.0 out of beta and have made a final release. You can get it here: http://sourceforge.net/project/showfiles.php?group_id=13900&release_id=28477 Binaries are provided for win32 and Linux (RPMs). The source distribution should build using distutils anywhere else that Sleepycat DB is supported. Description: ------------ Berkeley DB is a programmatic toolkit that provides high-performance built-in database support for desktop and server applications. The Berkeley DB access methods include B+tree, Extended Linear Hashing, Fixed and Variable-length records, and Queues. Berkeley DB provides full transactional support, database recovery, online backups, multi-threaded and multi-process access, etc. The Python wrappers allow you to store Python string objects of any length, keyed either by strings or integers depending on the database access method. With the use of another module in the package standard shelve-like functionality is provided allowing you to store any picklable Python object! Additional details, including online docs, are available here: http://pybsddb.sourceforge.net/ -- Robin Dunn Software Craftsman robin@AllDunn.com Java give you jitters? http://wxPython.org Relax with wxPython! From info@pythonware.com Mon Mar 26 12:52:23 2001 From: info@pythonware.com (PythonWare) Date: Mon, 26 Mar 2001 14:52:23 +0200 Subject: ANN: PythonWorks Pro 1.2 Message-ID: a pythonware newsflash: Secret Labs AB has released a new, much improved version of their integrated development environment for Python. PythonWorks is a rapid application development tool, designed for efficient development in Python. PythonWorks includes editors, a debugger, a user-interface design tool, project browser, deployment tools, integrated on-line help, and a scriptable environment. PythonWorks is well suited for many tasks, including: + Cross-platform system administration (system automation) + Prototyping of user interfaces and full applications + Building test frameworks + Rapid development and deployment of complete applications New features in 1.2 include improved support for Python 2.0, support for multiple pads and views, directory workspaces, lots of editor improvements, basic class browser, and improved EXE deployment support. Beginning with version 1.2, Secret Labs is also offering OEM versions of PythonWorks, for customers who want to provide a powerful IDE environment as part of their own Python-powered applications, or want a customized version of PythonWorks for use in their organization. To learn more, visit the PythonWorks product site: http://www.pythonworks.com You can also mail us at info@pythonware.com regards, the pythonworks team From moshez@zadka.site.co.il Mon Mar 26 22:26:44 2001 From: moshez@zadka.site.co.il (Moshe Zadka) Date: Tue, 27 Mar 2001 00:26:44 +0200 Subject: Release 2.0.1: Heads Up Message-ID: Greetings, earthlings! As Guido said in the last conference, there is going to be a bugfix release of Python 2.0, Python 2.0.1. Originally meant to be only a license bugfix release, comments in the Python community have indicated a need for a real bugfix release. PEP 6[1] has been written by Aahz, which outlines a procedure for such releases. With Guido's blessing, I have volunteered to be the Patch Czar (see the PEP!) for the 2.0.1 release. In this job, I intend to be feared and hated throughout the Python community -- men will tremble to hear the sounds of my footsteps...err...sorry, got sidetracked. This is the first Python pure bugfix release, and I feel a lot of weight rests on my shoulders as to whether this experiment is successful. Since this is the first bugfix release, I intend to be ultra-super-conservative. I can live with a release that does not fix all the bug, I am very afraid of a release that breaks a single person's code. Such a thing will give Python bugfix releases a very bad reputation. So, I am going to be a very strict Czar. I will try to follow consistent rules about which patches to integrate, but I am only human. I will make all my decisions in the public, so they will be up for review of the community. There are a few rules I intend to go by 1. No fixes which you have to change your code to enjoy. (E.g., adding a new function because the previous API was idiotic) 2. No fixes which have not been applied to the main branch, unless they are not relevant to the main branch at all. I much prefer to get a pointer to an applied patch or cvs checkin message then a fresh patch. Of course, there are cases where this is impossible, so this isn't strict. 3. No fixes which have "stricter checking". Stricter checking is a good thing, but not in bug fix releases. 4. No fixes which have a reasonable chance to break someone's code. That means that if there's a bug people have a good change of counting on, it won't be fix. 5. No "improved documentation/error message" patches. This is stuff that gets in people's eyeballs -- I want bugfix upgrade to be as smooth as possible. 6. No "internal code was cleaned up". That's a good thing in the development branch, but not in bug fix releases. Note that these rules will *not* be made more lenient, but they might get stricter, if it seems such strictness is needed in order to make sure bug fix releases are smooth enough. However, please remember that this is intended to help you -- the Python using community. So please, let me know of bugfixes that you need or want in Python 2.0. I promise that I will consider every request. Note also, that the Patch Czar is given very few responsibilities --- all my decisions are subject to Guido's approval. That means that he gets the final word about each patch. I intend to post a list of patches I intend to integrate soon -- at the latest, this Friday, hopefully sooner. I expect to have 2.0.1a1 a week after that, and further schedule requirements will follow from the quality of that release. Because it has the dual purpose of also being a license bugfix release, schedule might be influenced by non-technical issues. As always, Guido will be the final arbitrator. -- "I'll be ex-DPL soon anyway so I'm |LUKE: Is Perl better than Python? looking for someplace else to grab power."|YODA: No...no... no. Quicker, -- Wichert Akkerman (on debian-private)| easier, more seductive. For public key, finger moshez@debian.org |http://www.{python,debian,gnu}.org From lkcl@samba-tng.org Tue Mar 27 13:06:16 2001 From: lkcl@samba-tng.org (Luke Kenneth Casson Leighton) Date: Tue, 27 Mar 2001 23:06:16 +1000 Subject: Pymmetry - Python Trust Metrics Message-ID: Pymmetry - http://sourceforge.net/projects/pymmetry dependencies: any version of python that supports the "+=" operator (2.0 and above only?). other than that, it's pretty much self-contained code. Raph Levien's net_flow.c and tmetric.c - ported to python (from mod_virgule - running advogato.org) Contains an implementation of the Ford-Fulkerson Maximum Flow algorithm. Uses this algorithm in a way that is effectively "Cascading (or Hierarchical) Access Control". Pymmetry 1.0 example usage code includes a text-based profile / user-certifications implementation. python r0kz. luke ----- Luke Kenneth Casson Leighton ----- "i want a world of dreams, run by near-sighted visionaries" "good. that's them sorted out. now, on _this_ world..." From jack@oratrix.nl Wed Mar 28 19:59:43 2001 From: jack@oratrix.nl (Jack Jansen) Date: Wed, 28 Mar 2001 21:59:43 +0200 (MET DST) Subject: MacPython 2.1b2 available Message-ID: MacPython 2.1b2 is available for download. Get it via http://www.cwi.nl/~jack/macpython.html . New in this version: - A choice of Carbon or Classic runtime, so runs on anything between MacOS 8.1 and MacOS X - Distutils support for easy installation of extension packages - BBedit language plugin - All the platform-independent Python 2.1 mods - New version of Numeric - Lots of bug fixes - Choice of normal and active installer Please send feedback on this release to pythonmac-sig@python.org, where all the maccies hang out. Enjoy, -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | ++++ see http://www.xs4all.nl/~tank/ ++++ From mwh21@cam.ac.uk Thu Mar 29 12:06:00 2001 From: mwh21@cam.ac.uk (Michael Hudson) Date: Thu, 29 Mar 2001 13:06:00 +0100 (BST) Subject: python-dev summary, 2001-03-15 - 2001-03-29 Message-ID: This is a summary of traffic on the python-dev mailing list between Mar 15 and Mar 28 (inclusive) 2001. It is intended to inform the wider Python community of ongoing developments. To comment, just post to python-list@python.org or comp.lang.python in the usual way. Give your posting a meaningful subject line, and if it's about a PEP, include the PEP number (e.g. Subject: PEP 201 - Lockstep iteration) All python-dev members are interested in seeing ideas discussed by the community, so don't hesitate to take a stance on a PEP if you have an opinion. This is the fourth summary written by Michael Hudson. Summaries are archived at: Posting distribution (with apologies to mbm) Number of articles in summary: 410 50 | [|] | [|] | [|] | [|] 40 | [|] | [|] [|] | [|] [|] [|] | [|] [|] [|] [|] [|] 30 | [|] [|] [|] [|] [|] | [|] [|] [|] [|] [|] | [|] [|] [|] [|] [|] [|] | [|] [|] [|] [|] [|] [|] [|] [|] 20 | [|] [|] [|] [|] [|] [|] [|] [|] [|] | [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] | [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] | [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] 10 | [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] | [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] | [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] | [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] [|] 0 +-044-024-013-029-059-046-040-022-040-031-007-019-008-028 Thu 15| Sat 17| Mon 19| Wed 21| Fri 23| Sun 25| Tue 27| Fri 16 Sun 18 Tue 20 Thu 22 Sat 24 Mon 26 Wed 28 Bug-fixing for 2.1 remained a priority for python-dev this fortnight which saw the release of 2.1b2 last Friday. * Python 2.0.1 * Aahz posted his first draft of PEP 6, outlining the process by which maintenance releases of Python should be made. Moshe Zadka has volunteered to be the "Patch Czar" for Python 2.0.1. I'm sure we can all join in the thanks due to Moshe for taking up this tedious but valuable job! * Simple Generator implementations * Neil Schemenauer posted links to a couple of "simple" implementations of generators (a.k.a. resumable functions) that do not depend on the stackless changes going in. These implementations have the advantage that they might be applicable to Jython, something that sadly cannot be said of stackless. * portable file-system stuff * The longest thread of the summary period started off with a request for a portable way to find out free disk space: After a slightly acrimonious debate about the nature of Python development, /F produced a patch that implements partial support for os.statvfs on Windows: which can be used to extract such information. A side-product of this discussion was the observation that although Python has a module that does some file manipulation, shutil, it is far from being as portable as it might be - in particular it fails miserably on the Mac where it ignores resource forks. Greg Ward then pointed out that he had to implement cross-platform file copying for the distutils so perhaps all that needs to be done is for this stuff to be moved into the core. It seems very unlikely there will be much movement here before 2.2. From hinsen@cnrs-orleans.fr Fri Mar 30 15:30:57 2001 From: hinsen@cnrs-orleans.fr (Konrad Hinsen) Date: Fri, 30 Mar 2001 17:30:57 +0200 Subject: Scientific Python 2.2 Message-ID: Scientific Python 2.2 --------------------- Scientific Python is a module library for scientific computing. In this collection you will find modules that cover basic geometry (vectors, tensors, transformations, vector and tensor fields), quaternions, automatic derivatives, (linear) interpolation, polynomials, elementary statistics, nonlinear least-squares fits, unit calculations and conversions, Fortran-compatible text formatting, 3D visualization via VRML, two Tk widgets for simple line plots and 3D wireframe models. Scientific Python also contains Python interfaces to the netCDF library (implementing a portable binary format for large arrays) and the Message Passing Interface, the most widely used communications library for parallel computers. Version 2.2 of Scientific Python has just been released. In addition to numerous small improvents and bug fixes, it contains the first stable release of the MPI interface. It is also the first release to use the new distutils package in order to facilitate installation. For more information and for downloading, see http://starship.python.net/crew/hinsen/scientific.html or http://dirac.cnrs-orleans.fr/programs/scientific.html -- ------------------------------------------------------------------------------- Konrad Hinsen | E-Mail: hinsen@cnrs-orleans.fr Centre de Biophysique Moleculaire (CNRS) | Tel.: +33-2.38.25.56.24 Rue Charles Sadron | Fax: +33-2.38.63.15.17 45071 Orleans Cedex 2 | Deutsch/Esperanto/English/ France | Nederlands/Francais ------------------------------------------------------------------------------- From mal@lemburg.com Fri Mar 30 23:27:25 2001 From: mal@lemburg.com (M.-A. Lemburg) Date: Sat, 31 Mar 2001 01:27:25 +0200 Subject: ANN: eGenix.com mxODBC Database Interface Version 2.0.1 References: <3AC5158B.D34E8F27@lemburg.com> Message-ID: ________________________________________________________________________ ANNOUNCING: eGenix.com mxODBC Database Package for Python Version 2.0.1 Full Source Python extensions providing important and useful services for Python programmers. ________________________________________________________________________ WHAT IS IT ?: The eGenix.com mxODBC Database Package for Python is part of the eGenix.com mx Extension Series for Python, a collection of professional quality software tools which enhance Python's usability in many important areas such as ODBC database connectivity, fast text processing, date/time processing and web site programming. ________________________________________________________________________ WHAT'S NEW ? This patch release fixes a few problems which were found by users on Windows platforms: * Execution of SQL commands lead to a hanging Python processes for some users. * Handling of date/time values resulted in exceptions on some Windows configurations. Due to popular demand, I am now also providing precompiled Windows binaries for the older Python 1.5.2 version. Binaries for Python 2.1 will be announced after its final release. ________________________________________________________________________ SPECIAL OFFER theKompany.com has licensed the eGenix.com mx Commercial Package (which includes mxODBC) for inclusion in their brand new Qt-based Python IDE BlackAdder. It allows developing portable GUI-based database applications which run on Windows and Linux platforms without any change to the source code. BlackAdder includes a 1 CPU license for this package at no extra cost, so you may want to check out their great new product. See http://www.lemburg.com/files/python/eGenix-mx-Extensions.html#BlackAdder for details. ________________________________________________________________________ EGENIX.COM MX COMMERCIAL PACKAGE OVERVIEW: mxODBC - Generic ODBC 2.0-3.5 interface for Python mxODBC is an extension package that provides a Python Database API compliant interface to ODBC capable database drivers and managers. In addition to the capabilities provided through the standard DB API it also gives access to a rich set of catalog methods which allow you to scan the database for tables, procedures, etc. Furthermore, it uses the mxDateTime package for date/time value interfacing eliminating most of the problems these types normally introduce (other in/output formats are available too). mxODBC allows you to interface to more than one database from one process, making inter-database interfacing very flexible and reliable. The source version includes a varity of preconfigured setups for many commonly used databases such as MySQL, Oracle, Informix, Solid, SAP DB, Sybase ASA and ASE, DBMaker and many more. The precompiled versions for Windows and Linux include the interfaces to the standard ODBC manager on these platforms to allow for a more easily configurable setup. More details are available at: http://www.lemburg.com/files/python/mxODBC.html ________________________________________________________________________ WHERE CAN I GET IT ? The download archives and instructions for installing the packages can be found at: http://www.lemburg.com/files/python/ Note that in order to use mxODBC you will also need to install the eGenix.com mx BASE package which can be downloaded from the same location. ________________________________________________________________________ WHAT DOES IT COST ? mxODBC comes with a licenses which allows non-commercial use at no charge, but costs a moderate fee for commercial use. Please see http://www.lemburg.com/files/python/eGenix-mx-Extensions.html#mxCOMMERCIAL for details. The package comes with full source code. ________________________________________________________________________ WHERE CAN I GET SUPPORT ? Commercial quality support for these packages is available from eGenix.com Software GmbH. Please see http://www.lemburg.com/files/python/eGenix-mx-Extensions.html#Support for details about the eGenix support offerings. ________________________________________________________________________ REFERENCE:

eGenix.com mxODBC Package - eGenix.com mxODBC Database Interface 2.0.1 with distutils support and precompiled binaries for Windows and Linux. (31-Mar-2001) ________________________________________________________________________ Enjoy, -- Marc-Andre Lemburg ______________________________________________________________________ Company & Consulting: http://www.egenix.com/ Python Pages: http://www.lemburg.com/python/