From fcallejo@arrakis.es Mon Oct 1 18:48:25 2001 From: fcallejo@arrakis.es (Francisco Callejo) Date: 1 Oct 2001 18:48:25 +0100 Subject: ANN: Dive into Python - Spanish translation Message-ID: The first release of Dive into Python's Spanish translation has been published: http://diveintopython.org/es/ -- Francisco Callejo Giménez fcallejo@arrakis.es From mal@lemburg.com Tue Oct 2 20:41:38 2001 From: mal@lemburg.com (M.-A. Lemburg) Date: Tue, 02 Oct 2001 21:41:38 +0200 Subject: ANN: eGenix.com mx EXPERIMENTAL Package 0.6.0 Message-ID: ________________________________________________________________________ ANNOUNCING: eGenix.com mx EXPERIMENTAL Extension Package for Python Version 0.6.0 Experimental Python extensions providing important and useful services for Python programmers. ________________________________________________________________________ WHAT IS IT ?: The eGenix.com mx EXPERIMENTAL Extensions for Python are a collection of alpha and beta quality software tools for Python which will be integrated into the other mx Extension Packages after they have matured to professional quality tools. Python is an object-oriented Open Source programming language which runs on all modern platforms (http://www.python.org/). By integrating ease-of-use, clarity in coding, enterprise application connectivity and rapid application design, Python establishes an ideal programming platform for todays IT challenges. ________________________________________________________________________ WHAT'S NEW ? This release includes two new subpackage: mxURL and mxUID providing fast implementations for URL and UID processing. ________________________________________________________________________ EGENIX.COM MX EXPERIMENTAL PACKAGE OVERVIEW: mxNumber - Python Interface to GNU MP Number Types mxNumber provides direct access to the high performance numeric types available in the GNU Multi-Precision Lib (GMP). This library is licensed under the LGPL and runs on practically all Unix platforms. eGenix.com has ported the GMP lib to Windows, to also provide our Windows users with the added benefit of being able to do arbitrary precision calculations. The package currently provide these numerical types: 1. Integer(value) -- arbitrary precision integers much like Python longs only faster 2. Rational(nom,denom) -- rational numbers with Integers as numerator and denominator 3. Float(value[,prec]) -- floating point number with at least prec bits precision 4. FareyRational(value, maxden) -- calculate the best rational represenation n/d of value such that d < maxden mxTidy - Interface to HTML Tidy (HTML/XML cleanup tool) mxTidy provides a Python interface to a thread-safe, library version of the HTML Tidy. command line tool. HTML Tidy helps you to cleanup coding errors in HTML and XML files and produce well-formed HTML, XHTML or XML as output. This allows you to preprocess web-page for inclusion in XML repositories, prepare broken XML files for validation and also makes it possible to write converters from well-known word processing applications such as MS Word to other structured data representations by using XML as intermediate format. mxURL - A URL Datatype mxURL provides a new datatype for storing and manipulating URL values as well as a few helpers related to URL building, encoding and decoding. The main intention of the package is to provide an easy to use, fast and lightwheight datatype for Universal Resource Locators (note the W3C now calls these URIs). mxUID - A UID Datatype mxUID provides a fast mechanism for generating universal identification strings (UIDs). The intent is to make these UIDs unique with high probability in order to serve as object or data set identifiers. A typical use lies in generating session IDs. Other areas where unique IDs play an important role are RPC-implementations, ORBs, etc. ________________________________________________________________________ WHERE CAN I GET IT ? The download archives and instructions for installing the packages can be found at: http://www.lemburg.com/files/python/ ________________________________________________________________________ WHAT DOES IT COST ? The EXPERIMENTAL packages uses different licenses in its subpackages. Please refer to the subpackage documentation for details. Some of them may be integrated into the BASE package, others will be integrated into the COMMERCIAL package. The package comes with full source code ________________________________________________________________________ WHERE CAN I GET SUPPORT ? There currently is no support for these packages, since they are still in alpha or beta. Feedback is welcome, though, so don't hesitate to write us about the quirks you find. ________________________________________________________________________ REFERENCE:

