From paul at boddie.org.uk Sun May 1 23:44:46 2005 From: paul at boddie.org.uk (Paul Boddie) Date: 1 May 2005 14:44:46 -0700 Subject: WebStack 0.9 Message-ID: <1114983886.704882.267550@o13g2000cwo.googlegroups.com> Announcing release 0.9 of WebStack - a common API for Python Web applications. Applications written using the WebStack API can be deployed on the following servers and frameworks: BaseHTTPRequestHandler, CGI, Jython/Java Servlet API, mod_python, Twisted, Webware, WSGI and Zope 2. It should therefore be possible to develop applications and to run them with a single command using Python's standard library server modules, then to deploy them alongside other applications in more sophisticated environments when this becomes necessary or desirable. The PyPI entry for WebStack is here: http://www.python.org/pypi?%3Aaction=search&name=WebStack The public Web page for WebStack is here: http://www.boddie.org.uk/python/WebStack.html Since the last release, some introductory documentation has been added and some general improvements made to the stability and quality of the package. Have fun! Paul From richardjones at optushome.com.au Mon May 2 07:59:46 2005 From: richardjones at optushome.com.au (Richard Jones) Date: Mon, 2 May 2005 15:59:46 +1000 Subject: Roundup Issue Tracker release 0.7.12 Message-ID: <200505021559.46656.richardjones@optushome.com.au> 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. 0.7.12 is a bug fix release: - handle capitalisation of class names in text hyperlinking (sf bug 1101043) - quote full-text search text in URL generation - fixed problem migrating mysql databases - fix search_checkboxes macro (sf patch 1113828) - fix bug in date editing in Metakit - allow suppression of search_text in indexargs_form (sf bug 1101548) - hack to fix some anydbm export problems (sf bug 1081454) - ignore AutoReply messages (sf patch 1085051) - fix ZRoundup syntax error (sf bug 1122335) - fix RDBMS clear() so it resets all class itemid counters If you're upgrading from an older version of Roundup you *must* follow the "Software Upgrade" guidelines given in the maintenance documentation. Roundup requires python 2.1.3 or later for correct operation. To give Roundup a try, just download (see below), unpack and run:: python demo.py Source and documentation is available at the website: http://roundup.sourceforge.net/ Release Info (via download page): http://sourceforge.net/projects/roundup Mailing lists - the place to ask questions: http://sourceforge.net/mail/?group_id=31577 About Roundup ============= Roundup manages a number of issues (with flexible properties such as "description", "priority", and so on) and provides the ability to: (a) submit new issues, (b) find and edit existing issues, and (c) discuss issues with other participants. The system will facilitate communication among the participants by managing discussions and notifying interested parties when issues are edited. One of the major design goals for Roundup that it be simple to get going. Roundup is therefore usable "out of the box" with any python 2.1+ installation. It doesn't even need to be "installed" to be operational, though a disutils-based install script is provided. It comes with two issue tracker templates (a classic bug/feature tracker and a minimal skeleton) and seven database back-ends (anydbm, bsddb, bsddb3, sqlite, metakit, mysql and postgresql). From richardjones at optushome.com.au Mon May 2 08:21:49 2005 From: richardjones at optushome.com.au (Richard Jones) Date: Mon, 2 May 2005 16:21:49 +1000 Subject: Roundup Issue Tracker release 0.8.3 Message-ID: <200505021621.49200.richardjones@optushome.com.au> 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. This 0.8.3 release adds one feature and fixes some bugs: Feature: - chinese translation by limodou Fixed: - fix reference to The Zope Book in Roundup FAQ - disabled file logging in Roundup test suite (sf bug 1155649) - return original string if message issue xref isn't valid - fix nosyreaction.py to stop it setting the nosy list unnecessarily (see doc/upgrading.txt for how to fix in your trackers) - after logout, always display tracker home page - web forms don't create new items if no item properties are set from UI - item creation failed if multilink fields had invalid entries (sf bug 1177602) - fix bdist_rpm (sf bug 1164328) - fix checking of "Email Access" for Anonymous email registration (sf bug 1177057) - disable "Email Access" for Anonymous by default to stop spam regsitering users on public trackers - send errors in the web interface to a logfile by default. Use the "debug" multiprocess mode (roundup-server) or the DEBUG_TO_CLIENT var (roundup.cgi) to have the errors appear in your browser - fix setgid typo (sf bug 1171346) - fix faulty find_template filename facility (sf bug 1163629) - fix roundup-admin "export" so it creates the target dir if needed - "fix" roundup-admin "import" to not use "universal newline support" since the csv module appears to have its own ideas about such things (sf bug 1163890) - fix installation docs referring to old-style configuration variables If you're upgrading from an older version of Roundup you *must* follow the "Software Upgrade" guidelines given in the maintenance documentation. Roundup requires python 2.3 or later for correct operation. To give Roundup a try, just download (see below), unpack and run:: python demo.py Source and documentation is available at the website: http://roundup.sourceforge.net/ Release Info (via download page): http://sourceforge.net/projects/roundup Mailing lists - the place to ask questions: http://sourceforge.net/mail/?group_id=31577 About Roundup ============= Roundup 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.3+ installation. It doesn't even need to be "installed" to be operational, though a disutils-based install script is provided. It comes with two issue tracker templates (a classic bug/feature tracker and a minimal skeleton) and five database back-ends (anydbm, sqlite, metakit, mysql and postgresql). From jfontain at free.fr Mon May 2 21:23:09 2005 From: jfontain at free.fr (jfontain@free.fr) Date: 2 May 2005 12:23:09 -0700 Subject: ANNOUNCE: tclpython-4.0 Message-ID: <1115061789.666424.47030@g14g2000cwa.googlegroups.com> ### CHANGES ### --- version 4.0 --- allowed evaluation of Tcl code in parent Tcl interpreter from Python interpreters (thanks to Daniel Savard) added tclpython.h file for possible use in extensions to tclpython allowed Tcl interpreter access from C code so tclpython can be extended included Tcl stubs checking macros in tclpython.c ### README ### tclpython version 4.0: a Python package for Tcl This package allows the execution of Python (version 2.2 or above) code from a Tcl interpreter, as in: package require tclpython 4 set interpreter [python::interp new] $interpreter exec {print("Hello World")} puts [$interpreter eval 3/2.0] python::interp delete $interpreter You can actually create several Python interpreters this way, if the tclpython package was linked against a Python library compiled with threads support, otherwise only 1 Python interpreter can exist at a time. Starting with version 4.0, you can also access and use the parent Tcl interpreter from a Python interpreter: package require tclpython 4 set interpreter [python::interp new] puts [$interpreter eval {tcl.eval('clock format [clock seconds]')}] python::interp delete $interpreter You should pay attention to space with the python interpreter. The line in the sample will work but this one will not: puts [$interpreter eval { tcl.eval('clock format [clock seconds]') }] This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library 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. ### you may find it now at my homepage: http://jfontain.free.fr/tclpython-4.0.tar.gz http://jfontain.free.fr/tclpython-4.0-1.i386.rpm http://jfontain.free.fr/tclpython-4.0-1.spec http://jfontain.free.fr/tclpython.htm From Facundo.Batista at telefonicamoviles.com.ar Mon May 2 17:52:35 2005 From: Facundo.Batista at telefonicamoviles.com.ar (Batista, Facundo) Date: Mon, 2 May 2005 12:52:35 -0300 Subject: PyMoney Message-ID: People: I'm glad to announce the kick-off of PyMoney project: http://sourceforge.net/projects/pymoney The project goal is to produce a Money module for Python. If yu want to participate, start reading the pep.txt file, which is the result of two Open Sessions in PyCon2005 mixed with previous Money attempts. Facundo Batista Desarrollo de Servicios Movistar (54 11) 5130-4643 Cel: 15 5097 5024 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ADVERTENCIA. La informaci?n contenida en este mensaje y cualquier archivo anexo al mismo, son para uso exclusivo del destinatario y pueden contener informaci?n confidencial o propietaria, cuya divulgaci?n es sancionada por la ley. Si Ud. No es uno de los destinatarios consignados o la persona responsable de hacer llegar este mensaje a los destinatarios consignados, no est? autorizado a divulgar, copiar, distribuir o retener informaci?n (o parte de ella) contenida en este mensaje. Por favor notif?quenos respondiendo al remitente, borre el mensaje original y borre las copias (impresas o grabadas en cualquier medio magn?tico) que pueda haber realizado del mismo. Todas las opiniones contenidas en este mail son propias del autor del mensaje y no necesariamente coinciden con las de Telef?nica Comunicaciones Personales S.A. o alguna empresa asociada. Los mensajes electr?nicos pueden ser alterados, motivo por el cual Telef?nica Comunicaciones Personales S.A. no aceptar? ninguna obligaci?n cualquiera sea el resultante de este mensaje. Muchas Gracias. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-announce-list/attachments/20050502/145e9ff0/attachment.htm From alberanid at libero.it Mon May 2 23:51:28 2005 From: alberanid at libero.it (Davide Alberani) Date: Mon, 02 May 2005 21:51:28 GMT Subject: IMDbPY 1.9 released Message-ID: IMDbPY 1.9 is available (tgz, deb, rpm, exe) from: http://imdbpy.sourceforge.net/ IMDbPY is a Python package useful to retrieve and manage the data of the IMDb movie database. With this release support for systems with limited CPU power and bandwidth (like PDA, mobile phones and hand-held devices) is introduced. Some bugs were fixed and now it's possible to search for "adult" titles. A GUI for Symbian Series 60 smart phones, developed by Tero Saarni, is available at http://kotisivu.mtv3.fi/terosaarni/python/imdbpygui/ IMDbPY aims to provide an easy way to access the IMDb's database using a Python script. Platform-independent and written in pure Python, it's independent from the data source (since IMDb provides two or three different interfaces to their database). IMDbPY is mainly intended for programmers and developers who want to build their Python programs using the IMDbPY package, but some example scripts - useful for the end users - are included. Other IMDbPY-based programs are available from the home page. -- Davide Alberani [PGP KeyID: 0x465BFD47] http://erlug.linux.it/~da/ From frank at niessink.com Mon May 2 23:54:59 2005 From: frank at niessink.com (Frank Niessink) Date: Mon, 02 May 2005 23:54:59 +0200 Subject: [ANN] Release 0.35 of Task Coach Message-ID: <4276A1B3.1080805@niessink.com> Hi all, I'm pleased to announce release 0.35 of Task Coach. New in this release: Bugs fixed: * Toolbar icons had a black background instead of a transparent background on some Windows platforms (1190230). * Package i18n was missing (1190967). Features added: * Internationalization support. Task Coach is available with Dutch and English user interface (1164461). * Added 'expand selected task' and 'collapse selected task' menu items to the view menu and the task context menu (1189978). Features removed: * 'Select' -> 'Completed tasks'. This can be done through the View menu too. What is Task Coach? Task Coach is a simple task manager that allows for hierarchical tasks, i.e. tasks in tasks. Task Coach is open source (GPL) and is developed using Python and wxPython. You can download Task Coach from: http://taskcoach.niessink.com https://sourceforge.net/projects/taskcoach/ A binary installer is available for Windows XP, in addition to the source distribution. Cheers, Frank From chad at zetaweb.com Tue May 3 02:20:10 2005 From: chad at zetaweb.com (Chad Whitacre) Date: Mon, 02 May 2005 20:20:10 -0400 Subject: [ANN] introducing pytest: a testing interpreter for Python Message-ID: <4276C3BA.7080307@zetaweb.com> Dear All, I'd like to announce the initial release of pytest. Pytest is a testing interpreter for Python. Unlike a testing /framework/, pytest requires nothing of its test scripts that is not included in the Python language itself. Pytests are regular Python scripts that are interpreted in a special way. Specifically, all explicit comparison statements (i.e., those with a comparison operator), are interpreted as tests, and their results are tallied and reported on following execution of the script. Documentation and downloads are available at: http://www.zetadev.com/software/pytest/ This initial release, version 0.3.0, is a development release. It will be of interest to those with a special interest in testing under Python, but will have bugs that may frustrate general users. Pytest is released under the following license: (c) 2005 Chad Whitacre This program is beerware. If you like it, buy me a beer someday. No warranty is expressed or implied. Thank you. Chad Whitacre http://www.zetadev.com/ chad [at] zetaweb [dot] com ---------- Announcement per http://python.org/community/clpya-guidelines.txt:

pytest 0.3.0 - a testing interpreter for Python. (03-May-05) From fuzzyman at gmail.com Tue May 3 11:21:45 2005 From: fuzzyman at gmail.com (Fuzzyman) Date: 3 May 2005 02:21:45 -0700 Subject: Voidspace Python Guestbook 1.4.1 (etc) In-Reply-To: References: Message-ID: <1115112105.128095.221140@g14g2000cwa.googlegroups.com> Oops... those links should have read : http://www.voidspace.org.uk/py?thon/guestbook.html http://www.voidspace.org.uk/cg?i-bin/voidspace/downman.py?fil?e=guestbo... http://www.voidspace.org.uk/cg?i-bin/voidspace/guestbook.py http://www.voidspace.org.uk/cg?i-bin/voidspace/guestbook2.py #~$%"?&# Very sorry about that. Fuzzyman http://www.voidspace.org.uk/python From python-url at phaseit.net Tue May 3 17:26:57 2005 From: python-url at phaseit.net (Simon Brunning) Date: Tue, 03 May 2005 15:26:57 +0000 Subject: Dr. Dobb's Python-URL! - weekly Python news and links (May 3) Message-ID: QOTW: "The security 'droids have decided that since the MS Office Suite is a 'standard' application then software written in MS Office VBA must be 'safe.' Any other development environments (such as Java, Perl, Cygwin) are 'unsafe' and can't be installed." - Peter Olsen "There's nothing wrong with open source projects catering to a market, and there's nothing wrong with running open source software on a proprietary operating system." - Steve Holden Efficiently running a regex over a large file: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/6a91f75b5bef1d0d Readable switch construction without lambdas or dictionaries: http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/410692 Lexical Analysis, Python-style: http://jason.diamond.name/weblog/2005/04/26/lexical-analysis-python-style What happened at Python UK: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/72446ebe0271f3cf http://www.reportlab.org/~andy/accu2005/accu2005.html Europython 2005: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/3ac8419954f9094a PyCon Brasil is a success! http://www.livejournal.com/users/gniemeyer/ Using the logging module: http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/412552 Sparklines in data: URIs: http://bitworking.org/news/Sparklines_in_data_URIs_in_Python Static typing is a sleeping policeman: http://www.itworld.com/AppDev/nls_ebiznaked050426/ Got some free time? The Python Challenge will fix that: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/7a755219ea1a5cec Let Python be Python: http://www.unixreview.com/documents/s=9700/ur0504k/ Yet another Python code sharing site: http://www.pycode.com/ Notable releases: ID3Writer http://www.comfortableshoe.co.uk/cgi-bin/blosxom.cgi/Home/Python/id3Writer.comments Snakelets 1.40 http://snakelets.sourceforge.net/ Roundup 0.8.3 http://roundup.sourceforge.net/ wxPython 2.6.0.0 http://wxpython.org/ PyDev 0.9.3 http://pydev.sourceforge.net/ PythonCAD 24 http://www.pythoncad.org/ ======================================================================== Everything Python-related you want is probably one or two clicks away in these pages: Python.org's Python Language Website is the traditional center of Pythonia http://www.python.org Notice especially the master FAQ http://www.python.org/doc/FAQ.html PythonWare complements the digest you're reading with the marvelous daily python url http://www.pythonware.com/daily Mygale is a news-gathering webcrawler that specializes in (new) World-Wide Web articles related to Python. http://www.awaretek.com/nowak/mygale.html While cosmetically similar, Mygale and the Daily Python-URL are utterly different in their technologies and generally in their results. For far, FAR more Python reading than any one mind should absorb, much of it quite interesting, several pages index much of the universe of Pybloggers. http://lowlife.jp/cgi-bin/moin.cgi/PythonProgrammersWeblog http://www.planetpython.org/ http://mechanicalcat.net/pyblagg.html comp.lang.python.announce announces new Python software. Be sure to scan this newsgroup weekly. http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python.announce Steve Bethard, Tim Lesher, and Tony Meyer continue the marvelous tradition early borne by Andrew Kuchling, Michael Hudson and Brett Cannon of intelligently summarizing action on the python-dev mailing list once every other week. http://www.python.org/dev/summary/ The Python Package Index catalogues packages. http://www.python.org/pypi/ The somewhat older Vaults of Parnassus ambitiously collects references to all sorts of Python resources. http://www.vex.net/~x/parnassus/ Much of Python's real work takes place on Special-Interest Group mailing lists http://www.python.org/sigs/ The Python Business Forum "further[s] the interests of companies that base their business on ... Python." http://www.python-in-business.org Python Success Stories--from air-traffic control to on-line match-making--can inspire you or decision-makers to whom you're subject with a vision of what the language makes practical. http://www.pythonology.com/success The Python Software Foundation (PSF) has replaced the Python Consortium as an independent nexus of activity. It has official responsibility for Python's development and maintenance. http://www.python.org/psf/ Among the ways you can support PSF is with a donation. http://www.python.org/psf/donate.html Kurt B. Kaiser publishes a weekly report on faults and patches. http://www.google.com/groups?as_usubject=weekly%20python%20patch Cetus collects Python hyperlinks. http://www.cetus-links.org/oo_python.html Python FAQTS http://python.faqts.com/ The Cookbook is a collaborative effort to capture useful and interesting recipes. http://aspn.activestate.com/ASPN/Cookbook/Python Among several Python-oriented RSS/RDF feeds available are http://www.python.org/channews.rdf http://bootleg-rss.g-blog.net/pythonware_com_daily.pcgi http://python.de/backend.php For more, see http://www.syndic8.com/feedlist.php?ShowMatch=python&ShowStatus=all The old Python "To-Do List" now lives principally in a SourceForge reincarnation. http://sourceforge.net/tracker/?atid=355470&group_id=5470&func=browse http://python.sourceforge.net/peps/pep-0042.html The online Python Journal is posted at pythonjournal.cognizor.com. editor at pythonjournal.com and editor at pythonjournal.cognizor.com welcome submission of material that helps people's understanding of Python use, and offer Web presentation of your work. del.icio.us presents an intriguing approach to reference commentary. It already aggregates quite a bit of Python intelligence. http://del.icio.us/tag/python *Py: the Journal of the Python Language* http://www.pyzine.com Archive probing tricks of the trade: http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python&num=100 http://groups.google.com/groups?meta=site%3Dgroups%26group%3Dcomp.lang.python.* Previous - (U)se the (R)esource, (L)uke! - messages are listed here: http://www.ddj.com/topics/pythonurl/ (requires subscription) http://groups-beta.google.com/groups?q=python-url+group:comp.lang.python*&start=0&scoring=d& http://purl.org/thecliff/python/url.html (dormant) or http://groups.google.com/groups?oi=djq&as_q=+Python-URL!&as_ugroup=comp.lang.python Suggestions/corrections for next week's posting are always welcome. E-mail to should get through. To receive a new issue of this posting in e-mail each Monday morning (approximately), ask to subscribe. Mention "Python-URL!". -- The Python-URL! Team-- Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and sponsor the "Python-URL!" project. From mike at myghty.org Tue May 3 18:34:04 2005 From: mike at myghty.org (mike bayer) Date: Tue, 3 May 2005 12:34:04 -0400 (EDT) Subject: Myghty 0.97 Released Message-ID: <13152.66.192.34.8.1115138044.squirrel@66.192.34.8> Myghty 0.97 Released Myghty is a Python Server Page templating framework and view-controller paradigm designed for large-scale, high availability websites and applications. Written and optimized from the ground up to complement mod_python, as well as WSGI, CGI and application embedded environments, its conceptual design and template syntax is derived from HTML::Mason, the most widely used web application platform in the mod_perl world. It is designed with both the migrating Mason user and the original Python user in mind, supporting not just the full featureset of Mason, including a fully componentized development paradigm, page inheritance, autohandlers, dhandlers, component caching, friendly exception handling, etc. but also many Pythonic and environment-agnostic enhancements including full Python whitespace support within templates, a "module component"-based controller paradigm (compare to Servlets), a fully customizable rule-based URI resolver, full support and helper methods for multithreaded environments, component-specific flags for buffering, caching and whitespace trimming, environment-agnostic session support, full support for WSGI, an out-of-the-box demonstration runner, and a streamlined design taking full advantage of Python's unique architectural features. Version 0.97 brings higher-scaling memory management features, a new resolver strategy paradigm allowing full control of URI resolution and caching, fully customizable error handling, multiple character encoding support, and a new AJAX toolkit example illustrating seamless integration of Python functions and Myghty Methods with javascript. Since its last comp.lang.python.announce announcement in October 2004, Myghty has gained a fair userbase in its first nine months which is growing at a fast pace, being used on a handful of commercial and non-commercial sites. It receives favorable reviews for its ease of use, small footprint, quick and smooth operation, and great flexibility. Myghty is released under the GNU Lesser General Public License (LGPL). Documentation, examples and download links can be found at: http://www.myghty.org Michael Bayer mike... at myghty.org

