From ian at excess.org Mon Oct 2 06:29:35 2006 From: ian at excess.org (Ian Ward) Date: Mon, 02 Oct 2006 00:29:35 -0400 Subject: ANN: Urwid 0.9.7 - Console UI Library Message-ID: <452095AF.3090503@excess.org> Announcing Urwid 0.9.7 ---------------------- Urwid home page: http://excess.org/urwid/ Tarball: http://excess.org/urwid/urwid-0.9.7.tar.gz About this release: =================== This release adds a new BigText widget for banners and text that needs to stand out on the screen. A new example program demonstrating BigText usage and a number of fonts are included. This widget is a fixed widget, a new alternative to flow widgets and a box widgets. Fixed widgets may be displayed within Overlay or Padding widgets to handle changing screen sizes. New in this release: ==================== - Added initial support for fixed widgets - widgets that have a fixed size on screen. Fixed widgets expect a size parameter equal to (). Fixed widgets must implement the pack(..) function to return their size. - New BigText class that draws text with fonts made of grids of character cells. BigText is a fixed widget and doesn't do any alignment or wrapping. It is intended for banners and number readouts that need to stand out on the screen. Fonts: Thin3x3Font, Thin4x3Font, Thin6x6Font (full ascii) UTF-8 only fonts: HalfBlock5x4Font, HalfBlock6x5Font, HalfBlockHeavy6x5Font, HalfBlock7x7Font (full ascii) New function get_all_fonts() may be used to get a list of the available fonts. - New example program bigtext.py demonstrates use of BigText. - Padding class now has a clipping mode that pads or clips fixed widgets to make them behave as flow widgets. - Overlay class can now accept a fixed widget as the widget to display "on top". - New Canvas functions: pad_trim(..) and pad_trim_left_right(..). - Fixed a bug in Filler.get_cursor_coords(..) that causes a crash if the contained widget's get_cursor_coords(..) function returns None. - Fixed a bug in Text.pack(..) that caused an infinite loop when the text contained a newline. This function is not currently used by Urwid. - Edit.__init__(..) now calls set_edit_text(..) to initialize its text. - Overlay.calculate_padding_filler(..) and Padding.padding_values(..) now include focus parameters. About Urwid =========== Urwid is a console UI library for Python. It features fluid interface resizing, UTF-8 support, multiple text layouts, simple attribute markup, powerful scrolling list boxes and flexible interface design. Urwid is released under the GNU LGPL. From dave-announce at dabeaz.com Tue Oct 3 18:35:00 2006 From: dave-announce at dabeaz.com (David Beazley) Date: Tue, 3 Oct 2006 11:35:00 -0500 Subject: ANN: PLY-2.1 (Python Lex-Yacc) Message-ID: <1749D5F5-3A60-44A7-AD7C-4E49B54C21CC@dabeaz.com> October 2, 2006 Announcing : PLY-2.1 (Python Lex-Yacc) http://www.dabeaz.com/ply I'm pleased to announce a significant new update to PLY---a 100% Python implementation of the common parsing tools lex and yacc. PLY-2.1 builds upon the reimplementation of LALR(1) parsing that appeared in PLY-2.0 and adds a number of significant new features. These include: - Elimination of internal limitations due to the use of Python's re module. - Better support for inherited attributes and embedded parsing actions. - Character literals (e.g., '+', '-') can now be included in grammar specifications. - Improved packaging. PLY is now a proper Python package. - Improved support for line number and column tracking. - Added diagnostics. - New examples including a program to convert tradition yacc/bison specifications to PLY. - A variety of minor enhancements and bug fixes. If you are new to PLY, here are a few highlights: - PLY is closely modeled after traditional lex/yacc. If you know how to use these or similar tools in other languages, you will find PLY to be comparable. - PLY provides very extensive error reporting and diagnostic information to assist in parser construction. The original implementation was developed for instructional purposes. As a result, the system tries to identify the most common types of errors made by novice users. - PLY provides full support for empty productions, error recovery, precedence rules, and ambiguous grammars. - Parsing is based on LR-parsing which is fast, memory efficient, better suited to large grammars, and which has a number of nice properties when dealing with syntax errors and other parsing problems. Currently, PLY can build its parsing tables using either SLR or LALR(1) algorithms. - PLY can be used to build parsers for large programming languages. Although it is not ultra-fast due to its Python implementation, PLY can be used to parse grammars consisting of several hundred rules (as might be found for a language like C). The lexer and LR parser are also reasonably efficient when parsing normal sized programs. More information about PLY can be obtained on the PLY webpage at: http://www.dabeaz.com/ply PLY is freely available and is licensed under the terms of the Lesser GNU Public License (LGPL). Cheers, David Beazley (http://www.dabeaz.com) From ian at excess.org Wed Oct 4 03:34:02 2006 From: ian at excess.org (Ian Ward) Date: Tue, 03 Oct 2006 21:34:02 -0400 Subject: ANN: Urwid 0.9.7.1 - Console UI Library Message-ID: <45230F8A.3010302@excess.org> Announcing Urwid 0.9.7.1 ------------------------ Urwid home page: http://excess.org/urwid/ Tarball: http://excess.org/urwid/urwid-0.9.7.1.tar.gz About this release: =================== This release fixes bugs introduced in the Padding and Overlay classes in the previous release. These bugs prevent the graph.py example program from running. New in this release: ==================== * Fixed bugs in Padding and Overlay widgets introduced in 0.9.7. About Urwid =========== Urwid is a console UI library for Python. It features fluid interface resizing, UTF-8 support, multiple text layouts, simple attribute markup, powerful scrolling list boxes and flexible interface design. Urwid is released under the GNU LGPL. From jdahlin at async.com.br Tue Oct 3 22:29:35 2006 From: jdahlin at async.com.br (Johan Dahlin) Date: Tue, 03 Oct 2006 17:29:35 -0300 Subject: ANNOUNCE: PyGObject 2.12.2 Message-ID: <4522C82F.8030702@async.com.br> I am pleased to announce version 2.12.2 of the Python bindings for GObject. The new release is available from ftp.gnome.org as and its mirrors as soon as its synced correctly: http://download.gnome.org/sources/pygobject/2.12/ What's new since PyGObject 2.12.1: - Make PyGObject 64-bit safe for Python 2.5 (Gustavo) - All headers are now LGPL and not GPL (Johan) - Remove a couple of GCC warnings (Gustavo) - Revive distutils support (Cedric Gustin) - Emission hook reference count bugfix (Gustavo) - MSVC/ANSI C compilation fix (John Ehresman) - Bump Ctrl-C timeout handler from 100ms to 1000ms (Johan) Blurb: GObject is a object system library used by GTK+ and GStreamer. PyGObject provides a convenient wrapper for the GObject+ library for use in Python programs, and takes care of many of the boring details such as managing memory and type casting. When combined with PyGTK, PyORBit and gnome-python, it can be used to write full featured Gnome applications. Like the GObject library itself PyGObject is licensed under the GNU LGPL, so is suitable for use in both free software and proprietary applications. It is already in use in many applications ranging from small single purpose scripts up to large full featured applications. PyGObject requires GObject >= 2.8.0 and Python >= 2.3.5 to build. -- Johan Dahlin jdahlin at async.com.br From python-url at phaseit.net Wed Oct 4 03:45:04 2006 From: python-url at phaseit.net (Cameron Laird) Date: Wed, 4 Oct 2006 01:45:04 +0000 (UTC) Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Oct 4) Message-ID: QOTW: "If you want your objects to know their name, give them a name as an attribute." - Georg Brandl "Unfortunately forty years of programming experience has taught me that there's an essentially infinite supply of mistakes to make ... your mistakes just get smarter most of the time." - Steve Holden timbot and other seniors explain several aspects of memory management applicable to a specific "pathologic example ... [for which it's an advantage] to disable garbage collection": http://groups.google.com/group/comp.lang.python/browse_thread/thread/66ecc194fa8af1a1/ No, Ruby isn't more virtuously object-oriented than Python (although it *is* more Smalltalk-like). John Roth details the factual distinctions: http://groups.google.com/group/comp.lang.python/browse_thread/thread/25e108582b4a6db2/ Duncan Booth, effbot, Steve Holden, and others surpass Lewis Carroll in the care with which they distinguish a character, the name of the character, what it's called, ...: http://groups.google.com/group/comp.lang.python/browse_thread/thread/14885cf940d9e8b9/ Sybren Stuvel's article on Open Office and Python is important enough to merit correction: http://groups.google.com/group/comp.lang.python/browse_thread/thread/c7bee85c6af82777/ With a far different programming model, Python also can boss Excel around to the extent of inserting images: http://groups.google.com/group/comp.lang.python/browse_thread/thread/8a0a1165a9b844f5/ How do you realize the source for a class definition so it's useful, that is, effectively able for use in the future? James Stroud and Scott David Daniels tell their stories: http://groups.google.com/group/comp.lang.python/browse_thread/thread/99d80c18db6228cc/ WSGI has its own PEP, Wiki, high-profile introduction, ...: http://www.xml.com/pub/a/2006/09/27/introducing-wsgi-pythons-secret-web-weapon.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 Python411 indexes "podcasts ... to help people learn Python ..." Updates appear more-than-weekly: http://www.awaretek.com/python/index.html 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/ 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/python/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 Although unmaintained since 2002, the Cetus collection of Python hyperlinks retains a few gems. 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://www.python.org/dev/peps/pep-0042/ 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/topic/python/ (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 There is *not* an RSS for "Python-URL!"--at least not yet. Arguments for and against are occasionally entertained. 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!". Write to the same address to unsubscribe. -- The Python-URL! Team-- Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and sponsor the "Python-URL!" project. From richardjones at optushome.com.au Wed Oct 4 05:47:34 2006 From: richardjones at optushome.com.au (Richard Jones) Date: Wed, 4 Oct 2006 13:47:34 +1000 Subject: Roundup Issue Tracker release 1.1.3 Message-ID: <200610041347.34453.richardjones@optushome.com.au> I'm proud to release version 1.1.3 of Roundup. Feature: - supports Python 2.5, including the sqlite3 module - full timezone support (sf patch 1465296) - handle connection loss when responding to web requests - match incoming mail In-Reply-To against existing messages when no issue id is specified in the Subject - added StringHTMLProperty wrapped() method to wrap long lines in issue display - include the popcal in Date field editing and search fields by default - @required in forms may now specify properties of linked items (sf patch 1507093) - update for latest version of pysqlite (sf bug 1487098; patch 1534227) - update for latest version of psycopg2 (sf patch 1429391) - new "exporttables" command in roundup-admin (sf bug 1533791) - roundup-admin "export" may specify classes to exclude (sf bug 1533791) - sorting and grouping by multiple properties is now supported by the backends *and* the classic template. - sorting, grouping, and searching by transitive properties (e.g., messages.author.supervisor) is now supported in all backends - added filter_sql to SQL backends which takes an arbitrary SQL statement and returns a list of item ids There was also a lot of bugfixes - see the bundled CHANGES.txt file for the list. If you're upgrading from an older version of Roundup you *must* follow the "Software Upgrade" guidelines given in the maintenance documentation. Roundup requires python 2.3 or later for correct operation. To give Roundup a try, just download (see below), unpack and run:: roundup-demo Release info and download page: http://cheeseshop.python.org/pypi/roundup Source and documentation is available at the website: http://roundup.sourceforge.net/ Mailing lists - the place to ask questions: http://sourceforge.net/mail/?group_id=31577 About Roundup ============= Roundup is a simple-to-use and -install issue-tracking system with command-line, web and e-mail interfaces. It is based on the winning design from Ka-Ping Yee in the Software Carpentry "Track" design competition. Note: Ping is not responsible for this project. The contact for this project is richard at users.sourceforge.net. Roundup manages a number of issues (with flexible properties such as "description", "priority", and so on) and provides the ability to: (a) submit new issues, (b) find and edit existing issues, and (c) discuss issues with other participants. The system will facilitate communication among the participants by managing discussions and notifying interested parties when issues are edited. One of the major design goals for Roundup that it be simple to get going. Roundup is therefore usable "out of the box" with any python 2.3+ installation. It doesn't even need to be "installed" to be operational, though a disutils-based install script is provided. It comes with two issue tracker templates (a classic bug/feature tracker and a minimal skeleton) and five database back-ends (anydbm, sqlite, metakit, mysql and postgresql). From msoulier at digitaltorque.ca Wed Oct 4 05:54:17 2006 From: msoulier at digitaltorque.ca (Michael P. Soulier) Date: Tue, 3 Oct 2006 23:54:17 -0400 Subject: ANN: Tftpy 0.1 - Pure Python TFTP Library Message-ID: <20061004035417.GH27560@tigger.digitaltorque.ca> Announcing new project, Tftpy, a Pure Python TFTP implementation. About Release 0.1: ================== This is an initial release in the spirit of "release early, release often". Currently the sample client works, supporting RFC 1350. The server is not yet implemented, and RFC 2347 and 2348 support (variable block sizes) is underway, planned for 0.2. About Tftpy: ============ Tftpy is a TFTP library for the Python programming language. It includes client and server classes, with sample implementations. Hooks are included for easy inclusion in a UI for populating progress indicators. It supports RFCs 1350, 2347 and 2348. This library was developed against Python 2.4.1. Project page: http://sourceforge.net/projects/tftpy/ License is the CNRI Python License. http://www.opensource.org/licenses/pythonpl.php -- Michael P. Soulier "Any intelligent fool can make things bigger and more complex... It takes a touch of genius - and a lot of courage to move in the opposite direction." --Albert Einstein -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://mail.python.org/pipermail/python-announce-list/attachments/20061003/4c1e1aa2/attachment-0001.pgp From ian at showmedo.com Wed Oct 4 19:40:12 2006 From: ian at showmedo.com (Ian Ozsvald) Date: Wed, 04 Oct 2006 18:40:12 +0100 Subject: ANN: PAMIE web dev testing with Internet Explorer (2 New ShowMeDo.com Videos) Message-ID: <4523F1FC.6060408@showmedo.com> Summary: Robert Marchetti has created two videos showing you how to use his PAMIE tool to interactively drive Internet Explorer for web development and testing: http://showmedo.com/videos/series?name=pythonMarchettiPamieSeries Detail: The first PAMIE video covers driving IE interactively (querying Google, check the html src, clicking a button, visiting the Python homepage as a result). The second video shows you how to configure PAMIE with an XML file to automatically form-fill a web page for testing. This video also shows nice usage of the ElementTree module. The videos are 9 minutes and 11 minutes respectively and should play on all platforms. About ShowMeDo.com: Free videos (we call them ShowMeDos) showing you how to do things. The videos are made by us and our users, for everyone. Over half of our content is for Python. We'd love to have more contributions - would you share what you know? The founders, Ian Ozsvald, Kyran Dale -- ian showmedo.com http://www.showmedo.com From richardjones at optushome.com.au Sat Oct 7 05:24:18 2006 From: richardjones at optushome.com.au (Richard Jones) Date: Sat, 7 Oct 2006 13:24:18 +1000 Subject: Roundup Issue Tracker release 1.2.1 Message-ID: <200610071324.18285.richardjones@optushome.com.au> I'm proud to release version 1.2.1 of Roundup. Bugs fixed in 1.2.1: - E-mail subject line prefix delimiter configuration was being ignored. - Password confirm field in user editing. New Features in 1.2.x: - supports Python 2.5, including the sqlite3 module - full timezone support (sf patch 1465296) - handle connection loss when responding to web requests - match incoming mail In-Reply-To against existing messages when no issue id is specified in the Subject - added StringHTMLProperty wrapped() method to wrap long lines in issue display - include the popcal in Date field editing and search fields by default - @required in forms may now specify properties of linked items (sf patch 1507093) - update for latest version of pysqlite (sf bug 1487098; patch 1534227) - update for latest version of psycopg2 (sf patch 1429391) - new "exporttables" command in roundup-admin (sf bug 1533791) - roundup-admin "export" may specify classes to exclude (sf bug 1533791) - sorting and grouping by multiple properties is now supported by the backends *and* the classic template. - sorting, grouping, and searching by transitive properties (e.g., messages.author.supervisor) is now supported in all backends - added filter_sql to SQL backends which takes an arbitrary SQL statement and returns a list of item ids There was also a lot of bugfixes - see the bundled CHANGES.txt file for the list. If you're upgrading from an older version of Roundup you *must* follow the "Software Upgrade" guidelines given in the maintenance documentation. Roundup requires python 2.3 or later for correct operation. To give Roundup a try, just download (see below), unpack and run:: roundup-demo Release info and download page: http://cheeseshop.python.org/pypi/roundup Source and documentation is available at the website: http://roundup.sourceforge.net/ Mailing lists - the place to ask questions: http://sourceforge.net/mail/?group_id=31577 About Roundup ============= Roundup is a simple-to-use and -install issue-tracking system with command-line, web and e-mail interfaces. It is based on the winning design from Ka-Ping Yee in the Software Carpentry "Track" design competition. Note: Ping is not responsible for this project. The contact for this project is richard at users.sourceforge.net. Roundup manages a number of issues (with flexible properties such as "description", "priority", and so on) and provides the ability to: (a) submit new issues, (b) find and edit existing issues, and (c) discuss issues with other participants. The system will facilitate communication among the participants by managing discussions and notifying interested parties when issues are edited. One of the major design goals for Roundup that it be simple to get going. Roundup is therefore usable "out of the box" with any python 2.3+ installation. It doesn't even need to be "installed" to be operational, though a disutils-based install script is provided. It comes with two issue tracker templates (a classic bug/feature tracker and a minimal skeleton) and five database back-ends (anydbm, sqlite, metakit, mysql and postgresql). From johnny at johnnydebris.net Sat Oct 7 11:15:56 2006 From: johnny at johnnydebris.net (Johnny deBris) Date: Sat, 07 Oct 2006 11:15:56 +0200 Subject: Templess 0.2 released Message-ID: <12ies2et8pmfh14@corp.supernews.com> Hi! I wanted to let you guys know that I've just released version 0.2 of my 'Templess' library. Templess is an extremely simple XML (attribute) based XML templating system. Since it doesn't allow any logic inside the template, it's relatively friendly to programmers: XML templating with Templess quite resembles string interpolation, except that the dictionaries can contain list values (for repeating items) and XML nodes and such. Of course this isn't always the easiest way to deal with certain things, since even simple view-related logic has to be done in code (think 'odd' and 'even' table rows), but if you're a purist, don't trust your template designers to even touch code, or just hate having to fiddle about with restricted Python or domain-specific languages in your templates, Templess may suit your needs... The library is released under a BSD-style license. Most important changes since 0.1: * major cleanups and bugfixes * added 'not' directive * removed 'lxml' dependency in favour of a simple SAX-like solution(1) * speed improvements and more predictable behaviour (both related to the previous point) Downloads can be found here: http://johnnydebris.net/templess.txt or direct link to 0.2: http://johnnydebris.net/.files/templess-0.2.tar.gz For more information, see http://templess.johnnydebris.net/, or send me an email or whatnot... Cheers, Guido Wesdorp (1) Sorry, lxml guys... It's a great lib, but has rather heavy dependencies (libxml2, libxslt, pyrex)... From mmueller at python-academy.de Sat Oct 7 20:45:58 2006 From: mmueller at python-academy.de (Mike =?iso-8859-1?Q?M=FCller?=) Date: Sat, 07 Oct 2006 20:45:58 +0200 Subject: Leipzig Python User Group - Meeting, October 10, 2006, 8:00pm Message-ID: <7.0.1.0.0.20061007203641.01a56780@python-academy.de> ========================= Leipzig Python User Group ========================= Next Meeting Wednesday, October 10, 2006 ---------------------------------------- We will meet on October 10 at 8:00 pm at the training center of Python Academy in Leipzig, Germany (http://www.python-academy.com/center/find.html). We will evaluate the workshop from September. Mike M?ller will give his presentation "Python - der stille Erfolg einer Programmiersprache". He will present this talk again on October 16 at the bookstore Lehmanns in Leipzig. It is an introduction to Python. Food and soft drinks are provided. Please send a short confirmation mail to info at python-academy.de, so we can prepare appropriately. Everybody who uses Python, plans to do so or is interested in learning more about the language is encouraged to participate. While the meeting language will be mainly German, English speakers are very welcome. We will provide English interpretation if needed. Current information about the meetings can always be found at http://www.python-academy.com/user-group/index.html ========================= Leipzig Python User Group ========================= Stammtisch am 10.10.2006 ------------------------- Wir treffen uns am 10.10.2006 um 20:00 Uhr wieder im im Schulungszentrum der Python Academy in Leipzig (http://www.python-academy.de/Schulungszentrum/anfahrt.html). Wir werden den Workshop vom September auswerten. Mike M?ller wird seinen Vortrag "Python - der stille Erfolg einer Programmiersprache" als Generalprobe halten. Dieser Vortag wird am 16. Oktober 2006 in der Fachbuchhandlung Lehmanns in Leipzig die Programmiersprache Python vorstellen. F?r das leibliche Wohl wird gesorgt. Wir bitten um kurze Anmeldung per e-mail an: info at python-academy.de An den Treffen der Python Anwendergruppe kann jeder teilnehmen, der Interesse an Python hat, die Sprache bereits nutzt oder nutzen m?chte. Die Arbeitssprachen des Treffens ist Deutsch. Englisch sprechende Python-Enthusiasten sind trotzdem herzlich eingeladen. Wir ?bersetzen gern. Aktuelle Informationen zu den Treffen sind immer unter http://www.python-academy.de/User-Group/index.html zu finden. From lcrees at gmail.com Sat Oct 7 22:28:02 2006 From: lcrees at gmail.com (L. C. Rees) Date: 7 Oct 2006 13:28:02 -0700 Subject: ANN: lwebstring 0.5 Message-ID: <1160252882.646424.78890@k70g2000cwa.googlegroups.com> lwebstring is a lxml-based implementation of webstring, an XML template engine where Python is the template language. lxml exposes the power of the libxml2 and libxslt libraries to the Python programmer using the elegant and powerful yet simple ElementTree API. lwebstring extends this power to easy XML and HTML templating using the highly Pythonic webstring API inspired by PyMeld. lwebstring can be downloaded from its Python CheeseShop page at: http://cheeseshop.python.org/pypi/lwebstring/ or installed using setuptools' easy_install: easy_install lwebstring More information on lwebstring including documentation and an introductory tutorial can be found at: http://psilib.sourceforge.net/webstring.html Highlights of 0.5 include: - Support for including external XML files in an XML document using XInclude. This is useful for reusing common features between XML templates. - Function decorators for WSGI templating. This allows XML and HTML templating to be just another piece of WSGI middleware instead of using a separate API standard. From mmckerns at its.caltech.edu Sun Oct 8 03:45:50 2006 From: mmckerns at its.caltech.edu (Michael McKerns) Date: Sat, 7 Oct 2006 18:45:50 -0700 (PDT) Subject: pyIDL-0.4 Message-ID: python bindings for IDL http://www.its.caltech.edu/~mmckerns/software.html # Version 0.4: 10/06/06 added support for idl_6.3 improved support for NumPy removed dependency on Numeric --- Mike McKerns California Institute of Technology http://www.its.caltech.edu/~mmckerns From Eric_Dexter at msn.com Sun Oct 8 04:44:43 2006 From: Eric_Dexter at msn.com (edexter) Date: 7 Oct 2006 19:44:43 -0700 Subject: csound routines beta 3 is out (python csound routines) Message-ID: <1160275483.812165.128010@i3g2000cwc.googlegroups.com> An early beta of the csound routine library is out with another version to follow soon after. The csound library is a group of routines to minipulate .csd and .orc .sco .src (shortened orc format) combine delete exc. https://sourceforge.net/project/showfiles.php?group_id=156455 From chris.mcavoy at gmail.com Sun Oct 8 20:20:01 2006 From: chris.mcavoy at gmail.com (Chris McAvoy) Date: Sun, 8 Oct 2006 13:20:01 -0500 Subject: ANN: ChiPy Thurs. October 12, 2006. 7pm @ Performics 180 N. Lasalle Message-ID: <3096c19d0610081120t4ab808afh376cac93620b5eab@mail.gmail.com> Join us for our best meeting ever! Thurs. October 12th, 2006. 7pm. Topics --------- * PLY (Python Lex Yacc) David Beazley * Performance Python (without PyPy) Michael Tobis Location ------------ Performics 180 N. Lasalle 12th floor. Chicago RSVP (for building security) by Tuesday night to chris.mcavoy at gmail.com with subject "RSVP Chipy" http://chipy.org From exogen at gmail.com Mon Oct 9 02:12:37 2006 From: exogen at gmail.com (Brian Beck) Date: Sun, 08 Oct 2006 20:12:37 -0400 Subject: ANN: geopy 0.93 - Geocoding Toolbox for Python Message-ID: Hi everyone, geopy 0.93 was released tonight. What is geopy? ============== geopy is a geocoding toolbox for Python. It includes support for many popular geocoders including Google Maps, Yahoo! Maps, Virtual Earth, geocoder.us, GeoNames, MediaWiki (with the GIS extension), and Semantic MediaWiki. It also includes a module for calculating geodesic distances using different models (spherical and ellipsoidal). Where can I get it? =================== setuptools: sudo easy_install geopy Cheese Shop: http://cheeseshop.python.org/pypi/geopy svn: svn co http://geopy.googlecode.com/svn/tags/release-0.93 geopy-0.93 Documentation: http://exogen.case.edu/projects/geopy What's new in this version? =========================== geopy.geocoders now includes GeoNames (www.geonames.org). geopy.distance module was added: calculate geodesic distances. geopy.util module was added: geocoders.Geocoder.parse_geo was moved there. geopy.geocoders.Google can now be used with different domains (such as 'maps.google.co.uk') and different resources ('maps' for the standard Google Maps interface, 'maps/geo' for the HTTP geocoder interface). How about an example? ===================== py> from geopy import geocoders py> us = geocoders.GeocoderDotUS() py> place, (lat, lng) = us.geocode("1600 Pennsylvania Ave, Washington DC") py> print "%s: %.5f, %.5f" % (place, lat, lng) 1600 Pennsylvania Ave NW, Washington, DC 20502: 38.89875, -77.03768 py> from geopy import distance py> _, a = us.geocode('10900 Euclid Ave, Cleveland, OH 44106') py> _, b = us.geocode('1600 Pennsylvania Ave, Washington, DC') py> distance.distance(a, b).miles 301.35526872700962 py> from geopy import util py> util.parse_geo(u"23? 26m 22s N 23? 27m 30s E") (23.439444444444444, 23.458333333333332) -- Brian Beck Adventurer of the First Order From limodou at gmail.com Mon Oct 9 09:52:39 2006 From: limodou at gmail.com (limodou) Date: Mon, 9 Oct 2006 15:52:39 +0800 Subject: ANN:UliPad 3.4 Release Message-ID: <505f13c0610090052g48745affkb08aa93e4e3fdaa4@mail.gmail.com> What's it? ======== It's an Editor based on wxPython. NewEdit is the old name, and UliPad is the new name. UliPad uses Mixin and Plugin technique as its architecture. Most of its classes can be extended via mixin and plugin components, and finally become an integrity class at creating the instance. So UliPad is very dynamic. You can write the new features in new files, and hardly need to modify the existing code. And if you want to extend the existing classes, you could write mixins and plugins, and this will be bound to the target class that I call "Slot Class". This technique will make the changes centralized and easily managed. What's new in 3.4 ============== * Bug fix * Notebook control changed to FlatNotebook * Ctrl+Enter can directly add new line, just like(End+Enter) * jQuery support: project setup, auto create comments for functions * Creating django app's dot file, and see the image in a window * Multi view of document * Commands searching and impact mode * ReStructuredText support: project setup, syntax highlight, html view and auto update * Django Template syntax highlight * ctags support * move python syntax check plugin into core * Auto syntax highlight bind and auto-complete file bind in _project Where to download it? ================ download lastest version 3.4: http://wiki.woodpecker.org.cn/moin/UliPad?action=AttachFile&do=get&target=UliPad_3.4.zip also have windows installer: http://wiki.woodpecker.org.cn/moin/UliPad?action=AttachFile&do=get&target=UliPad3.4.exe wiki: http://wiki.woodpecker.org.cn/moin/UliPad svn: http://cvs.woodpecker.org.cn/svn/woodpecker/ulipad/trunk maillist: http://groups.google.com/group/ulipad If you have any problem as using UliPad, welcome to join the UliPad maillist to discuss. What are its features? ================ * Cross platform * based on wxPython, so it can run anywhere that wxPython works, such as: Windows, Linux. * Unicode support. * Most features of wxStyledTextCtrl(Scintilla) * Syntax highlighting, support Python, c/c++, html, django template, restructured text, ruby, perl, css, javascript, plain text * Folding * Brace Matching * ... * Extended selection * Extended word selection -- You can press Ctrl+?MouseDoubleClick to select a word including '.' * Matched selection -- Select text in quoted chars like: (), [], {}, '', "". * For example: a string just like:: def func(self, 'This is a test'): ^ The '^' char represents caret position in above line. If you press Ctrl+E, you will select the whole text in (), i.e. "self, 'This is a test'". Something more in Selection Menu. * Other editing extension * Duplicating text -- Just like Vim Ctrl+V, Ctrl+P, and more. You can duplicate above or below char, word, line * which match the leading chars. * Quoting text -- Add some quoted chars before and after selected text, just as: "", '', (), [], {}, and * customized string, etc. * Text convertion and view -- python -> html, reStructured Text -> html, textile -> html, and you can output or view * the html text in message window, or html view window, or replace the selected text. * Utf-8 encoding auto detect * Changing document encoding * Auto backup * Last session support -- It'll save all the filenames as closed, and reopen the files as next started. * Smart judge the indent char -- It'll auto guess the indent char, and sets it. * Finding in files * Bookmark support * Python support * built-in python interactive window based on PyShell, support Unicode * Auto completion * Function syntax calltips * Run, run with argument, stop python source * Auto change current path * Python class browser * Syntax check * Code snippets * You can manage your code snippets with categories, and each category can have many items. Every item will represent a code snippet. You can insert an item just by double-clicking on it. It even supports importing and exporting. * Simple project support * Can create a special file _project, so every file and folder under the folder which has the _project can be considered as a whole project. * Extension mechanism * Script -- You can write easy script to manipulate the all resource of UliPad(NewEdit), just like: text conversion, etc. * Plugin -- Customized function. More complex but more powerful. Can easily merge with UliPad(NewEdit), and can be * managed via menu. * Shell command -- Add often used shell commands, and execute them. * Ftp support * You can edit remote files through ftp. You can add, rename, delete, upload, download file/directory. * Multilanguage support * Currently supports two languages: English and Chinese, which can be auto-detected. * Shipped many plugins(must be configed as used them before) * djangoproj -- user for django development * Shipped scripts * You can find them at UliPad/scripts directory * Wizard * You can make your own wizard template. The wizard can input user data, combine with template, and output the result. And wizard also support code framework created. This feature will help you improving coding efficiency. * Direcotry Browser * Browse multiple directories, and you can really add, delete, rename directories and files. Double click will open the file in Editor window. * Input Assistant * Suport user autocomplete file, it can help to input code very helpful and functional. Just like EditPlus, but may be more powerful. * Column Editing Mode * You can select multilines, and then set a column mode region, so in any line of this region, if you enter a character, other lines will also add this character. If you want to deal with multilines as a similar mode, this functionality will be very handy. Hope fun! -- I like python! UliPad <>: http://wiki.woodpecker.org.cn/moin/UliPad My Blog: http://www.donews.net/limodou From limodou at gmail.com Mon Oct 9 09:58:41 2006 From: limodou at gmail.com (limodou) Date: Mon, 9 Oct 2006 15:58:41 +0800 Subject: ANN:UliPad 3.4 Release In-Reply-To: <505f13c0610090052g48745affkb08aa93e4e3fdaa4@mail.gmail.com> References: <505f13c0610090052g48745affkb08aa93e4e3fdaa4@mail.gmail.com> Message-ID: <505f13c0610090058x13cff334xaeb89fd029d19ab2@mail.gmail.com> Sorry for the url download lastest version 3.4: http://wiki.woodpecker.org.cn/moin/UliPad?action=AttachFile&do=get&target=ulipad_3.4.zip also have windows installer: http://wiki.woodpecker.org.cn/moin/UliPad?action=AttachFile&do=get&target=UliPad.3.4.exe -- I like python! UliPad <>: http://wiki.woodpecker.org.cn/moin/UliPad My Blog: http://www.donews.net/limodou From steven.bethard at gmail.com Mon Oct 9 16:23:57 2006 From: steven.bethard at gmail.com (steven.bethard at gmail.com) Date: Mon, 9 Oct 2006 14:23:57 +0000 (GMT) Subject: python-dev Summary for 2006-08-01 through 2006-08-15 Message-ID: <20061009142359.7E19A1E4008@bag.python.org> python-dev Summary for 2006-08-01 through 2006-08-15 ++++++++++++++++++++++++++++++++++++++++++++++++++++ .. contents:: [The HTML version of this Summary is available at http://www.python.org/dev/summary/2006-08-01_2006-08-15] ========= Summaries ========= -------------------------------- Mixing str and unicode dict keys -------------------------------- Ralf Schmitt noted that in Python head, inserting str and unicode keys to the same dictionary would sometimes raise UnicodeDecodeErrors:: >>> d = {} >>> d[u'm\xe1s'] = 1 >>> d['m\xe1s'] = 1 Traceback (most recent call last): ... UnicodeDecodeError: 'ascii' codec can't decode byte 0xe1 in position 1: ordinal not in range(128) This error showed up as a result of Armin Rigo's `patch to stop dict lookup from hiding exceptions`_, which meant that the UnicodeDecodeError raised when a str object is compared to a non-ASCII unicode object was no longer silenced. In the end, people agreed that UnicodeDecodeError should not be raised for equality comparisons, and in general, ``__eq__()`` methods should not raise exceptions. But comparing str and unicode objects is often a programming error, so in addition to just returning False, equality comparisons on str and non-ASCII unicode now issues a warning with the UnicodeDecodeError message. .. _patch to stop dict lookup from hiding exceptions: http://bugs.python.org/1497053 Contributing threads: - `unicode hell/mixing str and unicode as dictionary keys `__ - `Dicts are broken Was: unicode hell/mixing str and unicode asdictionarykeys `__ - `Dicts are broken ... `__ - `Dict suppressing exceptions `__ ----------------------- Rounding floats to ints ----------------------- Bob Ippolito pointed out a long-standing bug in the struct module where floats were automatically converted to ints. Michael Urman showed a simple case that would provoke an exception if the bug were fixed:: pack('>H', round(value * 32768)) The source of this bug is the expectation that ``round()`` returns an int, when it actually returns a float. There was then some discussion about splitting the round functionality into two functions: ``__builtin__.round()`` which would round floats to ints, and ``math.round()`` which would round floats to floats. There was also some discussion about the optional argument to ``round()`` which currently specifies the number of decimal places to round to -- a number of folks felt that it was a mistake to round to *decimal* places when a float can only truly reflect *binary* places. In the end, there were no definite conclusions about the future of ``round()``, but it seemed like the discussion might be resumed on the Python 3000 list. Contributing threads: - `struct module and coercing floats to integers `__ - `Rounding float to int directly (Re: struct module and coercing floats to integers) `__ - `Rounding float to int directly (Re: struct module and coercing floats to integers) `__ - `Rounding float to int directly ... `__ - `struct module and coercing floats to integers `__ --------------------------- Assigning to function calls --------------------------- Neal Becker proposed that code by ``X() += 2`` be allowed so that you could call __iadd__ on objects immediately after creation. People pointed out that allowing augmented *assignment* is misleading when no assignment can occur, and it would be better just to call the method directly, e.g. ``X().__iadd__(2)``. Contributing threads: - `SyntaxError: can't assign to function call `__ - `Split augmented assignment into two operator sets? [Re: SyntaxError: can't assign to function call] `__ --------------------------------------- PEP 357: Integer clipping and __index__ --------------------------------------- After some further discussion on the `__index__ issue`_ of last fortnight, Travis E. Oliphant proposed `a patch for __index__`_ that introduced three new C API functions: * PyIndex_Check(obj) -- checks for nb_index * PyObject* PyNumber_Index(obj) -- calls nb_index if possible or raises a TypeError * Py_ssize_t PyNumber_AsSsize_t(obj, err) -- converts the object to a Py_ssize_t, raising err on overflow After a few minor edits, this patch was checked in. .. ___index__ issue: http://www.python.org/dev/summary/2006-07-16_2006-07-31/#pep-357-integer-clipping-and-index .. _a patch for __index__: http://bugs.python.org/1538606 Contributing threads: - `Bad interaction of __index__ and sequence repeat `__ - `__index__ clipping `__ - `Fwd: [Python-checkins] r51236 - in python/trunk: Doc/api/abstract.tex Include/abstract.h Include/object.h Lib/test/test_index.py Misc/NEWS Modules/arraymodule.c Modules/mmapmodule.c Modules/operator.c Objects/abstract.c Objects/classobject.c Objects/ `__ - `Fwd: [Python-checkins] r51236 - in python/trunk: Doc/api/abstract.tex Include/abstract.h Include/object.h Lib/test/test_index.py Misc/NEWS Modules/arraymodule.c Modules/mmapmodule.c Modules/operator.c Objects/abstract.c Objects/class `__ ---------------------------- OpenSSL and Windows binaries ---------------------------- Jim Jewett pointed out that a default build of OpenSSL includes the patented IDEA cipher, and asked whether that needed to be kept out of the Windows binary versions. There was some concern about dropping a feature, but Gregory P. Smith pointed out that IDEA isn't directly exposed to any Python user, and suggested that IDEA should never be required by any sane SSL connection. Martin v. Lowis promised to look into making the change. Update: The change was checked in before 2.5 was released. Contributing threads: - `windows 2.5 build: use OpenSSL for hashlib [bug 1535502] `__ - `openSSL and windows binaries - license `__ ---------------------------- Type of range object members ---------------------------- Alexander Belopolsky proposed making the members of the ``range()`` object use Py_ssize_t instead of C longs. Guido indicated that this was basically wasted effort -- in the long run, the members should be PyObject* so that they can handle Python longs correctly, so converting them to Py_ssize_t would be an intermediate step that wouldn't help in the transition. There was then some discussion about the int and long types in Python 3000, with Guido suggesting two separate implementations that would be mostly hidden at the Python level. Contributing thread: - `Type of range object members `__ ------------------------ Distutils version number ------------------------ A user noted that Python 2.4.3 shipped with distutils 2.4.1 and the version number of distutils in the repository was only 2.4.0 and requested that Python 2.5 include the newer distutils. In fact, the newest distutils was already the one in the repository but the version number had not been appropriately bumped. For a short while, the distutils number was automatically generated from the Python one, but Marc-Andre Lemburg volunteered to manually bump it so that it would be easier to use the SVN distutils with a different Python version. Contributing threads: - `Which version of distutils to ship with Python 2.5? `__ - `no remaining issues blocking 2.5 release `__ ------------------------------------- Dict containment and unhashable items ------------------------------------- tomer filiba suggested that dict.__contain__ should return False instead of raising a TypeError in situations like:: >>> a={1:2, 3:4} >>> [] in a Traceback (most recent call last): File "", line 1, in ? TypeError: list objects are unhashable Guido suggested that swallowing the TypeError here would be a mistake as it would also swallow any TypeErrors produced by faulty ``__hash__()`` methods. Contributing threads: - `dict containment annoyance `__ - `NotHashableError? (Re: dict containment annoyance) `__ ------------------------------- Returning longs from __hash__() ------------------------------- Armin Rigo pointed out that Python 2.5's change that allows id() to return ints or longs would have caused some breakage for custom hash functions like:: def __hash__(self): return id(self) Though it has long been documented that the result of ``id()`` is not suitable as a hash value, code like this is apparently common. So Martin v. Lowis and Armin arranged for ``PyLong_Type.tp_hash`` to be called in the code for ``hash()``. Contributing thread: - `returning longs from __hash__() `__ ---------------------- instancemethod builtin ---------------------- Nick Coghlan suggested adding an ``instancemethod()`` builtin along the lines of ``staticmethod()`` and ``classmethod()`` which would allow arbitrary callables to act more like functions. In particular, Nick was considering code like:: class C(object): method = some_callable Currently, if ``some_callable`` did not define the ``__get__()`` method, ``C().method`` would not bind the ``C`` instance as the first argument. By introducing ``instancemethod()``, this problem could be solved like:: class C(object): method = instancemethod(some_callable) There wasn't much of a reaction one way or another, so it looked like the idea would at least temporarily be shelved. Contributing thread: - `2.6 idea: a 'function' builtin to parallel classmethod and staticmethod `__ -------------------------------- Unicode versions and unicodedata -------------------------------- Armin Ronacher noted that Python 2.5 implements Unicode 4.1 but while a ucd_3_2_0 object is available (implementing Unicode 3.2), no ucd_4_1_0 object is available. Martin v. Lowis explained that the ucd_3_2_0 object is only available because IDNA needs it, and that there are no current plans to expose any other Unicode versions (and that ucd_3_2_0 may go away when IDNA no longer needs it). Contributing thread: - `Unicode Data in Python2.5 is missing a ucd_4_1_0 object `__ -------------------------- Elementtree and Namespaces -------------------------- Elements (and attributes) can be associated with a namespace, such as http://www.w3.org/XML/1998/namespace:id The xmlns attribute creates a "prefix" (alias) for a namespace, so that you can abbreviate the above as xml:id ElementTree treats the prefix as a just an aid to human readers, and creates its own abbreviations that are consistent throughout a document. Some tools (including w3 recommendations for canonicalization) treat the prefix itself as meaningful. Elementtree may support this in version 1.3, but it wasn't going to be there in time for 2.5, and it wasn't judged important enough to keep etree out of the release. If you need it sooner, then http://codespeak.net/lxml supports the etree API and does retain prefixes. Contributing thread: - `Elementtree and Namespaces in 2.5 `__ [Thanks to Jim Jewett for this summary.] ================== Previous Summaries ================== - `Release manager pronouncement needed: PEP 302 Fix `__ =============== Skipped Threads =============== - `clock_gettime() vs. gettimeofday()? `__ - `Strange memo behavior from cPickle `__ - `internal weakref API should be Py_ssize_t? `__ - `Weekly Python Patch/Bug Summary `__ - `Releasemanager, please approve #1532975 `__ - `FW: using globals `__ - `TRUNK FREEZE 2006-07-03, 00:00 UTC for 2.5b3 `__ - `segmentation fault in Python 2.5b3 (trunk:51066) `__ - `using globals `__ - `uuid module - byte order issue `__ - `RELEASED Python 2.5 (beta 3) `__ - `TRUNK is UNFROZEN `__ - `2.5 status `__ - `Python 2.5b3 and AIX 4.3 - It Works `__ - `More tracker demos online `__ - `need an SSH key removed `__ - `BZ2File.writelines should raise more meaningful exceptions `__ - `test_mailbox on Cygwin `__ - `cgi.FieldStorage DOS (sf bug #1112549) `__ - `2.5b3, commit r46372 regressed PEP 302 machinery (sf not letting me post) `__ - `free(): invalid pointer `__ - `should i put this on the bug tracker ? `__ - `Is this a bug? `__ - `httplib and bad response chunking `__ - `cgi DoS attack `__ - `DRAFT: python-dev summary for 2006-07-01 to 2006-07-15 `__ - `SimpleXMLWriter missing from elementtree `__ - `DRAFT: python-dev summary for 2006-07-16 to 2006-07-31 `__ - `Is module clearing still necessary? [Re: Is this a bug?] `__ - `PyThreadState_SetAsyncExc bug? `__ - `Errors after running make test `__ - `What is the status of file.readinto? `__ - `Recent logging spew `__ - `[Python-3000] Python 2.5 release schedule (was: threading, part 2) `__ - `test_socketserver failure on cygwin `__ - `ANN: byteplay - a bytecode assembler/disassembler `__ - `Arlington VA sprint on Sept. 23 `__ - `IDLE patches - bugfix or not? `__ - `Four issue trackers submitted for Infrastructue Committee's tracker search `__ ======== Epilogue ======== This is a summary of traffic on the `python-dev mailing list`_ from August 01, 2006 through August 15, 2006. 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 python-dev summary is the 10th written by Steve Bethard. To contact me, please send email: - Steve Bethard (steven.bethard at gmail.com) Do *not* post to comp.lang.python if you wish to reach me. 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 cent counts 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 ------------------------- 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. We 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. .. _python-dev: http://www.python.org/dev/ .. _python-dev mailing list: http://mail.python.org/mailman/listinfo/python-dev .. _comp.lang.python: http://groups.google.com/groups?q=comp.lang.python .. _PEP Markup: http://www.python.org/peps/pep-0012.html .. _reST: .. _reStructuredText: http://docutils.sf.net/rst.html .. _Python Software Foundation: http://python.org/psf/ .. _archive: http://www.python.org/dev/summary/ .. _RSS feed: http://www.python.org/dev/summary/channews.rdf From jdahlin at async.com.br Mon Oct 9 17:51:41 2006 From: jdahlin at async.com.br (Johan Dahlin) Date: Mon, 09 Oct 2006 12:51:41 -0300 Subject: ANNOUNCE: kiwi 1.9.11 Message-ID: <452A700D.1090802@async.com.br> Kiwi is a PyGTK framework for building graphical applications loosely based on MVC Model-View-Controller (MVC) and Allen Holub's Visual proxy [1]. Think of Kiwi as a high-level, object-oriented layer built on PyGTK. Its design is based on real-world experience using PyGTK to develop large desktop applications, which use many concepts common to most graphical applications: multiple windows and dialogs, forms, data persistence, lists and high-level classes that support domain objects directly. Download ======== Grab the latest sources from: http://download.gnome.org/sources/kiwi/1.9/kiwi-1.9.11.tar.gz and the win32 installer from: http://download.gnome.org/binaries/win32/kiwi-1.9.11.win32.exe What's new since 1.9.10? ======================= - Much improved entry mask handling (#2838, Ronaldo) - libglade integration bugfixes - Workaround for PyGTK 2.10 bug - Add right-click to ObjectList (#2817, Ronaldo) - raise ValueError instead of AttributeError (#1998, Sidnei) Features ======== * An MVC-derived framework of classes: * Views, which represent the graphical display * Controllers, which handles user interaction with the widgets in a View. * Delegates, combines a View and a Controller. * Models, which are special mixins for your domain objects * Proxies, special types of Delegate designed to implement forms * Validation: Kiwi supports validation on different levels: data type validation and verification on the Model/Proxy level, View validation and hooks for visually displaying validation state. * ObjectList widget, which provides a higher level abstraction of GtkTreeView and all its classes (GtkTreeModel, GtkTreeViewColumn, GtkCellRenderer) with hooks to easily integrate into the Kiwi Framework. * Mask support: You can set a mask on entries to force the input to follow a certain standard, such as zip code, social security, ip address * Gazpacho integration for most (non-deprecated) interactive widgets with attributes for handling validation and proxy attributes. * UI Testing framework Features a recorder and a player. The recorder allows you to record different tasks, a script will be saved which will reproduce the actions you made in the interface. * Kiwi Tasklets Tasklet is a small coroutines framework written by Gustavo Carneiro, it was previously known as gtasklets. * PyGTK utilities, to make it easier to add signals and properties to your objects. * i18n translation utilities, to help you translate PyGTK applications, currently depends on gettext and intltool. * and many other things! Requirements ============ Python 2.3 or higher (2.4 recommended) http://www.python.org/ PyGTK 2.6.0 or higher (2.8 recommended) http://www.pygtk.org/ gazpacho 0.6.5 (svn recommenced) http://gazpacho.sicem.biz/ Documentation ============= Kiwi provides API documentation generated by epydoc, it can be found at http://www.async.com.br/projects/kiwi/api/ Included in the tarball are also a number of examples, which serves as a good starting point. Keep in mind that most of them require gazpacho to be installed. Thanks ====== Christian Robottom Reis: Original author and design Lorenzo Gil Sanchez: PyGTK 2.x port Also thanks to the following people which has contributed features or bug reports: Ali Afshar, Gustavo Barbieri, Gustavo Carneiro, David M Cook, Daniel Saran R. da Cunha, Patrick O'Brien, Ronaldo Maia, Evandro Vale Miquelito, Henrique Romano, Sidnei da Silva, Aaron Spike Resources ========= Homepage http://www.async.com.br/projects/kiwi/ Download http://www.async.com.br/projects/kiwi/download/ Repository http://svn.async.com.br/cgi-bin/viewcvs.cgi/kiwi/ Report a bug http://bugs.async.com.br/enter_bug.cgi?product=Kiwi API docs http://www.async.com.br/projects/kiwi/api/ Open bugs http://tinyurl.com/cyrms Mail. list http://www.async.com.br/mailman/listinfo/kiwi/ [1] http://en.wikipedia.org/wiki/Model-view-controller [2] http://tinyurl.com/2ccch [3] http://epydoc.sourceforge.net/ -- Johan Dahlin Async Open Source From bray at sent.com Tue Oct 10 01:23:14 2006 From: bray at sent.com (bray at sent.com) Date: Mon, 09 Oct 2006 18:23:14 -0500 Subject: Chicago Python User Group Thurs October 12, 2006 Message-ID: <1160436194.2711.272929939@webmail.messagingengine.com> Thurs. October 12th, 2006. 7pm. This will be our best meeting, yet. David Beasley http://www.dabeaz.com, software developer, writer, and jazz musician will present on PLY. It's 100% Python and very cool. Do not miss this one! Topics ------ * PLY (Python Lex Yacc) David Beazley * Performance Python (without PyPy) Michael Tobis Location -------- Performics 180 N. Lasalle 12th floor. Chicago RSVP (for building security) by Tuesday night to chris.mcavoy at gmail.com with subject "RSVP Chipy" After the storm --------------- A group may be heading off to catch the snake's tail end of Tech-cocktail 2 after the meeting and open discussion. We are not affilated with Tech-cocktail 2, so you must also RSVP About ChiPy ----------- ChiPy is a group of Chicago Python Programmers, l33t, and n00bs. Meetings are held monthly at various locations around Chicago. Also, ChiPy is a proud sponsor of many Open Source and Educational efforts in Chicago. Stay tuned to the mailing list for more info. ChiPy website: ChiPy Mailing List: Python website: --- Go ChiPy! From python-url at phaseit.net Tue Oct 10 05:56:10 2006 From: python-url at phaseit.net (Cameron Laird) Date: Tue, 10 Oct 2006 03:56:10 +0000 (UTC) Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Oct 10) Message-ID: QOTW: "... [N]ow that I've made the switch to python, I'm several orders of magnitude more productive ..." - Rob Knapp http://groups.google.com/group/comp.lang.python/msg/8a4efd549bfb451a "Hanging out around the Python community will make you a better VB, dotNet or C++ programmer ..." - Carl Trachte http://groups.google.com/group/comp.lang.python/msg/e2648d5a03c04d4e "It was a revelation to bump into Python in 1996. Suddenly, there was something which was easy to get started with, but still just felt better and better the longer I used it. That's the killer feature in my mind." - Magnus Lycka http://groups.google.com/group/comp.lang.python/msg/e2a3ec58d73a2d12 If you're in the Midwest (USA) this week, make a point of visiting the Chicago Python User Group on Thursday. Jazz musician David Beasley will present PLY: http://groups.google.com/group/comp.lang.python/msg/11e0ef756f4892c1 timbot comments with unique and useful detail on the Python license(s): http://groups.google.com/group/comp.lang.python/msg/ebb262db50c45d83 goon summarizes WSGI resources: http://groups.google.com/group/comp.lang.python/msg/f7d67bc039748792 A Kamaelia spokesman mentions constructions involving PVR, visual composition, real-time 3D spinning, Dirac encoding, and other "bling": http://groups.google.com/group/comp.lang.python/msg/001dc5992b1bfbb4 Martin von Loewis and Fredrik Lundh remark that XML parsing fundamentally conflicts with lexically-detailed text editing, and vice-versa: http://groups.google.com/group/comp.lang.python/msg/8acd9f676278b720 John Machin's xlrd makes it practical to read any Excel spreadsheet programmatically, even when hosted under Linux: http://groups.google.com/group/comp.lang.python/browse_thread/thread/572b0ac9648ccd66/ ======================================================================== 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 Python411 indexes "podcasts ... to help people learn Python ..." Updates appear more-than-weekly: http://www.awaretek.com/python/index.html 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/ 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/python/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 Although unmaintained since 2002, the Cetus collection of Python hyperlinks retains a few gems. 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://www.python.org/dev/peps/pep-0042/ 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/topic/python/ (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 There is *not* an RSS for "Python-URL!"--at least not yet. Arguments for and against are occasionally entertained. 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!". Write to the same address to unsubscribe. -- The Python-URL! Team-- Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and sponsor the "Python-URL!" project. From steven.bethard at gmail.com Mon Oct 9 22:04:26 2006 From: steven.bethard at gmail.com (Steven Bethard) Date: Mon, 9 Oct 2006 14:04:26 -0600 Subject: [ANN] argparse 0.1 - Command-line parsing library Message-ID: Announcing argparse 0.1 ----------------------- argparse home: http://argparse.python-hosting.com/ argparse at PyPI: http://www.python.org/pypi/argparse/0.1.0 argparse module download: http://argparse.python-hosting.com/file/trunk/argparse.py?format=raw About this release ================== This release fixes a few minor bugs and adds the 'outfile' type. Extensive updates to the API documentation make this the most thoroughly documented release yet: http://argparse.python-hosting.com/wiki/ArgumentParser New in this release =================== * The 'outfile' type. * API documentation. About argparse ============== The argparse module is an optparse-inspired command line parser that improves on optparse by: * handling both optional and positional arguments * supporting parsers that dispatch to sub-parsers * producing more informative usage messages * supporting actions that consume any number of command-line args * allowing types and actions to be specified with simple callables instead of hacking class attributes like STORE_ACTIONS or CHECK_METHODS as well as including a number of other more minor improvements on the optparse API. To whet your appetite, here's a simple program that sums its command-line arguments and writes them to a file:: parser = argparse.ArgumentParser() parser.add_argument('integers', type=int, nargs='+') parser.add_argument('--log', type='outfile', default=sys.stdout) args = parser.parse_args() args.log.write('%s\n' % sum(args.integers)) args.log.close() From hosalo at _NO_SPAM_gmail.com Tue Oct 10 13:35:09 2006 From: hosalo at _NO_SPAM_gmail.com (Heikki Salo) Date: Tue, 10 Oct 2006 11:35:09 GMT Subject: Release: DirectPython 0.6 Message-ID: A new version of DirectPython is now available at http://directpython.sourceforge.net/ What is it? ----------- DirectPython is a C++ extension to the Python programming language which provides basic access to DirectX (9.0c) API, including Direct3D, DirectSound, DirectShow and DirectInput. The full distribution is very easy to install and it includes many samples and documentation that show the basics of DirectPython programming. No additional packages are needed. Whats new in 0.6.0? ------------------ -Bug fixes -Minor features added -Use 'comtypes' to access the whole DirectX API And much more. Check the release notes for further information. This is not a very critical release when compared to 0.5, but if you can you should update. This version should be fully compatible with 0.5. Requirements ------------- A Windows operating system (98 and up) with Python (2.4/2.5) and DirectX 9.0c installed. From jamesthiele.usenet at gmail.com Tue Oct 10 17:28:45 2006 From: jamesthiele.usenet at gmail.com (jamesthiele.usenet at gmail.com) Date: 10 Oct 2006 08:28:45 -0700 Subject: Seattle Python Interest Group Meeting Thursday, October 12th at 7:00 PM Message-ID: <1160494125.560950.193320@c28g2000cwb.googlegroups.com> Seattle Python Interest Group Meeting Thursday, October 12th at 7:00 PM For more info go to www.seapig.org One topic will certainly be upcoming Sprint From jeff at taupro.com Wed Oct 11 15:57:01 2006 From: jeff at taupro.com (Jeff Rush) Date: Wed, 11 Oct 2006 08:57:01 -0500 Subject: Seeking Publicity Coordinator for PyCon 2007 Message-ID: <452CF82D.3010006@taupro.com> The PyCon organizers are looking for someone to volunteer as publicity coordinator for PyCon 2007. This year we have started planning sufficiently in advance that we'd like to get some press coverage in print magazines. What is involved, you ask? 1. Brainstorm/collect a list of candidate publications for press releases. 2. Post the lead time and submission requirements for each to the wiki. 3. Develop or work with others to develop a (textual) press release layout. 4. At the appropriate time (e.g. when certain details are settled such as keynote speakers), actually submit the press release. There is a wiki page at the following on which to collect ideas on where to submit a press release: http://us.pycon.org/TX2007/PublicityIdeas That's it! It really shouldn't take a lot of time; a bit of surfing, perhaps a few email queries. -Jeff From jeff at taupro.com Wed Oct 11 17:01:53 2006 From: jeff at taupro.com (Jeff Rush) Date: Wed, 11 Oct 2006 10:01:53 -0500 Subject: A Call for a Presenter on Python Eggs Message-ID: <452D0761.3020104@taupro.com> Eggs are important to Python and will become more so over the next few years, if understood and embraced by the community. They are a key competitive feature - I've been asked so many times what is the Python equivalent to CPAN and finally we're developing an answer. At PyCon 2007 we need a solid set of talks about eggs, broken down into just using them, how to build and distribute them, and then an advanced talk on some of the more exotic aspects of eggs. At PyCon 2006, essentially the 3rd talk I mention above was given to a standing-room-only audience, and then repeated against an hour later as people in the hall could not get in. But missing were the first two talks - many people were not ready for advanced material but sought an introduction. Who in our community is building eggs on a frequent basis, and is good at explaining how they work? Below are three talk outlines I've sketched out, along with the slides from a talk I tossed together for the Dallas Pythoneers group. They need polish and I'm donating them to the cause. Will someone please step forward and address this critical need? For revision, links to the three wiki outline pages appear on: http://us.pycon.org/TX2007/TalkIdeas --- Python Eggs - Using and Installing Them * What is so cool about eggs? Wow me. * What problem were they intended to solve? * What is their relation to distutils? * So how does distutils work then? * How do they compare to CPAN and RPM approaches? * Sound good, how do I enable eggs on my system? * How do I accomplish common operations? o install an egg o test install an egg, to see if it would work o uninstall an egg o list what eggs are installed at the moment o switch between the versions of an egg * I don't trust eggs - how can I partially install one, examine it and then finish the installation? * How do I find out what eggs exist, and their names? * What about py2exe and droplets? Competing approaches? * Show me a walkthru of the cheeseshop - how to find a package. * How do I figure out the author of an egg I'm having trouble with? --- Python Eggs - Creating and Distributing Them * Where does distutils fit in? * What do I need to add to setup.py to package my software as an egg? * How does it work re path configuration files? * What are the issues with zipped eggs; how can my code access my data? * How do I produce cross-platform eggs? * How do I produce platform-specific eggs? * How do I get my eggs registered on the cheeseshop? * How do I upload my eggs, source and binaries? * How can I volunteer as a packager for non-egg authors? * Some eggs are broken in the cheeseshop - how can I help? (Keep this talk simple and focused on _just_ getting your vanilla egg packaged and uploaded. Defer the advanced egg issues to the third talk). --- Python Eggs - Advanced Packaging * What are entry points? * How does dynamic discovery/plugins work? * I hear Trac uses them - how? * What are extras? They sound nifty! * What is a namespace package? When and how do I use them? * How can I have multiple distribution versions? * I hear eggs can detect files under CVS/subversion control - how does that work? * Also eggs have support for units tests - how? * Where do the egg experts hang out? An Old Talk of mine about Eggs (from which to borrow slides/ideas): * Attach:2006-03-25-AboutPythonEggs.odt * Attach:2006-03-25-AboutPythonEggs.pdf -Jeff Co-Chair PyCon 2007 From jeff at taupro.com Wed Oct 11 17:53:21 2006 From: jeff at taupro.com (Jeff Rush) Date: Wed, 11 Oct 2006 10:53:21 -0500 Subject: Call for Members of Panels on Web Technologies Message-ID: <452D1371.2090306@taupro.com> Talks at previous PyCons have tended to be of the lecture format. I'd like to see if we can get some panel discussions going and am looking for participants. At PyCon 2005 in D.C. Michelle Levesque gave a wonderful talk, PyWebOff, contrasting a few of the web frameworks. However, it is a lot of work to research many of them, so how about instead we just invite some experts for the various frameworks to debate them instead? And answer tough questions from the audience? For updating, links to the following rough outlines are at: http://us.pycon.org/TX2007/TalkIdeas We need some moderators to work up more questions, and to coordinate with the panelists. Hey, it may be easier than preparing your own presentation and slides. I'd like to see three talk panels: --- Panel - Web Frameworks Frameworks * Django * Zope 2 * Zope 3 * Twisted Web * Quixote * TurboGears Questions Put To the Panel * When did the framework come into existence and what problem was it created to solve? * What are its strengths and maturity level? What is it ideal to use for? * What are its weaknesses? What would you NOT use it for? --- Panel - Web Templating Languages Templates Covered * Zope TAL, TALES, METAL * Twisted STAN * Cheetah * Myghty * Django's Template Language * TurboGears Kid * Quixote Python Template Language (PTL) Questions to Put to the Panelists * Python code in your HTML, or HTML in your code? * Which can and cannot be handed off to a graphics designer? * Where do they stand in performance? in Caching? * Which can work with less than a page i.e. Zope viewlets, widgets? * Which frameworks let me plug in my choice of template language? (initially show the audience a representative sample of each) --- Panel - Object Relational Mappers (ORMs) Mappers Covered * SQLObject * SQLAlchemy * Django ORM Questions Put to Panelists * Natural or artificial keys? * Support for existing database schemas or must I do it your way? * How is the performance? * How smart is it in handling complex schema? * Any support for access control security at the object level? * What flavor and degree of transaction support is offered? Per thread, per context, autocommit? -Jeff Co-Chair PyCon 2007 From wescpy at gmail.com Wed Oct 11 19:39:26 2006 From: wescpy at gmail.com (wesley chun) Date: Wed, 11 Oct 2006 10:39:26 -0700 Subject: ANN: Advanced Python training course, Nov 8-10, San Francisco Message-ID: <78b3a9580610111039hf332877ke9433cc0760143c6@mail.gmail.com> FINAL REMINDER... we still have some seats left! What: Advanced Python Programming When: Nov 8-10 2006 Where: San Francisco (SFO/San Bruno), CA, USA http://cyberwebconsulting.com (click on "Python Training") This course, meant to follow our in-depth introduction class, adds new tools to the Python programmer's toolkit. We explore advanced topics such as: network programming with sockets, Internet clients, GUI development, Web/CGI, databases/SQL, Extending Python with C, threads, etc. Lectures and lab will get attendees comfortable developing applications in these areas. Come join us in beautiful Northern California for another rigorous Python training event taught by software engineer, "Core Python Programming" author, and technical instructor, Wesley Chun. This course will take place in San Bruno right near the San Francisco International Airport at the: Staybridge Suites San Francisco Airport 1350 Huntington Ave San Bruno, CA 94066 USA +1-650-588-0770 LOCALS: accessible from the entire Bay Area: parking + easy 101/280/380 access, across the street from San Bruno BART and up the street from San Bruno CalTrain stations VISITORS: free shuttle to/from the airport, lots of free food and wireless The cost is $1295 per attendee. Discounts available. For more information and registration, go to the website above. 2007 CALENDAR: Feb 7-9 (Intro), May 16-18 (Advanced), Aug 20-22 (Intro) hope to see you in class! -- wesley - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - "Core Python Programming", Prentice Hall, (c)2007,2001 http://corepython.com wesley.j.chun :: wescpy-at-gmail.com python training and technical consulting cyberweb.consulting : silicon valley, ca http://cyberwebconsulting.com From anthony at python.org Thu Oct 12 09:31:49 2006 From: anthony at python.org (Anthony Baxter) Date: Thu, 12 Oct 2006 17:31:49 +1000 Subject: SECURITY ADVISORY [PSF-2006-001] Buffer overrun in repr() for UCS-4 encoded unicode strings Message-ID: <200610121732.00587.anthony@python.org> SECURITY ADVISORY [PSF-2006-001] Buffer overrun in repr() for UCS-4 encoded unicode strings http://www.python.org/news/security/PSF-2006-001/ Advisory ID: PSF-2006-001 Issue Date: October 12, 2006 Product: Python Versions: 2.2, 2.3, 2.4 prior to 2.4.4, wide unicode (UCS-4) builds only CVE Names: CAN-2006-4980 Python is an interpreted, interactive, object-oriented programming language. It is often compared to Tcl, Perl, Scheme or Java. The Python development team has discovered a flaw in the repr() implementation of Unicode string objects which can lead to execution of arbitrary code due to an overflow in a buffer allocated with insufficient size. The flaw only manifests itself in Python builds configured to support UCS-4 Unicode strings (using the --enable-unicode=ucs4 configure flag). This is still not the default, which is why the vulnerability should not be present in most Python builds out there, especially not the builds for the Windows or Mac OS X platform provided by www.python.org. You can find out whether you are running a UCS-4 enabled build by looking at the sys.maxunicode attribute: it is 65535 in a UCS-2 build and 1114111 in a UCS-4 build. More information can be found in this posting to the python-dev mailing list: http://mail.python.org/pipermail/python-dev/2006-October/069260.html The Common Vulnerabilities and Exposures project (cve.mitre.org) has assigned the name CAN-2006-4980 to this issue. Python 2.4.4 will be released from www.python.org next week containing a fix for this issue. A release candidate of 2.4.4 is already available containing the fix. Python 2.5 also already contains the fix and is not vulnerable. Patches for Python 2.2, 2.3 and 2.4 are also immediately available: * http://python.org/files/news/security/PSF-2006-001/patch-2.3.txt (Python 2.2, 2.3) * http://python.org/files/news/security/PSF-2006-001/patch-2.4.txt (Python 2.4) Acknowledgement: thanks to Benjamin C. Wiley Sittler for discovering this issue. The official URL for this security advisory is http://www.python.org/news/security/PSF-2006-001/ -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 191 bytes Desc: not available Url : http://mail.python.org/pipermail/python-announce-list/attachments/20061012/3e4c7a89/attachment.pgp From anthony at python.org Thu Oct 12 09:33:02 2006 From: anthony at python.org (Anthony Baxter) Date: Thu, 12 Oct 2006 17:33:02 +1000 Subject: RELEASED Python 2.4.4, release candidate 1 Message-ID: <200610121733.11507.anthony@python.org> On behalf of the Python development team and the Python community, I'm happy to announce the release of Python 2.4.4 (release candidate 1). Python 2.4.4 is a bug-fix release. While Python 2.5 is the latest version of Python, we're making this release for people who are still running Python 2.4. See the release notes at the website (also available as Misc/NEWS in the source distribution) for details of the more than 80 bugs squished in this release, including a number found by the Coverity and Klocwork static analysis tools. We'd like to offer our thanks to both these companies for making this available for open source projects. * Python 2.4.4 contains a fix for PSF-2006-001, a buffer overrun * * in repr() of unicode strings in wide unicode (UCS-4) builds. * * See http://www.python.org/news/security/PSF-2006-001/ for more. * Assuming no major problems crop up, a final release of Python 2.4.4 will follow in about a week's time. This will be the last planned release in the Python 2.4 series - future maintenance releases will be in the 2.5 line. For more information on Python 2.4.4, including download links for various platforms, release notes, and known issues, please see: http://www.python.org/2.4.4/ Highlights of this new release include: - Bug fixes. According to the release notes, at least 80 have been fixed. - A fix for PSF-2006-001, a bug in repr() for unicode strings on UCS-4 (wide unicode) builds. Highlights of the previous major Python release (2.4) are available from the Python 2.4 page, at http://www.python.org/2.4/highlights.html Enjoy this release, Anthony Anthony Baxter anthony at python.org Python Release Manager (on behalf of the entire python-dev team) -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 191 bytes Desc: not available Url : http://mail.python.org/pipermail/python-announce-list/attachments/20061012/c1778e7d/attachment.pgp From info at wingware.com Thu Oct 12 18:35:16 2006 From: info at wingware.com (Wingware Announce) Date: Thu, 12 Oct 2006 12:35:16 -0400 (EDT) Subject: Wing IDE 2.1.3 released Message-ID: Hi, We're happy to announce version 2.1.3 of Wing IDE, an advanced development environment for the Python programming language. This is a bug fix release that fixes debugger support for Python 2.5 final, improves VI mode and multi-file replace, and adds support for Subversion 1.4, among other things. The release can be downloaded from: http://wingware.com/downloads A detailed list of changes is available here: http://wingware.com/pub/wingide/2.1.3/CHANGELOG.txt Wing IDE provides powerful debugging, editing, code intelligence, and search capabilities that reduce development and debugging time, cut down on coding errors, and make it easier to understand and navigate Python code. Highlights of Wing IDE 2.1: * Professional quality code editor * Visual Studio, VI/Vim, Emacs, and Brief key bindings * Auto-completion, call tips, and source browser * Graphical debugger for Python, Zope, and Plone * Subversion, CVS, and Perforce integration * Powerful search interface * User-extensible with Python scripts * Templates (code snippets), bookmarks, folding, macros, and more Some features are available in Wing IDE Pro only -- for details see http://wingware.com/wingide/features This release is available for Windows (2000+), Linux, and Mac OS X (10.3+ with X11 installed) and can be compiled from sources on *BSD, Solaris, and other Posix operating systems. For more information see: Product Info: http://wingware.com/products Sales: http://wingware.com/store/purchase Sincerely, The Wingware Team From anthony at python.org Thu Oct 12 21:51:56 2006 From: anthony at python.org (Anthony Baxter) Date: Fri, 13 Oct 2006 05:51:56 +1000 Subject: SECURITY ADVISORY [PSF-2006-001] Buffer overrun in repr() for UCS-4 encoded unicode strings In-Reply-To: <200610121732.00587.anthony@python.org> References: <200610121732.00587.anthony@python.org> Message-ID: <200610130552.07812.anthony@python.org> On Thursday 12 October 2006 17:31, Anthony Baxter wrote: > SECURITY ADVISORY [PSF-2006-001] > Buffer overrun in repr() for UCS-4 encoded unicode strings > > http://www.python.org/news/security/PSF-2006-001/ As a few people noted in email to me - the patch directory was not _quite_ correct on the website. You have my complete apologies for this - I've updated the website, and it should be all good now. Thanks! Anthony. -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 191 bytes Desc: not available Url : http://mail.python.org/pipermail/python-announce-list/attachments/20061013/658f1c9a/attachment.pgp From wescpy at gmail.com Thu Oct 12 22:27:39 2006 From: wescpy at gmail.com (wesley chun) Date: Thu, 12 Oct 2006 13:27:39 -0700 Subject: ANN: BayPIGgies, Oct 12, 7:30pm, Google, Mtn View Message-ID: <78b3a9580610121327h6e3af388q2f9d875faf1a2369@mail.gmail.com> Final REMINDER: Tonight, the Silicon Valley/San Francisco Bay Area Python users group meets at Google in Mountain View from 7:30-9p. the featured speaker is Alex Martelli, author of O'Reilly's Python in a Nutshell and editor of the Python Cookbook(s). the topic is Python 2.5. for more info and directions, see http://baypiggies.net for information on meeting for dinner before the meeting (6pm): http://mail.python.org/pipermail/baypiggies/2006-October/001228.html hope to see you there! -- wesley - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - "Core Python Programming", Prentice Hall, (c)2007,2001 http://corepython.com wesley.j.chun :: wescpy-at-gmail.com python training and technical consulting cyberweb.consulting : silicon valley, ca http://cyberwebconsulting.com From sverker.is at home.se Thu Oct 12 22:44:29 2006 From: sverker.is at home.se (Sverker Nilsson) Date: 12 Oct 2006 13:44:29 -0700 Subject: Guppy-PE 0.1.5 released Message-ID: <1160685869.802640.168390@b28g2000cwb.googlegroups.com> I would like to announce Guppy-PE 0.1.5 Guppy-PE is a library and programming environment for Python, currently providing in particular the Heapy subsystem, which supports object and heap memory sizing, profiling and debugging. It also includes a prototypical specification language, the Guppy Specificaion Language (GSL), which can be used to formally specify aspects of Python programs and generate tests and documentation from a common source. The current version is updated to work with Python 2.5 (and can still be used with 2.3 and 2.4). It also has some feature improvements, such as some shorthand attributes, and a clearer representation of shortest paths. Bugs have been fixed wrt especially remote monitoring and making the HTML generated by GSL more standards-compliant. For update details, see the changelog included with the source code. License: MIT For more information and to download the Guppy-PE source code, see: http://guppy-pe.sourceforge.net My master thesis, "Heapy: A Memory Profiler and Debugger for Python" has now been approved and is available here: http://guppy-pe.sourceforge.net/heapy-thesis.pdf Best regards, Sverker Nilsson From baas at ira.uka.de Thu Oct 12 23:46:35 2006 From: baas at ira.uka.de (Matthias Baas) Date: Thu, 12 Oct 2006 23:46:35 +0200 Subject: ANN: Python cgkit v2.0.0alpha7 & Maya/Python 0.9.3 Message-ID: The seventh alpha release of cgkit2 and v0.9.3 of the Maya/Python package is available at http://cgkit.sourceforge.net What is it? ----------- The Python Computer Graphics Kit is an Open Source software package containing a collection of Python modules, plugins and utilities that are meant to be useful for any domain where you have to deal with 3D data of any kind, be it for visualization, creating photorealistic images, Virtual Reality or even games. Currently, the entire kit consists of the following parts: - The Python package "cgkit" that extends Python with 3D-related functionality. - The Maya plugin "sourcepy" that integrates the Python interpreter into Maya, and the accompanying Python package "maya" that makes Maya functionality available in Python. - A collection of small stand-alone utilities written in Python, MEL or MaxScript. What's new? ----------- cgkit: - The license of cgkit has changed from LGPL to a MPL/GPL/LGPL tri-license. The Maya/Python package is available under the MPL. - The built-in preprocessor has been improved so that common preprocessor directives are supported. This means the slparams module can now parse RenderMan shaders that use simple macros or include files without having to fall back to an external preprocessor. - other smaller bugfixes and enhancements (see changelog) Maya/Python: - The MEL command "python" has been renamed to "py". - There are now 260 classes from the Maya SDK available. This is about 85% of the Maya 7 SDK. The newly wrapped classes mainly consist of the message classes. - The MUserEventMessage can also be used to communicate with C++ plug-ins. - The number of "dead" methods in the api module (i.e. methods that have been wrapped but that were not callable in Python) has been reduced. These are methods that, for example, take pointers as arguments or return values by reference and that cannot be dealt with in an entirely automatic fashion. There are still such methods left, so let me know if you stumble across one of those cases. - Improved string handling in the mel module. - Multi-threading support. This means you can create a new thread in Python and this thread keeps running even when the py or pySource MEL command that was used to execute the Python code has terminated. This functionality is used for the new "remote" functionality (see below). - New sub-package "remote" that allows you to execute any MEL command from external scripts. This means you can control Maya from Python scripts that run outside Maya or even on a different machine. - Writing plug-ins in Python has become more safe as Python exceptions are now caught in the proxy wrapper classes where the traceback is printed and a status code of kFailure is returned to Maya. For more information, visit: http://cgkit.sourceforge.net Feedback is always welcome... - Matthias - From pyscripter at gmail.com Sun Oct 15 06:06:25 2006 From: pyscripter at gmail.com (pyscripter at gmail.com) Date: 14 Oct 2006 21:06:25 -0700 Subject: Python IDE PyScripter v.1.7 released Message-ID: <1160885185.196270.70610@i42g2000cwa.googlegroups.com> PyScripter is free and open source Windows-based Python IDE created with the ambition to become competitive in functionality with commercial IDEs available for other languages. Being built in a compiled language (Delphi) is rather snappier than some of the other Python IDEs and provides an extensive blend of features that make it a productive Python development environment. This new release is compatible with the latest Python version 2.5 and contains many new features and bug fixes. Download from http://mmm-experts.com/Products.aspx?ProductId=4 Version history at http://mmm-experts.com/VersionHistory.aspx?ProductId=4 Main Features: Syntax Highlighting Editor Unicode based Full support for encoded Python source files Code completion and call tips Brace Highlighting Python source code utilities ((un)tabify, (un)comment, (un)indent) Context sensitive help on Python keywords Parameterized Code Templates (Ctrl-J) Accept files dropped from Explorer File change notification Detecting loading/saving UTF-8 encoded files Print Preview and print syntax highlighting of Python code Converting line breaks (Windows, Unix, Mac) Syntax highlighting of HTML, XML and CSS files Integrated Python Interpreter Code Completion Call Tips Command History Integrated Python Debugging Call Stack Variables Window Watches Window BreakPoints Window Code and debugger hints Editor Views Disassembly HTML Documentation (pydoc) Code Explorer File Explorer Easy configuration and browsing of the Python Path Integrated version control using Tortoise CVS or SVN Context sensitive access to Python manuals and through the Help menu Integrated Unit Testing Automated generation of tests Unit testing GUI To Do List Find and Replace in Files Integrated regular expression tester Parameterized Code Templates Choice of Python version to run via command line parameters Run Python Script externally (highly configurable) External Tools (External run and capture output) Integration with Python tools such as PyLint, TabNanny, Profile etc. Powerful parameter functionality for external tool integration Find Procedure Find Definition/Find references Find definition by clicking and browsing history. Works on modules too. Modern GUI with docked forms and configurable look&feel (themes) Persistent configurable IDE options From fuzzyman at gmail.com Sun Oct 15 23:56:50 2006 From: fuzzyman at gmail.com (Fuzzyman) Date: 15 Oct 2006 14:56:50 -0700 Subject: [ANN] rest2web 0.5.0 Final Message-ID: <1160949410.444742.249460@i3g2000cwc.googlegroups.com> At last `rest2web 0.5.0 Final `_ is released. Quick download links: * `rest2web-0.5.0.zip `_ * `rest2web-0.5.0.tar.gz `_ This release has several bugfixes, as well as some interesting new features, over previous releases. Release Summary ============= Important changes since the last release (0.5.0 Beta 1) include: * All the standard `macros `_ are now built-in. There is no need for a separate macro file if you are only using the standard ones. * A new 'skiperrors' config file / command line option. Errors in processing a file can now be ignored and rest2web will attempt to continue processing. * A config file is no longer required in force mode. (The current directory is used as the source directory and html output is put into a subdirectory called 'html'.) * The restindex and uservalues block may now be in a ReST comment. This means that rest2web source documents with a restindex can still be valid ReStructured Text documents. What is rest2web ============= **rest2web** is a tool for creating websites, parts of websites, and project documentation. It allows you to keep your site contents in `ReStructured Text `_ or {acro;HTML;HyperText Markup Language}. Using a flexible templating system, using embedded Python code for unlimited flexibility and no new templating language to learn, it can then output the HTML for your site. **rest2web** is extremely flexible, with many optional features, making it suitable for building all kinds of websites. See the `main page `_ for links to some of the sites built with rest2web. What's New ? ========== You can find the full changelog: `here `_. Paths in the ``file`` keyword and in the config file now have '~' expanded. This means they can use paths relative to the user directory. (Plus the 'colorize' and 'include' macros.) Added 'skiperrors' config file / command line option. Errors in processing a file can now be ignored and rest2web will attempt to continue processing. Fixed bug where non-ascii uservalues would blow up. There was a bug in handling tabs in embedded code. This has been fixed. The macro system has been revamped. All the standard macros are now built in as default macros. The modules needed by the default macros are also now built into rest2web. You can still add your own macros, or override the default ones, by supplying an additional macros file. ``Macro Paths`` section added to the config file for configuring the default macros ``smiley`` and ``emoticon``. The initial message printed by rest2web has been changed to ``INFO`` level, so that it is not displayed by the ``-a`` and ``-w`` verbosity levels. The namespace and uservalues for each page are now available to the macros, using global variables ``uservalues`` and ``namespace`` (dictionaries). This means you can write macros that are customised for individual pages. A config file is no longer required in force mode. (The current directory is used as the source directory and html output is put into a subdirectory called 'html'.) The restindex and uservalues block may now be in a ReST comment. This means that rest2web source documents with a restindex can still be valid ReStructured Text documents. Fixed imports in the gallery plugin. (Thanks to Steve Bethard.) Changed over to use the latest version of `StandOut `_. rest2web now exits with an error code corresponding to the number of warnings and errors generated. Errors and warnings are now output on ``sys.stderr``. From python-url at phaseit.net Tue Oct 17 01:20:57 2006 From: python-url at phaseit.net (Cameron Laird) Date: Mon, 16 Oct 2006 23:20:57 +0000 (UTC) Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Oct 16) Message-ID: QOTW: "Well, I haven't yet seen a definition of 'Integrated Development Environment' which would exclude Emacs..." - Slawomir Nowaczyk "Let me tell you: There are times when I'm really glad that as a German, I'm not supposed to possess any sense of humour at all." - Georg Brandl Pythoneers will be talking about certification for quite a while: http://tarekziade.wordpress.com/2006/10/15/marketing-python-is-urgent-part-1-a-python-certification/ http://groups.google.com/group/comp.lang.python/browse_thread/thread/60dae5ab119c4a90/ http://www.zope.org/Wikis/DevSite/Projects/ComponentArchitecture/Zope3SecurityEvaluation Greg Wilson's "Software Carpentry" is an important resource (even though I bristle at Greg's bad-mouthing of vi and emacs): http://www.swc.scipy.org/ The Internet Hosting Cooperative supports "any and every thing Python": http://groups.google.com/group/comp.lang.python/msg/f3c6068b873427bb Enthought Traits allow powerful GUI technique, and they're more usefully documented than many realize: http://groups.google.com/group/comp.lang.python/browse_thread/thread/90e966185e548d51/ ======================================================================== 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 Python411 indexes "podcasts ... to help people learn Python ..." Updates appear more-than-weekly: http://www.awaretek.com/python/index.html Steve Bethard continues the marvelous tradition early borne by Andrew Kuchling, Michael Hudson, Brett Cannon, Tony Meyer, and Tim Lesher 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/ 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/python/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 Although unmaintained since 2002, the Cetus collection of Python hyperlinks retains a few gems. 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://www.python.org/dev/peps/pep-0042/ 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/topic/python/ (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 There is *not* an RSS for "Python-URL!"--at least not yet. Arguments for and against are occasionally entertained. 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!". Write to the same address to unsubscribe. -- The Python-URL! Team-- Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and sponsor the "Python-URL!" project. From grig.gheorghiu at gmail.com Mon Oct 16 19:59:36 2006 From: grig.gheorghiu at gmail.com (Grig Gheorghiu) Date: 16 Oct 2006 10:59:36 -0700 Subject: ANN: SoCal Piggies Meeting, Oct 19, 7 PM, Caltech Message-ID: <1161021576.716254.276480@k70g2000cwa.googlegroups.com> The Southern California Python Interest Group, aka the SoCal Piggies, will meet on Thursday Oct. 19th at 7 PM at Caltech. Directions available here: http://www.socal-piggies.org/socalpiggies/Caltech,_Kerckhoff_101 Google Map: http://maps.google.com/maps?f=q&hl=en&sll=37.0625,-95.677068&sspn=35.821085,71.191406&q=california+institute+of+technology+pasadena&ie=UTF8&latlng=34147778,-118143611,11576447271535075906 Agenda: * Darius Bacon: "Introduction to the E scripting language" * Brandon King: "Ubuntu coolness" If you live in the area, please consider attending, if only for the delicious pizza :-) Grig Gheorghiu From micktwomey at gmail.com Tue Oct 17 18:15:13 2006 From: micktwomey at gmail.com (Michael Twomey) Date: Tue, 17 Oct 2006 17:15:13 +0100 Subject: ANN: Python Ireland Meeting and Presentations Message-ID: <50a522ca0610170915x2e1e3770k8b3df2d446e7c0c6@mail.gmail.com> The Python Ireland group will be meeting on Thursday, 19th October at Trinity College Arts Block, room 2041B from 19:00 - 20:00. The following presentations are lined up: * What's new in python 2.5 * Introduction to web.py This will be followed by a drink or two in the nearest pub. For more information and directions see http://wiki.python.ie/moin.cgi/PythonMeetup/October2006 For more information on the Python Ireland group see http://python.ie/ cheers, Michael From richard at osdc.com.au Wed Oct 18 01:28:29 2006 From: richard at osdc.com.au (Richard Jones) Date: Wed, 18 Oct 2006 09:28:29 +1000 Subject: OSDC 2006's fabulous keynotes Message-ID: <200610180928.29962.richard@osdc.com.au> Book before 31st October to save $50 and get a free conference t-shirt! Registrations are open for the Open Source Developers' Conference 2006: http://www.osdc.com.au/registration/index.html The conference is running in Melbourne from the 6th - 8th December, with a day of tutorials on the 5th. Keynote talks this year include: Anthony Baxter: "futurepython" import __future__ What does the future hold for the Python language? In this talk, we'll look at Microsoft's (Open Sourced!) IronPython and show some of the massive fun coming down the track for scripting languages thanks to .Net and Mono. We'll also cover Python 3.0 (now under development) and the PyPy (Python, in Python) project. Damian Conway: "The Da Vinci Codebase" When a dying operating system scrawls his name across its corrupted boot volume, Dr. Damian Conway, an unassuming college professor, is plunged into a deadly race against time to solve a series of impossible riddles. What is the mysterious "Priory of Bios?" And who are their deadly nemeses "Opus Arai?" On the run from the law and stalked by a ghostly pale killer, will he unravel the subtle clues hidden in Leonardo's most famous source code and reveal to the world the incredible secret encrypted in...the Da Vinci Codebase? Randal L. Schwartz: "Free software - A look back, a look ahead" A twenty year history of the free/open software movement, from my perspective of how to contribute (in many ways!) and how to make money as well. Richard Farnsworth: "Open Source Synchrotron" What is a Synchrotron anyway? What software needs does it has? How can Open Source help solve these? The Australian Synchrotron achieved first light in July 2005 almost exclusively filling its software needs through open source. The code base has been refined to suit local conditions, and shared with the rest of the Synchrotron open source community. By sharing information, experience and software freely between scientists and engineers, great design efficiencies have been made further aiding the development of experimental beamlines. Be a part of this fantastic conference and help it be the best developers' conference this year! If your business would like to benefit from exposure to many of Australia's best open source developers then perhaps you should consider sponsorship. We have a wide range of sponsorship options, to find out more information please visit: http://www.osdc.com.au/sponsors/index.html We look forward to sharing this great conference with you! Don't forget to register before 31st October to get a free conference t-shirt. http://www.osdc.com.au/registration/index.html -- Richard Jones, OSDC 2006 Programme Chair http://www.osdc.com.au/ From steven.bethard at gmail.com Wed Oct 18 20:16:51 2006 From: steven.bethard at gmail.com (steven.bethard at gmail.com) Date: Wed, 18 Oct 2006 18:16:51 +0000 (GMT) Subject: python-dev Summary for 2006-08-16 through 2006-08-31 Message-ID: <20061018182155.53BF31E4004@bag.python.org> python-dev Summary for 2006-08-16 through 2006-08-31 ++++++++++++++++++++++++++++++++++++++++++++++++++++ .. contents:: [The HTML version of this Summary is available at http://www.python.org/dev/summary/2006-08-16_2006-08-31] ============= Announcements ============= --------------------------- Python communnity buildbots --------------------------- Want to make sure your package works with the latest and greatest development and release versions of Python? Thanks to Grig Gheorghiu, you can add your test suite to the `Python community buildbots`_ and the results of these tests will show up on the `Python buildbot results page`_. .. _Python community buildbots: http://www.pybots.org/ .. _Python buildbot results page: http://www.python.org/dev/buildbot/ Contributing thread: - `link to community buildbot? `__ ========= Summaries ========= --------------------- Fast subclass testing --------------------- Neal Norwitz was playing around with a patch that would make subclass testing for certain builtin types faster by stealing some bits from tp_flags. Georg Brandl thought this could be useful for exception handling in Python 3000 when all exceptions must be subclasses of BaseException. Guido also liked the patch and suggested it be checked into the `Python 3000 branch`_. .. _Python 3000 branch: http://svn.python.org/view/python/branches/p3yk/ Contributing thread: - `Type of range object members `__ ----------------------------- gcc 4.2 and integer overflows ----------------------------- Jack Howarth pointed out that intobject.c was using the test ``x < 0 && x == -x`` to determine if the signed integer ``x`` was the most negative integer on the platform. However, the C standard says overflow is undefined, so despite this code actually working on pretty much all known hardware, `gcc 4.2 assumes that overflow won't happen`_ and so optimizes away the entire clause. David Hopwood and Tim Peters provided a patch that casts ``x`` to an unsigned long (the "unnecessary" ``0`` is to make the Microsoft compilers happy):: x < 0 && (unsigned long)x == 0-(unsigned long)x .. _gcc 4.2 assumes that overflow won't happen: http://bugs.python.org/1545668 Contributing thread: - `gcc 4.2 exposes signed integer overflows `__ -------------------------- Python and 64-bit machines -------------------------- Thomas Heller explained that the _ctypes extension module was still a fair ways from building on Win64 and had to be removed from the installer for that platform. There was some discussion about in general how "experimental" the Win64 build of Python was, but Martin v. Lowis explained that despite the compiler warnings, Python has been running mostly fine on Win64 since version 2.4. In fact, Python has been running in 64-bit machines since 1993 (when Tim Peters ported it to 64-bit Crays) though of course not with the support that Python 2.5 brought through the Py_ssize_t changes. Contributing thread: - `ctypes and win64 `__ ------------------------------------------ Guidelines for submitting bugs and patches ------------------------------------------ Brett Cannon put together a rewrite of the `bug and patch guidelines`_. The bug guidelines now includes sections on how to: * Get a SourceForge account * Start a new bug * Specify the Python version * Specify special settings for your Python interpreter * Give sample code to reproduce bug * Submit! * Respond to requests from developers And the patch guidelines now includes sections on how to: * Read the Developer Intro to understand the scope of your proposed change * Add the appropriate unit tests * Add the proper document changes * Make your code follow the style guidelines * Generate a patch * Create a tracker item on SourceForge * Reference the patch in proper bug reports * Wait for a developer to contact you At Chad Whitacre's suggestion, Brett also included a section on the 5-for-1 rule, where some python-devvers have agreed to review your one patch if you post reviews of five others. The updates had not been posted to python.org at the time of this summary. .. _bug and patch guidelines: http://www.python.org/dev/patches/ Contributing threads: - `draft for bug guidelines `__ - `draft of patch guidelines `__ --------------------------------- Corner cases for continue/finally --------------------------------- Dino Viehland pointed out an odd corner case with ``continue`` in a ``finally`` clause that was causing Python to crash:: for abc in range(10): try: pass finally: try: continue except: pass The bug was present at least all the way back to Python 2.3. People tossed a few patches back and forth (and a few tests which broke various versions of the patches) before `Neal Norwitz posted a patch`_ that people seemed to like. .. _Neal Norwitz posted a patch: http://bugs.python.org/1542451 Contributing thread: - `2.4 & 2.5 beta 3 crash `__ --------------------------------------- PEP 343: decimal module context manager --------------------------------------- Raymond Hettinger pointed out that the updates to the decimal module to take advantage of the ``with``-statement differed dramatically from `PEP 343`_ and were misdocumented in a number of places. Nick Coghlan explained that the API was a result of the introduction and then later removal of the ``__context__`` method. After some discussion, Raymond convinced everyone to change the API from:: with decimal.getcontext().copy().get_manager() as ctx: ... to the simpler API originally introduced in `PEP 343`_:: with decimal.localcontext() as ctx: ... As a result of the changes needed to fix this API, Anthony Baxter decided that another release candidate was necessary before Python 2.5 final could be released. .. _PEP 343: http://www.python.org/dev/peps/pep-0343/ Contributing thread: - `Py2.5 issue: decimal context manager misimplemented, misdesigned, and misdocumented `__ ---------------------------- Python 2.6 development goals ---------------------------- Guido suggested that since Python 3.0 is now being developed in parallel with the 2.X trunk, the major work for Python 2.6 should be in making the transition to Python 3.0 as smooth as possible. This meant: * Adding warnings (suppressed by default) for code incompatible with Python 3.0. * Making all Python 2.X library code as Python 3.0-compatible as possible. * Converting all unittests to unittest or doctest format. Brett Cannon suggested adding to this list: * Improving tests and classifying them better * Updating and improving the documentation In general, people seemed to think this was a pretty good approach, particularly as it would address some of the complaints about the speed of addition of new features to Python. The discussion then moved off to the `python-3000 list`_. .. _python-3000 list: http://mail.python.org/mailman/listinfo/python-3000 Contributing threads: - `What should the focus for 2.6 be? `__ - `[Python-3000] What should the focus for 2.6 be? `__ ----------------------- Python 2.5, VC8 and PGO ----------------------- Muguntharaj Subramanian asked about building Python 2.5 with the VC8 compiler. Christopher Baus had recently provided a few patches to get the VC8 build working better and Kristjan V. Jonsson said that he's working on updating the PCBuild8 directory in the trunk in a number of ways, including better support for profile-guided optimization (PGO) builds. He said once he got everything working right, he'd backport to Python 2.5. Contributing threads: - `Failed building 2.5rc1 pythoncore on VC8 `__ - `patch to add socket module project to vc8 solution `__ - `Error while building 2.5rc1 pythoncore_pgo on VC8 `__ ---------------------------------------------- PEP 342: using return instead of GeneratorExit ---------------------------------------------- Igor Bukanov suggested that the GeneratorExit exception introduced by `PEP 342`_ could be eliminated by replacing it with the semantics of the ``return`` statement. This would allow code like the following, which under the GeneratorExit paradigm would execute the ``except`` clause, to only execute the ``finally`` clause:: def gen(): try: yield 0 except Exception: print "Unexpected exception!" finally: print "Finally" for i in gen(): print i break Phillip J. Eby and others liked the approach, but suggested that it was much too late in the release process to be making such a major language change. Guido was open to making a change like this, perhaps in Python 3.0, but wanted the new generator enhancements to have some time in the field to see what was really needed here. .. _PEP 342: http://www.python.org/dev/peps/pep-0342/ Contributing thread: - `GeneratorExit is unintuitive and uneccessary `__ ------------------------------------------ String formatting, __str__ and __unicode__ ------------------------------------------ John J Lee noticed that in Python 2.5, the ``%s`` format specifier calls ``__unicode__`` on objects if their ``__str__`` method returns a unicode object:: >>> class a(object): ... def __str__(self): ... print '__str__' ... return u'str' ... def __unicode__(self): ... print '__unicode__' ... return u'unicode' ... >>> '%s%s' % (a(), a()) __str__ __unicode__ __unicode__ u'unicodeunicode' Nick Coghlan explained that string formatting first tries to build and return a str object, but starts over if any of the objects to be formatted by the ``%s`` specifier are unicode. So if a ``__str__`` method is called during string formatting and it returns a unicode object, Python will decide that the string formatting operation needs to return a unicode object, and will therefore start over, calling the ``__unicode__`` methods. Nick promised to look into making the documentation for this a bit clearer. Contributing thread: - `String formatting / unicode 2.5 bug? `__ ------------------------- Optimizing global lookups ------------------------- K.S. Sreeram asked about replacing the current LOAD_GLOBAL dict lookup with an array indexing along the lines of what is done for local names. Brett Cannon explained that globals can be altered from the outside, e.g. ``import mod; mod.name = value``, and thus globals aren't necessarily known at compile time. Tim Peters pointed out that a number of PEPs have been written in this area of optimization, with `PEP 280`_ being a good place to start. Most people were not opposed to the idea in general, but without an implementation to benchmark, there wasn't really much to discuss. .. _PEP 280: http://www.python.org/dev/peps/pep-0280/ Contributing thread: - `Can LOAD_GLOBAL be optimized to a simple array lookup? `__ --------------------- ElementTree and PEP 8 --------------------- Greg Ewing asked about changing the ElementTree names to be more `PEP 8`_ compliant. Being that Python was already in the release candidate stage for Python 2.5, this was not possible. Even had the issue been raised earlier, such a change would have been unlikely, as it would have discouraged people who needed some backward compatibility from using the version in the stdlib. .. _PEP 8: http://www.python.org/dev/peps/pep-0008/ Contributing thread: - `Doc suggestion for Elementtree (for 2.5? a bit late, I know...) `__ -------- rslice() -------- Nick Coghlan suggested that since reversing slices could be somewhat complicated, e.g. ``(stop - 1) % abs(step) : start - 1 : -step``, it would be helpful to introduce a ``rslice()`` builtin so that this could be written ``rslice(start, stop, step)``. Most people felt that this was unnecessary and didn't gain much over using ``reversed()`` on the sliced sequence. Contributing thread: - `Adding an rslice() builtin? `__ ---------------------------------- PEP 362: Function Signature Object ---------------------------------- Brett Cannon spent his time at the Google sprint working on `PEP 362`_, which introduces a signature object for functions to describe what arguments they take. He asked for some feedback on two points: * Should the signature object be an attribute on all functions or should it be requested through the inspect module? * Should the dict returned by ``Signature.bind()`` key by name or by a tuple of names for argument lists like ``def f((a, b)):``? After some pretty minimal feedback, he posted the `latest version of the patch`_. .. _PEP 362: http://www.python.org/dev/peps/pep-0362/ .. _latest version of the patch: http://bugs.python.org/1544909 Contributing threads: - `[Python-checkins] r51458 - peps/trunk/pep-0000.txt peps/trunk/pep-0362.txt `__ - `PEP 362 open issues `__ ---------------------------------------- Warn about mixing tabs and spaces in 2.6 ---------------------------------------- Thomas Wouters suggested making the ``-t`` flag the default in Python 2.6. This would make Python always issue warnings if users mixed tabs and spaces. People generally seemed in favor of the idea. Contributing thread: - `Making 'python -t' the default. `__ --------------------- xrange() and non-ints --------------------- Neal Norwitz was playing around with some patches that would allow ``xrange`` in Python 2.6 to accept longs or objects with an ``__index__`` method instead of just ints as it does now. He looked at two Python implementations, a Python-C hybrid implementation and a C implementation, and found that for his benchmark, the Python-C hybrid was as good as the C implementation. People suggested that the benchmark wasn't testing function call overhead well enough, and the pure C implementation was probably still the way to go. Contributing thread: - `xrange accepting non-ints `__ ------------------------------------ Cleanup tasks and the logging module ------------------------------------ The logging module currently maintains compatibility back to 1.5. Guido suggested (and Vinay approved) modernizing it to at least 2.2. The SimpleTodo_ wiki lists other useful cleanup tasks. .. _SimpleTodo: http://wiki.python.org/moin/SimpleTodo Contributing thread: - `Removing anachronisms from logging module `__ [Thanks to Jim Jewett for this summary] --------------------------- The purpose of test_mutants --------------------------- test_mutants started to fail in the Python 3 branch, and Guido wasn't sure what it was *supposed* to do. Tim Peters said it was supposed to not crash, and is there because of previous refcount bugs. `Guido patched another`_ that it exposed. .. _Guido patched another: http://bugs.python.org/1546288 Contributing thread: - `Need help with test_mutants.py `__ [Thanks to Jim Jewett for this summary] ================ Deferred Threads ================ - `Interest in a Python 2.3.6? `__ - `That library reference, yet again `__ ================== Previous Summaries ================== - `no remaining issues blocking 2.5 release `__ =============== Skipped Threads =============== - `IDLE patches - bugfix or not? `__ - `TRUNK FREEZE for 2.5c1, 00:00 UTC, Thursday 17th August `__ - `Weekly Python Patch/Bug Summary `__ - `Benchmarking the int allocator (Was: Type of range object members) `__ - `2.5: recently introduced sgmllib regexp bug hangs Python `__ - `[wwwsearch-general] 2.5: recently introduced sgmllib regexp bug hangs Python `__ - `recently introduced sgmllib regexp bughangs Python `__ - `RELEASED Python 2.5 (release candidate 1) `__ - `TRUNK IS UNFROZEN, available for 2.6 work if you are so inclined `__ - `[Python-checkins] TRUNK IS UNFROZEN, available for 2.6 work if you are so inclined `__ - `Fixing 2.5 windows buildbots `__ - `uuid tests failing on Windows `__ - `Sprints next week at Google `__ - `__del__ unexpectedly being called twice `__ - `How does this help? Re: [Python-checkins] r51366 - python/trunk/Lib/idlelib/NEWS.txt python/trunk/Lib/idlelib/idlever.py `__ - `One-line fix for urllib2 regression `__ - `os.spawnlp() missing on Windows in 2.4? `__ - `Questions on unittest behaviour `__ - `[Python-checkins] How does this help? Re: r51366 - python/trunk/Lib/idlelib/NEWS.txt python/trunk/Lib/idlelib/idlever.py `__ - `SSH Key Added `__ - `uuid module - byte order issue `__ - `A cast from Py_ssize_t to long `__ - `Python + Java Integration `__ - `[4suite] cDomlette deallocation bug? `__ - `[Python-checkins] r51525 - in python/trunk: Lib/test/test_float.py Objects/floatobject.c `__ - `for 2.5 issues `__ - `Need help with test_mutants.py `__ - `zip -> izip; is __length_hint__ required? `__ - `Removing anachronisms from logging module `__ - `distutils patch `__ - `32-bit and 64-bit python on Solaris `__ - `Small Py3k task: fix modulefinder.py `__ - `Windows build slave downtime `__ ======== Epilogue ======== This is a summary of traffic on the `python-dev mailing list`_ from August 16, 2006 through August 31, 2006. 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 python-dev summary is the 11th written by Steve Bethard. To contact me, please send email: - Steve Bethard (steven.bethard at gmail.com) Do *not* post to comp.lang.python if you wish to reach me. 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 cent counts 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 ------------------------- 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. We 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. .. _python-dev: http://www.python.org/dev/ .. _python-dev mailing list: http://mail.python.org/mailman/listinfo/python-dev .. _comp.lang.python: http://groups.google.com/groups?q=comp.lang.python .. _PEP Markup: http://www.python.org/peps/pep-0012.html .. _reST: .. _reStructuredText: http://docutils.sf.net/rst.html .. _Python Software Foundation: http://python.org/psf/ .. _archive: http://www.python.org/dev/summary/ .. _RSS feed: http://www.python.org/dev/summary/channews.rdf From anthony at python.org Thu Oct 19 09:42:00 2006 From: anthony at python.org (Anthony Baxter) Date: Thu, 19 Oct 2006 17:42:00 +1000 Subject: RELEASED Python 2.4.4, Final. Message-ID: <200610191742.14093.anthony@python.org> On behalf of the Python development team and the Python community, I'm happy to announce the release of Python 2.4.4 (FINAL). Python 2.4.4 is a bug-fix release. While Python 2.5 is the latest version of Python, we're making this release for people who are still running Python 2.4. This is the final planned release from the Python 2.4 series. Future maintenance releases will be in the 2.5 series, beginning with 2.5.1. See the release notes at the website (also available as Misc/NEWS in the source distribution) for details of the more than 80 bugs squished in this release, including a number found by the Coverity and Klocwork static analysis tools. We'd like to offer our thanks to both these firms for making this available for open source projects. * Python 2.4.4 contains a fix for PSF-2006-001, a buffer overrun * * in repr() of unicode strings in wide unicode (UCS-4) builds. * * See http://www.python.org/news/security/PSF-2006-001/ for more. * There's only been one small change since the release candidate - a fix to "configure" to repair cross-compiling of Python under Unix. For more information on Python 2.4.4, including download links for various platforms, release notes, and known issues, please see: http://www.python.org/2.4.4 Highlights of this new release include: - Bug fixes. According to the release notes, at least 80 have been fixed. This includes a fix for PSF-2006-001, a bug in repr() for unicode strings on UCS-4 (wide unicode) builds. Enjoy this release, Anthony Anthony Baxter anthony at python.org Python Release Manager (on behalf of the entire python-dev team) -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 191 bytes Desc: not available Url : http://mail.python.org/pipermail/python-announce-list/attachments/20061019/5bffd293/attachment.pgp From robin at alldunn.com Thu Oct 19 20:21:10 2006 From: robin at alldunn.com (Robin Dunn) Date: Thu, 19 Oct 2006 11:21:10 -0700 Subject: ANN: wxPython 2.7.1.1 released Message-ID: <4537C216.2060503@alldunn.com> Announcing ---------- The 2.7.1.1 release of wxPython is now available for download at http://wxpython.org/download.php. This release is the first offical release in the 2.7.x development series, and includes a lot of new features, enhancements and fixes. Source and binaries are available for both Python 2.4 and 2.5 for Windows and Mac, as well some pacakges for varous Linux distributions. A summary of changes is listed below and also at http://wxpython.org/recentchanges.php. 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 GTK2, and Mac OS X 10.3+, in most cases the native widgets are used on each platform. Changes in 2.7.1.1 ------------------ The following deprecated items have been removed: * wx.Bitmap SetQuality and GetQuality methods * The wx.GetNumberFromUser function * wx.EVT_LIST_GET_INFO and wx.EVT_LIST_SET_INFO * wx.BookCtrlSizer and wx.NotebookSizer * The PostScript-specific methods of wx.PrintData * wx.PrintDialogData SetSetupDialog and GetSetupDialog methods * wx.FontMapper SetConfig method * wx.html.HtmlSearchStatus.GetContentsItem method * wx.html.HtmlHelpData.GetContents, GetContentsCnt, GetIndex, and GetIndexCnt methods wx.EventLoop is now implemented for wxMac. Added wxPython wrappers for the new wx.Treebook and wx.Toolbook classes. wx.DC.BeginDrawing and EndDrawing have been deprecated in the C++ code, so since they never really did anything before they are now just empty stubs in wxPython. Solved a problem that has been around for a very long time in how C++ methods are virtualized for overriding in derived Python classes. Previously we couldn't do it for methods that needed to also exist in the base class wrappers such that they could be called normally. (The reasons are long and complex, but suffice it to say that it was due to mixing C++'s dynamic dispatch, and Python's runtime lookup of the method attributes resulting in endless recursion of function calls.) Because of this problem I used a hack that I have always hated, and that is renaming the base class methods with a "base_*" prefix, for example wx.Printout.base_OnBeginDocument. Now that the problem has finally been solved I have replaced all the base_Whatever() methods with the real Whatever() method as well as a simple wrapper named base_Whatever that is marked as deprecated. So now instead of writing your overridden methods like this:: def OnBeginDocument(self, start, end): # do something here return self.base_OnBeginDocument(start, end) You can now call the base class method the normal way, like this:: def OnBeginDocument(self, start, end): # do something here return Printout.OnBeginDocument(self, start, end) Or like this with super():: def OnBeginDocument(self, start, end): # do something here return super(MyPrintout, self).OnBeginDocument(start, end) Note that the old way with the "base_*" function still works, but you will get a DeprecationWarning from calling base_OnBeginDocument. The classes affected by this are: * wx.DropSource * wx.DropTarget * wx.TextDropTarget * wx.FileDropTarget * wx.PyLog (also added the ability to override Flush) * wx.PyApp (also added the ability to override ExitMainLoop) * wx.Printout * wx.PyPrintPreview * wx.PyPreviewFrame * wx.PreviewControlBar * wx.Process * wx.PyControl * wx.PyPanel * wx.PyScrolledWindow * wx.PyWindow * wx.Timer * wx.grid.PyGridCellRenderer * wx.grid.PyGridCellEditor * wx.grid.PyGridCellAttrProvider * wx.grid.PyGridTableBase * wx.html.HtmlWindow * wx.wizard.PyWizardPage Added the wx.DC.GradientFillConcentric and wx.DC.GradientFillLinear methods. wxGTK: wx.ListBox and wx.CheckListBox are now using native GTK2 widgets. Added wx.ListBox.HitTest() from patch 1446207 Bumped up to SWIG 1.3.29. This provides some more runtime performance boosts, gets rid of the dreaded Ptr classes, and some other nice new things. Added wx.Window.GetScreenPosition and GetScreenRect which returns the position of the window in screen coordinates, even if the window is not a top-level window. Added GetResourcesDir and GetLocalizedResourcesDir to wx.StandardPaths. Added a GetReceivedFormat method to wx.DataObjectComposite. You can use this to find out what format of data object was recieved from the source of the clipboard or DnD operation, and then you'll know which of the component data objects to use to access the data. Changed how the stock objects (wx.RED, wx.RED_PEN, wx.RED_BRUSH, etc.) are initialized. They are now created as uninitialized instances using __new__. Then after the wx.App has been created, but before OnInit is called, the .this attribute of each object is initialized. This was needed because of some delayed initialization functionality that was implemented in wxWidgets, but the end result is cleaner for wxPython as well, and allowed me to remove some ugly code previously hidden under the covers. Added wx.StandardPaths.GetDocumentsDir. Added wx.RendererNative.DrawCheckButton. wx.ProgressDialog.Update now returns a tuple of two values. The first is a continue flag (what was returned before) and the second is a skip flag. If the dialog has the wx.PD_CAN_SKIP flag and if the Skip button is clicked, then the skip flag is set to True the next time Update is called. A DeprecationWarning is now issued when the old wxPython package is imported. If you are still using the old namespace please convert your code to use the new wx package instead. Added wrappers for Julian's new wxRichTextCtrl class, visible in wxPython as wx.richtext.RichTextCtrl window. It still needs some more work, but it is a great start. wx.lib.mixins.listctrl.TextEditMixin: Fixed the double END_LABEL_EDIT event problem in TextEditMixin by checking if the editor was already hidden before continuing with the CloseEditor method. Also added code to OpenEditor to send the BEGIN_LABEL_EDIT event and to not allow the opening of the editor to continue if the event handler doesn't allow it. wx.StaticBoxSizer now keeps better track of the wx.StaticBox, and it will destroy it if the sizer is destroyed before the parent window is. Added wx.HyperlinkCtrl. Added battery and power related functions and events (wxMSW only so far.) See wx.PowerEvent, wx.GetPowerType and wx.GetBatteryState. Added wx.ListCtrl.HitTestSubItem which returns the sub-item (i.e. the column in report mode) that was hit (if any) in addition to the item and flags. Added wrappers for wx.ColourPickerCtrl, wx.DirPickerCtrl, wx.FilePickerCtrl, and wx.FontPickerCtrl. Patch #1502016 wx.Image.ConvertToGreyscale now retains the alpha channel. Added wrappers for the wxAUI classes, in the wx.aui module. Added the PseudoDC class from Paul Lanier. It provides a way to record operations on a DC and then play them back later. Upgraded to Scintilla 1.70 for wx.stc.StyledTextCtrl. Added CanSetTransparent and SetTransparent methods to the wx.TopLevelWindow class, with implementations (so far) for wxMSW and wxMac. SetDefaultItem() and GetDefaultItem() are now members of wx.TopLevelWindow, not wx.Panel. wxGTK: Stock items (icons) will be used for menu items with stock IDs. Added wx.lib.combotreebox from Frank Niessink Added wx.ImageFromBuffer, wx.BitmapFromBuffer and wx.BitmapFromBufferRGBA factory functions. They enable loading of an image or bitmap directly from a Python object that implements the buffer interface, such as strings, arrays, etc. Added wx.App.IsDisplayAvailable() which can be used to determine if a GUI can be created in the current environment. (Still need an implementation for wxMSW...) The wx.html.HTML_FONT_SIZE_x constants are no longer available as the default sizes are now calculated at runtime based on the size of the normal GUI font. wx.Colour now includes an alpha component, which defaults to wx.ALPHA_OPAQUE. This is in preparation for allowing various new alpha blening functionality using wx.Colour objects, such as drawing with pens and brushes on a wx.DC. Added wx.NativePixelBuffer, wx.AlphPixelBuffer and related iterator and accessor classes. They allow platform independent direct access to the platform specific pixel buffer inside of a wx.Bitmap object. The beginnings of support for RTL languages has been added, thanks to a Google SoC project. Added wx.lib.dragscroller from Riaan Booysen. It provides a helper class that can used to scroll a wx.ScrolledWindow in response to a mouse drag. Applied patch 1551409: Adds support for indeterminate mode gauges. wxMac: I've turned on the compile option for using the native toolbar on the Mac now that it supports hosting of controls. If the toolbar is managed by the frame via either CreateToolBar() or SetToolBar() then the native toolbar will be used. Additional toolbars, or toolbars that are not children of the frame, are managed by sizers or what-not will still use the emulated toolbar because of platform restrictions in how/where the native toolbar can be used. Added Python properties for many of the getter/setter methods of wx classes. In order for the names to be predicatble for somebody already familiar with wxPython the property names are simply the name of the getter with the "Get" dropped. For example, wx.Window has a property named "Size" that maps to GetSize and SetSize. So far there is only one known name conflict using this naming convention, and that is wx.KeyEvent.KeyCode, however since KeyCode was formerly a compatibility alias for GetKeyCode (and has been for a long time) it was decided to just switch it to a property. If you want to use the method then change your calls to event.KeyCode() to event.GetKeyCode(), otherwise you can use it as a property just by dropping the parentheses. Updated the C++ code for wx.gizmos.TreeListCtrl from the wxCode project. This has resulted in some minor API changes, most of which were worked around in the wrapper code. Added wx.lib.delayedresult from Oliver Schoenborn. Added wx.lib.expando, a multi-line textctrl that exands as more lines are needed. wx.Image.Scale and Rescale methods now take an extra parameter specifying type of method to use for resampling the image. It defaults to the current behavior of just replicating pixels, if wx.IMAGE_QUALITY_HIGH is passed then it uses bicubic and box averaging resampling methods for upsampling and downsampling respectively. Added the wx.lib.buttonpanel module, which is a tweaked version of Andrea Gavana's FancyButtonPanel module. Added the wx.lib.flatnotebook module, from Andrea Gavana. Renamed wx.FutureCall to wx.CallLater so it is named more like wx.CallAfter. wx.FutureCall is now an empty subclass of wx.CallLater for compatibility of older code. Added the wx.lib.customtreectrl module from Andrea Gavana. Added ChangeSelection to wx.BookCtrl (the base class for wx.Notebook and other book controls) that is the same as SetSelection but doesn't send the change events. Added wx.TextCtrl.ChangeValue() which is the same as SetValue() but doesn't send the text changed event. For consistency, all classes having an Ok() method now also have IsOk(), use of the latter form is preferred although the former hasn't been deprecated yet Added the wx.AboutBox() function and wx.AboutDialogInfo class. They provide a way to show a standard About box for the application, which will either be a native dialog or a generic one depending on what info is provided and if it can all be shown with the native dialog. The code in the animate contrib has been moved into the code wxWidgets library, and refactored a bit along the way. For wxPython it still exists in the wx.animate module, but has basically been reduced to two classes, wx.animate.Animation, and wx.animate.AnimationCtrl. You load the animated GIF (and hopefully there will be other supported formats in the near future) in the Animation object, and then give that to the AnimatedCtrl for display. See the demo for an example. There is also still a GIFAnimationCtrl class that provides some level of backwards compatibility with the old implementation. wxMac: The compile option that turns on the use of CoreGraphics (a.k.a Quartz) for wxDC is now turned on by default. This means that all drawing via wxDC is done using the new APIs from apple, instead of the old Quick Draw API. There are, however, a few places where Quartz and wxDC don't fit together very well, mainly the lack of support for logical drawing operations such as XOR, but there is work in progress to provide other ways to do the same sort of thing that will work with Quartz and also on the other platforms. The first parts of a new 2D drawing API has been added with the wx.GraphicsPath and wx.GraphicsContext classes. They wrap GDI+ on Windows, Cairo on wxGTK and CoreGraphics on OS X. They allow path-based drawing with alpha-blending and anti-aliasing, and use a floating point cooridnate system. Currently they can only target drawing to windows, but other wx.DC backends are forthcoming. The APIs may evolve a bit more before they are finalaized with the 2.8 release, but there is enough there now to get a good feel for how things will work. There is also a transitional wx.GCDC class that provides the wx.DC API on top of wx.GraphicsContext. Docs and a demo are still MIA. Added a wx.AutoBufferedPaintDC that is a subclass of wx.PaintDC on platforms that do double buffering by default, and a subclass of wx.BufferedPaintDC on the platforms that don't. You can use this class to help avoid the overhead of buffering when it is not needed. There is also a wx.AutoBufferedPaintDCFactory function that does a little more and actually tests if the window has double-buffering enabled and then decides whether to return a wx.PaintDC or wx.BufferedPaintDC. This uses the new wx.Window.IsDoubleBuffered method. -- Robin Dunn Software Craftsman http://wxPython.org Java give you jitters? Relax with wxPython! From theller at ctypes.org Fri Oct 20 20:34:08 2006 From: theller at ctypes.org (Thomas Heller) Date: Fri, 20 Oct 2006 20:34:08 +0200 Subject: ctypes-1.0.1 released Message-ID: <453916A0.9080706@ctypes.org> ctypes 1.0.1 released - October 20, 2006 ======================================== Overview ctypes is an advanced ffi (Foreign Function Interface) package for Python 2.3 and higher. ctypes allows to call functions exposed from dlls/shared libraries and has extensive facilities to create, access and manipulate simple and complicated C data types in Python - in other words: wrap libraries in pure Python. It is even possible to implement C callback functions in pure Python. ctypes runs on Windows, Windows CE, MacOS X, Linux, Solaris, FreeBSD, OpenBSD. It may also run on other systems, provided that libffi supports this platform. Changes in 1.0.1 If the Python part of a ctypes callback function returns None, and this cannot be converted to the required C type, an exception is printed with PyErr_WriteUnraisable. Before this change, the C callback returned arbitrary values to the calling code. The __repr__ method of a NULL ctypes.py_object() no longer raises an exception. This release contains exactly the same code as the ctypes package included in Python 2.5. Changes in 1.0.0 Better support for comtypes. More target platforms for OpenBSD. Several small bugfixes. This is exactly the same version as included in Python 2.5b3. Download Downloads are available in the sourceforge files section Binary windows installers, which contain compiled extension modules, are also available, be sure to download the correct one for the Python version you are using. Homepage Enjoy, Thomas From brett at python.org Fri Oct 20 22:35:05 2006 From: brett at python.org (Brett Cannon) Date: Fri, 20 Oct 2006 13:35:05 -0700 Subject: PSF Infrastructure has chosen Roundup as the issue tracker for Python development Message-ID: At the beginning of the month the PSF Infrastructure committee announced that we had reached the decision that JIRA was our recommendation for the next issue tracker for Python development. Realizing, though, that it was a tough call between JIRA and Roundup we said that we would be willing to switch our recommendation to Roundup if enough volunteers stepped forward to help administer the tracker, thus negating Atlassian's offer of free managed hosting. Well, the community stepped up to the challenge and we got plenty of volunteers! In fact, the call for volunteers has led to an offer for professional hosting for Roundup from Upfront Systems. The committee is currently evaluating that offer and will hopefully have a decision made soon. Once a decision has been made we will contact the volunteers as to whom we have selected to help administer the installation (regardless of who hosts the tracker). The administrators and python-dev can then begin working towards deciding what we want from the tracker and its configuration. Once again, thanks to the volunteers for stepping forward to make this happen! -Brett Cannon PSF Infrastructure committee chairman -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-announce-list/attachments/20061020/9d1a414c/attachment.htm From uche at ogbuji.net Sat Oct 21 02:08:39 2006 From: uche at ogbuji.net (Uche Ogbuji) Date: Fri, 20 Oct 2006 18:08:39 -0600 Subject: 4Suite XML 1.0 Message-ID: <45396507.7070508@ogbuji.net> Today we release 4Suite XML 1.0, now available from Sourceforge and ftp.4suite.org. Thanks to all the testers, there are a number of important fixes and improvements since 1.0rc4, and we strongly recommend upgrade from all previous versions. 4Suite consists of three separate packages: 4Suite XML - XML, XPath, XSLT, related technologies and support libraries 4Suite RDF - RDF processing libraries and stand-alone DBMS 4Suite Repository - XML and RDF repository This is a release of only the first component. 4Suite XML is a comprehensive library for XML processing. It is implemented in Python and C and supports XML (SAX-like and DOM-like), XPath, XSLT, RELAX NG, XUpdate, XInclude, XPointer, and more. Many users will be able to use easy_install. See the bottom of this announcement for more information. General information: http://4suite.org/ http://uche.ogbuji.net/tech/4Suite/ https://sourceforge.net/projects/foursuite/ Source code, Python eggs, Windows installers, and documentation: ftp://ftp.4suite.org/pub/4Suite/ (primary) http://sourceforge.net/project/showfiles.php?group_id=39954 (secondary) http://cheeseshop.python.org/pypi/4Suite-XML/ (alternative) You only need to download one distribution (source, egg, or .exe). Installation requirements and other details: http://4suite.org/docs/README Installation: You can install using: easy_install 4Suite-XML For more information see: http://peak.telecommunity.com/DevCenter/EasyInstall Otherwise use one of the packages listed above, or one provided by your software distributor. Documentation: Documentation is distributed separately from the source and eggs. Windows installers come with documentation; no separate download needed. The 4Suite XML core manual is included in the documentation. It can be browsed online at http://4suite.org/docs/CoreManual.xml -- Uche Ogbuji Fourthought, Inc. http://uche.ogbuji.net http://fourthought.com http://copia.ogbuji.net http://4Suite.org Articles: http://uche.ogbuji.net/tech/publications/ From uche at ogbuji.net Sat Oct 21 02:11:46 2006 From: uche at ogbuji.net (Uche Ogbuji) Date: Fri, 20 Oct 2006 18:11:46 -0600 Subject: ANN: 4Suite XML 1.0 Message-ID: <453965C2.50803@ogbuji.net> Today we release 4Suite XML 1.0, now available from Sourceforge and ftp.4suite.org. Thanks to all the testers, there are a number of important fixes and improvements since 1.0rc4, and we strongly recommend upgrade from all previous versions. 4Suite consists of three separate packages: 4Suite XML - XML, XPath, XSLT, related technologies and support libraries 4Suite RDF - RDF processing libraries and stand-alone DBMS 4Suite Repository - XML and RDF repository This is a release of only the first component. 4Suite XML is a comprehensive library for XML processing. It is implemented in Python and C and supports XML (SAX-like and DOM-like), XPath, XSLT, RELAX NG, XUpdate, XInclude, XPointer, and more. Many users will be able to use easy_install. See the bottom of this announcement for more information. General information: http://4suite.org/ http://uche.ogbuji.net/tech/4Suite/ https://sourceforge.net/projects/foursuite/ Source code, Python eggs, Windows installers, and documentation: ftp://ftp.4suite.org/pub/4Suite/ (primary) http://sourceforge.net/project/showfiles.php?group_id=39954 (secondary) http://cheeseshop.python.org/pypi/4Suite-XML/ (alternative) You only need to download one distribution (source, egg, or .exe). Installation requirements and other details: http://4suite.org/docs/README Installation: You can install without any separate download using: easy_install 4Suite-XML For more information see: http://peak.telecommunity.com/DevCenter/EasyInstall Otherwise use one of the packages listed above, or one provided by your software distributor. Documentation: Documentation is distributed separately from the source and eggs. Windows installers come with documentation; no separate download needed. The 4Suite XML core manual is included in the documentation. It can be browsed online at http://4suite.org/docs/CoreManual.xml -- Uche Ogbuji Fourthought, Inc. http://uche.ogbuji.net http://fourthought.com http://copia.ogbuji.net http://4Suite.org Articles: http://uche.ogbuji.net/tech/publications/ From Eric_Dexter at msn.com Sun Oct 22 03:13:11 2006 From: Eric_Dexter at msn.com (edexter) Date: 21 Oct 2006 18:13:11 -0700 Subject: csounds routines beta 7 is out Message-ID: <1161479591.795911.322600@h48g2000cwc.googlegroups.com> csounds routines beta 7 is out. I would like to mention this might be a good project for people just starting out because all you are doing is messing with text files to set things up to do amazing things and without the dreaded re module (so far). https://sourceforge.net/project/showfiles.php?group_id=156455&package_id=202823 Dex Tracker will not be updated until I save the .sco editor saving files working routines get_instr(from_file, to_file, instr_num) from_file is the .csd file that you are reading to to file is where you wish the shortened orc file saved. Currently the plan is to save then as svc files. instr_num is the instrument number that is to be ripped. The purpose is part of an overall system but it can be used to rip orc files from other csd files. There will be parts of instruments that are not captured in some or maybe alot of .csd files. If there is donated code to adress that it will be given a different name most likely. csdInstrumentList(From_file) from_file is the file that is to be read from. This will return two lists instr_number that is a list of numbers currently in the csd file and comments wich is any comment that is included on the instr line following the instr number full_orc_file(from_file, to_file) from_file is the shortened orc file to be read from. To file is the full orc file to be written to. The routine reads a shortened orc format and writes a header part to create a full orc file. get_score(from_file, to_file, instr_num) from_file the file to get the score from. to_file is the file it is to be saved to. instr_num the instrument number that is to be ripped from the csd file. Del_Instr(from_file, instr) for instr will pick up i1 and i10 in test splitline is probily helpfull csoundgrid(filename, header_string) Loads a file (We want it for .orc files but the editor doesn't care what it is) and places the lines into a grid. The header string is a string that is defined by the user that for the purposes of editing .sco files should be placed at the end of the list of words to be used as a header for the collums. sco_editor(self): This brings up a .sco file picker and passes the file picked to csoundgrid return_pins(from_file): This gives a list of all the pins that are defined with zar and zawm. It will return instr number, intrument input and instrument output http://www.dexrow.com From ian at showmedo.com Sun Oct 22 17:50:56 2006 From: ian at showmedo.com (Ian Ozsvald) Date: Sun, 22 Oct 2006 16:50:56 +0100 Subject: ANN: Resources for Python Newbies - a 30 minute video tour of the web (2 New ShowMeDo videos) Message-ID: <453B9360.1000002@showmedo.com> Summary: Ian Ozsvald (joint founder of ShowMeDo.com) introduces all the usual Python on-line resources that a new Python programmer should know about. The videos cover the main Python sites, news, books, blogs, community and some of the major projects: http://showmedo.com/videos/series?name=pythonOzsvaldIntroToPyResourcesSeries Detail: Here I give a 30 minute tour of all the main Python resources that a programmer should know about. This is the kind of introduction I'd give to any new Python programmer when they ask me 'what's out there?'. Resources covered include the main Python site, Tutorials, Cheeseshop, ShowMeDo's Python videos, the Cookbook, DiveIntoPython, Daily Python, several new-programmer blogs, comp.lang.python, books (Beginning Python, Python in a Nutshell, Dive Into Python, Cookbook) and five of the larger Python projects. About ShowMeDo.com: Free videos (we call them ShowMeDos) showing you how to do things. The videos are made by us and our users, for everyone. 38 videos for Python, 71 in total, and the collection is growing. We'd love to have more contributions - would you share what you know? The founders, Ian Ozsvald, Kyran Dale From fuzzyman at gmail.com Mon Oct 23 02:12:53 2006 From: fuzzyman at gmail.com (Fuzzyman) Date: 22 Oct 2006 17:12:53 -0700 Subject: [ANN] Movable IDLE 0.1.0 Message-ID: <1161562373.736066.314570@b28g2000cwb.googlegroups.com> There is now an experimental version of **Movable IDLE** available, this is an off-shoot of the `Movable Python `_ project. **Movable IDLE**, version 0.1.0 can be downloaded (free) from : `Movable IDLE Download `_ (Same place as the trial version of Movable Python.) **Movable IDLE** is a portable distribution of IDLE, the Python IDE, for Windows. The homepage of Movable IDLE is : http://voidspace.org.uk/python/movpy/movableidle.html This can be run without installing, and at only fifteen megabytes uncompressed it can be run from a USB stick or memory card. It comes with the full Python standard library, and should be capable of running almost any program that can be run with IDLE. Hopefully this will be useful for educational and experimental purposes. Limitations ======== **Movable IDLE** does not have all the clever trickery that **Movable Python** does. This means that the `win32 `_ extensions, or any program that uses ``imp.find_module`` are unlikely to work. It also won't work with programs that have another event loop, like other GUI toolkits. If you need these features, try `Movable Python`_. On the other hand, if you do find bugs or restrictions, post them to the `Movable Python Mailing List `_ and it may be possible to fix them. This is the right place to post feedback and suggestions as well. License ====== **Movable IDLE** is copyright *Michael Foord*, 2006. It is free, but not Open Source. You are free to copy and distribute **Movable IDLE**, but not to charge for it. It may not be included in any distribution which charges directly or indirectly, without express permission. The following sections of the `Movable Python License `_ also apply : * *Disclaimer* * *Limitations* * *Restricted Uses* From ianb at colorstudy.com Mon Oct 23 07:22:22 2006 From: ianb at colorstudy.com (Ian Bicking) Date: Mon, 23 Oct 2006 00:22:22 -0500 Subject: ANN: Paste 1.0 Message-ID: <453C518E.4040409@colorstudy.com> I am happy to announce the release of Paste 1.0. This release includes all the major components: Paste (core), Paste Script, Paste Deploy, and Paste WebKit. Paste actually passed the 0.x stage a long time ago. But now it's official: Paste is really stable. How stable? A lot stable. What Is Paste? -------------- URL: http://pythonpaste.org Install: easy_install Paste PasteScript PasteDeploy Paste (core) is a set of WSGI components, each of which can be used in isolation. But used together they form an unstoppable force. Team WSGI, unite! These components let you do things like create applications that proxy to other websites, mount multiple applications under different prefixes, catch exceptions and interactively inspect the environment, and much more. Paste Deploy is a configuration system for these components. Paste Script is a jack of all trades that builds new project file layouts, runs WSGI server stacks, and does application deployment. Acknowledgements ---------------- Thanks to all the people that have helped Paste get this far: Ben Bangert, Clark Evans, James Gardner, Philip Jenvy, and to Imaginary Landscape for their support during my time there, and to The Open Planning Project for their ongoing support. -- Ian Bicking | ianb at colorstudy.com | http://blog.ianbicking.org From robin at alldunn.com Mon Oct 23 07:45:51 2006 From: robin at alldunn.com (Robin Dunn) Date: Sun, 22 Oct 2006 22:45:51 -0700 Subject: ANN: wxPython 2.7.1.2 release Message-ID: <453C570F.9090002@alldunn.com> Announcing ---------- The 2.7.1.2 release of wxPython is now available for download at http://wxpython.org/download.php. This release is a quick-turnaround bugfix release designed to solve some problems found in the 2.7.1.1 release. Source and binaries are available for both Python 2.4 and 2.5 for Windows and Mac, as well some pacakges for varous Linux distributions. A summary of changes is listed below and also at http://wxpython.org/recentchanges.php. 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 GTK2, and Mac OS X 10.3+, in most cases the native widgets are used on each platform. Changes in 2.7.1.2 ------------------ Fixed a bug in the MaskedEdit controls caused by conflicting IsEmpty methods. Patch #1579280: Some mimetype optimizations on unix-like systems. wxMac: Several wx.webkit.WebKitCtrl enhancements/fixes, including: - new methods for increasing/decreasing text size, getting selection, getting/setting scroll position, printing, enabling editing, and running JavaScripts on the page. - added new event (wx.webkit.WebKitBeforeLoadEvent) for catching, and possibly vetoing, load events before they occur. - wx.webkit.WebKitCtrl now fires mouse events for certain events that it was eating before. This improves wxSplitterWindow resizing behavior. - refactoring of the sizing logic to move the Cocoa view. Tested with splitter windows, panels, notebooks and all position correctly with this. Some improvements to the drawing code in CustomTreeCtrl. Fixed refcount leak in wx.Window.GetChildren. -- Robin Dunn Software Craftsman http://wxPython.org Java give you jitters? Relax with wxPython! From edreamleo at charter.net Mon Oct 23 13:24:59 2006 From: edreamleo at charter.net (Edward K. Ream) Date: Mon, 23 Oct 2006 06:24:59 -0500 Subject: ANN: $500 prize for best Leo slideshows Message-ID: A prize of $500 prize is hereby offered to the person or persons who can create the best slide shows (using Leo's slideshow plugin) that introduces Leo to newbies. What is Leo, you ask? Home: http://webpages.charter.net/edreamleo/front.html Tutorial: http://webpages.charter.net/edreamleo/leo_TOC.html FAQ: http://webpages.charter.net/edreamleo/FAQ.html Wiki: http://leo.zwiki.org/FrontPage 1. Prize fund The total prize fund is $500. Prizes will be awarded solely at the discretion of Edward K. Ream. The prize fund may be split among contestants, and the total prize fund will be distributed only if the number and quality of submissions warrant it. 2. Format of entries Entries should be a *single* Leo outline. This outline may contain multiple slideshows. Multiple entries are allowed. Entries must be accompanied by your name, address and email address. 3. Ownership of entries All entries become the property of Edward K. Ream and will be distributed under the terms of Leo's Open Source license. 4. Criteria for awards Prizes will be awarded on how useful the slideshow is in helping newbies understand Leo. To be considered for an award, an entry must show substantial work. I'll also consider creativity, originality, etc. I'll also look favorably on extensions to the slideshow plugin if such extensions materially improve the presentation. 5. Duration of contest The contest shall end December 11, 2006. The contest may be extended at the sole discretion of Edward K. Ream, but in no event shall the contest continue past February 2, 2007. Prizes will be awarded within one week of the close of the contest. Winners will be announced on Leo's Open Discussion Forum: http://sourceforge.net/forum/forum.php?forum_id=10226 Edward -------------------------------------------------------------------- Edward K. Ream email: edreamleo at charter.net Leo: http://webpages.charter.net/edreamleo/front.html -------------------------------------------------------------------- From steven.bethard at gmail.com Tue Oct 24 01:36:48 2006 From: steven.bethard at gmail.com (Steven Bethard) Date: Mon, 23 Oct 2006 17:36:48 -0600 Subject: [ANN] argparse 0.2 - Command-line parsing library Message-ID: Announcing argparse 0.2 ----------------------- argparse home: http://argparse.python-hosting.com/ argparse single module download: http://argparse.python-hosting.com/file/trunk/argparse.py?format=raw argparse bundled downloads at PyPI: http://www.python.org/pypi/argparse/ About this release ================== This release fixes a few minor bugs, modifies the 'store_true' and 'store_false' actions to have more natural defaults, and adds an epilog= keyword argument to ArgumentParser for text to be printed after the help messages. (The latter is in line with the `updates to optparse`_ for Python 2.5.) .. _updates to optparse: http://www.python.org/doc/2.5/whatsnew/modules.html New in this release =================== * The 'store_true' action's default is now False (instead of None). * The 'store_false' action's default is now True (instead of None). * ArgumentParser objects now accept an epilog= keyword argument. About argparse ============== The argparse module is an optparse-inspired command line parser that improves on optparse by: * handling both optional and positional arguments * supporting parsers that dispatch to sub-parsers * producing more informative usage messages * supporting actions that consume any number of command-line args * allowing types and actions to be specified with simple callables instead of hacking class attributes like STORE_ACTIONS or CHECK_METHODS as well as including a number of other more minor improvements on the optparse API. To whet your appetite, here's a simple program that sums its command-line arguments and writes them to a file:: parser = argparse.ArgumentParser() parser.add_argument('integers', type=int, nargs='+') parser.add_argument('--log', type='outfile', default=sys.stdout) args = parser.parse_args() args.log.write('%s\n' % sum(args.integers)) args.log.close() From anthony at python.org Tue Oct 24 04:57:42 2006 From: anthony at python.org (Anthony Baxter) Date: Tue, 24 Oct 2006 12:57:42 +1000 Subject: RELEASED Python 2.3.6, release candidate 1 Message-ID: <200610241257.51761.anthony@python.org> On behalf of the Python development team and the Python community, I'm announcing the release of Python 2.3.6 (release candidate 1). Python 2.3.6 is a security bug-fix release. While Python 2.5 is the latest version of Python, we're making this release for people who are still running Python 2.3. Unlike the recently released 2.4.4, this release only contains a small handful of security-related bugfixes. See the website for more. * Python 2.3.6 contains a fix for PSF-2006-001, a buffer overrun * in repr() of unicode strings in wide unicode (UCS-4) builds. * See http://www.python.org/news/security/PSF-2006-001/ for more. This is a **source only** release. The Windows and Mac binaries of 2.3.5 were built with UCS-2 unicode, and are therefore not vulnerable to the problem outlined in PSF-2006-001. The PCRE fix is for a long-deprecated module (you should use the 're' module instead) and the email fix can be obtained by downloading the standalone version of the email package. Most vendors who ship Python should have already released a patched version of 2.3.5 with the above fixes, this release is for people who need or want to build their own release, but don't want to mess around with patch or svn. Assuming no major problems crop up, a final release of Python 2.3.6 will follow in about a week's time. Python 2.3.6 will complete python.org's response to PSF-2006-001. If you're still on Python 2.2 for some reason and need to work with UCS-4 unicode strings, please obtain the patch from the PSF-2006-001 security advisory page. Python 2.4.4 and Python 2.5 have both already been released and contain the fix for this security problem. For more information on Python 2.3.6, including download links for source archives, release notes, and known issues, please see: http://www.python.org/2.3.6 Highlights of this new release include: - A fix for PSF-2006-001, a bug in repr() for unicode strings on UCS-4 (wide unicode) builds. - Two other, less critical, security fixes. Enjoy this release, Anthony Anthony Baxter anthony at python.org Python Release Manager (on behalf of the entire python-dev team) -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://mail.python.org/pipermail/python-announce-list/attachments/20061024/2a934c64/attachment.pgp From jeff at taupro.com Tue Oct 24 07:19:28 2006 From: jeff at taupro.com (Jeff Rush) Date: Tue, 24 Oct 2006 00:19:28 -0500 Subject: Talks at PyCon that Teach How to Be Better Programmers Message-ID: <453DA260.7030104@taupro.com> I've been looking over the mix of talk proposals we have so far for PyCon 2007. We're got 17 so far, with a good number of case histories. Now case histories are good, don't get me wrong, we want Python to be successful and it is interesting to hear how it is being used. But according to the feedback forms from last year, we need more talks that actually teach you how to be better programmers, especially if we want to bring new talent into the community. Where are the talks about how to best use select features of the language, that demonstrate how to use some of the more powerful design patterns in Python? Python 2.4 and 2.5 have added significant new capabilities to the language and we need the advance scouts to help some of us just now discovering them. Many of us do not adopt new features as soon as they appear. Often at PyCon we have looked to people like Alex Martelli to get down and dirty with aspects of the language, but unfortunately he is unable to make it in 2007. Who else is good at explaining how and when to apply language constructs? Not sure where to start? For brainstorming here are four talks I've not seen at recent PyCons and that I think would be well received. Anything about design patterns would be good too. ---- How to Optimize Your Python Programs? * optimization - speed or memory? * common mistakes o use of repeated append on strings o not using Numeric when doing array operations + such as graphics, sound o close your handles, release your objects where possible * what slows Python down? o looping? o function calls? * methods to speed things up o pre-binding o push looping into C extensions o code in C extensions releases global lock and speeds up execution on multicores * shrinking your memory footprint http://us.pycon.org/TX2007/PgmOptimizing ---- Key Python Technologies You Should Know The idea of this talk is to highlight some of the cross-domain technologies that a programmer would find useful in his toolbelt as he moves among problems or job positions. * criteria for inclusion in talk: o cross-platform o cross-domain o of general use, not obscure or a niche * docutils, reST (docstrings, READMEs, page templates, wiki markup, doctests) * interfaces/adapters * eggs * unit test frameworks * DB-API? http://us.pycon.org/TX2007/PyTechToKnown ---- Taking Your Programming Environment to a New Level What do skilled Python programmers keep around them that makes them better programmers? * pymacs, pyvim * pylint * ipython and other command shells * brief walk-thru of GUI IDEs * keeping docs at your fingertips * books to keep at your side (this talk could be run as a panel among experts) http://us.pycon.org/TX2007/PyPgmEnv ---- What the Heck Does "Pythonic Programming Style" Mean Anyway? The term is often tossed at someone on the list, but what are they talking about? How can a newbie learn the style? * common idioms you see in source code * attributes versus getters/setters * package dir layouts o import all in __init__? o fully name-qualify all imports? http://us.pycon.org/TX2007/PyPgmStyle I've included links to the wiki pages holding the outlines in hopes that people will suggest additional topics to cover. To give a talk, before Oct 31 visit the conference page at: http://us.pycon.org/TX2007/CallForProposals Jeff Rush PyCon 2007 Co-Chair From limodou at gmail.com Tue Oct 24 07:26:45 2006 From: limodou at gmail.com (limodou) Date: Tue, 24 Oct 2006 13:26:45 +0800 Subject: [ANN]UliPad 3.5 released Message-ID: <505f13c0610232226w1de37d45s1b3c4d8d2df784ac@mail.gmail.com> What's it? ======== It's an Editor based on wxPython. NewEdit is the old name, and UliPad is the new name. UliPad uses Mixin and Plugin technique as its architecture. Most of its classes can be extended via mixin and plugin components, and finally become an integrity class at creating the instance. So UliPad is very dynamic. You can write the new features in new files, and hardly need to modify the existing code. And if you want to extend the existing classes, you could write mixins and plugins, and this will be bound to the target class that I call "Slot Class". This technique will make the changes centralized and easily managed. What's new in 3.5 ============== New features and improvement: #. Add not automatically clear content of Message window, and add Shift+F5 shortcut #. Use FlatNotebook instead of Notebook #. Add spell checking plugin, and you should install pyEnchant module #. Auto save side pane size #. Auto maximize when double-click on tab of notebook, only 50% for side pane #. Improve acp format, and you can use {#text#} represent selected text #. Add support for creating ePyDoc comment to function definition #. Add personal info management, only user name for now #. Add session management #. Add live regular expression searching, you can type regex dynamically and watch the result immediately #. Add CloseOther plugin, thanks for nmweizi, and it can keep current document but close all others documents #. Add smart navigation, and it can remember the path of files visited #. Improve Ctrl+B to jump to last modified position #. Add a checkbox for reStructuredText Html view window, and it can used for stop automatically refresh the html content as you changing the ReST file #. Auto close syntax check window as there are no errors to current python file #. Auto support for dropping files and directories to directory window #. Dynamically popup menu creation of notebook #. Add open Dos window here for current document on popup menu of notebook, only works for windows now #. Add custom FlatButtons control written by myself, used in smart navigation #. Improve support for custom toolbar control in toolbar process #. Improve project process: refactor, adding and deleting config process #. Improve Chinese support in rerange.py script Changes: #. Remove the process for input assistant in OnKeyDown of editor, in order to simplify the process #. Fix don't check the syntax for python file as saving bug #. Fix can't search for document as opening it bug #. Fix incorrect enabled status for toolbar buttons bug #. Fix incorrect syntax highlight process bug #. Refactor and fix New... menuitem is not the same with toolbar menu bug #. Fix losing input focus after saving file bug #. Fix pressing Ctrl+F4 will quit UliPad bug #. Change recent files and recent path menu to popup menu, so it will speed opening file and saving file #. Fix the redirection process of executing python program, and add an option for showing parameter window on every running #. Fix the efficient of input assistant bug #. Change Ctrl+Enter to Shift+Enter Where to download it? ================ download lastest version 3.5: http://wiki.woodpecker.org.cn/moin/UliPad?action=AttachFile&do=get&target=ulipad_3.5.zip also have windows installer: http://wiki.woodpecker.org.cn/moin/UliPad?action=AttachFile&do=get&target=UliPad.3.5.exe wiki: http://wiki.woodpecker.org.cn/moin/UliPad svn: http://cvs.woodpecker.org.cn/svn/woodpecker/ulipad/trunk maillist: http://groups.google.com/group/ulipad If you have any problem as using UliPad, welcome to join the UliPad maillist to discuss. Hope you enjoy it. ;-) -- I like python! UliPad <>: http://wiki.woodpecker.org.cn/moin/UliPad My Blog: http://www.donews.net/limodou From srackham at methods.co.nz Tue Oct 24 22:23:29 2006 From: srackham at methods.co.nz (Stuart Rackham) Date: Wed, 25 Oct 2006 09:23:29 +1300 Subject: ANN: AsciiDoc 8.1.0 released Message-ID: <453E7641.8050606@methods.co.nz> Noteworthy additions in this releases are: - Automatic HTML table of contents generation. - A music filter which translates music in LilyPond or ABC notation to Western classical notation. Details at http://www.methods.co.nz/asciidoc/ What is it? ----------- AsciiDoc is an uncomplicated text document format for writing articles, short documents, books and UNIX man pages. AsciiDoc files can be translated to HTML, XHTML and DocBook (articles, books and refentry documents) using the asciidoc(1) command. DocBook can be post-processed to presentation formats such as HTML, PDF, roff, and Postscript using readily available Open Source tools. 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 robin at alldunn.com Thu Oct 26 20:46:25 2006 From: robin at alldunn.com (Robin Dunn) Date: Thu, 26 Oct 2006 11:46:25 -0700 Subject: ANN: wxPython 2.7.1.3 Message-ID: <45410281.4020302@alldunn.com> Announcing ---------- The 2.7.1.3 release of wxPython is now available for download at http://wxpython.org/download.php. This release is a yet another quick-turnaround bugfix release designed to solve some problems, plust some minor enhancements. This will likely be the last 2.7.1.x release. Source and binaries are available for both Python 2.4 and 2.5 for Windows and Mac, as well some pacakges for varous Linux distributions. A summary of changes is listed below and also at http://wxpython.org/recentchanges.php. 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 GTK2, and Mac OS X 10.3+, in most cases the native widgets are used on each platform. Changes in 2.7.1.3 ------------------ wxGTK: The wx.ALWAYS_SHOW_SB style is now supported. Fixed name errors in the old wxPython package namespace. As a reminder, use of this package is deprecated and you are encouraged to switch your programs over to the wx package. Fixed wx.glcanvas.GLCanvas.SetCurrent to be compatible with prevoius versons. Added wx.StandardPaths.GetTmpDir. Bug fixes in the wx.ListCtrl on Mac from Kevin Olivier, allowing it to send events properly again. There is also a new native implementation of wx.ListCtrl available, which will be used for wx.LC_REPORT style list controls if you set the "mac.listctrl.always_use_generic" SystemOption to zero. In a future release this will be the default. Added a sample to the demo that shows some of what can be done with the new wx.GraphicsContext and wx.GraphicsPath classes. -- Robin Dunn Software Craftsman http://wxPython.org Java give you jitters? Relax with wxPython! From pyscripter at gmail.com Fri Oct 27 01:35:00 2006 From: pyscripter at gmail.com (pyscripter at gmail.com) Date: 26 Oct 2006 16:35:00 -0700 Subject: Python IDE PyScripter v.1.7.2 released Message-ID: <1161905700.533596.173010@e3g2000cwe.googlegroups.com> PyScripter is free and open source Windows-based Python IDE created with the ambition to become competitive in functionality with commercial IDEs available for other languages. Being built in a compiled language (Delphi) is rather snappier than some of the other Python IDEs and provides an extensive blend of features that make it a productive Python development environment. Download from http://mmm-experts.com/Products.aspx?ProductId=4 Version history at http://mmm-experts.com/VersionHistory.aspx?ProductId=4 Development website: http://pyscripter.googlepages.com This version is mainly a bug fix release of the previously released version 1.7.1. The change log compared to 1.7.1 is as follows: History: v 1.7.2 New Features Store toolbar positions Improved bracket completion now also works with strings (Issue #4) Bug fixes Bracket highlighting with non default background Opening wrongly encoded UTF8 files results in empty module File Format (Line End) choice not respected Initial empty module was not syntax highlighted Save As dialog had no default extension set Unit Testing broken (regression) Gap in the default tool bar (Issue #3) Support: Get support on PyScripter by emailing to pyscripter at gmail.com or by visiting the PyScripter internet group (http://groups.google.com/group/PyScripter) and posting your questions and comments. You may also use the project home at Google code hosting (http://code.google.com/p/pyscripter) to view existing issues or report new ones. From edreamleo at charter.net Sat Oct 28 13:50:17 2006 From: edreamleo at charter.net (Edward K. Ream) Date: Sat, 28 Oct 2006 06:50:17 -0500 Subject: ANN: Leo 4.4.2 final released Message-ID: <5nI0h.714$Sl5.54@newsfe05.lga> Leo 4.4.2 final is now available at: http://sourceforge.net/project/showfiles.php?group_id=3458&package_id=29106 This release fixes a few bugs and adds support for controlling Leo from Emacs using pymacs. There are no known significant bugs in this version of Leo. Leo is a text editor, data organizer, project manager and much more. See: http://webpages.charter.net/edreamleo/intro.html The highlights of Leo 4.4.2: ---------------------------- - You can now store settings in myLeoSettings.leo without fear of those settings being changed by cvs updates or in future versions of Leo. - Leo's vnode and tnode classes are now completely independent of the rest of Leo. Some api's have been changed. This 'big reorg' and may affect scripts and plugins. - Leo's vnode and tnode classes can optionally be compatible with ZODB databases, i.e., they can optionally derive from ZODB.Persistence.Persistent. See Chapter 17: Using ZODB with Leo for details. - The leoOPML plugin defines commands to read and write OPML files. - The slideshow plugin allows Leo to run slideshows defined by @slideshow and @slide nodes. - The leo_to_rtf and leo_to_html plugins create rtf and html files from Leo outlines. - Much faster navigation through the outline. - When focus is in the outline pane, you can move to headlines by typing the first letter of headlines. - The find command now optionally closes nodes not needed to show the node containing the present match. - Numerous changes that make Leo easier to use without using a mouse, including new commands and options. - Many new minibuffer commands now appear in the Cmds menu. - A sax parser can now optionally read .leo files. Links: ------ Leo: http://webpages.charter.net/edreamleo/front.html What's new: http://webpages.charter.net/edreamleo/new-4-4-2.html Home: http://sourceforge.net/projects/leo/ Download: http://sourceforge.net/project/showfiles.php?group_id=3458 CVS: http://leo.tigris.org/source/browse/leo/ Leo's Wiki: http://leo.zwiki.org/FrontPage Wikipedia: http://en.wikipedia.org/wiki/Leo_%28text_editor%29 Quotes: http://webpages.charter.net/edreamleo/testimonials.html -------------------------------------------------------------------- Edward K. Ream email: edreamleo at charter.net Leo: http://webpages.charter.net/edreamleo/front.html -------------------------------------------------------------------- From gerard.vermeulen at grenoble.cnrs.fr Sun Oct 29 10:56:23 2006 From: gerard.vermeulen at grenoble.cnrs.fr (Gerard Vermeulen) Date: Sun, 29 Oct 2006 10:56:23 +0100 Subject: ANN: PyQwt3D-0.1.2 Message-ID: <20061029105623.2ac308ed.gerard.vermeulen@grenoble.cnrs.fr> What is PyQwt3D? - it is a set of Python bindings for the QwtPlot3D C++ class library which extends the Qt framework with widgets for 3D data visualization. PyQwt3D inherits the snappy feel from QwtPlot3D. The examples at http://pyqwt.sourceforge.net/pyqwt3d-examples.html show how easy it is to make a 3D plot and how to save a 3D plot to an image or an (E)PS/PDF file. - it requires and extends PyQt, a set of Python bindings for Qt. - it supports the use of PyQt, Qt, Qwt, the Numerical Python extensions (any combination of NumPy, numarray, and numarray) and optionally SciPy in a GUI Python application or in an interactive Python session. - it runs on POSIX, Mac OS X and Windows platforms (practically any platform supported by Qt and Python). New features: - support for Python-2.5 (requires PyQt and SIP snapshots or the future PyQt-3.17, PyQt-4.1 and SIP-4.5) - support for Qt-4.2.x and -4.1.x - support for NumPy-1.0, see http://numpy.scipy.org - PyQwt3D.OpenGL gives access to a small subset of the OpenGL API - EnrichmentDemo.py example demonstrates PyQwt3D.OpenGL The home page of PyQwt3D is http://pyqwt.sourceforge.net. PyQwt3D-0.1.2 requires: 1. Python-2.5.x,-2.4.x, or -2.3. 2. PyQt-4.0.x, or -3.16.x (or the future PyQt-4.1 or PyQt-3.17) 3. SIP-4.4.x (or the future SIP-4.5) 4. Qt-4.2.x, Qt-4.1.x, Qt-3.3.x, or -3.2.x. 5. QwtPlot3D-0.2.6. Have fun -- Gerard Vermeulen From amk at amk.ca Sun Oct 29 14:47:11 2006 From: amk at amk.ca (A.M. Kuchling) Date: Sun, 29 Oct 2006 08:47:11 -0500 Subject: PyCon: proposals due by Tuesday 10/31 Message-ID: <20061029134711.GA15254@rogue.amk.ca> Final reminder: if you want to submit a proposal to PyCon, you should do it by end of Tuesday, October 31st. for more info The deadline for tutorials is November 15th: http://us.pycon.org/TX2007/CallForTutorials PyCon is the Python community conference, held next February 23-25 near Dallas; a tutorial day will be on February 22. See http://us.pycon.org/ for more info. --amk From c at cdot.de Sun Oct 29 18:24:06 2006 From: c at cdot.de (Chris) Date: Sun, 29 Oct 2006 18:24:06 +0100 Subject: ANN: Cssutils 0.9a6 Message-ID: what is it ---------- A Python package to parse and build CSS Cascading Style Sheets. Partly implements the DOM Level 2 Stylesheets and DOM Level 2 CSS interfaces. changes since the last full release ----------------------------------- - complete rewrite of parser since 0.9 - customizable serializer - lots of other stuff known issues ------------ - CSSStyleDeclaration.getCSSValue and Value Classes are not implemented. These may be implemented in one of the next releases (0.91 or following) - @page rules is disabled (Unknown Rule will be used currently) - @charset not implemented according to spec (planed for 0.91) - CSS escape sequences do not work properly - Unexpected end of style sheet not handled according to spec - Properties are not bound to any CSS Version, so all properties are handled so *NOT* as described in http://www.w3.org/TR/CSS21/syndata.html#parsing-errors "Illegal values". (A future version might be customizable to a specific CSS version like 1.0 or 2.1) - Property.value is only checked for valid CSS2 properties, so will accept more than allowed. In case of an error a WARNING is issued only license ------- cssutils is published under the LGPL. download -------- download cssutils 0.9a6 - 061029 from http://cthedot.de/cssutils/ or from PyPi (which is currently down so the newest version is not uploaded yet) This is still an alpha release but much better than any older version. Any bug report is welcome. cssutils needs * Python 2.3 (tested with Python 2.5 on Windows XP and Python 2.4 on Ubuntu only) comments appreciated, thanks! christof hoeke From ian at showmedo.com Sun Oct 29 21:12:47 2006 From: ian at showmedo.com (Ian Ozsvald) Date: Sun, 29 Oct 2006 20:12:47 +0000 Subject: ANN: Introducing the new pydb debugger (1 ShowMeDo video) Message-ID: <45450B3F.3040007@showmedo.com> Summary: Rocky Bernstein has created a 13 minute video introducing you to his new pydb debugger. Rocky demonstrates the enhanced capabilities of this debugger and walks the viewer through solving a buggy piece of code: http://showmedo.com/videos/video?name=pythonBernsteinPydbIntro&fromSeriesID=28 This debugger will also appear in a future release of the IPython shell. About ShowMeDo.com: Free videos (we call them ShowMeDos) showing you how to do things. The videos are made by us and our users, for everyone. 39 of our 75 videos are for Python, with more to come. We'd love to have more contributions - would you share what you know? The founders, Ian Ozsvald, Kyran Dale ---- http://ShowMeDo.com ian at ShowMeDo.com From negativeiq at users.sourceforge.net Sun Oct 29 21:37:59 2006 From: negativeiq at users.sourceforge.net (Dan Haim) Date: Sun, 29 Oct 2006 22:37:59 +0200 Subject: SocksiPy - A Python SOCKS module Message-ID: <01b701c6fb9a$207ac550$0200a8c0@anm02> It's a simple and small module I've written to allow some network-aware Python scripts to connect through proxy servers. It implements the Socks4 (including Socks4a), Socks5 and HTTP-Tunneling (CONNECT method) protocols. Currently it supports only outgoing TCP connections. Incoming and UDP may be supported in the future. Version: 1.00 License: BSD-Style (3-clause) Available at: http://socksipy.sourceforge.net SocksiPy 1.0 - A Python SOCKS module. (25-Oct-2006) -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-announce-list/attachments/20061029/6dfc5a14/attachment.htm From edreamleo at charter.net Sun Oct 29 16:04:52 2006 From: edreamleo at charter.net (Edward K. Ream) Date: Sun, 29 Oct 2006 09:04:52 -0600 Subject: ANN: Leo 4.4.2.1 final released Message-ID: Leo 4.4.2.1 final is now available at: http://sourceforge.net/project/showfiles.php?group_id=3458&package_id=29106 Leo 4.4.2.1 final fixes a recent bug that caused Leo not to create the .leoRecentFiles.txt file properly in some situations. There are no known significant bugs in this version of Leo. Leo 4.4.2 final fixes a few bugs and adds support for pymacs. Leo is a text editor, data organizer, project manager and much more. See: http://webpages.charter.net/edreamleo/intro.html The highlights of Leo 4.4.2: ---------------------------- - You can now store settings in myLeoSettings.leo without fear of those settings being changed by cvs updates or in future versions of Leo. - Leo's vnode and tnode classes are now completely independent of the rest of Leo. Some api's have been changed. This 'big reorg' and may affect scripts and plugins. - Leo's vnode and tnode classes can optionally be compatible with ZODB databases, i.e., they can optionally derive from ZODB.Persistence.Persistent. See Chapter 17: Using ZODB with Leo for details. - The leoOPML plugin defines commands to read and write OPML files. - The slideshow plugin allows Leo to run slideshows defined by @slideshow and @slide nodes. - The leo_to_rtf and leo_to_html plugins create rtf and html files from Leo outlines. - Much faster navigation through the outline. - When focus is in the outline pane, you can move to headlines by typing the first letter of headlines. - The find command now optionally closes nodes not needed to show the node containing the present match. - Numerous changes that make Leo easier to use without using a mouse, including new commands and options. - Many new minibuffer commands now appear in the Cmds menu. - A sax parser can now optionally read .leo files. Links: ------ Leo: http://webpages.charter.net/edreamleo/front.html What's new: http://webpages.charter.net/edreamleo/new-4-4-2.html Home: http://sourceforge.net/projects/leo/ Download: http://sourceforge.net/project/showfiles.php?group_id=3458 CVS: http://leo.tigris.org/source/browse/leo/ Leo's Wiki: http://leo.zwiki.org/FrontPage Wikipedia: http://en.wikipedia.org/wiki/Leo_%28text_editor%29 Quotes: http://webpages.charter.net/edreamleo/testimonials.html -------------------------------------------------------------------- Edward K. Ream email: edreamleo at charter.net Leo: http://webpages.charter.net/edreamleo/front.html -------------------------------------------------------------------- From g.brandl at gmx.net Mon Oct 30 11:55:48 2006 From: g.brandl at gmx.net (Georg Brandl) Date: Mon, 30 Oct 2006 11:55:48 +0100 Subject: ANN: Pygments 0.5 released Message-ID: <4545DA34.8020606@gmx.net> Pygments 0.5, the first public release, is available from http://cheeseshop.python.org/pypi/Pygments. Pygments aims to be a generic syntax highlighter for general use in all kinds of software such as forum systems, wikis or other applications that need to prettify source code. Highlights are: * a wide range of common languages and markup formats is supported * special attention is paid to details increasing quality by a fair amount * support for new languages and formats are added easily * a number of output formats is available, presently HTML, LaTeX and ANSI sequences * it is usable as a command-line tool and as a library * ... and it highlights even Brainf*ck! The home page is at . Read more in the FAQ list or look at the documentation . There is already a Trac plugin at . regards, Georg Brandl From spe.stani.be at gmail.com Mon Oct 30 11:59:50 2006 From: spe.stani.be at gmail.com (SPE - Stani's Python Editor) Date: 30 Oct 2006 02:59:50 -0800 Subject: ANN: SPE 0.8.3.c Python IDE editor Message-ID: <1162205990.741238.77180@h48g2000cwc.googlegroups.com> This is a maintenance release (mostly bug fixing) to prove that SPE is alive and well! In case you are using wxPython2.7 you'll need to upgrade to this release. Submitted patches will be reviewed and included if approved for next release. Thanks for all your patient support and continuing donations. The SPE 0.8.2.a release got downloaded 110550 times on berlios and sourceforge together. Not bad. This means SPE has not seen an update for a while or is getting very popular. Maybe both ;-) Installers are available for python 2.3, 2.4 and 2.5 for Windows and as a rpm including wxPython. Other operating systems can choose the no-setup.zip or targ.gz archives. A .deb archive is being prepared for Debian Linux systems such as Ubuntu. wxGlade is unfortunately not compatible with wxPython2.7. So if you want to use, you'll need wxPython2.6. :**Fixes**: - output is now done with a fixed font - uml.py is now again a stand alone demo - upgraded and fixed wxGlade - fixed for wxPython2.7 (and still backwards compatible with wxPython2.6) - updated NotebookCtrl :**Contributors**: - Andrea Gavana (NoteBookCtrl) - Alberto Griggio (wxGlade) - Michael Foord (python 2.3 + 2.5 releases for windows) :**Donations**: The development of SPE is driven by donations. Each of these donors receives the pdf manual in thanks for their support of SPE. - James Carroll (60 euro) - John DeRosa (50 euro) - Fumph LLC (50 euro) - Ronald Britton (40 euro) - David Downes (40 euro) - Jorge Carrillo (40 euro) - Nicolas Berney (40 euro) - Francois Schnell (30 euro) - Olivier Cortes (30 euro) - Ayrshire Business Consulting Limited (30 euro) - Chris White (25 euro) - Thomas Wengerek (20 euro) - John Rudolph (20 euro) - Michael O'Keefe (20 euro) - Michael Brickenstein (20 euro) - Richard Walkington (20 euro) - Oliver Tomic (20 euro) - Jose Maria Cortes Arnal (20 euro) - Jeffrey Emminger (20 euro) - Eric Pederson (20 $) - Charles Bosson (15 euro) - Angelo Caruso (15 euro) - Chris Hengge (15 $) - Loïc Allys (15 euro) - Marcin Chojnowski (15 euro) - Boris Krasnoiarov (15 euro) - Paul Furber (15 euro) - Gary Robson (15 euro) - Ralf Wieseler (15 euro) - Samuel Schulenburg (10 euro) - Leland Hulbert II (10 euro) - Javier De La Mata Viader (10 euro) - Dorman Musical Instruments (10 euro) - Jaroslaw Sliwinski (10 euro) - Alessandro Patelli (10 euro) - James Pretorius (10 euro) - Richard Wayne Garganta (10 euro) - Maurizio Bracchitta (10 euro) - Larry Lynch (10 euro) - Kay Fricke (10 euro) - Henrik Binggl (10 euro) - Jerol Harrington (10 euro) - Victor Adan (10 euro) - James Fuqua (10 euro) - Christian Seberino (5 euro) - Serge Smeesters (5 euro) - Jarek Libert (5 euro) - Robin Friedrich (5 euro) - Udo Rabe (5 euro) - Roch Leduc (4 euro) - Rha Diseno y Desarrollo (2 euro) :**Installation**: - See http://pythonide.stani.be/manual/html/manual2.html :**Development**: - http://developer.berlios.de/mail/?group_id=4161 About SPE: SPE is a python IDE with auto-indentation, auto completion, call tips, syntax coloring, uml viewer, syntax highlighting, class explorer, source index, auto todo list, sticky notes, integrated pycrust shell, python file browser, recent file browser, drag&drop, context help, ... Special is its blender support with a blender 3d object browser and its ability to run interactively inside blender. Spe integrates with XRCed (gui designer) and ships with wxGlade (gui designer), PyChecker (source code doctor), Kiki (regular expression console) and WinPdb (remote, multi-threaded debugger). The development of SPE is driven by its donations. Anyone who donates can ask for an nice pdf version of the manual without ads (74 pages). From grflanagan at yahoo.co.uk Mon Oct 30 13:56:01 2006 From: grflanagan at yahoo.co.uk (Gerard Flanagan) Date: 30 Oct 2006 04:56:01 -0800 Subject: ANN: xmlbuilder - XML generator Message-ID: <1162212961.725945.285300@f16g2000cwb.googlegroups.com> An XML generator: http://gflanagan.net/site/python/utils/xmlbuilder/ A single file: 'xmlbuilder.py'. The real work is done by the XmlWriter class from the ElementTree package. If you're on 2.5, then you'll need to get the file 'SimpleXMLWriter.py' from http://effbot.org/zone/element-index.htm and save it somewhere in your PYTHONPATH, eg. site-packages. Then change the import line in xmlbuilder.py : change from elementtree.SimpleXMLWriter import XMLWriter to from SimpleXMLWriter import XMLWriter ---------------------------------------------------------------------------- >>> xml = XmlFragment() >>> root = xml.div() >>> print root <_XmlElement div> >>> print xml
>>> firstchild = root.p("Some text", id="1") >>> print xml