eGenix.com mx EXPERIMENTAL Extension Package 0.6.0 - eGenix.com mx EXPERIMENTAL Extension Package 0.6.0 with precompiled binaries for Windows and Linux. (02-Oct-2001) ________________________________________________________________________ Enjoy, -- Marc-Andre Lemburg CEO eGenix.com Software GmbH ______________________________________________________________________ Company & Consulting: http://www.egenix.com/ Python Software: http://www.lemburg.com/python/ From gward@mems-exchange.org Thu Oct 4 04:10:21 2001 From: gward@mems-exchange.org (Greg Ward) Date: Wed, 3 Oct 2001 23:10:21 -0400 Subject: ANNOUNCE: Quixote 0.4 released Message-ID: Quixote 0.4 is now available for download from: http://www.mems-exchange.org/software/quixote/ Quixote is yet another framework for developing Web applications in Python. The design goals were: 1) To allow easy development of Web applications where the accent is more on complicated programming logic than complicated templating. 2) To make the templating language as similar to Python as possible, in both syntax and semantics. The aim is to make as many of the skills and structural techniques used in writing regular Python code applicable to Web applications built using Quixote. 3) No magic. When it's not obvious what to do in a certain case, Quixote refuses to guess. If you view a web site as a program, and web pages as subroutines, Quixote just might be the tool for you. If you view a web site as a graphic design showcase, and each web page as an individual work of art, Quixote is probably not what you're looking for. Quixote was primarily written by Andrew Kuchling, Neil Schemenauer, and Greg Ward ({akuchlin,nascheme,gward}@mems-exchange.org). Apart from all the code changes (see below), the documentation has been greatly expanded and revised in Quixote 0.4. MAJOR CODE CHANGES in Quixote 0.4 --------------------------------- * TraversalError now takes a public and a private message, instead of just a single message string. The private message is shown if SECURE_ERRORS is false; otherwise, the public message is shown. See the class docstring for TraversalError for more details. * Add the Quixote Form Library, a basic form and widget framework for HTML. * Allow classes and functions inside PTL modules. * Return a string object from templates rather than a TemplateIO instance. * Improve the security of session cookies. * Don't save empty sessions. * Detect expired sessions. * Add the quixote.sendmail module, useful for applications that need to send outgoing mail (as many web apps do). * Code reorganization -- various modules moved or renamed: quixote.util.fcgi -> quixote.fcgi quixote.compile_template -> quixote.ptl_compile quixote.imphooks -> quixote.ptl_import quixote.dumpptlc -> quixote.ptcl_dump * More code reorganization: the quixote.zope package is gone, as are the BaseRequest and BaseResponse modules. Only HTTPRequest and HTTPResponse survive, in the quixote.http_request and quixote.http_response modules. All remaining Zope-isms have been removed, so the code now looks much like the rest of Quixote. Many internal interfaces changed. * Added the quixote.mod_python module, contributed by Erno Kuusela . Allows Quixote applications to be driven by the Apache module mod_python, so no CGI or FastCGI driver script is required. -- Greg Ward - software developer gward@mems-exchange.org MEMS Exchange http://www.mems-exchange.org From usenet@itamarst.REMOVEorg Mon Oct 8 13:05:11 2001 From: usenet@itamarst.REMOVEorg (Itamar Shtull-Trauring) Date: Mon, 08 Oct 2001 14:05:11 +0200 Subject: ANN: Twisted 0.11.0, an event-based framework for internet applications Message-ID: Quote of the Release: Adventure, excitement... a Jedi craves not these things. -- Silent Bob, in "Mallrats" What is this? Twisted is an event-based framework for internet applications. It includes a web server, a telnet server, a multiplayer RPG engine, a generic client and server for remote object access, and APIs for creating new protocols and services. Twisted supports integration of the Tk or GTK event loop with it's main event loop. It also has basic support for running servers on top of jython. Twisted currently supports the following protocols, all implemented in pure python, most of them as both servers and clients: - FTP - HTTP - SMTP - irc - telnet - POP3 - AOL's instant messaging TOC - DNS (client only) - LDAP (client only) - finger - Echo, discard, chargen and friends - Perspective Broker For more information, visit http://www.twistedmatrix.com. What's new in 0.11.0? twisted servers can now run using jython, albeit in an inefficient manner. twisted.names, a DNS system, was checked in. It is still being worked on. SSL support is now much more robust, and dirdbm works much better as well. LineReceiver (used by HTTP, SMTP, etc.) limits line length, preventing DoS attacks. SafeNetstringReceiver serves a similar purpose for netstring based protocols. Servers -- especially Web servers or others that open and close connections frequently -- under high loads should run faster, since multiple accept() calls are done per select(). Threaded apps might run faster as well. Enhanced the twisted.web.widgets API to accomodate multiple deferreds. Protocol revision in PB, refactoring authentication into simply being an object one can connect to. New connection API for PB, simplifying and reducing the number of potential failure points in the process of writing a PB client. Much more example code for PB, including some simple examples involving web.widgets and GTK clients for PB services. From nicmila@idoox.com Mon Oct 8 18:21:14 2001 From: nicmila@idoox.com (Miloslav Nic) Date: Mon, 08 Oct 2001 16:21:14 -0100 Subject: Search of 2.1.1 Python library reference Message-ID: Hello, we have just published at Zvon: Python Library Reference Search Release: 2.1.1 ( http://zvon.org/other/python/PHP/search.php ) The search can be mirrored or set up for an off-line use. In this case it requires PHP and MySQL configured on the server. I hope you will find it useful. -- ****************************************** Miloslav Nic nicmila@idoox.com http://www.zvon.org From MARTIME@kellyservices.com Tue Oct 9 18:08:53 2001 From: MARTIME@kellyservices.com (MARTIME@kellyservices.com) Date: Tue, 9 Oct 2001 13:08:53 -0400 Subject: Message to be posted Message-ID: I would like to post a message to members. MY name is Maria Martino and I am recruiter at KellyServices. I have a need for a Python, VC++ programmer. Details are below. Any interested candidates, please email your resume as a Word document to: martime@kellyservices.com Thanks! Maria Martino IT Recruiter Kelly Services 212-984-1129 martime@kellyservices.com Details: Candidates should send their resumes to: Maria Martino martime@kellyservices.com Term: Contractor Length: 4 months Job Description: Work with the development team on an exciting business application software. Location: Tarrytown, Westchester County, NY Required Skills: Commercial development experience in Python and Visual C++ on Win32 platform. Strong analytical skill. Object-oriented programming is a must. SQL Server or other database server. Experience in widget-based GUI development. Experience in webserver or application server (e.g. IIS, Zope). Desirable skills: Advanced degree (CS/EE, Science, Math or other) welcome. Previous experience in finance, statistics, or Monte Carlo simulation. XML processing. Internet programming experience (TCP/IP, HTTP protocol, RPC, socket programming.) COM programming in business applications, interfacing with Access/Excel. Visual Basic for Applications. Source code revision control systems. Bug report database. InstallShield. From paul@ActiveState.com Tue Oct 9 20:36:55 2001 From: paul@ActiveState.com (Paul Prescod) Date: Tue, 09 Oct 2001 12:36:55 -0700 Subject: Fame, Fortune and the Python Conference Message-ID: Many of you will have submitted papers for the Python conference. Whether you did or didn't, please consider another way to contribute to the conference. You could submit a talks to the Web Services and Protocols track, Zope or Tools tracks. The Web Services and Protocols track is for anyone who is using Python to communicate information between computers in an innovative way. You can get involved with a simple email back to me saying you are interested with a couple of sentences about your area of interest. I will work with you to turn that into an abstract. You do not have to submit a paper or anything else in advance. Just work with me on your abstract and then show up at the conference with a fascinating talk. We already have some well-known speakers signed up so you will be in good company! Here are some areas of interest: * Jabber peer-to-peer protocol * XML-based Web Services protocols (SOAP, XML-RPC) * CORBA Distributed Computing Protocol * Web Services Description Language * Business Integration techniques ("B2B") * Enterprise Application Integration techniques ("EAI") * Proprietary Protocols Just send me a note this week (why not reply right row!) describing your project with Python and protocols or web services and we'll work out whether there is an abstract in there. More info is available here: http://www.python10.org/p10-conferenceEvents.html#webServices Conference info (dates, location,etc.) is here: http://www.python10.org/ Paul Prescod From richard@bizarsoftware.com.au Wed Oct 10 05:36:35 2001 From: richard@bizarsoftware.com.au (Richard Jones) Date: Wed, 10 Oct 2001 14:36:35 +1000 Subject: Roundup issue tracker preview release 0.3.0pre1 Message-ID: Roundup 0.3.0pre1 - an issue tracking system **PREVIEW RELEASE** This release is in use by Bizar Software, but has had little testing beyond that. It contains several new features which will require migration, so we're releasing this preview for the bleeding-edge users. **NOTE** existing users _must_ read the MIGRATION.txt that accompanies the source. This release includes several bug fixes and usability improvements. It switches the CGI interface authentication over from HTTP Basic to cookie based. It introduces encoded password storage. See the CHANGES file for more detail. Source and documentation is available at the website: http://roundup.sourceforge.net/ Release Info: http://sourceforge.net/project/shownotes.php?release_id=56431 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.0+ 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 and three database back-ends. From beazley@cs.uchicago.edu Wed Oct 10 17:03:20 2001 From: beazley@cs.uchicago.edu (David Beazley) Date: Wed, 10 Oct 2001 11:03:20 -0500 (CDT) Subject: Python 10 - Tools Track Reminder Message-ID: *** Call for Participation *** 10th International Python Conference - Tools Track February 4-7, 2002 The Hilton Alexandria Mark Center Alexandria, Virginia Proposal submission deadline: Friday, October 12th Notification : Monday, October 29th The tools track of the 10th International Python Conference is currently seeking presentation proposals. The primary focus of the tools track is to allow developers of tools for Python programmers to present new products & technologies, and to gather feedback from the audience. Any project, product or technology aimed at Python developers is appropriate to present here, whether aimed at the design, coding, testing, deployment, or other phases of software development. Possible topics of interest include, but are not limited to the following: - Commercial products based on Python. - Python IDEs and development tools. - Python extension modules. - Mini-tutorials on a specific programming topic or tool. - Work in progress reports on existing Python tools. To submit a proposal to the tools track, send an email message to tools@python10.org. In your message, include the following information: - Speaker name and affiliation - Contact address - Presentation title - A one paragraph abstract - Approximate presentation time (if known). Presentations should be aimed at a technical audience. Proposals that blatantly focus on sales or marketing will be rejected. Also, proposals will be given preference based on the order in which they are received. Please submit your proposal now while time slots are available! You will receive a confirmation when your proposal is received. If you hear nothing or already submitted a proposal, please make sure you reconfirm your submission. Additional information about the Python conference can be found at http://www.python10.org. Dave Beazley - Tools track chair beazley@cs.uchicago.edu From gward@mems-exchange.org Wed Oct 10 19:18:20 2001 From: gward@mems-exchange.org (Greg Ward) Date: Wed, 10 Oct 2001 14:18:20 -0400 Subject: ANNOUNCE: Quixote 0.4.1 released Message-ID: Quixote 0.4.1 is now available for download from: http://www.mems-exchange.org/software/quixote/ Quixote is yet another framework for developing Web applications in Python. The design goals were: 1) To allow easy development of Web applications where the accent is more on complicated programming logic than complicated templating. 2) To make the templating language as similar to Python as possible, in both syntax and semantics. The aim is to make as many of the skills and structural techniques used in writing regular Python code applicable to Web applications built using Quixote. 3) No magic. When it's not obvious what to do in a certain case, Quixote refuses to guess. If you view a web site as a program, and web pages as subroutines, Quixote just might be the tool for you. If you view a web site as a graphic design showcase, and each web page as an individual work of art, Quixote is probably not what you're looking for. Quixote was primarily written by Andrew Kuchling, Neil Schemenauer, and Greg Ward ({akuchlin,nascheme,gward}@mems-exchange.org). Thanks to Mikhail Sobolev for help porting Quixote to IIS, the primary reason for this release. CHANGES in Quixote 0.4.1 ------------------------ * Made access logging a little more portable (don't depend on Apache's REQUEST_URI environment variable). * Work around the broken value of PATH_INFO returned by IIS. * Work around IIS weird handling of SERVER_SECURE_PORT (for non-SSL requests, it is set to "0"). * Reassign sys.stderr so all application output to stderr goes to the Quixote error log. -- Greg Ward - software developer gward@mems-exchange.org MEMS Exchange http://www.mems-exchange.org From jeremy@zope.com Wed Oct 10 20:09:48 2001 From: jeremy@zope.com (Jeremy Hylton) Date: Wed, 10 Oct 2001 15:09:48 -0400 (EDT) Subject: some Python announcements are lost Message-ID: There is a problem with the moderation software we use for comp.lang.python.announce. As a result of this problem, some approved messages are being list; the message does not get forwarded to the newsgroup and neither the author nor the moderators get a notification that the failure occurred. If you post a message to comp.lang.python.announce, the message should either appear on the list or you should get a rejection notice from the moderators. If neither event occurs, your message is probably lost. (We do reject obvious spam without sending a rejection notice.) The specific problem appears to be related to message headers that are accepted by mail agents but rejected by some or all NNTP servers. It's a bug in the Mailman moderation patch and/or its mail-news gateway, and the Mailman developer(s) are working on a fix. Until the problem is fixed, you may want to resubmit lost announcements. In order to prevent them being lost a second time, the following techniques may help: Post via Usenet rather than mail. (If you post via Usenet and your announcement is lost, please send me a personal email.) If you post via email, please remove any unusual header (X-Been-There-Done-That) and do not include any duplicate headers. Jeremy From richard@bizarsoftware.com.au Thu Oct 11 06:29:35 2001 From: richard@bizarsoftware.com.au (Richard Jones) Date: Thu, 11 Oct 2001 15:29:35 +1000 Subject: Roundup 0.3.0pre2 - an issue tracking system Message-ID: Roundup 0.3.0pre2 - an issue tracking system **PREVIEW RELEASE** This release is in use by Bizar Software, but has had little testing beyond that. It contains several new features which will require migration, so we're releasing this preview for the bleeding-edge users. **NOTE** existing users _must_ read the MIGRATION.txt that accompanies the source. This release fixes a nasty bug in the hyperdatabase that was inserted in pre-release 1. Users who downloaded that release MUST download this release. Source and documentation is available at the website: http://roundup.sourceforge.net/ Release Info: http://sourceforge.net/project/shownotes.php?release_id=56576 Mailing lists - the place to ask questions: https://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.0+ 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 and three database back-ends. From Oleg Broytmann Thu Oct 11 14:37:03 2001 From: Oleg Broytmann (Oleg Broytmann) Date: Thu, 11 Oct 2001 17:37:03 +0400 Subject: kjbuckets module updated for Python 2.1; kjbuckets.pyd Windows DLL included Message-ID: Hello! spex66@gmx.de sent me a version of kjbucketsmodule.c updated for Python 2.1. There is also kjbuckets.pyd Windows DLL for Python 2.1. (ActiveState 2.1.1, actually). Many thanks, spex66! Page http://phd.pp.ru/Software/Python/#kjbuckets updated. Please note that I am not maintainer, just a "collector", in abscence of a real maintainer. You are welcome to send me minor patches, and you are especially welcome to adopt the project as a real maintainer. Oleg. ---- Oleg Broytmann http://phd.pp.ru/ phd@phd.pp.ru Programmers don't die, they just GOSUB without RETURN. From doughellmann@bigfoot.com Thu Oct 11 20:14:47 2001 From: doughellmann@bigfoot.com (Doug Hellmann) Date: Thu, 11 Oct 2001 19:14:47 GMT Subject: Announcing the latest version of HappyDoc, a Python documentation extraction tool. 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. More details are available on the HappyDoc home page at http://happydoc.sourceforge.net. Version 1.6 -- - **New Features** - Implemented a variety of modifications to support Python 2.0 syntax updates. - Implemented plugin system for docstring converters to allow module authors to write documentation using different markup styles. External files are recognized by their extension. The global default setting for docstrings can be passed on the command line, or a file-specific setting can be embedded in the input file (see below). - Updated the default markup syntax to StructuredTextNG, replacing the original StructuredText. Most users will not notice any difference, but backwards compatibility is maintained with a ClassicStructuredText plugin. - **Many contributed patches** - Patch to allow better support for Python 2.x 'import' statement syntax changes. - Patch to allow the base URL for documentation of Python standard libraries to be passed as a command line argument to HappyDoc. - Patch to eliminate invalid links to private classes which are not described. - Patch to elminate "decoration" lines in comment documentation. - Added output formatter and docset for creating UML diagrams in Dia format. - **Several resolved bugs** - Files with DOS line endings are handled properly. - Removed uses of the deprecated 'regex' module by the StructuredText parser. - Less than and greater than symbols in preformatted (example) sections of text are now rendered correctly. - **Other Changes** - Cosmetic changes to the way unit tests are run. - Fixed a problem with identifying "system modules" under versions of Python other than 1.5. - Sort the table of contents by the module name, not the file name. Download Download the latest version of HappyDoc from the home page on SourceForge: http://sourceforge.net/projects/happydoc From fionn@spamfilter.de Thu Oct 11 23:04:25 2001 From: fionn@spamfilter.de (Fionn Behrens) Date: Fri, 12 Oct 2001 00:04:25 +0200 (CEST) Subject: Ann: pSQL.py (manipulation of SQL dbs through python objects) Message-ID: Hi all! Ian Bicking's announcement of SQLbuilder.py on the webware-discuss mailing list a few days ago (very recommandable, btw; it includes a number of great ideas) reminded me of the fact that I have something slightly similiar on disk for quite some time now. I managed to motivate myself to write a readme and prop up a web page for anyone who might be interested. You can find it at: http://rtfm.n3.net/software/psql/ ABSTRACT: * Are you using a (My)SQL database all day in your programming projects and dont want to write SQL statements again and again all over? * Would you like to use an SQL database in your project without needing to know much about SQL? * Interested in making your database access sources a bit more readable and easier to grok for other programmers? If you can answer YES to one of these, pSQL might be of interest to you. WHAT IT DOES: Basically, pSQL wraps all database access and all data you get from your database into some easy-to-handle and easily usable objects that "feel" like standard python data structures. So, if you have a pSQL database object called "myDB" with a table called Address, you can find all people in that table who are living in Oklahoma by issuing a command like: |>>> res = myDB.Address.City["Oklahoma%"] |>>> len(res) |2 To find out the phone numbers of those two, you can use e.g.: |>>> res.column("Phone") |['0405-12345', '0405-67890'] or: |>>> for r in res: |... print "%s: %s"%(r.Name, r.Phone) |John Doe: 0405-12345 |Joe User: 0405-67890 To change one of those numbers in the database: |>>> john = res[0] |>>> john.Phone = '0405-54321' # or: res[0]["Phone"] = '0405-54321' WHAT IT DOES NOT: pSQL currently works with MySQLdb only. This will change in a future version and an abstraction layer will be added which allows the use of any DB 2.0 API compliant SQL module, e.g. for postgres. Visit the web page for more information. Regards, Fionn From Oleg Broytmann Fri Oct 12 15:31:10 2001 From: Oleg Broytmann (Oleg Broytmann) Date: Fri, 12 Oct 2001 18:31:10 +0400 Subject: MIME decode Message-ID: Hello! MIME decode WHAT IS IT Mail users, especially in non-English countries, often find that mail messages arrived in different formats, with different content types, in different encodings and charsets. Usually this is very good because it allows us to use apropriate formats/encodings/whatever. Sometimes, though, some unification is desireable. For example, one may want to put mail messages into an archive, make HTML indicies, run search indexer, etc. In such situations converting messages to text in one character set and skipping some binary atachmetnts will be much desireable. Here is the solution - mimedecode.py. This is a program to decode MIME messages. The program expects one input file (either on command line or on stdin) which treated as an RFC822 mesage, and decoded to stdout. If the file is not an RFC822 message the file just piped to stdout one-to-one. If it is a simple RFC822 message it is just decoded as one part. If it is a MIME message with multiple parts ("attachments") all parts decoded. Decoding can be controlled by command-line options. WHERE TO GET Master site: http://phd.pp.ru/Software/Python/#mimedecode Faster mirror: http://phd.by.ru/Software/Python/#mimedecode Requires: Python 2.0+, configured mailcap database. Documentation (also included in the package): http://phd.pp.ru/Software/Python/mimedecode.txt http://phd.by.ru/Software/Python/mimedecode.txt AUTHOR Oleg Broytmann COPYRIGHT Copyright (C) 2001 PhiloSoft Design LICENSE GPL Detailed manual NAME mimedecode.py - decode MIME message. SYNOPSIS mimedecode.py [-h|--help] [-V|--version] [-cCfFsS] [-beit mask] [filename] DESCRIPTION First, Subject and Content-Disposition headers are examined. If any of those exists, they decoded according to RFC2047. Content-Disposition header is not decoded - only its "filename" parameter. Encoding header's parameters is in violation of the RFC, but widely deployed anyway, especially in the M$ Ophice GUI (often referred as "Windoze") world, where programmers are usually ignorant lamers who never even heard about RFCs. Correct parameter encoding specified by RFC2231. This program decodes RFC2231-encoded parameters; continuation parameters (header*1, header*2, etc.) are not yet supported. Then the body of the message (or current part) decoded. Decoding starts with looking at header Content-Transfer-Encoding. If the header specifies non-8bit encoding (usually base64 or quoted-printable), the body converted to 8bit. Then, if its content type is multipart (multipart/related or multipart/mixed, e.g) every part recursively decoded. If it is not multipart, mailcap database is consulted to find a way to convert the body to plain text. (I have no idea how mailcap could be configured on said M$ Ophice GUI, please don't ask me; real OS users can consult my example at http://phd.pp.ru/Software/dotfiles/mailcap.html). The decoding process uses first copiousoutput filter it can find. If there is no filter the body just passed as is. Then Content-Type header consulted for charset. If it is not equal to current default charset the body text recoded using Unicode codecs. Finally message headers and body flushed to stdout. OPTIONS -h --help Print brief usage help and exit. -V --version Print version and exit. -c Recode different character sets to current default charset; this is the default. -C Do not recode character sets. -f Decode "filename" parameter of Content-Disposition header; this is the default. -F Do not decode filenames. -s Decode Subject header; this is the default. -S Do not decode Subject. -b mask Append mask to the list of binary content types; if the message to decode has a part of this type the program will pass the part as is, without any additional processing. -e mask Append mask to the list of error content types; if the message to decode has a part of this type the program will raise ValueError. -i mask Append mask to the list of content types to ignore; if the message to decode has a part of this type the program will not pass it, instead a line \nMessage body of type `%s' skipped.\n" will be issued. -t mask Append mask to the list of content types to convert to text; if the message to decode has a part of this type the program will consult mailcap database, find first copiousoutput filter and convert the part. The last 4 options (-beit) require more explanation. They allow a user to control body decoding with great flexibility. Think about said mail archive; for example, its maintainer wants to put there only texts, convert Postscript/PDF to text, pass HTML and images as is, and ignore everything else. Easy: mimedecode.py -t application/postscript -t application/pdf \ -b text/html -b 'image/*' -i '*/*' When the program decodes a message (or its part), it consults Content-Type header. The content type is searched in all 4 lists, in order "text-binary-ignore-error". If found, appropriate action performed. If not found, the program search the same lists for "type/*" mask (the type of "text/html" is just "text"). If found, appropriate action performed. If not found, the program search the same lists for "*/*" mask. If found, appropriate action performed. If not found, the program use default action, which is to decode everything to text (if mailcap specifies filters). Initially all 4 lists are empty, so without any additional parameters the program always use the default decoding. ENVIRONMENT LANG LC_ALL LC_CTYPE Define current locale settings. Usually used to determine current default charset. BUGS The program may output incorrect MIME message. The purpose of the program is to decode whatever is possible to decode, not to produce absolutely correct MIME output. The incorrect parts are obvious - decoded Subject headers and filenames. Decoding mail header parameters is incomplete - continuations in RFC2231-encoded parameters (header*1, header*2, etc.) are not parsed yet. NO WARRANTIES This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. Oleg. ---- Oleg Broytmann http://phd.pp.ru/ phd@phd.pp.ru Programmers don't die, they just GOSUB without RETURN. From anthony@computronix.com Mon Oct 15 17:58:27 2001 From: anthony@computronix.com (Anthony Tuininga) Date: Mon, 15 Oct 2001 10:58:27 -0600 Subject: cx_Oracle 2.3 Message-ID: I am pleased to announce the release of cx_Oracle version 2.3. The change log is as follows: Changes from 2.2 to 2.3 1) Incremental performance enhancements (dealing with reusing cursors and bind handles) 2) Ensured that arrays of integers with a single float in them are all treated as floats, as suggested by Martin Koch. 3) Fixed code dealing with scale and precision for both defining a numeric variable and for providing the cursor description; this eliminates the problem of an underflow error (OCI-22054) when retrieving data with non-zero scale. As usual, you can download the new release from http://www.computronix.com/utilities Anthony From dalke@dalkescientific.com Tue Oct 16 02:13:43 2001 From: dalke@dalkescientific.com (Andrew Dalke) Date: Mon, 15 Oct 2001 19:13:43 -0600 Subject: PyDaylight-0.8 available Message-ID: PyDaylight-0.8 has been released and is available for download from http://sourceforge.net/projects/pydaylight/ . New in this release: - Project hosting at Sourceforge.net - Uses Distutils for easy compilation and installation. (Requires Python 2.x) - Reaction and SMIRKS support - Improved program object support (both client and server) - PDF depiction output - Bug fixes and performance improvements. PyDaylight is a Python interface to the Daylight toolkit. In addition to low-level bindings to the toolkit functions, it provides a true object layer, iterators, exceptions and various useful libraries for chemical informatics. PyDaylight is freely available under the terms of the GNU LGPL. For more information, about PyDaylight or to hire Dalke Scientific Software for consulting based on PyDaylight, please visit http://www.dalkescientific.com/PyDaylight/ Many thanks to Bioreason, Daylight, Vertex, and AstraZeneca for their assistance in developing PyDaylight. "Daylight" and "Daylight toolkit" are registered trademarks of Daylight Chemical Information Systems, Inc. Daylight C.I.S. is not responsible for PyDaylight. Andrew Dalke dalke@dalkescientific.com From grahamd@dscpl.com.au Tue Oct 16 02:36:10 2001 From: grahamd@dscpl.com.au (Graham Dumpleton) Date: 15 Oct 2001 18:36:10 -0700 Subject: ANN: OSE 7.0b9 is now available. Message-ID: OSE 7.0b9 is now available. At its core, OSE is a C++ class library for general purpose programming, but also includes support for building event driven systems and distributed applications using a request/reply and publish/subscribe style service agent framework. The ability to interact with an application is facilitated using a HTTP servlet framework and RPC over HTTP interfaces. In short, OSE could be said to take technology from message oriented middleware, application server and web service technology and wraps it all into one. Although C++ at its core, OSE also provides wrappers for the Python programming language. This mix means that OSE serves as a useful platform for building standalone or distributed applications in Python, C++ or a mix of both. Its support of both XML-RPC and SOAP protocols through a single service interface makes it ideal for building web based services. Further information on OSE and the software itself, can be found at: http://ose.sourceforge.net This includes over 100 pages of documentation on the Python interfaces alone. The Python documentation can be viewed on the site as HTML, or as a single PDF file at: http://ose.sourceforge.net/python-manual.pdf OSE is released under the QPL. This release is the culmination of over 10 years of development, OSE first being available over the Internet in 1993. From Alexandre.Fayolle@logilab.fr Tue Oct 16 16:18:07 2001 From: Alexandre.Fayolle@logilab.fr (Alexandre Fayolle) Date: Tue, 16 Oct 2001 17:18:07 +0200 (CEST) Subject: [ANN] Narval 1.1 Message-ID: Logilab (www.logilab.com) announces the release of Narval 1.1 GPL'd Intelligent Personnal Assistant Framework http://www.logilab.org/narval News ---- The whole project has moved from python 1.5.2 to python 2.1 A few new features have made it into the engine, such as automatically reloading modules that have changed on disk, as well as some speed improvements. Several new modules (automatic classification, LDAP directory access, checksum computing) have made it into the standard library. The Horn GUI has been completely redesigned for better flexibility, speed and better ease of use. The infopal application (available separately) has received a large number of improvements. The mailing lists have been moved to use mailman. More information can be found at http://lists.logilab.org/mailman/listinfo Description ----------- Narval is a framework (language + interpreter + GUI/IDE) dedicated to the setting up of intelligent personal assistants (IPAs). An Intelligent Personal Assitant is a companion that will help you in your daily work in the information world. It runs on your machine or on a remote server, and you can communicate with it via all standard means (email, web, telnet, phone, specific GUI, etc). It executes recipes (sequences of actions) you wrote, to perform a wide range of tasks, such as prepare your morning newspaper, help you surf the web by filtering out junk ads, keep searching the web day after day for things you want, participe in on-line auctions, learn you interests and bring you back valuable information, take care of repetitive chores, answer e-mail, negociate the date and time of a meeting, and much more... It is easy to extend the built in action library by writing new actions in Python. Infopal, your information pal, is a Narval application that implements part of the above, but Narval makes it easy for you to set up new assistants. Others applications will soon be available from Logilab. Logilab S.A. is a French company that specializes in the fields of artificial intelligence, knowledge management, data analysis and natural language processing. More info --------- Please see http://www.logilab.org/narval http://www.logilab.com http://www.logilab.fr or contact contact@logilab.fr From davidma@eskimo.com Wed Oct 17 05:54:28 2001 From: davidma@eskimo.com (David Margrave) Date: 16 Oct 2001 21:54:28 -0700 Subject: [Module] pylibnet-1.0 Message-ID: pylibnet-1.0 ------------- Python module for libnet packet construction library. Python module for the libnet packet construction library (http://www.packetfactory.net/libnet). URL: http://pylibnet.sourceforge.net License: GPL Platform: Unix Requires: libnet Binaries: Linux Categories: Networking David Margrave (davidma@eskimo.com) -- pylibnet-1.0 -- Python Module for libnet packet construction library. From Oleg Broytmann Wed Oct 17 15:34:21 2001 From: Oleg Broytmann (Oleg Broytmann) Date: Wed, 17 Oct 2001 18:34:21 +0400 Subject: mimedecode.py version 1.0.1 Message-ID: Hello! MIME decode WHAT IS IT Mail users, especially in non-English countries, often find that mail messages arrived in different formats, with different content types, in different encodings and charsets. Usually this is very good because it allows us to use apropriate formats/encodings/whatever. Sometimes, though, some unification is desireable. For example, one may want to put mail messages into an archive, make HTML indicies, run search indexer, etc. In such situations converting messages to text in one character set and skipping some binary atachmetnts will be much desireable. Here is the solution - mimedecode.py. This is a program to decode MIME messages. The program expects one input file (either on command line or on stdin) which treated as an RFC822 mesage, and decoded to stdout. If the file is not an RFC822 message the file just piped to stdout one-to-one. If it is a simple RFC822 message it is just decoded as one part. If it is a MIME message with multiple parts ("attachments") all parts decoded. Decoding can be controlled by command-line options. WHAT'S NEW in version 1.0.1 Removed -s -S -f -F options. Instead more generic approach used: new options -d -D -p -P give much more flexible control on the lists of headers to decode. WHERE TO GET Master site: http://phd.pp.ru/Software/Python/#mimedecode Faster mirrors: http://phd.by.ru/Software/Python/#mimedecode http://phd2.chat.ru/Software/Python/#mimedecode Requires: Python 2.0+ (actually tested with 2.1.1), configured mailcap database. Documentation (also included in the package): http://phd.pp.ru/Software/Python/mimedecode.txt http://phd.by.ru/Software/Python/mimedecode.txt http://phd2.chat.ru/Software/Python/mimedecode.txt AUTHOR Oleg Broytmann COPYRIGHT Copyright (C) 2001 PhiloSoft Design LICENSE GPL Oleg. -- Oleg Broytmann http://phd.pp.ru/ phd@phd.pp.ru Programmers don't die, they just GOSUB without RETURN. From PyChecker Wed Oct 17 19:41:29 2001 From: PyChecker (Neal Norwitz) Date: Wed, 17 Oct 2001 14:41:29 -0400 Subject: ANN: PyChecker v0.8.5 Message-ID: A new version of PyChecker is available for your hacking pleasure. PyChecker is a tool for finding bugs in python source code. It finds problems that are typically caught by a compiler for less dynamic languages, like C and C++. Comments, criticisms, new ideas, and other feedback is welcome. Changes from 0.8.4 to 0.8.5: * Add check for using builtin function/method const (None) return value (e.g., not_a_new_list = [].sort()) * Add check for builtin object method calls for right # args (e.g., [].count(), {}.keys(), file.seek(0)) * Add check for object method calls for right # args (calling object when type is known, ie instatiated locally) * Add check for modifying a parameter that has a default value (e.g., def func(mutable = []): mutable.append(0)) * Add check for using future keywords (e.g., yield) * Add check for using unary positive on variables (e.g., +x) * Add check for recursive calls to __repr__ implementations (`self`) * Add -X/--reimport option to turn off various module reimport warnings * Add -V/--version option for printing PyChecker version * Fix some spurious warnings for inconsistent return value types * Fix spurious warning from calling functions like: zip(*args) * Fix -F/--rcfile option so it really works PyChecker is available on Source Forge: Web page: http://pychecker.sourceforge.net/ Project page: http://sourceforge.net/projects/pychecker/ Neal -- pychecker@metaslash.com From jason-dated-1004563970.ab256f@mastaler.com Wed Oct 17 22:32:50 2001 From: jason-dated-1004563970.ab256f@mastaler.com (Jason R. Mastaler) Date: Wed, 17 Oct 2001 15:32:50 -0600 Subject: [ANNOUNCE] TMDA 0.38 - SPAM reduction system for Postfix & qmail Message-ID: TMDA now supports the Postfix MTA in addition to qmail. TMDA is an OSI certified Python application designed to significantly reduce the amount of SPAM/UCE you receive. TMDA combines a "whitelist" (for known/trusted senders), a "blacklist" (for undesired senders), and a cryptographically enhanced confirmation system (for unknown, but legitimate senders). TMDA strives to be more effectual, yet less time-consuming than traditional filters. For more information including a demonstration, download locations and installation instructions, visit the TMDA homepage: Enjoy, Jason R. Mastaler

