From gary at modernsongs.com Wed Jun 1 16:00:58 2005 From: gary at modernsongs.com (Gary Poster) Date: Wed, 1 Jun 2005 10:00:58 -0400 Subject: Fredericksburg, VA ZPUG June 8 Message-ID: <3E7D6A5B-B203-43DB-A155-C0219B7F33A1@modernsongs.com> Fredericksburg, VA ZPUG June 8 Please join us June 8, 7:30-9:00 PM, for the inaugural meeting of the Fredericksburg, VA Zope and Python User Group ("ZPUG"). Tres Seaver, architect of the Zope Content Management Framework, will present. Further meetings are planned for the second Wednesday of every month. Location will be at the Zope Corporation offices. Further details below, and at http://www.zope.org/Members/poster/fxbgzpug_announce. Gary --------- Fredericksburg, VA ZPUG: second Wednesday of every month, 7:30-9:00 First meeting: June 8, 7:30. Speaker: Tres Seaver, architect of the Zope Content Management Framework (CMF). Topic: Selenium (automated cross-platform, cross-browser application browser tests, http://selenium.thoughtworks.com/index.html), as integrated with Zope 2 in Zelenium (http://www.zope.org/Members/ tseaver/Zelenium). Location: Zope Corporation offices (http://tinyurl.com/duoab or http://maps.google.com/maps?q=Zope+Corporation,+513+Prince+Edward +Street,+Fredericksburg,+VA +22401&ll=38.298600,-77.457900&spn=0.032410,0.068500&hl=en) Parking: Zope Corporation parking lot; entrance on Prince Edward Street. Future topics: As desired (and offered) by participants, within the constraints of having to do with Python. Possible topics include presentations referencing Zope 3, Zope 2, Twisted Framework, core Python topics, Python and XML, Zope Object Database (ZODB), Macintosh OS X application development with Python, etc. From fuzzyman at gmail.com Thu Jun 2 17:23:29 2005 From: fuzzyman at gmail.com (Fuzzyman) Date: 2 Jun 2005 08:23:29 -0700 Subject: ANN : rest2web 0.2.0 Message-ID: <1117725809.141932.75930@f14g2000cwb.googlegroups.com> *UPDATE* rest2web 0.2.0 This is a major update to rest2web, introducing lots of new features and improvements. The main new features are : * rest2web now renders pages a whole directory at a time and builds a tree of the site structureas it goes. This allows the new standard functions to provide very simple ways of automatically building sidebars. The data strucures are also available for you to process yourself. * The new *standard functions* also include a one line way to print navigation trails. * You can now specify your template encoding and output encoding - rest2web is fully unicode internally. It ought to 'do the right thing' if you don't specify what encodings are being used (even if you mix encodings). * A new system of macros for frequently used shorthands (including smilies and Python source coloring). * Lots more values available in the template namespace. :Author: Michael Foord :Contact: fuzzyman at voidspace.org.uk :Version: 0.2.0 :Date: 2005/06/01 :License: BSD-License http://www.voidspace.org.uk/documents/BSD-LICENSE.txt :Home Page: http://www.voidspace.org.uk/python/rest2web :Sourceforge: http://sourceforge.net/projects/rest2web :Development: SVN Repository https://svn.rest2web.python-hosting.com/trunk/ :Support: Pythonutils Mailing List http://www.voidspace.org.uk/mailman/listinfo/pythonutils_voidspace.org.uk :Quick Download: http://www.voidspace.org.uk/cgi-bin/voidspace.py?file=rest2web.zip (725k) Note : rest2web requires the pythonutils module http://www.voidspace.org.uk/python/pythonutils.html What is restweb ? =================== rest2web is a tool for automatically building websites, or parts of websites. It allows you to maintain your content as reST (see http://docutils.sourceforge.net ) - a relaxed (WYSIWYG) text markup. (You can keep content as HTML as well if you prefer). It will generate HTML from your contents and insert it into HTML templates, automatically building index pages, sidebars, and navigation trails (breadcrumbs) as it goes. It features a simple templating system, macros, and more. Adding pages to your site can be as simple as dropping the text file of cotnent into the desired directory. rest2web will add it to the index page and build the target file. If you delete a page, rest2web can automatically update the indexes for you. Because rest2web resolves all links locally, it can be used to create HTML files viewable from the filesystem. This makes it an ideal way to create documentation. See the docs and example site (included in the distribution) : http://www.voidspace.org.uk/python/rest2web The example site illustrates most of the features of rest2web, which is now building a significant proportion of Voidspace - see http://www.voidspace.org.uk/technology for a live example. What's Changed Since 0.1.0 ? =============================== Version 0.2.0 2005/06/01 Various minor changes especially additions to the namespace pages are rendered in. Sites are rendered a whole section at a time. This means pages have index data for that section available. This is the ``sections`` variable in the namespace. Added the ``output-encoding`` and `final_encoding`` values to the restindex. Added the ``template-encoding`` value to the restindex. rest2web is now entirely unicode internally. It's now possible to specify title and description for the default section. Added indextree and thispage, allows building of sidebars. Added standard functions. Added macros. Started using subversion repository. Changed all line endings to 'LF'. What's Next ? =============== The next step is to have rest2web automatically create contents and sitemaps for sites it is creating. I'd like to integrate with a system that inspects Python objects for helping to automate some of the process of documenting Python projects. From fuzzyman at gmail.com Thu Jun 2 17:25:54 2005 From: fuzzyman at gmail.com (Fuzzyman) Date: 2 Jun 2005 08:25:54 -0700 Subject: ANN: http Tutorials (urllib2 and Basic Authentication) Message-ID: <1117725954.821746.163140@g47g2000cwa.googlegroups.com> *NEW* http Tutorials Two new tutorials on http related subjects with Python. (1) A tutorial on using urllib2. It covers fetching URLs, coping with errors, and using handlers and openers. It should be useful to anyone new to using urllib2. (2) A tutorial on BASIC authentication with Python. It first illustrates how BASIC authentication works - manually encoding the username/password into the request. Next we show the *proper* way to do it - with password manager, handler, and opener; a subject which has been known to confuse even intermediate level Python Programmers. See : http://www.voidspace.org.uk/python/articles.shtml#http (errata welcomed by the way - see the website for a contact address) From fuzzyman at gmail.com Thu Jun 2 17:28:53 2005 From: fuzzyman at gmail.com (Fuzzyman) Date: 2 Jun 2005 08:28:53 -0700 Subject: ANN: Pythonutils, listquote, and ConfigObj UPDATE Message-ID: <1117726133.304899.60240@g49g2000cwa.googlegroups.com> *UPDATE* to the Pythonutils modules. (Please note that due to technical difficulties updated evrsions of ConfigObj and rest2web aren't yet available from Sourceforge - pelase download from Voidspace instead - apologies) The main update is to the listquote module, which has two bugfixes and several optimisations. Because of the bugfixes it is recommended that all users of listquote, pythonutils, fullconfigobj, and configobj, upgrade to newer versions which are now available. The previous version would lose the last list member in a string like '["first member", "second member", ""]'. listquote Version 1.3.0 1st June 2005 http://www.voidspace.org.uk/python/modules.shtml#listquote Parsing strings into lists (even nested lists). Handles comments and quotes. (etc) Fixed bug in lineparse handling of empty list members. Thnks to bug report and fix by Par Pandit The 'unquote' function is now regex based. (bugfix it now doesn't return a tuple if fullquote is 0) Added the simplelist regex/function. elem_quote and uncomment use a regex for clarity and speed. Added a bunch of asserts to the tests. pathutils Version 0.2.0 1st june 2005 http://www.voidspace.org.uk/python/recipebook.shtml#utils Changes since 0.1.0 Added walkdirs generator. Added rounding to formatbytes and improved bytedivider with divmod. Now explicit keyword parameters override the configdict in formatbytes. The pythonutils module 0.1.1 This contains both updates above and an updated version of cgiutils. http://www.voidspace.org.uk/python/pythonutils.html If the windows binary installer isn't available (I need to find a Python 2.3 machine to build it on as installers built on 2.4 require the dll from MSVC 7 on the *target machine*) then just use the source distribution - it's a pure python module anyway. From gvanrossum at gmail.com Fri Jun 3 05:09:02 2005 From: gvanrossum at gmail.com (Guido van Rossum) Date: Thu, 2 Jun 2005 20:09:02 -0700 Subject: For review: PEP 343: Anonymous Block Redux and Generator Enhancements Message-ID: After many rounds of discussion on python-dev, I'm inviting public comments for PEP 343. Rather than posting the entire PEP text here, I'm inviting everyone to read it on line (http://www.python.org/peps/pep-0343.html) and then post comments on a Wiki page I've created for this purpose (http://wiki.python.org/moin/WithStatement). I think this is a good one; I hope people agree. Its acceptance will obsolete about 4 other PEPs! (A sign that it fulfills a need and that the proposed solution is powerful.) -- --Guido van Rossum (home page: http://www.python.org/~guido/) From Fernando.Perez at colorado.edu Thu Jun 2 22:33:25 2005 From: Fernando.Perez at colorado.edu (Fernando Perez) Date: Thu, 02 Jun 2005 14:33:25 -0600 Subject: [ANN] IPython 0.6.15 - minor bugfix Message-ID: <429F6D15.7040904@colorado.edu> Hi all, I've just put out a minor bugfix release, 0.6.15. It really only fixes one thing, tab-completion inside strings: In [1]: foo('/etc/hos <<<--- TAB HERE /etc/host.conf /etc/hosts /etc/hosts.allow /etc/hosts.deny In [1]: foo("/etc/ini <<<--- TAB HERE /etc/init.d /etc/initlog.conf /etc/inittab If anyone is interested in this functionality, you'll need to fix ~/.ipython/ipythonrc, so the readline delimiters configuration reads: readline_remove_delims -/~ (or at least, make sure neither ' nor " are in there). Where to get it? ---------------- As usual, downloads at: http://ipython.scipy.org/dist WHAT is IPython? ---------------- 1. An interactive shell superior to Python's default. IPython has many features for object introspection, system shell access, and its own special command system for adding functionality when working interactively. 2. An embeddable, ready to use interpreter for your own programs. IPython can be started with a single call from inside another program, providing access to the current namespace. 3. A flexible framework which can be used as the base environment for other systems with Python as the underlying language. Cheers, f From calfdog at yahoo.com Fri Jun 3 06:59:51 2005 From: calfdog at yahoo.com (calfdog@yahoo.com) Date: 2 Jun 2005 21:59:51 -0700 Subject: PAMIE 1.5 released! Now supports IE automation with frames. Message-ID: <1117774791.593085.203910@g44g2000cwa.googlegroups.com> Why wait, when you could be using this to Automate now!... It's Free!!! http://pamie.sourceforge.net ======================================================================== What is PAMIE? PAMIE stands for Python Automation module for Internet Explorer. Requirements: ------------ * Window 2000, WinNT, WinXP * Python 2.4. (I use Active State Python 2.4.x since it installs the needed win32all library) Optional tools for writing scripts: * Eclipse with pydev plugin ( great for writing, running and debugging scripts) - recommended!! * Emacs - for script writing * Notepad++ - for script writing * PythonWin IDE installed with Activestate Python - http://www.Activestate.org - for script writing and running ========================================================================== This was completely written in Python to be used as a QA/Development tool for Web testing. You will find this is one of the easiest automation tool to use for automating Internet Explorer. PAMIE is a class file (cPAMIE.py) that you import and you can calls its methods to write scripts that automate your IE browser client. Used with PY unit you can write complex Web testing frameworks. Uses: * Automate Web testing * Use along with Jmeter for Performance testing. * Load Testing ========================================================================== New Enhancements: ---------------- Frames support improved report status Just a few of the methods available: ------------------------------------ _frameWait - waits for user speficied frame document to load _wait - wait for documetn to load checkForFormName - check to see if a formname exists in the document checkForFrameName -- check to see if a framename exists ClickBtnImage - Clicks on an input type image button ClickButton - Click on a button ClickImage - clicks on an Image ClickLink - Clicks on a link ClickMenu - Clicks on an menu item,link ClickMenuImage - Clicks on an menu item that is a image. Click a Menu or Sub Menu Item ClickNthImage click on the Nth Image ClickNthLink - click on the Nth link ClickOuterLink - clicks on a link using outertext ClickPageLink - click on the page link GetTextBox - get tectbox value SettextBox - Sets texbox value GetNames - get the names of the form elements GetListbox - gets selected listbox item SetlistBox - sets selected listbox item GetRadioButton - Gets Radio button status SetRadioButton - Sets Radio button GetRadioButtonSet - same as above and much much more !!! Check it out! Thank you R.L. Marchetti From irmen.NOSPAM at xs4all.nl Fri Jun 3 20:59:27 2005 From: irmen.NOSPAM at xs4all.nl (Irmen de Jong) Date: Fri, 03 Jun 2005 20:59:27 +0200 Subject: Snakelets 1.41 and Frog 1.6 Message-ID: <42a0a891$0$35362$e4fe514c@news.xs4all.nl> I'm happy to announce the release of Snakelets 1.41 and at the same time Frog 1.6. Snakelets is a Python web application server. This project provides a threaded web server, Ypages (HTML+Python language, similar to Java's JSPs) and Snakelets: code-centric page request handlers (similar to Java's Servlets). Frog is a Blog server application written for Snakelets. It is small but has many features, such as BBcode markup, XHTML+CSS page output, multiple users, no database required, anti-spam measures, email notification, Smileys, RSS feeds, and more. Please find more info on both projects here: http://snakelets.sourceforge.net/ Download: http://sourceforge.net/project/showfiles.php?group_id=41175 The detailed release notes have been added to the version section. Have fun! --Irmen de Jong From michel at dialnetwork.com Sat Jun 4 01:33:13 2005 From: michel at dialnetwork.com (Michel Pelletier) Date: Fri, 03 Jun 2005 16:33:13 -0700 Subject: PloneLive 1.0 Available Now! Message-ID: <1117841593.21754.99.camel@localhost.localdomain> Plone Live is the result of a year of work, full- and part-time, of the two authors, Michel Pelletier and Munwar Shariff, our technical editor, Jean Jordaan, and our copy editor, Amy Kesic. But this book is more than what you are holding (or reading on the screen), because this book is live; every month, the authors add new content and fix typos, responding to the feedback our readers leave on our site, http://plonelive.com. Over the next year, this book will tackle one of the greatest challenges for any book about modern, open source software: remaining current. Using the traditional publishing method, books quickly become out-of-date and irrelevant, rather than remaining up-to-date, useful references. By updating this book every month, SourceBeat has created a unique publication format that solves these problems with traditional publication methods. First, it's hard to get a book about a complex piece of open source software 100% correct; in fact, almost impossible when one or two authors and one technical reviewer must often document a system built by dozens or perhaps hundreds of programmers. By creating orderly, feature-based releases each month, the book can evolve over time to cover more and more complex features of the software, and we can catch errors quickly in the first few updates. Second, open source software, like Plone, often does not follow a hard-and-fast feature plan, but instead adds new, innovative features as they are thought up by creative developers trying to solve real world problems. By updating the book each month, the book can quickly adapt to cover any new technologies or trends that emerge from the community of users. Books that are released once every year or two cannot follow or easily adapt to these trends. Third, like open source software, books have communities. However, traditional books have a large disconnect between the reader and the author because there is no way for the reader to get feedback to the author. Even if they could, there are seldom clear, easy-to use-channels for redistributing books or errata. By creating the ?live? book format, SourceBeat is creating a new way for readers and authors to make better books cooperatively. You can buy this book online from Amazon at: http://www.amazon.com/exec/obidos/ASIN/0976553406/002-2820793-0614428% 29%2Cas/104-8538093-5697530 From detlev at die-offenbachs.de Sat Jun 4 12:53:23 2005 From: detlev at die-offenbachs.de (Detlev Offenbach) Date: Sat, 04 Jun 2005 12:53:23 +0200 Subject: ANN: eric3 3.7.0 released Message-ID: Hi, this is to let all of you know about the release of eric3 3.7.0. Next to a bunch of bugfixes, it adds these features. - support for Ruby projects (debugger, syntax highlighting) - support for the generation of KDE UIs - introduction of watchpoints - added class browsers for Ruby and CORBA IDL files - added bookmark capability to the file browser - added context menus for directories to the various browsers - added tasks and a task viewer and a bunch of little improvements. As usual it is available via http://www.die-offenbachs.de/detlev/eric3.html Go get it and enjoy working with it. Many thanks to all people who have tested the snapshots, send bug reports and supported the development by sending patches and translating the eric3 UI. What is it ---------- Eric3 is a full featured development environment for Python and Ruby released under the conditions of the GPL. Please see above URL for more information and download. Regards, Detlev -- Detlev Offenbach detlev at die-offenbachs.de From aahz at pythoncraft.com Sat Jun 4 20:34:52 2005 From: aahz at pythoncraft.com (Aahz) Date: Sat, 4 Jun 2005 11:34:52 -0700 Subject: BayPIGgies: June 9, 7:30pm (IronPort) Message-ID: <20050604183452.GA29448@panix.com> The next meeting of BayPIGgies will be Thurs, June 9 at 7:30pm at IronPort. Drew Perttula will discuss his Python-based lighting system controller. The system includes a music player, a variety of programs to design and time light cues, and drivers for hardware that outputs the DMX protocol used by most theatrical lighting gear. BayPIGgies meetings alternate between IronPort (San Bruno, California) and Google (Mountain View, California). For more information and directions, see http://www.baypiggies.net/ Before the meeting, we may meet at 6pm for dinner. Discussion of dinner plans is handled on the BayPIGgies mailing list. Advance notice: The July 14 meeting will be Alex Martelli's "Black Magic" talk. Advance notice: The August 11 meeting agenda has not been set. Please send e-mail to baypiggies at baypiggies.net if you want to suggest an agenda (or volunteer to give a presentation). -- Aahz (aahz at pythoncraft.com) <*> http://www.pythoncraft.com/ "The only problem with Microsoft is they just have no taste." --Steve Jobs From brian at zope.com Sun Jun 5 18:15:09 2005 From: brian at zope.com (Brian Lloyd) Date: Sun, 5 Jun 2005 12:15:09 -0400 Subject: Announce: Python for .NET 1.0 RC2 released Message-ID: Hi all - I'm happy to announce the release of Python for .NET 1.0 RC2. You can download it from: http://www.zope.org/Members/Brian/PythonNet Highlights of this release: - Changed some uses of Finalize as a static method name that confused the Mono compiler and people reading the code. Note that this may be a breaking change if anyone was calling PythonEngine.Finalize(). If so, you should now use PythonEngine.Shutdown(). - Tweaked assembly lookup to ensure that assemblies can be found in the current working directory, even after changing directories using things like os.chdir() from Python. - Fixed some incorrect finalizers (thanks to Greg Chapman for the report) that may have caused some threading oddities. - Tweaked support for out and ref parameters. If a method has a return type of void and a single ref or out parameter, that parameter will be returned as the result of the method. This matches the current behavior of IronPython and makes it more likely that code can be moved between Python for .NET and IP in the future. - Refactored part of the assembly manager to remove a potential case of thread-deadlock in multi-threaded applications. - Added a __str__ method to managed exceptions that returns the Message attribute of the exception and the StackTrace (if available). Thanks to all who have sent in issue reports, patches and suggestions for this and past releases. Enjoy! ;) Brian Lloyd brian at zope.com V.P. Engineering 540.361.1716 Zope Corporation http://www.zope.com From sxanth at ceid.upatras.gr Sun Jun 5 20:27:50 2005 From: sxanth at ceid.upatras.gr (Stelios Xanthakis) Date: Sun, 05 Jun 2005 21:27:50 +0300 Subject: ANN: pyc -- python compiler in python Message-ID: <42A34426.4030500@ceid.upatras.gr> Hi. pyc is a compiler that compiles source code to bytecode and it's written entirely in python. It's based on the compiler package from the stdlib but the parser/lexer are implemented in python. Moreover, it does some optimizations on the bytecode. http://students.ceid.upatras.gr/~sxanth/pyc/ Feedback is most welcome. Stelios From robin at alldunn.com Sun Jun 5 01:46:33 2005 From: robin at alldunn.com (Robin Dunn) Date: Sat, 04 Jun 2005 16:46:33 -0700 Subject: ANN: wxPython 2.6.1.0 Message-ID: <42A23D59.9010007@alldunn.com> Announcing ---------- The 2.6.1.0 release of wxPython is now available for download at http://wxpython.org/download.php. Anybody keeping track will probably notice that the prior release (2.6.0.1) was released just about a week ago. This short turn-around time is because I was slow getting the last release done, and the wxWidgets team was uncharacteristically early with the 2.6.1 release! This release consists of a few bug fixes made since 2.6.0.1. What is wxPython? ----------------- wxPython is a GUI toolkit for the Python programming language. It allows Python programmers to create programs with a robust, highly functional graphical user interface, simply and easily. It is implemented as a Python extension module that wraps the GUI components of the popular wxWidgets cross platform library, which is written in C++. wxPython is a cross-platform toolkit. This means that the same program will usually run on multiple platforms without modifications. Currently supported platforms are 32-bit Microsoft Windows, most Linux or other Unix-like systems using GTK or GTK2, and Mac OS X. Changes in 2.6.1.0 ------------------ wx.ListCtrl: patch #1210352, fixes editing in generic wx.ListCtrl with wx.LC_EDIT_LABELS. Applied patch #208286, MediaCtrl DirectShow rewrite. DocView patches from Morgan Hua: bug fixes, and additional SVN commands, also added a default template that uses the text editor for any unknown file type. wxMSW: Use the system IDC_HAND cursor for wx.CURSOR_HAND and only fallback to the strange wxWidgets version if the system one is not available. wx.grid.Grid: Merge the cell size attribute the same way that other attributes are merged, e.g., if it is already set to a non-default value in the current GridCellAttr object then don't merge from the other. wx.lib.evtmgr: Fixed to use wx._core._wxPyDeadObject wx.lib.gridmovers: Don't scroll when the mouse is dragged outside of the grid, unless the mouse is kept in motion. wxMSW: Applied patch #1213290 incorrect logic in wx.TopLevelWindow.ShowFullScreen. Applied patch #1213066 correct device names for Joystick in Linux. wxGTK: Applied patch #1207162 wx.TextCtrl.SetStyle fix for overlapping calls. wx.FileConfig: fixed DeleteEntry to set the dirty flag properly so the change will get written at the next flush. -- Robin Dunn Software Craftsman http://wxPython.org Java give you jitters? Relax with wxPython! From support at high-levelcert.com Mon Jun 6 12:59:04 2005 From: support at high-levelcert.com (High-Level Certifications) Date: 6 Jun 2005 03:59:04 -0700 Subject: Python certification announcement Message-ID: <1118055544.565192.106190@z14g2000cwz.googlegroups.com> High-Level Certifications would like to announce its programming language certification in Python. This certification seeks to provide the Python community with an up-to-date, platform-neutral, vendor-neutral certification administered in a secure proctored environment. As Python's popularity continues to grow, High-Level Certifications' Python cert provides a way for Python programmers to prove their proficiency at this powerful language. The exams take a "pure programming" approach to Python, emphasizing a thorough understanding of the most important elements of the language. Please visit www.high-levelcert.com to find information on exam topics, benefits, registration, practice exams and other learning resources. From frank at niessink.com Mon Jun 6 21:01:31 2005 From: frank at niessink.com (Frank Niessink) Date: Mon, 06 Jun 2005 21:01:31 +0200 Subject: [ANN] Release 0.39 of Task Coach Message-ID: <42A49D8B.9090107@niessink.com> Hi all, I'm pleased to announce release 0.39 of Task Coach. More than two weeks since the previous release, sorry about that :-). New in this release: Bugs fixed: - When sorting by due date, composite tasks in the tree view are now sorted according to the most urgent subtask instead of the least urgent subtask. Featues added: - Tasks can be sorted on all attributes (subject, start date, due date, budget, etc.) This includes options to sort ascending or descending and to first sort by status (active/inactive/completed). - Sorting order can be changed by clicking on column headers. - Added German translation, thanks to J. Martin. - Minor view menu changes. What is Task Coach? Task Coach is a simple task manager that allows for hierarchical tasks, i.e. tasks in tasks. Task Coach is open source (GPL) and is developed using Python and wxPython. You can download Task Coach from: http://taskcoach.niessink.com https://sourceforge.net/projects/taskcoach/ A binary installer is available for Windows XP, in addition to the source distribution. Note that Task Coach is alpha software, meaning that it is wise to back up your task file regularly, and especially when upgrading to a new release. Cheers, Frank From python-url at phaseit.net Tue Jun 7 16:05:10 2005 From: python-url at phaseit.net (Simon Brunning) Date: Tue, 07 Jun 2005 14:05:10 +0000 Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Jun 7) Message-ID: QOTW: "[expletives deleted]" - John Machin, snipping a section of Perl code. "What sort of programmer are you? If it works on your computer, it's done, ship it!" - Grant Edwards Guido invites us to comment on PEP 343. This Python Enhancement Proposal includes a 'with' statement, allowing you simply and reliably wrap a block of code with entry and exit code, in which resources can be acquired and released. It also proposes enhancements to simple generators, making them easy to use to build these wrappers: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/a9d9b591ca7b296d Timothy Smith would like to truncate a Decimal. It's not as easy as it sounds, but Raymond Hettinger has the definitive solution, as is so often the case: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/f40d2863110dc81e If you need to set Windows' environment variables persistently, Gigi's recipe is what you need: http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/416087 EasyInstall, Phillip J. Eby's CPAN clone is ready to go: http://dirtsimple.org/2005/06/cpan-goodies-for-all.html How does one check if a given datetime is within a specified range? Andrew Dalke shows Maksim Kasimov how: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/e186c915a237c9a7 Robert Kern shows how to turn a CSV file into a list of dictionaries, and Peter Otten shows off a lovely iterator trick for turning adjacent list entries into dictionary elements: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/ed07b9f71724dcbd Ryan Tomayko defends the LAMP (Linux, Apache, MySQL, Python/Perl/PHP) platform: http://naeblis.cx/rtomayko/2005/05/28/ibm-poop-heads Skip Montanaro tells us why Emacs is the perfect IDE for him: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/6df813d2d8d187fb#8438e5f0d2352e5f O'Reilly has published a couple of interesting articles by Jeremy Jones, "Python Standard Logging" and "Writing Google Desktop Search Plugins": http://www.onlamp.com/pub/a/python/2005/06/02/logging.html http://www.onlamp.com/pub/a/python/2005/06/01/kongulo.html How can you reliably eradicate data from a hard disk? Nuke the site from orbit; it's the only way to be sure. http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/2e73c88596c35427 Tomasz Bieruta shows us how to sort large files: http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/415581 Google's new Sitemaps allow a Webmaster to tell Google what to spider. They provide a Python script to get you started: https://www.google.com/webmasters/sitemaps/docs/en/sitemap-generator.html ======================================================================== Everything Python-related you want is probably one or two clicks away in these pages: Python.org's Python Language Website is the traditional center of Pythonia http://www.python.org Notice especially the master FAQ http://www.python.org/doc/FAQ.html PythonWare complements the digest you're reading with the marvelous daily python url http://www.pythonware.com/daily Mygale is a news-gathering webcrawler that specializes in (new) World-Wide Web articles related to Python. http://www.awaretek.com/nowak/mygale.html While cosmetically similar, Mygale and the Daily Python-URL are utterly different in their technologies and generally in their results. For far, FAR more Python reading than any one mind should absorb, much of it quite interesting, several pages index much of the universe of Pybloggers. http://lowlife.jp/cgi-bin/moin.cgi/PythonProgrammersWeblog http://www.planetpython.org/ http://mechanicalcat.net/pyblagg.html comp.lang.python.announce announces new Python software. Be sure to scan this newsgroup weekly. http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python.announce Steve Bethard, Tim Lesher, and Tony Meyer continue the marvelous tradition early borne by Andrew Kuchling, Michael Hudson and Brett Cannon of intelligently summarizing action on the python-dev mailing list once every other week. http://www.python.org/dev/summary/ The Python Package Index catalogues packages. http://www.python.org/pypi/ The somewhat older Vaults of Parnassus ambitiously collects references to all sorts of Python resources. http://www.vex.net/~x/parnassus/ Much of Python's real work takes place on Special-Interest Group mailing lists http://www.python.org/sigs/ The Python Business Forum "further[s] the interests of companies that base their business on ... Python." http://www.python-in-business.org Python Success Stories--from air-traffic control to on-line match-making--can inspire you or decision-makers to whom you're subject with a vision of what the language makes practical. http://www.pythonology.com/success The Python Software Foundation (PSF) has replaced the Python Consortium as an independent nexus of activity. It has official responsibility for Python's development and maintenance. http://www.python.org/psf/ Among the ways you can support PSF is with a donation. http://www.python.org/psf/donate.html Kurt B. Kaiser publishes a weekly report on faults and patches. http://www.google.com/groups?as_usubject=weekly%20python%20patch Cetus collects Python hyperlinks. http://www.cetus-links.org/oo_python.html Python FAQTS http://python.faqts.com/ The Cookbook is a collaborative effort to capture useful and interesting recipes. http://aspn.activestate.com/ASPN/Cookbook/Python Among several Python-oriented RSS/RDF feeds available are http://www.python.org/channews.rdf http://bootleg-rss.g-blog.net/pythonware_com_daily.pcgi http://python.de/backend.php For more, see http://www.syndic8.com/feedlist.php?ShowMatch=python&ShowStatus=all The old Python "To-Do List" now lives principally in a SourceForge reincarnation. http://sourceforge.net/tracker/?atid=355470&group_id=5470&func=browse http://python.sourceforge.net/peps/pep-0042.html The online Python Journal is posted at pythonjournal.cognizor.com. editor at pythonjournal.com and editor at pythonjournal.cognizor.com welcome submission of material that helps people's understanding of Python use, and offer Web presentation of your work. del.icio.us presents an intriguing approach to reference commentary. It already aggregates quite a bit of Python intelligence. http://del.icio.us/tag/python *Py: the Journal of the Python Language* http://www.pyzine.com Archive probing tricks of the trade: http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python&num=100 http://groups.google.com/groups?meta=site%3Dgroups%26group%3Dcomp.lang.python.* Previous - (U)se the (R)esource, (L)uke! - messages are listed here: http://www.ddj.com/topics/pythonurl/ (requires subscription) http://groups-beta.google.com/groups?q=python-url+group:comp.lang.python*&start=0&scoring=d& http://purl.org/thecliff/python/url.html (dormant) or http://groups.google.com/groups?oi=djq&as_q=+Python-URL!&as_ugroup=comp.lang.python Suggestions/corrections for next week's posting are always welcome. E-mail to should get through. To receive a new issue of this posting in e-mail each Monday morning (approximately), ask to subscribe. Mention "Python-URL!". -- The Python-URL! Team-- Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and sponsor the "Python-URL!" project. From trentm at ActiveState.com Tue Jun 7 17:06:05 2005 From: trentm at ActiveState.com (Trent Mick) Date: Tue, 7 Jun 2005 08:06:05 -0700 Subject: ANN: ActivePython 2.4.1 for Mac OS X is now available! Message-ID: <20050607150605.GA5985@ActiveState.com> Today ActiveState is announcing support for Mac OS X. I'm happy to announce that ActivePython 2.4.1 for Mac OS X is now available for free download from: http://www.ActiveState.com/Products/ActivePython/ This brings the number of free ActivePython platforms to four -- with the existing Linux, Solaris and Windows free downloads. Meanwhile, some of you may be interested to know that we are busily working on bringing Komodo to Mac OS X. We expect to offer a beta in August and release later this year. To keep up-to-date with our Mac OS X progress, betas and announcements, we invite you to join our new mailing list: osx-announce at ActiveState.com You can join the OS X announce list on the ActiveState Programmer Network (ASPN): http://listserv.activestate.com/mailman/listinfo/osx-announce What is ActivePython? --------------------- ActivePython is ActiveState's quality-assured binary distribution of Python. Builds for Linux, Mac OS X, Solaris and Windows are made freely available. ActivePython includes the Python core and core extensions (zlib 1.2.1, bzip2 1.0.2, bsddb 4.2.52, Tk 8.4.9, and Tix 8.1.4) and is fully compatible with other Python distributions of the same version. 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. Once installed on the Mac, you can find the ActivePython documentation here: /Library/Documentation/Help/ActivePython 2.4 Help/index.html 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, Python Tech Lead -- Trent Mick TrentM at ActiveState.com From grahamd at dscpl.com.au Wed Jun 8 08:30:48 2005 From: grahamd at dscpl.com.au (grahamd@dscpl.com.au) Date: 7 Jun 2005 23:30:48 -0700 Subject: ANN: Vampire 1.7 is now available. Message-ID: <1118212248.437414.151300@g49g2000cwa.googlegroups.com> Vampire 1.7 is now available. http://www.dscpl.com.au/projects/vampire http://www.dscpl.com.au/downloads/vampire-1.7-20050608.tar.gz Vampire is an extension module for mod_python, which provides a more flexible dispatch mechanism for basic content handlers, as well as an alternative implementation of the mod_python.publisher module. A range of other useful features are also provided which make using mod_python a much more pleasant experience. Note that Vampire is not strictly a framework in itself, it is essentially glue to help you make it easier to use mod_python. For a quick overview of the features that Vampire provides check out: http://www.dscpl.com.au/projects/vampire/articles/vampire-001.html For a full list of changes in this new version check out: http://www.dscpl.com.au/projects/vampire/changes.html As usual, some bugs have been fixed in this version, along with some new features and improvements. One of the more significant changes is the ability to optionally install import hooks so that the "import" syntax can be used to import file based modules using the Vampire module importing and caching system. This means that if using Cheetah Templates and a template extends another, a change in the base class template will now result in the derived template being automatically reloaded without the derived class template needing to be recompiled. Another change is the inclusion of a new wrapper class and changes to some of the existing wrapper classes, such that if a class type is wrapped, an instance of that class will be created automatically to handle each request thus making it easier to construct servlet like handlers. The range of examples included has been expanded upon, with better examples on use of HTMLTemplate, Cheetah Templates, PSP, sessions and the forms based login mechanism, as well as more basic examples of using the wrapper classes to enhance basic content handlers. Enjoy. -- Graham Dumpleton From aahz at pythoncraft.com Wed Jun 8 15:40:54 2005 From: aahz at pythoncraft.com (Aahz) Date: Wed, 8 Jun 2005 06:40:54 -0700 Subject: REMINDER: BayPIGgies: June 9, 7:30pm (IronPort) Message-ID: <20050608134054.GA10909@panix.com> The next meeting of BayPIGgies will be Thurs, June 9 at 7:30pm at IronPort. Drew Perttula will discuss his Python-based lighting system controller. The system includes a music player, a variety of programs to design and time light cues, and drivers for hardware that outputs the DMX protocol used by most theatrical lighting gear. BayPIGgies meetings alternate between IronPort (San Bruno, California) and Google (Mountain View, California). For more information and directions, see http://www.baypiggies.net/ Before the meeting, we may meet at 6pm for dinner. Discussion of dinner plans is handled on the BayPIGgies mailing list. Advance notice: The July 14 meeting will be Alex Martelli's "Black Magic" talk. Advance notice: The August 11 meeting agenda has not been set. Please send e-mail to baypiggies at baypiggies.net if you want to suggest an agenda (or volunteer to give a presentation). -- Aahz (aahz at pythoncraft.com) <*> http://www.pythoncraft.com/ f u cn rd ths, u cn gt a gd jb n nx prgrmmng. From fabioz at esss.com.br Wed Jun 8 18:45:49 2005 From: fabioz at esss.com.br (Fabio Zadrozny) Date: Wed, 08 Jun 2005 13:45:49 -0300 Subject: ANN: PyDev 0.9.4 released Message-ID: <42A720BD.5050701@esss.com.br> Hi All, PyDev - Python IDE (Python Development Enviroment for Eclipse) version 0.9.4 has just been released. Check the homepage (http://pydev.sourceforge.net/) for more details. Release Highlights: - New PYTHONPATH configuration (for the whole ambient), used for running your files, PyLint, code completion... - Integrated Scott Schleiser patches for the debugger (you won't see any 'implement me' anymore!). - Integrated Heikki Toivonen patch for PyLint using the project pythonpath. - Integrated Heikki Toivonen patch for indentation after '(', '[' and '{' (if the line ends with a comma). - Some StackOverflow errors were removed from code completion. - Keybindings added for Refactoring (powered by bycicle repair man) - check the FAQ. - Some bug-fixes as usual... Regards, -- Fabio Zadrozny ------------------------------------------------------ Software Developer ESSS - Engineering Simulation and Scientific Software www.esss.com.br PyDev - Python Development Enviroment for Eclipse pydev.sf.net pydev.blogspot.com From rapp at acm.org Wed Jun 8 19:15:53 2005 From: rapp at acm.org (rapp@acm.org) Date: 8 Jun 2005 10:15:53 -0700 Subject: [ANN] SMC - State Machine Compiler v. 4.0.0 for Python Message-ID: <1118250953.467482.180680@g14g2000cwa.googlegroups.com> SMC - The State Machine Compiler v. 4.0.0 Requires: Java 1.4.1 SE (Standard Edition) or better. Download: http://sourceforge.net/projects/smc Home Page: http://smc.sourceforge.net Why use Python? You know why - powerful, flexible, simple and very capable. Why use finite state machines (FSMs)? For the exact same reasons. Computing has long since moved beyond a single process, a single processor and single computer programming. Your application lives in a distributed world with asynchronous events, I/O and timers. Objects together with FSMs can handle this difficult world in a robust and efficient manner. An object's encapsulated FSM tracks the object's current state. The current state defines how the object should respond to an event. ================================================================= What is SMC? ================================================================= SMC takes a state machine description (stored in a .sm file) and generates State pattern classes in a target language (C++, Java, Tcl, VB.Net, C# and Python are currently supported). SMC is a console-based app written in Java which means SMC can run anywhere Java (1.4.1 or better) can run. The download package includes an example directory showing how SMC can used with C++, Java, Tcl (requires [incr Tcl] package), VB.Net, C# and Python. The examples range from trivial to GUI apps. SMC generated code is trivial to hook into existing Python applications: + SMC does not change your code or require you to change your code's logic. + SMC does not require that your class inherit or implement any SMC class. + SMC does not use state transition arrays or switch statements. An object simply instantiates the FSM and passing in its "self" to the FSM constructor. SMC is a mature software tool: 5 years old, in use around the world and used in production software for the telecommunications and financial exchanges. SMC generates code for C++, C#, Java, Tcl, VB.Net and now Python. It is an active open source project with new languages and features regularly added. ================================================================= How can I learn more? ================================================================= At http://smc.sourceforge.net. You can access the SMC Programmer's Manual there as well. While you're there, check out the SMC demo applet at http://smc.sourceforge.net/SmcDemo.htm. ================================================================= Where can I get it? ================================================================= SMC and the Programmer's Manual can be downloaded from http://sourceforge.net/projects/smc. You can also use this website to: + Ask questions (via the Public Forum's Help discussion) + Submit a bug. + Join a mailing list. + Access SMC documentation. + Access SMC's source code in the CVS repository. (Note: in order to make full use of SourceForge capabilities, you must be a SourceForge member. If you are not a member, head over to http://sourceforge.net/account/register.php and sign up. SourceForge membership is free - no money, no requirements and NO SPAM! Membership has its benefits.) If you have any problems, surf over to http://sourceforge.net/forum/forum.php?forum_id=27865 and report the problem. I will try and answer you via the Help forum as quickly as I can. Enjoy! Charles Rapp mailto:rapp at acm.org From smulloni at bracknell.smullyan.org Thu Jun 9 18:45:48 2005 From: smulloni at bracknell.smullyan.org (Jacob Smullyan) Date: Thu, 09 Jun 2005 11:45:48 -0500 Subject: ANN: PyDO-2.0a3 released Message-ID: I'm pleased to announce the release of PyDO-2.0a3, the fourth and probably last alpha in this series. What's New ---------- * By popular demand, the package name has been changed (for the last time!) to "pydo". * PyDO now supports optional introspection of table columns and unique constraints at runtime, and can optionally cache the data found to disk. * drivers for mssql and oracle have been added. * a new function, ``fetch``, for performing joins -- or more generally, obtaining potentially multiple PyDO objects and other data at once in a single query -- has been added, and facilities with a similar purpose in the previous alphas have been removed. * a number of bugs have been squashed. Acknowledgements ---------------- This release contains substantial contributions from Jonathan Ellis, Tim Golden, and Hamish Lawson. Thanks all! What it is ---------- PyDO is Drew Csillag's ORM (Object-Relational Mapper) database access library for Python that facilitates writing a Python database access layer. PyDO attempts to be simple, flexible, extensible, and unconstraining. PyDO 2 is a rewrite of the 1.x series distributed with SkunkWeb. It has several enhancements: * PyDO can now be used in multi-threaded or twisted-style asynchronous sitations, with or without a customizable connection pool. * PyDO objects are now dict subclasses, but also support attribute access to fields. * Projections -- subsets of the field list of a super-class -- are now supported by the PyDO.project() method. * Table attributes are now declared in a more concise way. * PyDO2 supports runtime table introspection. * Overall, the API has been tightened and the code restructured. It also has several limitations: * PyDO 2 is still alpha code. Bugs should be expected, and the API is not guaranteed to be stable. * PyDO 2 requires Python 2.4 or later. PyDO 2 currently supports PostgreSQL, MySQL, Sqlite, MSSQL, and Oracle, and support for other databases is planned. PyDO is dual GPL/BSD licensed. The source tarball is available at SkunkWeb's berlios site: https://developer.berlios.de/projects/skunkweb/ or, more directly: http://download.berlios.de/skunkweb/PyDO-2.0a3.tar.gz Questions pertaining to PyDO can be addressed to the SkunkWeb mailing list at sourceforge: http://lists.sourceforge.net/lists/listinfo/skunkweb-list Cheers, js -- Jacob Smullyan From titus at caltech.edu Thu Jun 9 20:09:48 2005 From: titus at caltech.edu (C. Titus Brown) Date: Thu, 09 Jun 2005 11:09:48 -0700 Subject: ANNOUNCE: twill v0.7.1, scriptable Web testing. Message-ID: ANNOUNCING twill v0.7.1. twill is a simple Web scripting language built on top of Python and John J. Lee's 'mechanize'. It's designed for automated testing of Web sites, but it should prove useful for anybody who needs to interact with Web sites (especially those using logins and cookies) on the command line or via a script. twill is a reimplementation of Cory Dodt's PBP. A twill script looks like this: # go to the /. login page go http://slashdot.org/login.pl # fill in the form fv 1 unickname test fv 1 upasswd test submit # ok, there's no such account ;). show error HTML. show --- This is the second public release of twill, version 0.7.1. (Tagline: "Most of the obvious bugs have been fixed.") I'm still looking for general feedback on usability, as well as suggestions on additional use cases. Download directly here: http://darcs.idyll.org/~t/projects/twill-0.7.1.tar.gz Documentation is online at http://www.idyll.org/~t/www-tools/twill.html --- Miscellaneous details: twill is implemented in Python and uses pyparsing and mechanize. In addition to the existing simple command language, twill can easily be extended with Python. twill also provides a fairly simple and well-documented wrapper around mechanize. twill scripts can be recorded with maxq, although scripts may require some hand tweaking at the moment. See the twill documentation for more information. twill does not understand JavaScript, I'm sorry to say. --- Notable bug fixes and features: * file upload & HTTP basic authentication; * submit w/o submit buttons now works; * better error reporting; * 'quiet', 'interact after scripts', and 'fail-immediately' command-line options. * '-' <== stdin on command line. From srackham at methods.co.nz Thu Jun 9 22:29:39 2005 From: srackham at methods.co.nz (Stuart Rackham) Date: Fri, 10 Jun 2005 08:29:39 +1200 Subject: ANN: AsciiDoc 7.0.0 released In-Reply-To: <4204241E.6010504@methods.co.nz> References: <4204241E.6010504@methods.co.nz> Message-ID: <42A8A6B3.40906@methods.co.nz> Lots of new and updated features (see http://www.methods.co.nz/asciidoc/CHANGELOG.html), including XHTML 1.1 backend, updated stylesheets. What is it? ----------- AsciiDoc is an uncomplicated text document format for writing short documents, articles, books and UNIX man pages. AsciiDoc files can be translated to HTML, XHTML (with CSS2) and DocBook (articles, books and refentry documents) using the asciidoc(1) command. AsciiDoc is configurable: both the AsciiDoc source file syntax and the backend output markups (which can be almost any type of SGML/XML markup) can be customized and extended by user. Requisites ---------- Python 2.3 or higher. Obtaining AsciiDoc ------------------ The latest AsciiDoc version, examples and online documentation can be downloaded from http://www.methods.co.nz/asciidoc/ AsciiDoc is also hosted at the SourceForge at http://sourceforge.net/projects/asciidoc/ Regards, Stuart -- Stuart Rackham From osvaldo.santana at indt.org.br Fri Jun 10 01:29:09 2005 From: osvaldo.santana at indt.org.br (osvaldo.santana@indt.org.br) Date: Thu, 9 Jun 2005 18:29:09 -0500 Subject: ANN: Python for Maemo released! Message-ID: We are proudly to announce the first release of Python for Maemo platform. This is in *alpha* stage yet. Bug fixes, wishes, suggestions, etc, are encouraged and welcomed. Please, contact us by mail (ok, bugzilla coming soon). * Ruda Moura * Osvaldo Santana PyGTK, PyGame, PyNumeric and some packages missing for SDL are also included. Please, visit: http://www.indt.org.br/maemo/index.html#python for more information. No reptiles were harmed in the making of these crafts. From webmaster at keyphrene.com Fri Jun 10 16:32:20 2005 From: webmaster at keyphrene.com (webmaster@keyphrene.com) Date: Fri, 10 Jun 2005 14:32:20 GMT Subject: ANN: Naja 1.2.3 is now available Message-ID: <42a9a3a8$0$28272$626a14ce@news.free.fr> Naja is a download manager and a website grabber written in Python/wxPython.You can add some plugins (newsreader, newsgroups grabber, FTP - FTPS - SFTP client,WebDAV client) and take control of your downloads from your office. Naja supports proxy (HTTP, HTTPS, FTP,SOCKS v4a, SOCKSv5), and use some authentication methods.The downloading maybe achieved by splitting the file being downloaded into several parts and downloading these parts at the same time (HTTP,HTTPS,FTP). Donwload speeds are increased by downloading the file from the mirrors sites,when the sites propose it. Others features: Csv filter Cheksums (CRC32, MD2, MD4, MD5, SHA, SHA1, MDC2, RMD160) Crypt (Only for the eXtended version) and Decrypt (AES, DES, 3DES ...) newsreader, newsposter (uue, yEnc) CGI & WebDAV Server Web Interface basic and digest authentication for client and server Compress and decompress (zip, tar.gz, tar.bz2) Picture viewer Text Editor Naja is available for download from the Keyphrene web site: http://www.keyphrene.com/products/naja From webmaster at keyphrene.com Fri Jun 10 16:33:30 2005 From: webmaster at keyphrene.com (webmaster@keyphrene.com) Date: Fri, 10 Jun 2005 14:33:30 GMT Subject: ANN: org.keyphrene 0.5.1 is now available Message-ID: <42a9a3ef$0$28272$626a14ce@news.free.fr> org.keyphrene is a Python binding for LibSSH2 and OpenSSL libraries. This toolkit for python featuring the following: SSH2 protocol (SFTP, SCP, SSH terminal ...) HMACs, message digests, ciphers (AES, DES, BlowFish), RSA, DSA, DH,SSL functionality yEnc encoder and decoder ... org.keyphrene is available for download from the Keyphrene web site: http://www.keyphrene.com/products/org.keyphrene From tim at zope.com Fri Jun 10 17:31:38 2005 From: tim at zope.com (Tim Peters) Date: Fri, 10 Jun 2005 11:31:38 -0400 Subject: ZODB 3.4 final released Message-ID: <20050610153141.294F73B805C@smtp.zope.com> I'm pleased to announce the release of ZODB 3.4 final. This corresponds to the ZODB that will ship in Zope 2.8. You can download a source tarball or Windows installer from: http://zope.org/Products/ZODB3.4 Note that there are two Windows installers, for Python 2.3 (2.3.5 is recommended) and Python 2.4 (2.4.1 is recommended). Only minor changes were made since ZODB 3.4b1. See the news file for details: http://zope.org/Products/ZODB3.4/NEWS.html Note that ZODB 3.4 does not support any version of Zope 2.6 or 2.7. Current Zope 2.8 and Zope 3 development use ZODB 3.4. The ZODB 3.3 line is officially retired (3.3.1 final was the last release in the 3.3 line). From kgmuller at xs4all.nl Sat Jun 11 15:36:47 2005 From: kgmuller at xs4all.nl (kgmuller) Date: Sat, 11 Jun 2005 15:36:47 +0200 Subject: ANN: SimPy 1.6 released Message-ID: <42aae8f1$0$70441$e4fe514c@news.xs4all.nl> We are happy to announce the release of SimPy 1.6. Background: ----------- SimPy is a process-based discrete-event simulation language based on standard Python and released under the GNU LGPL. It provides the modeller with components of a simulation model. These include processes, for active components like customers, messages, and vehicles, and resources, for passive components that form limited capacity congestion points like servers, checkout counters, and tunnels. It also provides monitor variables to aid in gathering statistics. A GUI framework for simulations is included, as is plotting of results. SimPy can be downloaded from the SimPy web-site: http://simpy.sourceforge.net. The new version: ---------------- Release 1.6 is a new production version of SimPy. It adds two new commands for modelling reneging (processes leaving a queue for a resource before acquiring the resource) to the SimPy API: - 'yield (request,self,resource),(hold,self,timeout)' for timeout-based reneging - 'yield (request,self,resource),(waitevent,self,list_of_events)' for reneging triggered by one out of a list of events Two models showing the use of these statement forms are included in the distribution. The SimPy Manual and the Cheatsheet have been restructured and edited significantly for greater clarity. SimPy 1.6 runs SimPy 1.5.x. scripts unchanged. Download, experiment and enjoy! Any feedback is welcome! Klaus G. Muller Tony Vignaux --------------------------------- PS: Want to know more about SimPy? Visit: SimPy web-site: http://simpy.sourceforge.net/ SimpPy wiki: http://www.mcs.vuw.ac.nz/cgi-bin/wiki/SimPy Need help with using SimPy? Send a message to the SimPy user group list: mailto://simpy-users at lists.sourceforge.net From aahz at pythoncraft.com Mon Jun 13 02:15:19 2005 From: aahz at pythoncraft.com (Aahz) Date: Sun, 12 Jun 2005 17:15:19 -0700 Subject: OSCON: Volunteer for Python? Message-ID: <20050613001518.GA28139@panix.com> I'm trying to organize a group of people to run a Python booth at OSCON so that people will see an alternative to Perl. ;-) I'd like at least ten or twelve volunteers so that nobody has to pull a long shift. If you're interested, please subscribe to the OSCON mailing list: http://mail.python.org/mailman/listinfo/oscon -- Aahz (aahz at pythoncraft.com) <*> http://www.pythoncraft.com/ f u cn rd ths, u cn gt a gd jb n nx prgrmmng. From ptmcg at austin.rr.com Mon Jun 13 05:55:30 2005 From: ptmcg at austin.rr.com (Paul McGuire) Date: 12 Jun 2005 20:55:30 -0700 Subject: ANN: pyparsing-1.3.1 released Message-ID: <1118634930.063101.63360@g49g2000cwa.googlegroups.com> Pyparsing is a pure-Python class library for quickly and easily constructing recursive-descent parsers. Pyparsing takes a "building-block" approach to parser construction, as opposed to code generation methods (such as lex/yacc) or pattern definition strings (such as regular expressions). Version 1.3.1 includes some minor enhancements, plus some performance improvements that can really improve performance for grammars that use the Combine class (often used in specifying floating point numbers). The 1.3.1 change notes are listed below. Download pyparsing at http://pyparsing.sourceforge.net. -- Paul McGuire Version 1.3.1 - June 12, 2005 ----------------------------- - Added markInputline() method to ParseException, to display the input text line location of the parsing exception. (Thanks, Stefan Behnel!) - Added setDefaultKeywordChars(), so that Keyword definitions using a custom keyword character set do not all need to add the keywordChars constructor argument (similar to setDefaultWhitespaceChars()). (suggested by rzhanka on the SourceForge pyparsing forum.) - Simplified passing debug actions to setDebugAction(). You can now pass 'None' for a debug action if you want to take the default debug behavior. To suppress a particular debug action, you can pass the pyparsing method nullDebugAction. - Refactored parse exception classes, moved all behavior to ParseBaseException, and the former ParseException is now a subclass of ParseBaseException. Added a second subclass, ParseFatalException, as a subclass of ParseBaseException. User-defined parse actions can raise ParseFatalException if a data inconsistency is detected (such as a begin-tag/end-tag mismatch), and this will stop all parsing immediately. (Inspired by e-mail thread with Michele Petrazzo - thanks, Michelle!) - Added helper methods makeXMLTags and makeHTMLTags, that simplify the definition of XML or HTML tag parse expressions for a given tagname. Both functions return a pair of parse expressions, one for the opening tag (that is, '') and one for the closing tag (''). The opening tagame also recognizes any attribute definitions that have been included in the opening tag, as well as an empty tag (one with a trailing '/', as in '' which is equivalent to ''). makeXMLTags uses stricter XML syntax for attributes, requiring that they be enclosed in double quote characters - makeHTMLTags is more lenient, and accepts single-quoted strings or any contiguous string of characters up to the next whitespace character or '>' character. Attributes can be retrieved as dictionary or attribute values of the returned results from the opening tag. - Added example SimpleCalc.py, a refinement on fourFn.py that adds an interactive session and support for variables. (Thanks, Steven Siew!) - Added performance improvement, up to 20% reduction! (Found while working with Wolfgang Borgert on performance tuning of his TTCN3 parser.) - And another performance improvement, up to 25%, when using scanString! (Found while working with Henrik Westlund on his C header file scanner.) - Updated UML diagrams to reflect latest class/method changes. From t.zito at biologie.hu-berlin.de Mon Jun 13 13:49:46 2005 From: t.zito at biologie.hu-berlin.de (Tiziano Zito) Date: Mon, 13 Jun 2005 13:49:46 +0200 Subject: ANN: MDP 1.1.0 Message-ID: <20050613114946.GA28483@itb.biologie.hu-berlin.de> MDP 1.1.0 --------- http://mdp-toolkit.sourceforge.net/ Modular toolkit for Data Processing (MDP) is a Python library to perform data processing. Already implemented algorithms include: Principal Component Analysis (PCA), Independent Component Analysis (ICA), Slow Feature Analysis (SFA), and Growing Neural Gas (GNG). MDP allows to combine different algorithms and other data processing elements (nodes) into data processing sequences (flows). Moreover, it provides a framework that makes the implementation of new algorithms easy and intuitive. MDP supports the most common numerical extensions to Python, currently Numeric, Numarray, SciPy. When used together with SciPy and the symeig package, MDP gives to the scientific programmer the full power of well-known C and FORTRAN data processing libraries. MDP helps the programmer to exploit Python object oriented design with C and FORTRAN efficiency. MDP has been written for research in neuroscience, but it has been designed to be helpful in any context where trainable data processing algorithms are used. Its simplicity on the user side together with the reusability of the implemented nodes could make it also a valid educational tool. Requirements: * Python >= 2.3 * one of the following Python numerical extensions: Numeric, Numarray, or SciPy. For optimal performance we recommend to use SciPy with LAPACK and ATLAS libraries, and to install the symeig module. (sorry for multiple posting) -- Tiziano Zito Institute for Theoretical Biology Humboldt-Universitaet zu Berlin Invalidenstrasse, 43 D-10115 Berlin, Germany http://itb.biologie.hu-berlin.de/~zito/ From stuff at mailzilla.net Mon Jun 13 15:57:11 2005 From: stuff at mailzilla.net (stuff@mailzilla.net) Date: 13 Jun 2005 06:57:11 -0700 Subject: ReleaseForge 0.8.0 - A SourceForge release tool Message-ID: <1118671031.473789.308690@g49g2000cwa.googlegroups.com> ReleaseForge 0.8.0 is now available for download at: http://releaseforge.sourceforge.net ------------------------------------------------------- About ReleaseForge 0.8.0: This latest version of ReleaseForge integrates Freshmeat functionality. SourceForge.net and Freshmeat.net project owners can now seemlessly release their projects on SourceForge and announce their release details on Freshmeat within a single intuitive GUI... ReleaseForge. ------------------------------------------------------- About ReleaseForge: ReleaseForge is a GUI application designed for project administrators and release engineers of projects that are hosted at SourceForge. It is intended to make it easier and faster to create a new release and edit existing releases rather than using the SourceForge Web interface. ReleaseForge streamlines the release effort by prompting you for information regarding your new release (version info, change log, release notes, files to include, etc). It then seamlessly negotiates with the SourceForge Web server, creating your release, posting your release notes/change log, uploading your files to the SourceForge FTP server, selecting the files for inclusion in your release on the SourceForge Web server, updating the file attributes of each of the files and then, if appropriate, notifying monitoring users of the new release. ------------------------------------------------------- http://releaseforge.sourceforge.net From reagle at mit.edu Mon Jun 13 16:09:08 2005 From: reagle at mit.edu (Joseph M . Reagle Jr.) Date: 13 Jun 2005 14:09:08 GMT Subject: Mindmapping bibliographies Message-ID: <42ad9384$0$575$b45e6eb0@senator-bedfellow.mit.edu> I am releasing a new tarball (and zipfile) of the fe mindmapping bibliographic tools. As explained in Extracting Bibliographies from Freemind, these are python scripts that are able to convert between Freemind mindmaps (using a few simple conventions) and bibliographic formats (i.e., OO.org CSV and bibtex). This approach is preferable to other bibliographic tools with limited/constrained forms for text entry. With fe one has a complete outline/map of texts, with figures, images, tables, links to sites, etc .; one can easily organize texts by topic or in separate mindmap files; and one can generate queries where each matching line has its appropriate citation with year and page number (e.g., "Giddens"). Unlike many bibliographic tools, it does not query on-line databases, but one can use such tools (e.g., tellico or refworks) to query and generate bibtex bibliographies and then use be.py to convert them to a mindmap. [1] http://reagle.org/joseph/blog/technology/python/freemind-extract-0.5 From philippe at philippecmartin.com Tue Jun 14 14:34:38 2005 From: philippe at philippecmartin.com (Philippe C. Martin) Date: Tue, 14 Jun 2005 12:34:38 GMT Subject: ANN: SC-Shool-ID Message-ID: Dear all, I am very happy to anounce the release of SnakeCard's School-ID, a school/university Smart Card based security solution that can be extended using Python or other languages that can "talk" to Python modules. The current release includes the following features: Student/Faculty Identification Data Security File Encryption PC Access E-purse Network Integration Grade Book Management Library Books Checkout Management Attendance Management Report Card Management Health/Emergency Information Retrieval The card can also be extended to areas such as web and building security. I invite you to look at the online presentations of the features at http://www.snakecard.com/page2.html where you may also download the brochure. Best regards, Philippe From ian at excess.org Tue Jun 14 15:16:56 2005 From: ian at excess.org (Ian Ward) Date: Tue, 14 Jun 2005 09:16:56 -0400 Subject: ANN: Urwid 0.8.8 with web_display Message-ID: <20050614131655.GA573@paintedblack> Announcing Urwid 0.8.8 ---------------------- Urwid home page: http://excess.org/urwid/ Tarball: http://excess.org/urwid/urwid-0.8.8.tar.gz or: https://excess.org/urwid/urwid-0.8.8.tar.gz Summary: ======== This release adds a new web_display module that can emulate a console display within a web browser window, as well as other enhancements. Live demo of the web_display module: http://live.excess.org/ New in this release: ==================== - New web_display module that emulates a console display within a web browser window. Application must be run as a CGI script under Apache. Supports font/window resizing, keepalive for long-lived connections, limiting maximum concurrent connections, polling and connected update methods. Tested with Mozilla Firefox and Internet Explorer. - New BoxAdapter class for using box widgets in places that usually expect flow widgets. - New curses_display input handling with better ESC key detection and broader escape code support. - Shortened resize timeout on gradual resize to improve responsiveness. About Urwid =========== Urwid is a curses-based UI library for Python. It features fluid interface resizing, CJK support, multiple text layouts, simple attribute markup, powerful scrolling list boxes, flexible edit boxes and HTML screen shots. Urwid is released under the GNU LGPL. From uche.ogbuji at fourthought.com Tue Jun 14 16:08:11 2005 From: uche.ogbuji at fourthought.com (Uche Ogbuji) Date: Tue, 14 Jun 2005 08:08:11 -0600 Subject: ANN: Amara XML Toolkit 1.0b3 Message-ID: <1118758091.428.70.camel@borgia> ANN: Amara XML Toolkit 1.0b3 http://uche.ogbuji.net/tech/4Suite/amara ftp://ftp.4suite.org/pub/Amara/ Changes in this release: * Add xml_set_attribute method to elements, in order to allow adding attributes with namespaces or with illegal Python names * Update manual source for markdown, and extensive improvements to the manual (with much help from Jamie Norrish) * Add xml_doc facility for nodes [1] * Fix support for output parameters in xml() * Add support for rules to pushbind * Improve XSLT support for bindery objects (see demo/bindery/xslt.py) * Bug fixes [1] http://lists.fourthought.com/pipermail/4suite/2005-June/013671.html Amara XML Toolkit is a collection of Python tools for XML processing-- not just tools that happen to be written in Python, but tools built from the ground up to use Python idioms and take advantage of the many advantages of Python. Amara builds on 4Suite [http://4Suite.org], but whereas 4Suite focuses more on literal implementation of XML standards in Python, Amara focuses on Pythonic idiom. It provides tools you can trust to conform with XML standards without losing the familiar Python feel. The components of Amara are: * Bindery: data binding tool (a very Pythonic XML API) * Scimitar: implementation of the ISO Schematron schema language for XML; converts Schematron files to Python scripts * domtools: set of tools to augment Python DOMs * saxtools: set of tools to make SAX easier to use in Python * Flextyper: user-defined datatypes in Python for XML processing There's a lot in Amara, but here are highlights: Amara Bindery: XML as easy as py -------------------------------- Bindery turns an XML document into a tree of Python objects corresponding to the vocabulary used in the XML document, for maximum clarity. For example, the document What do you mean "bleh" But I was looking for argument Becomes a data structure such that you can write binding.monty.python.spam In order to get the value "eggs" or binding.monty.python[1] In order to get the value "But I was looking for argument". There are other such tools for Python, and what makes Anobind unique is that it's driven by a very declarative rules-based system for binding XML to the Python data. You can register rules that are triggered by XPattern expressions specialized binding behavior. It includes XPath support and supports mutation. Bindery is very efficient, using SAX to generate bindings. Scimitar: Schematron for Pytthon -------------------------------- Merged in from a separate project, Scimitar is an implementation of ISO Schematron that compiles a Schematron schema into a Python validator script. You typically use scimitar in two phases. Say you have a schematron schema schema1.stron and you want to validate multiple XML files against it, instance1.xml, instance2.xml, instance3.xml. First you run schema1.stron through the scimitar compiler script, scimitar.py: scimitar.py schema1.stron The generated file, schema1.py, can be used to validate XML instances: python schema1.py instance1.xml Which emits a validation report. Amara DOM Tools: giving DOM a more Pythonic face ------------------------------------------------ DOM came from the Java world, hardly the most Pythonic API possible. Some DOM-like implementations such as 4Suite's Domlettes mix in some Pythonic idiom. Amara DOM Tools goes even further. Amara DOM Tools feature pushdom, similar to xml.dom.pulldom, but easier to use. It also includes Python generator-based tools for DOM processing, and a function to return an XPath location for any DOM node. Amara SAX Tools: SAX without the brain explosion ------------------------------------------------ Tenorsax (amara.saxtools.tenorsax) is a framework for "linerarizing" SAX logic so that it flows more naturally, and needs a lot less state machine wizardry. License ------- Amara is open source, provided under the 4Suite variant of the Apache license. See the file COPYING for details. Installation ------------ Amara requires Python 2.3 or more recent and 4Suite 1.0b1 or more recent. Make sure these are installed, unpack Amara to a convenient location and run python setup.py install -- Uche Ogbuji Fourthought, Inc. http://uche.ogbuji.net http://fourthought.com http://copia.ogbuji.net http://4Suite.org Use CSS to display XML, part 2 - http://www-128.ibm.com/developerworks/edu/x-dw-x-xmlcss2-i.html XML Output with 4Suite & Amara - http://www.xml.com/pub/a/2005/04/20/py-xml.html Use XSLT to prepare XML for import into OpenOffice Calc - http://www.ibm.com/developerworks/xml/library/x-oocalc/ Schema standardization for top-down semantic transparency - http://www-128.ibm.com/developerworks/xml/library/x-think31.html From rob.page at zope.com Tue Jun 14 18:34:05 2005 From: rob.page at zope.com (Rob Page) Date: Tue, 14 Jun 2005 12:34:05 -0400 Subject: ANNOUNCE: Zope Foundation Message-ID: <4207EF87-1B7B-40AA-B358-78C353F6DAA8@zope.com> Zope Corporation has begun the process of creating a Zope Foundation. The Zope Foundation will provide a mechanism for managing the various Zope projects (e.g., Zope 2, the Zope CMF, Zope 3, and other Zope community projects) in a vendor neutral way. The Foundation will have global copyrights over the Zope source code (to include Zope 2, Zope 3, and any other projects managed by the Foundation) as well as a limited, world-wide, non-exclusive, irrevocable, perpetual license to use the Zope trademarks (i.e., "Zope" and the "Circle Z") to brand its software releases. In addition, zope.org will be operated and maintained by the Foundation. The Foundation's governance mechanisms are being developed by taking the most appropriate ideas from other leading open source projects. These mechanisms are being developed and legally reviewed. We will launch the Foundation by or before the end of October 2005. We have scheduled an IRC session to answer questions from the community about the Foundation. IRC Session Summary: - Who: Zope Corp and Zope Community - What: IRC session to discuss the Zope Foundation - When: Tue, 21 Jun 2005 10a - 12p (US EDT) - Where: irc.freenode.net #zope Please send specific questions to: mailto:irc_agenda_topics at zope.com We hope to see you there! Regards, Rob -- Rob Page V: 540.361.1710 Zope Corporation F: 703.995.0412 From jacob at cd.chalmers.se Wed Jun 15 01:50:17 2005 From: jacob at cd.chalmers.se (Jacob Hallen) Date: 14 Jun 2005 23:50:17 GMT Subject: Europython update Message-ID: The Europython schedule was publised on the Europython website (http://www.europython.org) today. With five parallel sessions for half of the conference and four for the rest, we think we have the largest selection of Python and Zope talks ever. "Actually, we are more proud of the quality of the talk toipcs than of the quantity", says Paul Everitt, chairman of the Zope and Zope related track. "I'm very excited about the Tutorials track", says Harald Armin Massa. "We have the perfect setup for introducing new people to the world of Python. I can't wait to get started." "We hope that many more people will register, now that the schedule is set", comments Jacob Hallén, the conference head organiser. "We have had an unusual procedure, where the early registrants have told us their interests in the different talks. This has provided us with excellent data for scheduling. If people stick to what they have told us, there will be no overcrowding of rooms and fewer clashes beween interesting talks than usual. However, it has made the final scheduling fairly late, so people who have waited need to register in the next few days." "We still have a few double rooms at the conference accomodations" adds Laura Creighton. "The 4-bed rooms are all sold out." Apart from the Zope and Tutorials/Neopythe track, there are tracks for Education, Science, Refereed Papers, Business, Python Language, Python Frameworks, Social Skills/General Topics and a special Misfits track for stuff that would otherwise fall between the cracks. There is also OpenSpace, Lightning talks and Zope lightning talks. On top of this, we have 2 exciting Keynotes, featuring Guido van Rossum and Steve Pemberton, a pub, a conference dinner and lots of other excitement. Last day for preregistration is 20 June, if you are paying by credit card and 17 June if you are paying by SWIFT/IBAN. After that, your only option is on-site registration. The last day for ordering a conference T-shirt is 15 June. -- From ryan at rfk.id.au Wed Jun 15 16:44:40 2005 From: ryan at rfk.id.au (Ryan Kelly) Date: Thu, 16 Jun 2005 00:44:40 +1000 Subject: ANN: PyEnchant 1.1.3 Message-ID: <1118846680.1109.7.camel@mango> I'm pleased to announce the release of PyEnchant version 1.1.3. This release includes several new pieces of functionality as well as the usual bugfixes: * support for Python 2.2, if you have an updated distutils * use 'locale' module to look up current language if none specified * more and better regression tests * mark deprecated interfaces with warnings * removed parameter to Dict constructor, with lots of reshuffling behind the scenes * added DictNotFoundError as a subclass of Error * tested and tuned unicode support * bug fixes: * memory leak in DictWithPWL._free() * incorrect cache handling for PWLs Users of previous versions are encouraged to upgrade. There is also an updated and expanded tutorial available on the project website. Cheers, Ryan About: ------- Enchant (http://www.abisource.com/enchant/) is the spellchecking package behind the AbiWord word processor, is being considered for inclusion in the KDE office suite, and is proposed as a FreeDesktop.org standard. It's completely cross-platform because it wraps the native spellchecking engine to provide a uniform interface. PyEnchant brings this simple, powerful and flexible spellchecking engine to Python: http://pyenchant.sourceforge.net/ It also provides extended functionality including classes for tokenizing text and iterating over the spelling errors in it, as well as a ready-to-use text interface and wxPython dialog. Current Version: 1.1.3 Licence: LGPL with exemptions, as per Enchant itself -- Ryan Kelly http://www.rfk.id.au | This message is digitally signed. Please visit ryan at rfk.id.au | http://www.rfk.id.au/ramblings/gpg/ for details -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: This is a digitally signed message part Url : http://mail.python.org/pipermail/python-announce-list/attachments/20050616/d420c3e0/attachment.pgp From fuzzyman at gmail.com Wed Jun 15 17:07:40 2005 From: fuzzyman at gmail.com (Fuzzyman) Date: 15 Jun 2005 08:07:40 -0700 Subject: ANN: rest2web, firedrop2, textmacros Message-ID: <1118848060.837038.105150@g44g2000cwa.googlegroups.com> Threee related announcements : rest2web - latest update adds support for multiple translations firedrop2 - new documentation and updated reST support textmacros - the textmacros module is now available separrately, useful for systems like docutils First of all my all new `Firedrop2 Section`__ [#]_ is up and running. __ http://www.voidspace.org.uk/python/firedrop2/index.shtml .. [#] **Firedrop2** being the blogging tool for discerning pythoneers, written by `Hans Nowak`__. __ http://zephyrfalcon.org It includes my own distribution called *The Fuzzy Version*. This is a temporary fork whilst Hans approves the changes I've made. The main change is improved reST__ support. This requires docutils 0.3.9. __ http://docutils.sourceforge.net The new section has docs on templating, macros, options, plugins, and more. Secondly, I've broken out the *textmacros* module from the Firedrop project. This system is also used by rest2web__ and provides an easy way of extending docutils (or any other text based system). __ http://www.voidspace.org.uk/python/rest2web It maps markup like ``{name;param;param}`` to function calls and replaces the text with the output. It can also apply transformations to whole passages of text using a ``{+name} some text here {-name}`` syntax. See the `textmacros page`__ for download and use details. __ http://www.voidspace.org.uk/python/firedrop2/textmacros.shtml It's very simple though - an ``apply_macros.py`` script will process directories of files. I recommend using it on the *output* of docutils files [#]_. You can use it for adding {acro;acronyms;Like This}, smilies {sm;:evil:}, or even doing Python source coloring. .. [#] I've only ever used it with HTML - it may be just as useful with Laytex. It comes with an example macro file, and it's very simple to add new ones. For full docs see : `The Macro System`__ [#]_ __ http://www.voidspace.org.uk/python/firedrop2/macros.shtml .. [#] Part of the Firedrop docs. There is a new version of **rest2web** [#]_ available at Voidspace__, in SVN__, and at Sourceforge__. .. [#] We're now up to **0.2.2** __ http://www.voidspace.org.uk/python/rest2web __ https://svn.rest2web.python-hosting.com __ http://sourceforge.net/projects/rest2web This version adds something called *uservalues* to rest2web. It allows you to create values that can be used by the templating system, and to specify another file to be used as the body of the page. If that body uses your uservalues, it is easy to have several files using the same body - but inserting different text into it. One obvious use for this is having multiple translations of the same site. See `uservalues`__ for the lowdown and `translation pages`__ for a trivial example. The source of the example is included in the distribution - so you can see how it's done. __ http://www.voidspace.org.uk/python/rest2web/uservalues.html __ http://www.voidspace.org.uk/python/rest2web/translation/index.html For those who don't know, **rest2web** is a website templating system optimised for storing content in `reST format`__. It can autogenerate navigation links and sidebars for you, as well as sporting a flexible templating and macro system. See the `online docs`__ for more details than you could possibly want. __ http://docutils.sourceforge.net __ http://www.voidspace.org.uk/python/rest2web Best Regards, Fuzzyman http://www.voidspace.org.uk/python From freddie+usenet at madcowdisease.org Thu Jun 16 16:12:50 2005 From: freddie+usenet at madcowdisease.org (Freddie) Date: Thu, 16 Jun 2005 23:42:50 +0930 Subject: ANN: GallerPy 0.7.0 Message-ID: <42b188e9$0$8141$9a6e19ea@unlimited.newshosting.com> GallerPy is a fairly basic dynamic web gallery written in Python and uses the Python Imaging Library. It is licensed under the terms of the BSD License. Features include: * Fluid CSS layout * SCGI support * Other exciting stuff GallerPy is available for download from the MadCowDisease web site: http://www.madcowdisease.org/mcd/GallerPy Or via Subversion: svn://svn.madcowdisease.org/GallerPy/tags/0.7.0 svn://svn.madcowdisease.org/GallerPy/trunk (occasionally broken) Changes in this release: * Add 'show_header' and 'show_footer' options to control the output of HTML header and footer information. * Add 'root_local' and 'root_web' options to allow easier embedding of GallerPy into other applications. * Include .BMP and .JPE in the list of recognised extensions. * Include '.svn' in the default hide_dirs listing. * Strip empty "" tags from output. * Change how we do top padding of thumbnail images so it works in that nasty cow, Internet Explorer. RAGE. * Change the default header_file from index.txt to header.txt, since index.txt is a bit confusing. * Fix ShowError() not working properly if GallerPy is running embedded in something else. From aahz at pythoncraft.com Thu Jun 16 21:17:31 2005 From: aahz at pythoncraft.com (Aahz) Date: Thu, 16 Jun 2005 12:17:31 -0700 Subject: OSCON Early Reg Deadline: May 20 (this Monday!) Message-ID: <20050616191731.GA9106@panix.com> ----- Forwarded message from Gina Blaber ----- > From: Gina Blaber > Date: Thu, 16 Jun 2005 11:31:44 -0700 > Subject: [Oscon] please spread the word about OSCON early reg deadline > > Can all of you on the OSCON program committee please take a moment > today to either blog OSCON or mention it on some relevant lists? > Timing is important because the Early Registration period (with the > early reg discount) ends on Monday June 20 (end of day). It would be > great if you could mention the early reg deadline. > > Here are few relevant links to include, if you're so inclined: > > http://conferences.oreillynet.com/os2005/index_new.csp (OSCON home > page) > http://conferences.oreillynet.com/pub/w/38/speakers.html (OSCON > speakers) > http://conferences.oreillynet.com/cs/os2005/create/ord_os05 (OSCON > attendee registration page) > > Thanks, > > -Gina > > ------------------------------------------------------------------------ > ------- > Gina Blaber, Director of Conferences > O'Reilly Media, Inc. > 1005 Gravenstein Highway North Sebastopol, CA 95472 > gina at oreilly.com (707) 827-7185 http://conferences.oreilly.com ----- End forwarded message ----- -- Aahz (aahz at pythoncraft.com) <*> http://www.pythoncraft.com/ f u cn rd ths, u cn gt a gd jb n nx prgrmmng. From frank at niessink.com Thu Jun 16 22:30:30 2005 From: frank at niessink.com (Frank Niessink) Date: Thu, 16 Jun 2005 22:30:30 +0200 Subject: [ANN] Release 0.40 of Task Coach Message-ID: <42B1E166.4000807@niessink.com> Hi all, I'm pleased to announce release 0.40 of Task Coach. New in this release: Bug fixed: - Budget left was rendered incorrectly when over budget. Featuere added: - Tasks can belong to zero or more categories. Tasks can be viewed/hidden by category. What is Task Coach? Task Coach is a simple task manager that allows for hierarchical tasks, i.e. tasks in tasks. Task Coach is open source (GPL) and is developed using Python and wxPython. You can download Task Coach from: http://taskcoach.niessink.com https://sourceforge.net/projects/taskcoach/ A binary installer is available for Windows XP, in addition to the source distribution. Note that Task Coach is alpha software, meaning that it is wise to back up your task file regularly, and especially when upgrading to a new release. Cheers, Frank From stuff at mailzilla.net Fri Jun 17 04:53:43 2005 From: stuff at mailzilla.net (stuff@mailzilla.net) Date: 16 Jun 2005 19:53:43 -0700 Subject: ReleaseForge 0.8.5 - A SourceForge/Freshmeat release tool Message-ID: <1118976823.059752.311830@g49g2000cwa.googlegroups.com> ReleaseForge 0.8.5 is now available for immediate download at: http://releaseforge.sourceforge.net ------------------------------------------------------- About ReleaseForge 0.8.5: ReleaseForge 0.8.5 is a minor enhancement release. This version adds a new preferences dialog and allows the user to change the normal display font. Additionally, the FTP upload routine has been modified to report progress activity and the releaseWizard now displays this information as necessary. ------------------------------------------------------- About ReleaseForge: ReleaseForge is a GUI application designed for project administrators and release engineers of projects that are hosted at SourceForge. It is intended to make it easier and faster to create a new release and edit existing releases rather than using the SourceForge Web interface. ReleaseForge streamlines the release effort by prompting you for information regarding your new release (version info, change log, release notes, files to include, etc). It then seamlessly negotiates with the SourceForge Web server, creating your release, posting your release notes/change log, uploading your files to the SourceForge FTP server, selecting the files for inclusion in your release on the SourceForge Web server, updating the file attributes of each of the files and then, if appropriate, notifying monitoring users of the new release. ReleaseForge also includes support for posting Freshmeat news announcements and SourceForge project news announcements. ------------------------------------------------------- http://releaseforge.sourceforge.net From conversy at usenet-enac.fr Fri Jun 17 10:41:06 2005 From: conversy at usenet-enac.fr (Stephane Conversy) Date: Fri, 17 Jun 2005 10:41:06 +0200 Subject: [ANN] sauvage, an svg-to-opengl tookit for interaction Message-ID: Hello all, I wrote a python (with minimal C extensions) library that implements svg rendering using opengl, and it's designed with interaction as a main goal. It's rough, and I don't have much time to manage it, but if somebody wants to try it, feel free to do so (bazaar-style): http://www.tls.cena.fr/~conversy/research/sauvage/ have fun. (btw, it's LGPL'ed.) -- st?phane conversy http://www.tls.cena.fr/~conversy From peterbe at gmail.com Sat Jun 18 00:16:11 2005 From: peterbe at gmail.com (peterbe@gmail.com) Date: 17 Jun 2005 15:16:11 -0700 Subject: IssueTrackerProduct 0.6.9 Message-ID: <1119046571.528701.162950@g49g2000cwa.googlegroups.com> I've now released version 0.6.9 of the IssueTrackerProduct http://www.issuetrackerproduct.com/News/0.6.9 It's a issue/bug tracker built on top of Zope (Python) that is known for being simple but powerful. Homepage: www.issuetrackerproduct.com From vidon at ath.cena.fr Sat Jun 18 12:20:13 2005 From: vidon at ath.cena.fr (Guillaume Vidon) Date: Sat, 18 Jun 2005 12:20:13 +0200 Subject: ANN: Tkzinc 3.2.2 Message-ID: <42b3f4e9$0$28038$79c14f64@nan-newsreader-07.noos.net> I'm pleased to announce release 3.2.2 of Tkzinc. The binding for python is available for windows,msi for ActiveState Python (> 2.3), debian woody, deb and for other supported latforms (Other distro of Linux and macos X), sources. Tkzinc, under LGPL, is like the Tk.canvas, But unlike the canvas, TkZinc can structure the items in a hierarchy, has support for scaling and rotation, clipping can be set for sub-trees of the item hierarchy, supports muti-contour curves. It also provides functions from openGL (when compiled with it), such as color gradient, antialiasing, transparencies and triangles item. The item set is quite powerful and includes field specific items for Air Traffic systems. More informations on http://www.tkzinc.org Cheers Guillaume From me.simon at t-online.de Sat Jun 18 19:49:34 2005 From: me.simon at t-online.de (Simon) Date: Sat, 18 Jun 2005 19:49:34 +0200 Subject: ANN: PyOpenOffice 0.4 released Message-ID: <42B45EAE.3060609@t-online.de> New since release 0.31: * integration of an entire new, more XML based approach using Report Markup Language (RML) and XSLT: enhanced flexibility, better PDF's etc. * Ability to work with RML templates (similar to XSL-FO, but easier to use and more powerful) - use OOo as template generator. * Several bugfixes. * Read more about this in the new PyOpenOffice User Guide ################### PyOpenOffice 0.4 - The Document Tool The Usability of OpenOffice.org meeting the Power of XML Reporting Technologies - without installing OOo on your server What is PyOpenOffice? * It is an XML based reporting tool, using OpenOffice.org as an easy to use template generator * It is a class library, written in the Python Language. * It is a platform-independent command-line utility (most abilities of the commandline interface are still missing) What can PyOpenOffice do for you? Here some examples: * Make serial letters, lists and reports from templates in the SXW-Format and store them anew as SXW-Files * Replace pictures - generate catalogues, worksheets, photo galleries etc. from an SXW-Template. * Extract the pure text information from the SXW-Document and store it in a plain text file or a PDF-File * Transform SXW-Files to PDF-Files without installing OO - for example on a webserver * Use OOo as template generator and transform SXW files to RML (Report Markup Language) files * Make serial letters, lists and reports from templates in the RML format and transform them to PDF / HTML * Replace pictures - generate catalogues, worksheets, photo galleries etc. from an RML template and transform them to PDF / HTML ################### Have a look at: http://www.bezirksreiter.de/PyOpenOffice.htm Martin Simon From srichter at cosmos.phy.tufts.edu Sat Jun 18 20:59:05 2005 From: srichter at cosmos.phy.tufts.edu (Stephan Richter) Date: Sat, 18 Jun 2005 14:59:05 -0400 Subject: Zope 3.1.0 beta 1 released! Message-ID: <200506181459.05677.srichter@cosmos.phy.tufts.edu> The Zope 3 development team is proud to announce Zope 3.1.0 beta 1. Zope 3 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. It is in our opinion that Zope 3.1 is more than ready for production use, which is why we decided to drop the 'X' for experimental from the name. We will also continue to work on making the transition between Zope 2 and Zope 3 as smooth as possible. As a first step, Zope 2.8 includes Zope 3 features in the form of Five. Please test this release carefully and send us any feedback! In particular, we have tried very hard to keep backward-compatibility with the previous X3 3.0 release, so please let us know if the new release breaks your code. Downloads http://zope.org/Products/Zope3/ Installation instructions for both Windows and Un*x/Linux are now available in the top level 'README.txt' file of the distribution. The binary installer is recommended for Windows. Zope 3.1 requires Python 2.3.5 or 2.4.1 to run. You must also have zlib installed on your system. Most Important Changes Since 3.0 - New Pluggable Authentication Utility (PAU), which is similar in philosophy to the Zope 2 PAS. The following features are available in the in the basic PAU facility: + Credentials Plugins: Basic HTTP Auth, Session + Authenticator Plugins: Principal Folder, Group Folder For a detailed description of the pluggable authentication utility, see 'zope/app/authentication/README.txt'. - Major simplifications to the component architecture: + Removal of the concept of a service. All outstanding services were converted to utilities: Error Reporting, FSSync, Authentication. + Site Managers are global and local now; adapters and utilties are directly registered with the site manager. Now global and local component registration and lookup behaves very similar. + Local registrations can now only have two states: active and inactive. This simplified the code so much, that 'zope.app.utility', 'zope.app.registration' and 'zope.app.site' were all merged into 'zope.app.component'. + Implemented menus as utilities. The API also supports sub-menus now. + Implemented views as adapters. Skins and layers are now simply interfaces that the request provides. - Added an integer-id facility for assigning integer identifiers to objects. - Added basic catalog and index frameworks. - Added "sources", which are like vocabularies except that they support very large collections of values that must be searched, rather than browsed. - Created a new granting UI that allows advanced searching of principal sources. - Implemented a generic user preferences systsem that was designed to be easily used in TALES expressions and via Python code. Preferences can be edited via 'http://localhost:8080/++preferences++/'. A demo of the preferences can be found at:: http://svn.zope.org/Zope3/trunk/src/zope/app/demo/skinpref/ - ZCML now supports conditional directives using the 'zcml:condition' attribute. The condition is of the form "verb argument". Two verbs, 'have feature' and 'installed module' are currently implemented. Features can be declared via the 'meta:provides' directive. - Improved API doctool: Code Browser now shows interfaces, text files and ZCML files; the new Book Module compiles all available doctext files into an organized book; the new Type Module lets you browser all interface types and discover interfaces that provide types; views are shown in the interface details screen; views and adapters are categorized into specific, extended and generic; user preferences allow you to customize certain views; 3rd party modules can now be added to the Code Browser. - Improved I18n-based number and datetime formatting by integrating 'pytz' for timezone support, implementing all missing format characters, and reinterpreting the ICU documentation to correctly parse patterns. - Added '++debug++' traversal adapter that allows you to turn on debugging flags in 'request.debug'. Currently the following flags are defined: source, tal, errors. - Improved logout support. - Added the HTTP request recorder, which lets you inspect raw HTTP requests and responses. It can be used to create functional doctests without requiring third-party tools such as TCPWatch. - Developed a generic 'browser:form' directive. It is pretty much the same as the 'browser:editform' directive, except that the data is not stored on some context or adapted context but sent as a dictionary to special method (by default). For a complete list of changes see the 'CHANGES.txt' file. Resources - "Zope 3 Development Web Site":http://dev.zope.org/Zope3 - "Zope 3 Dev Mailing List":http://mail.zope.org/mailman/listinfo/zope3-dev - "Zope 3 Users Mailing List":http://mail.zope.org/mailman/listinfo/zope3-users - IRC Channel: #zope3-dev at irc.freenode.net Acknowledgments Thanks goes to everyone that contributed. Jim Fulton, Fred Drake, Philipp von Weitershausen, Stephan Richter, Gustavo Niemeyer, Daniel Nouri, Volker Bachschneider, Roger Ineichen, Shane Hathaway, Bjorn Tillenius, Garrett Smith, Marius Gedminas, Stuart Bishop, Dominik Huber, Dmitry Vasiliev, Gary Poster, Julien Anguenot Regards, Stephan From me.simon at t-online.de Sun Jun 19 14:51:16 2005 From: me.simon at t-online.de (Simon) Date: Sun, 19 Jun 2005 14:51:16 +0200 Subject: ANN: PyOpenOffice 0.4 released Message-ID: <42B56A44.3010200@t-online.de> New since release 0.31: * now licensed with the Lesser GNU Public License (LGPL) * integration of an entire new, more XML based approach using Report Markup Language (RML) and XSLT: enhanced flexibility, better PDF's etc. * Ability to work with RML templates (similar to XSL-FO, but easier to use and more powerful) - use OOo as template generator. * Several bugfixes. * Read more about this in the new PyOpenOffice User Guide ################### PyOpenOffice 0.4 - The Document Tool The Usability of OpenOffice.org meeting the Power of XML Reporting Technologies - without installing OOo on your server What is PyOpenOffice? * It is an XML based reporting tool, using OpenOffice.org as an easy to use template generator * It is a class library, written in the Python Language. * It is a platform-independent command-line utility (most abilities of the commandline interface are still missing) What can PyOpenOffice do for you? Here some examples: * Make serial letters, lists and reports from templates in the SXW-Format and store them anew as SXW-Files * Replace pictures - generate catalogues, worksheets, photo galleries etc. from an SXW-Template. * Extract the pure text information from the SXW-Document and store it in a plain text file or a PDF-File * Transform SXW-Files to PDF-Files without installing OO - for example on a webserver * Use OOo as template generator and transform SXW files to RML (Report Markup Language) files * Make serial letters, lists and reports from templates in the RML format and transform them to PDF / HTML * Replace pictures - generate catalogues, worksheets, photo galleries etc. from an RML template and transform them to PDF / HTML ################### Have a look at: http://www.bezirksreiter.de/PyOpenOffice.htm Martin Simon From tijsvd at xs4all.nl Sun Jun 19 18:46:04 2005 From: tijsvd at xs4all.nl (Tijs van Dam) Date: Sun, 19 Jun 2005 18:46:04 +0200 Subject: ANNOUNCE: btfserv 1.0.0 released (first release) Message-ID: <42b5a14c$0$23970$e4fe514c@news.xs4all.nl> Hello all, I'm pleased to give to the world version 1.0.0 of btfserv. This is the first public release. License is GPL. Btfserv is a file server program based on the BitTorrent protocol, written in Python. It can be used to publish a complete directory tree with a single command. It is a metainfo-generator, tracker program, torrent seeder and http directory in one. For details and instructions, see: http://www.xs4all.nl/~tijsvd/btfserv/index.html Enjoy, Tijs van Dam tijsvd at xs4all.nl From frank at niessink.com Mon Jun 20 23:42:25 2005 From: frank at niessink.com (Frank Niessink) Date: Mon, 20 Jun 2005 23:42:25 +0200 Subject: [ANN] Release 0.41 of Task Coach Message-ID: <42B73841.5050300@niessink.com> Hi all, I'm pleased to announce release 0.41 of Task Coach. New in this release: Features added: - URL's (including mailto) in task and effort descriptions are clickable. - Tasks can have a priority. Priorities are integer numbers: the higher the number, the higher the priority. Default priority is 0. Negative numbers are allowed. Features changed: - Default start date of new subtasks is today (used to be the start date of the parent task) - When 'sort by status first' is on, active tasks always come before inactive tasks which in turn come before completed tasks, regardless of whether the sort order is ascending or descending. What is Task Coach? Task Coach is a simple task manager that allows for hierarchical tasks, i.e. tasks in tasks. Task Coach is open source (GPL) and is developed using Python and wxPython. You can download Task Coach from: http://taskcoach.niessink.com https://sourceforge.net/projects/taskcoach/ A binary installer is available for Windows XP, in addition to the source distribution. Note that Task Coach is alpha software, meaning that it is wise to back up your task file regularly, and especially when upgrading to a new release. Cheers, Frank From jacob at cd.chalmers.se Tue Jun 21 02:06:44 2005 From: jacob at cd.chalmers.se (Jacob Hallen) Date: 21 Jun 2005 00:06:44 GMT Subject: Europython 2005 - last call Message-ID: Europython 2005 will start on Monday 27 June! If you haven't preregistered for Europython 2005, you still have a few hours to do so. You can register and pay by credit card until 21 June 18.00 CEST. Payment by SWIFT/IBAN is closed, since we would not receive your payment before the conference starts. On-site registration is also possible, though at a somewhat higher cost. Pyment on-site is in cash, SEK or Euro. Please bring even money since we can't have a big pile of change at the conference. All details are found at http://www.europython.org. -- From gvanrossum at gmail.com Tue Jun 21 12:11:48 2005 From: gvanrossum at gmail.com (Guido van Rossum) Date: Tue, 21 Jun 2005 03:11:48 -0700 Subject: Deadline Extension: DLS05: ACM Dynamic Languages Symposium In-Reply-To: <2CCDEFC5-B0D5-4A33-A71E-3AC073084FA6@ulb.ac.be> References: <2CCDEFC5-B0D5-4A33-A71E-3AC073084FA6@ulb.ac.be> Message-ID: ---------- Forwarded message ---------- From: Roel Wuyts Date: Jun 21, 2005 1:39 AM Subject: Deadline Extension: DLS05: ACM Dynamic Languages Symposium To: Guido Van Rossum ACM Dynamic Languages Symposium 2005 October 18, 2005 San Diego, California (co-located with OOPSLA'05) URL: http://decomp.ulb.ac.be/events/dls05/ ----------- Deadline Extension ----------- Several authors have requested an extension to the deadline. In order to ensure fairness and consistency we have therefore decided to extend the deadline with one more week. As noted below, papers are now due by the 3rd July 2005. ----------- Abstract ----------- In industry, static languages (such as Java, C++ and C#) are much more widely used than their dynamic counterparts (like Scheme, CLOS, Python, Self, Perl, php or Smalltalk). So it appears as though dynamic language concepts were forgotten and lost the race. But this is not the case. Java and C#, the latest mainstream static languages, popularized to a certain extent dynamic language features such as garbage collection, portability and (limited forms of) reflection. In the near future, we expect this dynamicity to increase even further. E.g., it is getting clearer year after year that pervasive computing is becoming the rule and that concepts such as meta programming, reflection, mobility, dynamic reconfigurability and distribution are becoming increasingly popular. All of these features are the domain of dynamic languages, and hence it is only logical that more dynamic language concepts have to be taken up by static languages, or that dynamic languages can make a breakthrough. Currently, the dynamic language community is fragmented, split over a multitude of paradigms (from functional over logic to object- oriented), languages and syntaxes. This fragmentation severely hinders research as well as acceptance, and results in either language wars or, even worse, language ignorance. The goal of this symposium is to provide a highly visible, international forum for researchers working on dynamic features and languages. We explicitly invite submissions from all kinds of paradigms (object-oriented, functional, logic, ...), as can be seen from the structure of the program committee. DLS'05 invites the submission of technical papers presenting research results or experience in all areas related to dynamic languages or dynamic language concepts. Research papers should describe work that advances the current state of the art. Experience reports should be of broad interest and should describe insights gained from the practical application of dynamic languages that are of use to other researchers and practitioners. The program committee will evaluate each contributed research and experience paper based on its relevance, significance, clarity, originality, and correctness. Areas of interests include, but are not limited to: - closures - delegation - actors, active objects - constraint systems - mixins and traits - reflection and meta-programming - aspect-oriented programming in dynamic environments - language symbiosis and multi-paradigm languages - experience reports on successful application of dynamic languages Papers will be published in the ACM Digital Library. ------------------------------- Submission Guidelines ------------------------------- Papers have to be submitted through our online submission system: http://decomp.ulb.ac.be:8008/servlets/continue/submit.ss . All papers must be submitted electronically in PDF format (or PostScript, if you do not have access to PDF-producing programs, but this is not recommended). Submissions, as well as final versions, must be formatted to conform to ACM Proceedings requirements: Nine point font on ten point baseline, two columns per page, each column 3.33 inches wide by 9 inches tall, with a column gutter of 0.33 inches, etc. See the ACM Proceedings Guidelines. You can save preparation time by using one of the templates from that page. Note that MS Word documents must be converted to PDF before being submitted. Page limit is 16 pages in the style mentioned above. Please notice that only original papers are accepted that have not been published and are not under review for publication elsewhere. Papers violating this rule will be rejected without review, and the other forum will be informed of the situation. ---------------------- Important Dates ---------------------- - Firm deadline for receipt of submissions: July 3rd, 2005 (extended from June 24th) - Notification of acceptance or rejection: August 5th 2005 - Final version for the proceedings: To be decided --------------------------- Program Committee --------------------------- George Bosworth Gilad Bracha Will Clinger Wolfgang De Meuter Stephane Ducasse Matthew Flat Gopal Gupta Robert Hirschfeld Dan Ingalls Yukihiro Matsumoto Mark Miller Eliot Miranda Philippe Mougin Oscar Nierstrasz Dave Thomas David Ungar Guido Van Rossum Peter Van Roy Jon L White (G) Roel Wuyts (Chair) -- Roel Wuyts DeComp roel.wuyts at ulb.ac.be Universit? Libre de Bruxelles http://homepages.ulb.ac.be/ ~rowuyts/ Belgique Vice-President of the European Smalltalk Users Group: www.esug.org -- --Guido van Rossum (home page: http://www.python.org/~guido/) From edreamleo at charter.net Tue Jun 21 14:31:53 2005 From: edreamleo at charter.net (Edward K. Ream) Date: Tue, 21 Jun 2005 07:31:53 -0500 Subject: Leo 4.3.1 released Message-ID: Leo 4.3.1 final is now available at http://sourceforge.net/projects/leo/ This is a bug fix release, with the following new features: - Added support for Tk resource files. - Added support for coloring the PL/SQL language. - All Mark commands are now undoable. - Improved Resize To Screen command. What people are saying about Leo -------------------------------- "Still using Leo as the world's best outliner and not for programming tasks (I'm in love for more than 2 years now :-)" -- Franz Geiger More quotes at: http://webpages.charter.net/edreamleo/testimonials.html What makes Leo special? ----------------------- - Leo's outlines add a new dimension to programming. - Leo shows you your code and data the way _you_ want to see them. - Leo extends, completes and simplifies literate programming. - Leo's script buttons bring scripts to data. What is Leo? ------------ - A programmer's editor, an outlining editor and a flexible browser. - A literate programming tool, compatible with noweb and CWEB. - A data organizer and project manager. Leo provides multiple views of projects within a single outline. - Fully scriptable using Python. Leo saves its files in XML format. - Portable. leo.py is 100% pure Python. - Open Software, distributed under the Python License. Leo requires Python 2.2.1 or above and tcl/tk 8.4 or above. Leo works on Linux, Windows and MacOs X. Links: ------ Leo: http://webpages.charter.net/edreamleo/front.html Home: http://sourceforge.net/projects/leo/ Download: http://sourceforge.net/project/showfiles.php?group_id=3458 CVS: http://sourceforge.net/cvs/?group_id=3458 Quotes: http://webpages.charter.net/edreamleo/testimonials.html Edward -------------------------------------------------------------------- Edward K. Ream email: edreamleo at charter.net Leo: Literate Editor with Outlines Leo: http://webpages.charter.net/edreamleo/front.html -------------------------------------------------------------------- From michael at stroeder.com Tue Jun 21 17:13:24 2005 From: michael at stroeder.com (=?ISO-8859-1?Q?Michael_Str=F6der?=) Date: Tue, 21 Jun 2005 17:13:24 +0200 Subject: ANN: python-ldap-2.0.8 Message-ID: <42B82E94.60905@stroeder.com> Find a new 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.8 2005-06-22 at Linuxtag 2005, Karlsruhe, Germany Changes since 2.0.7: * Preliminary support for receiving LDAP controls added. Contributor: - Andreas Ames Lib:/ - Added classes in module ldif to ldif.__all__ to fix from ldif import * - Removed BitString syntax from ldap.schema.models.NOT_HUMAN_READABLE_LDAP_SYNTAXES since the LDAP encoding is in fact human-readable - ldapurl.LDAPUrlExtension.unparse() outputs empty string if LDAPUrlExtension.exvalue is None - Added ldap.controls.SimplePagedResultsControl ---------------------------------------------------------------- Released 2.0.7 2005-04-29 Changes since 2.0.6: * Added preliminary support for sending LDAP controls with a request. Contributors: - Deepak Giridharagopal - Ingo Steuwer (Receiving controls in LDAP results still not supported.) Modules: * LDAPObject.c: removed l_ldap_manage_dsa_it() * LDAPObject.c: Added missing #ifdef around l_ldap_passwd() for compability with older OpenLDAP libs. Lib:/ * New algorithm in ldap.schema.tokenizer.split_tokens() contributed by Wido Depping which is more robust when parsing very broken schema elements (e.g. Oracle's OID). * Fixed argument list (position of timeout) when calling LDAPObject.search_ext_s() from search_st() and search_s(). * LDAPObject.search_ext_s() correctly calls search_ext_s() now. * Re-implemented LDAPObject.manage_dsa_it() without calling _ldap. From mmckerns at its.caltech.edu Wed Jun 22 02:46:50 2005 From: mmckerns at its.caltech.edu (Michael McKerns) Date: Tue, 21 Jun 2005 17:46:50 -0700 (PDT) Subject: pygrace Message-ID: Python bindings for grace, based on Nathan Gray's gracePlot http://www.its.caltech.edu/~mmckerns/software.html # Versions 0.2: 06/20/05 put() & get() now handle sequence elements, slices, etc. 0.1: 06/17/05 initial; python bindings for grace interactive grace prompt embed python into grace 'plot' for 2-D line plots 'histoPlot' for 2-D histograms --- Mike McKerns California Institute of Technology http://www.its.caltech.edu/~mmckerns From mmckerns at its.caltech.edu Wed Jun 22 02:48:23 2005 From: mmckerns at its.caltech.edu (Michael McKerns) Date: Tue, 21 Jun 2005 17:48:23 -0700 (PDT) Subject: pyIDL In-Reply-To: References: Message-ID: Python bindings for IDL, based on Andrew McMurry's python-IDL http://www.its.caltech.edu/~mmckerns/software.html # Versions 0.1: 06/21/05 initial; python bindings for RSI's IDL interactive IDL prompt --- Mike McKerns California Institute of Technology http://www.its.caltech.edu/~mmckerns From Marc.Poinot at onera.fr Wed Jun 22 10:32:39 2005 From: Marc.Poinot at onera.fr (Marc Poinot) Date: Wed, 22 Jun 2005 10:32:39 +0200 Subject: New hosting for pyCGNS and pyC5 Message-ID: <42B92227.4B9A6894@onera.fr> Now the CGNS/Python module and the CGNS/XML proposal and C5 compiler are hosted at Berlios. This site is extended and some pages are still imcomplete. However the downloads are up-to-date. http://cgns-python.berlios.de/index.html The old site will be removed this summer. -MP- ----------------------------------------------------------------------- Marc POINOT Alias: marcvs Email: poinot at onera.fr ONERA -MFE/DSNA/ELSA Tel: 01.46.73.42.84 Info: elsa-info at onera.fr 29, Div. Leclerc Fax: 01.46.73.41.66 Site: 92322 Chatillon FRANCE Project: elsA Web: http://www.onera.fr From Marc.Poinot at onera.fr Wed Jun 22 10:45:02 2005 From: Marc.Poinot at onera.fr (Marc Poinot) Date: Wed, 22 Jun 2005 10:45:02 +0200 Subject: pyMpCCI v0.1 Message-ID: <42B9250E.C8DA6FA6@onera.fr> ----------------------------------------------------------------------- pyMpCCI v0.1 This package is a Python wrapper for MpCCI code-coupling product (see http://www.scai.fraunhofer.de/mpcci.html) MpCCI is a code-coupling system built on top of MPI. It insures data translation between structured meshes and unstructured meshes codes. For example when you build an application involving a structured mesh fluid solver (CFD) and an unstructured mesh structure solver (CSM). With this pyMpCCI module, your target application can be written in Python. It is useful for people using MpCCI and Python ;) ----------------------------------------------------------------------- Package pyMpCCI uses Numeric Python. The package is still incomplete and the doc is limited to the cover pages. If you want more info, including the package download, please go to: http://cgns-python.berlios.de/index.html -MP- ----------------------------------------------------------------------- Marc POINOT Alias: marcvs Email: poinot at onera.fr ONERA -MFE/DSNA/ELSA Tel: 01.46.73.42.84 Info: elsa-info at onera.fr 29, Div. Leclerc Fax: 01.46.73.41.66 Site: 92322 Chatillon FRANCE Project: elsA Web: http://www.onera.fr From python-url at phaseit.net Wed Jun 22 18:02:48 2005 From: python-url at phaseit.net (Simon Brunning) Date: Wed, 22 Jun 2005 16:02:48 +0000 Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Jun 22) Message-ID: QOTW: "Python is more concerned with making it easy to write good programs than difficult to write bad ones." - Steve Holden "Scientists build so that they can learn. Programmers and engineers learn so that they can build." - Magnus Lycka "It happens that old Java programmers make one module per class when they start using Python. That's more or less equivalent of never using more than 8.3 characters in filenames in modern operating systems, or to make a detour on your way to work because there used to be a fence blocking the shortest way a long time ago." - Magnus Lycka Python doesn't currently have a case or switch statement. Case blocks are easily simulated with if, elif, and else, but would Python's readability benefit from having it built in?: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/29e45afc78adcd15 A Podcast worth listening to at last. Guido speaks on Python's history and community: http://www.itconversations.com/shows/detail545.html http://www.itconversations.com/shows/detail559.html If your class implements __eq__ but not __ne__, (a = b) does not imply !(a != b). If this something that should be fixed, or just a "gotcha"? http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/f6e0986b2c0f01c0 John Machin instructively analyzes several of Excel's defects as a data-management vehicle, obliquely highlighting Python's Zen. Tim Roberts follows up with a small but potentially crucial addendum pertinent, among others, to those who deal with USA "zip codes": http://groups-beta.google.com/group/comp.lang.python/index/browse_frm/thread/d14b13c8bc6e8515/ Recent (unreleased) work on distutils allows you to automatically upload packages to PyPI: http://www.amk.ca/diary/archives/003937.html Text files and line endings; Python helps you out on Windows, which can be a little confusing: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/2d3f61b949bca0e9 Kalle wants to protect his instance attributes. He's warned off the idea, but at the same time, alex23 demonstrates an interesting way of doing it using properties(): http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/9f7c29fed95d7586 Creating a Python iterator by wrapping any callable: http://bob.pythonmac.org/archives/2005/06/14/python-iterators-and-sentinel-values/ Richard Lewis wants resumable exceptions. Python doesn't have them, but Peter Hansen shows him how to achieve what he wants, and Willem shows us how resumable exceptions work in Lisp: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/e3dafce228dd4258 Jan Danielsson is confused about the difference between __str__ and __repr__, and what they are both for: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/b37f1e3fae1154d6 The Kamaelia Framework; communicating with and linking Python generators: http://www.bbc.co.uk/rd/pubs/whp/whp113.shtml Ron Adams proposes an "also" block to be executed if a "for" loop's "else" block isn't, and more controversially, that the "else" block's meaning be switched: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/b15de260c5ca02e0 How you convince your marketing drones that switching from Python to Java would be A Bad Thing? http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/5b6d1ff54640e9b1 Why should an ambitious 14-year-old look at Python? (And why source-code hiding is a waste of time.) http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/107a4da1dd45b915 ======================================================================== Everything Python-related you want is probably one or two clicks away in these pages: Python.org's Python Language Website is the traditional center of Pythonia http://www.python.org Notice especially the master FAQ http://www.python.org/doc/FAQ.html PythonWare complements the digest you're reading with the marvelous daily python url http://www.pythonware.com/daily Mygale is a news-gathering webcrawler that specializes in (new) World-Wide Web articles related to Python. http://www.awaretek.com/nowak/mygale.html While cosmetically similar, Mygale and the Daily Python-URL are utterly different in their technologies and generally in their results. For far, FAR more Python reading than any one mind should absorb, much of it quite interesting, several pages index much of the universe of Pybloggers. http://lowlife.jp/cgi-bin/moin.cgi/PythonProgrammersWeblog http://www.planetpython.org/ http://mechanicalcat.net/pyblagg.html comp.lang.python.announce announces new Python software. Be sure to scan this newsgroup weekly. http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python.announce Steve Bethard, Tim Lesher, and Tony Meyer continue the marvelous tradition early borne by Andrew Kuchling, Michael Hudson and Brett Cannon of intelligently summarizing action on the python-dev mailing list once every other week. http://www.python.org/dev/summary/ The Python Package Index catalogues packages. http://www.python.org/pypi/ The somewhat older Vaults of Parnassus ambitiously collects references to all sorts of Python resources. http://www.vex.net/~x/parnassus/ Much of Python's real work takes place on Special-Interest Group mailing lists http://www.python.org/sigs/ The Python Business Forum "further[s] the interests of companies that base their business on ... Python." http://www.python-in-business.org Python Success Stories--from air-traffic control to on-line match-making--can inspire you or decision-makers to whom you're subject with a vision of what the language makes practical. http://www.pythonology.com/success The Python Software Foundation (PSF) has replaced the Python Consortium as an independent nexus of activity. It has official responsibility for Python's development and maintenance. http://www.python.org/psf/ Among the ways you can support PSF is with a donation. http://www.python.org/psf/donate.html Kurt B. Kaiser publishes a weekly report on faults and patches. http://www.google.com/groups?as_usubject=weekly%20python%20patch Cetus collects Python hyperlinks. http://www.cetus-links.org/oo_python.html Python FAQTS http://python.faqts.com/ The Cookbook is a collaborative effort to capture useful and interesting recipes. http://aspn.activestate.com/ASPN/Cookbook/Python Among several Python-oriented RSS/RDF feeds available are http://www.python.org/channews.rdf http://bootleg-rss.g-blog.net/pythonware_com_daily.pcgi http://python.de/backend.php For more, see http://www.syndic8.com/feedlist.php?ShowMatch=python&ShowStatus=all The old Python "To-Do List" now lives principally in a SourceForge reincarnation. http://sourceforge.net/tracker/?atid=355470&group_id=5470&func=browse http://python.sourceforge.net/peps/pep-0042.html The online Python Journal is posted at pythonjournal.cognizor.com. editor at pythonjournal.com and editor at pythonjournal.cognizor.com welcome submission of material that helps people's understanding of Python use, and offer Web presentation of your work. del.icio.us presents an intriguing approach to reference commentary. It already aggregates quite a bit of Python intelligence. http://del.icio.us/tag/python *Py: the Journal of the Python Language* http://www.pyzine.com Archive probing tricks of the trade: http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python&num=100 http://groups.google.com/groups?meta=site%3Dgroups%26group%3Dcomp.lang.python.* Previous - (U)se the (R)esource, (L)uke! - messages are listed here: http://www.ddj.com/topics/pythonurl/ (requires subscription) http://groups-beta.google.com/groups?q=python-url+group:comp.lang.python*&start=0&scoring=d& http://purl.org/thecliff/python/url.html (dormant) or http://groups.google.com/groups?oi=djq&as_q=+Python-URL!&as_ugroup=comp.lang.python Suggestions/corrections for next week's posting are always welcome. E-mail to should get through. To receive a new issue of this posting in e-mail each Monday morning (approximately), ask to subscribe. Mention "Python-URL!". -- The Python-URL! Team-- Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and sponsor the "Python-URL!" project. From rwgk at yahoo.com Thu Jun 23 20:25:59 2005 From: rwgk at yahoo.com (rwgk@yahoo.com) Date: 23 Jun 2005 11:25:59 -0700 Subject: ANN: Boost.Python bindings for OpenGL Message-ID: <1119551159.509320.42910@z14g2000cwz.googlegroups.com> The GL Toolbox (gltbx) provides Python bindings for OpenGL GL_* and GLU_* defines, and gl*() and glu*() functions. The original C interfaces are preserved as much as possible. Except for the functions that may appear between calls of glBegin() and glEnd(), OpenGL errors are converted to Python exceptions. All functions support Python keyword arguments. For more information visit: http://cci.lbl.gov/gltbx/ From smulloni at bracknell.smullyan.org Fri Jun 24 19:11:27 2005 From: smulloni at bracknell.smullyan.org (Jacob Smullyan) Date: Fri, 24 Jun 2005 12:11:27 -0500 Subject: PyDO 2.0b0 released Message-ID: I'm pleased to announce the release of PyDO 2.0b0, the first beta release of the 2.0 series. What's New ---------- * a new test framework and test suite. * fixes for several bugs uncovered by the new tests. * one new function, "autoschema", which can generate basic PyDO wrappers for every table in a schema -- useful for quick scripts. * The api is now declared stable. What it is ---------- PyDO is Drew Csillag's ORM (Object-Relational Mapper) database access library for Python that facilitates writing a Python database access layer. PyDO attempts to be simple, flexible, extensible, and unconstraining. PyDO 2 is a rewrite of the 1.x series distributed with SkunkWeb. It has several enhancements: * PyDO can now be used in multi-threaded or twisted-style asynchronous sitations, with or without a customizable connection pool. * PyDO objects are now dict subclasses, but also support attribute access to fields. * Projections -- subsets of the field list of a super-class -- are now supported by the PyDO.project() method. * Table attributes are now declared in a more concise way. * PyDO2 supports runtime table introspection. * Overall, the API has been tightened and the code restructured. PyDO 2 requires Python 2.4 or later. It currently supports PostgreSQL, MySQL, Sqlite, MSSQL, and Oracle, and support for other databases is planned. PyDO is dual GPL/BSD licensed. The source tarball is available at SkunkWeb's berlios site: https://developer.berlios.de/projects/skunkweb/ or, more directly: http://download.berlios.de/skunkweb/PyDO-2.0b0.tar.gz Questions pertaining to PyDO can be addressed to the SkunkWeb mailing list at sourceforge: http://lists.sourceforge.net/lists/listinfo/skunkweb-list Cheers, js -- Jacob Smullyan -- Jacob Smullyan From baas at ira.uka.de Fri Jun 24 23:12:47 2005 From: baas at ira.uka.de (Matthias Baas) Date: Fri, 24 Jun 2005 23:12:47 +0200 Subject: ANN: Python Computer Graphics Kit v2.0.0alpha4 Message-ID: The fourth alpha release of version 2 of the Python Computer Graphics Kit is available at http://cgkit.sourceforge.net What is it? ----------- The Python Computer Graphics Kit is a generic 3D package written in C++ and Python that can be used for a variety of domains such as scientific visualization, photorealistic rendering, Virtual Reality or even games. The package contains a number of generic modules that can be useful for any application that processes 3D data. This includes new types such as vectors, matrices and quaternions. Furthermore, the package can read and store 3D models in memory where they can be manipulated by Python programs. The kit comes with tools that can be used to display the scene either interactively or by rendering it offline via a RenderMan renderer. What's new? ----------- - The render tool can now also be used to bake texture maps (using the technique from the Stupid RAT Tricks 2001 by J. Litt and D. Goldman, so no special renderer functionality required). A tutorial is available on the web site: http://cgkit.sourceforge.net/tutorials/baking/baking.html) - PLY import and export using Diego Nehab's RPly library - A Maya .ma file parser and partial support for importing the contents of a .ma file (polys without history, cameras, lights, skeletons, ...) - The near and far plane of the cameras can now be controlled explicitly - New RMLightSource object that wraps a RenderMan light source shader - A new MEL script to export ASF/AMC files + several other enhancements and bugfixes (see changelog) Windows binary versions are available for Python 2.3 and Python 2.4. For more information, visit: http://cgkit.sourceforge.net - Matthias - From steven.bethard at gmail.com Sun Jun 26 00:34:10 2005 From: steven.bethard at gmail.com (Steven Bethard) Date: Sat, 25 Jun 2005 16:34:10 -0600 Subject: python-dev Summary for 2005-05-01 through 2005-05-15 Message-ID: [The HTML version of this Summary is available at http://www.python.org/dev/summary/2005-05-01_2005-05-15.html] ===================== Summary Announcements ===================== ---------------------------------------------- PEP 340 Episode 2: Revenge of the With (Block) ---------------------------------------------- This fornight's Python-Dev was dominated again by another nearly 400 messages on the topic of anonymous block statements. The discussion was a little more focused than the last thanks mainly to Guido's introduction of `PEP 340`_. Discussion of this PEP resulted in a series of other PEPs, including * `PEP 342`_: Enhanced Iterators, which broke out into a separate PEP the parts of `PEP 340`_ that allowed code to pass values into iterators using ``continue EXPR`` and yield-expressions. * `PEP 343`_: Anonymous Block Redux, a dramatically simplified version of `PEP 340`_, which removed the looping nature of the anonymous blocks and the injection-of-exceptions semantics for generators. * `PEP 3XX`_: User Defined ("with") Statements, which proposed non-looping anonymous blocks accompanied by finalization semantics for iterators and generators in for loops. Various details of each of these proposals are discussed below in the sections: 1. `Enhanced Iterators`_ 2. `Separate APIs for Iterators and Anonymous Blocks`_ 3. `Looping Anonymous Blocks`_ 4. `Loop Finalization`_ At the time of this writing, it looked like the discussion was coming very close to a final agreement; `PEP 343`_ and `PEP 3XX`_ both agreed upon the same semantics for the block-statement, the keyword had been narrowed down to either ``do`` or ``with``, and Guido had agreed to add back in to `PEP 343`_ some form of exception-injection semantics for generators. .. _PEP 340: http://www.python.org/peps/pep-0340.html .. _PEP 342: http://www.python.org/peps/pep-0342.html .. _PEP 343: http://www.python.org/peps/pep-0343.html .. _PEP 3XX: http://members.iinet.net.au/~ncoghlan/public/pep-3XX.html [SJB] ========= Summaries ========= ------------------ Enhanced Iterators ------------------ `PEP 340`_ incorporated a variety of orthogonal features into a single proposal. To make the PEP somewhat less monolithic, the method for passing values into an iterator was broken off into `PEP 342`_. This method includes: * updating the iterator protocol to use .__next__() instead of .next() * introducing a new builtin next() * allowing continue-statements to pass values into iterators * allowing generators to receive values with a yield-expression Though these features had seemed mostly uncontroversial, Guido seemed inclined to wait for a little more motivation from the co-routiney people before accepting the proposal. Contributing threads: - `Breaking off Enhanced Iterators PEP from PEP 340 `__ [SJB] ------------------------------------------------ Separate APIs for Iterators and Anonymous Blocks ------------------------------------------------ `PEP 340`_ had originally proposed to treat the anonymous block protocol as an extension of the iterator protocol. Several problems with this approach were raised, including: * for-loops could accidentally be used with objects requiring blocks, meaning that resources would not get cleaned up properly * blocks could be used instead of for-loops, violating TOOWTDI As a result, both `PEP 343`_ and `PEP 3XX`_ propose decorators for generator functions that will wrap the generator object appropriately to match the anonymous block protocol. Generator objects without the proposed decorators would not be usable in anonymous block statements. Contributing threads: - `PEP 340 -- loose ends `__ - `PEP 340 -- concept clarification `__ [SJB] ------------------------ Looping Anonymous Blocks ------------------------ A few issues arose as a result of `PEP 340`_'s formulation of anonymous blocks as a variation on a loop. Because the anonymous blocks of `PEP 340`_ were defined in terms of while-loops, there was some discussion as to whether they should have an ``else`` clause like Python ``for`` and ``while`` loops do. There didn't seem to be one obvious interpretation of an ``else`` block though, so Guido rejected the ``else`` block proposal. The big issue with looping anonymous blocks, however, was in the handling of ``break`` and ``continue`` statements. Many use cases for anonymous blocks did not require loops. However, because `PEP 340`_ anonymous blocks were implemented in terms of loops, ``break`` and ``continue`` acted much like they would in a loop. This meant that in code like:: for item in items: with lock: if handle(item): break the ``break`` statement would only break out of the anonymous block (the ``with`` statement) instead of breaking out of the for-loop. This pretty much shot-down `PEP 340`_; there were too many cases where an anonymous block didn't look like a loop, and having it behave like one would have been a major stumbling block in learning the construct. As a result, both `PEP 343`_ and `PEP 3XX`_ were proposed as non-looping versions of `PEP 340`_. Contributing threads: - `PEP 340: Else clause for block statements `__ - `PEP 340 -- loose ends `__ - `PEP 340 -- concept clarification `__ - `PEP 340: Breaking out. `__ - `PEP 340: Non-looping version (aka PEP 310 redux) `__ - `PEP 340 - Remaining issues `__ - `PEP 340: Deterministic Finalisation (new PEP draft, either a competitor or update to PEP 340) `__ - `Merging PEP 310 and PEP 340-redux? `__ - `PEP 343 - Abstract Block Redux `__ [SJB] ----------------- Loop Finalization ----------------- Greg Ewing pointed out that a generator with a yield inside a block-statement would require additional work to guarantee its finalization. For example, if the generator:: def all_lines(filenames): for name in filenames: with open(name) as f: for line in f: yield line were used in code like:: for line in all_lines(filenames): if some_cond(line): break then unless the for-loop performed some sort of finalization on the all_lines generator, the last-opened file could remain open indefinitiely. As a result, `PEP 3XX`_ proposes that for-loops check for a __finish__() method on their iterators, and if one exists, call that method when the for-loop completes. Generators like all_lines above, that put a yield inside a block-statement, would then acquire a __finish__() method that would raise a TerminateIteration exception at the point of the last yield. The TerminateIteration exception would thus cause the block-statement to complete, guaranteeing that the generator was properly finalized. Contributing threads: - `PEP 340 - For loop cleanup, and feature separation `__ - `PEP 340: Deterministic Finalisation (new PEP draft, either a competitor or update to PEP 340) `__ - `PEP 343 - Abstract Block Redux `__ [SJB] ---------------------------- Breaking out of Nested Loops ---------------------------- As a result of some of the issues of looping anonymous blocks, a few threads discussed options for breaking out of nested loops. These mainly worked by augmenting the ``break`` statement with another keyword (or keywords) that would indicate which loop to break out of. One proposal suggested that ``break`` be followed with ``for`` or ``while`` to indicate which loop to break out of. But ``break for`` would only really be useful in a while-loop nested within a for-loop, and ``break while`` would only really be useful in a for-loop nested within a while-loop. That is, because loops could only be named by type, the proposal was only useful when loops of different types were mixed. This suggestion was thus discarded as not being general enough. A few other suggestions were briefly discussed: adding labels to loops, using an integer to indicate which "stack level" to break at, and pushing breaks onto a "break buffer", but Guido killed the discussion, saying, `"Stop all discussion of breaking out of multiple loops. It ain't gonna happen before my retirement." `__ Contributing threads: - `PEP 340: Breaking out. `__ - `PEP 340: Deterministic Finalisation (new PEP draft, either a competitor or update to PEP 340) `__ [SJB] ------------------------ The future of exceptions ------------------------ Ka-Ping Yee suggested that instead of passing (type, value, traceback) tuples in exceptions it would be better to put the traceback in value.traceback. Guido had also suggested this (in the `PEP 340`_ murk) but pointed out that this would not work as long as string exceptions exist (as there is nowhere to put the traceback). Guido noted that there are no concrete plans as to when string exceptions will be deprecated and removed (other than in 3.0 at the latest); he indicated that it could be sooner, if someone wrote a PEP with a timeline (e.g. deprecated in 2.5, gone in 2.6). Brett C. volunteered to write a PEP targetted at Python 3000 covering exception changes (base inheritance, standard attributes (e.g. .traceback), reworking the built-in exception inheritance hierarchy, and the future of bare except statements). Contributing threads: - `Tidier Exceptions `__ .. _PEP 340: http://www.python.org/peps/pep-0340.html [TAM] ----------------------------------- Unifying try/except and try/finally ----------------------------------- Reinhold Birkenfeld submitted a Pre-PEP to allow both except and finally clauses in try blocks. For example, a construction like:: try: except Ex1: else: finally: would be exactly the same as the legacy:: try: try: except Ex1: else: finally: Guido liked this idea (so much that he wanted to accept it immediately), and recommended that it was checked in as a PEP. However, Tim Peters pointed out that this functionality was removed from Python (by Guido) way back in 0.9.6, seemingly because there was confusion about exactly when the finally clause would be called (explicit is better than implicit!). Guido clarified that control would only pass forward, and indicated that he felt that since this is now available in Java (and C#) fewer people would be confused. The main concern about this change was that, while the cost was low, it seemed to add very little value. Contributing threads: - `Pre-PEP: Unifying try-except and try-finally `__ [TAM] ----------------- Decorator Library ----------------- Michele Simionato asked whether a module for commonly used decorators, or utilities to create decorators, was planned. Raymond Hettinger indicated that while this was likely in the long term, he felt that it was better if these first evolved via wikis, recipes, or mailing lists, so that a module would only be added once best practices and proven winners had emerged. In the meantime, there is both a `Decorator Library wiki page`_ and you can try out `Michele's library`_ [zip]. To assist with decorator creation, Michele would like a facility to copy a function. Phillip J. Eby noted that the informally-discussed proposal is to add a mutable __signature__ to functions to assist with signature preserving decorators. Raymond suggested a patch adding a __copy__ method to functions or a patch for the copy module, and Michele indicated that he would also like to subclass FunctionType with an user-defined __copy__ method. Contributing threads: - `my first post: asking about a "decorator" module `__ - `The decorator module `__ .. _Decorator Library wiki page: http://www.python.org/moin/PythonDecoratorLibrary .. _Michele's library: http://www.phyast.pitt.edu/~micheles/python/decorator.zip [TAM] --------------------- Hooking Py_FatalError --------------------- Errors that invoke Py_FatalError generally signify that the internal state of Python is in such a poor state that continuing (including raising an exception) is impossible or unwise; as a result, Py_FatalError outputs the error to stderr and calls abort(). m.u.k. would like to have a callback to hook Py_FatalError to avoid this call to abort(). The general consensus was that effort would be better directed to fixing the causes of fatal errors than hooking Py_FatalError. m.u.k.'s use case was for generating additional logging information; a `callback system patch`_ (revised by James William Pye) is available for those interested. Contributing threads: - `Need to hook Py_FatalError `__ .. _callback system patch: http://python.org/sf/1195571 ------------------- Chaining Exceptions ------------------- Ka-Ping Yee suggested adding information to exceptions when they are raised in the handler for another exception. For example:: def a(): try: raise AError except: raise BError raises an exception which is an instance of BError. This instance could have an attribute which is instance of AError, containing information about the original exception. Use cases include catching a low-level exception (e.g. socket.error) and turning it into a high-level exception (e.g. an HTTPRequestFailed exception) and handling problems in exception handling code. Guido liked the idea, and discussion fleshed out a tighter definition; however it was unclear whether adding this now was feasible - this would perhaps be best added in Python 3000. Contributing threads: - `Chained Exceptions `__ [TAM] ------------------------ Py_UNICODE Documentation ------------------------ Nicholas Bastin started a series of threads discussing an inconsistency between the Py_UNICODE docs and the behavior on some RedHat systems. The docs say that Py_UNICODE should be an alias for wchar_t when wchar_t is available and has 16 bits, but Nick found that pyconfig.h still reports PY_UNICODE_TYPE as wchar_t, even when PY_UNICODE_SIZE is 4. An extensive discussion between Nick, Marc-Andre Lemburg and Martin v. L?wis suggests that the possible Python-internal representations for Py_UNICODE are: * 4-byte wchar_t encoded as UTF-32 (UCS-4) * 2-byte wchar_t encoded as UTF-16 * unsigned short encoded as UTF-16 Python defaults to 2-byte mode, using wchar_t if available (and has 16 bits) and using unsigned short otherwise. You may end up with the 4-byte mode if TCL was built for UCS-4 (this overrides the defaults) or if you explicitly request it with --enable-unicode=ucs4. To get UCS-2 when TCL was built for UCS-4, you must explicitly request --enable-unicode=ucs2. Of course, this will mean that _tkinter can't be built anymore. Also noted by this discussion was that even with --enable-unicode=ucs2, Python continues to support surrogate pairs in the BMP. So for example, even with a UCS-2 build, u"\U00012345" encodes as a sequence of two characters; it does not produce a UnicodeError. At the time of this posting, it did not appear that there was a documentation patch available yet. Contributing threads: - `Py_UNICODE madness `__ - `New Py_UNICODE doc `__ - `Python's Unicode width default (New Py_UNICODE doc) `__ [SJB] =============== Skipped Threads =============== - `Keyword for block statements `__ - `PEP 340 - possible new name for block-statement `__ - `Generating nested data structures with blocks `__ - `PEP 340 -- Clayton's keyword? `__ - `PEP 340: Only for try/finally? `__ - `2 words keyword for block `__ - `anonymous blocks `__ - `"begin" as keyword for pep 340 `__ - `PEP 340: propose to get rid of 'as' keyword `__ - `PEP 340 keyword: after `__ - `PEP 340 keyword: Extended while syntax `__ - `PEP 340 - Remaining issues - keyword `__ - `PEP 340: Examples as class's. `__ - `Proposed alternative to __next__ and __exit__ `__ - `"with" use case: exception chaining `__ - `PEP 343: Resource Composition and Idempotent __exit__ `__ - `[Python-checkins] python/nondist/peps pep-0343.txt, 1.8, 1.9 `__ - `the current behavior of try: ... finally: `__ - `a patch to inspect and a non-feature request `__ - `Python 2.4 set objects and cyclic garbage `__ - `CHANGE BayPIGgies: May *THIRD* Thurs `__ - `Python continually calling sigprocmask() on FreeBSD 5 `__ - `Weekly Python Patch/Bug Summary `__ - `problems with memory management `__ - `Adding DBL_MANTISSA and such to Python `__ - `python-dev Summary for 2005-04-16 through 2005-04-30 [draft] `__ - `Python Language track at Europython, still possibilities to submit talks `__ - `(no subject) `__ - `Kernel panic writing to /dev/dsp with cmpci driver `__ ======== Epilogue ======== ------------ Introduction ------------ This is a summary of traffic on the `python-dev mailing list`_ from May 01, 2005 through May 15, 2005. It is intended to inform the wider Python community of on-going developments on the list on a semi-monthly basis. An archive_ of previous summaries is available online. An `RSS feed`_ of the titles of the summaries is available. You can also watch comp.lang.python or comp.lang.python.announce for new summaries (or through their email gateways of python-list or python-announce, respectively, as found at http://mail.python.org). This is the third summary written by the python-dev summary cabal of Steve Bethard, Tim Lesher, and Tony Meyer. To contact us, please send email: - Steve Bethard (steven.bethard at gmail.com) - Tim Lesher (tlesher at gmail.com) - Tony Meyer (tony.meyer at gmail.com) Do *not* post to comp.lang.python if you wish to reach us. The `Python Software Foundation`_ is the non-profit organization that holds the intellectual property for Python. It also tries to advance the development and use of Python. If you find the python-dev Summary helpful please consider making a donation. You can make a donation at http://python.org/psf/donations.html . Every penny helps so even a small donation with a credit card, check, or by PayPal helps. -------------------- Commenting on Topics -------------------- To comment on anything mentioned here, just post to `comp.lang.python`_ (or email python-list at 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`_! ------------------------- How to Read the Summaries ------------------------- 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 for 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. Please note that this summary is written using reStructuredText_. Any unfamiliar punctuation is probably markup for reST_ (otherwise it is probably regular expression syntax or a typo =); you can safely ignore it. I do suggest learning reST, though; it's simple and is accepted for `PEP markup`_ and can be turned into many different formats like HTML and LaTeX. Unfortunately, even though reST is standardized, the wonders of programs that like to reformat text do not allow me to 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`_. .. _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 .. _c.l.py: .. _comp.lang.python: http://groups.google.com/groups?q=comp.lang.python .. _PEP Markup: http://www.python.org/peps/pep-0012.html .. _Docutils: http://docutils.sf.net/ .. _reST: .. _reStructuredText: http://docutils.sf.net/rst.html .. _PSF: .. _Python Software Foundation: http://python.org/psf/ .. _last summary: http://www.python.org/dev/summary/ .. _original text file: http://www.python.org/dev/summary/2005-05-01_2005-05-15.ht .. _archive: http://www.python.org/dev/summary/ .. _RSS feed: http://www.python.org/dev/summary/channews.rdf From steven.bethard at gmail.com Sun Jun 26 00:36:25 2005 From: steven.bethard at gmail.com (Steven Bethard) Date: Sat, 25 Jun 2005 16:36:25 -0600 Subject: python-dev Summary for 2005-05-16 through 2005-05-31 Message-ID: [The HTML version of this Summary is available at http://www.python.org/dev/summary/2005-05-16_2005-05-31.html] ===================== Summary Announcements ===================== ---- QOTF ---- We have our first ever Quote of the Fortnight (QOTF), thanks to the wave of discussion over `PEP 343`_ and Jack Diederich: I still haven't gotten used to Guido's heart-attack inducing early enthusiasm for strange things followed later by a simple proclamation I like. Some day I'll learn that the sound of fingernails on the chalkboard is frequently followed by candy for the whole class. See, even threads about anonymous block statements can end happily! ;) .. _PEP 343: http://www.python.org/peps/pep-0343.html Contributing thread: - `PEP 343 - Abstract Block Redux `__ [SJB] ------------------ First PyPy Release ------------------ The first release of `PyPy`_, the Python implementation of Python, is finally available. The PyPy team has made impressive progress, and the current release of PyPy now passes around 90% of the Python language regression tests that do not depend deeply on C-extensions. The PyPy interpreter still runs on top of a CPython interpreter though, so it is still quite slow due to the double-interpretation penalty. .. _PyPy: http://codespeak.net/pypy Contributing thread: - `First PyPy (preview) release `__ [SJB] -------------------------------- Thesis: Type Inference in Python -------------------------------- Brett C. successfully defended his masters thesis `Localized Type Inference of Atomic Types in Python`_, which investigates some of the issues of applying type inference to the current Python language, as well as to the Python language augmented with type annotations. Congrats Brett! .. _Localized Type Inference of Atomic Types in Python: http://www.drifty.org/thesis.pdf Contributing thread: - `Localized Type Inference of Atomic Types in Python `__ [SJB] ========= Summaries ========= --------------------------- PEP 343 and With Statements --------------------------- The discussion on "anonymous block statements" brought itself closer to a real conclusion this fortnight, with the discussion around `PEP 343`_ and `PEP 3XX`_ converging not only on the semantics for "with statements", but also on semantics for using generators as with-statement templates. To aid in the adaptation of generators to with-statements, Guido proposed adding close() and throw() methods to generator objects, similar to the ones suggested by `PEP 325`_ and `PEP 288`_. The throw() method would cause an exception to be raised at the point where the generator is currently suspended, and the close() method would use throw() to signal the generator to clean itself up by raising a GeneratorExit exception. People seemed generally happy with this proposal and -- believe it or not -- we actually went an entire eight days without an email about anonymous block statements!! It looked as if an updated `PEP 343`_, including the new generator functionality, would be coming early the next month. So stay tuned. ;) .. _PEP 288: http://www.python.org/peps/pep-0288.html .. _PEP 325: http://www.python.org/peps/pep-0325.html .. _PEP 343: http://www.python.org/peps/pep-0343.html .. _PEP 3XX: http://www.python.org/peps/pep-0346.html Contributing threads: - `PEP 343 - Abstract Block Redux `__ - `Simpler finalization semantics (was Re: PEP 343 - Abstract Block Redux) `__ - `Example for PEP 343 `__ - `Combining the best of PEP 288 and PEP 325: generator exceptions and cleanup `__ - `PEP 343 - New kind of yield statement? `__ - `PEP 342/343 status? `__ - `PEP 346: User defined statements (formerly known as PEP 3XX) `__ [SJB] ----------- Decimal FAQ ----------- Raymond Hettinger suggested that a decimal FAQ would shorten the module's learning curve, and drafted one. There were no objections, but few adjustments (to the list, at least). Raymond will probably make the FAQ available at some point. Contributing thread: - `Decimal FAQ `__ [TAM] --------------------- Constructing Decimals --------------------- A long discussion took place regarding whether the decimal constructor should or should not respect context settings, and whether matching the standard (and what the standard says) should be a priority. Raymond Hettinger took the lead in the status-quo (does not) corner, with Tim Peters leading the opposition. Tim and Guido eventually called in the standard's expert, Mike Cowlishaw. He gave a very thorough explanation of the history behind his decisions in this matter, and eventually weighed in on Raymond's side. As such, it seems that the status-quo has won (not that it was a competition, of course ). For those that need to know, the unary plus operation, as strange as it looks, forces a rounding using the current context. As such, context-aware construction can be written:: val = +Decimal(string_repr) Contributing threads: - `Adventures with Decimal `__ - `Decimal construction `__ - `[Python-checkins] python/nondist/peps pep-0343.txt, 1.8, 1.9 `__ [TAM] ------------------------ Handling old bug reports ------------------------ Facundo Batista continued with his progress checking the open bug reports, looking for bugs that are specific to 2.2.1 or 2.2.2. The aim is to verify whether these bugs exist in current CVS, or are old-of-date. There are no longer any bugs in the 2.1.x or 2.2.x categories, and Facundo wondered whether removing those categories would be a good idea. The consensus was that there was no harm in leaving the categories there, but that changing the text to indicate that those versions are unmaintained would be a good idea. Raymond Hettinger reminded us that care needs to be taken in closing old bug reports. Particularly, a bug report should only be closed if (a) there are no means of reproducing the error, (b) it is impossible to tell what the poster meant, and they are no longer contactable, or (c) the bug is no longer present in current CVS. Contributing threads: - `Deprecating old bugs, now from 2.2.2 `__ - `Closing old bugs `__ - `Old Python version categories in Bug Tracker `__ [TAM] ------------------ Exception chaining ------------------ Ka-Ping Yee has submitted `PEP 344`_, which is a concrete proposal for exception chaining. It proposes three standard attributes on trackback objects: __context__ for implicit chaining, __cause__ for explicit chaining, and __traceback__ to point to the traceback. Guido likes the motivation and rationale, but feels that the specification needs more work. A lot of discussion about the specifics of the PEP took place, and Ka-Ping is working these into a revised version. One of the major questions was whether there is no need for both __context__ and __cause__ (to differentiate between explicit and implicit chaining). Guido didn't feel that there was, but others disagreed. Discussion branched off into whether which attributes should be double-underscored, or not. Guido's opinion is that it depends who "owns" the namespace, and with "magic" behaviour caused (or indicated) by the presence of the attribute. He felt that the underscores in the proposed exception attributes should remain. .. _PEP 344: http://www.python.org/peps/pep-0344.html Contributing threads: - `PEP 344: Exception Chaining and Embedded Tracebacks `__ - `PEP 344: Implicit Chaining Semantics `__ - `PEP 344: Explicit vs. Implicit Chaining `__ - `Tidier Exceptions `__ [TAM] ------------------------------------ Adding content to exception messages ------------------------------------ Nicolas Fleury suggested that there should be a standard method of adding information to an existing exception (to re-raise it). Nick Coghlan suggested that this would be reasonably simple to do with PEP 344, if all exceptions were also new-style classes, but Nicolas indicated that this wouldn't work in some cases. Contributing threads: - `Adding content to exception messages `__ [TAM] =============== Skipped Threads =============== - `Loading compiled modules under MSYS/MingGW? `__ - `RFC: rewrite fileinput module to use itertools. `__ - `Multiple interpreters not compatible with current thread module `__ - `Weekly Python Patch/Bug Summary `__ - `Request for dev permissions `__ - `python-dev Summary for 2005-05-01 through 2005-05-15 [draft] `__ - `AST manipulation and source code generation `__ - `Weekly Python Patch/Bug Summary `__ - `AST branch patches (was Re: PEP 342/343 status?) `__ - `[Python-checkins] python/dist/src/Lib/test test_site.py, 1.6, 1.7 `__ - `Split MIME headers into multiple lines near a space `__ ======== Epilogue ======== ------------ Introduction ------------ This is a summary of traffic on the `python-dev mailing list`_ from May 16, 2005 through May 31, 2005. It is intended to inform the wider Python community of on-going developments on the list on a semi-monthly basis. An archive_ of previous summaries is available online. An `RSS feed`_ of the titles of the summaries is available. You can also watch comp.lang.python or comp.lang.python.announce for new summaries (or through their email gateways of python-list or python-announce, respectively, as found at http://mail.python.org). This is the fourth summary written by the python-dev summary cabal of Steve Bethard, Tim Lesher, and Tony Meyer. To contact us, please send email: - Steve Bethard (steven.bethard at gmail.com) - Tim Lesher (tlesher at gmail.com) - Tony Meyer (tony.meyer at gmail.com) Do *not* post to comp.lang.python if you wish to reach us. The `Python Software Foundation`_ is the non-profit organization that holds the intellectual property for Python. It also tries to advance the development and use of Python. If you find the python-dev Summary helpful please consider making a donation. You can make a donation at http://python.org/psf/donations.html . Every penny helps so even a small donation with a credit card, check, or by PayPal helps. -------------------- Commenting on Topics -------------------- To comment on anything mentioned here, just post to `comp.lang.python`_ (or email python-list at 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`_! ------------------------- How to Read the Summaries ------------------------- 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 for 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. Please note that this summary is written using reStructuredText_. Any unfamiliar punctuation is probably markup for reST_ (otherwise it is probably regular expression syntax or a typo =); you can safely ignore it. I do suggest learning reST, though; it's simple and is accepted for `PEP markup`_ and can be turned into many different formats like HTML and LaTeX. Unfortunately, even though reST is standardized, the wonders of programs that like to reformat text do not allow me to 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`_. .. _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 .. _c.l.py: .. _comp.lang.python: http://groups.google.com/groups?q=comp.lang.python .. _PEP Markup: http://www.python.org/peps/pep-0012.html .. _Docutils: http://docutils.sf.net/ .. _reST: .. _reStructuredText: http://docutils.sf.net/rst.html .. _PSF: .. _Python Software Foundation: http://python.org/psf/ .. _last summary: http://www.python.org/dev/summary/ .. _original text file: http://www.python.org/dev/summary/2005-05-16_2005-05-31.ht .. _archive: http://www.python.org/dev/summary/ .. _RSS feed: http://www.python.org/dev/summary/channews.rdf From steven.bethard at gmail.com Sun Jun 26 00:49:09 2005 From: steven.bethard at gmail.com (Steven Bethard) Date: Sat, 25 Jun 2005 16:49:09 -0600 Subject: python-dev Summary for 2005-06-01 through 2005-06-15 Message-ID: [The HTML version of this Summary is available at http://www.python.org/dev/summary/2005-06-01_2005-06-15.html] ===================== Summary Announcements ===================== --------------------------------- Bug Day: Saturday, June 25th 2005 --------------------------------- AMK organized another `Python Bug Day`_ on Saturday, June 25th. Hope you got a chance to help out! .. _Python Bug Day: http://wiki.python.org/moin/PythonBugDay Contributing Threads: - `Bug day on the 25th? `__ [SJB] ---------------------- FishEye for Python CVS ---------------------- Peter Moore has kindly set up `Fish Eye for the Python CVS repository`_. FishEye is a repository browsing, searching, analysis and monitoring tool, with great features like RSS feeds, Synthetic changesets, Pretty ediffs and SQL like searches. Check it out! .. _Fish Eye for the Python CVS repository: http://fisheye.cenqua.com/viewrep/python/ Contributing Threads: - `FishEye on Python CVS Repository `__ [SJB] -------------------------------- PyPy Sprint: July 1st - 7th 2005 -------------------------------- The next `PyPy`_ sprint is scheduled right after EuroPython 2005 in Gothenborg, Sweden. It will focus mainly on translating PyPy to lower level backends, so as to move away from running PyPy on top of the CPython interpreter. There will be newcomer-friendly introductions, and other topics are possible, so if you have any interest in PyPy, now is the time to help out! .. _PyPy: http://codespeak.net/pypy Contributing Threads: - `Post-EuroPython 2005 PyPy Sprint 1st - 7th July 2005 `__ [SJB] --------------------------------- Reminder: Google's Summer of Code --------------------------------- Just a reminder that the friendly folks at Python have set up a `wiki`_ and a `mailing list`_ for questions about `Google's Summer of Code`_. For specific details on particular projects (e.g. what needs done to complete Python SSL support) participants may also ask questions to the Python-Dev list. .. _wiki: http://wiki.python.org/moin/CodingProjectIdeas .. _mailing list: http://mail.python.org/mailman/listinfo/summerofcode .. _Google's Summer of Code: http://code.google.com/summerofcode.html [SJB] ---------------------- hashlib Review Request ---------------------- Gregory P. Smith noted that he has finished up the hashlib work he started on a few months ago for patches `935454`_ and `1121611`_ (where the final patch is). He feels that the patch is ready, and would like anyone interested to review it; the patch incorporates both OpenSSL hash support and SHA256+SHA512 support in a single module. `The documentation`_ can be accessed separately, for convenience. .. _935454: http://python.org/sf/935454 .. _1121611: http://python.org/sf/1121611 .. _The documentation: http://electricrain.com/greg/hashlib-py25-doc/module-hashlib.html Contributing Threads: - `hashlib - faster md5/sha, adds sha256/512 support `__ [TAM] ========= Summaries ========= ---------------- PEP 343 Progress ---------------- The PEP 343 discussions were mostly concluded. Guido posted the newest version of the PEP to both Python-Dev and Python-List and the discussions that followed were brief and mostly in agreement with the proposal. The PEP 343 syntax was modified slightly to require parentheses if VAR is a comma-separated list of variables. This made the proposal forward-compatible to extending the with-block for multiple resources. In the favored extension, the with-block would take multiple expressions in a manner analogous to import statements:: with EXPR1 [as VAR1], EXPR2 [as VAR2], ...: BLOCK However, if this extension becomes part of Python, it will likely enter some time after Python 2.5, once users have a better idea of what with-block use-cases look like. There were also some brief discussions about how with-blocks should behave in the presence of async exceptions like the KeyboardInterrupt generated from a ^C. While it seemed like it would be a nice property for with-blocks to guarantee that the __exit__ methods would still be called in the presence of async exceptions, making such a guarantee proved to be too complicated. Thus the final conclusion, as summarized by Nick Coghlan, was that "with statements won't make any more guarantees about this than try/finally statements do". Contributing Threads: - `PEP 343 rewrite complete `__ - `For review: PEP 343: Anonymous Block Redux and Generator Enhancements `__ - `PEP 343 - next steps `__ - `PEP 343 question `__ [SJB] -------------- Do-While Loops -------------- Raymond Hettinger asked for a "dowhile" loop of the form:: dowhile : which would run once before testing the , and then proceed as a normal while-loop. He was subsequently referred to `PEP 315`_, which proposes a slightly different syntax for a similar purpose. The discussion expanded to not only do-while loops, but also loops with break conditions at locations other than the beginning and the end of a loop. A variety of syntax proposals were suggested, but none seemed compellingly better than the current syntax:: while True: ... if : break ... which supports putting the condition(s) at any location in the loop. .. _PEP 315: http://www.python.org/peps/pep-0315.html Contributing Threads: - `Wishlist: dowhile `__ [SJB] ------------------------------------ Reference Counting in Module Globals ------------------------------------ Both Michael Hudson and Skip Montanaro noticed that Py_INCREFs appeared to be unnecessary when adding an object to a module's globals. Armin Rigo explained that after a module is initialized, the import mechanism makes a "hidden" copy of the module's dict so that the module can be reloaded. This means that objects added as module globals will always have an extra reference count in this hidden dict. However, Armin Rigo agreed with Michael Hudson that this explanation was no longer applicable after an interpreter shutdown. The best conclusion he could draw in this a situation: "it's all quite obscure". Contributing Threads: - `refcounting vs PyModule_AddObject `__ - `[Python-checkins] python/dist/src/Modules _csv.c, 1.37, 1.38 `__ [SJB] ----------------------------------------- Reorganising the standard library (again) ----------------------------------------- The ever-popular topic of reorganising the standard library came up again this fortnight, courtesy of Reinhold Birkenfeld. The questions posed included hierarchy (flat/nested), third party modules, size (batteries included or not), and the standard GUI toolkit. As usual, there was a great deal of discussion, but not a great deal of consensus about any of these (other than that including ElementTree in the standard library would be good), and given the amount of breakage this would involve (and that Guido didn't weigh in at all), it seems unlikely that much will change before Python 3000; although Josiah Carlson indicated that he had a patch that would avoid a lot of breakage. Contributing Threads: - `Thoughts on stdlib evolvement `__ [TAM] -------------------------- First Mac-tel, now Py-tel? -------------------------- Guido mentioned that Intel has a free (as in beer) C `compiler for Linux`_, and that a friend of his (who is involved in its production and marketing) would like to see how it performs with Python. The compiler wasn't news to some of the -dev crowd, though, with Martin v. L?wis pointing out a `bug report on the compiler`_, as well as a `patch`_, and a `message indicating that some people had problems`_ with the resulting interpreter. Martin pointed out that there were some old (2002 and 2004) results indicating that the Intel compiler was slightly faster, but couldn't find any results for the latest version. Michael Hoffman gave summaries of more testing, which gave a 16% speed increase. He felt that, while this was significant, he wasted a lot of time dealing with resulting problems with extension modules, and so it doesn't use as much any more. .. _compiler for Linux: http://www.intel.com/software/products/compilers/clin/index.htm .. _bug report on the compiler: http://python.org/sf/1162001 .. _patch: http://python.org/sf/1162023 .. _message indicating that some people had problems: http://mail.python.org/pipermail/python-list/2005-March/270672.html Contributing Threads: - `Compiling Python with Intel compiler? `__ [TAM] ------------------ sys.path Behaviour ------------------ Reinhold Birkenfeld noticed that sys.path's first element is '' in interactive sessions, but the directory containing the script otherwise, and wondered if this was intentional. Guido clarified that he's always liked it this way, so that if you use os.path.join to join it with a script name you don't get a spurious ".\" preprended. The "absolutizing" of sys.path entries, however, is reasonably new; Bob Ippolito pointed out that is also `problematic with regards to path hooks`_. He has a `patch to fix it`_, but hasn't had a chance to commit it; Phillip J. Eby noted that the patch doesn't fix completely fix it, however, and indicated that fixing site.py with respect to `PEP 302`_ will be quite challenging. .. _problematic with regards to path hooks: http://mail.python.org/pipermail/python-dev/2005-April/052885.html .. _patch to fix it: http://python.org/sf/1174614 .. _PEP 302: http://python.org/peps/pep-0302.html Contributing Threads: - `sys.path in interactive session `__ [TAM] ---------------- More on old bugs ---------------- The discussion about what to do with old bugs continued this fortnight. Against the concern about prematurely closing old bugs, there was the suggestion that given that there are such a huge number of open bug reports, and since closed bugs can be reopened, this wasn't such a problem. It was suggested that the act of closing a bug might trigger activity to get it fixed, if necessary. The thread died off before a consensus was reached, unfortunately. Contributing Threads: - `Closing old bugs `__ [TAM] --------------------------------- Improved pseudo-switch statements --------------------------------- Skip Montanaro has been playing around with getting the Python compiler to recognize switch-like statements and generate O(1) code out of them. The rules are that the object being compared ('x') can be any expression, but must be precisely the same in each elif clause, the comparison operator must be "==", and the right-hand-side of the test must evaluate to a simple hashable constant. However, if evaluating 'x' has side-effects, then this would break code. Various people felt that it was unwise to allow 'x' to be any expression; Anthony Baxter suggested that one could allow any local object that didn't define a comparison operator. Contributing Threads: - `Multiple expression eval in compound if statement? `__ [TAM] =============== Skipped Threads =============== - `Adventures with Decimal `__ - `Weekly Python Patch/Bug Summary `__ - `AST manipulation and source code generation `__ - `Vestigial code in threadmodule? `__ - `[Python-checkins] python/dist/src/Lib sre_compile.py, 1.57, 1.58 `__ - `Split MIME headers into multiple lines near a space `__ - `python running in several threads `__ - `problem installing current cvs `__ - `b32encode and NUL bytes `__ - `Example workaround classes for using Unicode with csv module... `__ - `Weekly Python Patch/Bug Summary `__ - `[Python-checkins] python/dist/src/Doc/lib libtokenize.tex, 1.5, 1.6 `__ - `Five patch reviews & patch request `__ - `AIX 4.3, Python 2.4.1 fails in test_exceptions with a core dump `__ - `PEP 342 - Enhanced Iterators `__ - `A bug in pyconfig.h under Linux? `__ - `Dynamic class inheritance && something else `__ - `Weekly Python Patch/Bug Summary `__ ======== Epilogue ======== ------------ Introduction ------------ This is a summary of traffic on the `python-dev mailing list`_ from June 01, 2005 through June 15, 2005. It is intended to inform the wider Python community of on-going developments on the list on a semi-monthly basis. An archive_ of previous summaries is available online. An `RSS feed`_ of the titles of the summaries is available. You can also watch comp.lang.python or comp.lang.python.announce for new summaries (or through their email gateways of python-list or python-announce, respectively, as found at http://mail.python.org). This is the fifth summary written by the python-dev summary cabal of Steve Bethard, Tim Lesher, and Tony Meyer. To contact us, please send email: - Steve Bethard (steven.bethard at gmail.com) - Tim Lesher (tlesher at gmail.com) - Tony Meyer (tony.meyer at gmail.com) Do *not* post to comp.lang.python if you wish to reach us. The `Python Software Foundation`_ is the non-profit organization that holds the intellectual property for Python. It also tries to advance the development and use of Python. If you find the python-dev Summary helpful please consider making a donation. You can make a donation at http://python.org/psf/donations.html . Every penny helps so even a small donation with a credit card, check, or by PayPal helps. -------------------- Commenting on Topics -------------------- To comment on anything mentioned here, just post to `comp.lang.python`_ (or email python-list at 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`_! ------------------------- How to Read the Summaries ------------------------- 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 for 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. Please note that this summary is written using reStructuredText_. Any unfamiliar punctuation is probably markup for reST_ (otherwise it is probably regular expression syntax or a typo =); you can safely ignore it. I do suggest learning reST, though; it's simple and is accepted for `PEP markup`_ and can be turned into many different formats like HTML and LaTeX. Unfortunately, even though reST is standardized, the wonders of programs that like to reformat text do not allow me to 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`_. .. _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 .. _c.l.py: .. _comp.lang.python: http://groups.google.com/groups?q=comp.lang.python .. _PEP Markup: http://www.python.org/peps/pep-0012.html .. _Docutils: http://docutils.sf.net/ .. _reST: .. _reStructuredText: http://docutils.sf.net/rst.html .. _PSF: .. _Python Software Foundation: http://python.org/psf/ .. _last summary: http://www.python.org/dev/summary/ .. _original text file: http://www.python.org/dev/summary/2005-06-01_2005-06-15.ht .. _archive: http://www.python.org/dev/summary/ .. _RSS feed: http://www.python.org/dev/summary/channews.rdf From csad7 at t-online.de Sun Jun 26 21:58:30 2005 From: csad7 at t-online.de (csad7@t-online.de) Date: Sun, 26 Jun 2005 21:58:30 +0200 Subject: ANN: encutils 0.1 In-Reply-To: References: Message-ID: <42BF08E6.7020007@cdot.de> Some basic helper functions to deal with encodings of files retrieved via HTTP. Download from http://cthedot.de/encutils/ Currently contained functions: encodingByMediaType(media_type, log=None) Returns for the given Content-Type a default encoding if available, e.g. 'utf-8' for 'application/xml'. getHTTPInfo(httpheaders, log=None) Finds content-type and encoding information from HTTP header dictionary. Returns (Content-Type, encoding) tuple which may be both None. Default encodings of specific Content-Types is used (see encodingByContentType). getMetaInfo(text, log=None) Returns (Content-Type, encoding) tuple from (last) X/HTML meta element. guessEncoding(httpheaders, text, log=None) Tries to find encoding of given text and uses information in httpheaders and textcontent like HTML meta elements or the XML declaration (this is not implemented yet). Returns the explicit or implicit encoding or None. Mismatch reports are written to the log. If there is a similar thing out please let me know (I know the Cookbook XML autodetection script which I like to intregrate). And I would very much appreciate any feedback about spec compliance, errors or other problems with the functions too. (See http://cthedot.de/contact/ or http://cthedot.de/blog/). Thanks a lot! chris From t.koutsovassilis at gmail.com Sun Jun 26 23:23:49 2005 From: t.koutsovassilis at gmail.com (Tassos Koutsovassilis) Date: 26 Jun 2005 14:23:49 -0700 Subject: Porcupine Web Application Server 0.0.1 released Message-ID: <6711e162.0506261323.a1bad01@posting.google.com> Porcupine is a Web application server that features an embedded object database, the Porcupine Object Query Language, XMLRPC support, and QuiX, an integrated JavaScript XUL motor. For more info, see http://www.innoscript.org From fuzzyman at gmail.com Mon Jun 27 12:11:34 2005 From: fuzzyman at gmail.com (Fuzzyman) Date: 27 Jun 2005 03:11:34 -0700 Subject: ANN: rest2web 0.3.0 Message-ID: <1119867094.628391.238020@g43g2000cwa.googlegroups.com> Next update to restweb__. This is available for direct download__, and via SVN__. [#]_ __ http://www.voidspace.org.uk/python/rest2web __ http://www.voidspace.org.uk/cgi-bin/voidspace/downman.py?file=rest2web.zip __ https://svn.rest2web.python-hosting.com/trunk/ .. [#] The SVN repository also has the Pythonutils__ dependencies. __ http://www.voidspace.org.uk/python/modules.shtml#pythonutils Sourceforge__ will be updated *soon* [#]_. __ http://sourceforge.net/projects/rest2web .. [#] Flipping work internet restrictions. We're now up to version **0.3.0**. The changes since the last announced release are : :: Version 0.3.0 2005/06/27 Code refactored and better commented. Thanks to Nicola Larosa for input. Minor bugfix - an encoding was missing. Added stylesheet to docutils options override. Version 0.2.3 2005/06/25 Code style cleanup with help from Nicola Larosa. Start of the refactoring (some code is simpler internally) ``uservalues`` now compatible with reST. docs updated appropriately. The *major changes* are the code cleanup and refactoring. If you want to understand how *rest2web* works, it should now be possible to follow it in the code [#]_! .. [#] No more passing data structures in and out of the *restprocessor* >From the users point of view, the biggest change is that you can now use *uservalues* with reST markup. This does have limitations that I might try and find a way round. See the uservalues__ page for the details. __ http://www.voidspace.org.uk/python/rest2web/uservalues.html Best Regards, Fuzzy http://www.voidspace.org.uk/python From philippe at philippecmartin.com Tue Jun 28 00:24:43 2005 From: philippe at philippecmartin.com (Philippe C. Martin) Date: Mon, 27 Jun 2005 22:24:43 GMT Subject: SCF 1.1 with BasicCard support released Message-ID: Dear all, I am very happy to announce the release of SCF 1.1, a Python based Smart Card development framework for Windows? and Linux. SCF 1.1 introduces support for BasicCard? Enhanced and Professional under GNU/Linux and Windows?. All commands are supported as well as firmware image parsing so you have full control of the personalization process: application + data. The SCF Shell is now "BasicCard-aware". SCF is available on www.snakecard.com for download and free testing. You may also browse the reference guide online. Best regards, Philippe Martin From fabioz at esss.com.br Tue Jun 28 18:07:01 2005 From: fabioz at esss.com.br (Fabio Zadrozny) Date: Tue, 28 Jun 2005 13:07:01 -0300 Subject: ANN: PyDev 0.9.5 released In-Reply-To: <42A720BD.5050701@esss.com.br> References: <42A720BD.5050701@esss.com.br> Message-ID: <42C175A5.5000206@esss.com.br> Hi All, PyDev - Python IDE (Python Development Enviroment for Eclipse) version 0.9.5 has just been released. Check the homepage (http://pydev.sourceforge.net/) for more details. Release Highlights: - File encodings now follow the python convention - Overview ruler now works - Editor is synchronized when working in multiple windows with the same file - Code folding improved - Syntax highlighting is not confused by escaped quote + triple quote anymore - Insertion of parentheses now replaces selected text - Some more bugs... Regards, -- Fabio Zadrozny ------------------------------------------------------ Software Developer ESSS - Engineering Simulation and Scientific Software www.esss.com.br PyDev - Python Development Enviroment for Eclipse pydev.sf.net pydev.blogspot.com From trentm at ActiveState.com Tue Jun 28 23:00:15 2005 From: trentm at ActiveState.com ('Trent Mick') Date: Tue, 28 Jun 2005 14:00:15 -0700 Subject: ANN: ActivePython 2.4.1 for Solaris 10 on SPARC, x86 and x64 systems In-Reply-To: <20050628004620.GA1935@ActiveState.com> References: <20050627235717.GA27064@ActiveState.com> <200506280010.j5S0Aqnv030806@smtp3.ActiveState.com> <20050628004620.GA1935@ActiveState.com> Message-ID: <20050628210015.GA31180@ActiveState.com> I'm happy to announce that ActivePython 2.4.1 for Solaris 10 on SPARC, x86 and x64 systems is now available for free download from: http://www.ActiveState.com/Products/ActivePython/ This release adds support for Solaris running on x86 and x64 systems. Note: This release (build 247) also includes important updates for the recently released ActivePython for Mac OS X. Please see the release notes for details. http://aspn.activestate.com/ASPN/docs/ActivePython/2.4/relnotes.html#release_history What is ActivePython? --------------------- ActivePython is ActiveState's quality-assured binary distribution of Python. Builds for Linux, Mac OS X, Solaris and Windows are made freely available. ActivePython includes the Python core and core extensions (zlib 1.2.1, bzip2 1.0.2, bsddb 4.2.52, Tk 8.4.9, and Tix 8.1.4) and is fully compatible with other Python distributions of the same version. 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, Python Tech Lead -- Trent Mick TrentM at ActiveState.com From bronger at physik.rwth-aachen.de Wed Jun 29 16:14:22 2005 From: bronger at physik.rwth-aachen.de (Torsten Bronger) Date: Wed, 29 Jun 2005 16:14:22 +0200 Subject: ANN: PyVISA 0.9 (first public release) Message-ID: <877jgdl075.fsf@wilson.rwth-aachen.de> Hall?chen! At http://pyvisa.sourceforge.net you can find information about the PyVISA package. It realises Python bindings for the VISA library which enables you to control measurement devices via Python source. Today I released version 0.9. I tried to provide it with good documentation. It works very nicely with the GPIB in our lab, however, I haven't yet received feedback from others, so I leave it in beta status and with a version number < 1. Tsch?, Torsten. -- Torsten Bronger, aquisgrana, europa vetus From python-url at phaseit.net Wed Jun 29 20:18:35 2005 From: python-url at phaseit.net (Simon Brunning) Date: Wed, 29 Jun 2005 18:18:35 +0000 Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Jun 29) Message-ID: QOTW: "And what defines a 'python activist' anyway? Blowing up Perl installations worldwide?" - Ivan Van Laningham "Floating point is about nothing if not being usefully wrong." - Robert Kern Sibylle Koczian needs to sort part of a list. His first attempt made the natural mistake - sorting a *copy* of part of the list: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/9b7da3bed2719f18 Kevin Dangoor compares ZODB and pysqlite with SQLObject: http://www.blueskyonmars.com/2005/06/18/zodb-vs-pysqlite-with-sqlobject/ Uwe Mayer needs a little convincing about "consenting adults" philosophy: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/d4d8738a6e8281ff Zope 2.8.0 is released: http://article.gmane.org/gmane.comp.web.zope.announce/987 Guido's ITC audio interview sparks off a discussion about the advantages of static typing in terms of tool support: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/d5aee06316a0412b Only c.l.py can go *this* far off topic without flames: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/1be27ccd50534e1b Is there any good stuff left that Python should steal from other languages? http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/d297170cfbf1bb34 Peter Gengtsson reminds himself and us how useful the \b regular expression special element is: http://www.peterbe.com/plog/slash_b Are there any 3rd party modules that you'd like to see included in the standard library? http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/cd236084973530dc Is Python a good language for teaching children to program? http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/68a3ac09b4937c88 ======================================================================== Everything Python-related you want is probably one or two clicks away in these pages: Python.org's Python Language Website is the traditional center of Pythonia http://www.python.org Notice especially the master FAQ http://www.python.org/doc/FAQ.html PythonWare complements the digest you're reading with the marvelous daily python url http://www.pythonware.com/daily Mygale is a news-gathering webcrawler that specializes in (new) World-Wide Web articles related to Python. http://www.awaretek.com/nowak/mygale.html While cosmetically similar, Mygale and the Daily Python-URL are utterly different in their technologies and generally in their results. For far, FAR more Python reading than any one mind should absorb, much of it quite interesting, several pages index much of the universe of Pybloggers. http://lowlife.jp/cgi-bin/moin.cgi/PythonProgrammersWeblog http://www.planetpython.org/ http://mechanicalcat.net/pyblagg.html comp.lang.python.announce announces new Python software. Be sure to scan this newsgroup weekly. http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python.announce Steve Bethard, Tim Lesher, and Tony Meyer continue the marvelous tradition early borne by Andrew Kuchling, Michael Hudson and Brett Cannon of intelligently summarizing action on the python-dev mailing list once every other week. http://www.python.org/dev/summary/ The Python Package Index catalogues packages. http://www.python.org/pypi/ The somewhat older Vaults of Parnassus ambitiously collects references to all sorts of Python resources. http://www.vex.net/~x/parnassus/ Much of Python's real work takes place on Special-Interest Group mailing lists http://www.python.org/sigs/ The Python Business Forum "further[s] the interests of companies that base their business on ... Python." http://www.python-in-business.org Python Success Stories--from air-traffic control to on-line match-making--can inspire you or decision-makers to whom you're subject with a vision of what the language makes practical. http://www.pythonology.com/success The Python Software Foundation (PSF) has replaced the Python Consortium as an independent nexus of activity. It has official responsibility for Python's development and maintenance. http://www.python.org/psf/ Among the ways you can support PSF is with a donation. http://www.python.org/psf/donate.html Kurt B. Kaiser publishes a weekly report on faults and patches. http://www.google.com/groups?as_usubject=weekly%20python%20patch Cetus collects Python hyperlinks. http://www.cetus-links.org/oo_python.html Python FAQTS http://python.faqts.com/ The Cookbook is a collaborative effort to capture useful and interesting recipes. http://aspn.activestate.com/ASPN/Cookbook/Python Among several Python-oriented RSS/RDF feeds available are http://www.python.org/channews.rdf http://bootleg-rss.g-blog.net/pythonware_com_daily.pcgi http://python.de/backend.php For more, see http://www.syndic8.com/feedlist.php?ShowMatch=python&ShowStatus=all The old Python "To-Do List" now lives principally in a SourceForge reincarnation. http://sourceforge.net/tracker/?atid=355470&group_id=5470&func=browse http://python.sourceforge.net/peps/pep-0042.html The online Python Journal is posted at pythonjournal.cognizor.com. editor at pythonjournal.com and editor at pythonjournal.cognizor.com welcome submission of material that helps people's understanding of Python use, and offer Web presentation of your work. del.icio.us presents an intriguing approach to reference commentary. It already aggregates quite a bit of Python intelligence. http://del.icio.us/tag/python *Py: the Journal of the Python Language* http://www.pyzine.com Archive probing tricks of the trade: http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python&num=100 http://groups.google.com/groups?meta=site%3Dgroups%26group%3Dcomp.lang.python.* Previous - (U)se the (R)esource, (L)uke! - messages are listed here: http://www.ddj.com/topics/pythonurl/ (requires subscription) http://groups-beta.google.com/groups?q=python-url+group:comp.lang.python*&start=0&scoring=d& http://purl.org/thecliff/python/url.html (dormant) or http://groups.google.com/groups?oi=djq&as_q=+Python-URL!&as_ugroup=comp.lang.python Suggestions/corrections for next week's posting are always welcome. E-mail to should get through. To receive a new issue of this posting in e-mail each Monday morning (approximately), ask to subscribe. Mention "Python-URL!". -- The Python-URL! Team-- Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and sponsor the "Python-URL!" project. From swisher at enthought.com Wed Jun 29 20:36:00 2005 From: swisher at enthought.com (Janet M. Swisher) Date: Wed, 29 Jun 2005 13:36:00 -0500 Subject: ANN: SciPy 2005 Conference - Python for Scientific Computing Message-ID: <42C2EA10.5070406@enthought.com> Greetings, The 2nd annual *SciPy Conference* on Python for Scientific Computing will be held again this year at Caltech, September 22-23, 2005. History: -------- This event started as SciPy "Workshops" held in 2002 and 2003, with great participation by the ~70 people attending. In 2004, it became a "conference", with attendance jumping to 87 participants. Registration: ------------- Registration is now open. More information can be found here: http://www.scipy.org/wikis/scipy05 You may register early online for $100.00. Registration includes breakfast and lunch Thursday & Friday and a very nice dinner Thursday night. After July 29, registration will cost $150.00. Call for Presenters: -------------------- If you are interested in presenting at the conference, you can submit an abstract in Plain Text, PDF or MS Word formats to abstracts at scipy.org -- the deadline for abstract submission is July 29, 2005. Papers or presentation slides are acceptable and are due by August 26, 2005. Feedback: --------- If you have any feedback from last year's conference or suggestions for this year, please discuss via the scipy mailing list: list signup: http://www.scipy.org/mailinglists/ list address: scipy-user at scipy.org Please forward this announcement to anyone/list that might be interested. Best Regards, -- Janet Swisher --- Senior Technical Writer Enthought, Inc. http://www.enthought.com From zilin at cs.nyu.edu Thu Jun 30 07:42:12 2005 From: zilin at cs.nyu.edu (Zilin Du) Date: Thu, 30 Jun 2005 01:42:12 -0400 (EDT) Subject: ANN: PySWT 0.0.2 Message-ID: A python binding of IBM's java-based SWT libraries is available here: http://www.cs.nyu.edu/zilin/pyswt/pmwiki.php now you can use SWT in python. Zilin From "cyril dot jaquier at bluewin dot ch" at newsspool.solnet.ch Thu Jun 30 11:59:46 2005 From: "cyril dot jaquier at bluewin dot ch" at newsspool.solnet.ch (Cyril Jaquier) Date: Thu, 30 Jun 2005 11:59:46 +0200 Subject: [ANN] Fail2Ban 0.4.1 Message-ID: <42c3c291$0$150$fb624d75@newsspool.solnet.ch> Hi, The version 0.4.1 of Fail2Ban is available. This version contains only a bug fix in textToDNS and a more readable configuration file. A initd script for Gentoo is also available. I would really appreciate initd scripts for others distributions. "Fail2Ban is written in Python. It scans log files like /var/log/pwdfail or /var/log/apache/error_log and bans IP that makes too many password failures. It updates firewall rules to reject the IP address." Homepage: http://fail2ban.sourceforge.net Best Regards, Cyril Jaquier From rapp at acm.org Thu Jun 30 21:27:41 2005 From: rapp at acm.org (rapp@acm.org) Date: 30 Jun 2005 12:27:41 -0700 Subject: ANN: SMC - State Machine Compiler v. 4.1.0 Message-ID: <1120159661.640398.113840@g47g2000cwa.googlegroups.com> SMC - The State Machine Compiler v. 4.1.0 Requires: Java 1.4.1 SE (Standard Edition) or better. Download: http://sourceforge.net/projects/smc Home Page: http://smc.sourceforge.net ================================================================= What's New? ================================================================= + Added a "%access" keyword which sets the generated context class' accessibility level. This level is used when generating Java and C# code and ignored for all other target languages. ================================================================= Bug fixes ================================================================= + (Java) The previous release set the context class' accessibility level to package if the %package was specified. This was a mistake. The %access keyword now solves this problem. ================================================================= What is SMC? ================================================================= SMC takes a state machine description (stored in a .sm file) and generates State pattern classes in a target language (C++, Java, Tcl, VB.Net, C# and Python are currently supported). SMC is a console-based app written in Java which means SMC can run anywhere Java (1.4.1 or better) can run. The download package includes an example directory showing how SMC can used with C++, Java, Tcl (requires [incr Tcl] package), VB.Net, C# and Python. The examples range from trivial to GUI apps. ================================================================= How can I learn more? ================================================================= At http://smc.sourceforge.net. You can access the SMC Programmer's Manual there as well. While you're there, check out the SMC demo applet at http://smc.sourceforge.net/SmcDemo.htm. ================================================================= Where can I get it? ================================================================= SMC and the Programmer's Manual can be downloaded from http://sourceforge.net/projects/smc. You can also use this website to: + Ask questions (via the Public Forum's Help discussion) + Submit a bug. + Join a mailing list. + Access SMC documentation. + Access SMC's source code in the CVS repository. (Note: in order to make full use of SourceForge capabilities, you must be a SourceForge member. If you are not a member, head over to http://sourceforge.net/account/register.php and sign up. SourceForge membership is free - no money, no requirements and NO SPAM! Membership has its benefits.) If you have any problems, surf over to http://sourceforge.net/forum/forum.php?forum_id=27865 and report the problem. I will try and answer you via the Help forum as quickly as I can. Enjoy! Charles Rapp mailto:rapp at acm.org