From detlev at die-offenbachs.de Sun Oct 3 14:26:54 2004 From: detlev at die-offenbachs.de (Detlev Offenbach) Date: Sun Oct 3 20:02:03 2004 Subject: ANN: eric v. 3.5.0 available Message-ID: <1o7532-q8g.ln1@stargate.solsys.priv> Hi, I am proud to announce the immediate availability of eric v. 3.5.0. It is available via http://www.die-offenbachs.de/detlev/eric3.html or http://eric-ide.sourceforge.net This release includes some new features and a bunch of usability enhancements. For details see the attached release notes. Regards Detlev -- Detlev Offenbach detlev@die-offenbachs.de -------------- next part -------------- This is a feature relase of the eric3 Python IDE. The most notable feature enhancements are: Editor: - multiple views to the same document - lexer support for Perl and Bash - automatic syntax checks of Python files upon save/open - syntax check for Quixote page template files - autosave feature - limit the effect of a search and search/replace to a range of lines Debugger: - show contents of simple Qt-types while debugging - add breakpoints while the debugger is executing Python shell: - a Python shell based on the QScintilla widget with autocompletion, calltips and syntax highlighting Interface: - new dialogs to compare files - enhanced the file/class browser - a new window layout called "floating windows" - a new icon set based on crystal icons Translations: - French translations Others: - improved Subversion integration - drag and drop support - single instance mode - enhanced unicode support Please note that Python versions prior to 2.2.0 are not supported anymore. From henkpunt at gmail.com Sun Oct 3 16:17:26 2004 From: henkpunt at gmail.com (Henk Punt) Date: Sun Oct 3 20:02:04 2004 Subject: ANN: Venster 0.7 Message-ID: <7bc21cb6.0410030617.6ba48a53@posting.google.com> Announcing release 0.7 of Venster. Venster is a highly native Windows GUI toolkit for Python based on the ctypes ffi library. Development is ongoing at http://venster.sourceforge.net In this release: - fixed creation process, venster windows can now process WM_CREATE messages during window creation. - refactored gdi stuff out of wtl.py - refactored wtl.py, split into core functionality (wtl_core.py) extra function are added by decorators in wtl.py - removed CHAINED msg maps. events now automatically bubble up to the parent class msg handlers - THE BIG ONE: added function decorators for building the MSG_MAP (supports 2.4 decorator syntax) for most code, MSG_MAPS are now obsolete. use one of the new decorators 'msg_handler', 'cmd_handler' or 'ntf_handler' to map python handlers to windows events. for an example see test_decorator.py decorators work for python 2.3 and 2.4 but only 2.4 can use the '@' decorator syntax. please note that MSG_MAPS are still available in, you should however not normally need them anymore. - WARNING! sanatized the class variable names used by Window and Form. This change is not backwards compatible, and you will probably need to update your code to use the new names. - integrated patches. (mostly bug fixes and some more control wrapping). - updated documentation (added a tutorial/hello world example). From fuzzyman at gmail.com Sun Oct 3 18:35:55 2004 From: fuzzyman at gmail.com (Michael Foord) Date: Sun Oct 3 20:02:04 2004 Subject: PythonUtils Update - ConfigObj Docs and file upload Message-ID: <6f402501.0410030835.666172bc@posting.google.com> Yet another set of updates to the PythonUtils scripts. PythonUtils - http://www.voidspace.org.uk/atlantibots/pythonutils.html Recipebook - http://www.voidspace.org.uk/atlantibots/recipebook.html Pythonutils mailing list - http://voidspace.xennos.com/mailman/listinfo/pythonutils_voidspace.xennos.com *NEW* configobj.html The docs to ConfigObj have been rewritten in ResT. THis means there is now a fancy HTML homepage for COnfigObj generated by DocUtils... Hurrah. Also a set of epydoc generated docs in the configobj.zip distribution. http://www.voidspace.org.uk/atlantibots/configobj.html *NEW* update_test.py An example of how to do file upload using urllib2. This is a rewrite of the cookbook example which uses httplib. http://www.voidspace.org.uk/atlantibots/recipebook.html#upload_test *UPDATE* upload.py An update to upload.py - a CGI script for file upload, including email notificaton, maximum upload directory size etc. A major refactoring of a script originally written by Tim Middleton. http://www.voidspace.org.uk/atlantibots/recipebook.html#upload Regards, Fuzzy From johan at gnome.org Sun Oct 3 23:10:38 2004 From: johan at gnome.org (Johan Dahlin) Date: Mon Oct 4 15:58:30 2004 Subject: ANNOUNCE: PyGTK 2.4.0 Message-ID: <1096837839.3198.18.camel@johan> I am pleased to announce version 2.4.0 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.4/pygtk-2.4.0.tar.gz It might take a while, so please be patient. What's new since 2.2.0 Wrapping for new objects in Gtk+ 2.4.0: GtkFileChooser, GtkUIManager (and action/toolbar api), GtkTreeModelFilter, GtkComboBox, GtkCellLayout. Examples for a few of them can be found in the tarball. Enum and Flags wrapping, with nice string representations Better constructor integrations. Python 2.3 requirement. Threading improvements, which are currently disabled until we can depend on Python 2.3.5 (unreleased) or 2.4 Plenty of bug fixes. Thanks to (this release would not have been possible without you!): Sebastian Bacher, Jonathan Blandford, Gustavo Carneiro, Steve Chaplin, Johan Dahlin, Abel Daniel, John Ehresman, John Finlay, Cedric Gustin, Maik Hertha, James Henstridge, Xaiver Ordoquy, Benjamin Otte, Christian Robottom Reis, Lorzeno Gil Sanchez, Thomas Vander Stichele, Jason Tackaberry, Scott Tsai, Fernando San Martin Woerner 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.4 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@gnome.org From gjc at inescporto.pt Mon Oct 4 00:08:46 2004 From: gjc at inescporto.pt (Gustavo J. A. M. Carneiro) Date: Mon Oct 4 15:58:31 2004 Subject: ANNOUNCE: GnomePython 2.6.0 Message-ID: <1096841326.2340.15.camel@emperor> GnomePython 2.6.0 has just been released. I offers convenient wrappers for most APIs in GNOME 2.6 platform, including the follwing modules: gnome, gnome.ui, gnome.canvas, gnome.vfs gconf gtkhtml2 bonobo, bonobo.activation, bonobo.ui gnome.applet nautilus gnomeprint, gnomeprint.ui The source tarball can be found here: ftp://ftp.gnome.org/pub/GNOME/sources/gnome-python/2.6/ Please file bug reports here: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-python Overview of Changes from gnome-python 2.5.90 to gnome-python 2.6.0 =================================================================== * bonobo - bonobo.AppClient is only a GObject, not a BonoboObject (Gustavo) - bonobo.event_source_client_add_listener now returns the new listener, to allow future disconnection (Gustavo) - Remove CORBA exceptions from all bonobo callbacks (Gustavo) - Fix a bug in bonobo.generic_factory_main (Gustavo) * gnomeprint - Add new pango/gnomeprint integration API if libgnomeprint 2.8 is installed (Gustavo) * vfs - Add missing bytes_requested parameter to read/write callbacks of async operations (Gustavo) - Raise exception when trying to subclass vfs types (Gustavo, James) * applet - Workaround problem in PanelApplet constructor (Gustavo) - Fix initialization of bonobo (Gustavo) * general - Mixed 32/64 bit architecture installation fixes (Jonathan Blandford) - Add gnome_python_version variable to the gnome module (Gustavo) - Resolve all known compiler warnings (Gustavo) -- Gustavo J. A. M. Carneiro The universe is always one step beyond logic From johan at gnome.org Mon Oct 4 00:21:41 2004 From: johan at gnome.org (Johan Dahlin) Date: Mon Oct 4 15:58:31 2004 Subject: ANNOUNCE: PyORBit 2.0.1 Message-ID: <1096842101.3198.25.camel@johan> PyORBit 2.0.1, the Python binding for the ORBit2 CORBA ORB, is now available at: http://ftp.gnome.org/pub/GNOME/sources/pyorbit/2.0/ What's new since 2.0.0? - x86_64 build fixes (Mark McLoughlin) - export pyorbit versions (Gustavo) - Python 2.4 fixes (James) - Bug fixes (James, Bowin Owens) PyORBit provides both client and server side CORBA bindings, and aims to follow the standard Python language mapping for CORBA (http://www.omg.org/cgi-bin/doc?formal/02-09-07). PyORBit is capable of calling in process servers implemented using ORBit2, and being called by in process C code. This makes it ideal for use in the Gnome environment, and is used by the gnome-python Gnome bindings. PyORBit requires ORBit2 >= 2.4.4 and Python >= 2.2. Questions about PyORBit can be directed to the PyGTK list: http://www.daa.com.au/mailman/listinfo/pygtk Bug reports should be filed at the Gnome bug tracker: http://bugzilla.gnome.org/enter_bug.cgi?product=pyorbit -- Johan Dahlin From ahaas at airmail.net Mon Oct 4 17:37:54 2004 From: ahaas at airmail.net (Art Haas) Date: Tue Oct 5 05:59:11 2004 Subject: [ANNOUNCE] Seventeenth release of PythonCAD now available Message-ID: <20041004153754.GA6674@artsapartment.org> Hi. I'm pleased to announce the seventeenth 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 Python 2.3. The interface is GTK 2.0 based, and uses the PyGTK module for interfacing to GTK. The design of PythonCAD is built around the idea of separating the interface from the back end as much as possible. By doing this, it is hoped that both GNOME and KDE interfaces can be added to PythonCAD through usage of the appropriate Python module. Addition of other interfaces will depend on the availability of a Python module for that particular interface and developer interest and action. The seventeenth releases of PythonCAD can print! This release includes the ability of the program to generate a PostScript file that can either be sent to a printer or saved directly to a file. Printing support is not entirely complete however, and will be enhanced over the next several release. This release also includes improvements in the user interface for changing existing drawing entities, especially text and dimensions. There have been numerous improvements made to the code for these entities as well, and subsequent releases will continue this effort. This release also includes a restructured code layout that should make PythonCAD less likely to cause unexpected interactions with other Python based programs like Zope. Finally, various improvements in the undo/redo code, plus a good number of bug fixes, are included in this release. The mailing list for the development and use of PythonCAD is available. Visit the following page for information about subscribing and viewing the mailing list archive: http://mail.python.org/mailman/listinfo/pythoncad Visit the PythonCAD web site for more information about what PythonCAD does and aims to be: http://www.pythoncad.org/ Come and join me in developing PythonCAD into a world class drafting program! Art Haas -- Man once surrendering his reason, has no remaining guard against absurdities the most monstrous, and like a ship without rudder, is the sport of every wind. -Thomas Jefferson to James Smith, 1822 From me.simon at t-online.de Mon Oct 4 20:26:11 2004 From: me.simon at t-online.de (Simon) Date: Tue Oct 5 05:59:11 2004 Subject: ANN: PyOpenOffice 0.21 released Message-ID: <416195C3.9010407@t-online.de> New in release 0.21: # Colored background for paragraphs and table cells in PDF. # User-defined constants possible for makeSerialLetters() - not only "today" or "heute" allowed. # Better explanations in test.sxw. Have a look at: http://www.bezirksreiter.de/PyOpenOffice.htm Martin Simon From python-url at phaseit.net Mon Oct 4 23:59:19 2004 From: python-url at phaseit.net (Ville Vainio) Date: Tue Oct 5 05:59:12 2004 Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Oct 4) Message-ID: QOTW: "...then we get a signal through, then various miracles occur, and the conclusion is, 'You mean it only takes thirteen lines of code to do that? Our software folks said it's not possible.' Cameron Laird, on his typical experience with industrial automation projects "In fact what you'd really like is a 'resumption' object created by raising the exception, that you can pass control to at any time, sort of like yielding from a generator. Maybe you're getting deja vu now, since this is basically what Stackless Python continuations were." Paul Rubin, on the idea of resumable exceptions Marco Aschwanden and others weigh the virtues of the commercial Python IDEs WingIDE and Komodo. http://groups.google.com/groups?threadm=mailman.3996.1096354841.5135.python-list%40python.org Thomas wonders about the speed of getting a list of directories via os.listdir() and os.path.isdir(), and gets suggestions for interesting platform specific optimizations. http://groups.google.com/groups?threadm=ikrfl05b77p2jlbrp3kehvf5o3u8jp35od%404ax.com Jacek Generowicz is looking for a metaclass that would allow introducing several methods with the same name in a class, spawning a long and educational thread about metaclasses and learning a simpler way of achieving the goal using the upcoming decorator syntax. http://groups.google.com/groups?threadm=tyfekkoeyk2.fsf%40pcepsft001.cern.ch Bishara Gabriel publishes a proposal aiming to introduce Python and object oriented approach to the realm of social sciences. http://groups.google.com/groups?threadm=mailman.4083.1096472628.5135.python-list%40python.org Srijit Kumar Bhadra posts a version of the same program using PythonNet, IronPython and Boo, showcasing the similarity in the way code is written. http://groups.google.com/groups?selm=221d8dbe.0409302041.3798265d%40posting.google.com Connelly Barnes has written "htmldata", a module that can convert html documents to basic Python data structures and back. http://groups.google.com/groups?selm=mailman.4170.1096616953.5135.python-list%40python.org Martin Maney relays information about the Python slant of Ubuntu, the Debian-derivative that has been gathering lots of users and attention even before the official release. http://groups.google.com/groups?selm=cjmc42%24420%241%40wheel2.two14.net Wolfgang Keller can't find the libraries he needs for industrial control applications. A discussion about the sorry state of software for industrial control in general, and the suitability of Python in particular ensues. People actually seem to have plans for improving the situation. http://groups.google.com/groups?threadm=joztfie8fghq.fdfzxi3urxbg%24.dlg%4040tude.net Alia Khouri needs to "sell" Python to his company. http://groups.google.com/groups?threadm=40a939c9.0410021235.623eb6f6%40posting.google.com Andrew Kuchling would like to see the focus of Python development moving away from hacking the interpreter and towards improving the standard library. http://www.amk.ca/diary/archives/cat_python.html#003382 Paul Rubin, Nick Craig-Wood, et al. exhibit experts' thoughts on sorting and memory use. http://groups.google.com/groups?frame=left&th=b73a0c321d8c4c5b Larry Bates argues that we shouldn't curtail the life of "debugging" code. Steve Holden, Ian Parker, and others provide examples, and consider concrete uses of assert() and __debug__. http://groups.google.com/groups?frame=left&th=aaf241b357c6f1b ======================================================================== 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. 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 Brett Cannon continues the marvelous tradition established by Andrew Kuchling and Michael Hudson 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@pythonjournal.com and editor@pythonjournal.cognizor.com welcome submission of material that helps people's understanding of Python use, and offer Web presentation of your work. *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/ 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 brian at dorseys.org Tue Oct 5 01:53:57 2004 From: brian at dorseys.org (Brian Dorsey) Date: Tue Oct 5 05:59:12 2004 Subject: NorthWest(USA) Python Sprint #2 - October 23,24 Message-ID: <20041004235357.GA18413@dorseys.org> SeaPIG (the Seattle Python Interest Group) is excited to announce the NORTHWEST PYTHON SPRINT #2 October 23-24, 2004 Bellevue, Washington, USA http://seapig.org/NorthwestPythonSprint The cost is FREE, thanks to our host Construx Software. There will be a large, comfortable room seating 50+ people at tables, wireless and wired Internet access, and a projector for demonstrations. We have the room reserved for Saturday and Sunday, but feel free to drop in whenever you can make it. Kevin Altis will be giving a short intro to PythonCard (http://pythoncard.sourceforge.net/) and coaching a sprint. >From his blog: I'll be giving a presentation on PythonCard Saturday morning as well as helping people work on their own PythonCard projects, fix bugs, and make additions to the framework and tools. Which projects we tackle will depend on how many people show up and what interests them the most. (http://altis.pycs.net/2004/09/30.html) We have plenty of space, so feel free to sign up to coach other projects or just bring your own and look for a partner. What is a sprint? A sprint is a group of people who gather for a day or more to work on a common software project. The members choose individual tasks and usually work solo or in pairs in the same room, then get together periodically to compare notes. We'll follow the model that has worked successfully at the past several Python conferences: several groups working on different projects in the same room. Past sprints have done development work on the Python core, Twisted, Docutils, Webware, Zope, Chandler, etc. Most projects have a variety of tasks that need to be done -- coding modules, designing test suites, squashing bugs, writing user documentation and developer documentation, brainstorming design strategies, planning promotional activities, etc -- so there's something for every skill level. You'll need to bring a laptop, or if you don't have one you can pair with somebody who does. If you'd like to coach a sprint, sign up to attend, propose a lightning talk or demonstration, or just get more information, see our wiki page: http://seapig.org/NorthwestPythonSprint or contact: seattle-python@lists.seapig.org or Brian Dorsey , 206-619-6975 Mike Orr , 206-240-4250 Construx is located at 11820 Northup Way #E200, Bellevue WA 98005. It's eight miles from downtown Seattle; twenty from Sea-Tac Airport. (http://seapig.org/ConstruxMeetingLocation) Carpools and homestays are available if you contact us in advance. From barry at python.org Tue Oct 5 05:11:51 2004 From: barry at python.org (Barry Warsaw) Date: Tue Oct 5 05:59:13 2004 Subject: email 3.0a0 Message-ID: <1096945911.7679.35.camel@geddy.wooz.org> Python 2.4 will come with version 3.0 of the email package. I've made a standalone distutils package of email 3.0 for folks who don't want to download the Python CVS. I plan on freezing the API when Python 2.4 beta 1 is released. For documentation and download links please see the email-sig home page: http://www.python.org/sigs/email-sig Changes in email 3.0 include: * New FeedParser provides an incremental parsing API for applications that may read email message from blocking sources. FeedParser is also more standards compliant than the old parser, and is "non-strict" so that it should never raise parse errors when parsing broken messages. * Previously deprecated API features have been removed, while a few more deprecations have been added. * Support for Pythons earlier than 2.3 have been removed. * Lots and lots of fixes. Feel free to join the email-sig mailing list for further discussion. -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/20041004/bffac4aa/attachment.pgp From sheldon.plankton at gmail.com Mon Oct 4 21:13:29 2004 From: sheldon.plankton at gmail.com (Plankton) Date: Tue Oct 5 05:59:29 2004 Subject: fledgling Python online forum References: Message-ID: <611e63a9.0410041113.7e655716@posting.google.com> We havea domain name now ... You can find SnakeHandlers.net at http://www.snakehandlers.net From bac at OCF.Berkeley.EDU Tue Oct 5 07:00:23 2004 From: bac at OCF.Berkeley.EDU (Brett C) Date: Tue Oct 5 12:39:01 2004 Subject: python-dev Summary for 2004-09-01 through 2004-09-15 Message-ID: <41622A67.3040301@ocf.berkeley.edu> python-dev Summary for 2004-09-01 through 2004-09-15 ++++++++++++++++++++++++++++++++++++++++++++++++++++ This is a summary of traffic on the `python-dev mailing list`_ from September 01, 2004 through September 15, 2004. It is intended to inform the wider Python community of on-going developments on the list. To comment on anything mentioned here, just post to `comp.lang.python`_ (or email python-list@python.org which is a gateway to the newsgroup) with a subject line mentioning what you are discussing. All python-dev members are interested in seeing ideas discussed by the community, so don't hesitate to take a stance on something. And if all of this really interests you then get involved and join `python-dev`_! This is the forty-eighth summary written by Brett Cannon (hopefully school won't drown my this quarter). To contact me, please send email to brett at python.org ; I do not have the time to keep up on comp.lang.python and thus do not always catch follow-ups posted there. All summaries are archived at http://www.python.org/dev/summary/ . Please note that this summary is written using reStructuredText_ which can be found at http://docutils.sf.net/rst.html . Any unfamiliar punctuation is probably markup for reST_ (otherwise it is probably regular expression syntax or a typo =); you can safely ignore it, although I suggest learning reST; it's simple and is accepted for `PEP markup`_ and gives some perks for the HTML output. Also, because of the wonders of programs that like to reformat text, I cannot guarantee you will be able to run the text version of this summary through Docutils_ as-is unless it is from the `original text file`_. .. _PEP Markup: http://www.python.org/peps/pep-0012.html The in-development version of the documentation for Python can be found at http://www.python.org/dev/doc/devel/ and should be used when looking up any documentation on new code; otherwise use the current documentation as found at http://docs.python.org/ . PEPs (Python Enhancement Proposals) are located at http://www.python.org/peps/ . To view files in the Python CVS online, go to http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/python/ . Reported bugs and suggested patches can be found at the SourceForge_ project page. The `Python Software Foundation`_ is the non-profit organization that holds the intellectual property for Python. It also tries to forward the development and use of Python. But the PSF_ cannot do this without donations. You can make a donation at http://python.org/psf/donations.html . Every penny helps so even a small donation (you can donate through PayPal or by check) helps. .. _python-dev: http://www.python.org/dev/ .. _SourceForge: http://sourceforge.net/tracker/?group_id=5470 .. _python-dev mailing list: http://mail.python.org/mailman/listinfo/python-dev .. _comp.lang.python: http://groups.google.com/groups?q=comp.lang.python .. _Docutils: http://docutils.sf.net/ .. _reST: .. _reStructuredText: http://docutils.sf.net/rst.html .. _PSF: .. _Python Software Foundation: http://python.org/psf/ .. contents:: .. _last summary: http://www.python.org/dev/summary/2004-08-16_2004-08-31.html .. _original text file: http://www.python.org/dev/summary/2004-09-01_2004-09-15.ht ===================== Summary Announcements ===================== Python 2.4a3 has been released. Go to http://www.python.org/2.4/ and give it twirl. Sorry for this summary being so short, but school has started back up again so I am in the middle of suddenly having to switch back into homework mode after spending the summer just having a 9:00-17:00 job. And since it is a new school year I am going to abuse this space and say that anyone in San Luis Obispo, including students, should join the `SLO Meetup`_ coming up on October 14. .. _SLO Meetup: http://python.meetup.com/95/ ========= Summaries ========= -------------------- Movement in PEP Land -------------------- `PEP 334`_ (Simple Coroutines via SuspendIteration) came into existence. `PEP 328`_ (Relative Imports) got some discussion on postponing making imports absolute instead of the relative/absolute semantics they have now. As it stands it looks like the changeover might get pushed off. `PEP 292`_ (Simpler String Substitutions) seems to finally be done and locked down. `PEP 335`_ (Overloadable Boolean Operators) came into existence. .. _PEP 334: http://www.python.org/peps/pep-0334.html .. _PEP 328: http://www.python.org/peps/pep-0328.html .. _PEP 292: http://www.python.org/peps/pep-0292.html .. _PEP 335: http://www.python.org/peps/pep-0335.html Contributing threads: - `PEP 334 - Simple Coroutines via SuspendIteration `__ - `PEP 328 - Relative Imports `__ - `Re: Alternative Implementation for PEP 292:Simple String Substitutions `__ - `ANN: PEP 335: Overloadable Boolean Operators `__ ------------------------------------------------------ __str__, __unicode__, and how to have them play nicely ------------------------------------------------------ Did you know that __str__ methods are allowed to return Unicode objects? Well, it turns out they can, but that str() (which calls PyObject_Str()) automatically tries to convert the value returned by __str__ into ASCII. Basically __str__ shouldn't return Unicode if you can help it and you should use __unicode__ instead and reserve __str__ to return str objects only. Contributing threads: - unicode and __str__ (couldn't find in archives) ---------------------- Backporting C APIs bad ---------------------- Somebody (*cough* Guido *cough*) asked if the datetime C API could be backported to 2.3 . The argument was that the only person who would probably use it is the person who asked for it, the author of cx_Oracle. Well, pretty much everyone spoke up against this. The argument went that adding an API would just be bad since there would suddenly be a point in the 2.3 releases where backwards compatibility was broken. People brought up the point of 2.2 where in 2.2.1 booleans were added and how that has caused compatibility headaches for some people. In the end the API was not backported. Contributing threads: - `Re: [Python-checkins] python/dist/src/Modules threadmodule.c, 2.56, 2.56.8.1 `__ ---------------------------------------------------------------------- Got to love race conditions thanks to the filesystem and external apps ---------------------------------------------------------------------- Tim Peters found a race condition one can have on Windows if you have an app that uses the low-level hooks into the filesystem. If you create a file, delete it, and then try to delete the directory the directory deletion will fail since the file is not deleted yet. What can happen is an indexing program can still be indexing the file before the filesystem is allowed to delete it and thus the directory is not truly empty when the directory deletion is executed. Fun stuff. Contributing threads: - `Coernic Desktop Search versus shutil.rmtree `__ ------------------------------- Python 2.4a3 is out the door!!! ------------------------------- Go to http://www.python.org/2.4/ , download it (using the bz2 version if possible so as to save on bandwidth), and run it against your code, run the test suite, put it on your head and sell yourself to an art gallery, etc. Contributing threads: - `RELEASED Python 2.4, alpha 3 `__ ---------------------------- Cleaning the Exception House ---------------------------- The idea of reorganizing the exceptions hierarchy came up again (see http://www.python.org/dev/summary/2004-08-01_2004-08-15.html#an-exception-is-an-exception-unless-it-doesn-t-inherit-from-exception for a previous discussion on this). This time, the idea of separating the hierarchy into exceptions one would like to catch with a bare 'except' and those that you wouldn't was brought up. The idea is that some exceptions, such as MemoryError, one does not want to catch in a blanket statement usually. Chances of recovering from that kind of exception is low and should only be caught if you know what you are doing. So tweaking the exception hierarchy so that exceptions that were not near-catastrophic could inherit from an exception class that people could catch so as to allow the proper exceptions to propagate to the top-level without issue. Tim Peters even went as far as to suggest deprecating bare 'except' statements. This would force people to be explicit about what they want to catch, whether it be all "safe" exceptions or *all* exceptions. As it stands now no officially decision has been made for Python 3000 since that is about the only place this could happen. Contributing threads: - `Dangerous exceptions `__ --------------------------------------------------------------- Making decorators not look like decorators to the outside world --------------------------------------------------------------- Raymond Hettinger pointed out that a decorator does not, by default, look like the function that it is fiddling with (if that is the intent). Since most decorators will most likely be a wrapper function some things need to be set in the wrapper in order not to mask things in the wrapped function (doc string, argument parameters, etc.). So Raymond pointed out some things one can do. This also led to the suggestion of having a common name used to store a reference back to the wrapped function. There was also the mention that a decorator-oriented module in the stdlib will probably materialize in Python 2.5 . For now, though, stick recipes either in the Python Cookbook or in the Python wiki at http://www.python.org/cgi-bin/moinmoin/PythonDecoratorLibrary . Contributing threads: - `decorator support `__ =============== Skipped Threads =============== - random.py still broken wrt. urandom - random.py fixage - Re: [Python-checkins] python/dist/src/Lib/test test_compiler.py, 1.5, 1.6 test_decimal.py, 1.13, 1.14 - assert failure on obmalloc - Re: [Python-checkins] python/dist/src/Modules socketmodule.c, 1.304, 1.305 - Install-on-first-use vs. optional extensions - Console vs. GUI applications - Adding status code constants to httplib - PEP 292: method names - PEP 265 - Sorting dicts by value - httplib is not v6 compatible, is this going to be fixed? - OT: Unicode history - --with-tsc compile fails - tempfile.TemporaryFile on Windows NT - PyExc_UnicodeDecodeError - urllib.urlopen() vs IDNs, percent-encoded hosts, ':' - tabs in httplib.py and test_httplib.py There is now a vimrc file in the Misc directory that sets things up to follow PEPs 7 & 8 - strawman decision: @decorator won't change - unicode inconsistency? From thehaas at binary.net Tue Oct 5 17:49:18 2004 From: thehaas at binary.net (Mike Hostetler) Date: Tue Oct 5 22:03:42 2004 Subject: ANN: XMLBuilder 1.3 Message-ID: <87sm8t6u81.fsf@gideon.cox.net> XMLBuilder is an easy way to generate XML. New in Version 1.3: * Support for non-ascii character. * You can specify the encoding when making the object. If not specified, it defaults to UTF-8. * Specify if you want the resulting XML to be pretty-printed out. Thanks to Luis Miguel Morillas for helping me with the encoding stuff, and the patches. The current version is always avaiable at: http://users.binary.net/thehaas/blogfiles//xmlbuilder.py It's easier to show you how XMLBuilder works than to tell you. Here is some samples: >>> b1.name={"person": {"attr": {"type":"friend"},"last":"flintstone", ... "first":"fred"}} >>> print b1 flintstone fred >>> b2 = XMLBuilder() >>> b2.person={"attr":{"type":"boss"}, "last":"Slate", "first":"Mr."} >>> print b2 SlateMr. >>> print(b1+b2) flintstonefred SlateMr. >>> nonascii ={u"fran?ais" : u"Comment ?a va? Tr?s bien?", ... u"deutsch" : u"viel Spa?"} ## encoding='local' means to use the local encoding, in my case ISO8859-1 >>> iso = XMLBuilder(encoding="local", pretty=True) >>> iso.lang = nonascii >>> print iso Comment ?a va? Tr?s bien? viel Spa? A more concrete example is at: http://users.binary.net/thehaas/blogfiles/tablegen.py -- Mike Hostetler http://www.binary.net/thehaas From nas at mems-exchange.org Tue Oct 5 19:09:56 2004 From: nas at mems-exchange.org (Neil Schemenauer) Date: Tue Oct 5 22:03:42 2004 Subject: ANNOUNCE: Quixote version 1.1 released Message-ID: <20041005170956.GA14708@mems-exchange.org> Quixote is yet another framework for developing Web applications in Python. Version 1.1 is now available for download from: http://www.mems-exchange.org/software/quixote/ Changes in Quixote 1.1 ---------------------- * Fix example Apache directive for SCGI demo. * On Windows, put both stdin and stdout in binary mode. * Add 'buffered' flag to HTTPResponse (defaulting to True). * Support for the Python 2.4 'compiler' package. * Add HTTPRequest.get_scheme() method. * Use os.urandom() if it is available. Move randbytes() function to quixote.util module. * Convert tests to Sancho's utest framework. * Add 'index_filenames' keyword option to StaticDirectory. Medusa server: * Unquote the PATH_INFO environment variable. * Simplify propagation of HTTP headers. Form2 library: * Don't parse empty POSTs. * Fix a subtle bug in the multiple select widget. If nothing is selected then the value should be None, not [None]. * Add Widget.set_title(). -- Neil Schemenauer nas@mems-exchange.org MEMS and Nano-technology Exchange http://www.mems-exchange.org From stephan.richter at tufts.edu Tue Oct 5 22:27:37 2004 From: stephan.richter at tufts.edu (Stephan Richter) Date: Wed Oct 6 22:31:40 2004 Subject: Zope X3 3.0.0 RC 2 released Message-ID: <200410051627.37563.stephan.richter@tufts.edu> Hello Python community, The Zope 3 development team is proud to announce the second release candidate for Zope X3 3.0.0. Hopefully this will be the last one. Zope X3 is the next major Zope release and has been written from scratch based on the latest software design patterns and the experiences of Zope 2. The "X" in the name stands for "experimental", since this release does not try to provide any backward-compatibility to Zope 2. Downloads http://zope.org/Products/ZopeX3 Installation instructions for both Windows and Un*x/Linux are now available in the top level README.txt of the distribution. The binary installer is recommended for Windows. Changes since RC 1 - A security related bug was fixed. See the "Issue Collector":http://collector.zope.org/Zope3-Dev/286 for details. - Fixed a bug that would crash the API Doc tool, if no default skin was specified. - Fixed a couple of typos in the documentation. - Updated to latest version of the ZODB, version 3.3 final. - The 'zope.app.observable' package was removed from the release, since it was unusable. - The 'zope.app.i18nfile' package was removed, since it was always just a demo to demonstrate the internationalization of content. However, it has not been maintained with regard to recent changes and does not function properly anymore, so we decided to remove it. - Updated translations. Enjoy, the Zope 3 Development Team From tim at zope.com Wed Oct 6 20:53:46 2004 From: tim at zope.com (Tim Peters) Date: Wed Oct 6 22:31:40 2004 Subject: ZODB 3.3 final released Message-ID: <20041006185346.929793B805B@smtp.zope.com> I'm pleased to announce the release of ZODB 3.3 final. This corresponds to the ZODB (and ZEO) in ZopeX3-3.0.0 release candidate 2. You can download a source tarball or Windows installer from: http://zope.org/Products/ZODB3.3 Since 3.3c1, some small fixes were made on code paths unique to Zope 2.8 usage (code not used by Zope X3, Zope 3, or by ZODB itself). And thanks to a 1-character change noted by Andreas Jung, the sizes of network messages exchanged between ZEO clients and servers are smaller now, up to a factor of 4 improvement in extreme cases. See the news file for details: http://zope.org/Products/ZODB3.3/NEWS.html Note that ZODB 3.3 does not support any version of Zope 2.6 or 2.7. ZODB 3.3 does support Zope X3 and 3, and current Zope 2.8 trunk development. On a personal note, I'd like to thank Jeremy Hylton for his hard work on ZODB 3.3. He left before it was finished, but it wouldn't have even started without him. Thanks, Jeremy! From michael at stroeder.com Wed Oct 6 21:21:09 2004 From: michael at stroeder.com (=?ISO-8859-1?Q?Michael_Str=F6der?=) Date: Wed Oct 6 22:31:41 2004 Subject: ANN: python-ldap-2.0.3 Message-ID: <416445A5.3030300@stroeder.com> Find a new pre-release of python-ldap: http://python-ldap.sourceforge.net/ python-ldap provides an object-oriented API to access LDAP directory servers from Python programs. It mainly wraps the OpenLDAP 2.x libs for that purpose. Additionally it contains modules for other LDAP-related stuff (e.g. processing LDIF, LDAPURLs and LDAPv3 schema). ---------------------------------------------------------------- Released 2.0.3 2004-10-06 Changes since 2.0.2: * Added support for LDAP Password Modify Extended Operation (see RFC 3062) Demo/: * Added passwd_ext_op.py Modules/: * Added l_ldap_passwd() in LDAPObject.c Lib/: * Added methods passwd() and passwd_s() to ldap.ldapobject.LDAPObject From fredrik at pythonware.com Thu Oct 7 16:12:29 2004 From: fredrik at pythonware.com (Fredrik Lundh) Date: Fri Oct 8 03:35:25 2004 Subject: ANN: PIL 1.1.5 beta 1 (october 3, 2004) Message-ID: <003d01c4ac77$ae6e81e0$c200a8c0@wmc3fuze4sqif8> The Python Imaging Library (PIL) adds image processing capabilities to your Python interpreter. This library supports many file formats, and provides powerful image processing and graphics capabilities, including display support for Windows and Tkinter. PIL 1.1.5 beta 1 is now available from effbot.org: http://effbot.org/downloads#imaging (look for Imaging-1.1.5b1.tar.gz. if you're using Windows, get PIL-1.1.5b1 for your Python version) Changes in this release includes + Added new Sane release (from Ralph Heinkel). See the Sane/README and Sane/CHANGES files for more information. + Added experimental PngInfo chunk container to the PngImageFile module. This can be used to add arbitrary chunks to a PNG file. Create a PngInfo instance, use "add" or "add_text" to add chunks, and pass the instance as the "pnginfo" option when saving the file. + Added "getpalette" method. This returns the palette as a list, or None if the image has no palette. To modify the palette, use "getpalette" to fetch the current palette, modify the list, and put it back using "putpalette". + Added optional flattening to the ImagePath "tolist" method. tolist() or tolist(0) returns a list of 2-tuples, as before. tolist(1) returns a flattened list instead. + Some more (minor) build tweaks. For a list of other changes in 1.1.5, see this page: http://effbot.org/zone/pil-changes-115.htm Report bugs to the image-sig mailing list or directly to me, as usual. enjoy /F "Secret Labs AB -- makers of fine pythonware since 1997" From amk at rogue.amk.ca Thu Oct 7 20:06:23 2004 From: amk at rogue.amk.ca (A.M. Kuchling) Date: Fri Oct 8 03:35:26 2004 Subject: Date set for PyCon 2005 Message-ID: The date for PyCon 2005 has been set. PyCon 2005 will be held March 23-25, 2005, in Washington D.C. at the George Washington University's Cafritz Conference Center, the same location as the previous two PyCons. Sprints will take place on March 26-27, 2005, the weekend after the conference. The call for papers for PyCon 2005 will be posted soon. The PyCon organizers pycon@python.org From jhylton at gmail.com Thu Oct 7 23:38:57 2004 From: jhylton at gmail.com (Jeremy Hylton) Date: Fri Oct 8 03:35:27 2004 Subject: Lightweight Languages 2004 (LL4) CFP Message-ID: Lightweight Languages 2004 (LL4) ============================ Saturday, Dec. 4, 2004 MIT Stata Center, Cambridge MA Call for Presentations LL4 will be an intense, exciting, one-day forum bringing together the best programming language implementors and researchers, from both academia and industry, to exchange ideas and information, to challenge one another, and to learn from one another. The workshop series focuses on programming languages, tools, and processes that are usable and useful. Lightweight languages have been an effective vehicle for introducing new features to mainstream programmers. We encourage presentations on topics of interest to the community of lightweight language users and designers. We prefer topics that will interest a broad audience. We do not require the presentation of novel research ideas. Proposal Abstracts ----------------------- Due Nov. 12, 2004 We solicit abstracts of talks to be given at the workshop. Go for it -- convince us. Talks will be 30 minutes long, including time for questions and answers. Presenters are not expected to submit papers, but slides will be published on the workshop web site. We will also consider proposals for talks of different lengths. Some suggested topics are: * Language design: New language features, type systems and other reasoning tools, critiques of existing languages. * Implementation techniques: Interpreters and virtual machines, optimizations, cross-language interactions. * From scripts to programs: Software engineering with lightweight and/or a mix of languages. How to (or not to!) scale from little scripts to large, complex applications. Application war stories. * From ivory tower to cubicle -- what language implementors need to know from academic programming languages research -- and back. * Lightweight pearls: Elegant and instructive examples of programs in lightweight languages. * Programming tools and development processes. Send submissions to: ll4-submit@lists.csail.mit.edu We want presentations that will inspire, motivate, and educate. We want language implementors and researchers to leave the workshop fired up with ideas for future languages, features, and implementation tricks. We want language users to leave the workshop fired up with new ideas and new tools. Important Dates ------------------- Friday, Nov. 12 -- submissions due by end of day. Friday, Nov. 19 -- notification of acceptance or rejection Saturday, Dec. 4 -- 9am-7pm, LL4! Program Committee ----------------------- Ken Anderson, BBN (co-chair) David Ascher, ActiveState Jonathan Edwards, MIT Jeremy Hylton, Google (co-chair) Geoffrey Knauth, SFA Inc. Shriram Krishnamurthi, Brown University Greg Sullivan, Alphatech From fumanchu at amor.org Thu Oct 7 06:51:28 2004 From: fumanchu at amor.org (Robert Brewer) Date: Fri Oct 8 03:35:49 2004 Subject: Announce: Junct Message-ID: <3A81C87DC164034AA4E2DDFE11D258E3022F41@exchange.hqamor.amorhq.net> Well, Jon Udell just pointed us to Jot, which is a "next generation" wiki. I figured I should get my project on the books. Junct is a "next generation" wiki-like application. Each topic page is identified by its title, and linking between topics is automatic, just like a wiki. Junct is, however, more than your average wiki. It has additional features which provide enterprise-class functionality: * Most importantly, each Topic is owned by a Group. Each Group, therefore, has its own namespace of Topics. * Allows publishing of topics from Group to Group. * Provides customizable markup rules. * Can receive new content via email. * Can notify and remind users via email. * Provides multiple membership models. * Allows file uploads. * Shows uploaded files in an iframe if possible. * Converts Word and Excel files to plain-text Junct topics. * Is skinnable. HTML, CSS, and app logic are well-separated. * Extensible via plugins. Current plugins include: - Calendaring - Progress tracking (tasks) - Spell-check (if you run MS Word on the server) - Threaded comments - Non-wiki resource linking - Table of Contents (per Group) Junct is available via Subversion at svn://casadeamor.com/junct/trunk. It is built on top of the 'dejavu' ORM at svn://casadeamor.com/dejavu/trunk, and uses the 'cation' app framework at svn://casadeamor.com/cation/trunk. All of these are in the public domain. Junct doesn't have much documentation yet (nor do cation nor dejavu), but it's coming. Part of this posting is simply to say "I was there first" with some of these ideas. :) Robert Brewer MIS Amor Ministries fumanchu@amor.org From astrand at lysator.liu.se Fri Oct 8 12:55:06 2004 From: astrand at lysator.liu.se (=?iso-8859-1?Q?Peter_=C5strand?=) Date: Sun Oct 10 16:15:50 2004 Subject: subprocess - updated popen5 module Message-ID: I'd like to give you an updated status report of the popen5 project. Since my last post at 2004-06-04, this has happened: * The module has been renamed to "subprocess", primarily to avoid collision with Trent Mick's module. * I've added support for executing a command through the shell. This is done by using a keyword argument shell=True. Executing through the shell is supported both on Windows and POSIX systems. * The modules doesn't require Mark Hammond's Windows extensions any longer: Fredrik Lundh has contributed an extension module that provides the needed Win32 API. * The PEP now includes more implementation notes, as well as a lot of examples. An updated PEP has been sent to the PEP editors. With these changes, the subprocess module now feels quite complete. In the near future, I will focus on getting the module included in the standard library. The module is available from http://www.lysator.liu.se/~astrand/popen5/. /Peter ?strand From fredrik at pythonware.com Sat Oct 9 21:16:05 2004 From: fredrik at pythonware.com (Fredrik Lundh) Date: Sun Oct 10 16:15:51 2004 Subject: ANN: ElementTree 1.2.1 (october 9, 2004) Message-ID: <001001c4ae34$6c8abaa0$c200a8c0@wmc3fuze4sqif8> The Element type is a simple but flexible container object, designed to store hierarchical data structures, such as simplified XML infosets, in memory. The ElementTree package provides a Python implementation of this type, plus code to serialize element trees to and from XML files. ElementTree 1.2.1 is 1.2 plus some performance improvements that have been backported from the 1.3 development version. The new release is 20-30% faster than 1.2, on many kinds of XML documents. You can get the ElementTree toolkit from: http://effbot.org/downloads Brief documentation and some code samples (including an XML-RPC unmarshaller in 16 lines) are available from: http://effbot.org/zone/element.htm enjoy /F From fredrik at pythonware.com Sun Oct 10 16:58:18 2004 From: fredrik at pythonware.com (Fredrik Lundh) Date: Mon Oct 11 04:56:32 2004 Subject: ANN: exemaker 1.0 (october 10, 2004) Message-ID: <003201c4aed9$9427f780$c200a8c0@wmc3fuze4sqif8> The ExeMaker utility takes a Python script, installs it in a given directory, and creates an EXE file in the same directory. When you run the EXE, it locates and loads a suitable Python interpreter DLL, and runs the script. Usage: > more myscript.py print "welcome to my script!" > exemaker myscript.py c:/bin c:/bin/myscript.exe ok c:/bin/myscript.py ok > myscript welcome to my script! The ExeMaker is designed to quickly turn small scripts into command line utilities, so you can use them (and distribute them) without having to set up PY associations, create BAT files, or fool around with more sophisticated bundling tools. Just run exemaker on your script, and you're done. You can get ExeMaker from: http://effbot.org/downloads/#exemaker enjoy /F From no at spam.please Mon Oct 11 01:39:42 2004 From: no at spam.please (Doug Holton) Date: Mon Oct 11 04:56:32 2004 Subject: [ANN] Boo 0.4.3 - python-like language for .NET/Mono Message-ID: Rodrigo B. de Oliveira released version 0.4.3 of boo, I thought I'd share it here since there has been so much interest for similar projects like IronPython. http://boo.codehaus.org/ Boo is a python-like language for .NET or the cross-platform Mono (http://www.go-mono.com/). Version 0.4.3 adds an interactive interpreter (booish, similar to IDLE for python), elif, and a bug fix. I wrote up some notes on boo for people already familiar with Python: http://boo.codehaus.org/Gotchas+for+Python+Users Also I have collected some starter resources for getting into .NET programming: http://developers.coedit.net/DotNetProgramming A summary of some distinct features of boo: -quickly compile to an exe (can run cross-platform with Mono) -closures/anonymous methods: http://boo.codehaus.org/Closures x = def(): ...some code here -optional static typing: "x as int", "static def method1() as string:" -simple super(), automatic super calls and constructors -unless statement -built-in support for regular expressions -timespan literals: "100ms" -extensible compiler pipeline -custom macros and attributes (similar to decorators) -includes an interactive interpreter (booish) and an IDE with code completion (boox, still in development). Features in common with C#: -interfaces, enums, events -properties with getters and setters Version as string: get: return _version set: _version = value -lock (like "synchronized" in java) -asynchronous execution with BeginInvoke http://boo.codehaus.org/Asynchronous+Design+Pattern -parameter checking with required attribute: def foo([required(value > 3)] value as int): pass -using statement: (disposes of object when finished using) using f = System.IO.File.OpenText('using0.boo'): print(f.ReadLine()) From ianb at colorstudy.com Mon Oct 11 02:56:39 2004 From: ianb at colorstudy.com (Ian Bicking) Date: Mon Oct 11 04:56:33 2004 Subject: Chicago Python Users Group, October 14 Message-ID: <4169DA47.2050303@colorstudy.com> The Chicago Python User Group, ChiPy, will have its next meeting on Thursday, October 14, starting at 7pm. For more information on ChiPy see http://chipy.org This month Edward Ream will be giving a presentation on his project, Leo: http://webpages.charter.net/edreamleo/front.html About the Presentation ---------------------- Leo is an outlining editor that creates and displays relationships between code and data in a new way; you can't do what Leo does with Emacs or any other tool. Leo shows these relationships in an outline using noweb, a simple markup language. Clones are separate parts of an outline that represent the same data. Clones allow you to create multiple views of data within a single outline. Edward's talk will briefly discuss outlines, noweb and clones, and then show how these three powerful features can be combined to clarify and simplify all aspects of programming: design, coding, testing and unit test, maintenance, data management and project management. Edward K. Ream received a masters degree in computer science from the University of Wisconsin, Madison in 1974 and has been programming ever since. He is the author of numerous public domain programs written in C. He has been working on Leo for almost 10 years. For the last three years he has been programming exclusively in Python using Leo. There will also be time to chat, and many opportunities to ask questions. We encourage people at all levels to attend. Location -------- This month we will be meeting at SMS in downtown Chicago (the same place we met in August). The address is 444 N. Michigan Ave, Chicago. Enter from Michigan Ave., sign in at front desk, and take elevator to 28th floor. Transportation: parking (at cost) is available at several locations in the vicinity. Closest is under the Nordstrom building at Rush and Grand. By public transportation (recommended), take the Red Line to Grand Avenue Exit. Walk two blocks East to Michigan. Take stairs up to Michigan. 444 is one block South on the West side of the street. Wireless (and wired) internet connectivity will be available, so bring your laptops. About ChiPy ----------- We meet once a month, on the second Thursday of the month. If you can't come this month, please join our mailing list: http://lonelylion.com/mailman/listinfo/chipy From python-url at phaseit.net Mon Oct 11 19:45:07 2004 From: python-url at phaseit.net (Ville Vainio) Date: Mon Oct 11 22:43:36 2004 Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Oct 11) Message-ID: QOTW: "As revealed by PSU Research Paper 'UU788', the real reason is a side effect of the nanovirus encroaching into non-whitespace, as first proposed by 'UU355' and then earlier proven (twice, as it turned out) by 'UU6 9'. The only defence is t*^$Z:%Z* NO CARRIER" - Richie Hindle. He appears to have survived the... unfortunate incident. "What do I have to say to get into the QOTW?" - Dan Python, who finally realized that Dan Perl is not going to cut it as a name. Johannes Eble is looking for software te help replace Matlab with Python. Respondents recommend the combination of SciPy and IPython. http://groups.google.com/groups?threadm=uhu1m0t4euvekl61ilengepdhuettvmutr%404ax.com Irmen de Jong is looking for a way to make an object temporarily read-only. Alex Martelli comes up with a clever, obvious-when-you-have-seen-it approach of changing the class of the live object. http://groups.google.com/groups?selm=1gl6bdp.rudxqrkoby1zN%25aleaxit%40yahoo.com Global interpreter lock of CPython and multi-CPU scalability are a recurrent theme in comp.lang.python. The current concern involves the upcoming availability and popularity of multicore CPUs. http://groups.google.com/groups?threadm=6db3f637.0410042045.2171ad5f40posting.google.com PySQLite, the python interface to the SQLite embedded relational database, hits 1.0. http://groups.google.com/groups?selm=mailman.4368.1097005231.5135.python-list%40python.org Carlos Ribeiro provides Erik Johnson a simple explanation of the mechanics behind class and function definitions - a simple matter that confuses many, especially people who think Python has such things as 'declarations'. http://groups.google.com/groups?selm=mailman.4460.1097104255.5135.python-list%40python.org Alex Martelli shows how we should use the plain objects returned by object() as sentinels. http://groups.google.com/groups?threadm=1glatop.p9hsopf3b9m4N%25aleaxit%40yahoo.com Robin Becker needs to determine whether an object is a sequence. http://groups.google.com/groups?threadm=41650CAE.704%40chamonix.reportlab.co.uk Boo 0.4.3, the Python-like language for .NET/Mono CLR, is out. http://groups.google.com/groups?selm=8PGdnS7wN_uwg_rcRVn-qw%40comcast.com ======================================================================== 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. 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 Brett Cannon continues the marvelous tradition established by Andrew Kuchling and Michael Hudson 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@pythonjournal.com and editor@pythonjournal.cognizor.com welcome submission of material that helps people's understanding of Python use, and offer Web presentation of your work. *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/ 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 toby at tarind.com Mon Oct 11 19:47:12 2004 From: toby at tarind.com (Toby Dickenson) Date: Mon Oct 11 22:43:36 2004 Subject: Module import dependency graph pictures Message-ID: <200410111847.12431@trumpet.tarind.com> What every large python project needs.... pretty pictures of the module dependency graph. http://www.tarind.com/depgraph.html .....a few scripts to glue modulefinder.py into graphviz, producing import dependency pictures pretty enough for use as a poster, and containing enough information to be a core part of my process for understanding physical dependencies. From baas at ira.uka.de Mon Oct 11 20:41:34 2004 From: baas at ira.uka.de (Matthias Baas) Date: Mon Oct 11 22:43:37 2004 Subject: ANN: Python Computer Graphics Kit v1.2.0 Message-ID: <7uklm0dpfp4erm1rd1kn3idh7o8mrmefjk@4ax.com> Release 1.2.0 of the Python Computer Graphics Kit is available at http://cgkit.sourceforge.net What is it? ----------- The kit is a collection of Python modules that contain the basic types and functions required for creating 3D computer graphics images. The kit includes several new types such as vectors, matrices and quaternions. It contains a binding for Pixar's RenderMan interface which is a renderer independent API to communicate 3D data to renderers which will finally produce a 2D image. There are already several RenderMan compliant renderers freely available (they are not part of the kit). The kit also includes some of the functionality from the RenderMan Shading Language which enables you to create procedural models or textures from within Python. Even though the kit focuses on RenderMan, the new types or the Shading Language functionality can also be used for other rendering mechanism such as OpenGL or other renderers such as POV-Ray. The kit should run on any platform where Python (and a C/C++ compiler) is available. Binary packages are available for Windows and Debian. What's new? ----------- The new release fixes a crash that could occur with the Python 2.2 binary package on Windows. The problem was actually a bug in Pyrex and occurred during a garbage collection cycle after a vector has been unpacked. Apart from that, there are a few small bug fixes in the ri and cgtypes module (see changelog). Debian users can now also download a binary package (thanks to Brett Hartshorn!). For more information, visit: http://cgkit.sourceforge.net - Matthias - From aahz at pythoncraft.com Tue Oct 12 04:54:11 2004 From: aahz at pythoncraft.com (Aahz) Date: Tue Oct 12 15:47:00 2004 Subject: BayPIGgies: October 14, 7:30pm Message-ID: <20041012025410.GA15575@panix.com> The next meeting of BayPIGgies will be Thurs October 14 at 7:30pm. In lieu of a speaker, we'll be having a Beginner's Roundtable run by Danny Yoo. BayPIGgies meetings are in Stanford, California. For more information and directions, see http://www.baypiggies.net/ Before the meeting, we may meet at 6pm for dinner in downtown Palo Alto. Discussion of dinner plans is handled on the BayPIGgies mailing list. Advance notice: The November 11 meeting agenda has not been set. Please send e-mail to baypiggies@baypiggies.net if you want to make a presentation. -- Aahz (aahz@pythoncraft.com) <*> http://www.pythoncraft.com/ WiFi is the SCSI of the 21st Century -- there are fundamental technical reasons for sacrificing a goat. (with no apologies to John Woods) From richardjones at optushome.com.au Tue Oct 12 10:57:39 2004 From: richardjones at optushome.com.au (Richard Jones) Date: Tue Oct 12 15:47:01 2004 Subject: Australian Open Source Developers' Conference, Dec 2004 Message-ID: <200410121857.39957.richardjones@optushome.com.au> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 G'day folks, This is a quick note to let you know that registrations for Australia's first Open Source Developers' Conference are now open. If you register before 31st October 2004 you will receive a conference t-shirt and financial discount. The t-shirts look fantastic. :) You can register at http://www.osdc.com.au/ OSDC is a grassroots-style conference designed by developers for developers, covering open source languages, tools, libraries, operating systems, licences and business models. We're booking 3 lecture rooms each day for the 3 days and every single slot is filled with a talk. There are 60 different talks by 45 different speakers, not including the keynotes. Talks topics range from dealing with hardware in Perl, to designing cochlear implants with Python, to writing large-scale PHP. We also have talks on the Firebird Database, Mozilla XUL, Lego Micromouse (and maze solving), MySQL, CVS, Make, DocBook and writing games with Javascript. You can find the list of speakers and talk titles at http://www.osdc.com.au/papers/index.html Speaker names listed as "unavailable" means that that speaker opted to have their paper refereed. Their names will appear once the refereeing process is over. Because there are so many good talks, you can be certain that there will be something that interests you in every talk session. In our initial timetable it was impossible to put the most interesting talks into sequential timeslots as we had too many "most interesting" talks for the time available. Each day will start with a 1.5 hour keynote by our excellent keynote speakers. These include Damian Conway, Nathan Torkington, Anthony Baxter, Luke Welling and Con Zymaris. The rest of the day will be filled with 5 hours of talks and plentiful food breaks. Our catering choices should result in you being extraordinarily well fed throughout the days of the conference. There will also be a key-signing, several BOFs (yet to be organised), lots of opportunities to socialise, a semi-formal dinner, a partners' programme and other usual conference stuff. If you have any other questions about what is happening, please don't hesitate to ask: osdc-help@osdc.com.au -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (GNU/Linux) iD8DBQFBa5yDrGisBEHG6TARAst4AJkBRd4kg9t+XZLVqVr6Zy+YV03HJACeLvug Oh+B0WlWAnrDXF9ZVXIEo8o= =1Z93 -----END PGP SIGNATURE----- From riccardo_cut-me at cut.me.sideralis.net Tue Oct 12 22:15:00 2004 From: riccardo_cut-me at cut.me.sideralis.net (Riccardo Galli) Date: Wed Oct 13 17:17:47 2004 Subject: ANN: curses-extra 0.2 Message-ID: First official release :) curses-extra offers some widgets wrotten using curses module. The following classes and functions are present in the module Widget Button ButtonBar #bar of buttons (automatically manage arrow keys) CheckButton RadioButton CheckButtonList #list of checkbutton (as ButtonBar) ComboBox Menu MenuBar add_shortcut(pattern,action) #check combinations of keys, eg H use_shortcut(c,obj) #check if character is a shortcut, and use it # in case #NOTE: widgets auto-check for the shortcuts chgat(win[,y,x],count,attr,color) #change attributes of an area You can find it at http://www.sideralis.net/index.php?action=4&pjid=20 Suggestions about API or about widgets' graphic are appreciated. Thanks, Riccardo -- -=Riccardo Galli=- _,e. s~ `` ~@. ideralis Programs . ol `**~ http://www.sideralis.net From dude_js at yahoo.com Wed Oct 13 04:14:41 2004 From: dude_js at yahoo.com (jsdude) Date: Wed Oct 13 17:17:48 2004 Subject: ANN: Nevow 0.3 released References: Message-ID: <2950b6e9.0410121814.2b6e06ab@posting.google.com> Try IAB Studio (www.iabstudio.com) from WorcsNet and feel difference. With IAB Studio, you will get everything you need for creating Web applications of any complexity. This toolset of suites includes unique all-in-one combination of Application Builder, Data Management/reposting and Workflow. Over 40 controls are available for users to design, simulate, run, monitor and administer your applications via the Internet. It is compatible with major databases and operating systems (Unix/Linux and Windows). Cheers Valentino Volonghi aka Dialtone wrote in message news:... > GET it here: http://www.nevow.com/releases/0.3.0/nevow-0.3.tar.gz > > More Informations: > > Nevow (pronounced nou-veau) is a web application construction kit written > in Python. It is designed to allow the programmer to express as much of > the view logic as desired in Python, and includes a pure Python XML > expression syntax named stan to facilitate this. However it also provides > rich support for designer-edited templates, using a very small XML > attribute language to provide bi-directional template manipulation > capability. > > Nevow also includes formless, a declarative syntax for specifying the > types of method parameters and exposing these methods to the web. Forms > can be rendered automatically, and form posts will be validated and input > coerced, rendering error pages if appropriate. Once a form post has > validated successfully, the method will be called with the coerced values. > > Finally, Nevow includes LivePage, a two-way bridge between JavaScript in > a browser and Python on the server. For 0.3, LivePage has been updated to > operate on Mozilla, Firefox, Windows Internet Explorer 6, and Safari on > Mac OS X. Event handlers can be written in pure Python and JavaScript > implementation details are hidden from the programmer, with Nevow taking > care of routing data to and from the server using XmlHttpRequest. > > * XHTML templates: contain no programming logic, only nodes tagged > with nevow attributes > * data/render methods: simplify the task of separating data from > presentation and writing view logic > * stan: An s-expression-like syntax for expressing xml in pure python > * formless: For describing the types of objects which may be passed to > methods of your classes, validating and coercing string input from > either web or command-line sources, and calling your methods > automatically once validation passes > * webform: For rendering web forms based on formless type > descriptions, accepting form posts and passing them to formless > validators, and rendering error forms in the event validation fails > * livepage: Cross-browser JavaScript glue for sending client side > events to the server and server side events to the client after the > page has loaded, without causing the entire page to refresh > > Links: > ML: http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-web > Bug Tracker: http://divmod.org/users/roundup.twistd/nevow/ > IRC: irc://irc.freenode.net/#twisted.web > Commits: http://divmod.org/users/mailman.twistd/listinfo/nevow-commits > > Homepages: > http://www.nevow.com > http://www.divmod.org/Home/Projects/Nevow/index.html > > What's New in Nevow 0.3: > > 2004-09-26 Donovan Preston > > * Added nevow.inevow.IQ interface, an interface for querying the > stan DOM. Eventually, this interface will contain APIs for doing > traditional DOM introspection, such as iterating children, > examining tag names, and examining attributes. For now, it contains > only the patternGenerator, onePattern, and allPatterns APIs. These > APIs have been deprecated from Context. > > The main benefit of this is the ability to do: > > IQ(loaders.xmlfile(...)).patternGenerator(...) > > which would be nice for creating "pattern library" files containing > common skin idioms which can then be copied and used throughout > the app. > > 2004-09-25 Donovan Preston > > * Chatola received a major facelift, bringing it from cool demo > up to almost a full fledged web-based chat server. The helper API > LiveEvil.call(...) was added, which deprecates > LiveEvil.sendScript(callJS(...)) > > 2004-09-23 Tommi Virtanen > > * Make guard.SessionWrapper store its URL location in all requests it > passes to its children. This allows the children know where to post > the __login__ and __logout__ forms, even deep inside the resource > tree (fixes issue59). > > * Guard now works as a non-root resource, with help from the above > change. Semantics of __login__ clarified in unit tests; if your guard > is at /foo, posting to /foo/__login__ redirects to /foo, and posting > to /foo/__login__/ redirects to /foo/. The two unit tests that failed > earlier now pass (with that change in their __login__ URLs). > > * If URL-based sessions are used, login no longer loses session > information due to redirect to / (fixes issue56). > > 2004-09-20 Matt Goodall > > * Added URL.secure() method to make switching between http and > https easier. > > 2004-09-08 Donovan Preston > > * Nevow now includes a very simple proof-of-concept WSGI Application > implementation, and can be used with no Twisted dependency. Nevow can > also be used to write CGIs, either using a simple CGI WSGI gateway > (which supports URL traversal), or by using Page.renderString (which does not). > > * Two new context interfaces, ICurrentSegments and IRemainingSegments, > replace the need to examine the Request prepath and postpath attributes > directly. > > * ISerializable is deprecated, and has been replaced with a simple > Flattener registry. nevow.flat.registerFlattener and > nevow.flat.getFlattener have been added to support this. > > 2004-09-06 Donovan Preston > > * BACKWARDS INCOMPATIBLE CHANGE. Page.configurable_ *always* returns > self, and a new Page.configurable_original *always* returns > self.original. If you were relying on Page.configurable_'s > introspection behavior and are now getting errors about adapting > to IConfigurable, change your renderForms() calls to: > > renderForms('original') > > This causes Page.configurable_original to be invoked and > introspected for form rendering. > > 2004-08-23 Donovan Preston > > * LivePage uses a simpler implementation strategy which requires > the browser to make one request per output event. As a result, > LivePage now works on Mozilla, Safari, and Internet Explorer Windows. > > 2004-08-05 Donovan Preston > > * Implemented support for IFoo(ctx) synonym syntax. It does the > same thing as ctx.locate(IFoo) > > * Removed Resource Generators, a feature of NevowSite that nobody > used and wasn't really useful. > > * Changed all inevow.IResource apis to take a Context object > where they used to take the request. Remembering objects in > PageContexts is now much easier, and fewer hacks are required to > build the context chain. The context chain now looks like: > > SiteContext->RequestContext->PageContext(s)->WovenContext(s) > > 2004-7-28 Donovan Preston > > * Parameterize data_* methods in the same way as render_* methods. > Patch by k3mper. > > For example,
will cause > data_foo(self, bar, baz) to be called with the strings "bar" and > "baz". This data method should return a callable taking ctx, data. > The return value of this callable will be remembered as IData at > this point in the context stack. > > * Added list-slicing support to ListContainer. You may now use > list slicing syntax in a data directive in addition to a simple > index. For example: > > def data_aList(self, ctx, data): > return ["Buckle", "My", "Shoe"] > >
> >
> > Will render as
My
> > 2004-7-20 Matt Goodall > > * Modified sax loader to retain doctypes, comments and xmlns attributes. > It's now possible to build XHTML valid pages :). > > xmlns attributes are always kept but there are options to ignore the doctype > and comment (at the request of foom, not sure why yet). Right now, the default > is to retain doctypes and comments but you can use the ignoreDocType and > ignoreComment args to the xml loaders and flatsax parse functions. This bit > may change. > > * Add a URL -> IResource adapter that performs a HTTP redirect. URLs can then > be returned from locateChild(). > > 2004-06-07 Donovan Preston > > * Added nevow.canvas, an experimental module similar to LivePage > which provides a Python server-side API for drawing arbitrary lines, > curves, and text in the browser. The implementation is socket-based > and asynchronous, so the server can issue drawing commands to the > client at any time. > > The idea is to provide a server-side API to the Python programmer > and shield them from implementation details, but the current > implementation uses a pre-compiled Flash movie (which never changes; > we are not generating Flash bytecodes). An implementation using SVG > or Safari's Canvas (nevow.canvas was written before the Safari Canvas > announcement) would be possible. > > 2004-05-26 Donovan Preston > > * Add URLOverlay.keep, an API which lets you specify which query args > will be carried on from the current page render into the new URL. > > 2004-05-24 Matt Goodall > > * Extracted Fragment from Page. Hopefully, it will make it more obvious > that embedding an object with data_ and render_ methods in a stan tree is > possible without using something as "heavy" as Page which is really meant > to be a web resource. > > 2004-05-23 Donovan Preston > > * Added some useful APIs to LiveEvil for manipulating the client-side > page: > > - flt(stan): Flatten some stan, quoting apostrophes as > as appropriate for embedding in javascript > > - set(what, to): Set the contents of the client-side node > with the id 'what' to the stan 'to'. > > - append(where, what): Append the stan 'what' to the client- > side node with the id 'where' > > - alert(what): Show an alert to the user with the text "what" From richardjones at optushome.com.au Wed Oct 13 06:17:48 2004 From: richardjones at optushome.com.au (Richard Jones) Date: Wed Oct 13 17:17:49 2004 Subject: SC-Track Roundup 0.7.7 - an issue tracking system Message-ID: <200410131417.48977.richardjones@optushome.com.au> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 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.7 is a bug fix release, including: - - ZRoundup's search interface works now (sf bug 994957) - - fixed history display when "ascending" - - removed references to py2.3+ boolean values (sf bug 995682) - - fix static file path normalisation in security check (thanks David Linke) - - less specific messages for login failures (thanks Chris Withers) - - Reject raised against email messages should result in email rejection, not discarding of the message - - mailgw can override the MAIL_DEFAULT_CLASS - - handle Py2.3+ datetime objects as Date specs (sf bug 971300) - - use row locking in MySQL newid() (sf bug 1034211) - - add sanity check for sort and group on same property (sf bug 1033477) - - extend OTK and session table value cols to TEXT (sf bug 1031271) - - fix lookup of REMOTE_USER (sf bug 1002923) - - new Interval props weren't created properly in rdbms - - date.Interval() now accepts an Interval as a spec (sf bug 1041266) - - handle deleted properties in RDBMS history - - apply timezone in correct direction in user input (sf bug 1013097) - - more efficient find() in RDBMS (sf bug 1012781) - - pydotorg-specific change to mailgw to handle bizzaro permissions ;) 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). -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (GNU/Linux) iD8DBQFBbKxsrGisBEHG6TARAvIoAJ9POoqG1554/M+g9Zka0et9xskM5wCfWixy 3+nPm9BRyMwG6KYQ/2KBeLE= =yiUy -----END PGP SIGNATURE----- From pearu at scipy.org Wed Oct 13 15:17:39 2004 From: pearu at scipy.org (Pearu Peterson) Date: Wed Oct 13 17:17:49 2004 Subject: ANN: SciPy 0.3.2 Released Message-ID: Hi, Scipy 0.3.2 has been released and binaries are available from the scipy.org site: http://www.scipy.org Scipy 0.3.2 is a bug fix release of Scipy 0.3 including the following new features: - wxPython 2.5 support - reading/writing dense/sparse matrices in Matrix Market format - iterative solvers, new functions sqrtm, hessenberg - Constrained Optimization BY Linear Approximation - discrete Boltzmann, Planck, Levy distributions - Scipy tests pass now also on 64-bit systems and Mac OSX etc. The complete release notes can be found here: http://www.scipy.org/download/scipy_release_notes_0.3.2.html Best regards, Pearu BTW Scipy is: ------------- Scipy is an open source library of scientific tools for Python. Scipy supplements the popular Numeric module, gathering a variety of high level science and engineering modules together as a single package. Scipy includes modules for graphics and plotting, optimization, integration, special functions, signal and image processing, genetic algorithms, ODE solvers, and others. From me.simon at t-online.de Thu Oct 14 09:17:20 2004 From: me.simon at t-online.de (Simon) Date: Thu Oct 14 23:34:51 2004 Subject: ANN: PyOpenOffice 0.23 released Message-ID: <416E2800.6040503@t-online.de> New since release 0.21: # 0.23 SXW Tables with different column widths now can be mapped to PDF - important for financial reports etc. (have a look at test.sxw). # History and cleanup functions for the temporary files generated by PyOpenOffice. # Reference implementation for usage of PyOpenOffice available on the same page: "Bezirksreiter" (open source software for church administration - sorry, only available in German language) # 0.22 Bugfixes for makeSerialLetters(): Multi:TFA-...-TFE rows do not have to be the last row of this table anymore. # You may now provide sourcefiles that are not in the directory of pyopenoffice.py (in earlier releases PyOpenOffice stopped with an error). # New feature for makeSerialLetters(): provide a preprocessed content.xml to the variable "content" (read the docstrings). Have a look at: http://www.bezirksreiter.de/PyOpenOffice.htm Martin Simon From nas at mems-exchange.org Thu Oct 14 23:15:27 2004 From: nas at mems-exchange.org (Neil Schemenauer) Date: Thu Oct 14 23:34:51 2004 Subject: ANNOUNCE: Quixote version 2.0a1 released Message-ID: <20041014211527.GA13576@mems-exchange.org> Quixote 2.0a1 is now available for download from: http://www.mems-exchange.org/software/quixote/ Note that this release should be considered alpha quality. We have a lot more changes planned before we reach version 2.0. The main purpose of this release is to give people who are interested in Unicode support something to play with. Also note that this version requires Python >= 2.3. Changes in Quixote 2.0a1 ------------------------ * Add support for unicode. The HTTPResponse object now has a set_charset() method. Also, the htmltext and TemplateIO types can contain unicode strings. * Add support to HTTPRequest for multipart/form-data type requests. Enhance MIME parsing so that it doesn't read huge lines into memory. Also implement parsing of application/x-www-form-urlencoded data rather than using the standard cgi.py module. Remove UPLOAD_DIR and UPLOAD_DIR_MODE config options. Uploaded files are now created using the tempfile module. * Use bool objects where appropriate. Prefer using builtin types over using the 'types' module. * Rewrite http_request.parse_cookie() and rename it to parse_cookies(). When generating cookies, escape quote characters that appear in cookie values. * Remove the DEBUG_LOG configuration option. Debugging output now always goes to the error log. * Remove HTTPRequest.dump_html() method and add dump_request to 'util' module. Remove obsolete functions from 'html' module (html_quote(), value_quote(), link() and render_tag()). * Remove form1 library and rename form2 to form. -- Neil Schemenauer nas@mems-exchange.org MEMS and Nano-technology Exchange http://www.mems-exchange.org From nospam at nowhere.com Wed Oct 13 20:53:04 2004 From: nospam at nowhere.com (Greg Copeland) Date: Fri Oct 15 15:46:08 2004 Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Oct 11) References: Message-ID: On Mon, 11 Oct 2004 17:45:07 +0000, Ville Vainio wrote: > Global interpreter lock of CPython and multi-CPU scalability are > a recurrent theme in comp.lang.python. The current concern involves > the upcoming availability and popularity of multicore CPUs. > http://groups.google.com/groups?threadm=6db3f637.0410042045.2171ad5f40posting.google.com This URL appears to be bad. Greg From richardjones at optushome.com.au Fri Oct 15 00:45:17 2004 From: richardjones at optushome.com.au (Richard Jones) Date: Fri Oct 15 15:46:09 2004 Subject: SC-Track Roundup 0.7.8 - an issue tracking system Message-ID: <200410150845.21727.richardjones@optushome.com.au> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 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.8 is a bug fix release, patching a problem in the 0.7.7 release: - - Clean out sessions / otks tables when migrating 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). -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (GNU/Linux) iD8DBQFBbwGBrGisBEHG6TARAi1NAJ46mveznmw2CwM0Esec5MGzd9Z7PwCfXd5a 8Iu1CXyCVdhCjCpXyFI2pxQ= =7EFC -----END PGP SIGNATURE----- From adamsz at gmail.com Fri Oct 15 06:23:09 2004 From: adamsz at gmail.com (Adam Souzis) Date: Fri Oct 15 15:46:09 2004 Subject: ANNOUNCE: Rx4RDF and Rhizome 0.4.1 Message-ID: Rx4RDF is application stack for building RDF-based applications and web sites. Rhizome is a Wiki-like content management and delivery system built on Rx4RDF that brings the Wiki metaphor to building dynamic web sites. What's new? (Since 0.3.0 -- I never got around to announcing 0.4.0.) 0.4.0: Rhizome gains full-text indexing, browsing and grouping by keyword, summary views, better support for RDF/XML, diffing in revisions view, and several usability enhancements. Raccoon gets several improvements to performance, security, and error handling. RxML and ZML syntax has been made more user-friendly with simpler syntax and better documentation. 0.4.1: RxPath adds support for RDFLib, if installed. Throughout all sub-systems: get non-ASCII content working. In addition, there have several other enhancements, see http://rx4rdf.liminalzone.org/changelog.txt for more details. More Info: * Rx4RDF is a set of technologies designed to make RDF more accessible and easier to use. It includes: ** RxPath provides a deterministic mapping between the RDF abstract syntax to the XPath data model, allowing you to query, transform and update a RDF model with languages syntactically indentical to XPath, XSLT and XUpdate (dubbed RxPath, RxSLT, and RxUpdate respectively). ** ZML is a Wiki-like text formatting language that lets you write arbitrary XML or HTML (using Python-esque indentation rules), enabling you to author XML documents with (nearly) the same ease as a Wiki entry. ** RxML is an alternative XML serialization for RDF that is designed for easy authoring in ZML, allowing novices to author and edit RDF metadata. * Raccoon is a simple application server that uses an RDF model for its data store, roughly analogous to RDF as Apache Cocoon is to XML. Raccoon uses RxPath to translate arbitrary requests (currently HTTP, XML-RPC and command line arguments) to RDF resources, each of which can be associated with RxSLT and RxUpdate stylesheets. * Rhizome is a Wiki-like content management and delivery system built on Raccoon that takes the concept of the Wiki to the next level: everything is editable, not just content but its meta-data and behavior, even the structure of the site itself. Furthermore, Wiki entries are abstract globally unique RDF resources that can have any kind of content and whose presentation is contextual. Homepage: http://rx4rdf.liminalzone.org/ Download: http://sourceforge.net/project/showfiles.php?group_id=85676 -- adam (asouzis at user.sf.net) From vinay_sajip at yahoo.co.uk Fri Oct 15 10:30:51 2004 From: vinay_sajip at yahoo.co.uk (Vinay Sajip) Date: Fri Oct 15 15:46:10 2004 Subject: ANN: Logging Package v0.4.9.5 released Message-ID: <2e37dc1.0410150030.244f5b56@posting.google.com> A new version of the Python logging package has been released. If you are using version 2.3 of later of Python, this release will not mean much to you - it is the same as recent checkins into Python CVS. However, this release fixes 1.5.2 compatibility bugs in the last independent release (0.4.9.4), and may be of interest to people using Python 1.5.2. What Does It Do? ================ The logging package offers the ability for any Python program to log events which occur during program execution. It's typically used to provide application diagnostics, warnings and error messages. In addition to capturing "what happened", "where it happened", "when it happened", "how important it is" and event specific data, you can configure, without changing the application source code, both the verbosity of logging and the routing of events to different destinations such as console, disk files, sockets, email addresses, Web servers, SOAP servers etc. etc. You can even change the configuration of a running program without stopping and restarting it! You can use the logging package in exception handlers, and it will include traceback information in the log. It's thread-safe, and very easy to use - just "import logging" and log away! Classes provided include: Logger - used to log messages for a particular area of an application. You can instantiate these wherever you want, there's no need to pass references to them around your application. You can log events based on importance levels of DEBUG (least important), INFO, WARN, ERROR, and CRITICAL (most important). You can define your own levels if the default levels don't meet your requirements. Handler - used to route events to particular destinations. Handlers included are: StreamHandler (for generalized streams, including console) FileHandler (for disk files - including log file rotation with size limits for log files) SocketHandler (for sending events to a TCP socket) DatagramHandler (for sending events to a UDP socket - faster, but less reliable than TCP) SMTPHandler (send events to arbitrary email addresses) HTTPHandler (send events to Web servers) SysLogHandler (send events to Unix syslog) MemoryHandler (batch up events and process them several at a time) NTEventLogHandler (send events to Windows NT event logs) There are also examples of XMLHandler and SOAPHandler in the distribution. Formatter - used to format events as text strings. Flexible "msg % arg_tuple" formatting is the basis for formatting, with flexible date/time formatting including ISO8601 and any strftime-based formats. Filter - used when filtering based on importance (DEBUG/INFO/WARNING/ERROR/CRITICAL) is not sufficient. The distribution includes examples of filters based on class matching, regular expression matching, value matching, and logger matching. In the unlikely event that you're daunted by all the apparent complexity, fear not. The package offers a simple function-based interface to allow very simple, almost casual use of the underlying features. In addition to the core logging functionality, you get the ability to configure logging using a ConfigParser-based text file format, a Tkinter-based GUI configurator which creates configuration files for you, and a simple network-based event receiver which receives events on TCP, UDP, HTTP and SOAP ports. This is suitable for testing and might perhaps serve as a model for your own event receivers. Also included are over 20 test scripts which serve both as test harnesses and examples of how to use the logging package. You can get more information from http://www.red-dove.com/python_logging.html There are "download" and "recent changes" links at the top of that page. API documentation is available at http://www.red-dove.com/logging/index.html As always, your feedback is most welcome (especially bug reports, patches and suggestions for improvement). Enjoy! Cheers Vinay Sajip Red Dove Consultants Ltd. Changes since the last independent release: =========================================== Removed 1.5.2 incompatibility involving *=, += From webmaster at keyphrene.com Sat Oct 16 14:48:54 2004 From: webmaster at keyphrene.com (webmaster@keyphrene.com) Date: Mon Oct 18 15:22:03 2004 Subject: ANN: Naja 1.0.9 is now available Message-ID: <4171186b$0$29486$636a15ce@news.free.fr> Naja is a download manager and a website grabber written in Python/wxPython.You can add some plugins (newsreader, FTP client,WebDAV client) and take control of your downloads from your office. Naja supports proxy(HTTP, HTTPS, FTP, SOCKS v4a, SOCKS v5), 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 From bac at OCF.Berkeley.EDU Sun Oct 17 04:27:07 2004 From: bac at OCF.Berkeley.EDU (Brett C) Date: Mon Oct 18 15:22:04 2004 Subject: python-dev Summary for 2004-09-16 through 2004-09-30 Message-ID: <4171D87B.2000306@ocf.berkeley.edu> python-dev Summary for 2004-09-16 through 2004-09-30 ++++++++++++++++++++++++++++++++++++++++++++++++++++ This is a summary of traffic on the `python-dev mailing list`_ from September 16, 2004 through September 30, 2004. It is intended to inform the wider Python community of on-going developments on the list. To comment on anything mentioned here, just post to `comp.lang.python`_ (or email python-list@python.org which is a gateway to the newsgroup) with a subject line mentioning what you are discussing. All python-dev members are interested in seeing ideas discussed by the community, so don't hesitate to take a stance on something. And if all of this really interests you then get involved and join `python-dev`_! This is the forty-ninth summary written by Brett Cannon (Wow, my thesis gives an entire .5% speed-up on pystone at the moment; ain't that grand...). To contact me, please send email to brett at python.org ; I do not have the time to keep up on comp.lang.python and thus do not always catch follow-ups posted there. All summaries are archived at http://www.python.org/dev/summary/ . Please note that this summary is written using reStructuredText_ which can be found at http://docutils.sf.net/rst.html . Any unfamiliar punctuation is probably markup for reST_ (otherwise it is probably regular expression syntax or a typo =); you can safely ignore it, although I suggest learning reST; it's simple and is accepted for `PEP markup`_ and gives some perks for the HTML output. Also, because of the wonders of programs that like to reformat text, I cannot guarantee you will be able to run the text version of this summary through Docutils_ as-is unless it is from the `original text file`_. .. _PEP Markup: http://www.python.org/peps/pep-0012.html The in-development version of the documentation for Python can be found at http://www.python.org/dev/doc/devel/ and should be used when looking up any documentation on new code; otherwise use the current documentation as found at http://docs.python.org/ . PEPs (Python Enhancement Proposals) are located at http://www.python.org/peps/ . To view files in the Python CVS online, go to http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/python/ . Reported bugs and suggested patches can be found at the SourceForge_ project page. The `Python Software Foundation`_ is the non-profit organization that holds the intellectual property for Python. It also tries to forward the development and use of Python. But the PSF_ cannot do this without donations. You can make a donation at http://python.org/psf/donations.html . Every penny helps so even a small donation (you can donate through PayPal or by check) helps. .. _python-dev: http://www.python.org/dev/ .. _SourceForge: http://sourceforge.net/tracker/?group_id=5470 .. _python-dev mailing list: http://mail.python.org/mailman/listinfo/python-dev .. _comp.lang.python: http://groups.google.com/groups?q=comp.lang.python .. _Docutils: http://docutils.sf.net/ .. _reST: .. _reStructuredText: http://docutils.sf.net/rst.html .. _PSF: .. _Python Software Foundation: http://python.org/psf/ .. contents:: .. _last summary: http://www.python.org/dev/summary/2004-09-01_2004-09-15.html .. _original text file: http://www.python.org/dev/summary/2004-09-16_2004-09-30.ht ===================== Summary Announcements ===================== Wow. This must have been the easiest summary I have ever done. Why can't they all be like this? I didn't even skip that much! This summary also marks the first instance of having a contributing writer (ignoring the time when Raymond Hettinger was guest writer and wrote the whole summary himself). So thanks to Michael Chermside for writing up those summaries. And this is open to anyone, so if you feel that one of the skipped threads is worth summarizing and you catch it on the draft I send out of the Summary please mail them to me and it will probably get included. ========= Summaries ========= ------------------------------------------ Assume nothing when mutability is possible ------------------------------------------ Tim Peters discovered a new way to create an infinite list thanks to generator expressions. But what really came out of this whole discussion came about when someone else came up with an example that exposed a bug in list.extend(). The first thing was that "you can't assume anything about a mutable object after potentially calling back into Python." Basically you can't assume the state of any mutable object was not changed if you execute Python code from C. While it might seem handy to store state while in a loop for instance, you can't count on things not changing by the time you get control back so you just have to do it the hard way and get state all over again. Second was that you need to be careful when dealing with iterators. If you mutate an iterator while iterating you don't have a guarantee it won't explode in your face. Unless you explicitly support it, document it, and take care to protect against it then just don't assume you can mutate an iterator while using it. Contributing threads: - `A cute new way to get an infinite loop `__ - `More data points `__ ----------------------------- The fewer licenses the better ----------------------------- The idea of copying some code from OpenSSH_ for better pty handling was proposed. This was frowned upon since that becomes one more legal issue to keep track of. Minimizing the licenses that Python must keep track of and make sure to comply with, no matter how friendly, is a good thing. .. _OpenSSH: http://www.openssh.org/ Contributing threads: - `using openssh's pty code `__ ----------------------------------------------------------------------- Trying to deal with the exception hierarchy in a backwards-friendly way ----------------------------------------------------------------------- Nick Coghlan came up with the idea of having a tuple that contained all of the exceptions you normally would not want to catch in a blanket 'except' statement; KeyboardInterrupt, MemoryError, SystemExit, etc.). This tuple was proposed to live in sys.special_exceptions with the intended usage of:: try: pass # stuff... except sys.special_exceptions: raise # exceptions that you would not want to catch should keep propogating up the call chain except: pass # if you reach here the exception should not be a *huge* deal Obviously the best solution is to just clean up the exception hierarchy, but that breaks backwards-compatibility. But this idea seemed to lose steam. Contributing threads: - `Proposing a sys.special_exceptions tuple `__ -------------- Built on beer! -------------- by Michael Chermside In this short thread Guido admits that Python *is* really built on beer: "...it's true! During the early days, when hacking on Python, I often lived on stroopwafels and beer." Contributing threads: - `built on beer? `__ ----------------------------------- Docs still available in gzip format ----------------------------------- by Michael Chermside Fred Drake suggested that we stop providing the Python documentation in gzip format. We offered the zip and bzip2 formats which have unique advantages (bzip2 compresses better and zip has a directory built in so individual files can be extracted) over gzip and he wanted to reduce the number of different formats offered. However, there was much dissention, so the final decision was to retain the format. Contributing threads: - `Planning to drop gzip compression for future releases. `__ --------------------------------------------------------- Making running stdlib modules as scripts that much easier --------------------------------------------------------- Nick Coghlan contributed a patch for a new command-line option, ``-m``, that will search sys.path for a module of that name and execute it as a ``__main__``. This can be really handy for things such as checking the docstrings of a module (``python -m pydoc heapq``) and such. Currently, though, it only for top-level modules in sys.path and thus ignores packages. If you want that functionality there is a recipe by Nick on the Python Cookbook at http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/307772 . There is also discussions going on python-dev about how to possibly add this in the future. Contributing threads: - `Running a module as a script `__ =============== Skipped Threads =============== - Decimal, copyright and license - Noam's open regex requests - Socket/Asyncore bug needs attention - open('/dev/null').read() -> MemoryError - Finding the module from PyTypeObject? - Odd compile errors for bad genexps From anthony at python.org Sun Oct 17 16:26:24 2004 From: anthony at python.org (Anthony Baxter) Date: Mon Oct 18 15:22:04 2004 Subject: RELEASED Python 2.4, beta 1 Message-ID: <41728110.9020605@python.org> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On behalf of the Python development team and the Python community, I'm happy to announce the first beta of Python 2.4. Python 2.4b1 is an beta release. We'd greatly appreciate it if you could download it, kick the tires and let us know of any problems you find, but it is probably not suitable for production usage. ~ http://www.python.org/2.4 Notable changes in beta1 include a new subprocess module to provide a more convenient interface to spawning processes and a new command line argument -m modulename to run a module from the library. See either the highlights, the What's New in Python 2.4, or the detailed NEWS file -- all available from the Python 2.4 webpage. This is the first beta release of Python 2.4. Python 2.4 is now in the beta part of the release cycle - there should be few or no new features, merely bug fixes. There will be at least one more beta in a couple of weeks, followed by a release candidate and then the final release. Please log any problems you have with this release in the SourceForge bug tracker (noting that you're using 2.4b1): ~ http://sourceforge.net/bugs/?group_id=5470 Enjoy the new release, Anthony Anthony Baxter anthony@python.org Python Release Manager (on behalf of the entire python-dev team) -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.6 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iD8DBQFBcoEMDt3F8mpFyBYRAhJhAKCCclb5ytuljQIGvIz9dIV2LmL0KQCgl5DX 357fPses//NSjyK+7B10YPg= =lzWC -----END PGP SIGNATURE----- From riccardo_cut-me at cut.me.sideralis.net Mon Oct 18 01:01:42 2004 From: riccardo_cut-me at cut.me.sideralis.net (Riccardo Galli) Date: Mon Oct 18 15:22:05 2004 Subject: ANN: curses-extra 0.3 Message-ID: curses-extra offers some widgets written using curses module. Version 0.3 is now available for download from http://www.sideralis.net/index.php?action=4&pjid=20 Changes in curses_extra 0.3 --------------------------- added Label widget added TextEntry widget added TextView widget added documentation, browsable with pydoc or epydoc examples improved packaged with distutils bugfixes =========================== The following classes and functions are present in the module Widget Button ButtonBar #bar of buttons (automatically manage arrow keys) CheckButton RadioButton CheckButtonList #list of checkbutton (as ButtonBar) ComboBox Label Menu MenuBar TextEntry TextView add_shortcut(pattern,action) #check combinations of keys, eg H use_shortcut(c,obj) #check if character is a shortcut, and use it # in case #NOTE: widgets auto-check for the shortcuts chgat(win[,y,x],count,attr,color) #change attributes of an area -- -=Riccardo Galli=- _,e. s~ `` ~@. ideralis Programs . ol `**~ http://www.sideralis.net From mike_mp at zzzcomputing.com Mon Oct 18 22:49:10 2004 From: mike_mp at zzzcomputing.com (mike bayer) Date: Mon Oct 18 23:16:07 2004 Subject: Myghty 0.94 Released Message-ID: <22817.66.192.34.8.1098132550.squirrel@66.192.34.8> Myghty 0.94 Released Myghty is an all-new Python Server Page (PSP) templating system designed for large-scale, high availablity websites and applications. Written and optimized from the ground up to complement mod_python, as well as standalone, CGI and application embedded environments, its conceptual design and syntax is derived from HTML::Mason, the default web application platform for the mod_perl world. It is designed with both the migrating Mason user and the original Python user in mind, supporting the full featureset of Mason, including components, methods, inheritance, autohandlers, dhandlers, caching, friendly exception handling, etc. as well as enhancements including full Python whitespace support, component- specific autoflush, cache and whitespace trim flags, thread-global code sections, and a streamlined design taking full advantage of Python's unique architectural features. Compares favorably to other Python templating solutions such as Cheetah and Spyce. The component cache API is released as of version 0.94 and includes in- memory and dbm-file based cache implementations, with support for new implementations configurable at runtime. The caching API allows fine- grained caching control for component output as well as user defined data structures, synchronized and shared among multiple threads, processes, or both. Myghty has gained a small userbase in just its first two months which is growing at a fast pace, receiving favorable reviews for its ease of use, 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_mp@zzzcomputing.com