Some text

>>> firstchild.br() <_XmlElement br> >>> print xml

Some text

>>> firstchild.add_text("more text, ") <_XmlText> >>> print xml

Some text
more text,

>>> firstchild.add_text("and more.").br() <_XmlElement br> >>> print xml

Some text
more text, and more.

>>> root.add_comment("COMMENT") <_XmlComment> >>> print xml

Some text
more text, and more.

--------------------------------------------------------------------- From t.koutsovassilis at gmail.com Mon Oct 30 20:21:50 2006 From: t.koutsovassilis at gmail.com (t.koutsovassilis at gmail.com) Date: 30 Oct 2006 11:21:50 -0800 Subject: ANN: Porcupine Web Application Server 0.0.8 released Message-ID: <1162236110.588777.250260@m7g2000cwm.googlegroups.com> The brand new version of Porcupine introduces quite a few new cool features and many improvements that ease and accelerate the development process. Our main goal was to remove any constraints that expect the files of a Porcupine application to reside inside more than one folder tree. As a result, it is now attainable to develop your application working inside a single folder tree only. The application object was greatly simplified. The application's UI XML definition along with its script are now external files instead of having them embedded inside the object. This way, you can easily edit these files using your favourite editor. Additionally, the Porcupine desktop includes a new utility called HyperSearch. Use this utility to search the entire Porcupine database for objects that meet specific criteria such as text parts contained in their title or description and their modification date. The QuiX engine includes a completely rewritten event subsystem, in order to achieve a unified way of attaching and detaching DOM and custom event handlers. Furthermore, QuiX is now compatible with Internet Explorer 7 including many performance enhancements. Two new widgets are also added to the list of available widgets. An IFrame widget that enables the display of external sites inside the Porcupine desktop, and a group box. Enjoy. Resources ========= What is Porcupine? http://www.innoscript.org/content/view/30/42/ Porcupine online demo: http://www.innoscript.org/content/view/21/43/ Porcupine Wiki: http://wiki.innoscript.org From stefan.behnel-n05pAM at web.de Tue Oct 31 07:10:39 2006 From: stefan.behnel-n05pAM at web.de (Stefan Behnel) Date: Tue, 31 Oct 2006 07:10:39 +0100 Subject: lxml 1.1.2 released Message-ID: <4546fe95$0$30322$9b4e6d93@newsspool1.arcor-online.net> Hi everyone, after a month of bug tracing and fixing, lxml 1.1.2 finally made it to the cheeseshop. http://cheeseshop.python.org/pypi/lxml This is mainly a bugfix release for the stable and production-ready 1.1 series, the changelog is below. As there were a number of important fixes, updating is recommended. What is lxml? """ lxml is a Pythonic binding for the libxml2 and libxslt libraries. It provides safe and convenient access to these libraries using the ElementTree API. It extends the ElementTree API significantly to offer support for XPath, RelaxNG, XML Schema, XSLT, C14N and much more. Lxml also features a sophisticated API for custom element classes. This is a simple way to write arbitrary XML driven APIs on top of lxml. There is a separate module lxml.objectify that implements a data-binding API on top of lxml.etree. """ See the web page for more information and documentation: http://codespeak.net/lxml/ Have fun, Stefan 1.1.2 (2006-10-30) Features added * Data elements in objectify support repr(), which is now used by dump() * Source distribution now ships with a patched Pyrex * New C-API function makeElement() to create new elements with text, tail, attributes and namespaces * Reuse original parser flags for XInclude * Simplified support for handling XSLT processing instructions Bugs fixed * Parser resources were not freed before the next parser run * Open files and XML strings returned by Python resolvers were not closed/freed * Crash in the IDDict returned by XMLDTDID * Copying Comments and ProcessingInstructions failed * Memory leak for external URLs in _XSLTProcessingInstruction.parseXSL() * Memory leak when garbage collecting tailed root elements * HTML script/style content was not propagated to .text * Show text xincluded between text nodes correctly in .text and .tail * 'integer * objectify.StringElement' operation was not supported