Myghty 0.97 - A high performance Python Server Page templating framework derived from HTML::Mason. (03-May-05) From jcribbs at twmi.rr.com Wed May 4 03:42:49 2005 From: jcribbs at twmi.rr.com (Jamey Cribbs) Date: Tue, 03 May 2005 21:42:49 -0400 Subject: ANNOUNCE: KirbyBase 1.8.2 Message-ID: <42782899.3000803@twmi.rr.com> This is an *Emergency* bug-fix release. Fred Pacquier alertly pointed out a bug I introduced in the last version. It occurs when you select all records in a table; newline characters were not getting stripped off the end of every returned record. The bug has been fixed in this version. Thanks Fred! KirbyBase is a simple, plain-text, database management system written in Python. It can be used either embedded in a python script or in a client/server, multi-user mode. You use python code to express your queries instead of having to use another language such as SQL. KirbyBase is disk-based, not memory-based. Database changes are immediately written to disk. You can find more information on KirbyBase at: http://www.netpromi.com/kirbybase.html You can download KirbyBase for Python at: http://www.netpromi.com/files/KirbyBase_Python_1.8.2.zip Jamey Cribbs jcribbs at twmi.rr.com From bgranger at scu.edu Wed May 4 07:53:54 2005 From: bgranger at scu.edu (Brian Granger) Date: Tue, 03 May 2005 22:53:54 -0700 Subject: ANN: PyXG = Python + Xgrid Message-ID: <7b01d87d1061bf19ab16231494d2794f@scu.edu> Announcing PyXG PyXG = Python + Xgrid Summary: PyXG provides a Python interface to Xgrid, Xgrid is Apple's solution for running jobs on a cluster of Macintosh computers. The main goal of this project is to enable users to submit and manage Xgrid jobs on a cluster of Macs from a Python script or within an interactive Python session. Features: -- Use Xgrid from within python scripts as well as in interactive Python sessions -- Submit and manage simple (one task) and batch (many task) Xgrid jobs -- List available grids and query their status -- List active Xgrid jobs, query their status and perform various actions (delete, restart, etc.) on them -- Easily work with more than one Xgrid controller or grid at the same time. -- Quickly create sets of jobs using Python's powerful syntax The homepage for PyXG is at: http://hammonds.scu.edu/~classes/pyxg.html Apple's description of Xgrid is at: http://www.apple.com/server/macosx/features/xgrid.html Brian Granger Brian E. Granger Assistant Professor of Physics Santa Clara University bgranger at scu.edu -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: text/enriched Size: 1132 bytes Desc: not available Url : http://mail.python.org/pipermail/python-announce-list/attachments/20050503/65504d8c/attachment.bin From Sylvain.Thenault at logilab.fr Wed May 4 12:39:41 2005 From: Sylvain.Thenault at logilab.fr (Sylvain =?iso-8859-1?Q?Th=E9nault?=) Date: Wed, 4 May 2005 12:39:41 +0200 Subject: [ANN] xmldiff 0.6.7 Message-ID: <20050504103941.GC4350@logilab.fr> Hello ! I'm pleased to announce a new bug fixes release for the xmldiff tool. See below for what is xmldiff and what has changed since the latest release. What's new ? ------------ * xmldiff is no longer a logilab subpackage. Users may have to manually remove the old logilab/xmldiff directory. * fixed debian bug #275750, also reported by Christopher R Newman on the xml-projects mailing list * fixed --profile option, wrap function from maplookup when profiling so that they appear in the profile information * fixed setup.py to ignore the xmlrev shell script under windows platforms * small improvements (remove recursion in object.py, minor enhancement in mydifflib.py, rewrite of lcs4 in C) What's xmldiff ? ------------------- Xmldiff is a utility for extracting differences between two xml files. It returns a set of primitives to apply on source tree to obtain the destination tree. . The implementation is based on _Change detection in hierarchically structured information_, by S. Chawathe, A. Rajaraman, H. Garcia-Molina and J. Widom, Stanford University, 1996 Home page --------- http://www.logilab.org/projects/xmldiff Download -------- ftp://ftp.logilab.org/pub/xmldiff Mailing list ------------ xml-projects at logilab.org About Logilab ------------- LOGILAB provides services in the fields of XML techniques and advanced computing (implementation of intelligent agents, knowledge management, natural language processing, statistical analysis, data mining, etc.), and also trainings on Python, XML, UML, Object Oriented design, design patterns use and other cutting edge topics. To know more about Logilab, visit http://www.logilab.com/. Logilab is also a strong supporter of the Free Software movement, and an active member of the Python and Debian communities. Logilab's open source projects can be found on http://www.logilab.org/. -- Sylvain Th?nault LOGILAB, Paris (France). http://www.logilab.com http://www.logilab.fr http://www.logilab.org From remi at cherrypy.org Wed May 4 17:13:50 2005 From: remi at cherrypy.org (remi@cherrypy.org) Date: 4 May 2005 08:13:50 -0700 Subject: ANN: CherryPy-2.0-final released Message-ID: <1115219630.673124.301570@f14g2000cwb.googlegroups.com> Hello everyone, I am happy to announce the first stable release of CherryPy-2. CherryPy-2 is a pythonic, object-oriented web development framework. CherryPy-2 is a redesign of CherryPy-1 (the unpythonic features have been removed): no more compilation step, pure python source code (no more "CherryClass"). Here is a sample Hello, World in CherryPy-2: # from cherrypy import cpg # class HelloWorld: # @cpg.expose # def index(self): # return "Hello world!" # cpg.root = HelloWorld() # cpg.server.start() Main properties: - this code starts a multi-threaded HTTP server that dispatches requests to methods - requests like "http://domain/dir/page?arg1=val1&arg2=val2" are mapped to "dir.page(arg1='val1', arg2='val2')" - CherryPy also supports "positional" arguments in URLs like http://domain/book/science/9 - requests are mapped to an object tree that is "mounted" on cpg.root (for instance: "cpg.root.user", "cpg.root.user.remi", ...) - method must be explicitely exposed with a decorator "@cpg.expose" (or "index.exposed = True" for Python-2.3) - methods can return a generator instead of a string (useful when generating big pages) Here is a non-exhaustive list of CherryPy-2 features: multi-threaded HTTP server, XML-RPC server, sessions, form handling, authentication, unicode support, gzip-compression, virtual hosting, WSGI adapter The design of CherryPy-2 allows to easily write/use pluggable "filters" or "modules": - filters perform operations on the request/response such as gzip-compression or string encoding - modules are web applications (like a blog or a web forum) than can be easily "mounted" anywhere you want in your website CherryPy-2 is already used in production by many sites and is supported by an active community. Remi. http://www.cherrypy.org From jbellis at gmail.com Wed May 4 23:19:51 2005 From: jbellis at gmail.com (Jonathan Ellis) Date: 4 May 2005 14:19:51 -0700 Subject: Spyce 2.0 beta Message-ID: <1115241591.148657.19830@g14g2000cwa.googlegroups.com> The beta of Spyce 2.0 is available at http://spyce.sourceforge.net/docs/get.html. Spyce is a python web application server, combining the features of popular frameworks such as JSP and ASP.NET with Pythonic elegance. Spyce may be deployed as a standalone server (or proxied behind Apache), or under mod_python, FastCGI, or CGI. Documentation and demos are at http://spyce.sourceforge.net/. Highlights of Spyce 2.0 include: Active Handlers - reusable components without the leaky abstractions seen in ASP.NET et al. - http://spyce.sourceforge.net/docs/doc-lang_handlers.html Active Tag compiler - http://spyce.sourceforge.net/docs/doc-tag_new2.html OpenACS-like (Tiles-ish, for you JSP people) parent/child templating system - roughly the same speed as include.spyce, so using one parent template has about 1/2 the overhead as the old standard two-includes-for-header-and-footer. - http://spyce.sourceforge.net/docs/doc-tag_core.html#parent Full changelog at http://svn-hosting.com/svn/spyce/trunk/spyce/CHANGES. -Jonathan From jacob at cd.chalmers.se Thu May 5 11:03:41 2005 From: jacob at cd.chalmers.se (Jacob Hallen) Date: 5 May 2005 09:03:41 GMT Subject: Europython update Message-ID: This is a news update about the Europython 2005 conference, to be held in Göteborg, Sweden 27-29 June - Due to some technical prolems with the registration website we have decided to extend the registration of talks until 8 May. We already have an impressive array of talks, but we do have room for some more. We are especially interested in talks focusing on the Python language and talks on Python usage in Science. - To encourage companies to bring their whole staff and their customers to Europython, we have created a corporate discount. If you bring 5 people or more from a single organisation, you get a 20% discount on the regular and early-bird regular fee. - A list of all the accepted talks will be published 11 May 2005 on the Europython website. - Early bird registrations end 15 May. Registration for the low cost accomodation close to the conference venue ends on the same day. For all conference details, go to: http://www.europython.org See you in Göteborg. EuroPython Team About EuroPython: Europython is an annual conference for the Python and Zope communities. It circulates between different sites in Europe. Having started in Charleroi, Belgium, it is now in Göteborg, Sweden and will move to CERN in Swizerland next year. Europython is a community conference run by volunteers. -- From js at jeannot.org Thu May 5 11:56:59 2005 From: js at jeannot.org (Jean-Sebastien Roy) Date: Thu, 05 May 2005 11:56:59 +0200 Subject: [ANN] PuLP 1.1: A Python Linear Programming modeler Message-ID: I would like to announce the release of PuLP v 1.1. PuLP is an LP modeler written in python. PuLP can generate MPS or LP files and call GLPK[1], COIN CLP/SBB[2], CPLEX[3] and XPRESS[4] to solve linear problems. PuLP provides a nice syntax for the creation of linear problems, and a simple way to call the solvers to perform the optimization. See the example below. This version adds C modules to use the GLPK, COIN and CPLEX solvers without using intermediate MPS or LP files. It is faster and more reliable. You can get it at: http://www.jeannot.org/~js/code/pulp-1.1.tgz The latest version is always available at: http://www.jeannot.org/~js/code/index.en.html Multiple examples are provided. Thanks, Jean-Sebastien References: [1] http://www.gnu.org/software/glpk/glpk.html [2] http://www.coin-or.org/ [3] http://www.cplex.com/ [4] http://www.dashoptimization.com/ Example script: from pulp import * prob = LpProblem("test1", LpMinimize) # Variables x = LpVariable("x", 0, 4) y = LpVariable("y", -1, 1) z = LpVariable("z", 0) # Objective prob += x + 4*y + 9*z # Constraints prob += x+y <= 5 prob += x+z >= 10 prob += -y+z == 7 GLPK().solve(prob) # Solution for v in prob.variables(): print v.name, "=", v.varValue print "objective=", value(prob.objective) From fuzzyman at gmail.com Thu May 5 12:42:54 2005 From: fuzzyman at gmail.com (Fuzzyman) Date: 5 May 2005 03:42:54 -0700 Subject: [ANN] Voidspace Guestbook 1.4.2 Message-ID: <1115289774.150791.215330@g14g2000cwa.googlegroups.com> Oops, embarrasing bugix release time. Guestbook 1.4.1 worked fine (wonderfully even) with Python 2.4, but not with Python 2.3. This release fixes that, and also another Python 2.2 compatibility problem (yes I'm testing now...). Homepage : http://www.voidspace.org.uk/python/guestbook.html Example : http://www.voidspace.org.uk/cgi-bin/voidspace/guestbook2.py Quick Download : http://www.voidspace.org.uk/cgi-bin/voidspace/downman.py?file=guestbook.zip I might even have spelt my domain name right this time... Best Regards, Fuzzyman http://www.voidspace.org.uk/python From a at b.c Thu May 5 17:43:39 2005 From: a at b.c (D H) Date: Thu, 05 May 2005 10:43:39 -0500 Subject: [ANN] IronPython 0.7.4 & Boo 0.5.3 Message-ID: IronPython 0.7.4 was released for .NET 2.0. http://workspaces.gotdotnet.com/ironpython Here are the changes: * reload() is now implemented * site.py, IRONPYTHONPATH and IRONPYTHONSTARTUP environment variables (see below for more details) * implementation of sys.stdin * raw_input and input functions were implemented * Assignment to a slice not implemented (on list) * implementation of built-in function reversed() * float numbers now print correctly with decimal point * missing attribute access on old-style generates correct error The full release announcement is here: http://www.gotdotnet.com/workspaces/news/newsitem.aspx?id=ad7acff7-ab1e-4bcb-99c0-57ac5a3a9742&newsId=4305a8ee-7984-495d-be6c-117d3447ee66 ---- Boo 0.5.3 was released for .NET 1.1 and Mono. http://boo.codehaus.org/ Changes since 0.5 include multidimensional arrays, implicit duck (dynamic) typing and other expanded duck typing features, and an option for fast raw array indexing. The SharpDevelop boo addin was improved, and a MonoDevelop addin for boo is now in MonoDevelop's SVN repository. Full announcement: http://groups-beta.google.com/group/boolang/msg/3ec2c745da82260b?hl=en From frank at niessink.com Thu May 5 22:29:51 2005 From: frank at niessink.com (Frank Niessink) Date: Thu, 05 May 2005 22:29:51 +0200 Subject: [ANN] Release 0.36 of Task Coach Message-ID: <427A823F.3090209@niessink.com> Hi all, I'm pleased to announce release 0.36 of Task Coach. New in this release: Bug fixed: - Descriptions loose newlines after reload (1194259). Feature added: - French user interface added, thanks to Jerome Laheurte. What is Task Coach? Task Coach is a simple task manager that allows for hierarchical tasks, i.e. tasks in tasks. Task Coach is open source (GPL) and is developed using Python and wxPython. You can download Task Coach from: http://taskcoach.niessink.com https://sourceforge.net/projects/taskcoach/ A binary installer is available for Windows XP, in addition to the source distribution. Note that Task Coach is alpha software, meaning that it is wise to back up your task file regularly, and especially when upgrading to a new release. Cheers, Frank From philippe at philippecmartin.com Fri May 6 15:17:50 2005 From: philippe at philippecmartin.com (Philippe C. Martin) Date: Fri, 06 May 2005 13:17:50 GMT Subject: SC-Corporate-ID release Message-ID: <28Kee.1573$7U.1299@newssvr30.news.prodigy.com> Dear all, I am very pleased to announce the release of SC-Corporate-ID. SC-Corporate-ID is a commercial Smart Card security system that can be extended by the user using the Python language. SC-Corporate-ID is written in Python and wxPython for the most part (except for the PCSC wrapper, the GINA dll and the crypto) on the PC side, and in .... other languages on the Smart Card side. The PCSC driver (PYCSC) and the crypto (PYCRYPTO) are public domain packages (PYCSC was slightly modified by us) SC-Corporate-ID is an off-the shelf package: you can use it as is; yet, as it is based on a set of libraries (SCF), it can be modified and customized by the company using it (the restriction being the capabilities of the code in the Smart Card which would have to be modified by us). SC-Corporate-ID can be used for PC Access, Data Security (file encryption/signature), Company Electronic Purse and Corporate Identification. Some of its possible extentions are Building Access and WEB Security. SC-Corporate-ID cards can be delivered pre-programmed (firwmare + data) or simply with the firmware so the user may handle its own cards issuance. Although it is a commercial product, SC-Corporate-ID intends to be a true low cost security solution for Corporations. SC-Corporate-ID will soon be followed by a School/University ID as well as an Health Card ID. You may find information on SC-Corporate-ID at www.snakecard.com. Best regards, Philippe Martin From gh at ghaering.de Sun May 8 04:37:34 2005 From: gh at ghaering.de (Gerhard Haering) Date: Sun, 8 May 2005 04:37:34 +0200 Subject: [ANN] pysqlite 2.0.beta1 Message-ID: <20050508023734.GA4109@mylene.ghaering.de> ================== pysqlite 2.0.beta1 ================== I'm glad to announce pysqlite 2.0.beta1. The API is 98 % stable now. And pysqlite itself should be a lot more stable too, now. The most notable changes are a lot of fixed refcount bugs, and the added documentation. Download the release here: Sources: http://initd.org/pub/software/pysqlite/releases/2.0/2.0.beta1/pysqlite-2.0.beta1.tar.gz win32 binaries for Python 2.3: http://initd.org/pub/software/pysqlite/releases/2.0/2.0.beta1/pysqlite-2.0.beta1.win32-py2.3.exe win32 binaries for Python 2.4: http://initd.org/pub/software/pysqlite/releases/2.0/2.0.beta1/pysqlite-2.0.beta1.win32-py2.4.exe pysqlite homepage, bug tracker, wiki: http://pysqlite.org/ Changes since 2.0.alpha4: ========================= - Added pysqlite 2.0 documentation: usage guide and source installation guide. Adapted from kinterbasdb documentation with the permission of David Rushby. - Fixed several refcount problems. Per test suite run, lose 0 references instead of 550 per test suite run like in alpha4. - If a database file cannot be opened, raise an OperationalError specifically instead of a DatabaseError. - Call the row factory with (cursor, row_tuple) instead of (row_tuple). - Fixed a crash in .connect() when you tried to set a keyword argument. It's quite annoying that Python doesn't offer a method to extract a single keyword argument at C-level easily. Argh! So I bit the bullet and duplicated the parameter extraction code. - The type name of PrepareProtocol was corrected. Only interesting for introspection. - Added more tests to the test suite. - Implemented cursor.arraysize. - cursor.rowcount is now -1 instead of None in case of "not determined", like the DB-API requires. - Implemented autocommit mode which replaces the ''no_implicit_begin'' parameter to the module-level connect(). This way, we're more compatible with other DB-API modules. autocommit parameter in module-level connect and also an autocommit property of connections. -- The "begin" method of connections is gone. - Completely reworked the advanced type detection: o connection.register_converter is gone o instead, the dictionary connection.converters is exposed directly. o The parameter more_types to the module-level connect is gone. o Instead, use any combination of PARSE_DECLTYPES and PARSE_COLNAMES for the new paramter detect_types. PARSE_DECLTYPES will parse out the first word of a declared type and look up a converter in connection.converters: create table foo(col mytype not null) The decltype would be "mytype not null", but PARSE_DECLTYPES will cut out "mytype" and look for a converter in converters["mytype"]. If it finds any, it will use it to convert the value. Otherwise, the standard SQLite manifest typing will be used. PARSE_COLNAMES will parse out the column names and look up a converter in connection.converters: cur.execute("select 1 as "colname [mytype]") the column names will be parsed for [...], in this case mytype will be found as the type for the colum, and the converters dictionary will be consulted for an appropriate converter function. If none is found, the standard SQLite manifest typing will be used. Also, the column names in cursor.description will only consist of the first word. So it would be "colname" in our example, not "colname [mytype]". - cursor.coltypes is gone. - The connection attribute of cursors is now made available at Python level. That's an optional DB-API extension. - The exception classes are now attributes of the connection objects. That's an optional DB-API extension. - Optimized the _sqlite_step_with_busyhandler() function by making time.time() and time.sleep() available at module import instead of importing the "time" module each time and getting out the "time" and "sleep" functions each time. Big performance improvement. - Some work on the benchmarks. - Made the destructor of the Cursor class more stable. It used to crash when an error occured in the Cursor *constructor*. - Implemented a check that the parameter for Cursor() is actually an instance of the Connection class (or a subclass thereof). - Allow long integers as parameters. Re-enable test cases for this. -- Gerhard H?ring - gh at ghaering.de - Python, web & database development pysqlite - Powerful and fast embedded database engine "SQLite" for Python. -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://mail.python.org/pipermail/python-announce-list/attachments/20050508/f1379448/attachment.pgp From rnc000 at gmail.com Mon May 9 03:32:47 2005 From: rnc000 at gmail.com (rnc000@gmail.com) Date: 8 May 2005 18:32:47 -0700 Subject: imgSeek 0.8.5 Message-ID: <1115602367.540788.145740@o13g2000cwo.googlegroups.com> imgSeek ------- imgSeek is a photo collection manager and viewer with content-based search and many other features. The query is expressed either as a rough sketch painted by the user or as another image you supply (or an image in your collection). You may also do slideshows, generate web photo albums, edit image metadata including EXIF and IPTC data, organize images into a keyword hierarchy, and more. Changes ------- * fixes bug at startup on new versions of PyQT (QSizePolicy) * fixes bug at startup when detecting locale * Applied patch by Daniel Fahlgren. Fixes bug which made compared image (when loaded from an external file) to be loaded rotated. * implemented a "low level" jpeg loader, which interacts directly with libjpeg so now imgSeek doesn't have to read the whole jpeg file in order to generate thumbnails and add an image to database. That represents a reduction by 1/3 to the time needed to thumbnail and add images to the database. On some benchmarks, adding 160 files (1600x1200) would take an average of 1'10" and now it takes 32". * fixed bug on Windows where dialogs wouldn't show up again after being closed * fixed some unicode bugs * added "Rename image" menu option * finished Portuguese (BR) translation * added i18n support Requires -------- - Python 2.2.x, QT 3.x and PyQT 3.5. (3.4 should work) - ImageMagick development files or QT development files. Recommended: - Python Imaging Library. Links ----- Download: http://imgseek.python-hosting.com/wiki/Download Homepage: http://imgseek.python-hosting.com/ Screenshots: http://imgseek.sourceforge.net/sshot/ Complete ChangeLog: http://imgseek.python-hosting.com/timeline From brian at zope.com Mon May 9 05:20:32 2005 From: brian at zope.com (Brian Lloyd) Date: Sun, 8 May 2005 23:20:32 -0400 Subject: Announce: Python for .NET 1.0 RC1 released Message-ID: Hi all - I'm happy to announce the release of Python for .NET 1.0 RC1. You can download it from: http://www.zope.org/Members/Brian/PythonNet Highlights of this release: - Implemented a workaround for the fact that exceptions cannot be new-style classes in the CPython interpreter. Managed exceptions can now be raised and caught naturally from Python - Implemented support for invoking methods with out and ref parameters. Because there is no real equivalent to these in Python, methods that have out or ref parameters will return a tuple. The tuple will contain the result of the method as its first item, followed by out parameter values in the order of their declaration in the method signature. - Fixed a refcount problem that caused a crash when CLR was imported in an existing installed Python interpreter. - Added an automatic conversion from Python strings to byte[]. This makes it easier to pass byte[] data to managed methods (or set properties, etc.) as a Python string without having to write explicit conversion code. Also works for sbyte arrays. Note that byte and sbyte arrays returned from managed methods or obtained from properties or fields do *not* get converted to Python strings - they remain instances of Byte[] or SByte[]. - Added conversion of generic Python sequences to object arrays when appropriate (thanks to Mackenzie Straight for the patch). - Added a bit of cautionary documentation for embedders, focused on correct handling of the Python global interpreter lock from managed code for code that calls into Python. - PyObject.FromManagedObject now correctly returns the Python None object if the input is a null reference. Also added a new AsManagedObject method to PyObject, making it easier to convert a Python-wrapped managed object to the real managed object. - Created a simple installer for windows platforms. All known bugs have also been fixed - thanks to all who have sent in issue reports and patches for past releases. At this point, the only thing I plan to do before a 1.0 final is fix any new issues and add to the documentation (probably including a few specific examples of embedding Python for .NET in a .NET application). Enjoy! ;) Brian Lloyd brian at zope.com V.P. Engineering 540.361.1716 Zope Corporation http://www.zope.com From fuzzyman at gmail.com Mon May 9 12:44:40 2005 From: fuzzyman at gmail.com (Fuzzyman) Date: 9 May 2005 03:44:40 -0700 Subject: ANN: rest2web 0.1.0 Message-ID: <1115635480.796672.120790@f14g2000cwb.googlegroups.com> Finally, the long awaited (*ahem*) release of **rest2web**. It's an early release - lot's more features still to be added - but it all works. *Hurrah* rest2web is a tool for autogenerating websites. It allows you to store your contents in reST format, and generate pages and indexes from templates. It uses a simple but flexible templating system and generates index pages and navigation links. This means that adding new pages is as easy as dropping a text file into the right folder. rest2web will handle adding the link to the index page and creating the new page from a template and the contents. Removing a page is as easy as deleting a single file, and have rest2web automatically rebuild the indexes. The download includes the rest2web code, and docs, and a test site. The test site serves as a simple illustration of how rest2web builds pages and indexes. For full details see any of the following pages : * `rest2web Docs` - http://www.voidspace.org.uk/python/rest2web * `Example Site` - http://www.voidspace.org.uk/python/rest2web/test_site * `Quick Download (608k)` - http://www.voidspace.org.uk/cgi-bin/voidspace/downman.py?file=rest2web.zip The next features to add will be auto sitemap generation and a bigger change (under the hood) to make the index data available to every page in a section. This will allow pages to have sidebars with links, rather than just a single index page per section. I'm already building part of the Voidspace website with rest2web, over the next few months it will take over.... Lots of other features, tested on Linux and Windoze. Fuzzyman http://www.voidspace.org.uk/python From python-url at phaseit.net Mon May 9 19:18:32 2005 From: python-url at phaseit.net (Simon Brunning) Date: Mon, 09 May 2005 17:18:32 +0000 Subject: Dr. Dobb's Python-URL! - weekly Python news and links (May 9) Message-ID: QOTW: "It's not perfect, but then nobody in this thread has offered anything even remotely resembling perfect documentation for regular expressions yet. " - Peter Hansen "Python's flavor of OO is perfectly valid and usable, even though it doesn't follow the Java Holy Bible of Object Orientation (gasp!)" - Hans Nowak "It's highly arguable if Python is "better" than C#, but from a control-your-own-destiny angle, Python is a complete slam dunk. Python works well on *nix, Java, .NET and Mac OS X. It's open source. It's sane. But I won't argue it's fast. It's usually just not so slow you care." - Jonathan Rentzsch String Manipulation in Python: http://www.devshed.com/c/a/Python/String-Manipulation/ Why you can't detect a float's significant digits: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/85eaac30c01b51a5 Dependency Injection The Python Way: http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/413268 What is Paste? http://blog.ianbicking.org/what-is-paste.html Finding peaks and valleys: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/6506673a689339b7 Type-safe Enums in Python: http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/413486 Python turns up again in a Microsoft outpost: http://www.informit.com/guides/content.asp?g=windowsserver&seqNum=183&rl=1 Encryption with Python: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/5fb9ffada975bae9 The importance of being selfish, deja vu: http://zephyrfalcon.org/weblog2/arch_e10_00770.html#e776 Notable releases: CherryPy-2.0-final: http://groups-beta.google.com/group/comp.lang.python.announce/browse_thread/thread/8905b9f2bd114f38 BeautifulSoup 2.1.0: http://www.crummy.com/software/BeautifulSoup/ KirbyBase 1.8.2: http://www.netpromi.com/kirbybase.html ======================================================================== Everything Python-related you want is probably one or two clicks away in these pages: Python.org's Python Language Website is the traditional center of Pythonia http://www.python.org Notice especially the master FAQ http://www.python.org/doc/FAQ.html PythonWare complements the digest you're reading with the marvelous daily python url http://www.pythonware.com/daily Mygale is a news-gathering webcrawler that specializes in (new) World-Wide Web articles related to Python. http://www.awaretek.com/nowak/mygale.html While cosmetically similar, Mygale and the Daily Python-URL are utterly different in their technologies and generally in their results. For far, FAR more Python reading than any one mind should absorb, much of it quite interesting, several pages index much of the universe of Pybloggers. http://lowlife.jp/cgi-bin/moin.cgi/PythonProgrammersWeblog http://www.planetpython.org/ http://mechanicalcat.net/pyblagg.html comp.lang.python.announce announces new Python software. Be sure to scan this newsgroup weekly. http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python.announce Steve Bethard, Tim Lesher, and Tony Meyer continue the marvelous tradition early borne by Andrew Kuchling, Michael Hudson and Brett Cannon of intelligently summarizing action on the python-dev mailing list once every other week. http://www.python.org/dev/summary/ The Python Package Index catalogues packages. http://www.python.org/pypi/ The somewhat older Vaults of Parnassus ambitiously collects references to all sorts of Python resources. http://www.vex.net/~x/parnassus/ Much of Python's real work takes place on Special-Interest Group mailing lists http://www.python.org/sigs/ The Python Business Forum "further[s] the interests of companies that base their business on ... Python." http://www.python-in-business.org Python Success Stories--from air-traffic control to on-line match-making--can inspire you or decision-makers to whom you're subject with a vision of what the language makes practical. http://www.pythonology.com/success The Python Software Foundation (PSF) has replaced the Python Consortium as an independent nexus of activity. It has official responsibility for Python's development and maintenance. http://www.python.org/psf/ Among the ways you can support PSF is with a donation. http://www.python.org/psf/donate.html Kurt B. Kaiser publishes a weekly report on faults and patches. http://www.google.com/groups?as_usubject=weekly%20python%20patch Cetus collects Python hyperlinks. http://www.cetus-links.org/oo_python.html Python FAQTS http://python.faqts.com/ The Cookbook is a collaborative effort to capture useful and interesting recipes. http://aspn.activestate.com/ASPN/Cookbook/Python Among several Python-oriented RSS/RDF feeds available are http://www.python.org/channews.rdf http://bootleg-rss.g-blog.net/pythonware_com_daily.pcgi http://python.de/backend.php For more, see http://www.syndic8.com/feedlist.php?ShowMatch=python&ShowStatus=all The old Python "To-Do List" now lives principally in a SourceForge reincarnation. http://sourceforge.net/tracker/?atid=355470&group_id=5470&func=browse http://python.sourceforge.net/peps/pep-0042.html The online Python Journal is posted at pythonjournal.cognizor.com. editor at pythonjournal.com and editor at pythonjournal.cognizor.com welcome submission of material that helps people's understanding of Python use, and offer Web presentation of your work. del.icio.us presents an intriguing approach to reference commentary. It already aggregates quite a bit of Python intelligence. http://del.icio.us/tag/python *Py: the Journal of the Python Language* http://www.pyzine.com Archive probing tricks of the trade: http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python&num=100 http://groups.google.com/groups?meta=site%3Dgroups%26group%3Dcomp.lang.python.* Previous - (U)se the (R)esource, (L)uke! - messages are listed here: http://www.ddj.com/topics/pythonurl/ (requires subscription) http://groups-beta.google.com/groups?q=python-url+group:comp.lang.python*&start=0&scoring=d& http://purl.org/thecliff/python/url.html (dormant) or http://groups.google.com/groups?oi=djq&as_q=+Python-URL!&as_ugroup=comp.lang.python Suggestions/corrections for next week's posting are always welcome. E-mail to should get through. To receive a new issue of this posting in e-mail each Monday morning (approximately), ask to subscribe. Mention "Python-URL!". -- The Python-URL! Team-- Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and sponsor the "Python-URL!" project. From Facundo.Batista at telefonicamoviles.com.ar Mon May 9 22:18:15 2005 From: Facundo.Batista at telefonicamoviles.com.ar (Batista, Facundo) Date: Mon, 9 May 2005 17:18:15 -0300 Subject: PyAr - Python Argentina 9th Meeting, this Thursday Message-ID: The Argentine Python User Group, PyAr, will have its nineth meeting this Thursday, May 12nd at 7:00pm. Agenda ------ Despite our agenda tends to be rather open, this time we would like to cover these topics: - See what we'll do with the t-shirts, and other "merchandising". - Analyze a future meeting point. Where ----- We're meeting at Hip Bar, Hip?lito Yirigoyen 640, Ciudad de Buenos Aires, starting at 19hs. We will be in the back room, so please ask the barman for us. About PyAr ---------- For more information on PyAr see http://pyar.decode.com.ar (in Spanish), or join our mailing list (Also in Spanish. For instructions see http://pyar.decode.com.ar/Members/ltorre/listademail) We meet on the second Thursday of every month. . Facundo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ADVERTENCIA. La informaci?n contenida en este mensaje y cualquier archivo anexo al mismo, son para uso exclusivo del destinatario y pueden contener informaci?n confidencial o propietaria, cuya divulgaci?n es sancionada por la ley. Si Ud. No es uno de los destinatarios consignados o la persona responsable de hacer llegar este mensaje a los destinatarios consignados, no est? autorizado a divulgar, copiar, distribuir o retener informaci?n (o parte de ella) contenida en este mensaje. Por favor notif?quenos respondiendo al remitente, borre el mensaje original y borre las copias (impresas o grabadas en cualquier medio magn?tico) que pueda haber realizado del mismo. Todas las opiniones contenidas en este mail son propias del autor del mensaje y no necesariamente coinciden con las de Telef?nica Comunicaciones Personales S.A. o alguna empresa asociada. Los mensajes electr?nicos pueden ser alterados, motivo por el cual Telef?nica Comunicaciones Personales S.A. no aceptar? ninguna obligaci?n cualquiera sea el resultante de este mensaje. Muchas Gracias. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-announce-list/attachments/20050509/a9234dc1/attachment-0001.html From irmen.NOSPAM at xs4all.nl Mon May 9 22:58:00 2005 From: irmen.NOSPAM at xs4all.nl (Irmen de Jong) Date: Mon, 09 May 2005 22:58:00 +0200 Subject: Frog 1.5 (web log server) Message-ID: <427fceda$0$54567$e4fe514c@news.xs4all.nl> I've released a new version of Frog, a web log server written in 100% python. Get version 1.5 from http://snakelets.sourceforge.net/frog/index.html Some of the features: - multi user - no database needed (uses files for storage) - no web server needed (it runs in Snakelets, which has its own web server) - splitted articles ("read more...") - email notification when comment is added - formatting similar to 'bbcode', supports images and other files - anti-spam measures: puzzles, auto-updating blacklist, anti-indexing hyperlinks in comments (rel="nofollow") - outputs lean xhtml+css pages - RSS feeds - fully unicode compatible - web-based file manager, available as separate module Detailed info on the site mentioned above. Have fun :) --Irmen PS You can see Frog in action here: http://www.razorvine.net/snake/frog/user/irmen/ From johan at gnome.org Mon May 9 23:24:57 2005 From: johan at gnome.org (Johan Dahlin) Date: Mon, 09 May 2005 18:24:57 -0300 Subject: ANNOUNCE: PyGTK 2.6.2 Message-ID: <427FD529.6050502@gnome.org> I am pleased to announce version 2.6.2 of the Python bindings for GTK. The new release is available from ftp.gnome.org as and its mirrors as soon as its synced correctly: http://ftp.gnome.org/pub/GNOME/sources/pygtk/2.6/pygtk-2.6.2.tar.gz Changes since 2.6.1: - Allow None to be sent in to set_group radio widgets (Johan, Lorenzo) - guint/gsize as longs (Gustavo) - Check for exceptions in child_watch (Mark McLoughlin) - Bug fixes (Johan, Manish Singh, John Finaly, Ulrik Svensson) Blurb: GTK is a toolkit for developing graphical applications that run on POSIX systems such as Linux, Windows and MacOS X (provided that the X server for MacOS X has been installed). It provides a comprehensive set of GUI widgets, can display Unicode bidi text. It links into the Gnome Accessibility Framework through the ATK library. PyGTK provides a convenient wrapper for the GTK+ library for use in Python programs, and takes care of many of the boring details such as managing memory and type casting. When combined with PyORBit and gnome-python, it can be used to write full featured Gnome applications. Like the GTK+ library itself PyGTK is licensed under the GNU LGPL, so is suitable for use in both free software and proprietary applications. It is already in use in many applications ranging from small single purpose scripts up to large full features applications. PyGTK requires GTK+ >= 2.6 and Python >= 2.3 to build. Bug reports, as always, should go to Bugzilla; check out http://pygtk.org/developer.html and http://pygtk.org/feedback.html for links to posting and querying bug reports for PyGTK. -- Johan Dahlin johan at gnome.org From ianb at colorstudy.com Tue May 10 02:44:50 2005 From: ianb at colorstudy.com (Ian Bicking) Date: Mon, 09 May 2005 19:44:50 -0500 Subject: Topic - Tutorial: Web programming in Python with Paste Message-ID: <42800402.2070904@colorstudy.com> Topic - Tutorial: Web programming in Python with Paste ------------------------------------------------------ This month Ian Bicking will be presenting a tutorial Python web programming, using several different systems: Python Paste, Webware/WebKit, Zope Page Templates (not just for Zope!), and SQLObject. The technology covered will be similar to those presented in the To-Do tutorial. Except it will be live and in person. I (Ian) plan to develop a small application from scratch in front of everyone without preparation (or even forethought) -- you will get to gasp in disappointment or awe as I no doubt both embarrass and redeam myself. Hopefully this will present a realistic picture of what development is like with the stack, mistakes included. There will also be time to chat, and many opportunities to ask questions. We encourage people at all levels to attend. Location -------- This month Dave Rock and Acxiom will be hosting ChiPy in Downer's Grove: Acxiom 3333 Finley Road Downers Grove Near the intersection of I-355 and Buttefield Road. Convenient to Fry's! There's ample parking! Carpooling from the city? Check the mailing list. Links ----- ChiPy: http://chipy.org Mailing List: http://lonelylion.com/mailman/listinfo/chipy Python Paste: http://pythonpaste.org Webware: http://webwareforpython.org Zope Page Templates: http://www.zope.org/Documentation/Articles/ZPT1 SQLObject: http://sqlobject.org To-Do tutorial: http://pythonpaste.org/docs/TodoTutorial.html ChiPy meets once a month on the second Thursday. From emmanuel.breton at logilab.fr Tue May 10 11:23:51 2005 From: emmanuel.breton at logilab.fr (Emmanuel Breton) Date: Tue, 10 May 2005 11:23:51 +0200 Subject: [ANN] Solipsis, a shared virtual worlds in python Message-ID: <20050510092351.GA6581@crater.logilab.fr> Hello every one, I am pleased to announce the release of Solipsis, licensed under the GNU Lesser General Public License. Solipsis is a peer-to-peer system for a massively multi-participant virtual world. Like any real pear-to-pear system, there is no server at all: it only relies on end-users' machines. Overview -------- The shared virtual worlds of nowadays MMORPG strongly rely on privately owned servers. These servers are an expensive bottleneck that limits their scalability. In addition, these servers bound the freedom of the virtual world inhabitants and the imagination of the world-builders and developers. Solipsis solves these problems with a free and open-source system. Solipsis is a public virtual territory. The world is initially empty and only users will fill it by creating and running entities. No pre-existing cities, habitants nor scenario to respect... Solipsis is open-source, so everybody can enhance the protocols and the algorithms. Moreover, the system architecture clearly separates the different tasks, so that peer-to-peer hackers as well as multimedia geeks can find a good place to have fun here! Getting the software -------------------- The current version is 0.8.1, available as a tar.gz and as a windows installer http://solipsis.netofpeers.net/wiki/DownLoad Official Web site ----------------- http://solipsis.netofpeers.net/wiki/HomePage Requirements ------------ Current implementations of node and navigator require: * python?(at least 2.3) * wx-python?(at least 2.5) * twisted? (at least 1.3, 2.0 not tested yet) * Python Imaging Library (PIL)? Enjoy! -- Emmanuel Br?ton LOGILAB, Paris (France) Tel: 01 45 32 03 12 http://www.logilab.org -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://mail.python.org/pipermail/python-announce-list/attachments/20050510/1e99e400/attachment.pgp From faltet at carabos.com Tue May 10 13:29:01 2005 From: faltet at carabos.com (Francesc Altet) Date: Tue, 10 May 2005 13:29:01 +0200 Subject: PyTables 1.0 released Message-ID: <200505101329.01563.faltet@carabos.com> ========================= Announcing PyTables 1.0 ========================= The Carabos crew is very proud to announce the immediate availability of **PyTables release 1.0**. On this release you will find a series of exciting new features, being the most important the Undo/Redo capabilities, support for objects (and indexes!) with more than 2**31 rows, better I/O performance for Numeric objects, new time datatypes (useful for time-stamping fields), support for Octave HDF5 files and improved support for HDF5 native files. What it is ========== **PyTables** is a package for managing hierarchical datasets and designed to efficiently cope with extremely large amounts of data (with support for full 64-bit file addressing). It features an object-oriented interface that, combined with C extensions for the performance-critical parts of the code, makes it a very easy-to-use tool for high performance data storage and retrieval. It is built on top of the HDF5 library and the numarray package, and provides containers for both heterogeneous data (``Table``) and homogeneous data (``Array``, ``EArray``) as well as containers for keeping lists of objects of variable length (like Unicode strings or general Python objects) in a very efficient way (``VLArray``). It also sports a series of filters allowing you to compress your data on-the-fly by using different compressors and compression enablers. But perhaps the more interesting features are its powerful browsing and searching capabilities that allow you to perform data selections over heterogeneous datasets exceeding gigabytes of data in just tenths of second. Besides, the PyTables I/O is buffered, implemented in C and carefully tuned so that you can reach much better performance with PyTables than with your own home-grown wrappings to the HDF5 library. Changes more in depth ===================== Improvements: - New Undo/Redo feature (i.e. integrated support for undoing and/or redoing actions). This functionality lets you to put marks in specific places of your data operations, so that you can make your HDF5 file pop back (undo) to a specific mark (for example for inspecting how your data looked at that point). You can also go forward to a more recent marker (redo). You can even do jumps to the marker you want using just one instruction. - Reading Numeric objects from ``*Array`` and ``Table`` (Numeric columns) objects have a 50-100x speedup. With that, Louis Wicker reported that a speed of 350 MB/s can be achieved with Numeric objects (on a SGI Altix with a Raid 5 disk array) while with numarrays, this speed approaches 900 MB/s. This improvement has been possible mainly due to a nice recipe from Todd Miller. Thanks Todd! - With PyTables 1.0 you can finally create Tables, EArrays and VLArrays with more than 2**31 (~ 2 thousand millions) rows, as well as retrieve them. Before PyTables 1.0, retrieving data on these beasts was not well supported, in part due to limitations in some slicing functions in Python (that rely on 32-bit adressing). So, we have made the necessary modifications in these functions to support 64-bit indexes and integrated them into PyTables. As a result, our tests shows that this feature works just fine. - As a consequence of the above, you can now index columns of tables with more than 2**31 rows. For instance, indexes have been created for integer columns with 10**10 (yeah, 10 thousand million) rows in less than 1 hour using an Opteron @ 1.6 GHz system (~ 1 hour and half with a Xeon Intel32 @ 2.5 GHz platform). Enjoy! - Now PyTables supports the native HDF5 time types, both 32-bit signed integer and 64-bit fixed point timestamps. They are mapped to ``Int32`` and ``Float64`` values for easy manipulation. See the documentation for the ``Time32Col`` and ``Time64Col`` classes. - Massive internal reorganization of the methods that deal with the hierarchy. Hopefully, that will enable a better understanding of the code for anybody wanting to add/modify features. - The opening and copying of files with large number of objects has been made faster by correcting a typo in ``Table._open()``. Thanks to Ashley Walsh for sending a patch for this. - Now, one can modify rank-0 (scalar) ``EArray`` datasets. Thanks to Norbert Nemec for providing a patch for this. - You are allowed from this version on to add non-valid natural naming names as node or attribute names. A warning is issued to warn (but not forbid) you in such a case. Of course, you have to use the ``getattr()`` function so as to access such invalid natural names. - The indexes of ``Table`` and ``*Array`` datasets can be of long type besides of integer type. However, indexes in slices are still restricted to regular integer type. - The concept of ``READ_ONLY`` system attributes has disappeared. You can change them now at your own risk! However, you still cannot remove or rename system attributes. - Now, one can do reads in-between write loops using ``table.row`` instances. This is thanks to a decoupling in I/O buffering: now there is a buffer for reading and other for writing, so that no collisions take place anymore. Fixes #1186892. - Support for Octave HDF5 output format. Even complex arrays are supported. Thanks to Edward C. Jones for reporting this format. Backward-incompatible changes: - The format of indexes has been changed and indexes in files created with PyTables pre-1.0 versions are ignored now. However, ``ptrepack`` can still save your life because it is able to convert your old files into the new indexing format. Also, if you copy the affected tables to other locations (by using ``Leaf.copy()``), it will regenerate your indexes with the new format for you. - The API has changed a little bit (nothing serious) for some methods. See ``RELEASE-NOTES.txt`` for more details. Bug fixes: - Added partial support for native HDF5 chunked datasets. They can be read now, and even extended, but only along the first extensible dimension. This limitation may be removed when multiple extensible dimensions are supported in PyTables. - Formerly, when the name of a column in a table was subsumed in another column name, PyTables crashed while retrieving information of the former column. That has been fixed. - A bug prevented the use of indexed columns of tables that were in other hierarchical level than root. This is solved now. - When a ``Group`` was renamed you were not able to modify its attributes. This has been fixed. - When whether ``Table.modifyColumns()`` or ``Table.modifyRows()`` were called, a subsequent call to ``Table.flush()`` didn't really flush the modified data to disk. This works as intended now. - Fixed some issues when iterating over ``*Array`` objects using the ``List`` or ``Tuple`` flavor. Important note for Python 2.4 and Windows users =============================================== If you are willing to use PyTables with Python 2.4 in Windows platforms, you will need to get the HDF5 library compiled for MSVC 7.1, aka .NET 2003. It can be found at: ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/current/bin/windows/5-164-win-net.ZIP Users of Python 2.3 on Windows will have to download the version of HDF5 compiled with MSVC 6.0 available in: ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/current/bin/windows/5-164-win.ZIP Where can PyTables be applied? ============================== PyTables is not designed to work as a relational database competitor, but rather as a teammate. If you want to work with large datasets of multidimensional data (for example, for multidimensional analysis), or just provide a categorized structure for some portions of your cluttered RDBS, then give PyTables a try. It works well for storing data from data acquisition systems (DAS), simulation software, network data monitoring systems (for example, traffic measurements of IP packets on routers), very large XML files, or for creating a centralized repository for system logs, to name only a few possible uses. What is a table? ================ A table is defined as a collection of records whose values are stored in fixed-length fields. All records have the same structure and all values in each field have the same data type. The terms "fixed-length" and "strict data types" seem to be quite a strange requirement for a language like Python that supports dynamic data types, but they serve a useful function if the goal is to save very large quantities of data (such as is generated by many scientific applications, for example) in an efficient manner that reduces demand on CPU time and I/O resources. What is HDF5? ============= For those people who know nothing about HDF5, it is a general purpose library and file format for storing scientific data made at NCSA. HDF5 can store two primary objects: datasets and groups. A dataset is essentially a multidimensional array of data elements, and a group is a structure for organizing objects in an HDF5 file. Using these two basic constructs, one can create and store almost any kind of scientific data structure, such as images, arrays of vectors, and structured and unstructured grids. You can also mix and match them in HDF5 files according to your needs. Platforms ========= We are using Linux on top of Intel32 as the main development platform, but PyTables should be easy to compile/install on other UNIX machines. This package has also been successfully compiled and tested on a FreeBSD 5.4 with Opteron64 processors, a UltraSparc platform with Solaris 7 and Solaris 8, a SGI Origin3000 with Itanium processors running IRIX 6.5 (using the gcc compiler), Microsoft Windows and MacOSX (10.2 although 10.3 should work fine as well). In particular, it has been thoroughly tested on 64-bit platforms, like Linux-64 on top of an Intel Itanium, AMD Opteron (in 64-bit mode) or PowerPC G5 (in 64-bit mode) where all the tests pass successfully. Regarding Windows platforms, PyTables has been tested with Windows 2000 and Windows XP (using the Microsoft Visual C compiler), but it should also work with other flavors as well. Web site ======== Go to the PyTables web site for more details: http://pytables.sourceforge.net/ To know more about the company behind the PyTables development, see: http://www.carabos.com/ Share your experience ===================== Let us know of any bugs, suggestions, gripes, kudos, etc. you may have. ---- **Enjoy data!** -- The PyTables Team -- >0,0< Francesc Altet ? ? http://www.carabos.com/ V V C?rabos Coop. V. ??Enjoy Data "-" From smulloni at bracknell.smullyan.org Tue May 10 18:12:37 2005 From: smulloni at bracknell.smullyan.org (Jacob Smullyan) Date: Tue, 10 May 2005 11:12:37 -0500 Subject: PyDO-2.0a1 released Message-ID: I'm pleased to announce the second alpha release of PyDO 2. What's New ---------- * PyDO2 is now in the PyDO2 package, to facilitate peaceful coexistence with PyDO1. * explicit schema support (as in 'myschema.mytable'). * The "table" attribute can now be left out if the class name is the name of the table. * "refetch" behavior has been refactored. * there are a bunch of classes to help in doing various kinds of joins. What it is ---------- PyDO is Drew Csillag's ORM (Object-Relational Mapper) database access library for Python that facilitates writing a Python database access layer. PyDO attempts to be simple, flexible, extensible, and unconstraining. PyDO 2 is a rewrite of the 1.x series distributed with SkunkWeb. It has several enhancements: * PyDO can now be used in multi-threaded or twisted-style asynchronous sitations, with or without a customizable connection pool. * PyDO objects are now dict subclasses, but also support attribute access to fields. * Projections -- subsets of the field list of a super-class -- are now supported by the PyDO.project() method. * Table attributes are now declared in a more concise way. * Overall, the API has been tightened and the code restructured. It also has several limitations: * PyDO 2 is alpha code. Bugs should be expected, and the API is not guaranteed to be stable. * Currently, PyDO 2 supports fewer database systems than PyDO 1 (PostgreSQL, SQLite, and MySQL), although adding new drivers should not be difficult. * PyDO 2 requires Python 2.4 or later. PyDO is dual GPL/BSD licensed. The source tarball is available at SkunkWeb's berlios site: https://developer.berlios.de/projects/skunkweb/ or, more directly: http://download.berlios.de/skunkweb/PyDO-2.0a1.tar.gz Questions pertaining to PyDO can be addressed to the SkunkWeb mailing list at sourceforge: http://lists.sourceforge.net/lists/listinfo/skunkweb-list Cheers, js -- Jacob Smullyan From bud at comune.grosseto.it Tue May 10 19:04:56 2005 From: bud at comune.grosseto.it (Bud P. Bruegger) Date: Tue, 10 May 2005 19:04:56 +0200 Subject: SC-Corporate-ID release Message-ID: <5.2.1.1.0.20050510190454.0328f560@mail.comune.grosseto.it> Dear all, I am very pleased to announce the release of SC-Corporate-ID. SC-Corporate-ID is a commercial Smart Card security system that can be extended by the user using the Python language. SC-Corporate-ID is written in Python and wxPython for the most part (except for the PCSC wrapper, the GINA dll and the crypto) on the PC side, and in .... other languages on the Smart Card side. The PCSC driver (PYCSC) and the crypto (PYCRYPTO) are public domain packages (PYCSC was slightly modified by us) SC-Corporate-ID is an off-the shelf package: you can use it as is; yet, as it is based on a set of libraries (SCF), it can be modified and customized by the company using it (the restriction being the capabilities of the code in the Smart Card which would have to be modified by us). SC-Corporate-ID can be used for PC Access, Data Security (file encryption/signature), Company Electronic Purse and Corporate Identification. Some of its possible extentions are Building Access and WEB Security. SC-Corporate-ID cards can be delivered pre-programmed (firwmare + data) or simply with the firmware so the user may handle its own cards issuance. Although it is a commercial product, SC-Corporate-ID intends to be a true low cost security solution for Corporations. SC-Corporate-ID will soon be followed by a School/University ID as well as an Health Card ID. You may find information on SC-Corporate-ID at www.snakecard.com. Best regards, Philippe Martin -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html ------------------------------------------------------------------------------------------------- Ing. Bud P. Bruegger, Ph.D. +39-0564-488577 (voice), -21139 (fax) Servizio Elaborazione Dati e-mail: bud at comune.grosseto.it Comune di Grosseto http://www.comune.grosseto.it/cie/ Via Ginori, 43 http://OpenPortalGuard.sf.net 58100 Grosseto (Tuscany, Italy) jabber: bud at amessage.info Free Software in Public Administration: not just a good idea, but a necessity Perfection is attained, not when there is nothing more to be added, but when there is nothing more to be taken away -- Antoine de Saint-Exupery From aahz at pythoncraft.com Wed May 11 16:36:38 2005 From: aahz at pythoncraft.com (Aahz) Date: Wed, 11 May 2005 07:36:38 -0700 Subject: CHANGE BayPIGgies: May *THIRD* Thurs Message-ID: <20050511143638.GA14331@panix.com> Reminder: We will *NOT* be meeting the *SECOND* Thursday (this week, May 12). Our May meeting will be the *THIRD* Thursday, May 19. This will be our first meeting at Google, with Alex Martelli's presention on design patterns. More details soon! -- Aahz (aahz at pythoncraft.com) <*> http://www.pythoncraft.com/ "And if that makes me an elitist...I couldn't be happier." --JMS From jeff at taupro.com Wed May 11 23:06:13 2005 From: jeff at taupro.com (Jeff Rush) Date: Wed, 11 May 2005 16:06:13 -0500 Subject: Dallas Ft. Worth Pythoneers' Meetings Message-ID: <200505111606.13286.jeff@taupro.com> Contents Within: [1] Evening social at Springcreek this Thursday [2] Programming session at Nerdbooks this Saturday [3] Club version control repository established [1] The DFW Pythoneers, an open discussion group based around the Python programming language, will be having its 6th get-together this week. We always meet the second-thursday of the month. The details are: When: Thursday, May 12 at 7:00 pm Where: Spring Creek BBQ (enclosed patio on side of building) 14941 Midway Road Addison TX 75001 (972) 385-0970 There is a map on the Meetup website at (the DFW group is chapter 10): http://python.meetup.com/10/ [2] And although it's short notice, we're also having our first programming session this Saturday from 2:00 pm to 5:00 pm at Nerdbooks.com in Richardson. I understand if a lot of you can't make it without more notice so we'll just be checking out the facilities, testing the network, setting up whiteboards and cruising the Python bookshelves. Bring your laptops. You can find directions to Nerdbooks at www.nerdbooks.com. We have a mailing list, separate from that at Meetup. You can find it at: http://www.taupro.com/lists And Python-specific resources and such on our new wiki at: http://python.taupro.com/ [3] I've also set up a Subversion-based version control repository at: http://python.taupro.com/repo/ I'd also like to ask those planning to participate in the coding sprints to prepare their laptops with the necessary software, to save time. Details are on the wiki at: http://python.taupro.com/SprintingSetup As we meet to begin some projects, I'll give out write-access passwords. The repository is publically readable so everyone can watch the projects. I hope to see some of you at Spring Creek BBQ or Nerdbooks this week. Jeff Rush, DFW Pythoneers Coordinator From jacob at cd.chalmers.se Wed May 11 23:22:12 2005 From: jacob at cd.chalmers.se (Jacob Hallen) Date: 11 May 2005 21:22:12 GMT Subject: Europython update Message-ID: This is a news update about the Europython 2005 conference, to be held in Göteborg, Sweden 27-29 June - We have received a very nice array of talks this year, and we expect to be the biggest Python conference ever in terms of subjects covered. Many thanks to all the speakers who are putting their efforts into this. - A list of talks is now available,either through the "Track Overview" menu item on the Europython website, or directly at http://www.python-in-business.org/ep2005/atracks.chtml - Around the end of May we will be soliciting input from all attendees on what talks they aremost interested in. This information will be used in scheduling, in order to reduce the amounts of collisions between popular talks and in order to reduce the risk of overcrowding a small room with a talk that turns out to be very popular. - Early bird registrations end 15 May. Registration for the low cost accomodation close to the conference venue ends on the same day. We may have further accomodation available at a later date, but we can't make any promises. - Please help us become the biggest Python/Zope conference. Talk to your friends about Europython and write about the conference in your blog. The more people who show up, the more we can spend on getting the best and most interesting talks. - This year we have a special focus on Python newbies in the Tutorials track. If you have staff or customers who need a well rounded introduction to Python, send them to Europython 2005. For all conference details, go to: http://www.europython.org See you in Göteborg. EuroPython Team. About EuroPython: Europython is an annual conference for the Python and Zope communities. It circulates between different sites in Europe. Having started in Charleroi, Belgium, it is now in Göteborg, Sweden and will move to CERN in Swizerland next year. Europython is a community conference run by volunteers. -- From unicorn at kurskline.ru Thu May 12 11:52:10 2005 From: unicorn at kurskline.ru (Roman V. Kiseliov) Date: Thu, 12 May 2005 13:52:10 +0400 Subject: pyExcelerator 0.5.0a released (Python + FreeBSD + Excel 5/95/97/2k/XP/2k3 + UNICODE) Message-ID: <243904249.20050512135210@kurskline.ru> Hi! I'm pleased to announce that pyExcelerator 0.5.0a is now available for download. ------------------------------------------------------- What can you do with pyExcelerator: Generating Excel 97+ files with Python 2.4+ (need decorators), importing Excel 95+ files, support for UNICODE in Excel files, using variety of formatting features and printing options, Excel files and OLE2 compound files dumper. No need in Windows/COM -------------------------------------------------------- CHANGES: 0.4.0a (27.03.2005) --------- * First public version 0.5.0a (11.05.2005) --------- * pyExcelerator now can import Excel 5/95/97/2000/XP/2003 files. With imported information you can do what you want. See ./examples/xls2txt.py for reference. * fixed bug in MS OLE2 compound document dumper (not in writer :)) Bug causes dumper to combine links in sectors' allocation chain sectors contained in additional MSAT with SAT data. * Excel files dumper supports now Excel 5/95/97/2000/XP/2003 files and produces more informative output. ------------------------------------------------------------- DOWNLOAD: http://sourceforge.net/projects/pyexcelerator/ http://www.kiseliov.ru/downloads.html ------------------------------------------------------------- Regards, Roman V. Kiseliov, roman at kiseliov.ru From thesamet.nospam at pythonchallenge.com Thu May 12 11:35:14 2005 From: thesamet.nospam at pythonchallenge.com (pythonchallenge) Date: Thu, 12 May 2005 12:35:14 +0300 Subject: The Python Challenge - for riddle lovers! Message-ID: For the riddles' lovers amongst you, you are most invited to take part in The Python Challenge, the first programming riddle on the net. Every riddle can be solved by a bit of Python programming. It is a great and unique way to explore the "included batteries" of Python. You are most invited to take part in it at: http://www.pythonchallenge.com From unicorn at kurskline.ru Sat May 14 11:27:18 2005 From: unicorn at kurskline.ru (Roman V. Kiseliov) Date: Sat, 14 May 2005 13:27:18 +0400 Subject: pyExcelerator 0.5.1a released Message-ID: <4285C476.6070200@kurskline.ru> Hi! I'm pleased to announce that pyExcelerator 0.5.1a is now available for download. ------------------------------------------------------- What can you do with pyExcelerator: Generating Excel 97+ files with Python 2.4+ (need decorators), importing Excel 95+ files, support for UNICODE in Excel files, using variety of formatting features and printing options, Excel files and OLE2 compound files dumper. No need in Windows/COM --------------------------------------------------------- 0.5.1a (14.05.2005) --------- * improved floating point decoding code (thanks to Dmitry Vasiliev) ---------------------------------------------------------- Also thanks for valuable discussion to /Oleg Ponomarev, Oleg Komkov and Thomas Guettler. / Regards, Roman V. Kiseliov roman at kiseliov.ru -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-announce-list/attachments/20050514/bd1d610e/attachment.htm From frank at niessink.com Sat May 14 21:47:55 2005 From: frank at niessink.com (Frank Niessink) Date: Sat, 14 May 2005 21:47:55 +0200 Subject: [ANN] Release 0.37 of Task Coach Message-ID: <428655EB.90700@niessink.com> Hi all, I'm pleased to announce release 0.37 of Task Coach. New in this release: Bugs fixed: - Icons in tree view on Windows 2000 (1194654). I hope I fixed this, but since I have no access to Windows 2000 it's a bit difficult to test. Features added: - Columns in the task list view can be turned on/off by right-clicking on the column headers. - Tasks can be sorted either by due date or alphabetically (1177984). - More options when editing an effort record. - Used a new DatePickerCtrl (1191909). What is Task Coach? Task Coach is a simple task manager that allows for hierarchical tasks, i.e. tasks in tasks. Task Coach is open source (GPL) and is developed using Python and wxPython. You can download Task Coach from: http://taskcoach.niessink.com https://sourceforge.net/projects/taskcoach/ A binary installer is available for Windows XP, in addition to the source distribution. Note that Task Coach is alpha software, meaning that it is wise to back up your task file regularly, and especially when upgrading to a new release. Cheers, Frank From bvdp at uniserve.com Sat May 14 22:18:53 2005 From: bvdp at uniserve.com (Bob van der Poel) Date: Sat, 14 May 2005 13:18:53 -0700 Subject: mma - Musical MIDI Accompaniment version Beta 0.14 Message-ID: <118cnkkhmlu9ucd@corp.supernews.com> I'm pleased to announce the release of my program mma - Musical MIDI Accompaniment version: Beta 0.14 MMA is a accompaniment generator -- it creates midi tracks for a soloist to perform with. User supplied files contain pattern selections, chords, and MMA directives. MMA is very versatile and generates excellent tracks. It comes with an extensive user-extendable library with a variety of patterns for various popular rhythms, an extensive user manual, and many demo songs. MMA is a command line driven program. It creates MIDI files which need a sequencer or MIDI file play program. MMA is written in Python. You'll need Python 2.3 (or later) for MMA to function. MMA is supplied in 4 tar.gz archives. Included: mma-bin -- the main script and library files. mma-html -- documentation in HTML format. mma-pdf -- documentation in PDF format. mma-songs -- a collection of about 230 songs in MMA format. If you get all four download packages the total size is still less than 1.5 megabytes. MMA is currently in final BETAs. We are hoping for a 1.0 release in summer 2005. Right now we need help in debugging the program, creating songs for distribution, and new and improved library files. Best of all, MMA is free. It is released under the terms of the GNU General Public License. It has been developed on a Linux platform, but should be usable on just about any system. A detailed page now exists on our web site on how-to install on a Windows system. MMA is available on my personal home page: http://mypage.uniserve.com/~bvdp/mma/ If you have any questions or comments, please send them to: bvdp at uniserve.com Beta 0.14: A number of bug fixes, many more system macros, ALLTRACKS command added, major fixes to chord generation. Comments appreciated! -- Bob van der Poel ** Wynndel, British Columbia, CANADA ** EMAIL: bvdp at uniserve.com WWW: http://mypage.uniserve.com/~bvdp From sjmachin at lexicon.net Sun May 15 12:13:00 2005 From: sjmachin at lexicon.net (sjmachin@lexicon.net) Date: Sun, 15 May 2005 20:13:00 +1000 Subject: Release of version 0.3a1 of xlrd (Excel read) package Message-ID: <4287AD4C.13488.2BEF2E4@localhost> The first publicly-released version of the xlrd (Excel read) package is now available for download from: * http://www.lexicon.net/sjmachin/xlrd.htm * PyPI (Windows installer only; unresolved problem with uploading source-distribution zip file) Purpose: Provide a library for developers to extract data from Microsoft Excel (tm) spreadsheet files. It is not an end-user tool. Platform: Any. You don?t need to be on Windows. If you are, you can avoid hassles with approaches like COM, ODBC, save-as-CSV, etc Python requirements: Works with Python 2.2 or later. There are no dependencies on modules or packages outside the standard Python distribution. Versions of Excel supported: 2004, 2002, XP, 2000, 97, 95, 5.0, 4.0, 3.0. Features: * Strong support for handling dates, and documentation of Excel date problems and how to avoid them. * Unicode aware; correctly handles "compressed" Unicode in modern files; decodes legacy charsets in older files (if Python has the codec). * Extracts all data (including Booleans and error-values) Exclusions: xlrd will not attempt to decode password-protected (encrypted) files. Otherwise, it will safely and reliably ignore any of these if present: * Anything to do with the on-screen presentation of the data (fonts, panes, column widths, row heights, ...) * Charts, Macros, Pictures, any other embedded object. WARNING: currently this includes embedded worksheets. * Visual Basic (VBA) modules * Formulas (results of formula calculations are extracted, of course) * Comments and hyperlinks WANTED: *ALPHA* testers with: * bigendian platforms, and/or * Excel 95 (or earlier) files created in non-Latin1 locales Feedback: mailto: sjmachin at lexicon.net preferably with [xlrd] in the message subject. ------- End of forwarded message ------- From chris at simplistix.co.uk Sun May 15 16:29:40 2005 From: chris at simplistix.co.uk (Chris Withers) Date: Sun, 15 May 2005 15:29:40 +0100 Subject: X2Y 1.1.7 Document Processor Released! Message-ID: <42875CD4.6060009@simplistix.co.uk> X2Y is a flexible, configurable and extendable server-based document processing framework written in python. It has the following feaures: - Cross platform - Fully documented - Run as either a cron job, scheduled task or by hand - Fully configurable logging and notification - Fully configurable processing chains, including multiple seperate processing chains on a single server - Scriptable conversion plugins, inputs and outputs - Processors can be written in ANY language - Input from local file system, http get or imap folder supplied as standard - Output to local file system, http post or mail message supplied as standard - Supplied processors for EasyPDF and OpenOffice for document conversion Potential applications include server-side document conversion, virus scanning. We are particularly interested in hearing from anyone who develops new inputs, outputs and processors! For more information, please see: http://www.simplistix.co.uk/software/applications/x2y cheers, Chris -- Simplistix - Content Management, Zope & Python Consulting - http://www.simplistix.co.uk From jacob at cd.chalmers.se Sun May 15 23:34:35 2005 From: jacob at cd.chalmers.se (Jacob Hallen) Date: 15 May 2005 21:34:35 GMT Subject: Optimise Europython competition Message-ID: A classic dilemma for conferences is that if you have many tracks, you may find that all of a sudden, a room is swamped, and there is a queue of people wanting to get in. Another problem is that you risk scheduling talks against each other that have a very large set of interested people in common. At Europython we are this year going to try a new way of scheduling, in order to reduce these problems. Before the schedule is made, we will give all attendees the opportunity to register what talks they are most interested in. We then want to make a schedule that is optimised based on these data. Since I am no expert in optimising algorithms of this type, and since the time I have available for these things is limited, I'm turning to the readers of c.l.p and python-logic for help. I'm offering the following bounty for a working solution (in Python): - Free attendance at this years Europython, as a guest of honour - A Europython T-shirt in a limited special edition - Fame and gratitude from conference attendees who get better scheduling The winner of the bounty is the person who scores most points, according to the criteria below. If we get more than one solution that does good optimisation, we will award more than one bounty. Here are the parameters: 1. There are 10 tracks with between 1 and 30 talks in each track. You may not schedule two talks in the same track against each other, unless there is more talks than available calendar time. 2. A track should be continuous. Each track that is continuous gives you 10 points. 3. We expect about 300 attendees. About half of them are expected to register their interests. Interests may range from a single talk to more than half of all the talks. You get one point for each talk an attendee can attend out of the ones the attendee has registered interest in. 4. Talks are of varying lengths. Lengths can be 30, 45, 60 and 90 minutes. The large majority of talks are 30 minutes. Only a very few are 45 minutes. 5. Rooms come in different sizes Room A has 180 seats Room B has 140 seats Room C has 140 seats Room D has 70 seats Room E has 70 seats Room A-D should be scheduled throughout the conference while room E is extra expansion space, only to be used when absolutely necessary. For every person scheduled above (Room capacity * (Number of responding attendees / Total number of attendees)) you get one point taken off your score. 6. There are a total of 10 90-minute time blocks. Day 1: 09:00 Day 1: 11:00 Day 1: 14:00 Day 1: 16:00 Day 2: 09:00 Day 2: 11:00 Day 2: 14:00 Day 2: 16:00 Day 3: 09:00 Day 3: 11:00 A track should not change room in the middle of a time block. Doing so reduces your score by 50 points. 7. Input data You get your input data in the form of a list of tuples; one tuple per talk. Each tuple looks like this: (, , , [list of interested attendees]) Talk length is an integer, all other items are strings. 8. Output data You should supply your output data in the form of a list of tuples; one tuple per talk. Each tuple should look like this: (, , , ) Talk id should be the same as in the input. Room should be a one letter string with a value in the range A-E. Day should be a one letter string in the range 1-3. Starting time should be a string on the form HH:MM, in the 24 hour clock. Solutions should be sent by email to europython at python.org no later than 1 June 2005. Currently we haven't started gathering real data, but there should be some available for real world testing before 1 June. -- From aahz at pythoncraft.com Mon May 16 07:18:25 2005 From: aahz at pythoncraft.com (Aahz) Date: Sun, 15 May 2005 22:18:25 -0700 Subject: BayPIGgies: May 19, 7:30pm (FIRST meeting at Google) Message-ID: <20050516051825.GA4426@panix.com> NOTE: we are no longer meeting at Stanford; the May meeting is at Google in Mountain View. The next meeting of BayPIGgies will be Thurs, May 19 at 7:30pm. NOTE: to celebrate our first meeting at Google, Google will be providing a buffet dinner starting at 6:45pm. Alex Martelli will be repeating his OSCON/PyCon presentations about OOP and design patterns -- with improvements! BayPIGgies meetings alternate between IronPort (San Bruno, California) and Google (Mountain View, California). For more information and directions, see http://www.baypiggies.net/ Advance notice: The June 9 meeting agenda has been set. Drew Perttula will be talking about his Python-based lighting system controller. Advance notice: The July 14 meeting agenda has not been set. Please send e-mail to baypiggies at baypiggies.net if you want to suggest an agenda (or volunteer to give a presentation). -- Aahz (aahz at pythoncraft.com) <*> http://www.pythoncraft.com/ "And if that makes me an elitist...I couldn't be happier." --JMS From webmaster at keyphrene.com Mon May 16 09:20:54 2005 From: webmaster at keyphrene.com (webmaster@keyphrene.com) Date: Mon, 16 May 2005 07:20:54 GMT Subject: ANN: org.keyphrene is now available Message-ID: <428849d7$0$9587$626a14ce@news.free.fr> org.keyphrene is a Python wrapper for LibSSH2 and OpenSSL libraries. Includes: yEnc coder and decoder org.keyphrene is available for download from the Keyphrene web site: http://www.keyphrene.com/products/org.keyphrene/ From python-url at phaseit.net Mon May 16 15:27:30 2005 From: python-url at phaseit.net (Simon Brunning) Date: Mon, 16 May 2005 13:27:30 +0000 Subject: Dr. Dobb's Python-URL! - weekly Python news and links (May 16) Message-ID: QOTW: "As you learn Python, you will find that your PHP code will improve, possibly becoming more and more concise until it disappears completely." - Jorey Bump (Responding to a quotaton of Sturgeon's law: "Ninety percent of everything is crap.") "fwiw, this is of course why google displays 10 results on the first page. according to the law, one of them is always exactly what you want." - Fredrik Lundh Testing for an empty iterator: http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/413614 Python email libraries, part 1: POP3: http://www.devshed.com/c/a/Python/Python-Email-Libraries-part-1-POP3/ Solipsis, a peer-to-peer system for a massively multi-participant virtual world: http://solipsis.netofpeers.net/wiki/HomePage/ Twisted reStructuredText server: http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/413609 How can Python's documentation be improved? http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/d96afc7dd63cbe24 Static typing exposed: http://seanmcgrath.blogspot.com/archives/2005_05_08_seanmcgrath_archive.html#111597032916040577 Finding Unique Elements in a List: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/3011d698d9b764f2 Diving into PyParsing: http://www.advogato.org/person/titus/diary.html?start=89 Notable releases: PyGTK 2.6.2: http://www.pygtk.org/ Python for .NET 1.0 RC1 http://www.zope.org/Members/Brian/PythonNet ======================================================================== Everything Python-related you want is probably one or two clicks away in these pages: Python.org's Python Language Website is the traditional center of Pythonia http://www.python.org Notice especially the master FAQ http://www.python.org/doc/FAQ.html PythonWare complements the digest you're reading with the marvelous daily python url http://www.pythonware.com/daily Mygale is a news-gathering webcrawler that specializes in (new) World-Wide Web articles related to Python. http://www.awaretek.com/nowak/mygale.html While cosmetically similar, Mygale and the Daily Python-URL are utterly different in their technologies and generally in their results. For far, FAR more Python reading than any one mind should absorb, much of it quite interesting, several pages index much of the universe of Pybloggers. http://lowlife.jp/cgi-bin/moin.cgi/PythonProgrammersWeblog http://www.planetpython.org/ http://mechanicalcat.net/pyblagg.html comp.lang.python.announce announces new Python software. Be sure to scan this newsgroup weekly. http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python.announce Steve Bethard, Tim Lesher, and Tony Meyer continue the marvelous tradition early borne by Andrew Kuchling, Michael Hudson and Brett Cannon of intelligently summarizing action on the python-dev mailing list once every other week. http://www.python.org/dev/summary/ The Python Package Index catalogues packages. http://www.python.org/pypi/ The somewhat older Vaults of Parnassus ambitiously collects references to all sorts of Python resources. http://www.vex.net/~x/parnassus/ Much of Python's real work takes place on Special-Interest Group mailing lists http://www.python.org/sigs/ The Python Business Forum "further[s] the interests of companies that base their business on ... Python." http://www.python-in-business.org Python Success Stories--from air-traffic control to on-line match-making--can inspire you or decision-makers to whom you're subject with a vision of what the language makes practical. http://www.pythonology.com/success The Python Software Foundation (PSF) has replaced the Python Consortium as an independent nexus of activity. It has official responsibility for Python's development and maintenance. http://www.python.org/psf/ Among the ways you can support PSF is with a donation. http://www.python.org/psf/donate.html Kurt B. Kaiser publishes a weekly report on faults and patches. http://www.google.com/groups?as_usubject=weekly%20python%20patch Cetus collects Python hyperlinks. http://www.cetus-links.org/oo_python.html Python FAQTS http://python.faqts.com/ The Cookbook is a collaborative effort to capture useful and interesting recipes. http://aspn.activestate.com/ASPN/Cookbook/Python Among several Python-oriented RSS/RDF feeds available are http://www.python.org/channews.rdf http://bootleg-rss.g-blog.net/pythonware_com_daily.pcgi http://python.de/backend.php For more, see http://www.syndic8.com/feedlist.php?ShowMatch=python&ShowStatus=all The old Python "To-Do List" now lives principally in a SourceForge reincarnation. http://sourceforge.net/tracker/?atid=355470&group_id=5470&func=browse http://python.sourceforge.net/peps/pep-0042.html The online Python Journal is posted at pythonjournal.cognizor.com. editor at pythonjournal.com and editor at pythonjournal.cognizor.com welcome submission of material that helps people's understanding of Python use, and offer Web presentation of your work. del.icio.us presents an intriguing approach to reference commentary. It already aggregates quite a bit of Python intelligence. http://del.icio.us/tag/python *Py: the Journal of the Python Language* http://www.pyzine.com Archive probing tricks of the trade: http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python&num=100 http://groups.google.com/groups?meta=site%3Dgroups%26group%3Dcomp.lang.python.* Previous - (U)se the (R)esource, (L)uke! - messages are listed here: http://www.ddj.com/topics/pythonurl/ (requires subscription) http://groups-beta.google.com/groups?q=python-url+group:comp.lang.python*&start=0&scoring=d& http://purl.org/thecliff/python/url.html (dormant) or http://groups.google.com/groups?oi=djq&as_q=+Python-URL!&as_ugroup=comp.lang.python Suggestions/corrections for next week's posting are always welcome. E-mail to should get through. To receive a new issue of this posting in e-mail each Monday morning (approximately), ask to subscribe. Mention "Python-URL!". -- The Python-URL! Team-- Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and sponsor the "Python-URL!" project. From john at totalrekall.co.uk Mon May 16 15:24:02 2005 From: john at totalrekall.co.uk (John Dean) Date: Mon, 16 May 2005 13:24:02 GMT Subject: ANN: Rekall/WEB Message-ID: <42889ec9$0$15275$db0fefd9@news.zen.co.uk> Hi I would like to announce the release of Rekall/WEB. Through the power of Python, you can now turn your Rekall desktop application into a web based application, with any loss of functionality and with a comparable look 'n feel. You can now design on the desktop and deploy on the web. There is no long an need to go through endless cycles of editing, uploading, and testing. You can even design your database tables, develope and test complex quiries, develope your back-end business logic, etc all within one powerful easy to use desktop application - Rekall. Take a look at www.rekallrevealed.org for a very simple example of a Rekall/WEB powered web site. More information on Rekall/WEB is available at both www.rekallrevealed.org and www.totalrekall.co.uk -- Best Regards John From grig.gheorghiu at gmail.com Mon May 16 16:45:33 2005 From: grig.gheorghiu at gmail.com (Grig Gheorghiu) Date: 16 May 2005 07:45:33 -0700 Subject: SoCal Piggies Meeting 05/17 Message-ID: <1116254733.475908.195560@g47g2000cwa.googlegroups.com> The Southern California Python Interest Group (aka SoCal Piggies) will meet tomorrow 05/17 at USC from 7 PM to 9 PM. If you are interested, please check the group's Wiki for more details: http://agile.unisonis.com/socalpiggies Grig Gheorghiu From gh at ghaering.de Mon May 16 20:30:06 2005 From: gh at ghaering.de (Gerhard Haering) Date: Mon, 16 May 2005 20:30:06 +0200 Subject: [ANN] pysqlite 2.0.0 final released! Message-ID: <20050516183006.GA4284@mylene.ghaering.de> Hello everyone, After pondering about a redesign of pysqlite for years, and now after half a year of development, I am happy to finally announce the first stable release of pysqlite2. pysqlite a DB-API 2.0-compliant database interface for SQLite. SQLite is a relational database management system contained in a relatively small C library. It is a public domain project created by D. Richard Hipp. Unlike the usual client-server paradigm, the SQLite engine is not a standalone process with which the program communicates, but is linked in and thus becomes an integral part of the program. The library implements most of SQL-92 standard, including transactions, triggers and most of complex queries. pysqlite makes this powerful embedded SQL engine available to Python programmers. It stays compatible with the Python database API specification 2.0 as much as possible, but also exposes most of SQLite's native API, so that it is for example possible to create user-defined SQL functions and aggregates in Python. If you need a relational database for your applications, or even small tools or helper scripts, pysqlite is often a good fit. It's easy to use, easy to deploy, and does not depend on any other Python libraries or platform libraries, except SQLite. SQLite itself is ported to most platforms you'd ever care about. It's often a good alternative to MySQL, the Microsoft JET engine or the MSDE, without having any of their license and deployment issues. pysqlite homepage: http://pysqlite.org/ On the homepage, there's also a bug tracking system and a wiki. Sources: http://initd.org/pub/software/pysqlite/releases/2.0/2.0.0/pysqlite-2.0.0.tar.gz Windows binaries for Python 2.3: http://initd.org/pub/software/pysqlite/releases/2.0/2.0.0/pysqlite-2.0.0.win32-py2.3.exe Windows binaries for Python 2.4: http://initd.org/pub/software/pysqlite/releases/2.0/2.0.0/pysqlite-2.0.0.win32-py2.4.exe Advantages of pysqlite 2.0 over pysqlite 1.x ============================================ - Straightforward: No surprises: pysqlite 2.0 does not convert any types behind your back. With default settings, it only supports the database types SQLite supports out of the box: INTEGER, REAL, TEXT, BLOB and NULL. - Documentation: pysqlite 2.0 now has usable documentation. The usage manual covers the full API. - Advanced type system: It is, however, possible to turn on type detection like in the old pysqlite. Types can be detected by their declared type in the "CREATE TABLE" statement. Or, for values that don't originate directly from tables or views, it's possible to detect the type from the column name via a neat trick. For details, look into the pysqlite usage manual. No more "-- types" hack like in the old pysqlite. Type conversion from Python to SQLite works via PEP-246-like object adaptation. - Fine-grained transaction control: pysqlite 2.0 allows to control which type of transactions are opened via the transaction_isolation property - None for auto-commit mode or one of SQLite's transaction types "DEFERRED", "IMMEDIATE", "EXCLUSIVE". - executemany() uses precompiled statements for optimal speed. - Result sets are not prefetched any more, rows are only fetched on demand. So, pysqlite 2.0 behaves a lot nicer with respect to memory usage. - pysqlite 2.0 supports both the "qmark" and "named" paramstyle. So you can supply query parameters as sequences or as mappings. - Performance: pysqlite 2.0 is almost entirely written in hand-coded C. Under most circumstances, it is noticeably faster than the old pysqlite. On the pysqlite wiki, there's a page with benchmarks: http://initd.org/tracker/pysqlite/wiki/PysqliteBenchmarks The benchmark shows that executemany() is 5 times as fast as in pysqlite 1.1. Open issues: ============ pysqlite 2.0 does currently not compile under MacOS X Tiger (10.2 seems to work for me on the SF compile farm), because of unresolved symbols. Unfortunately, I don't have access to that platform. I will need a patch with a real fix from a MacOS X users to fix the problem. And, for those who have followed the alpha/beta testing: Changes since pysqlite 2.0beta1 =============================== - Removed dead code. - Improved error handling. - Fixed a leak that occurred when erroneous SQL was sent to execute(many)(). - Recognize REPLACE as DML statement and start transactions appropriately. - Issue a Warning when users send more than one SQL statement to execute(many)(). - Changed a few mappings SQLite error => DB-API exception. - Added lots of new unit tests so all testable code paths are tested/executed. This was done when doing coverage testing using gcov. - Implemented a nonstandard convenience method cursor.executescript(sql) to execute several SQL statements in a bunch, for example for creating a database initially. - The converters dictionary was moved from the Connection object into the DB-API module. Register converters with register_converter(converter_name, callable). - the prepareProtocol parameter is gone. - instead, register adapters directly with register_adapter(type, adapter_callable) in the DB-API module. - check for closed connections - make sure it's impossible to destroy connections as long as there are still cursors using them - fixed a crash when a converter returned None - fixes to MANIFEST.in - default converters and adapters for date/date and datetime/timestamp - Replaced autocommit flag with isolation_level flag. This way, it's possible to use no transaction handling at all (autocommit), or control the types of transactions that are created (DEFERRED, IMMEDIATE, EXCLUSIVE). - thread_id is now long instead of int - so pysqlite compiles on 64-bit platforms, too. -- Gerhard H?ring - gh at ghaering.de - Python, web & database development -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://mail.python.org/pipermail/python-announce-list/attachments/20050516/28a078b7/attachment.pgp From michele.simionato at gmail.com Mon May 16 17:05:11 2005 From: michele.simionato at gmail.com (Michele Simionato) Date: 16 May 2005 08:05:11 -0700 Subject: decorator module Message-ID: <1116255911.854633.246380@g14g2000cwa.googlegroups.com> I have written a decorator module to make easier to write good decorators (i.e. decorators preserving the signature of the functions they decorate). The documentations contains a (hopefully) nice collections of use cases (which are also test cases, sice I take doctest very seriously ;). You can find it here: http://www.phyast.pitt.edu/~micheles/python/decorator.zip It is released under the Python licence. Let me know if you are using it and if you would like further additions/improvements/changes/etc. Feeback is welcome! Michele Simionato From jbellis at gmail.com Tue May 17 00:34:02 2005 From: jbellis at gmail.com (Jonathan Ellis) Date: 16 May 2005 15:34:02 -0700 Subject: Spyce 2.0 final Message-ID: <1116282841.888494.266690@g47g2000cwa.googlegroups.com> Spyce 2.0 is available at http://spyce.sourceforge.net/docs/get.html. Spyce is a python web application server, combining the features of popular frameworks such as ASP.NET and JSP with Pythonic elegance. Spyce may be deployed as a standalone server (or proxied behind Apache), or under mod_python, FastCGI, or CGI. Documentation and demos are at http://spyce.sourceforge.net/. Highlights of Spyce 2.0 include: Active Handlers - reusable components without the leaky abstractions seen in ASP.NET et al. - http://spyce.sourceforge.net/docs/doc-lang_handlers.html Active Tag compiler - http://spyce.sourceforge.net/docs/doc-tag_new2.html OpenACS-like (Tiles-ish, for you JSP people) parent/child layout system - http://spyce.sourceforge.net/docs/doc-tag_core.html#parent -Jonathan From thehaas at binary.net Tue May 17 22:53:40 2005 From: thehaas at binary.net (Mike Hostetler) Date: 17 May 2005 15:53:40 -0500 Subject: Introducing jyset Message-ID: <87r7g5h8vf.fsf@gideon.cox.net> >From the README: jyset -- a Set class for Jython Copyright (c) 2005 by Mike Hostetler All Rights Reserved. jyset is distributed under the Apache 2.0 license jyset is a module that implements a Set class in Jython that emulates the Set class introduced in CPython 2.3. Note that this is an implementation of Set class -- not BaseSet or ImmutableSet. For more information about the Set class, see the current Python documentation on that module: http://docs.python.org/lib/module-sets.html jyset currenly lacks some type checking -- for example, if you try to check to see if s2 is a superset of s1 and s2 is really an integer, you will get a more cryptic error. You have been warned (if someone would like to help with this . . ) See the main function of jyset.py or the sample.py for usage help, although the link to the Python Docs would probably be more helpful! You can download it from here: http://users.binary.net/thehaas/lab/files/jyset.zip -- Mike Hostetler thehaas at binary.net http://www.binary.net/thehaas From unicorn at kurskline.ru Wed May 18 08:51:26 2005 From: unicorn at kurskline.ru (Roman V. Kiseliov) Date: Wed, 18 May 2005 10:51:26 +0400 Subject: pyExcelerator 0.5.2a is available Message-ID: <428AE5EE.6050005@kurskline.ru> Hi! I'm pleased to announce that pyExcelerator 0.5.2a is now available for download. ------------------------------------------------------- What can you do with pyExcelerator: Generating Excel 97+ files with Python 2.4+ (need decorators), importing Excel 95+ files, support for UNICODE in Excel files, using variety of formatting features and printing options, Excel files and OLE2 compound files dumper. No need in Windows/COM --------------------------------------------------------- 0.5.2a (18.05.2005) --------- * improved perfomance (especially on nonfragmented streams) * now pyExcelerator can process XLS files with short streams * OLE2 compound document dumper supports short streams * reading UTF-16-LE and Latin-1 with more accuracy * in DSF (double stream file) XLS data extracted from stream "Workbook" * improved floating point/integer values decoding code ---------------------------------------------------------- Also thanks for valuable discussion to /John Machin. / Regards, Roman V. Kiseliov roman at kiseliov.ru -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-announce-list/attachments/20050518/d1b3ab14/attachment.html From aahz at pythoncraft.com Wed May 18 18:39:21 2005 From: aahz at pythoncraft.com (Aahz) Date: Wed, 18 May 2005 09:39:21 -0700 Subject: REMINDER: BayPIGgies: May 19, 7:30pm (FIRST meeting at Google) Message-ID: <20050518163921.GA24669@panix.com> NOTE: we are no longer meeting at Stanford; the May meeting is at Google in Mountain View. The next meeting of BayPIGgies will be Thurs, May 19 at 7:30pm. NOTE: to celebrate our first meeting at Google, Google will be providing a buffet dinner starting at 6:45pm. Alex will be repeating his OSCON/PyCon presentations about OOP and design patterns -- with improvements! BayPIGgies meetings alternate between IronPort (San Bruno, California) and Google (Mountain View, California). For more information and directions, see http://www.baypiggies.net/ Advance notice: The June 9 meeting agenda has been set. Drew Perttula will be talking about his Python-based lighting system controller. Advance notice: The July 14 meeting has a tentative plan for Alex Martelli to deliver his "Black Magic" talk. Advance notice: The August 11 meeting agenda has not been set. Please send e-mail to baypiggies at baypiggies.net if you want to suggest an agenda (or volunteer to give a presentation). -- Aahz (aahz at pythoncraft.com) <*> http://www.pythoncraft.com/ "And if that makes me an elitist...I couldn't be happier." --JMS From unicorn at kurskline.ru Thu May 19 12:54:14 2005 From: unicorn at kurskline.ru (Roman V. Kiseliov) Date: Thu, 19 May 2005 14:54:14 +0400 Subject: pyExcelerator 0.5.3a is now available Message-ID: <428C7056.5090007@kurskline.ru> Hi! I'm pleased to announce that pyExcelerator 0.5.3a is now available for download. ------------------------------------------------------- What can you do with pyExcelerator: Generating Excel 97+ files with Python 2.4+ (need decorators), importing Excel 95+ files, support for UNICODE in Excel files, using variety of formatting features and printing options, Excel files and OLE2 compound files dumper. No need in Windows/COM --------------------------------------------------------- 0.5.3a (19.05.2005) --------- * typos in biff-dumper.py fixed :( * now pyExcelerator can correctly import XLS files with charts * added ability to override default file's encoding * new examples (or tools :)) -- ./examples/xls2csv.py, ./examples/xls2html.py ---------------------------------------------------------- DOWNLOAD: http://sourceforge.net/projects/pyexcelerator/ http://www.kiseliov.ru/downloads.html /---------------------------------------------------------- / Regards, Roman V. Kiseliov roman at kiseliov.ru From webmaster at keyphrene.com Thu May 19 18:50:48 2005 From: webmaster at keyphrene.com (webmaster@keyphrene.com) Date: Thu, 19 May 2005 16:50:48 GMT Subject: ANN: Naja 1.2.1 is now available Message-ID: <428cc320$0$16408$626a14ce@news.free.fr> Naja is a download manager and a website grabber written in Python/wxPython.You can add some plugins (newsreader, FTP - FTPS - SFTP client,WebDAV client) and take control of your downloads from your office. Naja supports proxy (HTTP, HTTPS, FTP,SOCKS v4a, SOCKSv5), and use some authentication methods.The downloading maybe achieved by splitting the file being downloaded into several parts and downloading these parts at the same time (HTTP,HTTPS,FTP). Donwload speeds are increased by downloading the file from the mirrors sites,when the sites propose it. Others features: Csv filter Cheksums (CRC32, MD2, MD4, MD5, SHA, SHA1, MDC2, RMD160) Crypt (Only for the eXtended version) and Decrypt (AES, DES, 3DES ...) newsreader, newsposter (uue, yEnc) CGI & WebDAV Server Web Interface basic and digest authentication for client and server Compress and decompress (zip, tar.gz, tar.bz2) Picture viewer Text Editor Naja is available for download from the Keyphrene web site: http://www.keyphrene.com/products/naja From jeremysanders at gmail.com Thu May 19 23:19:18 2005 From: jeremysanders at gmail.com (Jeremy Sanders) Date: Thu, 19 May 2005 22:19:18 +0100 Subject: ANN: Veusz 0.6 - a scientific plotting package Message-ID: Veusz 0.6 --------- Velvet Ember Under Sky Zenith ----------------------------- http://home.gna.org/veusz/ Veusz is Copyright (C) 2003-2005 Jeremy Sanders Licenced under the GPL (version 2 or greater) Veusz is a scientific plotting package written in Python (currently 100% Python). It uses PyQt for display and user-interfaces, and numarray for handling the numeric data. Veusz is designed to produce publication-ready Postscript output. Veusz provides a GUI, command line and scripting interface (based on Python) to its plotting facilities. The plots are built using an object-based system to provide a consistent interface. Changes from 0.5: Please refer to ChangeLog for all the changes. Highlights include: * Major UI enhancements - much faster to control now, more dialogs * Veusz can be embedded within other non-PyQt Python programs. Its plots can be updated at any time from the embedding program using the command line interface. * Dialogs for manipulating datasets using expressions, and direct editing * Multiple documents can be opened simultaneously * Lots of bug fixes (e.g. log axes improvement, rotation of labels) * Unicode support in plots Features of package: * X-Y plots (with errorbars) * Stepped plots (for histograms) * Line plots * Function plots * Fitting functions to data * Stacked plots and arrays of plots * Plot keys * Plot labels * LaTeX-like formatting for text * EPS output * Simple data importing * Scripting interface * Save/Load plots * Dataset manipulation * Embed Veusz within other programs To be done: * Contour plots * Images * UI improvements * Import filters (for qdp and other plotting packages, fits, csv) Requirements: Python (probably 2.3 or greater required) http://www.python.org/ Qt (free edition) http://www.trolltech.com/products/qt/ PyQt (SIP is required to be installed first) http://www.riverbankcomputing.co.uk/pyqt/ http://www.riverbankcomputing.co.uk/sip/ numarray http://www.stsci.edu/resources/software_hardware/numarray Microsoft Core Fonts (recommended) http://corefonts.sourceforge.net/ For documentation on using Veusz, see the "Documents" directory. The manual is in pdf, html and text format (generated from docbook). If you enjoy using Veusz, I would love to hear from you. Please join the mailing lists at https://gna.org/mail/?group=veusz to discuss new features or if you'd like to contribute code. The newest code can always be found in CVS. If non GPL projects are interested in using Veusz code, please contact me. I am happy to consider relicencing code for other free projects, if I am legally allowed to do so. Cheers Jeremy From stuff at mailzilla.net Fri May 20 05:47:45 2005 From: stuff at mailzilla.net (stuff@mailzilla.net) Date: 19 May 2005 20:47:45 -0700 Subject: ReleaseForge 0.7.1 - A SourceForge release tool Message-ID: <1116560865.362801.72560@g44g2000cwa.googlegroups.com> ReleaseForge 0.7.1 is now available for download. This is a minor bugfix release. This version corrects a formatting bug when submitting project news. Additionally, auto-generated PyQt files were re-generated with pyuic version 3.14 (which fixes a QSizePolicy problem). -------------------------------------------- About ReleaseForge: ReleaseForge is a GUI application designed for project administrators and release engineers of projects that are hosted at SourceForge. It is intended to make it easier and faster to create a new release and edit existing releases rather than using the SourceForge Web interface. ReleaseForge streamlines the release effort by prompting you for information regarding your new release (version info, change log, release notes, files to include, etc). It then seamlessly negotiates with the SourceForge Web server, creating your release, posting your release notes/change log, uploading your files to the SourceForge FTP server, selecting the files for inclusion in your release on the SourceForge Web server, updating the file attributes of each of the files and then, if appropriate, notifying monitoring users of the new release. ------------------------------------------------------- http://releaseforge.sourceforge.net From walter at livinglogic.de Fri May 20 15:32:39 2005 From: walter at livinglogic.de (=?ISO-8859-1?Q?Walter_D=F6rwald?=) Date: Fri, 20 May 2005 15:32:39 +0200 Subject: ANN: XIST 2.10 released Message-ID: <1116595959.441836@localhost.localdomain> XIST 2.10 has been released! What is it? =========== XIST is an extensible HTML/XML generator written in Python. XIST is also a DOM parser (built on top of SAX2) with a very simple and Pythonesque tree API. Every XML element type corresponds to a Python class, and these Python classes provide a conversion method to transform the XML tree (e.g. into HTML). XIST can be considered "object oriented XSL". What's new in version 2.10? =========================== * The content of the processing instruction ll.xist.ns.code.pyexec will not be executed at construction time, but at conversion time. The code in ll.xist.ns.code.pyexec or ll.xist.ns.code.pyeval will no longer be executed in the ll.xist.sandbox module (which has been removed), but in a sandbox dictionary in the converter context of the ll.xist.ns.code namespace. * The tests have been ported to py.test. * The method mapped is now callable without arguments. In this case a converter will be created on the fly. You can pass constructor arguments for this converter to mapped as keyword arguments. * The publishing API has changed again: ll.xist.publishers.Publisher.publish now longer accepts an argument stream to which the byte strings are written, but it is a generator now. The publisher methods write and writetext have been renamed to encode and encodetext and return the encoded byte string, instead of writing it directly to the stream. There's a new generator method bytes for nodes now, which can be passed the same arguments as asBytes. These changes should help when using XIST in WSGI applications. * The iterator returned from Element.__getitem__, Frag.__getitem__ and the walk method now supports __getitem__ itself, so you can write table[html.tr][0] to get the first row from a table or page.walk(xsc.FindTypeAll(html.td))[-1] to get the last table cell from a complete HTML page. * Several bugs in the namespaces ll.xist.ns.meta, ll.xist.ns.form and ll.xist.ns.specials have been fixed. * The namespace modules ll.xist.ns.css and ll.xist.ns.cssspecials have been removed. For changes in older versions see: http://www.livinglogic.de/Python/xist/History.html Where can I get it? =================== XIST can be downloaded from http://ftp.livinglogic.de/xist/ or ftp://ftp.livinglogic.de/pub/livinglogic/xist/ Web pages are at http://www.livinglogic.de/Python/xist/ ViewCVS access is available at http://www.livinglogic.de/viewcvs/ For information about the mailing lists go to http://www.livinglogic.de/Python/xist/Mailinglists.html Bye, Walter D?rwald From dieter at handshake.de Fri May 20 18:44:26 2005 From: dieter at handshake.de (Dieter Maurer) Date: 20 May 2005 18:44:26 +0200 Subject: dllimporter -- import dlls for zip archived or frozen applications Message-ID: 'Dllimporter' is a package to facilitate the import of shared libraries (aka dlls or extension modules) for Python applications running from a zip archive or an executable (a frozen application). The standard Python import mechanism cannot import extension modules being part of a zip archived or frozen package. 'Dllimporter' overcomes this restriction. The package provides a class 'dllimporter' the instances of which implement Pythons 'importer' protocol (see PEP-0302). These instances are designed to be used as importers on Pythons 'sys.meta_path' (again see PEP-0302, for details). Download: http://www.dieter.handshake.de/pyprojects/dllimporter.tgz Dieter From tim at zope.com Fri May 20 20:41:45 2005 From: tim at zope.com (Tim Peters) Date: Fri, 20 May 2005 14:41:45 -0400 Subject: ZODB 3.4 beta 1 released Message-ID: <20050520184146.17F7B3B8016@smtp.zope.com> I'm pleased to announce the release of ZODB 3.4 beta 1. This corresponds to the ZODB that will ship in Zope 2.8b2. You can download a source tarball or Windows installer from: http://zope.org/Products/ZODB3.4 Note that there are two Windows installers, for Python 2.3 (2.3.5 is recommended) and Python 2.4 (2.4.1 is recommended). ZODB 3.4b1 contains many bugfixes and new features, including: - savepoint/rollback support, a powerful generalization of subtransactions allowing to revert to any savepoint'ed state within a transaction - auto-synchronization with storages after a transaction commit or abort, and at the explict start (transaction.begin()) of a transaction - a way to register callbacks invoked just before a transaction starts to commit -- see the new transaction.beforeCommitHook() - a new release of ZConfig See the news file for details: http://zope.org/Products/ZODB3.4/NEWS.html Note that ZODB 3.4 does not support any version of Zope 2.6 or 2.7. Current Zope 2.8 and Zope 3 development use ZODB 3.4. The ZODB 3.3 line is officially retired (3.3.1 final was the last release in the 3.3 line). From sh at defuze.org Fri May 20 23:56:08 2005 From: sh at defuze.org (Sylvain Hellegouarch) Date: Fri, 20 May 2005 23:56:08 +0200 Subject: Announcing : pyglfw Message-ID: <1116626168.428e5cf8b7c6d@webmail.defuze.org> Hello folks, I am please to announce the first release of pyglfw, a python binding for GLFW written as an extension module. GLFW is simple framework acting like a glue between OpenGL and the system. The aim of pyglfw is simply for me to get my hands on writing an extension for Python, so this is quite an alpha code I release. Although it works fine, it might need some fixing in some areas. Please have a look at it and feel free to let me know what you think about it. Here is the hope page of pyglfw : http://www.defuze.org/oss/pyglfw/ Regards, - Sylvain ---------------------------------------------------------------- This message was sent using IMP, the Internet Messaging Program. From hpk at trillke.net Sat May 21 00:08:39 2005 From: hpk at trillke.net (holger krekel) Date: Sat, 21 May 2005 00:08:39 +0200 Subject: first release of PyPy Message-ID: <20050520220839.GM13541@solar.trillke.net> The PyPy 0.6 release -------------------- *The PyPy Development Team is happy to announce the first public release of PyPy after two years of spare-time and half a year of EU funded development. The 0.6 release is eminently a preview release.* What it is and where to start ----------------------------- Getting started: http://codespeak.net/pypy/index.cgi?doc/getting_started.html PyPy Documentation: http://codespeak.net/pypy/index.cgi?doc PyPy Homepage: http://codespeak.net/pypy/ PyPy is a MIT-licensed reimplementation of Python written in Python itself. The long term goals are an implementation that is flexible and easy to experiment with and retarget to different platforms (also non-C ones) and such that high performance can be achieved through high-level implementations of dynamic optimisation techniques. The interpreter and object model implementations shipped with 0.6 can be run on top of CPython and implement the core language features of Python as of CPython 2.3. PyPy passes around 90% of the Python language regression tests that do not depend deeply on C-extensions. Some of that functionality is still made available by PyPy piggy-backing on the host CPython interpreter. Double interpretation and abstractions in the code-base make it so that PyPy running on CPython is quite slow (around 2000x slower than CPython ), this is expected. This release is intended for people that want to look and get a feel into what we are doing, playing with interpreter and perusing the codebase. Possibly to join in the fun and efforts. Interesting bits and highlights --------------------------------- The release is also a snap-shot of our ongoing efforts towards low-level translation and experimenting with unique features. * By default, PyPy is a Python version that works completely with new-style-classes semantics. However, support for old-style classes is still available. Implementations, mostly as user-level code, of their metaclass and instance object are included and can be re-made the default with the ``--oldstyle`` option. * In PyPy, bytecode interpretation and object manipulations are well separated between a bytecode interpreter and an *object space* which implements operations on objects. PyPy comes with experimental object spaces augmenting the standard one through delegation: * an experimental object space that does extensive tracing of bytecode and object operations; * the 'thunk' object space that implements lazy values and a 'become' operation that can exchange object identities. These spaces already give a glimpse in the flexibility potential of PyPy. See demo/fibonacci.py and demo/sharedref.py for examples about the 'thunk' object space. * The 0.6 release also contains a snapshot of our translation-efforts to lower level languages. For that we have developed an annotator which is capable of infering type information across our code base. The annotator right now is already capable of successfully type annotating basically *all* of PyPy code-base, and is included with 0.6. * From type annotated code, low-level code needs to be generated. Backends for various targets (C, LLVM,...) are included; they are all somehow incomplete and have been and are quite in flux. What is shipped with 0.6 is able to deal with more or less small/medium examples. Ongoing work and near term goals --------------------------------- Generating low-level code is the main area we are hammering on in the next months; our plan is to produce a PyPy version in August/September that does not need to be interpreted by CPython anymore and will thus run considerably faster than the 0.6 preview release. PyPy has been a community effort from the start and it would not have got that far without the coding and feedback support from numerous people. Please feel free to give feedback and raise questions. contact points: http://codespeak.net/pypy/index.cgi?contact contributor list: http://codespeak.net/pypy/index.cgi?doc/contributor.html have fun, Armin Rigo, Samuele Pedroni, Holger Krekel, Christian Tismer, Carl Friedrich Bolz PyPy development and activities happen as an open source project and with the support of a consortium funded by a two year EU IST research grant. Here is a list of partners of the EU project: Heinrich-Heine University (Germany), AB Strakt (Sweden) merlinux GmbH (Germany), tismerysoft GmbH(Germany) Logilab Paris (France), DFKI GmbH (Germany) ChangeMaker (Sweden) From chris at wxnet.org Sat May 21 06:25:58 2005 From: chris at wxnet.org (Christopher Blunck) Date: Sat, 21 May 2005 00:25:58 -0400 Subject: ANN: PyWeather v0.5.0 Message-ID: PyWeather v0.5.0 ---------------- PyWeather is a collection of weather related modules that are tested to work. These modules are capable of performing conversion calculations for many common meteorological units. See the following URL for more details: http://oss.wxnet.org/pyweather -c -- WeatherNet Observations for station: home Temperature: 49.50F Pressure: 29.82in; Dew Point: 46.65F (90%) Wind: 312 at 0 mph Recorded: 23:25:01 05/20/05 (http://wsdl.wxnet.org/home/binding.wsdl) From chris at wxnet.org Sat May 21 07:08:40 2005 From: chris at wxnet.org (Christopher Blunck) Date: Sat, 21 May 2005 01:08:40 -0400 Subject: ANN: PyTest v0.5.0 Message-ID: PyTest v0.5.0 ------------- This is a small package that facilitates the unit testing process by aggregating PyUnit tests and making them easier to call from the command line and from within other unit tests. Typical PyUnit tests are written in a 1-1 relationship with the module they test. Module "foo.py" is typically tested with module "test_foo.py". In packages with multiple modules it can become cumbersome to run all of the unit tests from the command line. One could write an aggregator "test_all.py" module and have it call into each "test_*.py" module to retrieve a TestCase to assemble a suite. However, that approach requires 2 modifications each time a unit test is added (one modification for the test itself, and one modification in test_all.py). PyTest can run all of the unit tests in a directory via the command line by locating all modules that begin with "test_". Reflection is then used to extract the TestCase class, and a suite is constructed reflecting all test cases. Additionally, PyTest can be used programmatically in a test_all.py. Please see my site for more info: http://oss.wxnet.org/pytest -c -- WeatherNet Observations for station: home Temperature: 48.60F Pressure: 29.82in; Dew Point: 46.05F (91%) Wind: 312 at 0 mph Recorded: 00:04:40 05/21/05 (http://wsdl.wxnet.org/home/binding.wsdl) From hpk at trillke.net Sat May 21 14:13:49 2005 From: hpk at trillke.net (holger krekel) Date: Sat, 21 May 2005 14:13:49 +0200 Subject: PyPy - 0.6.1 bugfix release In-Reply-To: <20050520220839.GM13541@solar.trillke.net> References: <20050520220839.GM13541@solar.trillke.net> Message-ID: <20050521121349.GO13541@solar.trillke.net> Hi again, On Sat, May 21, 2005 at 00:08 +0200, holger krekel wrote: > The PyPy 0.6 release > -------------------- has already been superseded by the PyPy 0.6.1 bug-fix release. We are unfortunately not having access to that time machine and thus have to fix things the old way. But we are working on improving this situation. The bug is trivial enough: py.py crashes on string formatting the second time you run it. You can find the fixed packages and svn-locations here: Getting started: http://codespeak.net/pypy/index.cgi?doc/getting_started.html have fun & sorry for the inconvenience, holger krekel > *The PyPy Development Team is happy to announce the first > public release of PyPy after two years of spare-time and > half a year of EU funded development. The 0.6 release > is eminently a preview release.* > > What it is and where to start > ----------------------------- > > Getting started: http://codespeak.net/pypy/index.cgi?doc/getting_started.html > > PyPy Documentation: http://codespeak.net/pypy/index.cgi?doc > > PyPy Homepage: http://codespeak.net/pypy/ > > PyPy is a MIT-licensed reimplementation of Python written in > Python itself. The long term goals are an implementation that > is flexible and easy to experiment with and retarget to > different platforms (also non-C ones) and such that high > performance can be achieved through high-level implementations > of dynamic optimisation techniques. > > The interpreter and object model implementations shipped with 0.6 can > be run on top of CPython and implement the core language features of > Python as of CPython 2.3. PyPy passes around 90% of the Python language > regression tests that do not depend deeply on C-extensions. Some of > that functionality is still made available by PyPy piggy-backing on > the host CPython interpreter. Double interpretation and abstractions > in the code-base make it so that PyPy running on CPython is quite slow > (around 2000x slower than CPython ), this is expected. > > This release is intended for people that want to look and get a feel > into what we are doing, playing with interpreter and perusing the > codebase. Possibly to join in the fun and efforts. > > Interesting bits and highlights > --------------------------------- > > The release is also a snap-shot of our ongoing efforts towards > low-level translation and experimenting with unique features. > > * By default, PyPy is a Python version that works completely with > new-style-classes semantics. However, support for old-style classes > is still available. Implementations, mostly as user-level code, of > their metaclass and instance object are included and can be re-made > the default with the ``--oldstyle`` option. > > * In PyPy, bytecode interpretation and object manipulations > are well separated between a bytecode interpreter and an > *object space* which implements operations on objects. > PyPy comes with experimental object spaces augmenting the > standard one through delegation: > > * an experimental object space that does extensive tracing of > bytecode and object operations; > > * the 'thunk' object space that implements lazy values and a 'become' > operation that can exchange object identities. > > These spaces already give a glimpse in the flexibility potential of > PyPy. See demo/fibonacci.py and demo/sharedref.py for examples > about the 'thunk' object space. > > * The 0.6 release also contains a snapshot of our translation-efforts > to lower level languages. For that we have developed an > annotator which is capable of infering type information > across our code base. The annotator right now is already > capable of successfully type annotating basically *all* of > PyPy code-base, and is included with 0.6. > > * From type annotated code, low-level code needs to be generated. > Backends for various targets (C, LLVM,...) are included; they are > all somehow incomplete and have been and are quite in flux. What is > shipped with 0.6 is able to deal with more or less small/medium examples. > > > Ongoing work and near term goals > --------------------------------- > > Generating low-level code is the main area we are hammering on in the > next months; our plan is to produce a PyPy version in August/September > that does not need to be interpreted by CPython anymore and will > thus run considerably faster than the 0.6 preview release. > > PyPy has been a community effort from the start and it would > not have got that far without the coding and feedback support > from numerous people. Please feel free to give feedback and > raise questions. > > contact points: http://codespeak.net/pypy/index.cgi?contact > > contributor list: http://codespeak.net/pypy/index.cgi?doc/contributor.html > > have fun, > > Armin Rigo, Samuele Pedroni, > > Holger Krekel, Christian Tismer, > > Carl Friedrich Bolz > > > PyPy development and activities happen as an open source project > and with the support of a consortium funded by a two year EU IST > research grant. Here is a list of partners of the EU project: > > Heinrich-Heine University (Germany), AB Strakt (Sweden) > > merlinux GmbH (Germany), tismerysoft GmbH(Germany) > > Logilab Paris (France), DFKI GmbH (Germany) > > ChangeMaker (Sweden) > > -- > http://mail.python.org/mailman/listinfo/python-announce-list > > Support the Python Software Foundation: > http://www.python.org/psf/donations.html > From frank at niessink.com Sun May 22 22:25:35 2005 From: frank at niessink.com (Frank Niessink) Date: Sun, 22 May 2005 22:25:35 +0200 Subject: [ANN] Release 0.38 of Task Coach Message-ID: <4290EABF.4040004@niessink.com> Hi all, I'm pleased to announce release 0.38 of Task Coach. New in this release: Features added: - Simplified Chinese user interface added, thanks to limodou. - Autosave setting to automatically save after every change (1188194). - Backup setting to create a backup when opening a Task Coach file. - Added preference dialog to edit preferences not related to the view settings. - Now using gettext for i18n. What is Task Coach? Task Coach is a simple task manager that allows for hierarchical tasks, i.e. tasks in tasks. Task Coach is open source (GPL) and is developed using Python and wxPython. You can download Task Coach from: http://taskcoach.niessink.com https://sourceforge.net/projects/taskcoach/ A binary installer is available for Windows XP, in addition to the source distribution. Note that Task Coach is alpha software, meaning that it is wise to back up your task file regularly, and especially when upgrading to a new release. Cheers, Frank From titus at caltech.edu Mon May 23 06:07:00 2005 From: titus at caltech.edu (C. Titus Brown) Date: Sun, 22 May 2005 21:07:00 -0700 Subject: ANNOUNCE: twill v0.7, scriptable Web testing Message-ID: ANNOUNCING twill v0.7. twill is a simple Web scripting language built on top of Python and mechanize. It's designed for automated testing of Web sites, but it may be useful for anybody who needs to deal with Web sites (with e.g. logins and cookies) in a non-interactive manner. twill is a reimplementation of Cory Dodt's PBP. A twill script looks like this: # go to the /. login page go http://slashdot.org/login.pl # fill in the form fv 1 unickname test fv 1 upasswd test submit # ok, there's no such account ;). show error HTML. show --- This is the first public release of twill, version 0.7. (Tagline: "It seems usable to me, but then I'm its author.") With this release, I'm looking for general feedback on usability, as well as suggestions on additional use cases. Download directly here: http://darcs.idyll.org/~t/projects/twill-0.7.tar.gz Documentation is online at http://www.idyll.org/~t/www-tools/twill.html --- Miscellaneous details: twill is implemented in Python and uses pyparsing and mechanize. In addition to the existing simple command language, twill can easily be extended with Python. twill also provides a fairly simple and well-documented wrapper around mechanize. twill scripts can be recorded with maxq, although scripts may require some hand tweaking at the moment. See the twill documentation for more information. twill does not understand JavaScript, I'm sorry to say. --titus, titus at caltech.edu From a at b.c Tue May 24 01:41:51 2005 From: a at b.c (D H) Date: Mon, 23 May 2005 18:41:51 -0500 Subject: [ANN] IronPython 0.7.5 & Boo 0.5.4 Message-ID: Updates were recently released by both the IronPython and Boo projects: IronPython 0.7.5 was released for .NET 2.0. http://workspaces.gotdotnet.com/ironpython Bug fixes: * Can't Open 2 or more IronPythonConsoles * File share error when opening the file for reading multiple times * Generate assembly in the same directory as the Python source * Can't OR flags together - note that to use bitwise operations on enums, the [Flags] attribute must be set on the enum * sorted() not implemented * Failed to sort list with mixed types * Remove nstr and zip2 from __builtins__ * Can't raise a long to an exponent * dir and __dict__ malfunction * Old class cannot be instantiated when passing parameters by name class A: def __init__(self, height=20, width=30): self.area = height * width a = A(width = 2) * Old style class cannot override __getattr__ * Initialization of the map using lambda is incorrect * Method lookup broken again - this was a regression in our dynamic method resolution code reported by Microsoft Research * PythonEngine Execute method runs only discreet statements For the full announcement see: http://www.gotdotnet.com/workspaces/news/newsitem.aspx?id=ad7acff7-ab1e-4bcb-99c0-57ac5a3a9742&newsId=18584eaf-62a4-412b-8144-9a54b52efd8e ---- Boo 0.5.4 was released for .NET 1.1 and Mono. http://boo.codehaus.org/ Changes: * explicit interface members: def IDisposable.Dispose(): * char literals: char('f') * unicode literals in strings: \u0032 * a Set class (Boo.Lang.Useful.Collections.Set) * Singleton design pattern implementation (Boo.Lang.Useful.Attributes.SingletonAttribute) * the compiler will now call class provided '==' and '!=' operators; * the compiler will now look for an implicit conversion operator to boolean when evaluating the conditions for the if/while/unless statements * the version of antlr shipped with boo can now generate boo code. In other words you can now finally write parsers in your favorite programming language! * 'for' and unpack statements now also work with IEnumerator allowing fine grained control over iteration * better support for value typed properties * extended generator expression syntax * the 'in' and 'not in' operators will now work with any type that provides a op_Member and op_NotMember implementation respectively Full announcement: http://groups-beta.google.com/group/boolang/browse_frm/thread/141c452679fa84bb/0049f4887cfe0e67 From python-url at phaseit.net Tue May 24 17:19:29 2005 From: python-url at phaseit.net (Simon Brunning) Date: Tue, 24 May 2005 15:19:29 +0000 Subject: Dr. Dobb's Python-URL! - weekly Python news and links (May 24) Message-ID: QOTW: "If you're sick of answering newbie questions, and don't think you can do so politely, for the sake of the community, DON'T! You're not that necessary." - Joal Heagney "Who controls the runtime also controls the language." - Kay Schluehr Jake tells us about the \r control character, which allows one to refresh a terminal line. Many people help him to use it from Python, and Fredrik warns him that it might well not work from an IDE: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/50cffbb6eb03cc4 John Reese asks whether he needs to explicitly close file objects, or whether reference counting will take care of it for him. Martin v. Löwis shows a scenario that demonstrates that ref counting won't always close files when you think it will: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/7eba2d6efd271707 Simon Percivall and Jp Calderone show Michael Chermside how to process subprocess module output a line at a time: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/df6854ec10c6d508 WSGI Explorations with Python - Mike Orr investigates WSGI and Paste: http://rex.kicks-ass.net/python/wsgi-explorations.html Len, an "old time Cobol programmer", asks for some advice on storing data: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/c20623a77b22c456 Dustin is refactoring some unpythonic code that uses a very nasty import mechanism, but now he's having trouble with circular imports: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/8eae5075b9973a2b A Matter Of Questions - Ben Last tells us how he's using Python for data cleansing, amongst other things, while building a Playstation Music Quiz: http://www.livejournal.com/users/benlast/24719.html William Park wants to test how similar two strings are. This is more complicated than it sounds... http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/4aa08f075d05eb48 Create an ODBC data source in the fly with Python: http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/414879 Paul Rubin investigates how the super() function works with multiple inheritance. A number of people clear things up for him. http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/57cdcc73f8747091 Notable releases: pysqlite 2.0.2 http://pysqlite.org/ PyPy 0.6 (!) http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/8e4a74dfb90c8bf4 ======================================================================== Everything Python-related you want is probably one or two clicks away in these pages: Python.org's Python Language Website is the traditional center of Pythonia http://www.python.org Notice especially the master FAQ http://www.python.org/doc/FAQ.html PythonWare complements the digest you're reading with the marvelous daily python url http://www.pythonware.com/daily Mygale is a news-gathering webcrawler that specializes in (new) World-Wide Web articles related to Python. http://www.awaretek.com/nowak/mygale.html While cosmetically similar, Mygale and the Daily Python-URL are utterly different in their technologies and generally in their results. For far, FAR more Python reading than any one mind should absorb, much of it quite interesting, several pages index much of the universe of Pybloggers. http://lowlife.jp/cgi-bin/moin.cgi/PythonProgrammersWeblog http://www.planetpython.org/ http://mechanicalcat.net/pyblagg.html comp.lang.python.announce announces new Python software. Be sure to scan this newsgroup weekly. http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python.announce Steve Bethard, Tim Lesher, and Tony Meyer continue the marvelous tradition early borne by Andrew Kuchling, Michael Hudson and Brett Cannon of intelligently summarizing action on the python-dev mailing list once every other week. http://www.python.org/dev/summary/ The Python Package Index catalogues packages. http://www.python.org/pypi/ The somewhat older Vaults of Parnassus ambitiously collects references to all sorts of Python resources. http://www.vex.net/~x/parnassus/ Much of Python's real work takes place on Special-Interest Group mailing lists http://www.python.org/sigs/ The Python Business Forum "further[s] the interests of companies that base their business on ... Python." http://www.python-in-business.org Python Success Stories--from air-traffic control to on-line match-making--can inspire you or decision-makers to whom you're subject with a vision of what the language makes practical. http://www.pythonology.com/success The Python Software Foundation (PSF) has replaced the Python Consortium as an independent nexus of activity. It has official responsibility for Python's development and maintenance. http://www.python.org/psf/ Among the ways you can support PSF is with a donation. http://www.python.org/psf/donate.html Kurt B. Kaiser publishes a weekly report on faults and patches. http://www.google.com/groups?as_usubject=weekly%20python%20patch Cetus collects Python hyperlinks. http://www.cetus-links.org/oo_python.html Python FAQTS http://python.faqts.com/ The Cookbook is a collaborative effort to capture useful and interesting recipes. http://aspn.activestate.com/ASPN/Cookbook/Python Among several Python-oriented RSS/RDF feeds available are http://www.python.org/channews.rdf http://bootleg-rss.g-blog.net/pythonware_com_daily.pcgi http://python.de/backend.php For more, see http://www.syndic8.com/feedlist.php?ShowMatch=python&ShowStatus=all The old Python "To-Do List" now lives principally in a SourceForge reincarnation. http://sourceforge.net/tracker/?atid=355470&group_id=5470&func=browse http://python.sourceforge.net/peps/pep-0042.html The online Python Journal is posted at pythonjournal.cognizor.com. editor at pythonjournal.com and editor at pythonjournal.cognizor.com welcome submission of material that helps people's understanding of Python use, and offer Web presentation of your work. del.icio.us presents an intriguing approach to reference commentary. It already aggregates quite a bit of Python intelligence. http://del.icio.us/tag/python *Py: the Journal of the Python Language* http://www.pyzine.com Archive probing tricks of the trade: http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python&num=100 http://groups.google.com/groups?meta=site%3Dgroups%26group%3Dcomp.lang.python.* Previous - (U)se the (R)esource, (L)uke! - messages are listed here: http://www.ddj.com/topics/pythonurl/ (requires subscription) http://groups-beta.google.com/groups?q=python-url+group:comp.lang.python*&start=0&scoring=d& http://purl.org/thecliff/python/url.html (dormant) or http://groups.google.com/groups?oi=djq&as_q=+Python-URL!&as_ugroup=comp.lang.python Suggestions/corrections for next week's posting are always welcome. E-mail to should get through. To receive a new issue of this posting in e-mail each Monday morning (approximately), ask to subscribe. Mention "Python-URL!". -- The Python-URL! Team-- Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and sponsor the "Python-URL!" project. From bac at OCF.Berkeley.EDU Wed May 25 01:11:34 2005 From: bac at OCF.Berkeley.EDU (Brett C.) Date: Tue, 24 May 2005 16:11:34 -0700 Subject: Localized Type Inference of Atomic Types in Python Message-ID: <4293B4A6.8030002@ocf.berkeley.edu> My thesis, "Localized Type Inference of Atomic Types in Python", was successfully defended today for my MS in Computer Science at the California Polytechnic State University, San Luis Obispo. With that stamp of approval I am releasing it to the world. You can grab a copy at http://www.drifty.org/thesis.pdf . For those of you who attended my talk at PyCon 2005 this is the thesis that stemmed from the presented data. As of this exact moment I am not planning to release the source code mainly because it's a mess, I am not in the mood to pull the patches together, and the last thing I want happening is people finding mistakes in the code. =) But if enough people request the source I will take the time to generate a tar.bz2 file of patches against the 2.3.4 source release and put them up somewhere. Below is the abstract culled directly from the thesis itself. -Brett C. --------------------------------- ABSTRACT Types serve multiple purposes in programming. One such purpose is in providing information to allow for improved performance. Unfortunately, specifying the types of all variables in a program does not always fit within the design of a programming language. Python is a language where specifying types does not fit within the language design. An open source, dynamic programming language, Python does not support type specifications of variables. This limits the opportunities in Python for performance optimizations based on type information compared to languages that do allow or require the specification of types. Type inference is a way to derive the needed type information for optimizations based on types without requiring type specifications in the source code of a program. By inferring the types of variables based on flow control and other hints in a program, the type information can be derived and used in a constructive manner. This thesis is an exploration of implementing a type inference algorithm for Python without changing the semantics of the language. It also explores the benefit of adding type annotations to method calls in order to garner more type information. From freddie+usenet at madcowdisease.org Wed May 25 16:45:18 2005 From: freddie+usenet at madcowdisease.org (Freddie) Date: 25 May 2005 07:45:18 -0700 Subject: ANN: blamehangle 0.1.0 Message-ID: <1117032318.019175.46430@f14g2000cwb.googlegroups.com> (sorry if this appears several times, Australian usenet servers are atrocious) blamehangle is Yet Another IRC Bot Framework. Started in 2003 as a replacement for a nasty perl monster, we're just now getting around to releasing it. Useful features include: * Asynchronous HTTP client. * Threaded database lookups. * Threaded DNS lookups. * Multiple IRC network support. * Possibly understandable plugin deveopment model. * Useful collection of plugins. * Sometimes actively developed! blamehangle is available for download from the MadCowDisease web site: http://www.madcowdisease.org/mcd/blamehangle Or via Subversion at: svn://svn.madcowdisease.org/blamehangle/tags/0.1.0 or svn://svn.madcowdisease.org/blamehangle/trunk (for sometimes broken trunk) trunk is recommended, as there are several minor bugs fixed already. oops! From jmiller at stsci.edu Wed May 25 19:42:36 2005 From: jmiller at stsci.edu (Todd Miller) Date: Wed, 25 May 2005 13:42:36 -0400 Subject: ANN: numarray-1.3.2 Message-ID: <1117042956.24369.99.camel@halloween.stsci.edu> Numarray is an array processing package designed to efficiently manipulate large multi-dimensional arrays. Numarray is modelled after Numeric and features c-code generated from python template scripts, the capacity to operate directly on arrays in files, arrays of heterogeneous records, string arrays, and in-place operation on memory mapped files. ========================================================================= Release Notes for numarray-1.3.2 I. ENHANCEMENTS None. 1.3.2 fixes the problem with gcc4 on Mac OS-X 10.4 Tiger II. BUGS FIXED / CLOSED 1193125 Build failure on Mac OS 10.4 (Tiger) 1195370 numarray1.3.1 setup.py broken See http://sourceforge.net/tracker/?atid=450446&group_id=1369&func=browse for more details. ========================================================================= Release Notes for numarray-1.3.1 I. ENHANCEMENTS None. 1.3.1 fixes the problem with gcc-3.4.3 II. BUGS FIXED / CLOSED 1152323 /usr/include/fenv.h:96: error: conflicting types for 'fegete 1185024 numarray-1.2.3 fails to compile with gcc-3.4.3 1187162 Numarray 1.3.0 installation failure See http://sourceforge.net/tracker/?atid=450446&group_id=1369&func=browse for more details. ========================================================================= Release Notes for numarray-1.3.0 Numarray is an array processing package designed to efficiently manipulate large multi-dimensional arrays. Numarray is modelled after Numeric and features c-code generated from python template scripts, the capacity to operate directly on arrays in files, arrays of heterogeneous records, string arrays, and in-place operation on memory mapped files. I. ENHANCEMENTS 1. Migration of NumArray.__del__ to C (tp_dealloc). Overall performance. 2. Removal of dictionary update from array view creation improves performance of view/slice/subarray creation. This should e.g. improve the performance of wxPython sequence protocol access to Nx2 arrays. Subclasses now need to do a.flags |= numarray.generic._UPDATEDICT to ensure that dictionary based attributes are inherited by views. NumArrays no longer do this by default. 2. Modifications to support scipy.special. 3. Removal of an unnecessary getattr() from ufunc calling sequence. Ufunc performance. II. BUGS FIXED / CLOSED 1179355 average() broken in numarray 1.2.3 1167184 Floating point exception in numarray's dot() 1151892 Bug in matrixmultiply with zero size arrays 1160184 RecArray reversal 1156172 Incorect error message for shape incompatability 1155538 Incorrect error message when multiplying arrays See http://sourceforge.net/tracker/?atid=450446&group_id=1369&func=browse for more details. III. CAUTIONS This release should be backward binary compatible with numarray-1.1.1 and 1.2.3. WHERE ----------- Numarray-1.3.0 windows executable installers, source code, and manual is here: http://sourceforge.net/project/showfiles.php?group_id=1369 Numarray is hosted by Source Forge in the same project which hosts Numeric: http://sourceforge.net/projects/numpy/ The web page for Numarray information is at: http://stsdas.stsci.edu/numarray/index.html Trackers for Numarray Bugs, Feature Requests, Support, and Patches are at the Source Forge project for NumPy at: http://sourceforge.net/tracker/?group_id=1369 REQUIREMENTS ------------------------------ numarray-1.3.0 requires Python 2.2.2 or greater. AUTHORS, LICENSE ------------------------------ Numarray was written by Perry Greenfield, Rick White, Todd Miller, JC Hsu, Paul Barrett, Phil Hodge at the Space Telescope Science Institute. We'd like to acknowledge the assitance of Francesc Alted, Paul Dubois, Sebastian Haase, Chuck Harris, Tim Hochberg, Nadav Horesh, Edward C. Jones, Eric Jones, Jochen Kuepper, Travis Oliphant, Pearu Peterson, Peter Verveer, Colin Williams, Rory Yorke, and everyone else who has contributed with comments and feedback. Numarray is made available under a BSD-style License. See LICENSE.txt in the source distribution for details. -- Todd Miller jmiller at stsci.edu ________________________________________________________________________ From jeff at taupro.com Thu May 26 11:27:35 2005 From: jeff at taupro.com (Jeff Rush) Date: Thu, 26 May 2005 04:27:35 -0500 Subject: DFW Pythoneers' Coding Sprint This Saturday Message-ID: <200505260427.36012.jeff@taupro.com> The DFW Pythoneers meet, at nerdbooks.com (a local bookstore), with our laptops for hands-on Python programming on the 2nd and 4th Saturday of each month. As we progress, we'll be focusing on Extreme Programming techniques, re pair programming, version control, unit testing and so forth. Represented are users of Linux, MacOS and Windows, in a variety of skill levels so if you are thinking of getting into programming, come along. This Saturday is 4th Saturday and we'll be doing it again. AGENDA LAST TIME: Last time we had 7 people show up, got connected to the Internet and learned about using the Subversion version control software, while sharing a single piece of Python source we each modified and passed to others thru the repository. It was a lot of fun to be making changes, do an update and see the work of others appear. AGENDA THIS TIME: Since we have a lot of beginner Python programmers, this time I'd like to start with an hour of presentation on the datatypes and basic control structures of Python. And then hands-on producing some simple programs that introduce certain Python concepts. For example, (1) a program that copies a file given on the command-line, to introduce file I/O and command-line arguments. Then (2) modify it to count the number of lines, to cover line I/O and lists, and then (3) modify it to count the number of matches against a string or regular expression provided as a new command-line argument, to bring in string operations and REs. If there is still time, we can cover the "optparse" module for advanced command-line parsing. Suggestions are welcome but I thought during this initial stage, we'd pick 3-4 commonly-used modules from the Python library each session and explore how to use them. For those more advanced in Python, please come also. Let's pair up with others on projects of common interest and use these Saturdays as working sessions. WHERE and WHEN? You can find directions to Nerdbooks at www.nerdbooks.com. We meet from 2:00pm to 5:00 pm. ADDITIONAL INFORMATION: And further information about mailing lists and such at: http://python.taupro.com/ I'd also like to ask those planning to participate in the coding sprints to prepare their laptops with the necessary software, to save time. Details are on the wiki at: http://python.taupro.com/SprintingSetup As we meet to begin some projects, I'll give out write-access passwords. The repository is publically readable so everyone can watch the projects. Also, if you can bring along extra power strips, ethernet cables, and perhaps even a folding table or two. Jeff Rush, DFW Pythoneers Coordinator From philippe at philippecmartin.com Thu May 26 17:32:22 2005 From: philippe at philippecmartin.com (Philippe C. Martin) Date: Thu, 26 May 2005 15:32:22 GMT Subject: SCF Bundle released Message-ID: Dear all, I am very happy to announce the release of SCFB: a python development toolkit for Smart Cards. SCFB comes with all necessary tools to easily get a Smart Card application running. SCFB also includes the necessary Smart Card and their software interface. SCFB is the tool we use to develop our own Smart Cards solutions. You may find information on SCFB by following the links: www.snakecard.com/html_bundle www.snakecard.com/scfb.pdf Best regards, Philippe Martin From ahaas at airmail.net Thu May 26 21:05:56 2005 From: ahaas at airmail.net (Art Haas) Date: Thu, 26 May 2005 14:05:56 -0500 Subject: [ANNOUNCE] Twenty-fifth release of PythonCAD now available Message-ID: <20050526190556.GJ9543@artsapartment.org> I'm pleased to announce the twenty-fifth development release of PythonCAD, a CAD package for open-source software users. As the name implies, PythonCAD is written entirely in Python. The goal of this project is to create a fully scriptable drafting program that will match and eventually exceed features found in commercial CAD software. PythonCAD is released under the GNU Public License (GPL). PythonCAD requires Python 2.2 or newer. The interface is GTK 2.0 based, and uses the PyGTK module for interfacing to GTK. The design of PythonCAD is built around the idea of separating the interface from the back end as much as possible. By doing this, it is hoped that both GNOME and KDE interfaces can be added to PythonCAD through usage of the appropriate Python module. Addition of other PythonCAD interfaces will depend on the availability of a Python module for that particular interface and developer interest and action. The twenty-fifth release consists primarily of bug fixes. The compatibility code for the GTK Action and ActionGroup classes introduced in the previous release had a number of bugs which have been fixed. People running PythonCAD on PyGTK releases prior to 2.4 should find this latest release working correctly due to these fixes. Thanks go to Wilbert Knol for helping identify and test the proposed fixes for this problem. A number of changes to the event handling code also are include in this release. Previously various event handling routines either returned an incorrect value, or returned a value when not needed. This release cleans up many of these issues, making the event handling code easier to follow as well as better conforming to GTK/PyGTK requirements. Various other bug fixes and code enhancements are present in this release as well. A mailing list for the development and use of PythonCAD is available. Visit the following page for information about subscribing and viewing the mailing list archive: http://mail.python.org/mailman/listinfo/pythoncad Visit the PythonCAD web site for more information about what PythonCAD does and aims to be: http://www.pythoncad.org/ Come and join me in developing PythonCAD into a world class drafting program! Art Haas -- Man once surrendering his reason, has no remaining guard against absurdities the most monstrous, and like a ship without rudder, is the sport of every wind. -Thomas Jefferson to James Smith, 1822 From Felix.Wiemann at gmx.net Fri May 27 01:19:02 2005 From: Felix.Wiemann at gmx.net (Felix Wiemann) Date: Fri, 27 May 2005 01:19:02 +0200 Subject: Docutils 0.3.9 released Message-ID: <87sm09zi9j.fsf@news2.ososo.de> Docutils 0.3.9 Released ======================= Docutils 0.3.9 has been released. You can download it from . The Docutils homepage is located at . Major Changes Since Docutils 0.3.7 ================================== * Added "file_insertion_enabled" and "raw_enabled" settings. See . * Added auto-enumerated lists. See . * Added "header" and "footer" directives. See . * Added "list-table" directive. See . * Added support for section subtitles. See . * Added "field_name_limit" and "option_limit" settings to HTML writer. See . * Added "cloak_email_addresses" setting to HTML writer. See . * UTF-8 BOMs (byte order marks) are now removed from the input stream. * Many minor improvements and bug fixes. See . -- Felix Wiemann -- http://www.ososo.de/ From Sylvain.Thenault at logilab.fr Fri May 27 12:59:10 2005 From: Sylvain.Thenault at logilab.fr (Sylvain =?iso-8859-1?Q?Th=E9nault?=) Date: Fri, 27 May 2005 12:59:10 +0200 Subject: [ANN] pylint 0.7 Message-ID: <20050527105910.GB4750@logilab.fr> Hello all ! I'm pleased to announce a new release of PyLint. I've been promising a 1.0 release some time ago, but it appears I've not enough time yet to do the polishing I wish, and since the latest (0.6.4) release has a few really annoying bugs (mainly related to options handling), I eventually decided to make this intermediate release. It mainly targets bug fixes but as the main pylint package has moved (it's not anymore a logilab'subpackage), I've made a 0.7 instead of a 0.6.5. Some others fixes and minor enhancements are included (see below for a more detailed list), and this release should be really stable. Please send any bugs or comments on the mailing list. What's new ? ------------ * WARNING: pylint is no longer a logilab subpackage. Users may have to manually remove the old logilab/pylint directory. * this time, real fix of the "disable-msg in the config file" problem, test added to unittest_lint * fix a bug in the variables checker which may causing some false positives when variables are defined and used within the same statement (test func_noerror_defined_and_used_on_same_line) * fix bug with --list-messages and python -OO * fix possible false positive for W0201 * introduce a new --additional-builtins option to handle user defined builtins * --reports option has now -r as short alias, and -i for --include-ids What is pylint ? ---------------- Pylint is a python tool that checks if a module satisfy a coding standard. Pylint can be seen as another pychecker since nearly all tests you can do with pychecker can also be done with Pylint. But Pylint offers some more features, like checking line-code's length, checking if variable names are well-formed according to your coding standard, or checking if declared interfaces are truly implemented, and much more (see http://www.logilab.org/projects/pylint/ for the complete check list). The big advantage with Pylint is that it is highly configurable, customizable, and you can easily write a small plugin to add a personal feature. The usage it quite simple : $ pylint mypackage.mymodule This command will output all the errors and warnings related to the tested code (here : mypackage.mymodule), will dump a little summary at the end, and will give a mark to the tested code. Pylint is free software distributed under the GNU Public Licence. Home page --------- http://www.logilab.org/projects/pylint Download -------- ftp://ftp.logilab.org/pub/pylint Mailing list ------------ mailto://python-projects at logilab.org Enjoy ! -- Sylvain Th?nault LOGILAB, Paris (France). http://www.logilab.com http://www.logilab.fr http://www.logilab.org From dieter at handshake.de Fri May 27 14:42:34 2005 From: dieter at handshake.de (Dieter Maurer) Date: 27 May 2005 14:42:34 +0200 Subject: packageresources 0.1: Standard access to package related resources Message-ID: packageresources is a Python package for standard access to package related resources (e.g. configuration files, package related data, presentation templates, ...). Such a standard access is essential for applications running from a zip archive or as a frozen application (in case they use associated non-code resources). packageresources defines a new URL scheme (see RFC 2396), the 'pypackage' scheme, used to designate package resources and a set of functions to access such resources. It also provides a function to patch Python's standard library such that 'pypackage' URLs are handled transparently. The current implementation supports packages in the filesystem or in a zip archive and frozen packages. It has been tested on *nix and Windows (XP). Not everything may work for installations using the macpath module (i.e. older Macintoshs). Read "doc.rst" in the tarball, for details. Download: Dieter From abpillai at gmail.com Fri May 27 20:10:57 2005 From: abpillai at gmail.com (Anand) Date: 27 May 2005 11:10:57 -0700 Subject: ANN: HarvestMan 1.4.5 a1 Message-ID: <1117217457.526362.65380@g43g2000cwa.googlegroups.com> I am glad to announce the first alpha release of HarvestMan 1.4.5. HarvestMan 1.4.5 is the first major revision after HarvestMan 1.4 which was released in Jan 2005. HarvestMan [http://harvestman.freezope.org] is a WWW crawler program written entirely in Python. It has many features which allows you to highly customize your www crawling/offline downloading. HarvestMan features as much as 60+ configuration options. Here are the highlights of this release. 1. Configuration file changed to XML format from text format of previous versions. 2. An archival feature to archive downloaded files. 3. New, robust parser based on SGMLParser module. 4. Modifications in project caching. Changelog for this release available at http://harvestman.freezope.org/files/Changelog.txt . HarvestMan website: http://harvestman.freezope.org . Regards -Anand From jason at tishler.net Sat May 28 00:27:12 2005 From: jason at tishler.net (Jason Tishler) Date: Fri, 27 May 2005 18:27:12 -0400 Subject: Updated Cygwin Package: python-2.4.1-1 Message-ID: <20050527222712.GA3384@tishler.net> New News: === ==== I have updated the version of Python to 2.4.1-1. The tarballs should be available on a Cygwin mirror near you shortly. The following are the notable changes since the previous release: o upgrade to Python 2.4.1 o apply SourceForge patch #1197318 to resolve problems importing symlinked modules Old News: === ==== Python is an interpreted, interactive, object-oriented programming language. If interested, see the Python web site for more details: http://www.python.org/ Please read the README file: /usr/share/doc/Cygwin/python-2.4.README since it covers requirements, installation, known issues, etc. Standard News: ======== ==== To update your installation, click on the "Install Cygwin now" link on the http://cygwin.com/ web page. This downloads setup.exe to your system. Then, run setup and answer all of the questions. If you have questions or comments, please send them to the Cygwin mailing list at: cygwin at cygwin.com . *** CYGWIN-ANNOUNCE UNSUBSCRIBE INFO *** If you want to unsubscribe from the cygwin-announce mailing list, look at the "List-Unsubscribe: " tag in the email header of this message. Send email to the address specified there. It will be in the format: cygwin-announce-unsubscribe-you=yourdomain.com at cygwin.com If you need more information on unsubscribing, start reading here: http://sources.redhat.com/lists.html#unsubscribe-simple Please read *all* of the information on unsubscribing that is available starting at this URL. Jason -- PGP/GPG Key: http://www.tishler.net/jason/pubkey.asc or key servers Fingerprint: 7A73 1405 7F2B E669 C19D 8784 1AFD E4CC ECF4 8EF6 From dave-announce at dabeaz.com Mon May 30 03:28:45 2005 From: dave-announce at dabeaz.com (David Beazley) Date: Sun, 29 May 2005 20:28:45 -0500 Subject: ANN: PLY-1.6 (Python Lex Yacc) Message-ID: <2b68907610fc6a1c3ca3079ddb9ec4b8@dabeaz.com> May 27, 2005 Announcing : PLY-1.6 (Python Lex-Yacc) http://www.dabeaz.com/ply I'm pleased to announce a new update to PLY---a 100% Python implementation of the common parsing tools lex and yacc. PLY was originally written to support an introduction to compilers course and has been freely available since 2001. However, the 1.6 release expands PLY's capabilities to include full LALR(1) parsing just like the popular yacc and bison tools (earlier versions of PLY only provided SLR parsing). Here are a few PLY highlights: - PLY is closely modeled after traditional lex/yacc. If you know how to use these tools in C, you will find PLY to be similar. - PLY provides *very* extensive error reporting and diagnostic information to assist in parser construction. The original implementation was developed for instructional purposes. As a result, the system tries to identify the most common types of errors made by novice users. - PLY provides full support for empty productions, error recovery, precedence rules, and moderately ambiguous grammars. - Parsing is based on LR-parsing which is fast, memory efficient, better suited to large grammars, and which has a number of nice properties when dealing with syntax errors and other parsing problems. Currently, PLY can build its parsing tables using either SLR or LALR(1) algorithms. Note: traditional yacc tools typically use LALR(1). - PLY can be used to build parsers for large programming languages. Although it is not ultra-fast due to its Python implementation, PLY can be used to parse grammars consisting of several hundred rules (as might be found for a language like C). The lexer and LR parser are also reasonably efficient when parsing normal sized programs. More information about PLY can be obtained on the PLY webpage at: http://www.dabeaz.com/ply PLY is freely available and is licensed under the terms of the Lesser GNU Public License (LGPL). Cheers, David Beazley (http://www.dabeaz.com) From johan at gnome.org Tue May 31 00:56:05 2005 From: johan at gnome.org (Johan Dahlin) Date: Mon, 30 May 2005 19:56:05 -0300 Subject: ANNOUNCE: nautilus-python 0.4.0 Message-ID: <429B9A05.90705@gnome.org> I am pleased to announce the first public release of nautilus-python. The new release is available from ftp.gnome.org: http://ftp.gnome.org/pub/GNOME/sources/nautilus-python/0.4/nautilus-python-0.4.0.tar.gz I'd like to thank the following people, for helping me during the development: Sidnei da Silva, Gustavo Carneiro, Thomas Vander Stichele, Sebastien Bacher and Ross Burton. Sidnei da Silva is writing an integration tool for plone desktop: http://awkly.org/files/menu.png Ross Burton is writing a dpkg interface. Blurb: Nautilus is the file manager used by the GNOME desktop environment. Nautilus-python provides bindings for the extension API in nautilus. With help of it you can write extensions that goes beyond the standard shell script interface like context menuitems, additional list columns and property pages. nautilus-python requires nautilus >= 2.6.0, PyGTK >= 2.4.0, gnome-python 2.0.0 and Python >= 2.3 Bug reports should be made in GNOMEs bugzilla: http://bugzilla.gnome.org/enter_bug.cgi?product=nautilus-python -- Johan Dahlin johan at gnome.org From robin at alldunn.com Tue May 31 04:19:32 2005 From: robin at alldunn.com (Robin Dunn) Date: Mon, 30 May 2005 19:19:32 -0700 Subject: ANN: wxPython 2.6.0.1 Message-ID: <429BC9B4.2080403@alldunn.com> Announcing ---------- I'm pleased to announce the 2.6.0.1 release of wxPython, now available for download at http://wxpython.org/download.php. This release consists mostly of bug fixes made since the 2.6.0.0 release a month ago. What is wxPython? ----------------- wxPython is a GUI toolkit for the Python programming language. It allows Python programmers to create programs with a robust, highly functional graphical user interface, simply and easily. It is implemented as a Python extension module that wraps the GUI components of the popular wxWidgets cross platform library, which is written in C++. wxPython is a cross-platform toolkit. This means that the same program will usually run on multiple platforms without modifications. Currently supported platforms are 32-bit Microsoft Windows, most Linux or other Unix-like systems using GTK or GTK2, and Mac OS X. Changes in 2.6.0.1 ------------------ Added wx.BrushFromBitmap to create a stippled brush in a single step. Also added missing brysh style flags: wx.STIPPLE_MASK wx.STIPPLE_MASK_OPAQUE. wxMSW: Fix for default control colours when the system text fg colour is not black. wxGTK: Patch #1171754, It is now possible to have a menu item that both has an icon and is a submenu. wxMSW: Patch #1197009, better refreshes when windows are moved and resized. wxMSW: Patch #1197468. Keeps track of pending size/position changes in case there is more than one adjustment for a window in a single DeferWindowPos set, then the pending values can be used for defaults instead of current values. Fixed the typemap that converts a Python list of strings to a wxArrayString so it uses the wxPython default encoding. Several docstrings added and updated. Lots more to go. wxMac: Strings added to the clipboard or used in DnD no longer have an extra null character at the end. Added wx.GetXDisplay that returns a raw swigified pointer for the X11 Display, or None for the non-X11 platforms. wxMenu: Don't send an event when selecting an already selected radio item. Added wx.LaunchDefaultBrowser. wxMSW: Fixed erroneous selection of content in wx.ComboBox when within a wx.StaticBox. wxMSW: Fixed alpha blitting to take into account source position. Ensure that Python is still in an initialized state before doing any locking or unlocking in wxPyBeginBlockThreads and wxPyEndBlockThreads as these can be triggered after Python has been finalized in embedding situations. Added alternate constructors for wx.Font: wx.FontFromPixelSize, wx.FFont, wx.FFontFromPixelSize. See the docstrings or new api docs for details. Added wx.lib.hyperlink from Andrea Gavana. It is a control like static text that acts like a hyper-link, launching the system's default browser in response to the clicks. Added an optional parameter to wxversion.select that allows you to specify that the extra components specified in the version string are required. For example, if you ask for "2.6-unicode" but only the ansi version is installed then by default the ansi version will be selected as it considered close enough since the version numbers match. If you want to force the options to be required then you can just add a True parameter, like this:: import wxversion wxversion.select("2.6-unicode", True) import wx Tweaked wx.lib.buttons such that flat buttons (e.g. have no bevel and a wx.BORDER_NONE style flag) paint themed backgrounds if there are transparent areas and the parent is displaying a theme. wxMSW: Fix for wrong sash colour of wx.SplitterWindow in the silver theme on XP. Added a wx.xrc.XmlResourceHandler for the Ticker class. See wx/lib/ticker_xrc.py wxSTC: Fixed CmdKeyAssign key bindings for Ctrl-Backspace. wxMSW: Fixed a bug in wx.TextCtrl where all the lines were being used to calculate the best size, instead of using a reasonable limit. XRCed: Use wx.GetDefaultPyEncoding/wx.SetDefaultPyEncoding for changing active encoding. Fixed pasting siblings (Ctrl key pressed while pasting). wx.lib.filebrowsebutton: Bug fix from Chad Netzer for when self.history is None. wx.ogl: Patch from Davide Salomoni that adds an optional point parameter to LineShape.InsertLineControlPoint allowing one to optionally specify where the new control point has to be drawn. wxMSW: setting foreground colour for wx.CheckBox now works when using XP themes. More updates to the docview library modules and sample apps from the ActiveGrid folks. Their sample IDE is now able to integrate with Subversion. wx.grid.Grid: Ensure that the grid gets the focus when it is left-clicked. Note that if you have custom widgets that handle the EVT_LEFT_DOWN event but do not call event.Skip() then you will probably want to add a call to self.SetFocus in the event handler. wxGTK: Add wxSTAY_ON_TOP support [Patch 1206023] wx.TreeCtrl: wx.EVT_TREE_ITEM_MENU event made consistent on all platforms. The location of the click or the item is included in the event as well. wxGTK: Setting background colour of a window now only affects the window itself, not the borders, scrollbars, etc. (Bug #1204069) Print framework: Add more paper sizes and code to fallback to an explicit paper size if a known paper size is not found for the printer. wxMac: Applied patch for bug #1206181 Option-key decodes are wrong, also applied patch for bug #1205691 Modified Fn keys don't work. wx.Image: Fixed to preserve alpha channel in Rotate90 method. wxMSW: Fixed incorrect background colour on wx.CheckListBox. wxMSW: Fixed drawing of owner drawn buttons with multiline labels Removed a bunch of unnecessary files, and removed or replaced images that we're not sure of their origin or license. The default DoGetBestSize is updated to not always return the current size if the window has no sizer, children, or minsize set. Instead the current size is set as the minsize. This solves the occasional problem where a sizer may cause a childless panel to grow but never shrink. wxMSW: When converting a wx.Icon to a bitmap check if the icon has an alpha channel and set the bitmap to use it. Fixed the wrong class name used in wx.PyScrolledWindow's call to _setCallbackInfo. wxMSW: patch #1207202, Fixes GDI leak when using stock cursors. wx.calendar.CalendarCtrl: Patch #1207531, Keeps the CalendarCtrl wide enough even when the weekday names for the locale are shorter than usual. Made GridCellNumberEditor.StartingKey also insert the typed char when there is a range of allowed values (so a wx.SpinCtrl is used instead of a wx.TextCtrl.) -- Robin Dunn Software Craftsman http://wxPython.org Java give you jitters? Relax with wxPython! From Fernando.Perez at colorado.edu Tue May 31 08:45:23 2005 From: Fernando.Perez at colorado.edu (Fernando Perez) Date: Tue, 31 May 2005 00:45:23 -0600 Subject: [ANN] IPython 0.6.14. Message-ID: <429C0803.20207@colorado.edu> Hi all, I've just made the 0.6.14 release of IPython, mostly to fix the inevitable bugs reported after the .13 one (though one big improvement sneaked by). IPython's homepage is at: http://ipython.scipy.org and downloads are at: http://ipython.scipy.org/dist I've provided RPMs (for Python 2.3 and 2.4, built under Fedora Core 3), plus source downloads (.tar.gz). Fedora users should note that IPython is now officially part of the Extras repository, so they can get the update from there as well (though it may lag by a few days). There is also a native win32 installer which should work correctly for both Python 2.3 and 2.4. Debian, Fink and BSD packages for this version should be coming soon, as the respective maintainers (many thanks to Jack Moffit, Andrea Riciputi and Dryice Liu) have the time to follow their packaging procedures. Many thanks to Enthought for their continued hosting support for IPython, and to all the users who contributed ideas, fixes and reports. I'd like to add a special thanks to Denis Rivi?re, Yann Cointepas and Benjamin Thyreau for their hard work on the Qt improvements, and for their overall hospitality. Python really seems to have a remarkably friendly community, worldwide! WHAT is IPython? ---------------- 1. An interactive shell superior to Python's default. IPython has many features for object introspection, system shell access, and its own special command system for adding functionality when working interactively. 2. An embeddable, ready to use interpreter for your own programs. IPython can be started with a single call from inside another program, providing access to the current namespace. 3. A flexible framework which can be used as the base environment for other systems with Python as the underlying language. Release notes ------------- As always, the NEWS file can be found at http://ipython.scipy.org/NEWS, and the full ChangeLog at http://ipython.scipy.org/ChangeLog. The highlights of this release follow. This is mainly a bugfix release, to clean up the problems reported in 0.6.13. As I said at the time, I intend to start new development now (more details on that in a separate email). As always, however, a few new goodies managed to sneak by. * A new -qthread option to support controlling Qt apps from within ipython, similar to what -gthread and -wthread do for GTK/WX. This was contributed by Denis Rivi?re , Yann Cointepas and Benjamin Thyreau . Many thanks to them! The lack of Qt support was a glaring omission of ipython's gui features, so I'm extremely happy to have their contribution. For those of you who may be matplotlib users as well, I should note that as of mpl 0.81 (the next release, or use current CVS), the -pylab option will also support interactive matplotlib use with the Qt backend. This is also thanks to work done by Denis, Yann and Benjamin against the matplotlib Qt backend, in conjunction with the IPython improvements. * New -e option to %run to suppress tracebacks from sys.exit() calls. This can be very useful to silence all the noise generated when running unittests from within ipython. * New ';' escape to autoquote a line without splitting: In [6]: ,foo a b c ------> foo("a", "b", "c") In [7]: ;foo a b c ------> foo("a b c") In the process, I fixed ',' quoting, which I'd broken in .13. * Fix -wthread to work with WXPython 2.6 (this also impacts matplotlib users who run the WX backend). * Added new matcher (it goes at the end of the priority list) to do tab-completion on named function arguments. Submitted by George Sakkis . See the thread at http://www.scipy.net/pipermail/ipython-dev/2005-April/000436.html for more details. * Various other fixes for obscure bugs, but all of which caused reported IPython crashes. Details in Changelog. Enjoy, and as usual please report any problems. Regards, Fernando. From andrewm at object-craft.com.au Tue May 31 09:40:50 2005 From: andrewm at object-craft.com.au (Andrew McNamara) Date: Tue, 31 May 2005 17:40:50 +1000 Subject: Albatross 1.30 released Message-ID: <20050531074050.B44F57940DC@longblack.object-craft.com.au> OVERVIEW Albatross is a small toolkit for developing highly stateful web applications. The toolkit has been designed to take a lot of the pain out of constructing intranet applications although you can also use Albatross for deploying publicly accessed web applications. In slightly more than 4500 lines of Python (according to pycount) you get the following: * An extensible HTML templating system similar to DTML including tags for: - Conditional processing. - Macro definition and expansion. - Sequence iteration and pagination. - Tree browsing. - Lookup tables to translate Python values to arbitrary template text. * Application classes which offer the following features: - Optional server side or browser side sessions. - The ability to place Python code for each page in a dynamically loaded module, or to place all page processing code in a single mainline. * The ability to deploy applications as CGI, FastCGI, mod_python or a pure python HTTP server by changing less than 10 lines of code. The toolkit application functionality is defined by a collection of fine grained mixin classes. Nine different application types and six different execution contexts are prepackaged, you are able to define your own drop in replacements for any of the mixins to alter any aspect of the toolkit semantics. Application deployment is controlled by your choice of either cgi, FastCGI, mod_python, or BaseHTTPServer Request class. It should be possible to develop a Request class for Medusa or Twisted to allow applications to be deployed on those platforms with minimal changes. Albatross comes with over 170 pages of documentation. HTML, PDF and PostScript formatted documentation is available from the toolkit homepage. The toolkit homepage: http://www.object-craft.com.au/projects/albatross/ The Albatross mailing list subscription and archives: http://object-craft.com.au/cgi-bin/mailman/listinfo/albatross-users CHANGES SINCE 1.20 * Any HTML tag can now be prefixed with "al-" allowing any attribute to be the result of python evaluation. For example: could produce and: could produce * Since macros and lookups are an application global resource, they can only be defined once per application, however this was not previously checked. Redefinition of macros or lookups will now result in an ApplicationError exception. * an in-line version of the tag has been introduced, which is expanded in place if the tag has an expr= attribute. * a new tag has been added to allow templates to assert that specific Albatross features are available, or templating scheme version number is high enough. * "Cache-Control: no-cache" is now set in addition to "Pragma: no-cache" - the former is defined for HTTP/1.1, the later for HTTP/1.0. * Simplified session cookie handling. BUGFIXES SINCE 1.20: * FastCGI apps were not being explicitly finalised, relying instead on their object destructor, with the result that writing application output (or errors) would be indefinitely deferred if object cycles existed. We now call "fcgi.Finish()" from the fcgiapp Request.return_code() method. * When handling exceptions, the traceback is now explicitly deleted from the local namespace to prevent cycles (otherwise the garbage collection of other objects in the local namespace will be delayed). * Two fixes to the tag: the albatross-specific "list" attribute was leaking into resulting markup, and the use of the "expr" attribute would result in invalid markup being emitted. * Thanks to Robert Fendt for picking this up: the Albatross-generated hidden field input element must not appear naked inside a form element for strict HTML conformance. The solution is to wrap the input elements in div. * BranchingSession sessions could not be "deleted" - the solution is to add a dummy "session" shared by all branches, which is deleted when one branch "logs out". -- Andrew McNamara, Senior Developer, Object Craft http://www.object-craft.com.au/ From barry at python.org Tue May 31 15:02:10 2005 From: barry at python.org (Barry Warsaw) Date: Tue, 31 May 2005 09:02:10 -0400 Subject: RELEASED Mailman 2.1.6 Message-ID: <1117544530.4380.166.camel@geddy.wooz.org> On behalf of the development team, I'm pleased to announce the release of GNU Mailman 2.1.6. This is a significant release, which includes three important security patches, updated Chinese (zh_TW and zh_CN) support, better compatibility with Python 2.4, a few new features, and many bug fixes. Mailman is free software for managing email mailing lists and e-newsletters. This release fixes CAN-2005-0202, a reported vulnerability in path traversal in the private archive script. This release also provides an option for sites to produce more cryptographically secure auto-generated passwords, and it closes a potential cross-site scripting hole. Because of the security (and other) fixes, it is highly recommended that all sites upgrade to 2.1.6. For more information, please see: http://www.list.org http://mailman.sf.net http://www.gnu.org/software/mailman On a personal note, I owe a debt of gratitude to Tokio Kikuchi, who served as release manager for 2.1.6, integrated countless patches, and coordinated the Chinese language updates for this release. Please join me in thanking him for helping out so much. For links to download the Mailman 2.1.6 source tarball, see: http://sourceforge.net/project/showfiles.php?group_id=103 Enjoy, -Barry -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 307 bytes Desc: This is a digitally signed message part Url : http://mail.python.org/pipermail/python-announce-list/attachments/20050531/635fab8e/attachment-0001.pgp From python-url at phaseit.net Tue May 31 17:13:06 2005 From: python-url at phaseit.net (Simon Brunning) Date: Tue, 31 May 2005 15:13:06 +0000 Subject: Dr. Dobb's Python-URL! - weekly Python news and links (May 31) Message-ID: QOTW: "Not tested but confident should be an oxymoron for a programmer." - Peter Otten (Asked "Is this unsurprising if I look at it right?") - "Yes; in general this is true across many domains for a very large number of referents of "it" :-)" - John Machin "Strong typing means there [are] a lot of variables whose names are in ALL CAPS." - Paul Rubin One common Python "gotcha" is that default argument values are only evaluated once, at function definition time. David Isaac wanted to know where the values are stored: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/b09b4e9a78162261 A new era in Python package management? http://dirtsimple.org/2005/05/easyinstall-new-era-in-python-package.html Markus would like to limit his Python script to a fixed percentage of CPU usage: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/17f108407779536a How do you drive-by-wire a car using Python? The Pegasus Team is doing some very cool stuff with Python - but I'd want to see their test results before going within a mile of the thing. http://pegasusbridge.blogspot.com/2005/05/how-do-you-drive-by-wire-car-using.html Michael Smith wanted to check poker-dice rolls to see if they were a full house. Raymond Hettinger gives him general purpose card hand detection code: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/1eb194f0547c0c49 George asks for help with a regexp to do quoted string parsing, then is shown the light, and uses PyParsing instead. http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/7756f2cca64a5def Fuzzyman tells us how to build a Movable Python CD - that is, Python that you can run straight off the CD without any installation - with a custom set of packages: http://www.voidspace.org.uk/python/weblog/arch_d7_2005_05_21.shtml#e48 Why is Python case-sensitive? Because mathematical notation is, apparently: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/6cd17bbab3d8ae80 Mark Williamson has difficulty generating API documentation. Python still needs a javadoc analogue that doesn't import code, it seems: Gabor would like to be able to write to a single text file from multiple processes simultaneously. This is hard. http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/475d065fa7871e63 Eval is unsafe at any speed. Duncan Booth takes on all comers and shows that you can do dangerous things with eval regardless of attempts to make it safe: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/cbcc21b95af0d9cc Notable releases: Twisted 2.0.1 http://twistedmatrix.com/ wxPython 2.6.0.1 http://wxpython.org/ IPython 0.6.14 http://ipython.scipy.org/ ======================================================================== Everything Python-related you want is probably one or two clicks away in these pages: Python.org's Python Language Website is the traditional center of Pythonia http://www.python.org Notice especially the master FAQ http://www.python.org/doc/FAQ.html PythonWare complements the digest you're reading with the marvelous daily python url http://www.pythonware.com/daily Mygale is a news-gathering webcrawler that specializes in (new) World-Wide Web articles related to Python. http://www.awaretek.com/nowak/mygale.html While cosmetically similar, Mygale and the Daily Python-URL are utterly different in their technologies and generally in their results. For far, FAR more Python reading than any one mind should absorb, much of it quite interesting, several pages index much of the universe of Pybloggers. http://lowlife.jp/cgi-bin/moin.cgi/PythonProgrammersWeblog http://www.planetpython.org/ http://mechanicalcat.net/pyblagg.html comp.lang.python.announce announces new Python software. Be sure to scan this newsgroup weekly. http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python.announce Steve Bethard, Tim Lesher, and Tony Meyer continue the marvelous tradition early borne by Andrew Kuchling, Michael Hudson and Brett Cannon of intelligently summarizing action on the python-dev mailing list once every other week. http://www.python.org/dev/summary/ The Python Package Index catalogues packages. http://www.python.org/pypi/ The somewhat older Vaults of Parnassus ambitiously collects references to all sorts of Python resources. http://www.vex.net/~x/parnassus/ Much of Python's real work takes place on Special-Interest Group mailing lists http://www.python.org/sigs/ The Python Business Forum "further[s] the interests of companies that base their business on ... Python." http://www.python-in-business.org Python Success Stories--from air-traffic control to on-line match-making--can inspire you or decision-makers to whom you're subject with a vision of what the language makes practical. http://www.pythonology.com/success The Python Software Foundation (PSF) has replaced the Python Consortium as an independent nexus of activity. It has official responsibility for Python's development and maintenance. http://www.python.org/psf/ Among the ways you can support PSF is with a donation. http://www.python.org/psf/donate.html Kurt B. Kaiser publishes a weekly report on faults and patches. http://www.google.com/groups?as_usubject=weekly%20python%20patch Cetus collects Python hyperlinks. http://www.cetus-links.org/oo_python.html Python FAQTS http://python.faqts.com/ The Cookbook is a collaborative effort to capture useful and interesting recipes. http://aspn.activestate.com/ASPN/Cookbook/Python Among several Python-oriented RSS/RDF feeds available are http://www.python.org/channews.rdf http://bootleg-rss.g-blog.net/pythonware_com_daily.pcgi http://python.de/backend.php For more, see http://www.syndic8.com/feedlist.php?ShowMatch=python&ShowStatus=all The old Python "To-Do List" now lives principally in a SourceForge reincarnation. http://sourceforge.net/tracker/?atid=355470&group_id=5470&func=browse http://python.sourceforge.net/peps/pep-0042.html The online Python Journal is posted at pythonjournal.cognizor.com. editor at pythonjournal.com and editor at pythonjournal.cognizor.com welcome submission of material that helps people's understanding of Python use, and offer Web presentation of your work. del.icio.us presents an intriguing approach to reference commentary. It already aggregates quite a bit of Python intelligence. http://del.icio.us/tag/python *Py: the Journal of the Python Language* http://www.pyzine.com Archive probing tricks of the trade: http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python&num=100 http://groups.google.com/groups?meta=site%3Dgroups%26group%3Dcomp.lang.python.* Previous - (U)se the (R)esource, (L)uke! - messages are listed here: http://www.ddj.com/topics/pythonurl/ (requires subscription) http://groups-beta.google.com/groups?q=python-url+group:comp.lang.python*&start=0&scoring=d& http://purl.org/thecliff/python/url.html (dormant) or http://groups.google.com/groups?oi=djq&as_q=+Python-URL!&as_ugroup=comp.lang.python Suggestions/corrections for next week's posting are always welcome. E-mail to should get through. To receive a new issue of this posting in e-mail each Monday morning (approximately), ask to subscribe. Mention "Python-URL!". -- The Python-URL! Team-- Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and sponsor the "Python-URL!" project.