TMDA 0.38 - SPAM reduction system for Postfix & qmail. (17-Oct-2001) From s340gb@engineer.com Tue Oct 16 07:45:46 2001 From: s340gb@engineer.com (340TeamB) Date: Tue, 16 Oct 2001 02:45:46 -0400 (EDT) Subject: [Module] pyrijndaelv1.0 Message-ID: pyrijndaelv1.0 -------------- This module implements the Rijndael block cipher encryption algorithm with a HIGH encrypting speed. (written in C). The module is to implement the Rijndael block cipher encryption algorithm which has been endorsed by the National Institute of Standards and Technology(NIST) to be the new Advanced Encryption Standard(AES). It is written in C so its encryption speed is pretty fast. And multi platform is supported. URL: http://www.cs.mu.oz.au/SE-projects/s340gb/downloadPage/index.html Download: http://www.cs.mu.oz.au/SE-projects/s340gb/downloadPage/download/pyrijndael.tgz License: Open Source Platform: Win32,Solaris,Linux Categories: Encryption/Encoding 340TeamB (s340gb@engineer.com) http://www.cs.mu.oz.au/SE-projects/s340gb/downloadPage/index.html -- pyrijndaelv1.0 -- This module implements the Rijndael block cipher encryption algorithm with a HIGH encrypting speed. (written in C). From shiblon@yahoo.com Wed Oct 17 16:48:06 2001 From: shiblon@yahoo.com (Chris Monson) Date: Wed, 17 Oct 2001 11:48:06 -0400 (EDT) Subject: [Module] cmTemplate/0.1 Message-ID: cmTemplate/0.1 -------------- Generate formatted text from a powerful template language using Python The cmTemplate module was originally designed to help writers of CGI programs to keep HTML tags out of their code. It is a template parsing and realization engine that allows coders to focus on logic, and designers to focus on format. It sports a very expressive and powerful syntax that is reminiscient of (and borrowed heavily from) Python itself, which we all know is the best language around :-). Templates have special PHP-style tags embedded in them. These tags are processed by the cmTemplate engine, and are replaced with appropriate text. Simple text replacement, loops, file inclusion, if-elif-else, and other such structures are available in the template language, as well as the ability to execute arbitrary Python code. cmTemplate was written with performance in mind. It parses files only when necessary, and is lightning fast at producing output from a parsed file. The memory footprint is minimal once the file has been parsed. It can and will play very nicely with things like FastCGI and the various mod_python variants that exist in the wild today. Don't let the version number fool you! This module is fairly mature. I'm very conservative about version numbers. I think GNOME should have taught us all a lesson there ;-). URL: http://www.bouncingchairs.net/oss Download: http://www.bouncingchairs.net/oss/cmTemplate-0.1.tar.gz License: LGPL Requires: re, string, os, os.path, stat Categories: Web Chris Monson (shiblon@yahoo.com) http://www.bouncingchairs.net -- cmTemplate/0.1 -- Generate formatted text from a powerful template language using Python From fdrake@acm.org Thu Oct 18 22:00:20 2001 From: fdrake@acm.org (Fred L. Drake, Jr.) Date: Thu, 18 Oct 2001 17:00:20 -0400 Subject: Python 2.2 beta 1 documentation Message-ID: The Python 2.2 beta 1 documentation is now available in the usual places. The HTML packages are there as always, and one new package: a version for the iSilo document reader for PalmOS devices (see www.iSilo.com). It has problems still, but as long as you navigate by hyperlinks it should work just fine. ;-) If people are interested in this format I can work on solving the problems with it, so please let me know if you think you'll be interested in actually using docs in this format. -Fred -- Fred L. Drake, Jr. PythonLabs at Zope Corporation From barry@zope.com Fri Oct 19 18:00:26 2001 From: barry@zope.com (Barry A. Warsaw) Date: Fri, 19 Oct 2001 13:00:26 -0400 Subject: RELEASED: Python 2.2b1 is out! Message-ID: We've released Python 2.2b1, the first beta release of Python 2.2, for your ebullience, ecdysis, and embarcation. As this is the first beta release, we are now in feature freeze for Python 2.2. http://www.python.org/2.2/ Give it a good try, and report what breaks to the bug tracker: http://sourceforge.net/bugs/?group_id=5470 New features in this release include: - New-style classes are now always dynamic, except for built-in and extension types - A very subtle syntactical pitfall in list comprehensions was fixed - getattr(obj, name, default) now only catches AttributeError - Weak reference objects are now part of the core and offers a C API. - unicode(obj) now behaves more like str(obj) - isinstance() now accepts more objects as its first and second arguments - os and posix supports chroot(), setgroups() and unsetenv() where available. The stat(), fstat(), statvfs() and fstatvfs() functions now return "pseudo-sequences" whose elements can be accessed by name or index. The time module's localtime(), gmtime() and strptime() are pseudo-sequences too. - Many improvements to the profiler As usual, Andrew Kuchling is writing a gentle introduction to the most important changes (currently excluding type/class unification), titled "What's New in Python 2.2": http://www.amk.ca/python/2.2/ There is an introduction to the type/class unification at: http://www.python.org/2.2/descrintro.html Thanks to everybody who contributed to this release, including all the alpha testers! brought-to-you-by-the-letter-"E"-ly y'rs, -Barry From christopher.abraham@verizon.net Fri Oct 19 18:01:43 2001 From: christopher.abraham@verizon.net (Chris Abraham) Date: Fri, 19 Oct 2001 13:01:43 -0400 Subject: ZPugDC Meeting 25 October Message-ID: Hi All: I have been under water all month and I am sorry that I have not been better at keeping this community list going. Anyway, the reason there has been so much frustration is because ZPUG.org has been split between two servers and I just wanted to remain hands-off until things resolved. They didn't. Well, I have not been able to get onto the server to change the front pager, but we have the delightful and elegant Mr. Jim Fulton, the father of Zope and the amazing (so amazing that even the Python kids love it) ZODB! So, from 7-9 on October 25th, we will bask in Jim's presentation as well as really spending more time and energy keeping it simple. There will be plenty of time for questions, a liberal half-time schmooze, and whatnot. We will be able to fit into the larger room because Jim will be bringing Zope Corp's little overhead and a fancy laptop. Bring your notebooks, a lot of fun will be had by all. Joya Subudhi of Foretec Seminars will be sharing with us all of the joy of the upcoming Python 10 conference -- and Python 10 will be plying us with drinks at Brickskeller afterwards. Also, we are getting our server house in order and the folks and imeme are generous enough to offer ZPug a hope gratis! They do amazing work so if you have any Zope Hosting needs, please go check them out and tell them you got the message from us! Thanks, all, for your patience! Chris -- Chris Abraham, Managing Director, beehive North America +1 202 548 0410 fax:+1 202 478 0276 page:+1 202 229 4925 101 14th St, SE, BSMT, Washington, DC 20003 United States From fdrake@acm.org Fri Oct 19 21:46:13 2001 From: fdrake@acm.org (Fred L. Drake, Jr.) Date: Fri, 19 Oct 2001 16:46:13 -0400 Subject: Python documentation for iSilo Message-ID: I've re-worked the iSilo version of the documenation for the first beta of Python 2.2; each manual is now a separate document for iSilo, so you can pick & choose the documents you need. They are also smaller than the first test version (by about 1/3 of a megabyte), which is a nice savings. This version includes a few post-beta documentation fixes. To try it out, download the file isilo-2.2b1+.zip from: ftp://ftp.python.org/pub/python/doc/2.2b1/ Please send comments on this version of the docs to me at: python-docs@python.org Enjoy! -Fred -- Fred L. Drake, Jr. PythonLabs at Zope Corporation From info@pythonware.com Mon Oct 22 14:40:01 2001 From: info@pythonware.com (PythonWare) Date: Mon, 22 Oct 2001 15:40:01 +0200 Subject: ANNOUNCEMENT: The PythonWare PY22 distribution (preview, october 22, 2001) Message-ID: for bleeding edge users: The PythonWare PY22 distribution is a small and self-contained Python distribution for Windows. This kit includes Python 2.2b1, Tkinter/Tk 8.3.3, PIL 1.1.2, and other useful extensions. Get your copy from: http://www.pythonware.com/products/python/preview.htm Note that this is an unsupported preview version. Commercial support for PythonWare kits is available to PythonWorks customers. For more information, contact us at info@pythonware.com enjoy, the pythonworks team "Secret Labs -- makers of fine pythonware since 1997." From rozen@mcn.org Mon Oct 22 05:42:53 2001 From: rozen@mcn.org (Don Rozenberg) Date: Sun, 21 Oct 2001 21:42:53 -0700 Subject: PAGE - A drag and drop GUI generator now avail for Win32 Message-ID: PAGE can now be installed on Win32. PAGE is a tool which helps to create GUI for Python programs. It uses Tk and Tix widgets. PAGE is not an end-all, be-all tool, but rather one that attempts to ease the burden on the Python programmer. It is aimed at the user who will put up with a less-than-general GUI capability in order to get an easily generated GUI. It does not build an entire application but rather is aimed at building a single GUI window. PAGE is based on Stewart Allen's Visual Tcl program. In fact, it is vTcl, with an additional module that generates Python code and some bug fixes. PAGE is built on version 1.2.2 of Visual Tcl, version 8.1.1 of Tix, and Tcl/Tk version 8.3. It supports many Tk widgets and a subset of the Tix widget set. The user will have to acquire and install Tix and tcl to use this program. Page works with Python 2.1.1 and now runs on Linux and Win32. It has been tested on Linux Mandrake 8.1 and Win98. The PAGE web site is http://page.sourceforge.net -- Don Rozenberg 707-882-3601 rozen@mcn.org From fdrake@acm.org Mon Oct 22 19:41:46 2001 From: fdrake@acm.org (Fred L. Drake, Jr.) Date: Mon, 22 Oct 2001 14:41:46 -0400 Subject: GNU Info documentation for Python 2.1.1 Message-ID: Milan Zamazal has contributed versions of the Python documentation in GNU Info format for Python 2.1.1. If you've been itching for this, grab your copy today! ftp://ftp.python.org/pub/python/doc/2.1.1/ -Fred -- Fred L. Drake, Jr. PythonLabs at Zope Corporation GNU Info documentation for Python 2.1.1 -- The standard Python documentation is once more available in GNU Info format! From richard@bizarsoftware.com.au Tue Oct 23 02:43:11 2001 From: richard@bizarsoftware.com.au (Richard Jones) Date: Tue, 23 Oct 2001 11:43:11 +1000 Subject: Roundup 0.3.0pre3 - an issue tracking system Message-ID: **PREVIEW RELEASE** This release contains several new features which will require migration, so we're releasing this preview for the bleeding-edge users. **NOTE** existing users _must_ read the MIGRATION.txt that accompanies the source. This release contains a bunch of changes and bug fixes. See the CHANGES file for details. Source and documentation is available at the website: http://roundup.sourceforge.net/ Release Info (via download page): http://sourceforge.net/project/showfiles.php?group_id=31577 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.0+ 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 and three database back-ends. From sdeibel@archaeopteryx.com Tue Oct 23 16:14:40 2001 From: sdeibel@archaeopteryx.com (Stephan R.A. Deibel) Date: Tue, 23 Oct 2001 11:14:40 -0400 (EDT) Subject: Wing IDE version 1.1b8 Message-ID: Hi, We're happy to announce the release of version 1.1b8 of Wing IDE. Wing IDE is an integrated development environment for the Python programming language, available for Windows and Linux. It includes a networked graphical debugger, source browser, code editor, and project manager. Wing IDE makes programming with Python even more productive. New in this release: - Multi-view source editor mode for reduced window clutter - Improved window and dialog management - Expanded indentation manager - Improved debugger support for modules loaded with partial path name - Support for python_d.exe debug process on Windows - Many bug fixes (see CHANGELOG in the release) For more information, see http://www.wingide.com/wingide Thanks, The Archaeopteryx Team ------------------------------------------------------------------------ Archaeopteryx Software, Inc. Wing IDE for Python www.archaeopteryx.com Take Flight! From john.thingstad@chello.no Wed Oct 24 15:34:22 2001 From: john.thingstad@chello.no (John Thingstad) Date: Wed, 24 Oct 2001 10:34:22 -0400 (EDT) Subject: [Web Site] Formula Message-ID: Formula ------- Formula is a logic language written in python Formula allows reasoning in FOL or with Horn Clauses. It allows relations to be read from a database. If supports python extentions to be added to the language via a preprocessor. URL: formula.sourceforge.net Categories: Miscellany, Artificial Intelligence John Thingstad (john.thingstad@chello.no) -- Formula -- Formula is a logic language written in python From mlh@idi.ntnu.no Thu Oct 25 16:41:49 2001 From: mlh@idi.ntnu.no (Magnus Lie Hetland) Date: Thu, 25 Oct 2001 17:41:49 +0200 Subject: ANN: Anygui 0.1a3 Message-ID: Greetings! Anygui 0.1a3 has been released, and may be dowloaded from the anygui project page (http://sourceforge.net/projects/anygui). Anygui is a generic GUI package which allows you to write programs that will work with several backends, such as Tkinter, wxPython, PythonWin and Java Swing. The name is inspired by the standard library package anydbm, because the behaviour is similar: You write your program using the Anygui API, and Anygui figures out which back-end to use. Since the second alpha, tentative support has been added for the Model/View architecture (also called Document/View). For more information, please visit the Anygui web site at http://anygui.sf.net Magnus Lie Hetland, Anygui admin -- Magnus Lie Hetland http://hetland.org From j.spies@hccnet.nl Fri Oct 26 09:53:30 2001 From: j.spies@hccnet.nl (Jaap Spies) Date: Fri, 26 Oct 2001 10:53:30 +0200 Subject: PyNOVAS (Python & NOVAS) 0.1a astrometric software Message-ID: Hi, If you are a sailor with interest in celestial navigation or an (amateur)astronomer who wishes to compute the position of the Moon with sub-meter precision or if you want to make your own 'Astronomical Almanac', please checkout: http://pynovas.sourceforge.net/ This software is in first alpha release, but it can be used if you know what you are doing. See for background information: http://aa.usno.navy.mil/software/novas/novas_info.html http://ssd.jpl.nasa.gov/eph_info.html Jaap Spies From stephen_purcell@yahoo.com Mon Oct 29 08:15:59 2001 From: stephen_purcell@yahoo.com (Steve Purcell) Date: Mon, 29 Oct 2001 09:15:59 +0100 Subject: [ANN] 'dbdoc' database schema documentation generator Message-ID: If you have ever wanted javadoc-style HTML documentation for your database schemas, or a consistent way of programatically inspecting a database schema, then 'dbdoc' may interest you. This small project defines a simple Python API for inspecting database schemas, and uses it to generate documentation (optionally incorporating descriptive text placed in an auxiliary file). Support is initially provided for PostgreSQL. Would anyone like to volunteer to implement the schema introspection API for another database? If so, get in touch! To find out more, please visit http://dbdoc.sourceforge.net/ , where dbdoc has just seen its fourth release. Best wishes to all, -Steve -- Steve Purcell, Pythangelist Get testing at http://pyunit.sourceforge.net/ From jack@oratrix.nl Tue Oct 30 14:14:39 2001 From: jack@oratrix.nl (Jack Jansen) Date: Tue, 30 Oct 2001 15:14:39 +0100 Subject: MacPython 2.2b1 released Message-ID: MacPython 2.2b1 has been released. This is a beta distribution which will undoubtedly still contain bugs. Installers in various forms can be downloaded via http://www.cwi.nl/~jack/macpython.html . Python is a high-level programming language that is suitable for simple scripting tasks as well as writing large applications. MacPython offers a lot of Mac-specific extensions, including access to all major MacOS Toolbox modules (QuickDraw, QuickTime, AppleScript and many more), an Integrated Development Environment (in Python!), frameworks for windowing applications, unix-compatible cgi-scripting, image-manipulation libraries, numerical libraries, tk-based machine independent windowing and lots more. It also uniquely among Pythons allows you to create fully selfcontained (and, hence, distributable) applications without needing a C compiler or anything. What's new in MacPython 2.2? - Types and classes are unified, so you can subclass builtin types. - Iterators and generators allow objects to be "looped over" and producer/consumer-style programming. - Accept both unix- and mac-style newlines - Automatic garbage collection - Better Carbon support and better integration with OS X command line Python Known problems with 2.2b1: - Does not work on Mac OS X multiprocessor machines. - BuildApplication fails for programs using packages. -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.cwi.nl/~jack | ++++ see http://www.xs4all.nl/~tank/ ++++ From hinsen@cnrs-orleans.fr Tue Oct 30 18:04:14 2001 From: hinsen@cnrs-orleans.fr (Konrad Hinsen) Date: Tue, 30 Oct 2001 19:04:14 +0100 Subject: High-level parallelization in Python Message-ID: The current development version of Scientific Python contains an experimental package for high-level parallelization. It is based on the Bulk Synchronous Parallel (BSP) paradigm (see www.bsp-worldwide.org for more information), which is much simpler than the more popular message-passing paradigm and also safer, especially due to the impossibility of deadlocks. The main initial goal of the Python BSP package is a well-integrated Pythonesque implementation of BSP that makes parallel programming accessible to a wider range of developers. Performance has been a secondary criterion until now and can certainly be improved, but the current implementation is quite usable for coarse-grained parallelism. The package is labelled "experimental" because it has only been tested with a very small number of applications; future experience may lead to modifications that are not necessarily fully compatible with the current release. Scientific Python 2.3.1 is available from ftp://dirac.cnrs-orleans.fr/pub/ScientificPython/ScientificPython-2.3.1.tar.gz Prerequisites are Python 1.5.2 or higher (2.1 recommended for full access to all features) and an MPI implementation. A tutorial is included, but can also be obtained separately from http://dirac.cnrs-orleans.fr/programs/BSP_Tutorial.pdf -- ------------------------------------------------------------------------------- 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 Oleg Broytmann Tue Oct 30 18:40:54 2001 From: Oleg Broytmann (Oleg Broytmann) Date: Tue, 30 Oct 2001 21:40:54 +0300 Subject: mimedecode.py version 1.1 Message-ID: Hello! mimedecode.py WHAT IS IT Mail users, especially in non-English countries, often find that mail messages arrived in different formats, with different content types, in different encodings and charsets. Usually this is very good because it allows us to use apropriate formats/encodings/whatever. Sometimes, though, some unification is desireable. For example, one may want to put mail messages into an archive, make HTML indicies, run search indexer, etc. In such situations converting messages to text in one character set and skipping some binary atachmetnts will be much desireable. Here is the solution - mimedecode.py. This is a program to decode MIME messages. The program expects one input file (either on command line or on stdin) which treated as an RFC822 mesage, and decoded to stdout. If the file is not an RFC822 message the file just piped to stdout one-to-one. If it is a simple RFC822 message it is just decoded as one part. If it is a MIME message with multiple parts ("attachments") all parts decoded. Decoding can be controlled by command-line options. WHAT'S NEW in version 1.1.0 Continuation parameters (RFC2231) are now fully supported. WHERE TO GET Master site: http://phd.pp.ru/Software/Python/#mimedecode Faster mirrors: http://phd.by.ru/Software/Python/#mimedecode http://phd2.chat.ru/Software/Python/#mimedecode Requires: Python 2.0+ (actually tested with 2.1.1), configured mailcap database. Documentation (also included in the package): http://phd.pp.ru/Software/Python/mimedecode.txt http://phd.by.ru/Software/Python/mimedecode.txt http://phd2.chat.ru/Software/Python/mimedecode.txt AUTHOR Oleg Broytmann COPYRIGHT Copyright (C) 2001 PhiloSoft Design LICENSE GPL Oleg. -- Oleg Broytmann http://phd.pp.ru/ phd@phd.pp.ru Programmers don't die, they just GOSUB without RETURN. From jh@web.de Tue Oct 30 19:56:13 2001 From: jh@web.de (Jürgen Hermann) Date: Tue, 30 Oct 2001 20:56:13 +0100 Subject: [ANN] PIRXX 1.2 Message-ID: PIRXX provides a Python InteRface to Xerces and Xalan, integrating it into PyXML. This release features a stable and complete SAX2 binding. Links: * Homepage - http://pirxx.sourceforge.net/ * Download - http://sourceforge.net/project/showfiles.php?group_id=25711&release_id=58705 Changes: * Added locator support to ContentHandler interface * Implemented DTDHandler and EntityResolver * Implemented the LexicalHandler interface and SAX2 property * Some changes to SAX2 event calls so that PIRXX behaves more like xmlproc, especially delivering None instead of empty strings for empty public IDs and the like * PIRXX passes adapted "test_sax.py" * Removed reference leaks (by using PirxxObject nearly everywhere) From jh@web.de Tue Oct 30 22:54:28 2001 From: jh@web.de (Jürgen Hermann) Date: Tue, 30 Oct 2001 23:54:28 +0100 Subject: [ANN] MoinMoin 0.10 Message-ID: A WikiWikiWeb is a collaborative hypertext environment, with an emphasis on easy access to and modification of information. MoinMoin is a Python WikiClone that allows you to easily set up your own wiki, only requiring a Web server and a Python installation (1.5.2, 1.6 or 2.0). The most prominent change of this release is a fix for a UNIX time billenium bug (affecting RecentChanges sorting and page diffs). See below for a list of new features that were integrated since the last release. Following version 0.10, there will be some major refactorings regarding storage and output generation (see TODO for details). This version is still Python 1.5.2 compatible, but it's not extensively tested for that version and some parts of the system might not work there, especially seldom used macros and actions. Bug reports welcome! Homepage: http://moin.sourceforge.net/ Download: http://sf.net/project/showfiles.php?group_id=8482&release_id=59369 http://prdownloads.sourceforge.net/moin/ Mailing lists: http://lists.sourceforge.net/lists/listinfo/moin-user http://lists.sourceforge.net/lists/listinfo/moin-devel New features: * "#deprecated" processing instruction * config entry "SecurityPolicy" to allow for customized permissions (see "security.py" for more) * added distutils support * though not extensively tested, the standalone server now does POST requests, i.e. you can save pages; there are still problems with persistent global variables! It only works for Python >= 2.0. * "bang_meta" config variable and "!NotWikiWord" markup * "url_mappings" config variable to dynamically change URL prefixes (especially useful in intranets, when whole trees of externally hosted documents move around) * setting "mail_smarthost" and "mail_from" activates mailing features (sending login data on the UserPreferences page) * very useful for intranet developer wikis, a means to view pydoc documentation, formatted via a XSLT stylesheet, for details see http://purl.net/wiki/python/TeudViewer?module=MoinMoin.macro.TeudView or MoinMoin/macro/TeudView.py * "LocalSiteMap" action by Steve Howell * Added FOLDOC to intermap.txt Bugfixes: * Full config defaults, import MoinMoin now works w/o moin_config.py * Better control over permissions with config.umask * Bugfix for a UNIX time billenium bug (affecting RecentChanges sorting and page diffs) * data paths with directory names containing dots caused problems From grahamd@dscpl.com.au Wed Oct 31 06:09:51 2001 From: grahamd@dscpl.com.au (Graham Dumpleton) Date: 30 Oct 2001 22:09:51 -0800 Subject: ANN: OSE 7.0 finally available. Message-ID: After almost a year of beta releases, OSE 7.0 is finally available. At its core, OSE is a C++ class library for general purpose programming, but also includes support for building event driven systems and distributed applications using a request/reply and publish/subscribe style service agent framework. The ability to interact with an application is facilitated using a HTTP servlet framework and RPC over HTTP interfaces. In short, OSE could be said to take technology from event driven real time systems, message oriented middleware, application server and web service technology and wraps it all into one. Although C++ at its core, OSE also provides wrappers for the Python programming language. This mix means that OSE serves as a useful platform for building standalone or distributed applications in Python, C++ or a mix of both. Its support of both XML-RPC and SOAP protocols through a single service interface makes it ideal for building web based services. Further information on OSE and the software itself, can be found at: http://ose.sourceforge.net This includes over 100 pages of documentation on the Python interfaces alone. The Python documentation can be viewed on the site as HTML, or as a single PDF file at: http://ose.sourceforge.net/python-manual.pdf OSE is released under the QPL. This release is the culmination of over 10 years of development, OSE first being available over the Internet in 1993.