Myghty 0.94 - A high performance Python Server Page templating system derived from HTML::Mason. (18-Oct-04) From gvanrossum at gmail.com Mon Oct 18 23:09:21 2004 From: gvanrossum at gmail.com (Guido van Rossum) Date: Mon Oct 18 23:16:20 2004 Subject: Cameron Laird Wins Frank Willison Award Message-ID: Better late than never: http://press.oreilly.com/pub/pr/1237 -- --Guido van Rossum (home page: http://www.python.org/~guido/) From python-url at phaseit.net Mon Oct 18 20:09:49 2004 From: python-url at phaseit.net (Ville Vainio) Date: Mon Oct 18 23:16:30 2004 Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Oct 18) Message-ID: QOTW: "Other than the parts about 'SADISTS and PERVERTS', what portion was on topic?" - Peter Hansen, commenting a spam posting http://groups.google.com/groups?frame=left&th=50285732810cb768 "Python makes me very lazy. Writing a report in LaTeX today, it was actually easier for me to make up a syntax for tagging math symbols (put into comments in the LaTeX source), and extract those and build a List Of Symbols with a python preprocessor before texification, rather than find (and figure out how to use) the correct LaTeX package for that." - Caleb Hattingh http://groups.google.com/groups?frame=left&th=175f4d840fbb6df2 The Boo thread inspires Doug Holton to muse about the future possibilites of the project, while 'Neuruss' relays news about the status of the highly anticipated Starkiller project. http://groups.google.com/groups?threadm=V8SdnRfq9bLtQvfcRVn-vg%40comcast.com http://groups.google.com/groups?threadm=278de0e.0410111836.3a5314e0%40posting.google.com Daniel Bickett learns how to use the Windows XP balloon tips from Python. Once again, ctypes is just the ticket. http://groups.google.com/groups?threadm=mailman.4712.1097513406.5135.python-list%40python.org http://starship.python.net/crew/theller/ctypes/ Blow your technical mind *and* stamp your passport: see Lithuania in autumn, on the occasion of the next PyPy sprint. http://groups.google.com/groups?th=4ce1fbd505bad21f Mike Mussman needs to pass a live socket to another process. Apart from the well-known posix fork()-based solution, we learn that there is actually a relatively clean way to do it in Windows as well. http://groups.google.com/groups?threadm=5d00592f.0410110923.2bb2b1ea%40posting.google.com Irmen de Jong announces a new release of the Snakelets web programming framework, and gets in an interesting discussion about implementing the new, official WSGI API for it and the benefits it would provide. http://groups.google.com/groups?threadm=416ae4b9%240%2478749%24e4fe514c%40news.xs4all.nl http://groups.google.com/groups?threadm=mailman.4769.1097609657.5135.python-list%40python.org Denis Wendum learns that the reverse version of the comparison operator __lt__ is __gt__, not __rlt__, but the discussion quickly turns towards the differences in attribute access between classic and new style classes. http://groups.google.com/groups?threadm=416BD8E7.9885FEBD%40pasdepourriels.edf.fr Nick needs to know how to change the desktop background in Windows http://groups.google.com/groups?threadm=416c8404%241_3%40alt.athenanews.com Mabororshi wonders about rewriting the Linux kernel in python. Posters question the virtues of such an endeavour, especially that of a pure python approach, but writing an OS kernel in Python not only doesn't seem so far-fetched - it's been done, as can be seen from the thread. http://groups.google.com/groups?threadm=10mrba51r9dql4f%40corp.supernews.com IPython, besides changing the license to BSD, will be going through a major cleanup in the immediate future. Fernando Perez, the author of the software, wouldn't mind code contributions. http://groups.google.com/groups?selm=mailman.4814.1097652544.5135.python-list%40python.org John finds out that at this time, CORBA is probably the optimal way to get COM-like functionality for Python in Linux. http://groups.google.com/groups?threadm=ba129ce7.0410111812.52f88cac%40posting.google.com Python 2.4, beta 1 is out. Especially notable with this release is the inclusion of the new "subprocess" module. http://www.python.org/2.4/ http://www.python.org/peps/pep-0324.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. 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 Brett Cannon continues the marvelous tradition established by Andrew Kuchling and Michael Hudson 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@pythonjournal.com and editor@pythonjournal.cognizor.com welcome submission of material that helps people's understanding of Python use, and offer Web presentation of your work. *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/ 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 andrewm at object-craft.com.au Tue Oct 19 15:51:42 2004 From: andrewm at object-craft.com.au (Andrew McNamara) Date: Wed Oct 20 15:59:36 2004 Subject: Albatross 1.20 released Message-ID: <20041019135142.0B2F23C24C@coffee.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 3000 lines of Python (according to pycount) you get the following: * An extensible HTML templating system similar to DTML including tags for: - Conditional processing. - Macro definition and expansion. - Sequence iteration and pagination. - Tree browsing. - Lookup tables to translate Python values to arbitrary template text. * Application classes which offer the following features: - Optional server side or browser side sessions. - The ability to place Python code for each page in a dynamically loaded module, or to place all page processing code in a single mainline. * The ability to deploy applications 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 160 pages of documentation. HTML, PDF and PostScript formatted documentation is available from the toolkit homepage. The toolkit homepage: http://www.object-craft.com.au/projects/albatross/ The Albatross mailing list subscription and archives: http://object-craft.com.au/cgi-bin/mailman/listinfo/albatross-users CHANGES SINCE 1.1 There have been many improvements and bug fixes since release 1.1. The following page describes the changes in detail. http://www.object-craft.com.au/projects/albatross/albatross/rel-1.20.html Highlights include: * A new BranchingSessionContext application context class, that provides better syncronisation between browser state and application state when the application state is stored server-side. * Improved adapters for the different deployment modes (CGI, FastCGI, mod_python, standalone, etc). Application status codes (such as HTTP_INTERNAL_SERVER_ERROR) are now returned to the browser. * The page module loader in PageModuleMixin has been reimplemented so that it does not pollute sys.modules. Page modules are now loaded into a synthetic module's namespace, rather than the global module namespace. This will break code that defined classes in page modules and placed instances of those classes into the session. * Multi-instance response headers are now supported (so, for example, more than one Cookie can be set. The ResponseMixin.get_header() method now returns a list rather than a single string. ctx.req_equals(name) now checks for name.x if name is not found. This makes using image maps as buttons easier. * Under some circumstances, redirect_url() would redirect to incorrect or invalid URLs (for example, an https app would redirect to http) - the URI parsing has been refactored, and this bug has been fixed. Tests were also added for the refactored URI parsing. * Several cookie handling bugs were fixed. -- Andrew McNamara, Senior Developer, Object Craft http://www.object-craft.com.au/ From briandorsey at gmail.com Wed Oct 20 09:46:11 2004 From: briandorsey at gmail.com (Brian Dorsey) Date: Wed Oct 20 15:59:36 2004 Subject: REMINDER: NorthWest(USA) Python Sprint #2 - October 23,24 In-Reply-To: <20041004235357.GA18413@dorseys.org> References: <20041004235357.GA18413@dorseys.org> Message-ID: <66e877b704102000461c5b11ce@mail.gmail.com> This is just a quick reminder that the NW python sprint is this weekend! See http://seapig.org/NorthwestPythonSprint for all the details. Take care, -Brian PS - apologies to PORPIG and VANPYZ for this being the first announcement, I wasn't able to get subscribed to either list a few weeks ago. :( =================================================== SeaPIG (the Seattle Python Interest Group) is excited to announce the NORTHWEST PYTHON SPRINT #2 October 23-24, 2004 Bellevue, Washington, USA http://seapig.org/NorthwestPythonSprint The cost is FREE, thanks to our host Construx Software. There will be a large, comfortable room seating 50+ people at tables, wireless and wired Internet access, and a projector for demonstrations. We have the room reserved for Saturday and Sunday, but feel free to drop in whenever you can make it. Kevin Altis will be giving a short intro to PythonCard (http://pythoncard.sourceforge.net/) and coaching a sprint. >From his blog: I'll be giving a presentation on PythonCard Saturday morning as well as helping people work on their own PythonCard projects, fix bugs, and make additions to the framework and tools. Which projects we tackle will depend on how many people show up and what interests them the most. (http://altis.pycs.net/2004/09/30.html) We have plenty of space, so feel free to sign up to coach other projects or just bring your own and look for a partner. What is a sprint? A sprint is a group of people who gather for a day or more to work on a common software project. The members choose individual tasks and usually work solo or in pairs in the same room, then get together periodically to compare notes. We'll follow the model that has worked successfully at the past several Python conferences: several groups working on different projects in the same room. Past sprints have done development work on the Python core, Twisted, Docutils, Webware, Zope, Chandler, etc. Most projects have a variety of tasks that need to be done -- coding modules, designing test suites, squashing bugs, writing user documentation and developer documentation, brainstorming design strategies, planning promotional activities, etc -- so there's something for every skill level. You'll need to bring a laptop, or if you don't have one you can pair with somebody who does. If you'd like to coach a sprint, sign up to attend, propose a lightning talk or demonstration, or just get more information, see our wiki page: http://seapig.org/NorthwestPythonSprint or contact: seattle-python@lists.seapig.org or Brian Dorsey , 206-619-6975 Mike Orr , 206-240-4250 Construx is located at 11820 Northup Way #E200, Bellevue WA 98005. It's eight miles from downtown Seattle; twenty from Sea-Tac Airport. (http://seapig.org/ConstruxMeetingLocation) Carpools and homestays are available if you contact us in advance. From trentm at ActiveState.com Thu Oct 21 01:44:28 2004 From: trentm at ActiveState.com (Trent Mick) Date: Thu Oct 21 04:36:54 2004 Subject: ANN: ActivePython 2.4b1 is available Message-ID: <4176F85C.4050600@activestate.com> We are pleased to announce that ActivePython 2.4b1 is now available from: http://www.ActiveState.com/Products/ActivePython This is a beta release matching the recently tagged core Python 2.4b1. Builds for Windows, Linux and Solaris are available. We would welcome any and all feedback to: ActivePython-feedback@ActiveState.com Please file bugs against ActivePython at: http://bugs.ActiveState.com/ActivePython What is ActivePython? --------------------- ActivePython is ActiveState's quality-assured binary build of Python. Builds for Windows, Linux and Solaris and made freely available. In addition to the Python core, ActivePython includes commonly used external modules such as expat for XML processing, zlib and bzip2 for data compression, the bsddb database library, Tcl/Tk 8.4.4 (with Tix); the PyWin32 suite of Windows tools developed by Mark Hammond, including the Pythonwin IDE, bindings to the Win32 API and Windows COM; and more. ActivePython also includes a wealth of Python documentation, including: - the core Python docs; - Andrew Kuchling's "What's New in Python" series; - the Non-Programmer's Tutorial for Python; - Mark Pilgrim's excellent "Dive into Python"; and - a snapshot of the Python FAQs, HOWTOs and PEPs. An online version of the docs can be found here: http://aspn.activestate.com/ASPN/docs/ActivePython/2.4/welcome.html Thanks, and enjoy! Trent -- Trent Mick trentm@activestate.com From jbors at mail.ru Thu Oct 21 08:52:09 2004 From: jbors at mail.ru (Dmitry Borisov) Date: Fri Oct 22 15:55:03 2004 Subject: ANN: PyCar-1.2.3.0-pre1 released Message-ID: <012d01c4b73a$7d6a2130$0200a8c0@amr.corp.intel.com> Hi everyone, Just wanted to let you know that PyCar-1.2.3.0-pre1 is available for download( http://pymedia.org/pycar ) At this time only Windows binary, but I plan to release Linux ISO in 2 weeks with even more features https://sourceforge.net/project/shownotes.php?release_id=276836 What is it ? ------------------ PyCar is a car multimedia center written fully in Python( even video player ), using PyMedia package. It features the following: - Plays mp3, mp2, ogg, ac3, wma - Plays audio disks - Plays avi, VideoCD, SVCD and DVDs - Shows media information for all supported formats - Displays album pictures( cover art ) - Playlists - Interacts with LCD - local CDDB support for Audio disks ( take a copy from the http://freecddb.org ) - i18n compatible, russian language translation included - Adjustable cache size for skip free playback while on the road - Touch screen friendly - Skinnable Installation ----------- Just unzip pycar-xxxx.zip to any location you want and run configure.exe first to point to the right location where your media files are. Then run pycar.exe. See pics and more info at: http://pymedia.org/pycar Windows binary available: https://sourceforge.net/project/shownotes.php?release_id=276836 Enjoy ! Dmitry/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-announce-list/attachments/20041020/31491569/attachment.htm From mike at hobbshouse.org Thu Oct 21 23:46:50 2004 From: mike at hobbshouse.org (Michael Hobbs) Date: Fri Oct 22 15:55:03 2004 Subject: ANN: Candygram 1.0 final released. (Python + Erlang) Message-ID: <10ngbiaqt0h0n2c@corp.supernews.com> Announcing the final release of Candygram 1.0. There are no changes from the beta 2 release. Candygram is a Python implementation of Erlang concurrency primitives. Erlang is widely respected for its elegant built-in facilities for concurrent programming. This package attempts to emulate those facilities as closely as possible in Python. With Candygram, developers can send and receive messages between threads using semantics nearly identical to those in the Erlang language. More information about Candygram can be found at http://candygram.sourceforge.net From theller at python.net Fri Oct 22 21:08:05 2004 From: theller at python.net (Thomas Heller) Date: Fri Oct 22 22:33:33 2004 Subject: py2exe 0.5.4 released Message-ID: **py2exe 0.5.4** released =================================== py2exe is a Python distutils extension which converts python scripts into executable windows programs, able to run without requiring a python installation. Console and Windows (GUI) applications, windows NT services, exe and dll COM servers are supported. Changes in this release: * The new ``--xref`` or ``-x`` command line switch instructs py2exe to create a python module cross reference and display it in the webbrowser. This allows to answer question why a certain module has been included, or if you can exlude a certain module and it's dependencies. This has *not* been extensively tested, but it's a start. Also, the html page includes links which will even allow to view the source code of a module in the browser, for easy inspection. A sample cross reference can be found here, note that the links to open the .py files will of course not work over the internet: http://starship.python.net/crew/theller/py2exe/sample_xref.html * Mark Hammond fixed some thread state issues with dll com servers. * Mark Hammond added support for standalone ISAPI dlls. * py2exe now can handle python modules with the '.pyw' extension. * It is now allowed to specify 'zipfile=None' in the setup script, in this case the zip archive containing the python modules will be appended to the exe file. Homepage: Download from the usual location: Enjoy, Thomas From amk at amk.ca Sun Oct 24 01:32:39 2004 From: amk at amk.ca (A.M. Kuchling) Date: Mon Oct 25 15:35:39 2004 Subject: PyCon 2005: Call for Proposals Message-ID: <20041023233239.GA625@rogue.amk.ca> Want to share your expertise? PyCon DC 2005 is looking for proposals to fill the formal presentation tracks. Important Dates ===================== ========================== =================== Submission deadline Dec. 31, 2004 Acceptance deadline Jan. 15, 2005 Electronic copy deadline Feb. 10, 2005 ========================== =================== PyCon Topics ================= Suitable topics for PyCon presentations include, but are not limited to: * Web-based Systems * Databases * Network Programming * Games Programming * Programming Tools * Python Documentation * Packaging Issues * Python in Business * Project Best Practices * The Python Core * Open Source Python Projects * Python Integration * Python in Education * Science and Math Submission Format ======================= Proposals should ideally be 250 to 1000 words long (i.e. one to four pages in manuscript format), containing the following information: * Author name(s) * Contact information * Requested timeslot (thirty or forty-five minutes) * Summary of proposed presentation * Presentation outline ASCII format is preferred (plain or `reST `_), with HTML as a secondary alternative. If you have any queries about submission, or if you would like to discuss the possibility of submitting in a different format or style, please send mail to the conference organizers at `pycon@python.org `_. Submission Mechanics =============================== Use the `PyCon Online Proposal Submission `_ to send us your proposals and ideas. If your paper is accepted, you have the option of including a companion paper along with your presentation. The paper will get published on the PyCon web site. Presentations and papers may be in text (plain or `reST `_), HTML, or PDF; HTML and PDF are preferred. Other Presentations ========================== If you don't want to make a formal presentation, there will be a significant amount of Open Space to allow for informal and spur-of-the-moment presentations for which no formal submission is required. There will also be several Lightning Talk sessions for talks no longer than five minutes. From ian at excess.org Mon Oct 25 00:20:19 2004 From: ian at excess.org (Ian Ward) Date: Mon Oct 25 15:35:39 2004 Subject: ANN: urwid 0.8.0 curses-based UI/widget library - First Public Release Message-ID: <20041024222014.GA1071@badash.excess.org> urwid 0.8.0 - First Public Release ---------------------------------- Urwid is a curses-based UI/widget library. It includes many features useful for console application developers, including: - Fluid interface resizing (xterm window resizing / fbset on Linux console) - Multiple text alignment and wrapping modes built-in - Ability to register user-defined text alignment and wrapping modes - Simple markup for setting text attributes - Powerful list box that handles scrolling between different widget types - List box contents may be managed with a user-defined class - Flexible edit box for editing almost any type of text - Plain HTML screen shots Example Programs: tour.py A list box showing the built-in widget types and modes. fib.py A Fibonacci set viewer that demonstrates a list box with infinite data. edit.py A text editor that starts-up instantly by lazily reading files. It is suitable for editing text files with lines longer than the terminal width. browse.py A directory browser that displays directories in a single tree structure. It reads directories as required and lets you select multiple files. calc.py A calculator program that shows its work. It splits sub-expressions into separate columns for easy editing. Urwid is licensed under the GNU GPL. http://excess.org/urwid/ Ian Ward

urwid 0.8.0 - curses-based UI/widget library with fluid interface resizing. (24-Oct-04) From Sylvain.Thenault at logilab.fr Mon Oct 25 11:54:29 2004 From: Sylvain.Thenault at logilab.fr (Sylvain =?iso-8859-1?Q?Th=E9nault?=) Date: Mon Oct 25 15:35:40 2004 Subject: [ANN] PyLint 0.5 Message-ID: <20041025095429.GB1118@logilab.fr> Hi all, I'm pleased to announce a new PyLint's release. This is a major development release, since PyLint doesn't have anymore to import analyzed modules (well, there are still some cases where modules are imported, but it's not to build the underlying representation of the python source code). This release requires the latest common library release (0.7). Visit our website to download it or to get more information : http//www.logilab.org/projects/pylint Enjoy ! -- Sylvain Th?nault LOGILAB, Paris (France). http://www.logilab.com http://www.logilab.fr http://www.logilab.org From Sylvain.Thenault at logilab.fr Mon Oct 25 12:00:54 2004 From: Sylvain.Thenault at logilab.fr (Sylvain =?iso-8859-1?Q?Th=E9nault?=) Date: Mon Oct 25 15:35:41 2004 Subject: [ANN] Apycot 0.5.2 Message-ID: <20041025100054.GE1118@logilab.fr> Hi there, I'm please to announce a new APyCot release. This is a minor release, mainly existing to follow an API change into the latest PyLint release. If you want to download it or to get some information about Apycot, please visit our web site : http://www.logilab.org/projects/apycot About APyCot: Apycot is an Automated Pythonic Code Tester. Use it to daily run your tests and generate reports about code or document quality. Most options you may look for are already implemented. Enjoy ! -- Sylvain Th?nault LOGILAB, Paris (France). http://www.logilab.com http://www.logilab.fr http://www.logilab.org From tim at zope.com Mon Oct 25 17:13:26 2004 From: tim at zope.com (Tim Peters) Date: Mon Oct 25 17:44:34 2004 Subject: ZODB 3.2.4 (final) released Message-ID: <20041025151326.0D3C73B8038@smtp.zope.com> I'm pleased to announce the release of ZODB 3.2.4 (final). This corresponds to the ZODB (and ZEO) that shipped with Zope 2.7.3 (final). You can download a source tarball or Windows installer from: http://zope.org/Products/ZODB3.2 Note that 3.2.4 incorporates a major change in semantics: it's incorrect to attempt to close a connection when objects from that connection are still in a modified state, and 3.2.4 raises the new ConnectionStateError exception in such cases. 3.2.4 also incorporates a significant ZEO performance fix, and a number of smaller bugfixes. See the news file for details: http://zope.org/Products/ZODB3.2/NEWS Note that ZODB 3.2.4 does not support Zope 2.7.2, because the Zope 2.7.2 publishing subsystem is an example of application code that didn't always finish a transaction before closing connections. ZODB 3.2.4 can be used with Zope 2.7.3. Note that ZODB 3.2.4 does not support Zope X3 or Zope 2.8 (they require ZODB 3.3). From python-url at phaseit.net Tue Oct 26 00:13:56 2004 From: python-url at phaseit.net (Cameron Laird) Date: Tue Oct 26 16:24:54 2004 Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Oct 25) Message-ID: QOTW: "[M]uch of the sample Python code in the world represents relatively good programming practices." -- Tim Roberts http://groups.google.com/groups?selm=pu3mn0hpnqn4shs0cofgfa8i2gu61mb5pd%404ax.com "[C]hoosing a language based on the speed of its implementations is the ultimate _premature_ optimization, of course." -- Alex Martelli http://groups.google.com/groups?selm=1gl6fnk.m1zq7z1fm0nhbN%25aleaxit%40yahoo.com Andreas Kostyrka summarizes the design judgment behind Python's locking. http://groups.google.com/groups?selm=mailman.4377.1097009674.5135.python-list%40python.org Not only has the logging module become an apparent moral imperative, but explaining its ease seems on the same path. Ville Vainio and others do their part. http://groups.google.com/groups?frame=left&th=10bba0a04f732ecf Andrew Clover knows how to deal with expat's limitations in confronting DBCS encodings. You'll want this if you deal with oriental writing systems. http://groups.google.com/groups?frame=left&th=ece30b7ac22a07ca Web production is collaborative. This has consequences. Alex Martelli makes the design ones clear. Max M and others argue the range of applicability of "templating". http://groups.google.com/groups?frame=left&th=e04c0e3a94f5dbea Python can compose functions in single lines, when pushed. http://groups.google.com/groups?frame=left&th=70faaff2eafa600f Rather than fret about schedules, compatibility, and so on, Jeremy Bowers' response to the puzzle of Tile upgrades is simply to use them. http://groups.google.com/groups?frame=left&th=7470b5487e0132f8 Python even connects to the real world. That's the experience, at least, of the folks at Engenuity Corporation and Phaseit on the verge of sponsoring an Agile Control Forum. "Control" here has to do with physical objects--things that move. http://www.engcorp.com/acf/AcfAnnouncement ======================================================================== 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. 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 Brett Cannon continues the marvelous tradition established by Andrew Kuchling and Michael Hudson 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@pythonjournal.com and editor@pythonjournal.cognizor.com welcome submission of material that helps people's understanding of Python use, and offer Web presentation of your work. *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/ 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 ian at excess.org Tue Oct 26 03:50:45 2004 From: ian at excess.org (Ian Ward) Date: Tue Oct 26 16:24:55 2004 Subject: ANN: urwid 0.8.0 - link now works Message-ID: <20041026015043.GA1091@badash.excess.org> The tarball download link is now fixed, and rest assured, brown paper bag is firmly in place. Urwid home page: http://excess.org/urwid/ Tarball: http://excess.org/urwid/urwid-0.8.0.tar.gz Ian Ward From dvkeeney at gmail.com Tue Oct 26 05:45:57 2004 From: dvkeeney at gmail.com (David Keeney) Date: Tue Oct 26 16:24:55 2004 Subject: SPyRE version 0.5 -> Simple Pythonic Rendering Engine Message-ID: <6e04113a.0410251945.3ae6613@posting.google.com> The "Pitcher's Duel" project has released SPyRE v0.5 (Simple Pythonic Rendering Engine), a conversion of the lightweight rendering engine 'zoe', to use Pygame/SDL rather than GLUT. This release also includes html help files. SPyRE was formerly known as zoePG. Provide pyOpenGL code to draw the model, and the SPyRE engine will display the model in an interface that provides zooming, panning and rotation of camera position using mouse and keyboard. The project includes demos such as a fountain of sparks, a swarming behavior model, a random walk example, a whirlpool effect using gravity and drag, and an example of chaos theory, and a lighted shaded forest scene. The project page is at http://pduel.sourceforge.net/spyre To use SPyRE, you also need to have installed Python, pyOpenGL, and PyGame. David Keeney From walter at livinglogic.de Tue Oct 26 19:32:58 2004 From: walter at livinglogic.de (=?ISO-8859-15?Q?Walter_D=F6rwald?=) Date: Wed Oct 27 16:37:08 2004 Subject: XIST 2.6 released Message-ID: <1098811476.713737@homer.tmt.de> XIST 2.6 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.6? ========================== * A new API named XFind has been added for iterating through XML trees. XFind expressions look somewhat like XPath expressions but are pure Python expressions. For example finding all images inside links in an HTML page can be done like this: from ll.xist import parsers from ll.xist.ns import html node = parsers.parseURL("http://www.python.org/", tidy=True) for img in node//html.a/html.img: print img["src"] * ToNode now tries iterating through the value passed in, so it's now possible to pass iterators and generators (and generator expressions in Python 2.4) to Frag and Element constructors. * Parsing broken HTML is now done with the HTML parser from libxml2. * The parser now has the option to ignore illegal elements, attributes, processing instructions and entities. * A new class ll.xist.xsc.NSPool has been added. An NSPool contains a pool of namespaces from which the parser selects the appropriate namespace once an xmlns attribute is encountered. * Other minor changes and updates. 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 frank at niessink.com Tue Oct 26 22:34:45 2004 From: frank at niessink.com (Frank Niessink) Date: Wed Oct 27 16:37:08 2004 Subject: [ANN] Release 0.14 of Task Coach - Your friendly task manager Message-ID: I'm happy to announce the release of version 0.14 of 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 uses wxPython. You can download Task Coach from: http://taskcoach.niessink.com. A binary installer is available for Windows XP, in addition to the source distribution. I'm specifically solliciting feedback on: 1) how portable is Task Coach? Can your run it on your platform, and if not, can you help me sort out the problem(s)? And 2) what features would you like to see included? Thanks, Frank From ndmoses at ntlworld.com Wed Oct 27 00:29:56 2004 From: ndmoses at ntlworld.com (Neil Moses) Date: Wed Oct 27 16:37:09 2004 Subject: PyODB version 0.3 released Message-ID: I would like to announce version 0.3 of PyODB a Python unixODBC API binding. This release contains improvements to the connection handling and now supports transaction handling for commit and rollback. PyODB is a Python module and provides a simplified set of bindings to unixODBC (http://www.unixodbc.org) allowing fast and easy development of open database applications. The module supports multiple data source connections with the following connection methods; execute(), fetch(), disconnect(), begin(), commit() and rollback(). The software has been developed on a Linux environment using Python 2.3 and SWIG (http://www.swig.org). The module has been tested on Linux and Solaris platforms using databases PostgreSQL and Informix, but should work on any platform supporting unixODBC and an ODBC database driver. To download the release visit https://sourceforge.net/projects/pyodb Regards, Neil Moses From michael at stroeder.com Wed Oct 27 00:45:43 2004 From: michael at stroeder.com (=?ISO-8859-1?Q?Michael_Str=F6der?=) Date: Wed Oct 27 16:37:10 2004 Subject: ANN: python-ldap-2.0.4 Message-ID: <417ED397.50202@stroeder.com> Find a new pre-release of python-ldap: http://python-ldap.sourceforge.net/ python-ldap provides an object-oriented API to access LDAP directory servers from Python programs. It mainly wraps the OpenLDAP 2.x libs for that purpose. Additionally it contains modules for other LDAP-related stuff (e.g. processing LDIF, LDAPURLs and LDAPv3 schema). ---------------------------------------------------------------- Released 2.0.4 2004-10-27 Changes since 2.0.3: Modules/: * Applied some fixes for 64-bit platforms to LDAPObject.c * Constants ldap.TLS_AVAIL and ldap.SASL_AVAIL will indicate whether python-ldap was built with support for SSL/TLS and/or SASL setup.py and Modules/: * Applied some fixes for building under Win32 From gward at python.net Wed Oct 27 03:29:33 2004 From: gward at python.net (Greg Ward) Date: Wed Oct 27 16:37:11 2004 Subject: ANNOUNCE: Optik 1.5a2 Message-ID: <20041027012933.GA10262@cthulhu.gerg.ca> Optik 1.5 ========= Optik is a powerful, flexible, extensible, easy-to-use command-line parsing library for Python. Using Optik, you can add intelligent, sophisticated handling of command-line options to your scripts with very little overhead. Here's an example of using Optik to add some command-line options to a simple script: from optik import OptionParser [...] parser = OptionParser() parser.add_option("-f", "--file", dest="filename", help="write report to FILE", metavar="FILE") parser.add_option("-q", "--quiet", action="store_false", dest="verbose", default=True, help="don't print status messages to stdout") (options, args) = parser.parse_args() With these few lines of code, users of your script can now do the "usual thing" on the command-line: -f outfile --quiet -qfoutfile --file=outfile -q --quiet --file outfile all of which result in the 'options' object looking like this: options.filename == "outfile" options.verbose == 0 Even niftier, users can run one of -h --help and Optik will print out a brief summary of your script's options: usage: [options] options: -h, --help show this help message and exit -f FILE, --file=FILE write report to FILE -q, --quiet don't print status messages to stdout That's just a taste of the flexibility Optik gives you in parsing your command-line. See the documentation included in the package for details. REQUIREMENTS & INSTALLATION --------------------------- Optik requires Python 2.2 or greater. Installing Optik is easy; just use the standard incantion for installing Python modules: python setup.py install As of Python 2.3, Optik is included in the Python standard library as 'optparse'. Python 2.3 included Optik 1.4.1 plus a few small bug fixes. If you want to use the new features in Optik 1.5 (see CHANGES.txt), you'll need to "import optik" in your source code. Otherwise, you can "import optparse", and your code will work with Python 2.3 and up without additional requirements. AVAILABILITY ------------ The latest version of Optik can be found at http://www.gerg.ca/software/optik/download.html http://optik.sourceforge.net/download.html CHANGES SINCE 1.5a1 ------------------- * Remove the old, broken "ignore" option conflict handler -- was only needed for compatibility with Optik 1.1. * Move documentation into docs/ directory, and write a script (mkpydoc) to automatically convert it to LaTeX for the Python standard library manual. Many documentation improvements. (1.5a2) * SF #997100: attempt to avoid triggering a FutureWarning in __repr__() when using id() with "%x" (1.5a2). * SF #1048725: fix typo in Values.__eq__() introduced in 1.5a1. * Fix test script so it plays nice when being run with other test scripts (as in the Python test suite) (1.5a2). OTHER CHANGES SINCE 1.4.1 ------------------------- * Optik now requires Python 2.2 or later. * Add expansion of default values in help text: the string "%default" in an option's help string is expanded to str() of that option's default value, or "none" if no default value. * SF bug #955889: option default values that happen to be strings are now processed in the same way as values from the command line; this allows generation of nicer help when using custom types. Can be disabled with parser.set_process_default_values(False). * SF bug #960515: don't crash when generating help for callback options that specify 'type', but not 'dest' or 'metavar'. * SF feature #815264: change the default help format for short options that take an argument from e.g. "-oARG" to "-o ARG"; add set_short_opt_delimiter() and set_long_opt_delimiter() methods to HelpFormatter to allow (slight) customization of the formatting. * SF patch #736940: internationalize Optik: all built-in user- targeted literal strings are passed through gettext.gettext(). Also added po/ directory for message catalog and translations, so that Optik-based applications have a single place to go for translations of Optik's built-in messags. Include translations for Danish and German (thanks to Frederik S. Olesen and Martin v. L?wis respectively), and partial translations for French (by me). * SF bug #878453 (Python): respect $COLUMNS environment variable for wrapping help output. * SF feature #964317: allow type objects to specify option types; allow "str" as an alias for "string". * SF feature #988122: expand "%prog" in the 'description' passed to OptionParser, just like in the 'usage' and 'version' strings. (This is *not* done in the 'description' passed to OptionGroup.) * Added HTML-formatted docs to the source distribution (in addition to the reStructuredText source files). * Added three new examples: custom_source.py, custom_type.py, and no_help.py. -- Greg Ward http://www.gerg.ca/ And I wonder ... will Elvis take the place of Jesus in a thousand years? -- Dead Kennedys From graeme at osdc.com.au Thu Oct 28 07:23:43 2004 From: graeme at osdc.com.au (Graeme Cross) Date: Fri Oct 29 16:26:46 2004 Subject: ANN: Earlybird entries are about to close for OSDC Message-ID: <41808261$0$22825$afc38c87@news.optusnet.com.au> G'day folks, This is a quick note to let you know that registrations for the Australian Open Source Developers' Conference are now open. This conference will be run on the 1st - 3rd of December 2004 at Monash University, Caulfield in Melbourne, Australia. The cost is AUD $230 and if you register before 31st October 2004, you will receive a conference t-shirt and financial discount. The t-shirts look fantastic :) You can register at http://www.osdc.com.au/ OSDC is a grassroots-style conference designed by developers for developers, covering open source languages, tools, libraries, operating systems, licences and business models. We're booking 3 lecture rooms each day for the 3 days and every single slot is filled with a talk. There are 60 different talks by 45 different speakers, not including the keynotes. Talks topics range from dealing with hardware in Perl, to designing cochlear implants with Python, to writing large-scale PHP. We also have talks on the Firebird Database, Mozilla XUL, Lego Micromouse (and maze solving), MySQL, CVS, Make, DocBook and writing games with Javascript. You can find the list of speakers and talk titles at http://www.osdc.com.au papers/index.html. Speaker names listed as "unavailable" means that that speaker opted to have their paper refereed. Their names will appear once the refereeing process is over. Because there are so many good talks, you can be certain that there will be something that interests you in every talk session. In our initial timetable, it was impossible to put the most interesting talks into sequential timeslots as we had too many "most interesting" talks for the time available. Each day will start with a 1.5 hour keynote by our excellent keynote speakers. These include Damian Conway, Nathan Torkington, Anthony Baxter, Luke Welling and Con Zymaris. The rest of the day will be filled with 5 hours of talks and plentiful food breaks. Our catering choices should result in you being extraordinarily well fed throughout the days of the conference. There will also be a key-signing, several BOFs (yet to be organised), lots of opportunities to socialise, a semi-formal dinner, a partners' programme and other usual conference stuff. If you have any other questions about what is happening, please don't hesitate to ask: mailto:osdc-help@osdc.com.au Regards Graeme Cross, on behalf of the OSDC organising committee -- Graeme Cross http://www.osdc.com.au - Open Source Developers Conference From theller at python.net Thu Oct 28 20:38:57 2004 From: theller at python.net (Thomas Heller) Date: Fri Oct 29 16:26:47 2004 Subject: ctypes 0.9.2 released Message-ID: ctypes 0.9.2 released - Oct 28, 2004 ==================================== Overview ctypes is a ffi (Foreign Function Interface) package for Python 2.3 and higher. ctypes allows to call functions exposed from dlls/shared libraries and has extensive facilities to create, access and manipulate simple and complicated C data types in Python - in other words: wrap libraries in pure Python. It is even possible to implement C callback functions in pure Python. ctypes runs on Windows, MacOS X, Linux, Solaris, FreeBSD, OpenBSD. It may also run on other systems, provided that libffi supports this platform. On windows, ctypes contains a ctypes.com package which allows to call and implement custom COM interfaces. Important If you download the source distribution, please choose the ZIP file for Windows, and the .tar.gz file for other systems. These archive have different contents! Changes in 0.9.2 Fixed several bugs and memory leaks. ctypes is now tested on Windows, Linux (x86 and x86_64), OpenBSD and Mac OS X. Implemented some helper functions: memmove, memset, string_at, wstring_at. The former act as their C library counterpart, the latter two allow to read a zero-terminated (wide) strings at a certain address. Implemented a cast(cobj, ctype) function, which creates a new object of the specified ctype from an existing object. ctypes now explicitely allocates executable memory for the callbacks it creates, this makes it work correctly on platforms where executing data is normally forbidden (OpenBSD, Win XP SP2 on AMD 64). Fixed the unicode handling on non-windows platforms. Bit fields in structures and unions are now implemented. For a bit field, one would specify the width in bits as the third part in the _fields_ list like this: class BitFieldSample(Structure): _fields_ = [("anInt", c_int), ("aBitField", c_int, 3)] POINTER(None) now returns c_void_p. This change was made for easier code generation, and makes sense since 'None' is the ctypes way to spell 'void'. Detailed changelogs are in CVS: Future plans The ultimate purpose of the 0.9 release series is to shake out the remaining bugs, especially on platforms I have no access to, and to target a rock stable ctypes 1.0 release. When ctypes 1.0 is released, the com framework will be split off into a separate framework named 'comtypes'. Download Downloads are available in the sourceforge files section Separate source distributions are available for windows and non-windows systems. Please use the .zip file for Windows (it contains the ctypes.com framework), and use the .tar.gz file for non-Windows systems (it contains the complete cross-platform libffi sources). Binary windows installers, which contain compiled extension modules, are also available, be sure to download the correct one for the Python version you are using. Homepage Enjoy, Thomas From ian at excess.org Fri Oct 29 19:01:32 2004 From: ian at excess.org (Ian Ward) Date: Mon Nov 1 15:11:37 2004 Subject: ANN: urwid 0.8.1 curses-based UI/widget library Message-ID: <20041029170128.GA6137@badash.excess.org> Announcing urwid 0.8.1 ---------------------- Urwid home page: http://excess.org/urwid/ Tarball: http://excess.org/urwid/urwid-0.8.1.tar.gz New in this release: - Support for monochrome terminals (and for terminals that think they are monochrome *cough*OSX) - Interactive terminal input and output testing (Please let me know if urwid's not catching your terminal's keycodes) - Unit testing used in original development - Fix for browse example program under OSX with python2.2 About Urwid =========== Urwid is a curses-based UI/widget library for Python. It features fluid interface resizing, multiple text layout options, simple markup for attributes, powerful scrolling list boxes and flexible edit boxes. Urwid maximizes the use of your available screen real estate. It does *not* provide code for box drawing or simulated drop shadows. It aims to make writing professional, responsive console applictions easier. Urwid is licensed under the GNU GPL. Ian Ward

urwid 0.8.1 - curses-based UI/widget library (29-Oct-04) From fumanchu at amor.org Sun Oct 31 00:39:10 2004 From: fumanchu at amor.org (Robert Brewer) Date: Mon Nov 1 15:11:38 2004 Subject: Cation 1.0.14 application framework Message-ID: <3A81C87DC164034AA4E2DDFE11D258E32450E7@exchange.hqamor.amorhq.net> The Cation application framework (version 1.0.14) is now available and in the public domain. Get it at svn://casadeamor.com/cation/trunk Cation is a generic, lightweight application framework. Use it to build the "View" in an MVC application. This release, however, only provides tools for web applications. Supported web servers: IIS+ASP, Apache2+mod_python, and WSGI (prototype). Additional features: 1. Thread-safe application state management 2. Built-in Logging 3. Configuration data management 4. Workers for getting things done on a schedule, possibly recurring 5. Startup/shutdown functions 6. Registry of active user interfaces 7. Simple but powerful HTML Assembly mechanism (or use your own!) Cation welcomes your use and feedback as an application developer. Cation also welcomes framework developers. New code for additional webservers, GUI's, dispatch algorithms, log styles, configuration parsers, and standard Workers will be gladly reviewed for inclusion in future releases. Drop me an email if you feel so inclined. Robert Brewer MIS Amor Ministries fumanchu@amor.org