From jjlee at reportlab.com Fri Jun 2 00:26:34 2006 From: jjlee at reportlab.com (John J. Lee) Date: Thu, 01 Jun 2006 22:26:34 GMT Subject: ANN: ReportLab PDF Library version 2.0 and 1.21 released Message-ID: <87slmocy1y.fsf@reportlab.com> ReportLab are proud to announce not one but two major releases of our PDF document generation framework. The ReportLab PDF Toolkit lets you generate rich flowing documents in PDF from dynamic data, complete with multiple columns, tables and charts, at extremely high speeds; and to generate charts and data graphics in PDF and bitmap formats. It was first released in mid-2000 and the previous stable release, 1.20, was in late 2004. The 2.0 release includes many new features, and works with Unicode or UTF8 input throughout. This simplifies many things but may break old code that uses non-ASCII input. It should be trivial to upgrade your app using the Python codecs package, which now includes codecs for most of the world's languages. http://www.reportlab.org/whatsnew_2_0.html We have also produced a 1.21 release with a number of minor enhancements and bug fixes since 1.20, and with the old character handling behaviour. This should provide a safe upgrade for all existing users. http://www.reportlab.org/whatsnew_1_21.html ReportLab's commercial products (Report Markup Language, Diagra and PageCatcher) also have their own 2.0 and 1.21 releases and are documented on http://developer.reportlab.com/index.html. Open source users are encouraged to review the RML examples and test cases, which provide very clear examples of what's possible with the underlying Python objects. Best regards, John From stefan.behnel-n05pAM at web.de Fri Jun 2 12:53:29 2006 From: stefan.behnel-n05pAM at web.de (Stefan Behnel) Date: Fri, 02 Jun 2006 12:53:29 +0200 Subject: [ANN] lxml 1.0 released Message-ID: <448018a9$0$4495$9b4e6d93@newsread2.arcor-online.net> Hallo everyone, I have the honour to announce the availability of lxml 1.0. http://codespeak.net/lxml/ It's downloadable from cheeseshop: http://cheeseshop.python.org/pypi/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, much more. Its goals are: * Pythonic API. * Documented. http://codespeak.net/lxml/#documentation * FAST! http://codespeak.net/lxml/performance.html * Use Python unicode strings in API. * Safe (no segfaults). * No manual memory management! (as opposed to the official libxml2 Python bindings) """ While the list of features added since the last beta version (1.0.beta) is rather small, this version contains a large number of bug fixes found by various users and testers. Thank you all for your help! Stefan Features added since 0.9.2: * Element.getiterator() and the findall() methods support finding arbitrary elements from a namespace (pattern {namespace}*) * Another speedup in tree iteration code * General speedup of Python Element object creation and deallocation * Writing C14N no longer serializes in memory (reduced memory footprint) * PyErrorLog for error logging through the Python logging module * element.getroottree() returns an ElementTree for the root node of the document that contains the element. * ElementTree.getpath(element) returns a simple, absolute XPath expression to find the element in the tree structure * Error logs have a last_error attribute for convenience * Comment texts can be changed through the API * Formatted output via pretty_print keyword to serialization functions * XSLT can block access to file system and network via XSLTAccessControl * ElementTree.write() no longer serializes in memory (reduced memory footprint) * Speedup of Element.findall(tag) and Element.getiterator(tag) * Support for writing the XML representation of Elements and ElementTrees to Python unicode strings via etree.tounicode() * Support for writing XSLT results to Python unicode strings via unicode() * Parsing a unicode string no longer copies the string (reduced memory footprint) * Parsing file-like objects now reads chunks rather than the whole file (reduced memory footprint) * Parsing StringIO objects from the start avoids copying the string (reduced memory footprint) * Read-only 'docinfo' attribute in ElementTree class holds DOCTYPE information, original encoding and XML version as seen by the parser * etree module can be compiled without libxslt by commenting out the line include "xslt.pxi" near the end of the etree.pyx source file * Better error messages in parser exceptions * Error reporting now also works in XSLT * Support for custom document loaders (URI resolvers) in parsers and XSLT, resolvers are registered at parser level * Implementation of exslt:regexp for XSLT based on the Python 're' module, enabled by default, can be switched off with 'regexp=False' keyword argument * Support for exslt extensions (libexslt) and libxslt extra functions (node-set, document, write, output) * Substantial speedup in XPath.evaluate() * HTMLParser for parsing (broken) HTML * XMLDTDID function parses XML into tuple (root node, ID dict) based on xml:id implementation of libxml2 (as opposed to ET compatible XMLID) Bugs fixed since 0.9.2: * Memory leak in Element.__setitem__ * Memory leak in Element.attrib.items() and Element.attrib.values() * Memory leak in XPath extension functions * Memory leak in unicode related setup code * Element now raises ValueError on empty tag names * Namespace fixing after moving elements between documents could fail if the source document was freed too early * Setting namespace-less tag names on namespaced elements ('{ns}t' -> 't') didn't reset the namespace * Unknown constants from newer libxml2 versions could raise exceptions in the error handlers * lxml.etree compiles much faster * On libxml2 <= 2.6.22, parsing strings with encoding declaration could fail in certain cases * Document reference in ElementTree objects was not updated when the root element was moved to a different document * Running absolute XPath expressions on an Element now evaluates against the root tree * Evaluating absolute XPath expressions (/*) on an ElementTree could fail * Crashes when calling XSLT, RelaxNG, etc. with uninitialized ElementTree objects * Memory leak when using iconv encoders in tostring/write * Deep copying Elements and ElementTrees maintains the document information * Serialization functions raise LookupError for unknown encodings * Memory deallocation crash resulting from deep copying elements * Some ElementTree methods could crash if the root node was not initialized (neither file nor element passed to the constructor) * Element/SubElement failed to set attribute namespaces from passed attrib dictionary * tostring() now adds an XML declaration for non-ASCII encodings * tostring() failed to serialize encodings that contain 0-bytes * ElementTree.xpath() and XPathDocumentEvaluator were not using the ElementTree root node as reference point * Calling document('') in XSLT failed to return the stylesheet From heikki at osafoundation.org Fri Jun 2 21:17:23 2006 From: heikki at osafoundation.org (Heikki Toivonen) Date: Fri, 02 Jun 2006 12:17:23 -0700 Subject: ANN: M2Crypto 0.16beta1 Message-ID: I am happy to announce the first beta of the M2Crypto 0.16 release. Please give these bits a spin and report any problems. I will be making new betas once a week (or more often if needed) until regressions are fixed. I expect the final 0.16 bits will be out by the end of June 2006. Highlights: - All known memory leaks fixed - All known regressions fixed - Added --openssl option to setup.py which can be used to specify where OpenSSL is installed, by Matt Rodriguez - ECDSA signatures and ECDH key agreement, requires OpenSSL 0.9.8+, by Arno Bakker - Added sha224, sha256, sha384 and sha512, by Larry Bugbee - Added serialNumber, SN, surname, GN and givenName fields to X509_Name, by Martin Paljak - And various other improvements and bugfixes, see CHANGES file Requirements: * Python 2.3 or newer * OpenSSL 0.9.7 or newer o Some optional new features will require OpenSSL 0.9.8 or newer * SWIG 1.3.24 or newer Get it while it's hot from M2Crypto homepage: http://wiki.osafoundation.org/bin/view/Projects/MeTooCrypto -- Heikki Toivonen From alet at librelogiciel.com Fri Jun 2 23:23:53 2006 From: alet at librelogiciel.com (Jerome Alet) Date: Fri, 02 Jun 2006 23:23:53 +0200 Subject: [ANN] pkipplib v0.04 is out Message-ID: Hi there, I'm pleased to announce pkipplib v0.04 This GPLed Python library allows you to create, manage or parse IPP (Internet Printing Protocol) requests. In addition, it exposes a CUPS() class which allows one to interact with a CUPS print server (or an IPP printer). Written in pure Python, there's no need to link with the CUPS' libraries, and it doesn't even require any CUPS related software to work. The mid to long term goal is to support all of the CUPS' IPP API. Summary of changes : - Support for HTTP Basic authentication when connecting to a CUPS server was added. - General reliability was improved. To learn more about it, see examples of use, or download it : http://www.pykota.com/software/pkipplib/ Thank you for reading. Jerome Alet From fuzzyman at gmail.com Mon Jun 5 00:44:47 2006 From: fuzzyman at gmail.com (Fuzzyman) Date: 4 Jun 2006 15:44:47 -0700 Subject: [ANN] ConfigObj 4.3.2 Released Message-ID: <1149461086.993775.301780@c74g2000cwc.googlegroups.com> `ConfigObj 4.3.2 `_ has just been released. You can download it from `configobj-4.3.2.zip `_. ConfigObj is a config file reader and writer. It has *many* features, but the main one is that it is simple to use. Its features include : * Nested sections (subsections), to any level * List values * Multiple line values * String interpolation (substitution) * Integrated with a powerful validation system - including automatic type checking/conversion - repeated sections - and allowing default values * All comments in the file are preserved * The order of keys/sections is preserved * No external dependencies * Full Unicode support * A powerful ``unrepr`` mode for storing basic datatypes This is a bugfix and minor feature enhancement release. There is a bugfix in `unrepr mode `_, and exception handling has been improved. The full changelog is : Changed error handling, if parsing finds a single error then that error will be re-raised. That error will still have an ``errors`` and a ``config`` attribute. That means the error will be more comprehensible. Fixed bug where '\n' terminated files could be truncated. Bugfix in ``unrepr`` mode, it couldn't handle '#' in values. (Thanks to Philippe Normand for the report.) As a consequence of this fix, ConfigObj doesn't now keep inline comments in ``unrepr`` mode. This is because the parser in the `compiler package `_ doesn't keep comments. {sm;:-)} Error messages are now more useful. They tell you the number of parsing errors and the line number of the first error. (In the case of multiple errors.) Line numbers in exceptions now start at 1, not 0. Errors in ``unrepr`` mode are now handled the same way as in the normal mode. The errors stored will be an ``UnreprError``. There is also a proposal to support `PEP 292 `_ string substitution (which is much better). This will be the target of the next release of **ConfigObj**. From pthibault33 at yahoo.ca Mon Jun 5 05:44:32 2006 From: pthibault33 at yahoo.ca (pierreth) Date: 4 Jun 2006 20:44:32 -0700 Subject: New Python User group in Montreal Message-ID: <1149479072.770086.300890@h76g2000cwa.googlegroups.com> Hello, I am starting a new Python user group in the Montreal area. To do so, I started a yahoo group on the subject at http://ca.groups.yahoo.com/group/python-montreal. So welcome! I taught it would be cool to be a French speaking user group. I hope the language won't be a problem for you. Your comments are welcome. ----------------------------------- Pierre From brett at python.org Sun Jun 4 19:50:59 2006 From: brett at python.org (Brett Cannon) Date: Sun, 4 Jun 2006 10:50:59 -0700 Subject: Request for trackers to evaluate as SF replacement for Python development Message-ID: The Python Software Foundation's Infrastructure committee has been charged with finding a new tracker system to be used by the Python development team as a replacement for SourceForge. The development team is currently unhappy with SF for several reasons which include: * Bad interface Most obvious example is the "Check to Upload" button * Lack of reliability SF has been known to go down during the day unexpectedly and stay down for hours * Lack of workflow controls For instance, you cannot delete a category once created For these reasons and others, we are requesting the Python community help us find a new tracker to use. We are asking for test trackers to be set up to allow us to test them to see which tracker we want to move the Python development team to. This is in order to allow the Infrastructure committee to evaluate the various trackers to see which one meets our tracker needs the best. Because we are not sure exactly what are requirements for a tracker are we do not have a comprehensive requirements document. But we do have a short list of bare minimum needs: * Can import SF data http://effbot.org/zone/sandbox-sourceforge.htm contains instructions on how to access the data dump and work with the support tools (graciously developed by Fredrik Lundh) * Can export data To prevent the need to develop our own tools to get our data out of the next tracker, there must be a way to get a dump of the data (formatted or raw) that includes *all* information * Has an email interface To facilitate participation in tracker item discussions, an email interface is required to lower the barrier to add comments, files, etc. If there is a tracker you wish to propose for Python development team use, these are the steps you must follow: * Install a test tracker If you do not have the server resources needed, you may contact the Infrastructure committee at infrastructure at python.org, but our resources are limited by both machine and manpower, so *please* do what you can to use your own servers; we do not expect you to provide hosting for the final installation of the tracker for use by python-dev, though, if your tracker is chosen * Import the SF data dump http://effbot.org/zone/sandbox-sourceforge.htm * Make the Infrastructure committee members administrators of the tracker A list of the committee members can be found at http://wiki.python.org/moin/PythonSoftwareFoundationCommittees#infrastructure-committee-ic * Add your tracker to the wiki page at http://wiki.python.org/moin/CallForTrackers This includes specifying the contact information for a *single* lead person to contact for any questions about the tracker; this is to keep communication simple and prevent us from having competing installations of the same tracker software * Email the Infrastructure committee that your test tracker is up and ready to be viewed We will accept new trackers for up to a maximum of two months starting 2006-06-05 (and thus ending 2006-08-07). If trackers cease to be suggested, we will close acceptance one month after the last tracker proposed (this means the maximum timeframe for all of this is three months, ending 2006-09-04). This allows us to not have this process carry on for three months if there is no need for it to thanks to people getting trackers up quickly. As the committee evaluates trackers we will add information about what we like and dislike to the http://wiki.python.org/moin/GoodTrackerFeatures wiki page so that various trackers and change their setttings and notify us of such changes. This prevents penalizing trackers that are set up quickly (which could be taken as a sign of ease of maintenance) compared to trackers that are set up later but possibly more tailored to what the Infrastructure committee discovers they want from a tracker. If you have any questions, feel free to email infrastructure at python.org . - Brett Cannon Chairman, Python Software Foundation Infrastructure committee -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-announce-list/attachments/20060604/a06d3f1f/attachment.html From titus at caltech.edu Mon Jun 5 07:44:01 2006 From: titus at caltech.edu (Titus Brown) Date: Sun, 4 Jun 2006 22:44:01 -0700 Subject: RELEASE: twill 0.8.5 Message-ID: <20060605054400.GB29792@caltech.edu> ANNOUNCING twill v0.8.5. twill is a simple language for browsing the Web. It's designed for automated testing of Web sites, but it can be used to interact with Web sites in a variety of ways. In particular, twill supports form submission, cookies, redirects, and HTTP authentication. A twill script to use the "I'm feeling lucky" button on Google looks like this: setlocal query "twill Python" go http://www.google.com/ fv 1 q $query submit btnI # use the "I'm feeling lucky" button show (Note that using this script abuses Google's Terms of Service. So don't.) This is the tenth public release of twill, version 0.8.5. You can install twill with easy_install, or download this release at http://darcs.idyll.org/~t/projects/twill-0.8.5.tar.gz Documentation is included in the .tar.gz and is also online at http://twill.idyll.org/ Miscellaneous details: twill is implemented in Python and uses pyparsing and mechanize. In addition to the existing simple command language, twill can easily be extended with Python. twill also provides a fairly simple and well-documented wrapper around mechanize. twill does not understand JavaScript, I'm sorry to say. --- Significant changes with 0.8.5: * Added 'formfill', 'dirstack', 'csv_iterate', 'dns_check' extension modules; * Fixed several https problems; And, of course, there were the usual major and minor bug fixes. This is a much more robust release than any of the previous ones! From darcy at PyGreSQL.org Mon Jun 5 19:19:28 2006 From: darcy at PyGreSQL.org (D'Arcy J.M. Cain) Date: Mon, 5 Jun 2006 13:19:28 -0400 Subject: PyGreSQL 3.8.1 released Message-ID: <20060605131928.4dc92fa6.darcy@PyGreSQL.org> PyGreSQL v3.8.1 has been released. It is available at: ftp://ftp.PyGreSQL.org/pub/distrib/PyGreSQL-3.8.1.tgz. If you are running NetBSD, look in the packages directory under databases. There is also a package in the FreeBSD ports collection. Please refer to http://pygresql.org/changelog.html for things that have changed in this version. Please refer to http://pygresql.org/readme.html for general information. -- D'Arcy J.M. Cain PyGreSQL Development Group http://www.PyGreSQL.org From globalknowledge at pldtdsl.net Tue Jun 6 08:09:20 2006 From: globalknowledge at pldtdsl.net (Global Knowledge Associates Inc.) Date: Tue, 6 Jun 2006 14:09:20 +0800 Subject: Linux Installation and Basic Configuration Training on June 13-17, 2006 Message-ID: <073e01c6892f$cd19dbd0$0301a8c0@sandra> Global Knowledge Associates, Inc. invites you to attend. Linux Installation and Basic Configuration (LNX101) Course Fee: 12,880.00 VAT Inc. Schedule: June 13-17,2006 Duration: 5 days Why Linux? a.. Other Considerations b.. Fragmentation c.. High Cost d.. Vendor Dominance? e.. The "Value" Proposition f.. Reliability g.. Scalability h.. Security i.. ROI j.. TCO k.. Course Format l.. Product Development m.. Structure n.. Objectives o.. Conventions p.. Introduction to LPI Labs q.. Introduction to Lab Solutions r.. Lab Conventions Linux Fundamentals a.. What is Linux? b.. The History of Linux c.. The Free Software Model d.. Proprietary Software Under Linux e.. The GNU General Public License f.. Lesser General Public License g.. Applying the GPL to Your Programs h.. Linux Features i.. Hardware j.. Loadable Device Modules k.. Software l.. GUI Window Managers m.. Programming Languages n.. Linux Advantages o.. GUIs Are Optional p.. Remote Administration is Easy q.. Rebooting is Uncommon r.. Viruses Are Almost Non-existent s.. Greater Security t.. Linux Limitations u.. Linux Distribution Mechanism v.. Linux Standards w.. FHS and LSB x.. Linux Documentation y.. The Linux Documentation Project z.. System Administration aa.. Operational (vs Administrative) Duties ab.. Administrative (vs Operational) Duties ac.. Support ad.. System Documentation ae.. Providing User Support Installing a Linux System a.. Installation Options b.. Getting Ready c.. Types of Servers and Workstations d.. Identify Your Hardware e.. Determine Network Settings f.. Installation g.. Installing From a CD-ROM h.. Creating a Boot Floppy i.. Installing From a Network j.. General Installation Steps k.. Install or Upgrade l.. Disk Partitioning m.. Swap Space n.. File System Types o.. extfs p.. extfs q.. ReiserFS r.. XFS s.. JFS t.. Partitioning the Drive u.. fdisk v.. Sample Allocation Plan w.. Drive and Partition Names x.. Commands y.. Partition Attributes z.. Partition ID Type aa.. The fdisk Procedure ab.. Other Partitioning Methods ac.. Software Choices ad.. Hardware Configuration ae.. System Settings af.. X Window System Installation ag.. Linux Boot Loaders ah.. The Cylinder Limit ai.. Boot Loaders: LILO, Grub, and LOADLIN aj.. LILO ak.. GRUB al.. LOADLIN am.. System Initialization an.. init and /etc/inittab ao.. Boot Sequence Hardware a.. Hardware b.. System Boot Procedure c.. Floppy Drives d.. IDE Drives e.. SCSI f.. SCSI Device Configuration g.. The SCSI BIOS h.. Peripheral Devices: AGP, ISA, and PCI i.. AGP j.. ISA k.. PCI Hot Swappable Hardware a.. USB b.. IEEE c.. PCMCIA and CardBus d.. Mobile Hardware e.. Other Peripherals f.. Addresses, Channels, and Ports g.. IRQ h.. I/O Addresses i.. DMA j.. COM Ports k.. Printer Ports (LPT) l.. SCSI Device Numbering m.. Adding and Configuring Devices n.. Devices and Drivers o.. ISA/Plug and Play p.. Hard Drives q.. Network Interface Controllers r.. Adding RAM s.. Modems t.. Audio Controllers u.. The Linux Kernel v.. The ALSA Project w.. OSS Commercial Sound Drivers x.. USB y.. USB Modules Linux Usage a.. Command Line Basics b.. Command Line Syntax c.. Common Commands d.. su and sudo e.. Navigating the Directory Tree f.. The ls Command g.. Hidden Files h.. The cd Command i.. The pwd Command j.. ViewingPermissions k.. Symbolic Links (symlinks) l.. Copying, Moving, and Removing Files m.. The cp Command n.. The mv Command o.. The rm Command p.. Creating and Deleting Directories q.. The Linux Shell r.. Profiles s.. Environment t.. Using the bash Shell u.. Command History and Editing v.. Recursive Commands w.. Background jobs x.. bash Scripting y.. Variables Getting Help a.. Documentation b.. man Pages and the man Command c.. Manual Entries d.. Related Commands e.. info Command f.. Documentation in /usr/doc g.. Online Documentation h.. Linux Documentation Project i.. Usenet Newsgroups j.. Newsgroup Archives k.. Hardcopy Documentation l.. System Information m.. Identifying the System n.. System Default Files o.. Identifying and Communicating with Active Users p.. Talking to Users q.. Login Prompts r.. Finding Files s.. The find Command t.. The locate Command u.. Locating Commands v.. Interpreting Files Linux Text Editors a.. Linux Text Editors b.. Basic vi c.. vi modes d.. Moving Within a File e.. Global Replacement and Regular Expressions f.. The set Command g.. The exrc File h.. Executing Commands File Systems a.. File System Structure b.. File System Types c.. Making a File System d.. Mounting a File System e.. Command Line Mounting f.. Mounting with /etc/fstab g.. Mounting Microsoft (MS-DOS) Partitions h.. Unmounting Partitions i.. Checking File Systems j.. Mounting Removable Media in a GUI k.. Managing File Systems l.. Kernel File Cache m.. The lost+found Directory n.. Corrupt File Systems o.. File System Configuration Files p.. Utilities q.. Free Disk r.. Disk Usage s.. Quota t.. User Disk Quota u.. Getting a Report on a User's Quota Status v.. Turning on Quota at Boot Time w.. Maintaining Quota x.. The /proc File System y.. porocmeter Files and Directories a.. File System Structure b.. Standard Directories c.. FHS Data Types d.. Data Sharing e.. Data Modification f.. The Linux File System g.. Long Directory Listing h.. Browsing Files in a GUI i.. Access Control j.. Overview k.. Opening a file l.. File and Directory Permission m.. File Manipulation Permissions n.. Seting User and Group IDs o.. The Sticky Bit p.. File Permission Commands q.. The chmod Command r.. The chattr Command s.. Permissions and Ownership in a GUI t.. File-related Commands u.. Links v.. Why Use Links? w.. The ln Command x.. Hard Link y.. Symbolic Link The X Window System a.. The X Window System b.. X Client/Server Model c.. Gathering Information d.. Video Card e.. Monitor f.. Installing XFree g.. Checking Your System with Xinstallsh h.. Obtain Necessary Files i.. Installing Over an Existing X Installation j.. Configuring the X Window System k.. XFSetup l.. SaX m.. Starting Your X Window System n.. The xvidtune Utility o.. The Xresources File p.. Remote X Clients q.. Xhost r.. X Stations and X Terminals s.. Installing and Managing Fonts Under X t.. Understanding the Font Path u.. Adding Directories to the Font Path v.. Font Servers w.. Window Managers/Desktop Environments x.. xdm y.. Modifying xdm z.. Configuring and Using KDE aa.. KDE Install ab.. KDM ac.. Configuring and Using GNOME ad.. GDM ae.. Terminal Emulators Package Management a.. About Package Managers b.. Red Hat Package Managers (RPM) c.. Package Names d.. RPM Commands e.. The rpmrc File f.. Debian Package Manager g.. dselect h.. apt i.. Non-Debian Packages - alien j.. Installing Software from Source k.. Unpacking the Tarball l.. tar m.. gzip and gunzip n.. configure o.. make and make install p.. Using Packages Without a Package Manager Managing Shared Libraries a.. Managing Shared Libraries b.. System Library File Names and Locations c.. The libc and ldso/ld-linuxso Libraries d.. Updating libc et al e.. Other Files Related to Shared Libraries f.. Commands Related to System Libraries g.. Installing and Supporting Multiple Versions of a Shared Library h.. Over-riding the Shared Library Loading Mechanism i.. Errors Related to Missing or Damaged Shared Libraries Text Processing a.. Text Processing b.. The grep Family c.. Regular Expressions d.. Filters e.. sed f.. Redirecting Input and Output g.. Input h.. Output i.. Pipes j.. Errors Processes a.. Objective b.. Processes c.. The Linux Kernel d.. Programs and Processes e.. Daemons and Zombies f.. Key Attributes of a Process g.. Running Processes h.. Checking on Processes i.. Running top j.. nice and renice k.. Signals l.. Sending Signals m.. Intercepting Signals n.. Scheduling Processes o.. The at Command p.. Listing and Deleting at Jobs q.. The crontab Command r.. Administering at and crontab ENROLL NOW! GLOBAL KNOWLEDGE ASSOCIATES, INC. 2502B West Tower Philippine Stock Exchange (PSE) Ortigas Center, Pasig City Tel. Nos. (632) 637- 3657 / 683- 0969 Tele/Fax (632) 637- 3657 Mobile: 0920-709-8298 Email: Sandra at globalknowledgeph.com URL: www.globalknowledgeph.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-announce-list/attachments/20060606/5f8fef01/attachment.html -------------- next part -------------- A non-text attachment was scrubbed... Name: Linux 101, 201 & 301 Course Outline.doc Type: application/msword Size: 144896 bytes Desc: not available Url : http://mail.python.org/pipermail/python-announce-list/attachments/20060606/5f8fef01/attachment-0001.doc From brian at sweetapp.com Tue Jun 6 17:13:25 2006 From: brian at sweetapp.com (Brian Quinlan) Date: Tue, 06 Jun 2006 17:13:25 +0200 Subject: Vancouver Python Workshop: New Keynoter In-Reply-To: <446C99CA.6020607@sweetapp.com> References: <446C99CA.6020607@sweetapp.com> Message-ID: <44859B95.9000107@sweetapp.com> What's New? =========== The Vancouver Python Workshop is pleased to announce the addition of a third keynote speaker to this year's conference. Ian Cav?n is the primary developer of the Lowry Digital Images motion picture restoration system. This Python and Zope-based system has been used to restore over 150 motion pictures. Highlights include Citizen Kane, Sunset Boulevard and both the Indiana Jones and Star Wars trilogies. While Ian was Chief Scientist at Lowry Digital, his rack of computers grew from a few Macintoshes on his desktop to over six hundred Macintosh and Linux servers - at one point earning Lowry the title as the second biggest installation of parallel processing Maintoshes in the world. In 2005, Lowry Digital Images was acquired by DTS (the famous movie audio company) and renamed DTS Digital Images. The motion picture restoration system has been discussed in publications as diverse as IEEE Spectrum, USA Today, the BBC NEWS, the New York Times and Apple.com. Ian has been a Python enthusiast since 1999. About the Vancouver Python Workshop =================================== The conference will begin with keynote addresses on August 4st by Guido van Rossum [1], Jim Hugunin [2], and Ian Cav?n. Further talks (and tutorials for beginners) will take place on August 5th and 6th. The Vancouver Python Workshop is a community organized conference designed for both the beginner and for the experienced Python programmer with: * tutorials for beginning programmers * advanced lectures for Python experts * case studies of Python in action * after-hours social events * informative keynote speakers * tracks on multimedia, Web development, education and more More information see: http://www.vanpyz.org/conference/ or contact Brian Quinlan at: brian at sweetapp.com Vancouver ========= In addition to the opportunity to learn and socialize with fellow Pythonistas, the Vancouver Python Workshop also gives visitors the opportunity to visit one of the most extraordinary cities in the world [3]. For more information about traveling to Vancouver, see: http://www.vanpyz.org/conference/vancouver.html http://www.tourismvancouver.com http://en.wikipedia.org/wiki/Vancouver Important dates =============== Talk proposals accepted: May 15th to June 15th Early registration (discounted): May 22nd to June 30th Normal registration: from July 1st Keynotes: August 4th Conference and tutorial dates: August 5th and 6th [1] Guido van Rossum (Google) is the inventor of Python and has managed its growth and development for more than a decade. Guido was awarded the Free Software Foundation Award in 2002 and Dr.Dobb's 1999 Excellence in Programming Award. Guido works at Google and spends half of his time on Python. [2] Jim Hugunin (Microsoft) is the creator of numerous innovations that take Python into new application domains. Jim's most recent project, IronPython integrates Python into Microsoft's .NET runtime. Jim's previous project, Jython is Python for the Java runtime and was the second production-quality implementation of Python. Before that, Jim's Numeric Python adapted Python to the needs of number crunching applications. Jim works at Microsoft adapting the .NET runtime to the needs of dynamic languages like Python. [3] http://news.bbc.co.uk/2/hi/business/2299119.stm Cheers, Brian From bhendrix at enthought.com Tue Jun 6 20:43:37 2006 From: bhendrix at enthought.com (Bryce Hendrix) Date: Tue, 06 Jun 2006 13:43:37 -0500 Subject: ANN: Python Enthought Edition Version 0.9.7 Released Message-ID: <4485CCD9.7050907@enthought.com> Enthought is pleased to announce the release of Python Enthought Edition Version 0.9.7 (http://code.enthought.com/enthon/) -- a python distribution for Windows. 0.9.7 Release Notes: -------------------- Version 0.9.7 of Python Enthought Edition includes an update to version 1.0.7 of the Enthought Tool Suite (ETS) Package and bug fixes-- you can look at the release notes for this ETS version here: http://svn.enthought.com/downloads/enthought/changelog-release.1.0.7.html About Python Enthought Edition: ------------------------------- Python 2.3.5, Enthought Edition is a kitchen-sink-included Python distribution for Windows including the following packages out of the box: Numeric SciPy IPython Enthought Tool Suite wxPython PIL mingw f2py MayaVi Scientific Python VTK and many more... More information is available about all Open Source code written and released by Enthought, Inc. at http://code.enthought.com From edahl at zenoss.org Tue Jun 6 17:19:38 2006 From: edahl at zenoss.org (Erik A. Dahl) Date: Tue, 6 Jun 2006 11:19:38 -0400 Subject: ANNOUNCE: Zenoss 0.20.0 Available Message-ID: Version 0.20.0 of Zenoss is available for download. This version adds native SNMP performance monitoring and a new install system. To download: http://www.zenoss.org/download Release Notes: http://dev.zenoss.org/trac/wiki/zenoss-0.20 ----------- Project Blurb: Zenoss is a powerful enterprise monitoring system written in Python/ Zope. Zenoss provides monitoring of organization-wide infrastructure in an integrated product. Key features include: - Monitoring across layers (network, servers, apps, environment...) - Monitoring across platforms (windows, linux, unix...) - Monitoring across perspectives (availability, performance, events, configuration) - Support for various collection methods (SNMP, WMI, SSH, Telnet) - Automated modeling of the IT environment - Role-based access/management through web portal - GPL License Enjoy, -EAD Erik Dahl From csad7 at t-online.de Tue Jun 6 22:27:30 2006 From: csad7 at t-online.de (=?ISO-8859-1?Q?Christof_H=F6ke?=) Date: Tue, 06 Jun 2006 22:27:30 +0200 Subject: ANN: W3C batchvalidator script 1.6 Message-ID: <4485E532.9010508@t-online.de> what is it ---------- A short script which calls the W3C HTML Validator in "batch" mode. Adapted from a Perl version. changes since the last release ------------------------------ New option ``UPLOADFROMURL`` to retrieve files from e.g. a local server which the w3 validator may not be able to access. Useful if dynamic pages like .php or .jsp pages need to be validated. download -------- download "validate-1.6" - 060606 from http://cthedot.de/batchvalidator/ tested on Python 2.4 only but should work on other versions as it is really quite simple... Included is a (modified) httplib_multipart.py script (originally from http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/146306) to be able to POST fields and files to an HTTP host as multipart/form-data. any comment will be appreciated, thanks christof From fabiofz at gmail.com Tue Jun 6 18:16:20 2006 From: fabiofz at gmail.com (Fabio Zadrozny) Date: Tue, 6 Jun 2006 13:16:20 -0300 Subject: Pydev 1.1.0 Released Message-ID: Hi All, Pydev and Pydev Extensions 1.1.0 have been released Details on Pydev Extensions: http://www.fabioz.com/pydev Details on Pydev: http://pydev.sf.net Details on its development: http://pydev.blogspot.com Release Highlights in Pydev Extensions: ----------------------------------------------------------------- - Bug-fixes Release Highlights in Pydev: ---------------------------------------------- - Startup is now faster for the plugin: actions, scripts, etc. are now all initialized in a separate thread - Indentation engine does not degrade as document grows - Multiple-string does not mess up highlighting anymore - code completion issue with {} solved - Ctrl+W: now expands the selection to cover the whole word where the cursor is - Assign to attributes (provided by Joel Hedlund) was expanded so that Ctrl+1 on method line provides it as a valid proposal - A Typing preferences page was created so that the main page now fits in lower resolutions What is PyDev? --------------------------- PyDev is a plugin that enables users to use Eclipse for Python and Jython development -- making Eclipse a first class Python IDE -- It comes with many goodies such as code completion, syntax highlighting, syntax analysis, refactor, debug and many others. Cheers, -- Fabio Zadrozny ------------------------------------------------------ Software Developer ESSS - Engineering Simulation and Scientific Software http://www.esss.com.br Pydev Extensions http://www.fabioz.com/pydev Pydev - Python Development Enviroment for Eclipse http://pydev.sf.net http://pydev.blogspot.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-announce-list/attachments/20060606/2f835dc8/attachment.htm From Fernando.Perez at Colorado.EDU Wed Jun 7 07:43:54 2006 From: Fernando.Perez at Colorado.EDU (Fernando Perez) Date: Tue, 06 Jun 2006 23:43:54 -0600 Subject: IPython 0.7.2 is out. Message-ID: <4486679A.10904@colorado.edu> Hi all, The IPython team is happy to release version 0.7.2, with a lot of new enhancements, as well as many bug fixes. We hope you all enjoy it, and please report any problems as usual. WHAT is IPython? ---------------- 1. An interactive shell superior to Python's default. IPython has many features for object introspection, system shell access, and its own special command system for adding functionality when working interactively. 2. An embeddable, ready to use interpreter for your own programs. IPython can be started with a single call from inside another program, providing access to the current namespace. 3. A flexible framework which can be used as the base environment for other systems with Python as the underlying language. 4. A shell for interactive usage of threaded graphical toolkits. IPython has support for interactive, non-blocking control of GTK, Qt and WX applications via special threading flags. The normal Python shell can only do this for Tkinter applications. Where to get it --------------- IPython's homepage is at: http://ipython.scipy.org and downloads are at: http://ipython.scipy.org/dist We've provided: - Source download (.tar.gz) - An RPM (for Python 2.4, built under Ubuntu Dapper 6.06). - A Python Egg (http://peak.telecommunity.com/DevCenter/PythonEggs). - A native win32 installer. The egg is 'light', as it doesn't include documentation and other ancillary data. If you want a full ipython installation, use the source tarball or your distribution's favorite system. We note that IPython is now officially part of most major Linux and BSD distributions, so packages for this version should be coming soon, as the respective maintainers have the time to follow their packaging procedures. Many thanks to Jack Moffit, Norbert Tretkowski, Andrea Riciputi, Dryice Liu and Will Maier for the packaging work, which helps users get IPython more conveniently. Many thanks to Enthought for their continued hosting support for IPython. Release notes ------------- As always, the full ChangeLog is at http://ipython.scipy.org/ChangeLog. The highlights of this release follow. Also see the "What's New" page at http://projects.scipy.org/ipython/ipython/wiki/WhatsNew for more details on some of these features. * Walter Doerwald's ipipe module, which provides a handy way to browse and manipulate tabular data, e.g. groups of files or environment variables (this is currently mostly a *nix feature, due to its need for ncurses). Walter is now a member of the IPython team. * The IPython project is the new home for the UNC readline extension, which allows win32 users to access readline facilities (tab completion, colored prompts, and more). UNC readline has been renamed PyReadline, and has a number of important new features, especially for users of non-US keyboards. See this page for more details: http://projects.scipy.org/ipython/ipython/wiki/PyReadline/Intro * A new extension and configuration API. * Hardened persistence. Persistence of data now uses "pickleshare", a shelve-like module that allows concurrent access to the central ipython database by multiple ipython instances. * Simpler output capture: "files=!ls" will now capture the 'ls' call into the 'files' variable. * New magic functions: %timeit, %upgrade, %quickref, %cpaste, %clip, %clear. Also, a 'raw' mode has been added to %edit, %macro, %history. * Batch files. If the file ends with .ipy, you can launch it by "ipython myfile.ipy". It will be executed as if it had been typed interactively (it can contain magics, aliases, etc.) * New pexpect-based 'irunner' module, to run scripts and produce all the prompts as if they had been typed one by one. This lets you reproduce a complete interactive session from a file, which can be very useful when producing documentation, for example. The module provides default runners for ipython, plain python and SAGE (http://sage.scipy.org). Users can subclass the base runner to produce new ones for any interactive system whose prompts are predictable (such as gnuplot, a system shell, etc.). * New option to log 'raw' input into IPython's logs. The logs will then be valid .ipy batch scripts just as you typed them, instead of containing the converted python source. * Fixes and improvements to (X)Emacs support. PDB auto-tracking is back (it had broken in 0.7.1, and auto-indent now works inside emacs ipython buffers. You will need to update your copy of ipython.el, which you can get from the doc/ directory. A copy is here, for convenience: http://ipython.scipy.org/dist/ipython.el * The ipapi system offers a new to_user_ns() method in the IPython object, to inject variables from a running script directly into the user's namespace. This lets you have internal variables from a script visible interactively for further manipulation after %running it. * Thanks to Will Maier, IPython is now officially part of OpenBSD ports. * A number of threading deadlock fixes. This is of particular interest to matplotlib users. * Compatibility updates with current Gnuplot.py. * We now are (finally! * Various other small fixes and enhancements. See the full ChangeLog for details. Enjoy, and as usual please report any problems. The IPython team. From hpk at trillke.net Wed Jun 7 13:32:16 2006 From: hpk at trillke.net (holger krekel) Date: Wed, 7 Jun 2006 13:32:16 +0200 Subject: Post-EuroPython sprint (6-9th July) Message-ID: <20060607113216.GO25313@solar.trillke> Geneva/CERN Post-EuroPython PyPy sprint 6-9th July ==================================================== The next PyPy sprint will be held at CERN/Geneva right after the EuroPython conference. We specifically invite newcomers and people interested to get to know and get into PyPy development. We are going to work on a variety of topics and will give introductions to various aspects of PyPy (on the 6th morning). Some foreseen focus will be on the following topics: * The extension module compiler. Using it for implementing extension modules both for PyPy and CPython from the same source code. (for example if you have a Need for Speed :) * work and experiment with our to-be-relased 0.9 stackless features * work on high level backends: .NET, Javascript etc. * optimization of core Python data types, making full use of PyPy's flexible architecture and python-implemented (and then translated) type system. * You may even dare to dive into ongoing work on the JIT compiler * experimenting with novel security systems for Python, enabled by PyPy * and so on :) Registration ---------------------- If you'd like to come, please subscribe to the `pypy-sprint mailing list`_ and drop a note about your interests and post any questions. More organisational information will be send to that list. We'll keep a list of `people`_ which we'll update (which you can do so yourself if you have codespeak commit rights). Special note to Students! ---------------------------- As you might know, there are three students in Google's Summer of Code program who are working on projects related to PyPy. In addition we are planning our own "Summer of PyPy": we can cover the expenses of attending some of our sprints and provide mentorship. In this vein, if you have an interesting idea for a project relating to PyPy you should send us ("pypy-tb at codespeak.net") a proposal. We will consider it get back to you on whether we can fund your travel and accomodation. We expect to able to fund between 4 and 6 students in this way. As we still need to figure out budget/money issues, for now we can only promise for now that we can fund this Post-EP2006 sprint for such students. But don't hesitate to come to our irc channel, ask around and produce proposals! .. _`pypy-sprint mailing list`: http://codespeak.net/mailman/listinfo/pypy-sprint .. _`people`: people.html From python-url at phaseit.net Wed Jun 7 02:20:15 2006 From: python-url at phaseit.net (Cameron Laird) Date: Wed, 7 Jun 2006 00:20:15 +0000 (UTC) Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Jun 7) Message-ID: QOTW: "You can gain substantial speed-ups in very certain cases, but the main point of Pyrex is ease of wrapping, not of speeding-up." - Simon Percivall "The rule of thumb for all your Python Vs C questions is ... 1.) Choose Python by default. . . ." - Ravi Teja Do you remember Python's early (notice the mention of traversal of the World-Wide Web. All of it!) days? Guido invites your reminiscences: http://www.artima.com/forums/flat.jsp?forum=106&thread=161207 Paul Boddie wraps up the "how can I compile Python?" FAQ as authoritatively as possible (at least for the moment): http://groups.google.com/group/comp.lang.python/msg/ccdadf2b24af0f91 Nick Craig-Wood contributes a Process definition to access a Linux process table programmatically: http://groups.google.com/group/comp.lang.python/msg/61ae7c3716fa17db Embedding Python? Initialization is more subtle than first appears. Stefan Schukat explains an example which arises when working with win32: http://groups.google.com/group/comp.lang.python/msg/5cb4424ba6c8fa97 pysqlite has a create_function. Gerhard Haering illustrates its use: http://groups.google.com/group/comp.lang.python/msg/f100756cf7569e13 ======================================================================== 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/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!". -- The Python-URL! Team-- Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and sponsor the "Python-URL!" project. From mwh at python.net Wed Jun 7 11:58:03 2006 From: mwh at python.net (Michael Hudson) Date: Wed, 07 Jun 2006 10:58:03 +0100 Subject: EP2006 timetable + reduced registration Message-ID: <2modx5s2xg.fsf@starship.python.net> Hi Pythonistas! EuroPython 2006 is nearing and there is much good news! We have a very nice program of over 100 interesting talks (sorry that we had to reject some), see here for yourself: http://www.europython.org/timetable Also we have slots for 50 lightning (5 minute) talks so be sure to prepare one and register at the conference. We have also secured Alan Kay (the inventor of OO languages, Smalltalk, opencroquet.org etc.) as a key note speaker and are happy that Guido van Rossum will make it again! But best of all, the voluntary organisers have decided to give you another chance to register for a reduced fee -- but only until this weekend, so hurry and register: http://www.europython.org/sections/registration_issues If you have questions then mail to europython at python.org or come to #europython on irc.freenode.net. See you there, or in fact here: http://www.europython.org/venue.jpg Cheers, mwh & holger (on behalf of the EuroPython organizers) -- ZAPHOD: OK, so ten out of ten for style, but minus several million for good thinking, eh? -- The Hitch-Hikers Guide to the Galaxy, Episode 2 From steven.bethard at gmail.com Wed Jun 7 06:18:49 2006 From: steven.bethard at gmail.com (Steven Bethard) Date: Tue, 6 Jun 2006 22:18:49 -0600 Subject: python-dev Summary for 2006-03-16 through 2006-03-31 Message-ID: python-dev Summary for 2006-03-16 through 2006-03-31 ++++++++++++++++++++++++++++++++++++++++++++++++++++ .. contents:: [The HTML version of this Summary is available at http://www.python.org/dev/summary/2006-03-16_2006-03-31] ============= Announcements ============= ------------------- Python 2.5 schedule ------------------- Python 2.5 is moving forward along its release schedule. A few issues still remain; check `PEP 356`_ for details. .. _PEP 356: http://www.python.org/dev/peps/pep-0356/ Contributing thread: - `Python 2.5 Schedule `__ ----------------------------- Python 3000 gets its own list ----------------------------- Serious work on Python 3000 has started now, with a new `python-3000 mailing list`_ for general discussion, and a `python-3000-checkins mailing list`_ for checkins to the p3yk branch. Right now, Guido wants patches to focus mainly on ripping out old code (e.g. classic classes) and wants the discussion to focus primarily on formalizing the processes for introducing Python 3000. Note that processes is what's important right now .. _python-3000 mailing list: http://mail.python.org/mailman/listinfo/python-3000 .. _python-3000-checkins mailing list: http://mail.python.org/mailman/listinfo/python-3000-checkins Contributing threads: - `Python 3000 Process `__ - `svn checkins are now split `__ - `Discussing the Great Library Reorganization `__ ----------------------------------------------- Buildbot warnings redirected to python-checkins ----------------------------------------------- The buildbot warnings, which for a short time this month appeared on python-dev, have been redirected to the python-checkins list. Contributing thread: - `[Fwd: buildbot warnings in amd64 gentoo trunk] `__ ---------------------------------------------------------- Checkins that change behavior must be accompanied by tests ---------------------------------------------------------- Though it's always been good practice to check in a test with any behavior-changing patch, Neal Norwitz has requested extra care in this area as we approach the release of Python 2.5. From this point on, *any* checkin that could change behavior should be accompanied by a corresponding test. Contributing thread: - `improving quality `__ -------------------------------------- Email 4.0 merged into Python 2.5 trunk -------------------------------------- Barry Warsaw has merged the Email 4.0 package into the Python 2.5 trunk. There's a minor incompatibility in that email.Parser is now a placeholder object instead of a module, but this should not affect the vast majority of users. Contributing thread: - `Merging email 4.0 to Python 2.5 svn trunk `__ --------------------- Python 2.4.3 released --------------------- `Python 2.4.3`_ was released on March 30th. This fixes over 50 bugs in Python 2.4.2, so now's the time to upgrade. .. _Python 2.4.3: http://www.python.org/2.4.3/ Contributing threads: - `release24-maint FREEZE for 2.4.3c1, this Thursday `__ - `RELEASED Python 2.4.3, release candidate 1 `__ - `release24-maint unfrozen, kinda `__ - `BRANCH release24-maint FREEZE from 00:00 UTC on Wednesday 29th `__ - `RELEASED Python 2.4.3, final. `__ ========= Summaries ========= -------------------------------- Including pysqlite in the stdlib -------------------------------- Anthony Baxter asked if folks were still interested in including pysqlite_ in Python 2.5 and got a pretty positive response. Gerhard H??ring said he could release pysqlite 2.2 and then merge that into Python SVN trunk. In the future, he agreed to synchronize stable changes in the standalone release with the Python core sqlite module. Accompanying these agreements was a long discussion about the pros and cons of including pysqlite, and of course an endless debate about what the new module should be named. In the end, Guido approved the inclusion of pysqlite, and it was given the name sqlite3. .. _pysqlite: http://initd.org/tracker/pysqlite/ Contributing thread: - `pysqlite for 2.5? `__ ----------------------------- Choosing a new tracker system ----------------------------- After Guido noticed that SourceForge had stopped sending him emails when a patch was assigned to him, a number of people took up a discussion about how to replace the SourceForge tracker system. There was already an existing PSF committee in charge of finding such a replacement, and they were considering roundup_, trac_ and jira_, though Bugzilla_ and RT_ had already been vetoed. There was already an instance of roundup running on python.org, and Python-Hosting and Atlassian had existing offers to host Python on Trac and Jira (respectively). There was some discussion about setting up one of these for Python 3000, but Guido thought it was too early for this. Getting the data out of SourceForge seemed to be the current sticking point, and so Fredrik Lundh wrote up `some tools`_ to do this and posted the results to http://effbot.org/tracker-20060403.zip. The discussion was then moved to the `infrastructure list`_. .. _bugzilla: http://www.bugzilla.org/ .. _jira: http://www.atlassian.com/software/jira/ .. _roundup: http://roundup.sourceforge.net/ .. _rt: http://www.bestpractical.com/rt/ .. _trac: http://www.edgewall.com/trac/ .. _python-hosting: http://www.python-hosting.com/freetrac .. _some tools: http://effbot.python-hosting.com/browser/stuff/sandbox/sourceforge/ .. _infrastructure list: http://mail.python.org/mailman/listinfo/infrastructure/ Contributing threads: - `I'm not getting email from SF when assigned a bug/patch `__ ------------------- The C-level set API ------------------- Barry Warsaw wanted to add PySet_Clear(), PySet_Update() and PySet_Next() to the C-level set API. Raymond Hettinger objected, saying that this functionality was already available through PyObject_CallMethod(s, "clear", NULL), PyObject_CallMethod(s, "update", "O", iterable) and PyObject_GetIter(s) respectively (with the last being notably safer too). Barry said that he was hoping to get some static compiler checks and easier debugging that would be lost by using PyObject_CallMethod, and to get some speedups over PyObject_GetIter() in the same way that PyDict_Next() had. Eventually, Raymond agreed to adding PySet_Clear() to the public API and to adding _PySet_Next() and _PySet_Update() to the private API. Contributing threads: - `PySet API `__ - `PySet_Next (Was: PySet API) `__ ---------------- Class decorators ---------------- Greg Ewing suggested a use-case for class decorators that could not be easily addressed with metaclasses: adding a class (but not its subclasses) to a registry. After Phillip J. Eby explained the hack that PyProtocols currently uses to make something like class decorators available, Guido suggested that someone write a PEP to add class decorators to Python 2.6. There was some discussion about moving decorators for classes inside the class for readability reasons, but Guido felt like this was too magical. No PEP had yet been produced at the time of this summary. Contributing thread: - `Class decorators `__ -------------------------------------- Python 3.0: Exception hierarchy issues -------------------------------------- A question from Nick Coghlan about where the new GeneratorExit exception should be placed sparked a new discussion about how the exception hierarchy should look. Barry Warsaw suggested that Exception should be at the top of the hierarchy with KeyboardInterrupt, GeneratorExit, SystemExit, StopIteration, Error and Warning being the next level down. All user defined errors would inherit from Error. People seemed to like this idea, but it would break backwards compatibility as users have been told for a while that their exceptions should derive from Exception, not Error. Guido voted for keeping the `PEP 352`_ semantics (with BaseException at the top of the hierarchy). Barry promised to address the hierarchy issue again on the Python 3000 list. .. _PEP 352: http://www.python.org/dev/peps/pep-0352/ Contributing thread: - `GeneratorExit inheriting from Exception `__ ------------------------------- Python 3.0: Exception statement ------------------------------- Greg Ewing asked if the except clause in Python 3.0 could be changed to:: except as : instead of the current:: except , : which can result in confusing behavior when you accidentally write:: except TypeError, ValueError: and have your TypeError instance bound to the name ValueError. Guido approved the proposal, and then the discussion veered off into the usual syntax debate, this time about whether to use "with" instead, whether to use commas or "or"s between the exception types, and whether or not to require parentheses around multiple types. Guido reiterated his support for the original proposal and shortly afterwards, the thread died. Contributing thread: - `Py3k: Except clause syntax `__ ------------------------------------------------- Adding an N-dimensional array interface to Python ------------------------------------------------- Travis E. Oliphant asked about including Numpy's `N-dimensional array interface`_ in Python core by adding a __array_struct__ member to array.array that looks like:: typedef struct { int version; /* contains the integer 2 as a sanity check */ int nd; /* number of dimensions */ char typekind; /* kind in array --- character code of typestr */ int itemsize; /* size of each element */ int flags; /* flags indicating how the data should be interpreted */ Py_intptr_t *shape; /* A length-nd array of shape information */ Py_intptr_t *strides; /* A length-nd array of stride information */ void *data; /* A pointer to the first element of the array */ } PyArrayInterface; This struct is basically unchanged over Numpy's last 10 years of evolution and Travis was hoping to finally get the interface blessed by official inclusion in Python so that PIL, PyVox, WxPython, PyOpenGL, etc. could all start using the same interface. Guido asked for a PEP, but no one seemed to feel comfortable taking the array interface definition and producing a PEP out of it. .. _N-dimensional array interface: http://numeric.scipy.org/array_interface.html Contributing thread: - `Expose the array interface in Python 2.5? `__ ------------------------------------------------ Inconsistent behavior between += and .__iadd__() ------------------------------------------------ Travis Oliphant noticed that ``a.__iadd__(b)`` and ``a += b`` currently do different things depending on the type of their arguments:: a = range(5) b = numpy.arange(5) a.__iadd__(b) assert a == [0, 1, 2, 3, 4, 0, 1, 2, 3, 4] a = range(5) b = numpy.arange(5) a += b assert a == numpy.array([0, 2, 4, 6, 8]) This apparently occurs because PyNumber_InPlaceAdd coerces ``a`` into a numeric type (a numpy.array object) before trying PySequence_InPlaceConcat. Guido suggested that += (and \*=) should check both the numeric and sequence slots before trying to coerce either arguments. Armin Rigo pointed out that this fix would require that ``listobject.__add__(intobject)`` would have to return NotImplemented instead of immediately raising an exception, but promised to provide the fix when he could. Contributing thread: - `INPLACE_ADD and INPLACE_MULTIPLY oddities in ceval.c `__ ------------------- Supported platforms ------------------- A couple different threads asked about which of the lesser-known platforms Python is supported on. Andrew MacIntyre verified that OS/2 is still being supported, Donn Cave and Francois Revol maintain the BeOS (a.k.a. Zeta OS) port, and Ralf W. Grosse-Kunstleve promised to make Tru64 machines available for testing Python if people needed them. Contributing threads: - `supported platforms OS2? `__ - `r43214 - peps/trunk/pep-3000.txt `__ - `[Fwd: Re: r43214 - peps/trunk/pep-3000.txt] `__ ---------------------------- Definition of sys.executable ---------------------------- Fredrik Lundh pointed out that when Python is embedded, the documentation for sys.executable seems suggest that it should be pointed to the executable used to start the program, not Python itself. Since this executable is no longer Python, you can no longer run sys.executable to start another Python instance. At least py2exe and PyXPCOM both depend on the current behavior, so the implementation can't be changed. Fredrik suggested adding sys.python_executable so that Python code would always be able to start another Python instance, even when embedded, but the discussion concluded without any final decisions. Contributing thread: - `towards a stricter definition of sys.executable `__ ---------------------------------------------------- Location of modules for multi-architecture platforms ---------------------------------------------------- Neal Becker reported that on x86_64, the Twisted package gets split between an architecture independent directory and an architecture dependent one, and so when Python searches for the package, it finds only the first part of the installation. There was then some discussion about how multi-architecture platforms should be properly supported. The conclusion seemed to be that the package should not be split; instead two versions of the package, one for each architecture, should be installed to two different directories. But Martin v. L??wis indicated that if anyone thought they knew better how this should work, he would accept patches. Contributing thread: - `Problem with module loading on multi-arch? `__ ----------------- PEP 299: rejected ----------------- Guido rejected `PEP 299`_, which would have encouraged the definition of a module-level __main__() function instead of the current:: if __name__ == '__main__': ... The rejection came after it was clear that writing code to work both before and after the PEP was going to be difficult, that ``import __main__`` would have started raising TypeErrors, and that the proposal didn't particularly gain much over the status quo. .. _PEP 299: http://www.python.org/dev/peps/pep-0299/ Contributing thread: - `What about PEP 299? `__ -------------------------------------- String exceptions in generator.throw() -------------------------------------- In its implementation at the time, `PEP 342`_'s throw method on generators did not support string exceptions. Phillip J. Eby wanted to add support for them, but suggested that string exceptions only be allowed if accompanied by a traceback so that string exceptions could only be passed on, not created. Guido indicated that he'd rather keep things simple and just allow string exceptions regardless of the presence of a traceback. .. _PEP 342: http://www.python.org/dev/peps/pep-0342/ Contributing thread: - `PEP 342 support for string exceptions in throw() `__ ---------------------- Generator memory leaks ---------------------- With `PEP 342`_, generators need a __del__ method to raise the GeneratorExit exception in active generators. However, the __del__ method also means the generator cannot be cleaned up when it's part of a reference cycle. Tim Peters suggested that the best solution was simply to add a special test for generators, and leave any generalizations of this idea until they're actually needed. Contributing threads: - `[Python-checkins] r43358 - python/trunk/Modules/itertoolsmodule.c `__ - `Fwd: [Python-checkins] r43358 - python/trunk/Modules/itertoolsmodule.c `__ ------------------------------------- PyMem and PyObject freeing mismatches ------------------------------------- When Python's small-object memory allocator was introduced, Python originally supported obtaining an object through PyObject_{New,NEW} and freeing it using any one of PyObject_{Free,FREE}, PyMem_{Del,DEL} or PyMem_{Free,FREE}. The hacks to support the mismatched (PyMem_*) frees were pretty horrible, and since using such mismatched calls has been forbidden for years, Tim Peters started ripping out the support code. Turns out that Python core itself had a number of mismatched calls, but Tim decided to leave the change checked in so that these kinds of issues could get fixed before the 2.5 release. Adam DePrince promised to provide a patch to identify in a debug-build when an object was freed with a mismatched call. Contributing thread: - `Prevalence of low-level memory abuse? `__ ================ Deferred Threads ================ - `reference leaks, __del__, and annotations `__ - `New-style icons, .desktop file `__ ================== Previous Summaries ================== - `Still looking for volunteer to run Windows buildbot `__ - `Making staticmethod objects callable? `__ - `Switch to MS VC++ 2005 ?! `__ - `_bsddb.c ownership `__ =============== Skipped Threads =============== - `[Python-checkins] r43041 - python/trunk/Modules/_ctypes/cfield.c `__ - `open() mode is lax `__ - `bytes thoughts `__ - `Python Library Reference top page too long `__ - `Weekly Python Patch/Bug Summary `__ - `Bug 1184112 still valid `__ - `Making runpy.run_module *not* thread-safe `__ - `Py3K thought: use external library for client-side HTTP `__ - `dealing with decorators hiding metadata of decorated functions `__ - `All green! `__ - `Py_ssize_t backwards compatibility `__ - `PY_SSIZE_T_CLEAN `__ - `Patch or feature? Tix.Grid working for 2.5 `__ - `__dict__ strangeness `__ - `Two buildbot slaves wedged `__ - `pyexpat namespace problem (Was: libbzip2 version?) `__ - `buildbot failure in sparc solaris10 gcc trunk `__ - `Test `__ - `Py3K timescale and stdlib philosophy (was: Re: Py3K thought: use...) `__ - `Py3K timescale and stdlib philosophy `__ - `Long-time shy failure in test_socket_ssl `__ - `Bug Day? `__ - `Bug Day on Friday, 31st of March `__ - `buildbot failure in x86 W2k trunk `__ - `buildbot failure in x86 XP-2 trunk `__ - `buildbot failure in x86 XP 2.4 `__ - `Documenting the ssize_t Python C API changes `__ - `r43041 - python/trunk/Modules/_ctypes/cfield.c `__ - `buildbot warnings in x86 gentoo trunk `__ - `segfaults on Mac (was Re: Long-time shy failure in test_socket_ssl)) `__ - `buildbot warnings in amd64 gentoo trunk `__ - `[Python-checkins] r43126 - in python/trunk: Doc/lib/libsocket.tex Lib/socket.py Lib/test/test_socket.py Misc/NEWS Modules/socketmodule.c `__ - `buildbot warnings in x86 XP-2 trunk `__ - `buildbot warnings in g4 osx.4 trunk `__ - `buildbot warnings in sparc solaris10 gcc trunk `__ - `Building Python for AMD64 (Windows) `__ - `buildbot warnings in x86 W2k trunk `__ - `buildbot warnings in x86 XP trunk `__ - `Patch to add timestamp() method to datetime objects `__ - `test_quopri, test_wait3, and test_popen2 `__ - `[Python-3000] Iterators for dict keys, values, and items == annoying :) `__ - `howto return malloc()ed memory from C -> Python `__ - `PEP 343: A messy contextmanager corner case `__ - `Another PEP 343 contextmanager glitch `__ - `Pickling problems are hard to debug `__ - `daily releases? `__ - `Changing -Q to warn for 2.5? `__ - `TRUNK FREEZE for 2.5a1: 0000 UTC, Thursday 30th `__ - `refleaks in 2.4 `__ - `Inconsistency in 2.4.3 for __repr__() returning unicode `__ - `Next PyPy Sprint: Tokyo 23/4 - 29/4 `__ - `[Python-checkins] TRUNK FREEZE for 2.5a1: 0000 UTC, Thursday 30th `__ - `Libref sections to put new modules under? `__ - `[Python-checkins] Cancelled! TRUNK FREEZE for 2.5a1: 0000 UTC, Thursday 30th `__ - `Error msgs for new-style division `__ - `Reminder: Bug Day this Friday, 31st of March `__ - `warnings in libffi `__ - `Name for python package repository `__ - `alpha problems -- need input `__ - `unicode vs buffer (array) design issue can crash interpreter `__ - `building sql queries in python `__ - `Win64 AMD64 (aka x64) binaries available64 `__ - `_xmlplus fixup for 2.5 `__ - `(finally) getting around to killing __private names from stdlib `__ - `new article - MapPoint and Python `__ - `xmlrpclib.binary missing? `__ - `Fwd: Python 2.5 update `__ - `2.5 trunk built for Windows available? `__ - `Nasty trunk test failures `__ - `x86 trunk MSI preview `__ - `[Python-checkins] Python Regression Test Failures all (1) `__ - `gmane.comp.python.devel.3000 has disappeared `__ ======== Epilogue ======== This is a summary of traffic on the `python-dev mailing list`_ from March 16, 2006 through March 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 1st written by the python-dev summary slave, Steve Bethard (Looks like I'm on my own now!). 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 ------------------------- That this summary is written using reStructuredText_. Any unfamiliar punctuation is probably markup for reST_ (otherwise it is probably regular expression syntax or a typo :); you can safely ignore it. 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. Unfortunately, even though reST is standardized, the wonders of programs that like to reformat text do not allow us to guarantee you will be able to run the text version of this summary through Docutils_ as-is unless it is from the `original text file`_. .. _python-dev: http://www.python.org/dev/ .. _SourceForge: http://sourceforge.net/tracker/?group_id=5470 .. _python-dev mailing list: http://mail.python.org/mailman/listinfo/python-dev .. _c.l.py: .. _comp.lang.python: http://groups.google.com/groups?q=comp.lang.python .. _PEP Markup: http://www.python.org/peps/pep-0012.html .. _Docutils: http://docutils.sf.net/ .. _reST: .. _reStructuredText: http://docutils.sf.net/rst.html .. _PSF: .. _Python Software Foundation: http://python.org/psf/ .. _original text file: http://www.python.org/dev/summary/2006-03-16_2006-03-31.rst .. _archive: http://www.python.org/dev/summary/ .. _RSS feed: http://www.python.org/dev/summary/channews.rdf From steven.bethard at gmail.com Wed Jun 7 06:19:42 2006 From: steven.bethard at gmail.com (Steven Bethard) Date: Tue, 6 Jun 2006 22:19:42 -0600 Subject: python-dev Summary for 2006-04-01 through 2006-04-15 Message-ID: python-dev Summary for 2006-04-01 through 2006-04-15 ++++++++++++++++++++++++++++++++++++++++++++++++++++ .. contents:: [The HTML version of this Summary is available at http://www.python.org/dev/summary/2006-04-01_2006-04-15] ============= Announcements ============= --------------------- Python 2.5a1 Released --------------------- Python 2.5 alpha 1 was released on April 5th. Please download it and try it out, particularly if you are an extension writer or you embed Python -- you may want to change things to support 64-bit sequences, and if you have been using mismatched PyMem_* and PyObject_* allocation calls, you will need to fix these as well. Contributing threads: - `TRUNK FREEZE. 2.5a1, 00:00 UTC, Wednesday 5th of April. `__ - `outstanding items for 2.5 `__ - `chilling svn for 2.5a1 `__ - `Reminder: TRUNK FREEZE. 2.5a1, 00:00 UTC, Wednesday 5th of April. `__ - `RELEASED Python 2.5 (alpha 1) `__ - `TRUNK is UNFROZEN `__ - `segfault (double free?) when '''-string crosses line `__ - `pdb segfaults in 2.5 trunk? `__ - `IMPORTANT 2.5 API changes for C Extension Modules and Embedders `__ ---------------------- Contributor agreements ---------------------- If you're listed in the `Python acknowledgments`_, and you haven't signed a `contributor agreement`_, please submit one as soon as possible. Note that this includes even the folks that have been around forever -- the PSF would like to be as careful as possible on this one. .. _Python acknowledgments: http://svn.python.org/projects/python/trunk/Misc/ACKS .. _contributor agreement: http://www.python.org/psf/contrib-form-python.html Contributing threads: - `PSF Contributor Agreement for pysqlite `__ --------------------------- Firefox Python bug searches --------------------------- Anthony Baxter has created a `Firefox searchbar`_ for finding Python bugs by their SourceForge IDs. There are also two Firefox sidebar options: `Mark Hammond's`_ and `Daniel Lundin's`_. .. _Firefox searchbar: http://www.python.org/~anthony/searchbar/ .. _Mark Hammond's: http://starship.python.net/~skippy/mozilla/ .. _Daniel Lundin's: http://projects.edgewall.com/python-sidebar/ Contributing thread: - `Firefox searchbar engine for Python bugs `__ ------------------------------------------------- Building Python with the free MS Toolkit compiler ------------------------------------------------- Paul Moore documented how to build Python on Windows with the free MS Toolkit C++ compiler `on the wiki`_. The most up-to-date version of these instructions is in `PCbuild/readme.txt`_. .. _on the wiki: http://wiki.python.org/moin/Building_Python_with_the_free_MS_C_Toolkit .. _PCbuild/readme.txt: http://svn.python.org/projects/python/trunk/PCbuild/readme.txt Contributing thread: - `Building Python with the free MS Toolkit compiler `__ ---------------------------------------------- Please login to the wiki when you make changes ---------------------------------------------- Skip Montanaro has requested that anyone posting to the wiki sign in first, as this makes things easier for those monitoring changes to the wiki. When you're logged in, your changes appear with your name, and so can be immediately recognized as not being wiki-spam. Contributing thread: - `Suggestion: Please login to wiki when you make changes `__ --------------------------- Checking an older blamelist --------------------------- While the buildbot blamelist may scroll off the `main page`_ in a matter of hours, you can still see the blamelist for a particular revision by checking a particular build number, e.g. to see build 800 of the trunk on the G4 OSX, you could check http://www.python.org/dev/buildbot/trunk/g4%20osx.4%20trunk/builds/800. .. _main page: http://www.python.org/dev/buildbot/all/ Contributing threads: - `Preserving the blamelist `__ - `TODO Wiki (was: Preserving the blamelist) `__ ========= Summaries ========= ------------------------- Garbage collection issues ------------------------- One of the problems with garbage-collecting generators (now that they have a __del__ method) was that GC normally assumes that because the *type* has a __del__ method, the *instance* needs finalization. Many generator instances may not need finalization even though their type has a __del__ slot, so generators have been special-cased in the garbage-collection code so that GC can sometimes tell that a generator does not need its finalizer called. As a side note, Tim Peters pointed out that if you're worried about cyclic-gc and __del__ methods, one of the ways to avoid problems is to remove the __del__ method from the object you think might be included in a cycle, and add an attribute to that object that holds a "closing" object with a __del__ method that simply closes all your resources. Since your main object won't have a __del__, it will be easily collected, which should make the closing object collectable too. Contributing threads: - `reference leaks, __del__, and annotations `__ - `reference leaks, __del__, and annotations `__ - `Debugging opportunity :-) `__ ------------------ ElementTree naming ------------------ The elementtree package was included in Python 2.5 as xml.etree. There were some complaints about the naming schemes (which aren't quite `PEP 8`_-compliant) but changing these while elementtree is still distributed as a standalone package seemed like a bad idea. People generally felt that style-motivated renamings should all wait until Python 3000. .. _PEP 8: http://www.python.org/dev/peps/pep-0008/ Contributing thread: - `elementtree in stdlib `__ ----------------------------- Externally maintained modules ----------------------------- Brett Cannon was putting together a PEP for externally maintained code in the stdlib (e.g. ctypes and pysqlite). The PEP will list all modules and packages within the stdlib that are maintained externally, as well as the contact info for their maintainers and the locations where bugs and patches should be reported. At the time of this summary, he had not yet been assigned a PEP number. Contributing threads: - `PEP to list externally maintained modules and where to report bugs? `__ - `need info for externally maintained modules PEP `__ -------------------------------------- String prefix for internationalization -------------------------------------- Martin Blais proposed an ``i`` prefix for internationalized strings to get rid of the ``_()`` required by pygettext. This would allow pygettext to more easily identify internationalized strings, and reduce the number of parentheses necessary in internationalized code. However, it would only have saved two key-strokes, it would have required the introduction of ``iu`` and ``ir`` prefixes, and it would have forced some rewriting of the tools that currently do string extraction using ``_()``, so the idea was rejected. Contributing thread: - `The "i" string-prefix: I18n'ed strings `__ --------------------------- PEP 359: The make statement --------------------------- Steven Bethard introduced a PEP for the make statement which would have made the statement:: make : syntactic sugar for:: class : __metaclass__ = The goal was to allow the creation of non-class objects from a namespace without requiring a misleading ``class`` statement and ``__metaclass__`` hook. With appropriately defined objects, the make statement would have supported syntax like:: make block_property x: '''The x of the frobulation''' def fget(self): ... def fset(self): ... make Schema registration: make String name: max_length = 100 not_empty = True make PostalCode postal_code: not_empty = True make Int age: min = 18 In current Python these would have to be created using class statements which misleadingly created objects that were not classes. Responses were mixed, and the discussion continued on into the next fortnight. .. _PEP 359: http://www.python.org/dev/peps/pep-0359/ Contributing thread: - `PEP 359: The "make" Statement `__ --------------------------------------------- Formatting exceptions with their module names --------------------------------------------- Georg Brandl checked in a patch to make traceback.format_exception_only() prepend the exception's module name in the same way the interpreter does. This caused a number of doctests to fail because the exception module names were not included. After some discussion, it seemed like people agreed that even though some doctests would be broken, it was more important to have the interpreter and traceback.format_exception_only() produce the same output. Contributing thread: - `[Python-checkins] r45321 - in python/trunk: Lib/test/test_traceback.py Lib/traceback.py Misc/NEWS `__ ------------------- Benchmarking python ------------------- Benji York and a few others ran Python 2.5a1 through pystone and found it mostly comparable to 2.4.2. However, Raymond Hettinger pointed out that pystone isn't really an appropriate benchmark for comparing across versions -- it's intended more for comparing across architectures and compilers. Contributing threads: - `2.5a1 Performance `__ - `Buildbot slave locks (Was: 2.5a1 Performance) `__ ------------------------------------------------------ PySocketSockObject, socketmodule.c, _ssl.c and Windows ------------------------------------------------------ Tim Peters noticed that on Windows, socketmodule.c and _ssl.c disagreed about the offset of the ``sock_timeout`` member of a ``PySocketSockObject``. Turns out that since _socket was built by a .vcproj but _ssl was built by _ssl.mak (which had forgotten to define WIN32), doubles were aligned to an 8-byte boundary when socketmodule.c was compiled but a 4-byte boundary when _ssl was compiled. Contributing thread: - `Who understands _ssl.c on Windows? `__ ------------------------------ Getting a dictionary of counts ------------------------------ Alex Martelli proposed adding a ``tally()`` function to the collections module which would count the number of each value in an iterable and produce a dictionary. So for example:: tally('abacaab') == {'a': 4, 'c': 1, 'b': 2} People generally thought the function would be useful, but there was some discussion as to whether or not it would be better to provide a collections.bag object instead. The discussion fizzled out without any patches being produced. Contributing thread: - `tally (and other accumulators) `__ ------------------------ Building Python with C++ ------------------------ Anthony Baxter has donated some of his recent time to getting Python to compile with g++. He got Python core to compile correctly, but there were lots of errors in the Modules code that wasn't C++ safe. If you'd like to help Anthony out and fix some bugs, try it yourself using ``CC=g++ ./configure --with-cxx=g++`` Contributing thread: - `building with C++ `__ ---------------------- Adding PEP 302 support ---------------------- Phillip J. Eby has been working on adding `PEP 302`_ import loader support to the necessary modules around Python. In the process, he noticed that both runpy and test.test_importhooks reimplement the base `PEP 302`_ algorithm, and suggested adding functions to pkgutil that would allow such modules to all share the same code for this kind of thing. The code appears to have been checked in, but docs do not appear to be available yet. .. _PEP 302: http://www.python.org/dev/peps/pep-0359/ Contributing threads: - `PEP 302 support for traceback, inspect, site, warnings, doctest, and linecache `__ - `Proposal: expose PEP 302 facilities via 'imp' and 'pkgutil' `__ - `PEP 302 support for pydoc, runpy, etc. `__ ----------------------------------------- Having Python use dlopen() on Darwin/OS X ----------------------------------------- Zachary Pincus asked about using the normal code path for Unix-like systems through dlopen() for Darwin/OS X instead of the officially discouraged NeXT-derived APIs that Python was using at the time. Bob Ippolito approved the patch, and OS X users should hopefully see the change in Python 2.5. Contributing thread: - `Use dlopen() on Darwin/OS X to load extensions? `__ ------------------------------- Saving the hash value of tuples ------------------------------- Noam Raphael suggested `caching the hash value of tuples`_ in a similar way to what is done for strings now. But without any measurements showing that this improved performance, and with the relative rareness of hashing tuples, Guido thought that this was a bad idea. .. _caching the hash value of tuples: http://bugs.python.org/1462796 Contributing thread: - `Saving the hash value of tuples `__ ------------------ sqlite3.dll issues ------------------ If a Windows user tries ``import sqlite3`` and Python finds SQLite's sqlite3.dll before it finds pysqlite's sqlite.py module, Python will end up incorrectly raising an ImportError. Martin v. L?wis suggested that maybe Python should stop treating .dll files as extension modules so conflicts like this could be avoided. It was unclear at the end of the thread if this (or any other) route was being persued. Contributing thread: - `Renaming sqlite3 `__ ---------------- New Python icons ---------------- Andrew Clover made some `new Python icons`_ available based on the logo on the new website. People on python-dev really liked them, and it looked like they'd probably make it into Python 2.5. .. _new Python icons: http://doxdesk.com/img/software/py/icons2.png Contributing threads: - `New-style icons, .desktop file `__ - `New-style icons, .desktop file `__ ---------------------------------------- Py_Initialize/Py_Finalize leaking memory ---------------------------------------- Martin v. L?wis corrected some documentation errors that claimed that Py_Finalize would release all memory (it can't be guaranteed to do so). In the process, Martin and Tim Peters discussed a `recent bug`_ where running Py_Initialize/Py_Finalize in a loop left more and more objects behind each time. The hope was to get the number of added objects after a Py_Initialize/Py_Finalize pair back down to zero if possible, and Martin found at least one leak, but it was unclear at the end of the thread how close they had gotten. .. _recent bug: http://bugs.python.org/1445210 Contributing thread: - `Py_Finalize does not release all memory, not even closely `__ ---------------------- Removing PyObject_REPR ---------------------- Thomas Wouters noticed that the ``PyObject_REPR()`` macro, which was originally introduced as an internal debugging API, leaks a PyString object. It looked like the macro would either be removed entirely, or redefined to call Py_DECREF appropriately and return a newly allocated (and thus freeable) string. Contributing thread: - `PyObject_REPR() `__ ------------------------------------------ uriparse module to replace urlparse module ------------------------------------------ Paul Jimenez offered up his `uriparse module`_ which improves on urlparse. Currently, urlparse doesn't comply with STD66 (a.k.a. RFC3986), as it hard-codes some URI schemes instead of applying the same syntax to all of them. Martin v. L?wis asked for more documentation, and John J Lee suggested deprecating a few functions from urllib and putting RFC-compliant versions in uriparse. The discussion then moved to the tracker, but at the time of this summary, the remaining issues had not yet been resolved. .. _uriparse module: http://bugs.python.org/1462525 Contributing thread: - `New uriparse.py `__ -------------------------------------- Line numbers with the new AST compiler -------------------------------------- Jeremy Hylton noticed that with the new AST-based compiler, the line numbers for things like the implicit ``return None`` at the end of a function were occasionally different from previous versions of Python. The changes looked harmless, so Guido said it was fine to leave the code as it was. Jeremy promised to look into some of the other special cases for alpha 2. Contributing thread: - `line numbers, pass statements, implicit returns `__ ================ Deferred Threads ================ - `PY_FORMAT_SIZE_T warnings on OS X `__ ================== Previous Summaries ================== - `Class decorators `__ - `I'm not getting email from SF when assigned a bug/patch `__ - `improving quality `__ =============== Skipped Threads =============== - `gmane.comp.python.devel.3000 has disappeared `__ - `refleaks in 2.4 `__ - `Name for python package repository `__ - `[Python-checkins] r43545 - in python/trunk: Doc/lib/libcalendar.tex Lib/calendar.py `__ - `Bug Day on Friday, 31st of March `__ - `String formating in python 3000 `__ - `SF #1462485 - StopIteration raised in body of 'with' statement suppressed `__ - `SF #1462700 - Errors in PCbuild `__ - `Whole bunch of test failures on OSX `__ - `SF:1463370 add .format() method to str and unicode `__ - `Need Py3k group in trackers `__ - `posixmodule.c patch- revision 43586 `__ - `Twisted and Python 2.5a0r43587 `__ - `r43613 - python/trunk/Doc/lib/libcsv.tex `__ - `current 2.5 status `__ - `Should issubclass() be more like isinstance()? `__ - `The "Need for Speed" Sprint, Reykjavik, Iceland, May 21-28, 2006 `__ - `suggest: nowait option in subprocess.communicate `__ - `strftime/strptime locale funnies... `__ - `PY_SSIZE_T_MIN? `__ - `How to determine if char is signed or unsigned? `__ - `Possible issue with 2.5a1 Win32 binary `__ - `Don Beaudry `__ - `Default Locale, was; Re: strftime/strptime locale funnies... `__ - `dis module and new-style classes `__ - `module aliasing `__ - `str.partition? `__ - `subprocess maintenance - SVN write access `__ - `[IronPython] base64 module `__ - `base64 module `__ - `packaging/bootstrap issue `__ - `Patch or feature? Tix.Grid working for 2.5 `__ - `Weekly Python Patch/Bug Summary `__ - `Subversion downtime today `__ - `Win64 AMD64 (aka x64) binaries available64 `__ - `int()'s ValueError behaviour `__ - `threadless brownian.py `__ - `Subversion repository back up `__ - `DRAFT: python-dev summary for 2006-02-01 to 2006-02-15 `__ - `Failing "inspect" test: test_getargspec_sublistofone `__ - `updating PyExpat (Was: need info for externally maintained modules PEP) `__ - `DRAFT: python-dev summary for 2006-02-16 to 2006-02-28 `__ - `DRAFT: python-dev summary for 2006-03-01 to 2006-03-15 `__ - `Checking assigned bugs/patches `__ - `String initialization (was: The "i" string-prefix: I18n'ed strings) `__ - `Request for review `__ - `cleanup list `__ - `unicode vs buffer (array) design issue can crash interpreter `__ - `int vs ssize_t in unicode `__ - `Any reason that any()/all() do not take a predicate argument? `__ - `Any reason that any()/all() do not take a predicateargument? `__ - `Exceptions doctest Re: Request for review `__ - `Is test_sundry really expected to succeed on Windows? `__ - `Checkin 45232: Patch #1429775 `__ - `[Python-checkins] r45334 - python/trunk/Lib/test/leakers/test_gen1.py python/trunk/Lib/test/leakers/test_generator_cycle.py python/trunk/Lib/test/leakers/test_tee.py `__ - `ia64 debian buildbot `__ - `[Python-3000] Removing 'self' from method definitions `__ - `Procedure for sandbox branches in SVN? `__ - `Calling Thomas Heller and Richard Jones `__ ======== Epilogue ======== This is a summary of traffic on the `python-dev mailing list`_ from April 01, 2006 through April 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 2nd written by the python-dev summary master, Steve Bethard (You want 'em faster, you write em! ;-) ). 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 ------------------------- That this summary is written using reStructuredText_. Any unfamiliar punctuation is probably markup for reST_ (otherwise it is probably regular expression syntax or a typo :); you can safely ignore it. 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. Unfortunately, even though reST is standardized, the wonders of programs that like to reformat text do not allow us to guarantee you will be able to run the text version of this summary through Docutils_ as-is unless it is from the `original text file`_. .. _python-dev: http://www.python.org/dev/ .. _SourceForge: http://sourceforge.net/tracker/?group_id=5470 .. _python-dev mailing list: http://mail.python.org/mailman/listinfo/python-dev .. _c.l.py: .. _comp.lang.python: http://groups.google.com/groups?q=comp.lang.python .. _PEP Markup: http://www.python.org/peps/pep-0012.html .. _Docutils: http://docutils.sf.net/ .. _reST: .. _reStructuredText: http://docutils.sf.net/rst.html .. _PSF: .. _Python Software Foundation: http://python.org/psf/ .. _original text file: http://www.python.org/dev/summary/2006-04-01_2006-04-15.rst .. _archive: http://www.python.org/dev/summary/ .. _RSS feed: http://www.python.org/dev/summary/channews.rdf From jdavid at itaapy.com Wed Jun 7 16:19:45 2006 From: jdavid at itaapy.com (=?UTF-8?B?IkouIERhdmlkIEliw6HDsWV6Ig==?=) Date: Wed, 07 Jun 2006 16:19:45 +0200 Subject: itools 0.13.5 released Message-ID: <4486E081.1010307@itaapy.com> itools is a Python library, it groups a number of packages into a single meta-package for easier development and deployment: itools.catalog itools.i18n itools.uri itools.cms itools.ical itools.web itools.csv itools.resources itools.workflow itools.datatypes itools.rss itools.xhtml itools.gettext itools.schemas itools.xliff itools.handlers itools.stl itools.xml itools.html itools.tmx Changes: Handlers - Lazy load for binary files and images, by Herv? Cauwelier [#98]. - Fixes for archive handlers (ZIP, TAR), by Herv? Cauwelier [#127]. CSV - Fix serialization, escape double quotes. - Now the method "get_rows" always returns a copy of the rows, by Nicolas Deram. CMS Minor features and important fixes: - Fix database sync. - Fix remove when there are virtual handlers. - Improved "browse image" view, by Herv? Cauwelier [#328]. Minor fixes and other changes: - More robust Enumerate class, by Herv? Cauwelier [#304]. - Use CSS classes instead of ids to define the Epoz style, by Herv? Cauwelier [#317]. - Fix edit user's account, password is optional, by Herv? Cauwelier [#321]. - Fix the title of HTML pages when in a subsite, by Herv? Cauwelier [#322]. - Add "del_property" to the handler's API, by Herv? Cauwelier [#327]. - Complete Enumerate's API with "get_value(name)" method, by Herv? Cauwelier [#329]. Resources --------- Download http://download.ikaaro.org/itools/itools-0.13.5.tar.gz Home http://www.ikaaro.org/itools Mailing list http://mail.ikaaro.org/mailman/listinfo/itools Bug Tracker http://bugs.ikaaro.org -- J. David Ib??ez Itaapy Tel +33 (0)1 42 23 67 45 9 rue Darwin, 75018 Paris Fax +33 (0)1 53 28 27 88 From gary at modernsongs.com Wed Jun 7 20:50:07 2006 From: gary at modernsongs.com (Gary Poster) Date: Wed, 7 Jun 2006 14:50:07 -0400 Subject: Fredericksburg, VA ZPUG June 14: meld3 templating and memcached sessions Message-ID: <77BFD123-E131-4411-AB48-5DE7EB35BD10@modernsongs.com> Please join us Wed., June 14, 7:30-9:00 PM, for another meeting of the Fredericksburg, VA Zope and Python User Group ("ZPUG"). We will have two full presentations, and some good snacks. If you plan to attend, an email 24 hours in advance would be appreciated (but last minute attendees are welcome). - Chris McDonough will talk about meld3, a Python HTML/XML templating system in the spirit of PyMeld and other 'push-based' templating systems. (http://www.plope.com/software/meld3) - Tres Seaver will present "Using memcached in Python and Zope", including a demo of using his 'mcdutils' product to do shared session management in Zope. Gary ---------------------------------------- General ZPUG information When: second Wednesday of every month, 7:30-9:00. Where: Zope Corporation offices. 513 Prince Edward Street; Fredericksburg, VA 22408 (tinyurl for map is http://tinyurl.com/duoab). Parking: Zope Corporation parking lot; entrance on Prince Edward Street. Topics: As desired (and offered) by participants, within the constraints of having to do with Python or Zope. Mailing list: fredericksburg-zpug at zope.org Contact: Gary Poster (gary at zope.com) From fuzzyman at gmail.com Wed Jun 7 22:58:13 2006 From: fuzzyman at gmail.com (Fuzzyman) Date: 7 Jun 2006 13:58:13 -0700 Subject: [ANN] Firedrop 0.2.2 Message-ID: <1149713893.474824.125640@i40g2000cwc.googlegroups.com> `Firedrop 2 0.2.2 `_ is now available. You can download it from : `Firedrop-0.2.2.zip `_ This is an important release with several new features, and contributions from new developers joining the team. What is Firedrop2 ? ============== **Firedrop2** is a free, cross-platform blogging tool written in `Python `_. It keeps your blog source files on your computer, making it a *clientside* tool. This means you control your blog, and can easily move it from one server to another, with no risk of losing data. It also means you can manage your blog *offline*. It is fully open source, and has all the features you expect from a modern blogging program : * {acro;RSS;Really Simple Syndication} feed generation * Categories * Automatic archive generation * A powerful set of plugins, including spellchecker, emailer, and themes * Entries can be made in text, {acro;HTML}, {acro;ReST}, textile, sextile or markdown markup * HTML templating system and macros for all sorts of tricks * Built-in {acro;FTP} capability for uploading your blog to a server * Integrated blog comments support (Through Haloscan_) * Because it's written in Python, it is easy to extend Firedrop or create new plugins for it What's New ? ========== This release has a lot of bugfixes and changes. Hopefully I've remembered the important ones. {sm;:-)} * Fixed a bug with categories and the unicode wxPython * Added the Themes plugin by Stewart Midwinter [#]_ * RSS feeds can be generated for all the categories, by Davy Mitchell * Firedrop now saves user data in the users home (checking sensibly for directories where it has write permissions) * Now includes support for the `Haloscan `_ comments system. * Addition of the Firedrop2 banner by Stewart Midwinter. Plus other code improvements and bug fixes. Their is already work being done on the next release. This will include features like : * Faster build time through entry HTML caching * Blog statistics report generation * Tagging * A Podcast plugin * Extension to the plugin protocol for extra plugin capabilities .. [#] The Themes plugin requires version 0.3.32 of `Wax `_, or more recent. From mmueller at python-academy.de Fri Jun 9 03:06:41 2006 From: mmueller at python-academy.de (Mike =?iso-8859-1?Q?M=FCller?=) Date: Fri, 09 Jun 2006 03:06:41 +0200 Subject: Leipzig Python User Group - Meeting, June 13, 2006, 8:00pm Message-ID: <7.0.1.0.0.20060609030032.01c25970@python-academy.de> ========================= Leipzig Python User Group ========================= Next Meeting Tuesday, June 13, 2006 ----------------------------------- We will meet on June 13 at 8:00 pm at the training center of Python Academy in Leipzig, Germany (http://www.python-academy.com/center/find.html). Stefan Schwarzer will give its presentation for the EuropPython 2006 titled "Speed up your Python code". The talk will be in English. 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 13.06.2006 ------------------------- Wir treffen uns am 13.06.2006 um 20:00 Uhr wieder im im Schulungszentrum der Python Academy in Leipzig (http://www.python-academy.de/Schulungszentrum/anfahrt.html). Stefan Schwarzer wird seinen Vortrag f?r die EuroPython 2006 Anfang Juli in Genf mit dem Titel "Speed up your Python code" vorstellen. Die Vortragsprache wird diesmal Englisch sein. Wir werden aber in deutsch diskutieren und bei Bedarf Wichtiges auf deutsch wiederholen. 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 mmueller at python-academy.de Fri Jun 9 03:09:53 2006 From: mmueller at python-academy.de (Mike =?iso-8859-1?Q?M=FCller?=) Date: Fri, 09 Jun 2006 03:09:53 +0200 Subject: Python-Workshop in Leipzig, Germany, September 8, 2006 Message-ID: <7.0.1.0.0.20060609030942.01c99aa0@python-academy.de> The following announcement is in German. Despite this we would like to post it here, because many German speaking Python users read this group/list. === Workshop "Python im deutschsprachigen Raum" === Am 8. September 2006 findet in Leipzig der Workshop "Python im deutschsprachigen Raum" statt. Der Workshop ist als Erg?nzung zu den internationalen und europ?ischen Python-Zusammenk?nften gedacht. Die Themenpalette der Vortr?ge ist sehr weit gefasst und soll alles einschlie?en, was mit Python im deutschsprachigen Raum zu tun hat. Eine ausf?hrliche Beschreibung der Ziele des Workshops, der Workshop-Themen sowie Details zu Organisation und Anmeldung sind unter http://www.python-academy.de/workshop nachzulesen. Vortr?ge k?nnen bis zum 15. Juli angemeldet werden. Dazu bitte eine Kurzfassung an mmueller at python-academy.de senden. Zu jedem Vortrag kann ein Artikel eingereicht werden, der in einem Proceedings-Band Ende des Jahres erscheinen wird. === Wichtige Termine === 15.07.2005 Vortragsanmeldung mit Kurzfassung 31.07.2006 Einladung und vollst?ndiges Programm 15.08.2006 Letzter Termin f?r Fr?hbucherrabatt 08.09.2006 Workshop 15.09.2006 Letzter Termin f?r die Einreichung der publikationsf?higen Beitr?ge Dezember 2006 Ver?ffentlichung des Tagungsbandes === Bitte weitersagen === Der Workshop soll auch Leute ansprechen, die bisher nicht mit Python arbeiten. Wer mithelfen m?chte den Workshop bekannt zu machen, kann einen Link auf http://www.python-academy.de/workshop setzen. Auch au?erhalb des Internets kann der Workshop durch den Flyer http://www.python-academy.de/download/workshop_call_for_papers.pdf bekannt gemacht werden. Einfach doppelseitig ausdrucken oder kopieren und ein paar Exemplare am Schwarzen Brett von Universit?ten, Firmen, Organisationen usw. aush?ngen. Wir freuen uns auf eine rege Teilnahme, Mike M?ller Stefan Scharzer From mmckerns at its.caltech.edu Sat Jun 10 00:02:44 2006 From: mmckerns at its.caltech.edu (Michael McKerns) Date: Fri, 9 Jun 2006 15:02:44 -0700 (PDT) Subject: pyIDL-0.3 In-Reply-To: References: Message-ID: updated Python bindings for IDL http://www.its.caltech.edu/~mmckerns/software.html # Version 0.3: 06/09/06 improved support for Numeric added _print extended examples --- Mike McKerns California Institute of Technology http://www.its.caltech.edu/~mmckerns From jibalamy at free.fr Sat Jun 10 00:52:57 2006 From: jibalamy at free.fr (Jiba) Date: Sat, 10 Jun 2006 00:52:57 +0200 Subject: [ANN] Cerealizer 0.4 -- a secure Pickle-like module Message-ID: <20060610005257.7ad31867@citadelle.banquise> Cerealizer 0.4 is available: http://download.gna.org/soya/Cerealizer-0.4.tar.bz2 WHAT IS CEREALIZER ? Cerealizer is a secure Pickle-like module for Python. It is very similar to (C)Pickle, and understands load(s), dump(s), __getstate__, __setstate__, __getinitargs__,__getnewargs__,... It can serialize numbers, strings and unicodes, tuples, lists, dicts, sets,..., as well as old- and new-style classes and C-defined types. On the API-side, the only noticeable difference with Pickle is that Cerealizer requires that you register the classes you want to serialize, by calling cerealizer.register(YourClass). The class is then tagged as being "secure". Cerealizer implementation uses a "double flat list" file format that allows high performances and short files. Although written in a hundred lines of Python code, Cerealizer boosted by Psyco can achieve similar performances than CPickle. Cerealizer is now available under the Python license (and was previously GPL'ed). More information on Cerealizer: http://home.gna.org/oomadness/en/cerealizer/index.html A small (and of course limited) benchmark of Pickle-like module: http://home.gna.org/oomadness/en/cerealizer/comparison.html From No.Spam at Spam.none Sat Jun 10 05:05:34 2006 From: No.Spam at Spam.none (I. Myself) Date: Sat, 10 Jun 2006 03:05:34 +0000 (GMT) Subject: ANN: A Meta-Evolver in Python Message-ID: <2Gqig.5742$Mn5.2688@pd7tw3no> The attached HTML file, and diagram, is the documentation for the package, which is open source and a free download. Mitchell Timin -- I'm proud of http://ANNEvolve.sourceforge.net. If you want to write software, or articles, or do testing or research for ANNEvolve, let me know. Humans may know that my email address is: (but remove the 3 digit number) zenguy at shaw666 dot ca -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-announce-list/attachments/20060610/b38004e2/attachment-0001.html -------------- next part -------------- A non-text attachment was scrubbed... Name: hill.PNG Type: image/png Size: 29798 bytes Desc: not available Url : http://mail.python.org/pipermail/python-announce-list/attachments/20060610/b38004e2/attachment-0001.png From greg at cosc.canterbury.ac.nz Sat Jun 10 06:43:16 2006 From: greg at cosc.canterbury.ac.nz (greg) Date: Sat, 10 Jun 2006 16:43:16 +1200 Subject: ANN: PyGUI 1.7.2 Message-ID: <4ev0uhF1g5krnU1@individual.net> PyGUI 1.7.2 is now available: http://www.cosc.canterbury.ac.nz/~greg/python_gui/ This version adds support for multiple mouse buttons, mouse enter and leave events, enhancements to the BlobEdit example application, and a big pile of other enhancements and bug fixes. See the CHANGES.txt file in the distribution or on the website for details. What is PyGUI? -------------- PyGUI is an experimental highly-Pythonic cross-platform GUI API. Implementations are currently available for MacOSX and Gtk. For a full description of the project goals, see the PyGUI web page at the above address. From sreeram at tachyontech.net Sat Jun 10 23:26:38 2006 From: sreeram at tachyontech.net (K.S.Sreeram) Date: Sun, 11 Jun 2006 02:56:38 +0530 Subject: NCrypt 0.6.4 - wrapper for OpenSSL Message-ID: <448B390E.2050503@tachyontech.net> NCrypt 0.6.4 (http://tachyon.in/ncrypt/) NCrypt is a wrapper for OpenSSL built using Pyrex. Although this is the first public release, NCrypt has been under development for the last one year, and is being used in production software. The following OpenSSL features have been wrapped: - hash algorithms (md5, sha1, sha256, etc.) - symmetric ciphers (aes256, aes128, 3des, blowfish etc.) - public key crypto with RSA - diffie hellman key exchange - X.509 certificates - SSL/TLS network protocol Documentation is available as usage examples at http://tachyon.in/ncrypt/usage.html. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 252 bytes Desc: OpenPGP digital signature Url : http://mail.python.org/pipermail/python-announce-list/attachments/20060611/d5b18b03/attachment.pgp From greg at cosc.canterbury.ac.nz Sun Jun 11 01:28:45 2006 From: greg at cosc.canterbury.ac.nz (greg) Date: Sun, 11 Jun 2006 11:28:45 +1200 Subject: ANN: PyGUI 1.7.2-1 Message-ID: <4f12sqF1gfdtpU1@individual.net> I have uploaded a new PyGUI 1.7.2 package to correct a couple of errors in the setup.py file. http://www.cosc.canterbury.ac.nz/~greg/python_gui/ ----------------------------------------------------- What is PyGUI? -------------- PyGUI is an experimental highly-Pythonic cross-platform GUI API. Implementations are currently available for MacOSX and Gtk. For a full description of the project goals, see the PyGUI web page at the above address. -- Greg From connellybarnes at yahoo.com Sun Jun 11 09:44:04 2006 From: connellybarnes at yahoo.com (Connelly Barnes) Date: Sun, 11 Jun 2006 00:44:04 -0700 (PDT) Subject: Automatic Python import mechanism: autoimp initial release Message-ID: <20060611074404.18813.qmail@web54311.mail.yahoo.com> Author: Connelly Barnes License: Public domain. I got sick of writing "import X" in Python. So, I created the module autoimp, which imports all modules automatically: >>> from autoimp import * >>> os.stat('.') >>> Image.open('test.bmp') >>> pylab.plot([1,2],[3,4]) >>> scipy.linalg.eig([[1,2],[3,4]]) >>> ... Thus one no longer needs to write "import X". It would take too long to load every module when one writes "from autoimp import *", so the imported modules are actually proxy objects which lazily load when they are first used. The modules are found by searching sys.path. This module will probably save me a lot of keystrokes; I hope you enjoy it. Blog post, with source code link: http://barnesc.blogspot.com/2006/06/automatic-python-imports-with-autoimp.html Comments, bugs, patches to: connellybarnes at domain yahoo.com. Thanks, Connelly __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com From levub137 at wi.rr.com Sun Jun 11 14:26:04 2006 From: levub137 at wi.rr.com (Raymond L. Buvel) Date: Sun, 11 Jun 2006 07:26:04 -0500 Subject: [ANN] clnum-1.2.1 Class Library For Numbers Python Binding Message-ID: <448C0BDC.2070606@wi.rr.com> The clnum package adds rational numbers and arbitrary precision floating point numbers in real and complex form to Python. Also provides arbitrary precision floating point replacements for the functions in the math and cmath standard library modules. Home page: http://calcrpnpy.sourceforge.net/clnum.html Changes in 1.2.1 Updated the unit test so it works on both 32 and 64 bit platforms. Only the source package was updated since there are no other changes. From NikitaTheSpider at gmail.com Mon Jun 12 03:57:53 2006 From: NikitaTheSpider at gmail.com (Philip Semanchuk) Date: Mon, 12 Jun 2006 01:57:53 GMT Subject: RERP 0.8.0, an alternative robots.txt parser Message-ID: RERP (Robot Exclusion Rules Parser) is an alternative to Python's standard robotparser module. I was motivated to write this because the Python's robotparser doesn't gracefully handle non-ASCII which occurs in about .1% of robots.txt files. This module (RERP) handles non-ASCII and also adds a few other niceties (like the ability to customize the user-agent string sent when fetching a robots.txt file). The code, documentation, background, discussion of the specs and examples are all here: http://NikitaTheSpider.com/articles/rerp.html Enjoy! -- Philip http://NiktaTheSpider.com/ Bulk HTML validation, link checking and more From phil at riverbankcomputing.co.uk Sun Jun 11 17:41:29 2006 From: phil at riverbankcomputing.co.uk (Phil Thompson) Date: Sun, 11 Jun 2006 16:41:29 +0100 Subject: ANN: PyQt v4.0 Released - Python Bindings for Qt v4 Message-ID: <200606111641.29759.phil@riverbankcomputing.co.uk> Riverbank Computing is pleased to announce the release of PyQt v4.0 available from http://www.riverbankcomputing.co.uk/pyqt/. The main change from v4.0beta1 is the inclusion of comprehensive HTML documentation based on the Qt documentation. PyQt is a comprehensive set of Qt bindings for the Python programming language and supports the same platforms as Qt (Windows, Linux and MacOS/X). Like Qt, PyQt is available under the GPL and a commercial license. PyQt v4 supports Qt v4 (http://www.trolltech.com/products/qt/index.html). PyQt v3 is still available to support earlier versions of Qt. PyQt v4 is implemented as a set of 8 extension modules containing approximately 400 classes and 6,000 functions and methods. QtCore The non-GUI infrastructure including event loops, threads, i18n, Unicode, signals and slots, user and application settings. QtGui A rich collection of GUI widgets. QtNetwork A set of classes to support TCP and UDP socket programming and higher level protocols (eg. HTTP). QtOpenGL A set of classes that allows PyOpenGL to render onto Qt widgets. QtSql A set of classes that implement SQL data models and interfaces to industry standard databases. Includes an implementation of SQLite. QtSvg A set of classes to render SVG files onto Qt widgets. QtXML A set of classes that implement DOM and SAX parsers. QtAssistant A set of classes that enables the Qt Assistant online help browser to be integrated with an application. A Windows installer is provided for the GPL version of PyQt to be used with the GPL version of Qt v4 (http://www.trolltech.com/download/qt/windows.html). It enabes a complete PyQt environment to be installed on Windows without the need for a C++ compiler. PyQt includes the pyuic utility which generates Python code to implement user interfaces created with Qt Designer in the same way that the uic utility generates C++ code. It is also able to load Designer XML files dynamically. From No.Spam at Spam.none Sun Jun 11 18:58:30 2006 From: No.Spam at Spam.none (I. Myself) Date: Sun, 11 Jun 2006 16:58:30 +0000 (GMT) Subject: ANN: Metavolv.py finds improved parameter values for YOUR program. Message-ID: Metavolv.py is a computer program that searches for a better set of parameters for some other program, which we call the target program. The target program determines what "better" means, and it writes a merit value to the screen. The parameters appear in a configuration file for the target program. Although metavolv.py is written in Python, the target program can be any executable file that meets two conditions: It must read a configuration file to get values for parameters, and it must eventually write a result to the screen. Metavolv will repeatedly execute the target program, each time re-writing the configuration file with new parameter values. Metavolv.py will use two other Python files, modify.py and editThis.py. The three files together comprise the program. Metavolv is primarily designed for stochastic target programs, and also for those that require significant execution time. For such programs we cannot be sure of finding a global optimum in a reasonable time span; we are primarily interested in improving the set of parameters that we start with. Hence we are primarily attempting to move toward a local optimum. The Metavolv package, with thorough documentation, is a free download from the URL below. Mitchell Timin -- I'm proud of http://ANNEvolve.sourceforge.net. If you want to write software, or articles, or do testing or research for ANNEvolve, let me know. Humans may know that my email address is: (but remove the 3 digit number) zenguy at shaw666 dot ca From python-url at phaseit.net Mon Jun 12 15:55:42 2006 From: python-url at phaseit.net (Cameron Laird) Date: Mon, 12 Jun 2006 13:55:42 +0000 (UTC) Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Jun 12) Message-ID: QOTW: "Check out BeautifulSoup -- you will never write HTMLParser-based screen scrapers again. :)" - Jonathan Ellis "You clearly need something instead of XML." - Paul McGuire http://groups.google.com/group/comp.lang.python/msg/09e943c8dbf1e8c5? Johann C. Rocholl donates a PNG manager in pure Python: http://groups.google.com/group/comp.lang.python/browse_thread/thread/97c035f8b3646fd/ Andrew Clover provides new Python icons: http://doxdesk.com/img/software/py/icons2.png http://mail.python.org/pipermail/python-dev/2006-March/063235.html http://mail.python.org/pipermail/python-dev/2006-April/063517.html Might it be practical to use py2exe to make single-file executables of Tkinter applications? Perhaps when Tkinter reaches 8.5 of Tk: http://groups.google.com/group/comp.lang.python/browse_thread/thread/b6a61337d86c3b4e/ Even more primitive compilation abilities have advanced lately. Paul Moore details construction of Python with the fee-free Microsoft compiler, while Anthony Baxter compiles Python with C++ (!): http://wiki.python.org/moin/Building_Python_with_the_free_MS_C_Toolkit?highlight=%28building%29 http://svn.python.org/projects/python/trunk/PCbuild/readme.txt http://mail.python.org/pipermail/python-dev/2006-April/063719.html http://mail.python.org/pipermail/python-dev/2006-April/063632.html Danny Yee accurately describes David Mertz' Python book: http://dannyreviews.com/h/Text_Python.html Anthony Baxter has created a "Firefox searchbar" which finds Python bugs by their SourceForge IDs. There are also two Firefox sidebar options: http://mail.python.org/pipermail/python-dev/2006-April/063285.html http://www.python.org/~anthony/searchbar/ http://starship.python.net/~skippy/mozilla/ http://projects.edgewall.com/python-sidebar/ A few low-level technical touches have the potential to affect wider audiences: a patch from Georg Brandl effects a ratified improvement to traceback, but one which breaks several exising doctests: http://mail.python.org/pipermail/python-dev/2006-April/063662.html Also, Zachary Pincus and others worked out a dlopen()-based upgrade to dynamic loading under Mac OS X (or Darwin more broadly): http://mail.python.org/pipermail/python-dev/2006-April/063336.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/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!". -- The Python-URL! Team-- Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and sponsor the "Python-URL!" project. From richard at pyweek.org Tue Jun 13 10:18:58 2006 From: richard at pyweek.org (richard at pyweek.org) Date: Tue, 13 Jun 2006 18:18:58 +1000 Subject: Pygame.draw challenge Message-ID: <200606131818.58324.richard@pyweek.org> THE CHALLENGE: Create a game in 64kbytes of source code using only pygame. No additional libraries, no external files (even ones loaded from a network). That means no PyOpenGL, no PNGs, no OGGs. THE DEADLINE: Start as soon as you read this announcement. Human-readable, Linux-compatible entries must be received by richard at pyweek.org before midnight on the 25th of June, 2006. That's Australian Eastern Standard Time, which is UTC +10. Multiple entries are allowed. Teams are allowed. Monkeys are allowed! Ponies, sadly, are not allowed. THE RESULTS: All entries will be posted to a page on the http://www.pyweek.org/ website. Entry gameplay instructions and license must be included in the source or in the game itself. I will probably choose one of the entries as my favourite, and declare this in various obscure fora and private email messages. No other mention of rankings or favourites will be made. THANKS: Thanks to Phil Hassey for the challenge inspiration! -- Visit the PyWeek website: http://www.pyweek.org/ From brian at sweetapp.com Tue Jun 13 18:10:26 2006 From: brian at sweetapp.com (Brian Quinlan) Date: Tue, 13 Jun 2006 18:10:26 +0200 Subject: Vancouver Python Workshop - Talk submission reminder Message-ID: <448EE372.2010901@sweetapp.com> What's New? =========== The deadline for submitting a talk or tutorial for the Vancouver Python Workshop is fast approaching. Talks will be accepted until Friday June 16th. To submit a talk, see: http://www.vanpyz.org/conference/talksubmission.html About the Vancouver Python Workshop =================================== The conference will begin with keynote addresses on August 4st by Guido van Rossum [1], Jim Hugunin [2], and Ian Cav?n [3]. Further talks (and tutorials for beginners) will take place on August 5th and 6th. The Vancouver Python Workshop is a community organized and designed for both the beginner and for the experienced Python programmer with: * tutorials for beginning programmers * advanced lectures for Python experts * case studies of Python in action * after-hours social events * informative keynote speakers * tracks on multimedia, Web development, education and more More information see: http://www.vanpyz.org/conference/ or contact Brian Quinlan at: brian at sweetapp.com Vancouver ========= In addition to the opportunity to learn and socialize with fellow Pythonistas, the Vancouver Python Workshop also gives visitors the opportunity to visit one of the most extraordinary cities in the world [4]. For more information about traveling to Vancouver, see: http://www.vanpyz.org/conference/vancouver.html http://www.tourismvancouver.com http://en.wikipedia.org/wiki/Vancouver Important dates =============== Talk proposals accepted: May 15th to June 15th Early registration (discounted): May 22nd to June 30th Normal registration: from July 1st Keynotes: August 4th Conference and tutorial dates: August 5th and 6th [1] Guido van Rossum (Google) is the inventor of Python and has managed its growth and development for more than a decade. Guido was awarded the Free Software Foundation Award in 2002 and Dr.Dobb's 1999 Excellence in Programming Award. Guido works at Google and spends half of his time on Python. [2] Jim Hugunin (Microsoft) is the creator of numerous innovations that take Python into new application domains. Jim's most recent project, IronPython integrates Python into Microsoft's .NET runtime. Jim's previous project, Jython is Python for the Java runtime and was the second production-quality implementation of Python. Before that, Jim's Numeric Python adapted Python to the needs of number crunching applications. Jim works at Microsoft adapting the .NET runtime to the needs of dynamic languages like Python. [3] Ian Cav?n is the primary developer of the Lowry Digital Images motion picture restoration system. This Python and Zope-based system has been used to restore over 150 motion pictures. Highlights include Citizen Kane, Sunset Boulevard and both the Indiana Jones and Star Wars trilogies. While Ian was Chief Scientist at Lowry Digital, his rack of computers grew from a few Macintoshes on his desktop to over six hundred Macintosh and Linux servers - at one point earning Lowry the title as the second biggest installation of parallel processing Maintoshes in the world. In 2005, Lowry Digital Images was acquired by DTS (the famous movie audio company) and renamed DTS Digital Images. The motion picture restoration system has been discussed in publications as diverse as IEEE Spectrum, USA Today, the BBC NEWS, the New York Times and Apple.com. Ian has been a Python enthusiast since 1999. [4] http://news.bbc.co.uk/2/hi/business/2299119.stm Cheers, Brian From gary at modernsongs.com Tue Jun 13 23:33:14 2006 From: gary at modernsongs.com (Gary Poster) Date: Tue, 13 Jun 2006 17:33:14 -0400 Subject: Fredericksburg, VA ZPUG reminder: Wed., June 14 Message-ID: Hi all. Don't forget tomorrow's ZPUG meeting. If you plan to attend, an email to me tonight or tomorrow morning would be appreciated, but is not necessary. - Chris McDonough will talk about meld3, a Python HTML/XML templating system in the spirit of PyMeld and other 'push-based' templating systems. (http://www.plope.com/software/meld3). - Tres Seaver will present "Using memcached in Python and Zope", including a demo of using his 'mcdutils' product to do shared session management in Zope. - good snacks. Thanks! Gary From lcrees at gmail.com Wed Jun 14 07:08:26 2006 From: lcrees at gmail.com (L. C. Rees) Date: 13 Jun 2006 22:08:26 -0700 Subject: ANN: webstring 0.3 released Message-ID: <1150261706.857913.87890@y41g2000cwy.googlegroups.com> webstring is a template system designed for programmers whose preferred template languages are Python and HTML (and XML for people that swing that way). Highlights of 0.3 include: - an HTMLTemplate class for taking questionable HTML and outputting it as correct XHTML 1.0, XHTML 1.1, or HTML 4.0 - better support for integrating string.Template and Python string formatting so they can be used to format XML/HTML element and attribute content. - better batch templating - support for pickling webstring's Template objects - more tests including doctests - removal of unit tests from the main module - support for elementtree as an XML processing backend - speed enhancements - code changes to increase ease of use - more documentation and examples Changelog is available here: http://psilib.sourceforge.net/CHANGELOG-0.3 The webstring module is available for download at: http://prdownloads.sourceforge.net/psilib/webstring.py?download More information on webstring including documentation and a tutorial can be found at: http://psilib.sourceforge.net/webstring.html From steven.bethard at gmail.com Wed Jun 14 07:47:44 2006 From: steven.bethard at gmail.com (Steven Bethard) Date: Tue, 13 Jun 2006 23:47:44 -0600 Subject: python-dev Summary for 2006-04-16 through 2006-04-30 Message-ID: python-dev Summary for 2006-04-16 through 2006-04-30 ++++++++++++++++++++++++++++++++++++++++++++++++++++ .. contents:: [The HTML version of this Summary is available at http://www.python.org/dev/summary/2006-04-16_2006-04-30] ============= Announcements ============= --------------------------- Python 2.5 alpha 2 released --------------------------- Python 2.5 alpha 2 was released on April 27th. If you haven't tried it out yet, now's the time! `PEP 356`_ has more details and the full schedule. .. _PEP 356: http://www.python.org/dev/peps/pep-0356/ Contributing threads: - `TRUNK FREEZE from 00:00 UTC, 27th April 2006 for 2.5a2 `__ - `RELEASED Python 2.5 (alpha 2) `__ - `trunk is UNFROZEN `__ - `2.5 open issues `__ ---------------------------- QOTF: Quote of the Fortnight ---------------------------- Phillip J. Eby, on the social behavior of package distributors (and why setuptools goes to such efforts to guess what package distributors were really trying to do): The problem isn't fundamentally a technical one, but a social one. You can effect [sic] social change through technology, but not by being some random guy with a nagging 'bot. (And yes, Phillip, you can nominate yourself for QOTF.) ;-) Contributing thread: - `setuptools: past, present, future `__ ========= Summaries ========= ------------------------------- Adding setuptools to the stdlib ------------------------------- Phillip J. Eby started checking in some of the `setuptools`_ modules for Python 2.5. People started to get nervous about some of the modules because: * Setuptools changes the distutils "install" command to install everything as zipfile eggs * Setuptools changes the distutils "sdist" command to automate generation of MANIFEST.in and MANIFEST. * Setuptools adds 'site.py' files so that .pth files are processed in PYTHONPATH directories. * Setuptools monkey-patches three classes from distutils: Distribution, Command, and Extension. While most people recognized the need for the features that setuptools provides, a number of them objected to introducing setuptools as a new package and instead argued for merging setuptools into distutils. Phillip said that such a merge might be possible, but that there were a fair number of backwards compatibility concerns (e.g. its redefinition of the "install" and "sdist" commands) and that it would make it much harder for him to maintain external versions of setuptools compatible with Python 2.3 and 2.4. In the end, Phillip suggested withdrawing setuptools from Python 2.5, and figuring out how to merge setuptools into distutils for the 2.6 release. In particular, he asked for help with the mostly trivial porting of the "alias", "rotate", "saveopts" and "setopt" commands. Additionally, he made available some information about the `setuptools internals`_ for anyone who wanted to see better what was going on behind the scenes. .. _setuptools: http://peak.telecommunity.com/DevCenter/setuptools .. _setuptools internals: http://peak.telecommunity.com/DevCenter/EggFormats Contributing threads: - `[Python-checkins] r45510 - python/trunk/Lib/pkgutil.py python/trunk/Lib/pydoc.py `__ - `Place for setuptools manuals and source for .exe files? `__ - `setuptools in the stdlib ([Python-checkins] r45510 - python/trunk/Lib/pkgutil.py python/trunk/Lib/pydoc.py) `__ - `setuptools in the stdlib ( r45510 - python/trunk/Lib/pkgutil.py python/trunk/Lib/pydoc.py) `__ - `setuptools in the stdlib `__ - `Raising objections (was: setuptools in the stdlib) `__ - `Raising objections `__ - `3rd party extensions hot-fixing the stdlib (setuptools in the stdlib) `__ - `setuptools in 2.5. `__ - `magic in setuptools (Was: setuptools in the stdlib) `__ - `Distutils for Python 2.1 (was "Raising objections") `__ - `setuptools in 2.5. (summary) `__ - `Distutils thoughts `__ - `setuptools: past, present, future `__ - `Easy, uncontroversial setuptools->distutils tasks `__ - `Internal documentation for egg formats now available `__ ----------------------------- PEP 343: The "with" Statement ----------------------------- A.M. Kuchling asked about some terminology in the `PEP 343`_ documentation. Originally, the objects with ``__enter__`` and ``__exit__`` methods which were used in the with-statement were called "context managers". When the additional ``__context__`` method was introduced, the term "manageable context" was given to objects that provided it. At PyCon, the PEP was changed to switch the terms, though the names of ``decimal.Context`` and ``contextlib.contextmanager`` were not changed correspondingly. This all led to a rather confusing discussion where people argued over the terminology, appropriately summarized in this quote by Phillip J. Eby: ...everybody has been perfectly clear, we just haven't really gotten on the same page about which words mean what. People then played around with a variety of alternative terms ("context factory", "context specifier", etc.) but in the end, Guido decided that it was much clearer to just drop the ``__context__`` method entirely -- most use-cases at the time just had ``__context__`` returning self, and the few use-cases that didn't could be accomodated with an appropriately named method or function. And dropping the ``__context__`` method meant that only the term "context manager" was necessary, removing most of the earlier terminological confusion. .. _PEP 343: http://www.python.org/dev/peps/pep-0343/ Contributing threads: - `PEP 343: confusing context terminology `__ - `Why are contexts also managers? (was r45544 - peps/trunk/pep-0343.txt) `__ - `With context, please `__ - `PEP 343 update (with statement context terminology) `__ - `Must objects with __enter__/__exit__ also supply __context__? `__ - `Updated context management documentation `__ - `[Python-checkins] r45721 - python/trunk/Lib/test/test_with.py `__ - `More on contextlib - adding back a contextmanager decorator `__ ------------------------------------------------ Dropping __init__.py requirement for subpackages ------------------------------------------------ After some pressure from other Googlers, Guido suggested that Python drop the requirement that subpackages have an __init__.py file (though top-level packages would still require one). People were concerned that a number of non-subpackage directories would suddenly become packages, e.g. "test" in the Python distribution. There was also some concern about tools that depended on the current requirement -- any tool that currently searches directories for __init__.py files would have to be updated to work with the new semantics. In the end, `Thomas Wouters provided a patch`_ that makes Python now issue a warning when it would have imported a module but failed to because __init__.py was missing. .. _Thomas Wouters provided a patch: http://bugs.python.org/1477281 Contributing threads: - `Dropping __init__.py requirement for subpackages `__ - `[Python-checkins] r45770 - in python/trunk: `__ ------------------------------------- Python and Visual Studio 2005 Express ------------------------------------- Guido noticed that Microsoft had announced that `Visual Studio 2005 express will be free forever`_, and asked if Python should try to accomodate this. People seemed to think that switching to Visual Studio 2005 for Python 2.5 was too soon but that 2.6 might be a reasonable candidate, particularly since Microsoft no longer provides downloads for the Visual Studio 2003 compiler. .. _Visual Studio 2005 express will be free forever: http://msdn.microsoft.com/vstudio/express/ Contributing thread: - `Visual studio 2005 express now free `__ ---------------------------- Adding wsgiref to the stdlib ---------------------------- Guido suggested adding Phillip J. Eby's `reference implementation`_ of `PEP 333`_ (the Web Server Gateway Interface) to the standard library. People were generally in favor, though there was some brief discussion about adding a few extras including Ian Bicking's paste.lint validator and a simple dispatch mechanism. It looked like wsgiref would be added in time for Python 2.5. .. _reference implementation: http://svn.eby-sarna.com/wsgiref/ .. _PEP 333: http://www.python.org/dev/peps/pep-0333/ Contributing threads: - `Adding wsgiref `__ - `Adding wsgiref to stdlib `__ - `[Web-SIG] Adding wsgiref to stdlib `__ -------------------- Buildbots on Windows -------------------- Some of the Windows buildbots were hanging when the buildbot slave terminated the run early, but failed to terminate python_d.exe, thus making it impossible to recompile anything (since python_d.exe cannot be deleted while running on Windows). No one was certain what was causing the problems (though it seemed like it might be some sort of indexing service running in the background) but Martin v. L??wis was able to unstick the machines by creating a kill_python.exe application which looks for python_d.exe and kills it. Contributing thread: - `windows buildbot failures `__ ---------------------------------- Externally maintained packages PEP ---------------------------------- Following up on work from the last fortnight, Brett Cannon put together information on all the packages like sqlite and elementtree that are part of the Python standard library, but have their central repository somewhere else. It looked like a PEP would soon be forthcoming. Contributing threads: - `need info for externally maintained modules PEP `__ - `draft of externally maintained packages PEP `__ - `(hopefully) final draft of externally maintained code PEP `__ ----------------------------- PEP 359: The "make" statement ----------------------------- Discussion continued on `PEP 359`_'s "make" statement continued, looking in particular at ways that breaking the parallel with the class statement might make the "make" statement easier to use. In the end Guido asked me to kill the discussion, so I withdrew the PEP. .. _PEP 359: http://www.python.org/dev/peps/pep-0359/ Contributing threads: - `PEP 359: The "make" Statement `__ - `Updated: PEP 359: The make statement `__ -------------------------------- PEP 3102: Keyword-only arguments -------------------------------- Talin introduced `PEP 3102`_ which proposes support for "keyword-only" arguments, that is, arguments that must be specified with the name=value keyword syntax, not as positional arguments. The proposal came in two parts: * Allowing keyword arguments after varargs, e.g.:: def add_option(*opts, action='store', type='string', ...) * Allowing keyword arguments with no varargs, e.g.:: def compare(a, b, *, key=None): There was widespread support for the first part of the PEP, particularly since such signatures exist in functions like the builtin min and max already (which gained key= arguments in Python 2.5). The latter part people were unsure of, and suggested a variety of other syntaxes, though Guido had already decided on the "*" syntax. Discussion continued on this issue into the next fortnight. .. _PEP 3102: http://www.python.org/dev/peps/pep-3102/ Contributing thread: - `PEP 3102: Keyword-only arguments `__ ------------------------------------ String formatting for size_t objects ------------------------------------ Brett Cannon ran into some problems with the formatting of size_t objects. What was really needed was the C99 "z" printf modifier, but since Python aims for C89 conformance, that can't be used unconditionally. In the end, Brett Cannon modified Python's config to test if the "z" modifier is supported and then used that whenever possible. Contributing threads: - `PY_FORMAT_SIZE_T warnings on OS X `__ - `PY_FORMAT_SIZE_T warnings on OS X `__ --------------------------------- The Grammar file and SyntaxErrors --------------------------------- In working on a parser for a subset of the Python language, Michael Foord ran into some troubles using the Grammar/Grammar file in the Python distribution. In particular, the problem he was having was the entry:: list_for: 'for' exprlist 'in' testlist_safe [list_iter] which indicates that any expression list can be used as the assignment expression in a list comprehension, so that code like the following is valid by the Grammar file:: [1 for 1 in n] Of course Python doesn't allow this, but as Guido explained, the expression that Python really wants is not LL1, so Python fudges it in the parser, and then issues a SyntaxError later by checking that the nodes in the parse tree actually match the restricted type of nodes required. Contributing thread: - `Python Grammar Ambiguity `__ ------------------------- Pybench now in Python SVN ------------------------- Marc-Andre Lemburg offered to contribute pybench to Python in response to a previous thread indicating some of the problems with pystone. It's now checked in under the Tools directory. Contributing thread: - `2.5a1 Performance `__ --------------------------- Adding threading.released() --------------------------- Nick Coghlan asked if the ``released()`` function suggested in `PEP 343`_ should be added for Python 2.5 to support code like:: def thread_safe(): with sync_lock: # This is thread-safe with released(sync_lock): # Perform long-running or blocking operation # that doesn't need to hold the lock # We have the lock back here While it seemed occasionally useful (e.g. in the implementation of threading._Condition), this one looked like it would be put off until folks had had more experience with context managers. Contributing thread: - `Proposed addition to threading module - released `__ ------------------------------ Removing the me_hash for dicts ------------------------------ Kirat Singh asked about removing me_hash from the dict struct to save some space. People generally seemed opposed to trading off speed for space, particularly since it would slow down classes that define their own ``__hash__``. Contributing thread: - `Reducing memory overhead for dictionaries by removing me_hash `__ ------------------------------------ PEP 3101: Advanced String Formatting ------------------------------------ Talin introduced `PEP 3101`_ which proposes a new formatting system through a new ``string.format()`` method. This would allow specifying items through both positional and keyword arguments, as well as allowing user-defined classes to support their own set of format specifiers, e.g.:: "The story of {0}, {1}, and {c}".format(a, b, c=d) "Today is: {0:%x}".format(datetime.now()) There was some brief discussion about how to escape the brace characters, and some opposition to the compound name syntax (which allowed __getitem__-style access using a dotted notation) before the thread trailed off. .. _PEP 3101: http://www.python.org/dev/peps/pep-3101/ Contributing thread: - `PEP 3101: Advanced String Formatting `__ --------------------- Replacing SourceForge --------------------- Brett Cannon asked for some things that people liked and disliked about SourceForge as the Infrastructure committee moved forward on finding a replacement tracker for SF. There weren't too many positive comments, but some of the things SF was missing are: * A way to flag a patch as "reviewed"; "pending" won't work -- it just sets a timeout period and then deletes the message. * A way to tag a tracker item by the relevant documentation section (e.g. language reference, library reference, etc.) * The ability to participate in a bug discussion through email instead of the web interface * The ability to define a filter on tracker items so that you can be emailed when a new tracker item meets your criteria * A way to identify relations between bugs, e.g. this bug closes another bug. * The ability to close a bug with a checkin. A Call for Trackers was to be soon forthcoming. Contributing threads: - `Reviewed patches [was: SoC proposal: "fix some old, old bugs in sourceforge"] `__ - `what do you like about other trackers and what do you hate about SF? `__ - `Reviewed patches `__ ----------------------------------------------- Making decorated functions easier to introspect ----------------------------------------------- Nick Coghlan offered to add a function to the new functools module to make writing introspectable decorators easier. Many decorators that return new functions look something like:: def decorator(func): def new_func(*args, **kwargs): ... return new_func But the newly created function metadata (__name__, __doc__, etc.) is now inconsistent with the original function. Originally, Nick had proposed introducing a decorator function to do this, but he settled instead on a simple helper function, ``functools.update_wrapper``, which can be called by decorator writers to update the appropriate metadata. Contributing thread: - `Adding functools.decorator `__ --------------------------- Tkinter hangs due to Tk bug --------------------------- Thomas Wouters noticed that test_tcl locked up when Tcl and Tk were compiled with --enable-threads and he tried to refleaktest Tkinter. Seems that despite the lack of any note in the Tk documentation, Tk_Init() doesn't like being called twice even when the first call results in an error. Martin v. L??wis reported the bug to the Tk folks and added a workaround for the current behavior. Contributing thread: - `Tkinter lockups. `__ ================ Deferred Threads ================ - `introducing the experimental pyref wiki `__ - `methods on the bytes object `__ ================== Previous Summaries ================== - `[Python-checkins] r45321 - in python/trunk: Lib/test/test_traceback.py Lib/traceback.py Misc/NEWS `__ - `Py_Finalize does not release all memory, not even closely `__ - `Preserving the blamelist `__ - `PyObject_REPR() `__ - `New-style icons, .desktop file `__ - `Win64 AMD64 (aka x64) binaries available64 `__ =============== Skipped Threads =============== - `valgrind reports `__ - `Any reason that any()/all() do not take apredicateargument? `__ - `refleaks & test_tcl & threads `__ - `2.5 post-alpha1 broken on mac-intel machines `__ - `Summer of Code preparation `__ - `[C++-sig] GCC version compatibility `__ - `remote debugging with pdb `__ - `Py_BEGIN_ALLOW_THREADS around readdir()? `__ - `FYI: more clues re: tee+generator leak `__ - `[ python-Patches-790710 ] breakpoint command lists in pdb `__ - `FishEye on Python CVS Repository `__ - `problem installing current cvs - TabError `__ - `fat binaries for OSX `__ - `Returning -1 from function with unsigned long type `__ - `adding Construct to the standard library? `__ - `posix_confstr seems wrong `__ - `pdb segfaults in 2.5 trunk? `__ - `possible fix for recursive __call__ segfault `__ - `How to make _sre.c compile w/ C++? `__ - `Gentoo failures - it's blaming me... `__ - `a flattening operator? `__ - `[Python-checkins] r45505 - python/trunk/Modules/posixmodule.c `__ - `bug with __dict__? `__ - `Python Software Foundation seeks mentors and students for Google Summer of Code `__ - `PEP 355 (object-oriented paths) `__ - `proposal: evaluated string `__ - `SVN question `__ - `Google Summer of Code proposal: Pdb improvments `__ - `Stream codecs and _multibytecodec `__ - `python 2.5alpha and naming schemes `__ - `unrecognized command line option "-Wno-long-double" `__ - `extended bitwise operations `__ - `Weekly Python Patch/Bug Summary `__ - `[pypy-dev] Python Software Foundation seeks mentors and students for Google Summer of Code `__ - `Google Summer of Code proposal: improvement of long int and adding new types/modules. `__ - `bin codec + EOF `__ - `Module names in Python: was Re: python 2.5alpha and naming schemes `__ - `Removing Python 2.4 -m switch helpers from import.c `__ - `patch #1454481 - runtime tunable thread stack size `__ - `[Python-3000-checkins] r45617 - in python/branches/p3yk/Lib/plat-mac/lib-scriptpackages: CodeWarrior/CodeWarrior_suite.py CodeWarrior/__init__.py Explorer/__init__.py Finder/Containers_and_folders.py Finder/Files.py Finder/Finder_Basics.py Finder `__ - `[Python-3000-checkins] r45617 - in python/branches/p3yk/Lib/plat-mac/lib-scriptpackages: CodeWarrior/CodeWarrior_suite.py CodeWarrior/__init__.py Explorer/__init__.py Finder/Containers_and_folders.py Finder/Files.py Finder/Finder_Bas `__ - `Reject or update PEP 243? `__ - `IronPython Performance `__ - `[pypy-dev] Python Software Foundation seeksmentors and students for Google Summer of Code `__ - `New artwork for the osx port `__ - `[Python-checkins] Python Regression Test Failures refleak (1) `__ - `PEP 8 pylintrc? `__ - `Compiling w/ C++ (was: Reducing memory overhead for dictionaries by removing me_hash) `__ - `Builtin exit, good in interpreter, bad in code. `__ - `Buildbot messages and the build svn revision number `__ - `Google Summer of Code proposal: New class for work with binary trees AVL and RB as with the standard dictionary. `__ - `gettext.py bug #1448060 `__ - `SoC proposal: "fix some old, old bugs in sourceforge" `__ - `[Mono-dev] IronPython Performance `__ - `[IronPython] [Mono-dev] IronPython Performance `__ - `interested in Google Summer of Code: what should I do? `__ - `EuroPython 2006: Call for papers `__ - `GNU info version of documentation `__ - `big-memory tests `__ - `suggestion: except in list comprehension `__ - `Accessing DLL objects from other DLLs `__ - `Addressing Outstanding PEPs `__ - `PEP 304 (Was: Addressing Outstanding PEPs) `__ - `inheriting basic types more efficiently `__ - `Google Summer of Code proposal: New class for workwith binary trees AVL and RB as with the standard dictionary. `__ - `binary trees. Review obmalloc.c `__ - `A better and more basic array type `__ - `Type-Def-ing Python `__ - `traceback.py still broken in 2.5a2 `__ - `"mick-windows" buildbot uptime `__ - `rest2latex - was: Re: Raising objections `__ - `Is this a bad idea: picky floats? `__ - `Summer of Code mailing list `__ - `Bug day? `__ - `Float formatting and # `__ - `Crazy idea for str.join `__ - `rich comparisions and old-style classes `__ - `methods on the bytes object (was: Crazy idea for str.join) `__ - `Problem with inspect and PEP 302 `__ - `PyThreadState_SetAsyncExc and native extensions `__ - `__getslice__ usage in sre_parse `__ - `elimination of scope bleeding of iteration variables `__ - `[Python-3000] in-out parameters `__ - `socket module recvmsg/sendmsg `__ ======== Epilogue ======== This is a summary of traffic on the `python-dev mailing list`_ from April 16, 2006 through April 30, 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 3rd written by the python-dev summary sucker, Steve Bethard. (Mmmmm... Summaries...) 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 ------------------------- That this summary is written using reStructuredText_. Any unfamiliar punctuation is probably markup for reST_ (otherwise it is probably regular expression syntax or a typo :); you can safely ignore it. 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. Unfortunately, even though reST is standardized, the wonders of programs that like to reformat text do not allow us to guarantee you will be able to run the text version of this summary through Docutils_ as-is unless it is from the `original text file`_. .. _python-dev: http://www.python.org/dev/ .. _SourceForge: http://sourceforge.net/tracker/?group_id=5470 .. _python-dev mailing list: http://mail.python.org/mailman/listinfo/python-dev .. _c.l.py: .. _comp.lang.python: http://groups.google.com/groups?q=comp.lang.python .. _PEP Markup: http://www.python.org/peps/pep-0012.html .. _Docutils: http://docutils.sf.net/ .. _reST: .. _reStructuredText: http://docutils.sf.net/rst.html .. _PSF: .. _Python Software Foundation: http://python.org/psf/ .. _original text file: http://www.python.org/dev/summary/2006-04-16_2006-04-30.rst .. _archive: http://www.python.org/dev/summary/ .. _RSS feed: http://www.python.org/dev/summary/channews.rdf From steven.bethard at gmail.com Wed Jun 14 07:48:34 2006 From: steven.bethard at gmail.com (Steven Bethard) Date: Tue, 13 Jun 2006 23:48:34 -0600 Subject: python-dev Summary for 2006-05-01 through 2006-05-15 Message-ID: python-dev Summary for 2006-05-01 through 2006-05-15 ++++++++++++++++++++++++++++++++++++++++++++++++++++ .. contents:: [The HTML version of this Summary is available at http://www.python.org/dev/summary/2006-05-01_2006-05-15] ============= Announcements ============= ------------------- Python 2.5 progress ------------------- Python 2.5 is moving steadily towards its first beta release. See `PEP 356`_ for more details and the full schedule. .. _PEP 356: http://www.python.org/dev/peps/pep-0356/ Contributing threads: - `2.5 open issues `__ - `nag, nag -- 2.5 open issues `__ ---------------------------------------------------------- Experimental wiki for editing the Python library reference ---------------------------------------------------------- Fredrik Lundh introduced his `pyref wiki`_ which allows wiki-style editing of the Python Library Reference. In addition to providing useful links, like unique URLs for all keywords, types and special methods, the project aims to make cleaning up and rewriting parts of the Python documentation as easy as editing a wiki. If you'd like to help out, let `Fredrik`_ know your infogami user name and he can add you to the group. .. _pyref wiki: http://pyref.infogami.com/ .. _Fredrik: fredrik at effbot.org Contributing threads: - `introducing the experimental pyref wiki `__ - `introducing the experimental pyref wiki `__ - `more pyref: continue in finally statements `__ - `more pyref: a better term for "string conversion" `__ - `more pyref: comparison precedence `__ - `context guards, context entry values, context managers, context contexts `__ ----------------------------------------------- Assigning a SourceForge group to a tracker item ----------------------------------------------- When opening a new patch on the SourceForge tracker, you should set "Group" to the earliest still-maintained Python version to which it applies. Currently, that means if it's a candidate for backporting, you should set the "Group" to 2.4. Contributing thread: - `Assigning "Group" on SF tracker? `__ ========= Summaries ========= -------------------------------- PEP 3102: Keyword-only arguments -------------------------------- This fortnight continued discussion from the last on Talin's PEP for keyword-only arguments. Mainly the discussion focused on the second half of his proposal which would allow positional arguments and keyword-only arguments at the same time with syntax like:: def compare(a, b, *, key=None): The arguments for it included: * It allows function APIs to be more strict initially to allow API evolution without breaking existing code. * It provides better documentation for functions that currently would have to take a \*\*kwargs. Still, a lot of people felt uncomfortable with the idea that the writer of a function could force the callee to use keyword arguments even if the callee found positional arguments to be simpler. Contributing thread: - `PEP 3102: Keyword-only arguments `__ ---------------------------------- Alternative to PEP 355 path object ---------------------------------- Noam Raphael suggested an alternative to the path object suggested by `PEP 355`_ which makes paths more like tuples than strings. The ensuing discussion considered a variety of options, which would have allowed code something like:: pth = Path("~/foo/bar/baz.tar.gz"): assert pth.basepath == HOMEDIR assert pth.dirparts == ('foo', 'bar') assert pth.nameparts == ('baz', 'tar', 'gz') assert pth.prefix == str(pth.basepath) assert pth.dir == os.sep.join(pth.dirparts + ('',)) assert pth.name == os.extsep.join(pth.nameparts) Most of the ideas were also posted to the wiki under `AlternativePathClass`_ or `AlternativePathDiscussion`_, and a number of people asked for a PEP, but none was available at the time of this summary. .. _PEP 355: http://www.python.org/dev/peps/pep-0355/ .. _AlternativePathClass: http://wiki.python.org/moin/AlternativePathClass .. _AlternativePathDiscussion: http://wiki.python.org/moin/AlternativePathDiscussion Contributing thread: - `Alternative path suggestion `__ ---------------------------- Mechanics for Python sprints ---------------------------- Tim Peters started a discussion about the best way to handle SVN commits during a sprint. After discussing a number of heavier-handed solutions, like trying to grant commit privileges for a single branch, in the end it seemed easiest to just add all the sprinters as committers, warn them to be careful about their commits, and have folks keep an eye on python-checkins. Contributing thread: - `Python sprint mechanics `__ ------------------------- Methods of the bytes type ------------------------- Josiah Carlson asked about which str/unicode methods would still be available in Python 3000's bytes type. Guido asked for the thread to be moved to the `Python-3000 list`_ but then also suggested that "startswith", "endswith", "index", "rindex", "find", "rfind", "split", "rsplit", "join", "count", "replace", and "translate" might all be candidate methods. Josiah brought up some concerns about the bytes type not being hashable, but then Guido stepped in to ask that the debate be put on hold until the Python 3000 branch is more complete and some of these usability issues can be tested out there. .. _Python-3000 list: http://mail.python.org/mailman/listinfo/python-3000 Contributing threads: - `methods on the bytes object `__ - `methods on the bytes object `__ - `methods on the bytes object (was: Crazy idea for str.join) `__ ------------------------------------ PEP 3101: Advanced String Formatting ------------------------------------ Talin presented an updated `PEP 3101`_, and Edward Loper brought up an issue with the current escaping strategy -- code like ``'Foo\\%s' % x`` could not be written with the new string formatting since ``'Foo\\{0}'.format(x)`` would read the first brace as being escaped. .. _PEP 3101: http://www.python.org/dev/peps/pep-3101/ Contributing threads: - `PEP 3101: Advanced String Formatting `__ - `PEP 3101 Update `__ -------------------------------------------- Additional support for Py_ssize_t formatting -------------------------------------------- Georg Brandl asked about formatting unsigned Py_ssize_t values with PyString_FromFormat. To support this, Tim Peters added %u, %lu, and %zu to PyString_FromFormat, PyErr_Format, and PyString_FromFormatV. Contributing thread: - `Py_ssize_t formatting `__ --------------------------------------------- Supporting long options: --help and --version --------------------------------------------- Heiko Wundram provided a `patch to support long options`_ for the Python interpreter in order to support --version and --help on Unix and -?, /?, /version and /help on Windows. No one seemed opposed to the idea, but at the time of this summary, the patch was still open. .. _patch to support long options: http://bugs.python.org/1481112 Contributing thread: - `Python long command line options `__ ---------------------- Error codes on Windows ---------------------- Martin v. L??wis and Marc-Andre Lemburg discussed how to include both DOS and WIN32 error codes on WindowsError objects. As part of the solution, they discussed making the Win32 error code for a specific exception available as a .winerror attribute and making all the Windows error codes available through a winerror module. Contributing thread: - `[Python-checkins] r45925 - in python/trunk: Lib/tempfile.py Lib/test/test_os.py Misc/NEWS Modules/posixmodule.c `__ ------------------------------- Signature objects for functions ------------------------------- Brett Cannon asked for some discussion of signature objects that would accompany functions and describe what kind of arguments they take. In particular, he wanted to know: * should signature objects be automatically generated, or only created at the request of a user? * should there be a function somewhere that can determine if a particular set of arguments are valid for a function? Some people wanted signature objects to always be available, but with the current C API, that isn't possible because functions declared in C can't be guaranteed to have the information necessary for determining a signature. Others suggested that since the signature object was only useful for introspection, it should only be available through, say, ``inspect.getsignature()``. No PEP was available at the time of this summary. Contributing thread: - `signature object issues (to discuss while I am out of contact) `__ ------------------------- Set complement operations ------------------------- Terry Jones asked about adding efficient set complement operations to Python's builtin sets so that, say, the complement of a 999,999 element set in a 1,000,000 element universe would take up the space of 1 element, not 999,999. Most folks thought it would be better to implement this as a standalone module first before there were any considerations about adding it to the stdlib. Contributing thread: - `Efficient set complement and operation on large/infinite sets. `__ ------------------------------------------------------------------ Getting the weakref objects out of weakref.Weak*Dictionary objects ------------------------------------------------------------------ Fred L. Drake, Jr. presented a `patch to let users get the weakref objects out`_ of weakref.Weak*Dictionary objects. There was a brief discussion about trying to allow iteration over such dictionaries, but it looked like the patch was pretty reasonable and would soon be applied. .. _patch to let users get the weakref objects out: http://bugs.python.org/1479988 Contributing thread: - `New methods for weakref.Weak*Dictionary types `__ ----------------------------- Python support for Windows CE ----------------------------- Luke Dunstan offered to maintain the port of Python to Windows CE. He got some clarifications about a number of issues, in particular that, although #ifdefs are occasionally removed to ease Python's maintenance, if they are accompanied by a record of what system and version needs them, they will not be dropped while there is an appropriate maintainer. Contributing thread: - `Python for Windows CE `__ --------------------------------- Universal binaries for Python 2.4 --------------------------------- Ronald Oussoren asked about backporting to Python 2.4 the universal binary patches he applied to 2.5, mainly in order to avoid Apple picking up a recent copy of Python and shipping with a broken universal build like it did for python 2.3. While 2.4.4 isn't planned until after 2.5.0 (so if Apple picks up the newest version, they won't get the 2.4 line anyway), people seemed happy with the plan, and so there should be universal binary support in both Python 2.4.4 and 2.5.0. Contributing thread: - `python 2.4 and universal binaries `__ ================ Deferred Threads ================ - `pthreads, fork, import, and execvp `__ ================== Previous Summaries ================== - `Adding functools.decorator `__ - `More on contextlib - adding back a contextmanager decorator `__ - `Tkinter lockups. `__ - `Visual studio 2005 express now free `__ =============== Skipped Threads =============== - `unittest argv `__ - `speeding up function calls `__ - `elimination of scope bleeding of iteration variables `__ - `global variable modification in functions [Re: elimination of scope bleeding of iteration variables] `__ - `python syntax additions to support indentation insensitivity/generated code `__ - `socket module recvmsg/sendmsg `__ - `__getslice__ usage in sre_parse `__ - `More Path comments (PEP 355) `__ - `Path.ancestor() `__ - `[Python-checkins] r45850 - in python/trunk: Doc/lib/libfuncs.tex Lib/test/test_subprocess.py Misc/NEWS Objects/fileobject.c Python/bltinmodule.c `__ - `Reminder: call for proposals "Python Language and Libraries Track" for Europython 2006 `__ - `Date for DC-area Python sprint? `__ - `test failures in test_ctypes (HEAD) `__ - `Positional-only Arguments `__ - `Any reason that any()/all() do not take a predicate argument? `__ - `mail to talin is bouncing `__ - `Seeking students for the Summer of Code `__ - `binary trees. Review obmalloc.c `__ - `Shared libs on Linux (Was: test failures in test_ctypes (HEAD)) `__ - `lambda in Python `__ - `Time since the epoch `__ - `[Python-checkins] r45898 - in python/trunk: Lib/test/test_os.py Lib/test/test_shutil.py Misc/NEWS Modules/posixmodule.c `__ - `Confirmed: DC-area sprint on Sat. June 3rd `__ - `A critic of Guido's blog on Python's lambda `__ - `Weekly Python Patch/Bug Summary `__ - `binary trees. `__ - `Yet another type system -- request for comments on a SoC proposal `__ - `possible use of __decorates__ in functools.decorator `__ - `total ordering. `__ - `rest2latex - pydoc writer - tables `__ - `[Python-checkins] Python Regression Test Failures basics (1) `__ - `PyThreadState_SetAsyncExc, PyErr_Clear and native extensions `__ - `[Python-3000] Questions on optional type annotations `__ - `Status: sqlite3 module docs `__ - `cleaned windows icons `__ - `correction of a bug `__ - `Building with VS 2003 .NET `__ - `[Python-checkins] r46005 - in python/trunk: Lib/tarfile.py Lib/test/test_tarfile.py Misc/NEWS `__ ======== Epilogue ======== This is a summary of traffic on the `python-dev mailing list`_ from May 01, 2006 through May 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 4th written by the python-dev summary drone, Steve Bethard. (Look ma! No hundred-message threads!) 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 ------------------------- That this summary is written using reStructuredText_. Any unfamiliar punctuation is probably markup for reST_ (otherwise it is probably regular expression syntax or a typo :); you can safely ignore it. 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. Unfortunately, even though reST is standardized, the wonders of programs that like to reformat text do not allow us to guarantee you will be able to run the text version of this summary through Docutils_ as-is unless it is from the `original text file`_. .. _python-dev: http://www.python.org/dev/ .. _SourceForge: http://sourceforge.net/tracker/?group_id=5470 .. _python-dev mailing list: http://mail.python.org/mailman/listinfo/python-dev .. _c.l.py: .. _comp.lang.python: http://groups.google.com/groups?q=comp.lang.python .. _PEP Markup: http://www.python.org/peps/pep-0012.html .. _Docutils: http://docutils.sf.net/ .. _reST: .. _reStructuredText: http://docutils.sf.net/rst.html .. _PSF: .. _Python Software Foundation: http://python.org/psf/ .. _original text file: http://www.python.org/dev/summary/2006-05-01_2006-05-15.rst .. _archive: http://www.python.org/dev/summary/ .. _RSS feed: http://www.python.org/dev/summary/channews.rdf From jibalamy at free.fr Thu Jun 15 00:07:34 2006 From: jibalamy at free.fr (Jiba) Date: Thu, 15 Jun 2006 00:07:34 +0200 Subject: [ANN] Soya 3D 0.11.2 Message-ID: <20060615000734.642e8be7@citadelle.banquise> WHAT IS SOYA 3D ? Soya 3D is an object oriented "high level" 3D engine for Python. Somehow, Soya is to 3D what Python is to programming. Soya allows to develop very rapidly games of other 3D apps, entirely in the Python language (contrary to most of the other engine, in which Python is limited to scripting tasks). Moreover, Soya is easy to learn and offers pretty good performances. Soya offers the features one can expect from a 3D engine, like basic scene management, cell-shading, shadows, particles systems,... as well as some unique features aiming at making 3D development easier and more rapid : * Soya takes care of coordinate system conversion automatically * Soya imports Blender models automatically * Soya automatically regulate the rendering speed by modifying the animation quality * Soya is able to determine automatically which objects are static, and to optimize their rendering (work in progress) * Soya's object, including the ones you may create using inheritance, can be saved without writing additional code, using serialization (Pickle or Cerealizer) Soya 3D has been successfully used in the games Slune, Balazar and Balazar Brothers, as well as in scientific simulations, teaching,... WHAT'S NEW ? The 0.11.x release adds support for Cerealizer (a secure Pickle-like module, useful e.g. for network games), a listbox component for the widget system, and adds handy aliases to rotation methods. Finally, there are several bugfixes on shadows, cellshading and raypicking on animated models. Get Soya here: http://soyaproject.org (BTW, http://soya3d.org has NEVER be the Soya 3D "official" page; it is owned by a guy that forked Soya, and now uses it to discredits the project. Please don't use this URL) Jiba From jibalamy at free.fr Thu Jun 15 00:15:01 2006 From: jibalamy at free.fr (Jiba) Date: Thu, 15 Jun 2006 00:15:01 +0200 Subject: [ANN] Balazar Brothers 0.3.1, a 3D game in Python! Message-ID: <20060615001501.3bf70743@citadelle.banquise> WHAT IS BALAZAR BROTHERS ? Balazar Brothers is a 3D Puzzle game, written entirely in Python using the Soya 3D engine. The game proposes impressive 3D graphics as well as interesting challenge. A 3D platform universe, two characters and two keys, one for each character. Just press a key and the corresponding character will jump on the next platform in front of him. But many traps and moving platforms will get you crazy! See screenshots => http://home.gna.org/oomadness/en/balazar_brother/screenshot.html WHAT'S NEW ? This release adds: * a new world, the Pompon forest, with a new music and 9 funny levels :-) * different animations for each of the two Balazar brothers, and a special animation for the brother surf * an improved cellshading rendering * the new Cerealizer file format Get Balazar Brothers here: http://home.gna.org/oomadness/en/balazar_brother/index.html Jiba From kgmuller at xs4all.nl Thu Jun 15 11:44:10 2006 From: kgmuller at xs4all.nl (Klaus Muller) Date: Thu, 15 Jun 2006 11:44:10 +0200 Subject: ANN: Release of SimPy 1.7.1 Message-ID: <200606150944.k5F9iDw4022526@smtp-vbr3.xs4all.nl> It is our pleasure to announce the release of SimPy 1.7.1. It can be downloaded via the SimPy homepage, http://simpy.sourceforge.net. What is new? =========== SimPy 1.7.1 is a minor (maintenance) release. The API has not been changed from that of SimPy 1.7. Changes ------- - Repaired a bug in the _get methods of Store and Level which could lead to synchronization problems (blocking of producer processes, despite space being available in the buffer). - Repaired Level __init__ method to allow initialBuffered to be of either float or int type. Additions --------- - Added type test for Level get parameter 'nrToGet' to limit it to positive int or float. - To improve pretty-printed output of 'Level' objects, changed attribute '_nrBuffered' to 'nrBuffered' (synonym for 'amount' property) - To improve pretty-printed output of 'Store' objects, added attribute 'buffered' (which refers to '_theBuffer') What is SimPy? ============== SimPy (= Simulation in Python) is an object-oriented, process-based discrete-event simulation language completely implemented in Python. It is released under the GNU Lesser GPL (LGPL). SimPy provides the modeler with components of a simulation model including processes, for active components like customers, messages, and vehicles, and resources, for passive components that form limited capacity congestion points like servers, checkout counters, and tunnels. It also provides monitor variables to aid in gathering statistics. Random variates are provided by the standard Python random module. Many users claim that SimPy is one of the cleanest, easiest to use discrete event simulation packages! SimPy is in use at many universities, Research institutes and in industry. SimPy comes with data collection capabilities, GUI and plotting packages. It can be easily interfaced to other packages, such as plotting, statistics, GUI, spreadsheets, and data bases. The distribution contains extensive documentation (manuals, cheatsheet, tutorials, HTML-based source code documentation) and a wide variety of simulation models in SimPy. Download, enjoy, and don't forget to give us feedback! Klaus M?ller Tony Vignaux -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/x-pkcs7-signature Size: 3936 bytes Desc: not available Url : http://mail.python.org/pipermail/python-announce-list/attachments/20060615/b2e2fe48/attachment.bin From mark.dufour at gmail.com Thu Jun 15 16:40:56 2006 From: mark.dufour at gmail.com (Mark Dufour) Date: Thu, 15 Jun 2006 16:40:56 +0200 Subject: Shed Skin Optimizing Python-to-C++ Compiler 0.0.10 Message-ID: <8180ef690606150740p4842ad99uab1199aab8fa0fe0@mail.gmail.com> Hi all, I have just released version 0.0.10 of Shed Skin, an optimizing Python-to-C++ compiler. It allows for translation of pure (unmodified), implicitly statically typed Python programs into optimized C++, and hence, highly optimized machine language. Many non-trivial benchmarks (ray tracer, chess player, othello player, sat solver, 3 sudoku solvers..) run typically 2-40 times faster than when using Psyco, 12 times on average, and 2-220 times than when using CPython, 45 times on average. Besides many bug fixes, this release adds many error messages for unsupported features, so it should be much easier to try out the compiler and work around problems. Please download this new release from http://mark.dufour.googlepages.com and let me know about any problems/successes. Thanks, Mark Dufour. -- if vars: self.output('; '.join([self.type(var)+' '+name for (name,var) in vars.items()])+';') From brian at sweetapp.com Thu Jun 15 18:06:42 2006 From: brian at sweetapp.com (Brian Quinlan) Date: Thu, 15 Jun 2006 18:06:42 +0200 Subject: Vancouver Python Workshop - Talk submission deadline Message-ID: <44918592.6080609@sweetapp.com> What's New? =========== This is your last change to submit a talk for the Vancouver Python Workshop. Talks will be accepted until Friday June 16th. This is a great opportunity for you to share your project or interests with the Python community, so please take advantage of it! To submit a talk, see: http://www.vanpyz.org/conference/talksubmission.html About the Vancouver Python Workshop =================================== The conference will begin with keynote addresses on August 4st by Guido van Rossum [1], Jim Hugunin [2], and Ian Cav?n [3]. Further talks (and tutorials for beginners) will take place on August 5th and 6th. The Vancouver Python Workshop is a community organized and designed for both the beginner and for the experienced Python programmer with: * tutorials for beginning programmers * advanced lectures for Python experts * case studies of Python in action * after-hours social events * informative keynote speakers * tracks on multimedia, Web development, education and more More information see: http://www.vanpyz.org/conference/ or contact Brian Quinlan at: brian at sweetapp.com Vancouver ========= In addition to the opportunity to learn and socialize with fellow Pythonistas, the Vancouver Python Workshop also gives visitors the opportunity to visit one of the most extraordinary cities in the world [4]. For more information about traveling to Vancouver, see: http://www.vanpyz.org/conference/vancouver.html http://www.tourismvancouver.com http://en.wikipedia.org/wiki/Vancouver Important dates =============== Talk proposals accepted: May 15th to June 15th Early registration (discounted): May 22nd to June 30th Normal registration: from July 1st Keynotes: August 4th Conference and tutorial dates: August 5th and 6th [1] Guido van Rossum (Google) is the inventor of Python and has managed its growth and development for more than a decade. Guido was awarded the Free Software Foundation Award in 2002 and Dr.Dobb's 1999 Excellence in Programming Award. Guido works at Google and spends half of his time on Python. [2] Jim Hugunin (Microsoft) is the creator of numerous innovations that take Python into new application domains. Jim's most recent project, IronPython integrates Python into Microsoft's .NET runtime. Jim's previous project, Jython is Python for the Java runtime and was the second production-quality implementation of Python. Before that, Jim's Numeric Python adapted Python to the needs of number crunching applications. Jim works at Microsoft adapting the .NET runtime to the needs of dynamic languages like Python. [3] Ian Cav?n is the primary developer of the Lowry Digital Images motion picture restoration system. This Python and Zope-based system has been used to restore over 150 motion pictures. Highlights include Citizen Kane, Sunset Boulevard and both the Indiana Jones and Star Wars trilogies. While Ian was Chief Scientist at Lowry Digital, his rack of computers grew from a few Macintoshes on his desktop to over six hundred Macintosh and Linux servers - at one point earning Lowry the title as the second biggest installation of parallel processing Maintoshes in the world. In 2005, Lowry Digital Images was acquired by DTS (the famous movie audio company) and renamed DTS Digital Images. The motion picture restoration system has been discussed in publications as diverse as IEEE Spectrum, USA Today, the BBC NEWS, the New York Times and Apple.com. Ian has been a Python enthusiast since 1999. [4] http://news.bbc.co.uk/2/hi/business/2299119.stm Cheers, Brian From edahl at zenoss.org Fri Jun 16 01:10:21 2006 From: edahl at zenoss.org (Erik A. Dahl) Date: Thu, 15 Jun 2006 19:10:21 -0400 Subject: ANNOUNCE: Zenoss-0.20.1 Message-ID: Version 0.20.1 of Zenoss is available for download. This version fixes several issues, upgrades to Twisted-2.4 and adds finer grained monitoring control on device components such as: IpInterfaces, FileSystems, and HardDisks. Project Home: http://www.zenoss.org/ To download: http://www.zenoss.org/download/ Release Notes: http://dev.zenoss.org/trac/wiki/zenoss-0.20/ ----------- Project Blurb: Zenoss is a GPL licensed enterprise grade monitoring system that provides Inventory/Configuration, Event, Performance and Availability management in a single integrated package. It is written in Python using the Zope web application framework and Twisted network programming environment. Zenoss is designed to be easy to use for a beginner yet flexible and powerful enough for the advanced user. Enjoy, -EAD Erik Dahl From bobzomer at gmail.com Fri Jun 16 17:37:32 2006 From: bobzomer at gmail.com (Bruno Obsomer) Date: Fri, 16 Jun 2006 17:37:32 +0200 Subject: PythonPerl 0.9 Message-ID: You love Python, but think Perl can be useful anyway. You can now mix the two in a single program with the new Python module: PythonPerl (version 0.9, GPL license) It is as simple to use as: >>> import perl >>> perl.addVariable('a', ['foo', 'bar']) >>> perl.execute('$b = $a[0]') >>> perl.getVariable('b') foo Questions and comments at bobzomer AT gmail.com.

PythonPerl 0.9 - simple module to allow the use of Perl inside Python. (16-Jun-06) From jeremy+complangpythonannounce at jeremysanders.net Sun Jun 18 13:43:52 2006 From: jeremy+complangpythonannounce at jeremysanders.net (Jeremy Sanders) Date: Sun, 18 Jun 2006 12:43:52 +0100 Subject: [ANN] Veusz 0.10 - a scientific plotting pacakge Message-ID: Veusz 0.10 is now available. Veusz is a scientific plotting package written in Python using PyQt designed to produce publication-ready postscript graphs. It allows plots to be easily constructed, and provides a simple graphical user interface, command line interface, and can be embedded within other Python programs or called externally. It also allows data to be imported using numerous formats and edited. It can make a variety of different graphs including XY, histograms, images and contour plots. Changes in this version include several user interface enhancements, and CSV files can be imported, plus lots more. Download the latest version from http://download.gna.org/veusz/ or see the homepage http://home.gna.org/veusz/ for more details. Jeremy -- Jeremy Sanders http://www.jeremysanders.net/ From sandeep.gohad at gmail.com Mon Jun 19 17:10:43 2006 From: sandeep.gohad at gmail.com (Sandy) Date: 19 Jun 2006 08:10:43 -0700 Subject: The First Pune Python meet is scheduled on 24th June. Message-ID: <1150729843.664881.145130@c74g2000cwc.googlegroups.com> The First Pune Python meet organized by PythonThreads.com is scheduled on 24th June. The main purpose of the meet is to introduce Python to the developers and encourage them to use it in their daily tasks also to raise the acceptance level of the non-Python developers by introducing them to the Python world. Python is used everywhere in almost all the sectors, however its not yet popular in this part of the world (India) . Considering the growing importance of scripting languages like Python, awareness of Python is today a "must" for even non-Python developers. There are very few groups in India (like Bangpypers) who are working with great efficiency and contributing in the growth of Python. We are planning to conduct the Python meets on every last Saturday of each month, it will help in spreading the Python language in Pune and across the country. We are targeting the Pune based software developers, freshers in the IT sector for this meet. In this meet we will introduce Python, its strengths, scope, in which sectors it can be implemented also an open discussion on Python. IndicThreads.com Java meets are held on the last Saturday of each month. The Python meets are also expected to follow the same schedule. Sandeep Gohad will speak on the basics of the Python language, sectors in which Python is being used and about using and promoting Python. His session will be followed by an open discussion on Python. Date and Time: Saturday, 24th June 2006 4.30 pm - 6.00 pm: Java Server Faces session - By Swarraj Kulkarni 6.00 pm - 7.00 pm: PythonThreads.com Pune Python Meet - Introduction To Python - By Sandeep Gohad. Venue: Symbiosis Institute of Computer Studies and Research (SICSR), 7th floor, Atur Center, Model Colony, Pune (Event supported by SICSR) * Entry is free of cost. Entry on first come first served basis. *Please share the meet details or this file on your college / company mailing lists or notice boards so that others could also benefit.* From strawman at astraw.com Mon Jun 19 18:17:05 2006 From: strawman at astraw.com (Andrew Straw) Date: Mon, 19 Jun 2006 16:17:05 GMT Subject: stdeb - Python to Debian source package conversion utility Message-ID: <56Alg.3365$MF6.2329@tornado.socal.rr.com> I would like to announce the initial public release of stdeb, which may be found at http://stdeb.python-hosting.com/ . The rest of this post is copied directly from that web-page. stdeb - Python to Debian source package conversion utility ========================================================== stdeb_ ("setuptools debian") produces Debian source packages from Python packages via a new distutils command, ``sdist_dsc``, which produces a Debian source package of a Python package. Automatic defaults are provided for the Debian package, but many aspects of the resulting package can be customized via a configuration file. .. _stdeb: http://stdeb.python-hosting.com/ News ---- 2006-06-19: Version 0.1 Released. See the `download page`_. Invocation ---------- All methods eventually result in a call to the ``sdist_dsc`` distutils command. You may prefer to do so directly:: python -c "import stdeb; execfile('setup.py')" sdist_dsc Alternatively, two scripts are provided:: stdeb_run_setup [options] # calls "python setup.py sdist_dsc [options]" py2dsc [options] mypackage-0.1.tar.gz # uses pre-built Python source package In all cases, a Debian source package is produced from unmodified Python packages. The following files are produced: * ``packagename_versionname.orig.tar.gz`` * ``packagename_versionname-debianversion.dsc`` * ``packagename_versionname-debianversion.diff.gz`` These can then be compiled into binary packages using the standard Debian machinery (e.g. dpkg-buildpackage). Download -------- Files are available at the `download page`_. .. _download page: http://stdeb.python-hosting.com/wiki/Download The subversion repository is available at https://svn.stdeb.python-hosting.com/trunk Background ---------- For the average Python package, its source distribution (python_package.tar.gz created with ``python setup.py sdist``) contains nearly everything necessary to make a Debian source package. This near-equivalence encouraged me to write this little distutils extension, which executes the setup.py file to extract relevant information. This process is made significantly easier through the use of setuptools_. .. _setuptools: http://peak.telecommunity.com/DevCenter/setuptools setuptools is used because of the opportunities it provides, although many of these features are currently un(der)-utilized. For example, setuptools could make the job of "Debianizing" python console and gui scripts much easier. I wrote this initially to Debianize several Python packages of my own, but I have the feeling it could be generally useful. It appears similar, at least in theory, to easydeb_ and `Logilab's Devtools`_. .. _easydeb: http://easy-deb.sourceforge.net/ .. _Logilab's DevTools: http://www.logilab.org/projects/devtools Prerequisites ------------- * Python_ 2.3 or greater * setuptools_ * subprocess.py_ (included with Python 2.4, backwards compatible with Python 2.3) .. _Python: http://www.python.org/ .. _subprocess.py: http://svn.python.org/view/python/trunk/Lib/subprocess.py?rev=46651&view=log Customizing the produced Debian source package ---------------------------------------------- stdeb will attempt to provide reasonable defaults, but these are only guesses. To customize the Debian source package produced, you may write config files of the format understood by ConfigParser_. When building each package, stdeb looks for the existance of a ``stdeb.cfg`` file in the ``.egg-info`` directory. You may specify an additional config file with the command-line option --extra-cfg-file. .. _ConfigParser: http://docs.python.org/lib/module-ConfigParser.html Here's an example .cfg file which builds several packages:: [DEFAULT] Debian-Version: 0ads1 [setuptools] Source: python-setuptools [numpy] Source: python-numpy Upstream-Version-Prefix: 0.9.8+ Build-Depends: python-dev, refblas3-dev, lapack3-dev Build-Conflicts: atlas3-base, atlas3-base-dev [matplotlib] # matplotlib doesn't incorporate its SVN version number into sdist-built tarballs. # Therefore, if building the SVN version, substitute the version into the # "Upstream-Version-Suffix" variable and use py2dsc. # (For some reason, "debuild -sa" won't build matplotlib because tk.h isn't found.) Source: python-matplotlib Upstream-Version-Suffix: .dev2500 Build-Depends: python-dev, python-numpy, python-numarray, python-numeric, python-gtk2-dev, tk8.4-dev, libwxgtk2.4-dev Depends: python-gtk2, python-numpy, python-numeric, python-numarray Suggests: gs-gpl [scipy] Source: python-scipy Upstream-Version-Prefix: 0.4.9+ Build-Depends: python-numpy Depends: python-numpy .. _numpy: http://scipy.org/NumPy Using stdeb on stdeb -------------------- There is a chicken-and-egg problem when trying to make a Debian package of stdeb with stdeb. Here's a recipe to avoid it:: # in the stdeb distribution directory (with setup.py) python setup.py sdist python setup.py build PYTHONPATH="build/lib" python stdeb/py2dsc.py dist/stdeb-VERSION.tar.gz TODO ---- * Make output meet `Debian Python Policy`_ specifications or the `new python policy`_. This will include several things, including: - the ability to make custom changelogs - the ability to patch upstream source - the ability to include project-supplied documentation (including license information) as a -doc package - the ability to include project-supplied examples, tests, and data as a separate package - much more not listed * Support python-central_ and/or python-support. * Create (better) documentation * Log output using standard distutils mechanisms * Allow distribution-specific configuration parameters (e.g. numpy-dapper) .. _debian python policy: http://www.debian.org/doc/packaging-manuals/python-policy/ .. _new python policy: http://wiki.debian.org/DebianPython/NewPolicy .. _python-central: http://python-modules.alioth.debian.org/python-central_howto.txt Call for volunteers ------------------- I don't have a lot of time for this. This project stands a very real chance of being only a shadow of its potential self unless people step up and contribute. There are numerous ways in which people could help. In particular, I'd be interested in finding a co-maintainer or maintainer if the project generates any interest. Secondarily, I would appreciate advice from Debian developers or Ubuntu MOTUs about the arcane details of Python packaging. License ------- MIT-style license. Copyright (c) 2006 stdeb authors. See the LICENSE.txt file provided with the source distribution for full details. Authors ------- Andrew Straw, California Institute of Technology From fabiofz at gmail.com Mon Jun 19 18:50:18 2006 From: fabiofz at gmail.com (Fabio Zadrozny) Date: Mon, 19 Jun 2006 13:50:18 -0300 Subject: Pydev 1.2.0 Released Message-ID: Hi All, Pydev and Pydev Extensions 1.2.0 have been released Details on Pydev Extensions: http://www.fabioz.com/pydev Details on Pydev: http://pydev.sf.net Details on its development: http://pydev.blogspot.com Release Highlights in Pydev Extensions: ----------------------------------------------------------------- - This is the first version supporting Eclipse 3.2. - Interactive console: content is now changed so that blocks are closed with the interactive interpreter 'rules' (so that you don't have invalid syntax errors when passing code-blocks to the interactive console). - An action was added to the menu so that you can use the Open Declaration Quick-outline without needing focus on the pydev editor. Release Highlights in Pydev: ---------------------------------------------- - Eclipse 3.2 supported (and 3.1 support is now discontinued) - Lot's of optimizations to make pydev faster - Ctrl+Click now works with the find definition engine - Comments that start with #--- are shown in the outline - Attributes are shown in the outline - Parse errors are now shown (again) in the editor - Many other bugs fixed What is PyDev? --------------------------- PyDev is a plugin that enables users to use Eclipse for Python and Jython development -- making Eclipse a first class Python IDE -- It comes with many goodies such as code completion, syntax highlighting, syntax analysis, refactor, debug and many others. Cheers, -- Fabio Zadrozny ------------------------------------------------------ Software Developer ESSS - Engineering Simulation and Scientific Software http://www.esss.com.br Pydev Extensions http://www.fabioz.com/pydev Pydev - Python Development Enviroment for Eclipse http://pydev.sf.net http://pydev.blogspot.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-announce-list/attachments/20060619/1e74e9a9/attachment.html From xi at gamma.dn.ua Mon Jun 19 20:17:30 2006 From: xi at gamma.dn.ua (Kirill Simonov) Date: Mon, 19 Jun 2006 21:17:30 +0300 Subject: [ANN] PyYAML-3.03: YAML parser and emitter for Python Message-ID: <20060619181730.GA12310@58sirius016.dc.ukrtel.net> ======================== Announcing PyYAML-3.03 ======================== A new bug-fix release of PyYAML is now available: http://pyyaml.org/wiki/PyYAML Changes ======= * Fix Python 2.5 compatibility issues. * Fix numerous bugs in the float handling. * Fix scanning some ill-formed documents. * Other minor fixes. Resources ========= PyYAML homepage: http://pyyaml.org/wiki/PyYAML PyYAML documentation: http://pyyaml.org/wiki/PyYAMLDocumentation TAR.GZ package: http://pyyaml.org/download/pyyaml/PyYAML-3.03.tar.gz ZIP package: http://pyyaml.org/download/pyyaml/PyYAML-3.03.zip Windows installer: http://pyyaml.org/download/pyyaml/PyYAML-3.03.win32.exe PyYAML SVN repository: http://svn.pyyaml.org/pyyaml Submit a bug report: http://pyyaml.org/newticket?component=pyyaml YAML homepage: http://yaml.org/ YAML-core mailing list: http://lists.sourceforge.net/lists/listinfo/yaml-core About PyYAML ============ YAML is a data serialization format designed for human readability and interaction with scripting languages. PyYAML is a YAML parser and emitter for Python. PyYAML features a complete YAML 1.1 parser, Unicode support, pickle support, capable extension API, and sensible error messages. PyYAML supports standard YAML tags and provides Python-specific tags that allow to represent an arbitrary Python object. PyYAML is applicable for a broad range of tasks from complex configuration files to object serialization and persistance. Example ======= >>> import yaml >>> yaml.load(""" ... name: PyYAML ... description: YAML parser and emitter for Python ... homepage: http://pyyaml.org/wiki/PyYAML ... keywords: [YAML, serialization, configuration, persistance, pickle] ... """) {'keywords': ['YAML', 'serialization', 'configuration', 'persistance', 'pickle'], 'homepage': 'http://pyyaml.org/wiki/PyYAML', 'description': 'YAML parser and emitter for Python', 'name': 'PyYAML'} >>> print yaml.dump(_) name: PyYAML homepage: http://pyyaml.org/wiki/PyYAML description: YAML parser and emitter for Python keywords: [YAML, serialization, configuration, persistance, pickle] Copyright ========= The PyYAML module is written by Kirill Simonov . PyYAML is released under the MIT license. From quentel.pierre at wanadoo.fr Tue Jun 20 15:16:07 2006 From: quentel.pierre at wanadoo.fr (Pierre Quentel) Date: 20 Jun 2006 06:16:07 -0700 Subject: ANN : buzhug 0.4 Message-ID: <1150809367.879340.175090@y41g2000cwy.googlegroups.com> buzhug is a new, fast, pure-Python database engine, using a pythonic syntax (no SQL). It is published at http://buzhug.sourceforge.net under the BSD licence Here is an overview of the interface : from buzhug import Base my_cds = Base('my_cds') my_cds.create(('artist',str),('title',str),('issued',int)) my_cds.insert(artist='Garbage',title='Bleed Like Me',issued=2005) my_cds.insert(artist='Rialto',issued=2002,title='Night On Earth') my_cds.insert('Oasis','Definitely Maybe',1994) cd = my_cds.select(artist="Oasis")[0] print cd.title > "Definitely Maybe" new_cds = [ cd for cd in my_cds if cd.issued > 2000 ] Pretty straightforward, isn't it ? As you can see on the last line, the database object is an iterator, yielding objects which have attributes of the same name as the fields in the base songs = Base('songs') songs.create(('title',str),('cd',my_cds)) cd = my_cds.select(title="Definitely Maybe")[0] song_id = songs.insert('Supersonic',cd) song = songs[song_id] # lookup by record id print song.cd.artist > "Oasis" A field can be a reference to another database. When you have finished entering all the songs you can get the track listing by [ song.title for song in songs if song.cd.title == "Definitely Maybe" ] A complete documentation, with a tutorial, is available on the web site The implementation has been designed to make all operations, especially selection, as fast as possible, while processing the data on disk (it is not an in-memory database). On a limited set of tests I found that it is much faster than gadfly and KirbyBase, and only less than 3 times slower than SQLite (see http://buzhug.sourceforge.net/performance.html for details) This version 0.4 improves the speed of selection on fixed-length fields (integer, date, datetime) and introduces a syntax for request on field values between a minimum and a maximum : my_cds.select(['title'],issued = [1990,1999]) Regards, Pierre From python-url at phaseit.net Tue Jun 20 16:22:48 2006 From: python-url at phaseit.net (Cameron Laird) Date: Tue, 20 Jun 2006 14:22:48 +0000 (UTC) Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Jun 20) Message-ID: ANNOUNCEMENT: we had an incident with backups of the "Python-URL!" mailing list. It's possible we lost one or two transactions from the last week. If you aren't receiving an e-mailed copy of this weekly news digest that you should, or are receiving one when you shouldn't, please alert me through an e-mail reply. QOTW: "[L]exical closures bind to names, default arguments bind to values." - Fredrik Lundh http://groups.google.com/group/comp.lang.python/msg/8916574e3c60750d has commentary "Programming is not just creating strings of instructions for a computer to execute. It's also 'literary' in that you are trying to communicate a program structure to other humans reading the code." - Paul Rubin Ravi Teja posts a native win32 Yes-No dialogue in two lines: http://groups.google.com/group/comp.lang.python/msg/d2603fd699857fcf ... makes a case that there might be a place in the world for Scala: http://groups.google.com/group/comp.lang.python/msg/0cccf81bf834b103 ... and cleverly enlists decorators to argue in favor of macros on the premise that "[r]epresentational minimalism" is no vice in a DSL (which is, of course, S to its D): http://groups.google.com/group/comp.lang.python/msg/54425e8137612ae4 Spirited rejoinders follow the latter. Alex and Bruno remark on the languages Google uses, among which Python remains of course prominent: http://groups.google.com/group/comp.lang.python/browse_thread/thread/d7ed5b2061c5cc0d/ Roger Upole can capture a Win32 window to a .bmp image: http://groups.google.com/group/comp.lang.python/msg/2619bc119298041a Rather than speculate about semantics or performance, Python makes it easy enough to measure and validate through the byte-code level: http://groups.google.com/group/comp.lang.python/browse_thread/thread/5cacc718af68fe97/ ======================================================================== 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/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!". -- The Python-URL! Team-- Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and sponsor the "Python-URL!" project. From andrewm at object-craft.com.au Tue Jun 20 12:55:33 2006 From: andrewm at object-craft.com.au (Andrew McNamara) Date: Tue, 20 Jun 2006 20:55:33 +1000 Subject: Albatross 1.35 released Message-ID: <20060620105533.B0F617940A1@longblack.object-craft.com.au> OVERVIEW Albatross is a small toolkit for developing highly stateful web applications. The toolkit has been designed to take a lot of the pain out of constructing intranet applications although you can also use Albatross for deploying publicly accessed web applications. In slightly more than 4500 lines of Python (according to pycount) you get the following: * An extensible HTML templating system similar to DTML including tags for: - Conditional processing. - Macro definition and expansion. - Sequence iteration and pagination. - Tree browsing. - Lookup tables to translate Python values to arbitrary template text. * Application classes which offer the following features: - Optional server side or browser side sessions. - The ability to place Python code for each page in a dynamically loaded module, or to place all page processing code in a single mainline. * The ability to deploy applications as CGI, FastCGI, mod_python or a pure python HTTP server by changing less than 10 lines of code. The toolkit application functionality is defined by a collection of fine grained mixin classes. Nine different application types and six different execution contexts are prepackaged, you are able to define your own drop in replacements for any of the mixins to alter any aspect of the toolkit semantics. Application deployment is controlled by your choice of either cgi, FastCGI, mod_python, or BaseHTTPServer Request class. It should be possible to develop a Request class for Medusa or Twisted to allow applications to be deployed on those platforms with minimal changes. Albatross comes with over 180 pages of documentation. HTML and PDF formatted documentation is available from the toolkit homepage. The toolkit homepage: http://www.object-craft.com.au/projects/albatross/ The Albatross mailing list subscription and archives: http://object-craft.com.au/cgi-bin/mailman/listinfo/albatross-users CHANGES SINCE 1.33: ==================- Note that release 1.34 was an internal release. New Features ------------ * A drop-in replacement for the fcgiapp module, called fcgiappnew has been added. This version implements the FastCGI protocol itself, rather than relying on an external module to implement the protocol. This new module addresses several minor problems with fcgi.py, and should be faster, although it should not be used in critical applications until it has received wider testing. Functional Changes ------------------ * When extension tags (alx-*) are registered, their name is now checked against the template parsing regexp to ensure they can subsequently be matched. Bug Fixes --------- * The AnyTag functionality was given knowledge of HTML tags for which the close tag is forbidden, so it can avoid generating XHTML empty tag (which could cause the page to fail HTML validation). * When the disabledbool attribute was used on input tags, the disabled state was not being passed through to the input registry within the NameRecorderMixin. * If a client closed it's connection to the session server while the server had data pending for the client, a subsequent del_write_file would generate an exception, killing the session server. -- Andrew McNamara, Senior Developer, Object Craft http://www.object-craft.com.au/ From faltet at carabos.com Wed Jun 21 11:14:58 2006 From: faltet at carabos.com (Francesc Altet) Date: Wed, 21 Jun 2006 11:14:58 +0200 Subject: ANN: PyTables (a hierarchical database) 1.3.2 released Message-ID: <200606211115.02727.faltet@carabos.com> =========================== Announcing PyTables 1.3.2 =========================== This is a new minor release of PyTables. There you will find, among other things, improved support for NumPy strings and the ability to create indexes of NumPy-flavored tables (this capability was broken in earlier versions). *Important note*: one of the fixes addresses an important bug that shows when browsing files with lots of nodes, making PyTables to crash. Because of this, an upgrade is encouraged. Go to the PyTables web site for downloading the beast: http://www.pytables.org/ or keep reading for more info about the new features and bugs fixed. Changes more in depth ===================== Bug fixes: - Changed the nodes in the lru cache heap from Pyrex to pure Python ones. This fixes a problem that can appear in certain situations (mainly, when navigating back and forth along lots of Node objects). While this fix is sub-optimal, at least it leads to well behaviour until the faster approach will eventually get back. - Due to different conventions in padding chars, it has been added a special case when converting from numarray strings into numpy ones so that these different conventions are handled correctly. Fixes ticket #13 and other strange numpy string quirks (thanks to Pepe Barbe). - Solved an issue that appeared when indexing Table columns with flavor 'numpy'. Now, tables that are 'numpy' flavored can be indexed as well. - Solved an issue when saving string atoms with ``VLArray`` with a flavor different from "python". The problem was that the item sizes of the original strings were not checked, so rubish was put on-disk. Now, if an item size of the input is different from the item size of the atom, a conversion is forced. Added tests to check for these situations. - Fixed a problem with removing a table with indexed columns under certain situations. Thanks to Andrew Straw for reporting it. - Fixed a small glitch in the ``ptdump`` utility that prevented dumping ``EArray`` data with an enlargeable dimension different from the first one. - Make parent node unreference child node when creation fails. Fixes ticket #12 (thanks to Eilif). - Saving zero-length strings in Array objects used to raise a ZeroDivisionError. Now, it returns a more sensible NotImplementedError until this is supported. Backward-incompatible changes: - Please, see ``RELEASE-NOTES.txt`` file. Deprecated features: - None Important note for Windows users ================================ If you are willing to use PyTables with Python 2.4 in Windows platforms, you will need to get the HDF5 library compiled for MSVC 7.1, aka .NET 2003. It can be found at: ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/current/bin/windows/5-165-win-net.ZIP Users of Python 2.3 on Windows will have to download the version of HDF5 compiled with MSVC 6.0 available in: ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/current/bin/windows/5-165-win.ZIP What it is ========== **PyTables** is a package for managing hierarchical datasets and designed to efficiently cope with extremely large amounts of data (with support for full 64-bit file addressing). It features an object-oriented interface that, combined with C extensions for the performance-critical parts of the code, makes it a very easy-to-use tool for high performance data storage and retrieval. PyTables runs on top of the HDF5 library and numarray (but NumPy and Numeric are also supported) package for achieving maximum throughput and convenient use. Besides, PyTables I/O for table objects is buffered, implemented in C and carefully tuned so that you can reach much better performance with PyTables than with your own home-grown wrappings to the HDF5 library. PyTables sports indexing capabilities as well, allowing doing selections in tables exceeding one billion of rows in just seconds. Platforms ========= This version has been extensively checked on quite a few platforms, like Linux on Intel32 (Pentium), Win on Intel32 (Pentium), Linux on Intel64 (Itanium2), FreeBSD on AMD64 (Opteron), Linux on PowerPC (and PowerPC64) and MacOSX on PowerPC. For other platforms, chances are that the code can be easily compiled and run without further issues. Please, contact us in case you are experiencing problems. Resources ========= Go to the PyTables web site for more details: http://www.pytables.org About the HDF5 library: http://hdf.ncsa.uiuc.edu/HDF5/ About numarray: http://www.stsci.edu/resources/software_hardware/numarray To know more about the company behind the PyTables development, see: http://www.carabos.com/ Acknowledgments =============== Thanks to various the users who provided feature improvements, patches, bug reports, support and suggestions. See the ``THANKS`` file in the distribution package for a (incomplete) list of contributors. Many thanks also to SourceForge who have helped to make and distribute this package! And last but not least, a big thank you to THG (http://www.hdfgroup.org/) for sponsoring many of the new features recently introduced in PyTables. Share your experience ===================== Let us know of any bugs, suggestions, gripes, kudos, etc. you may have. ---- **Enjoy data!** -- The PyTables Team From info at wingware.com Wed Jun 21 16:29:33 2006 From: info at wingware.com (Wingware Announce) Date: Wed, 21 Jun 2006 10:29:33 -0400 Subject: Wing IDE 2.1 released Message-ID: <449957CD.3040803@wingware.com> We're happy to announce the release of Wing IDE version 2.1, an advanced development environment for the Python programming language. This is a free upgrade for Wing IDE 2.0 users. The release can be downloaded from: http://wingware.com/downloads 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 the 2.1 release include: * Visual Studio, VI/Vim, and Brief key bindings * Subversion and Perforce support (+) * Improved performance on Windows * Redesigned and improved search tools * Named bookmarks (+) * Breakpoint manager (+) and call stack as list * Evaluate file or selection in Python Shell * Support for Intel Macs (+) These are available in Wing IDE Pro only A list of major changes since Wing 2.0 can be found here: http://wingware.com/news/2006-06-19 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 Wed Jun 21 17:45:18 2006 From: anthony at python.org (Anthony Baxter) Date: Thu, 22 Jun 2006 01:45:18 +1000 Subject: RELEASED Python 2.5 (beta 1) Message-ID: <200606220145.37444.anthony@python.org> On behalf of the Python development team and the Python community, I'm happy to announce the first BETA release of Python 2.5. This is an *beta* release of Python 2.5. As such, it is not suitable for a production environment. It is being released to solicit feedback and hopefully discover bugs, as well as allowing you to determine how changes in 2.5 might impact you. If you find things broken or incorrect, please log a bug on Sourceforge. I'd like to really encourage you to try out this version and check that your code still works - if not, and you think it's a bug, please log a bug. Hopefully this will make it easier for you to upgrade once the final release of Python 2.5 is done. Please note that changes to improve Python's support for 64 bit systems might require authors of C extensions to change their code. See the website for more, including a link to a posting discussing this issue in particular. More information on the release (as well as source distributions and Windows and Mac OSX installers) are available from the 2.5 website: http://www.python.org/2.5/ Since the alpha releases, a slew of bug fixes and smaller new features have been added. See the release notes (available from the 2.5 webpage) for more. The first beta also includes the results of the Iceland NeedForSpeed sprint, resulting in some significant speedups. As of this release, Python 2.5 is now in *feature freeze*. No new features are planned - only bugfixes for the code already in the codebase. The plan from here is for one more beta release followed by one or more release candidates as needed, leading to a 2.5 final release early August. PEP 356 includes the schedule and will be updated as the schedule evolves. The new features in Python 2.5 are described in Andrew Kuchling's What's New In Python 2.5. It's available from the 2.5 web page. Amongst the language features added include conditional expressions, the with statement, the merge of try/except and try/finally into try/except/finally, enhancements to generators to produce a coroutine kind of functionality, and a brand new AST-based compiler implementation. New modules added include hashlib, ElementTree, sqlite3, wsgiref and ctypes. We also have a new profiling module "cProfile". Enjoy this new release (another step on the path to Python 2.5 final) 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/20060622/9185126b/attachment.pgp From travis at enthought.com Wed Jun 21 17:20:38 2006 From: travis at enthought.com (Travis N. Vaught) Date: Wed, 21 Jun 2006 10:20:38 -0500 Subject: SciPy 2006 Tutorials Message-ID: <449963C6.3070203@enthought.com> All, As part of this year's SciPy 2006 Conference, we've planned Coding Sprints on Monday and Tuesday (August 14-15) and a Tutorial Day Wednesday (August 16)--the normal conference presentations follow on Thursday and Friday (August 17-18). For this year at least, the Tutorials (and Sprints) are no additional charge (you're on your own for food on those days, though). With regard to Tutorial topics, we've settled on the following: "3D visualization in Python using tvtk and MayaVi" "Scientific Data Analysis and Visualization using IPython and Matplotlib." "Building Scientific Applications using the Enthought Tool Suite (Envisage, Traits, Chaco, etc.)" "NumPy (migration from Numarray & Numeric, overview of NumPy)" These will be in two tracks with two three hour sessions in each track. If you plan to attend, please send an email to tutorials at scipy.org with the two sessions you'd most like to hear and we'll build the schedule with a minimum of conflict. We'll post the schedule of the tracks on the Wiki here: http://www.scipy.org/SciPy2006/TutorialSessions Also, if you haven't registered already, the deadline for early registration is July 14. The abstract submission deadline is July 7. More information is here: http://www.scipy.org/SciPy2006 Thanks, Travis From remi at cherrypy.org Thu Jun 22 00:24:06 2006 From: remi at cherrypy.org (remi at cherrypy.org) Date: 21 Jun 2006 15:24:06 -0700 Subject: ANN (Screencast): Using python at WebFaction Message-ID: <1150928646.886129.247950@m73g2000cwd.googlegroups.com> Hello everyone, WebFaction (formerly Python-Hosting.com) have just released a screencast demo of their control panel. The 6 minute demo shows how you can setup some sites in a few clicks, using a variety of applications (including some Python ones such as Django and TurboGears). The one-click installer already supports all major tools, including Rails, WordPress, Django, TurboGears, Plone, Trac and Subversion, but also lightweight tools such as static HTML, CGI or PHP. The demo is available at: http://blog.webfaction.com/control-panel-demo Remi. http://www.webfaction.com - Hosting for an agile web From ms at cerenity.org Thu Jun 22 00:32:00 2006 From: ms at cerenity.org (Michael) Date: Wed, 21 Jun 2006 23:32:00 +0100 Subject: Axon 1.5.0 RELEASED! Message-ID: <4499c884$0$69378$ed2619ec@ptn-nntp-reader01.plus.net> Hi! I'm extremely pleased to say - Axon 1.5.0 has been released! Axon is Kamaelia's core concurrency system, largely based around python generators to enable components to be built following a slightly updated paraphrasing of Unix Philosophy: """Write components that do one thing and do it well. Write components to work together. Write components to handle python object streams, because that is a universal interface.""" (With apologies to Doug McIlroy...) Axon essentially provides a way for active objects (generators, threads) to be composed into pipelines of arbitrary shape (graphlines etc) as a means of system simplification. What's Changed? =============== Axon 1.5 is a major performance related release for Kamaelia's core component system. There have been a number of core changes, some highlights: * Zero copy delivery of data from producers to consumers * The system scheduler is now reactive to threaded components, meaning the system can truly sleep when there is nothing to do. * This means self.pause() REALLY pauses the microprocess, and may result in the component not receiving data. (If you call self.pause, you should really mean it). Generally this is only used at an optimisation stage. * Threaded components are now fully supported with the following caveats: * They should not use the shared environment provided the co-ordinating assistant tracker (they're not expected to need to do so, but this is useful to make explicit) * They should not expect to be able to interact with synchronous boxes (boxes with a maximum size) Aside from these caveats, creating and using a threaded component is the same as a normal generator based one, except you simply don't have yield statements. You obviously use a different base class. The use of the "ipc" message Axon.Ipc.newComponent for child component startup has been deprecated in favour of the simpler API: X = SomeComponent() X.activate() Despite all these changes, components written for earlier versions of Axon will continue to work as before. Documentation has also generally improved,and is included in the the code files for access via pydoc/help. Message Passing and Delivery Optimisation Changes * Boxes are now discrete objects. This change has occured to enable the use of direct (effectively "zero copy" delivery). * This has meant the postman has been deleted - components no longer have a postman associated with them. This also dramatically frees up CPU cycles for components rather than the communications system. * To replace the structural tracking, a "postoffice" class has been created instead. This, however, is passive rather than active. * Because the death of a component no longer also means the death of a postman, microprocess has been simplified to remove the concept of activity creator. This removes the knock on complexity in both the scheduler and inside Component. * Despite these changes components running on top of Axon (ie existing Kamaelia components) operate largely unchanged. (A few that assumed the existance of a postman etc have changed) Flow Control Inversion * The Scheduler therefore now dynamically builds its runqueue to only include unpaused (active) microprocesses. * If there are no active microprocesses, the scheduler can now sleep. Reducing CPU usage to zero, until some kind of event causes something to wake up. Flow of control is therefore effectively inverted as Axon systems can now be reactive. * Pausing state is now managed by the scheduler on behalf of microprocesses (they used to manage it themselves). Requests to wake and pause microprocesses get routed to the Scheduler. * The APIs for Component and Microprocess are, for the most part, unchanged. Existing components will continue to work as before. If they self pause they will benefit from reduced CPU usage. If all components in a system behave in this way, then Axon will cease to busy-wait when idle. Threading Support * The threaded component has had its API fixed to match the rest of Axon (with the obvious exception of removing the yields). * Threaded 'adaptive' component is new. Detailed release notes & changelog: http://kamaelia.sourceforge.net/Axon-1.5.0-ReleaseNotes.html Platforms ========= Axon has been used successfully under both Linux, Windows and Mac OS X (panther). This version of Axon has not yet been tested on series 60 mobiles. Where can I get it? =================== Sourceforge Download: http://sourceforge.net/project/showfiles.php?group_id=122494&package_id=139298 Web pages are here: http://kamaelia.sourceforge.net/ Tutorial for the core component/concurrency system: * http://kamaelia.sourceforge.net/MiniAxon/ Axon Motivations: * http://kamaelia.sourceforge.net/Challenges/?tab=8 Licensing ========= Axon is a part of the Kamaelia project and as a result is released under the Mozilla tri-license scheme (MPL1.1/GPL2.0/LGPL2.1). See http://kamaelia.sourceforge.net/Licensing.html Best Regards, Michael. -- Michael Sparks, Senior Research Engineer, BBC Research, Technology Group michael.sparks at rd.bbc.co.uk, Kamaelia Project Lead, http://kamaelia.sf.net/ This message (and any attachments) may contain personal views which are not the views of the BBC unless specifically stated. From ms at cerenity.org Fri Jun 23 19:58:25 2006 From: ms at cerenity.org (Michael) Date: Fri, 23 Jun 2006 18:58:25 +0100 Subject: ANN: Kamaelia Bundles Updated Message-ID: <449c2aea$0$3545$ed2619ec@ptn-nntp-reader01.plus.net> Hi, We're experimenting with distributions of Kamaelia including all the key dependencies for all the examples, which we're dubbing Kamaelia Bundles. These have been updated for the following new releases: Kamaelia 0.4.0, Axon 1.5.0, vorbissimple 0.0.2. As a result the two files are: * KamaeliaBundle-1.2.0.tar.gz * KamaeliaMegaBundle-1.2.0.tar.gz (same as above but also includes libvorbis, libogg and libao) Installation instructions here: * http://kamaelia.sourceforge.net/GettingStarted.html This consolidates the last 6 months work on optimisation work aimed at being able to grab & transcode Digital TV broadcasts in realtime. This means there's been a large number of positive knockons, and also include a number of new and useful examples/tools: * Collaborative/Shared/Networked whiteboard (clients are servers as well) * Presentation Tool * A simple record & transcode PVR - which we're using as the back end for generating the data available here: http://bbc.kamaelia.org/cgi-bin/blog/blog.cgi We've also now got lots of documentation on the website: * http://kamaelia.sourceforge.net/Introduction.html * http://kamaelia.sourceforge.net/Cookbook.html * http://kamaelia.sourceforge.net/Components.html Full Release notes: * http://kamaelia.sourceforge.net/Kamaelia-0.4.0-ReleaseNotes.html * http://kamaelia.sourceforge.net/Axon-1.5.0-ReleaseNotes.html Downloads: * KamaeliaBundle-1.2.0.tar.gz http://sourceforge.net/project/showfiles.php?group_id=122494&package_id=183773&release_id=427118 * KamaeliaMegaBundle-1.2.0.tar.gz http://sourceforge.net/project/showfiles.php?group_id=122494&package_id=183774&release_id=427119 License: * This is an aggregate tar ball, so each file in the distribution is covered by its own license. (ie this is mere aggregation) As an indication of the performance, it's fairly trivial to write a programme to take a Digital TV channel (~5Mbit/s of data rate) and locally remulticast it. Since you can then use a laptop with wireless as a portable TV, it's nicer to use instead of an analogue TV sender from the local supermarket :) (Obviously whether you can do this really depends on your local copyright laws, but it's a nice indication of performance) Oh, also, apparently this month's Linux Magazin in Germany has a short article on Kamaelia. I can't read it, but the cat comes out well :) Have fun, Michael. -- Michael Sparks, Senior Research Engineer, BBC Research, Technology Group michael.sparks at rd.bbc.co.uk, Kamaelia Project Lead, http://kamaelia.sf.net/ This message (and any attachments) may contain personal views which are not the views of the BBC unless specifically stated. From quentel.pierre at wanadoo.fr Sat Jun 24 09:58:07 2006 From: quentel.pierre at wanadoo.fr (Pierre Quentel) Date: 24 Jun 2006 00:58:07 -0700 Subject: ANN : Karrigell 2.3 Message-ID: <1151135887.584581.81020@u72g2000cwu.googlegroups.com> Karrigell (http://karrigell.sourceforge.net) is a flexible Python web framework, with a clear and intuitive syntax. It is independant from any database, ORM or templating engine, and lets the programmer choose between a variety of coding styles The main change in version 2.3 is that buzhug (http://buzhug.sourceforge.net) becomes the default database engine instead of KirbyBase. I rewrote all the demos with it ; the forum demo has been improved, with the ability to remove messages and a nicer look The other important change is the replacement of gettext by a much simpler module (called k_translation) ; I wrote it because I still had problems with unicode and wasn't able to solve them with gettext and its .po and .mo files. The interface is the same (use of the _() function, or <%_ %> in PIH scripts) but the translations themselves will have to be entered again using the script admin/internat.pih Feedback and comments are welcome on the Google group http://groups.google.com/group/karrigell?lnk=li Pierre From quentel.pierre at wanadoo.fr Sat Jun 24 10:14:14 2006 From: quentel.pierre at wanadoo.fr (Pierre Quentel) Date: 24 Jun 2006 01:14:14 -0700 Subject: ANN : Karrigell 2.3 Message-ID: <1151135887.584581.81020@u72g2000cwu.googlegroups.com> Karrigell (http://karrigell.sourceforge.net) is a flexible Python web framework, with a clear and intuitive syntax. It is independant from any database, ORM or templating engine, and lets the programmer choose between a variety of coding styles The main change in version 2.3 is that buzhug (http://buzhug.sourceforge.net) becomes the default database engine instead of KirbyBase. I rewrote all the demos with it ; the forum demo has been improved, with the ability to remove messages and a nicer look The other important change is the replacement of gettext by a much simpler module (called k_translation) ; I wrote it because I still had problems with unicode and wasn't able to solve them with gettext and its .po and .mo files. The interface is the same (use of the _() function, or <%_ %> in PIH scripts) but the translations themselves will have to be entered again using the script admin/internat.pih Feedback and comments are welcome on the Google group http://groups.google.com/group/karrigell?lnk=li Pierre From mcfletch at vrplumber.com Sun Jun 25 04:50:50 2006 From: mcfletch at vrplumber.com (Mike C. Fletcher) Date: Sat, 24 Jun 2006 22:50:50 -0400 Subject: Regular Toronto Python User's Group (PyGTA) meeting this Tuesday 7pm @ Linux Caffe Message-ID: <449DFA0A.2020104@vrplumber.com> As usual, we'll be having our PyGTA meeting on the 4th Tuesday of the month, this month that's June 27th. We'll be continuing our discussion and review of web development frameworks. You can read about last month's reviews (TurboGears, Django and Zope2) here: http://blog.vrplumber.com/1478 If you have lots of experience with another framework, let me know at the meeting and we'll add that framework to the list being reviewed. Details available here: http://web.engcorp.com/pygta/wiki/NextMeeting Enjoy yourselves, Mike -- ________________________________________________ Mike C. Fletcher Designer, VR Plumber, Coder http://www.vrplumber.com http://blog.vrplumber.com From mwh at python.net Sun Jun 25 14:06:39 2006 From: mwh at python.net (Michael Hudson) Date: Sun, 25 Jun 2006 13:06:39 +0100 Subject: pypy-0.9.0: stackless, new extension compiler Message-ID: <2mwtb5igmo.fsf@starship.python.net> The PyPy development team has been busy working and we've now packaged our latest improvements, completed work and new experiments as version 0.9.0, our fourth public release. The highlights of this fourth release of PyPy are: **implementation of "stackless" features** We now support the larger part of the interface of the original Stackless Python -- see http://www.stackless.com for more. A significant part of this is the pickling and unpickling of a running tasklet. These features, especially the pickling, can be considered to be a "technology preview" -- they work, but for example the error handling is a little patchy in places. **ext-compiler** The "extension compiler" is a new way of writing a C extension for CPython and PyPy at the same time. For more information, see its documentation: http://codespeak.net/pypy/dist/pypy/doc/extcompiler.html **rctypes** Most useful in combination with the ext-compiler is the fact that our translation framework can translate code that uses the standard-in-Python-2.5 ctypes module. See its documentation for more: http://codespeak.net/pypy/dist/pypy/doc/rctypes.html **framework GCs** PyPy's interpreter can now be compiled to use a garbage collector written in RPython. This added control over PyPy's execution makes the implementation of new and interesting features possible, apart from being a significant achievement in its own right. **__del__/weakref/__subclasses__** The PyPy interpreter's compatibility with CPython continues improves: now we support __del__ methods, the __subclasses__ method on types and weak references. We now pass around 95% of CPython's core tests. **logic space preview** This release contains the first version of the logic object space, which will add logical variables to Python. See its docs for more: http://codespeak.net/pypy/dist/pypy/doc/howto-logicobjspace-0.9.html **high level backends preview** This release contains the first versions of new backends targeting high level languages such as Squeak and .NET/CLI and updated versions of the JavaScript and Common Lisp backends. They can't compile the PyPy interpreter yet, but they're getting there... **bugfixes, better performance** As you would expect, performance continues to improve and bugs continue to be fixed. The performance of the translated PyPy interpreter is 2.5-3x times faster than 0.8 (on richards and pystone), and is now stable enough to be able to run CPython's test suite to the end. **testing refinements** py.test, our testing tool, now has preliminary support for doctests. We now run all our tests every night, and you can see the summary at: http://snake.cs.uni-duesseldorf.de/pypytest/summary.html What is PyPy (about)? ------------------------------------------------ PyPy is a MIT-licensed research-oriented reimplementation of Python written in Python itself, flexible and easy to experiment with. It translates itself to lower level languages. Our goals are to target a large variety of platforms, small and large, by providing a compilation toolsuite that can produce custom Python versions. Platform, memory and threading models are to become aspects of the translation process - as opposed to encoding low level details into the language implementation itself. Eventually, dynamic optimization techniques - implemented as another translation aspect - should become robust against language changes. Note that PyPy is mainly a research and development project and does not by itself focus on getting a production-ready Python implementation although we do hope and expect it to become a viable contender in that area sometime next year. PyPy is partially funded as a research project under the European Union's IST programme. Where to start? ----------------------------- Getting started: http://codespeak.net/pypy/dist/pypy/doc/getting-started.html PyPy Documentation: http://codespeak.net/pypy/dist/pypy/doc/ PyPy Homepage: http://codespeak.net/pypy/ The interpreter and object model implementations shipped with the 0.9 version can run on their own and implement the core language features of Python as of CPython 2.4. However, we still do not recommend using PyPy for anything else than for education, playing or research purposes. Ongoing work and near term goals --------------------------------- The Just-in-Time compiler and other performance improvements will be one of the main topics of the next few months' work, along with finishing the logic object space. Project Details --------------- PyPy has been developed during approximately 20 coding sprints across Europe and the US. It continues to be a very dynamically and incrementally evolving project with many of these one-week workshops to follow. PyPy has been a community effort from the start and it would not have got that far without the coding and feedback support from numerous people. Please feel free to give feedback and raise questions. contact points: http://codespeak.net/pypy/dist/pypy/doc/contact.html have fun, the pypy team, (Armin Rigo, Samuele Pedroni, Holger Krekel, Christian Tismer, Carl Friedrich Bolz, Michael Hudson, and many others: http://codespeak.net/pypy/dist/pypy/doc/contributor.html) PyPy development and activities happen as an open source project and with the support of a consortium partially funded by a two year European Union IST research grant. The full partners of that consortium are: Heinrich-Heine University (Germany), AB Strakt (Sweden) merlinux GmbH (Germany), tismerysoft GmbH (Germany) Logilab Paris (France), DFKI GmbH (Germany) ChangeMaker (Sweden), Impara (Germany) -- I can't see a conspicuous evolutionary advantage in being good at higher mathematics. -- James Riden, asr From richard at pyweek.org Mon Jun 26 02:53:50 2006 From: richard at pyweek.org (richard at pyweek.org) Date: Mon, 26 Jun 2006 10:53:50 +1000 Subject: Pygame.draw challenge is over! Message-ID: <200606261053.50740.richard@pyweek.org> It was quite successful too! Download the submissions from the pyweek.org site: http://media.pyweek.org/static/pgd-200606.zip Congratulations to all who participated! Richard -- Visit the PyWeek website: http://www.pyweek.org/ From python-url at phaseit.net Mon Jun 26 16:39:07 2006 From: python-url at phaseit.net (Cameron Laird) Date: Mon, 26 Jun 2006 14:39:07 +0000 (UTC) Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Jun 26) Message-ID: QOTW: "In short, it's never what you think it is ;-)" - timbot, probably on the subject of performance "Real efficiency comes from elegant solutions, not optimized programs. Optimization is always just a few correctness-preserving transformations away." - Jonathan Sobel http://www.cs.indiana.edu/~jsobel/c455-c511.updated.txt Microsoft is (again) structuring its current marketing around "platforms", and apparently Python is starting to show up in the campaigns: http://www.microsoft.com/presspass/press/2006/jun06/06-20MSRoboticsStudioPR.mspx Intel puts Python to good use in commercial "program slicing": http://groups.google.com/group/comp.lang.python/browse_thread/thread/98cd59f90b169896/ Transcoding PVRs? Constructing collaborative whiteboards? Streaming multimedia in all directions? Apparently you can construct very impressive network-aware audiovisual applications *visually* with Kamaelia: http://groups.google.com/group/comp.lang.python/browse_thread/thread/36c89411fba299b6/ If you only care about advanced concurrency methods, pipeline- based methods, and componentry, well, that's in there, too, wrapped as Axon: http://groups.google.com/group/comp.lang.python/msg/7a5f189e886d9fc0 Discussion about the new Python icons might inspire a reader to try them: http://groups.google.com/group/comp.lang.python/browse_thread/thread/204f2792a882648d/ Wow: PyPy is up to 0.9.0: http://groups.google.com/group/comp.lang.python.announce/msg/6fa325e6c0cdd526 Life becomes more sophisticated than ever before: http://golly.sourceforge.net/ Timbot illustrates how an experienced file-comparer thinks about performance hacks (and Windows): http://groups.google.com/group/comp.lang.python/msg/15d45c2b268fa410 ... and how much deeper one can analyze recursion and numerics than merely the "tastes great! less filling!" level: http://groups.google.com/group/comp.lang.python/msg/e67403fcaa06c022 http://groups.google.com/group/comp.lang.python/msg/4451e63833a0c1c1 ======================================================================== 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/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 brian at sweetapp.com Mon Jun 26 21:06:02 2006 From: brian at sweetapp.com (Brian Quinlan) Date: Mon, 26 Jun 2006 21:06:02 +0200 Subject: VPW: Talk schedule available In-Reply-To: <44918592.6080609@sweetapp.com> References: <44918592.6080609@sweetapp.com> Message-ID: <44A0301A.9050901@sweetapp.com> What's New? =========== The talk schedule for the Vancouver Python Workshop is now available: http://www.vanpyz.org/conference/talkschedule.html This years line-up might be even stronger than in 2004, so check it out! About the Vancouver Python Workshop =================================== The conference will begin with keynote addresses on August 4st by Guido van Rossum [1] and Jim Hugunin [2]. Further talks (and tutorials for beginners) will take place on August 5th and 6th. Ian Cav?n [3] will give the closing address. The Vancouver Python Workshop is a community organized and designed for both the beginner and for the experienced Python programmer with: * tutorials for beginning programmers * advanced lectures for Python experts * case studies of Python in action * after-hours social events * informative keynote speakers * tracks on multimedia, Web development, education and more More information see: http://www.vanpyz.org/conference/ or contact Brian Quinlan at: brian at sweetapp.com Vancouver ========= In addition to the opportunity to learn and socialize with fellow Pythonistas, the Vancouver Python Workshop also gives visitors the opportunity to visit one of the most extraordinary cities in the world [4]. For more information about traveling to Vancouver, see: http://www.vanpyz.org/conference/vancouver.html http://www.tourismvancouver.com http://en.wikipedia.org/wiki/Vancouver Important dates =============== Talk proposals accepted: May 15th to June 15th Early registration (discounted): May 22nd to June 30th Normal registration: from July 1st Keynotes: August 4th Conference and tutorial dates: August 5th and 6th [1] Guido van Rossum (Google) is the inventor of Python and has managed its growth and development for more than a decade. Guido was awarded the Free Software Foundation Award in 2002 and Dr.Dobb's 1999 Excellence in Programming Award. Guido works at Google and spends half of his time on Python. [2] Jim Hugunin (Microsoft) is the creator of numerous innovations that take Python into new application domains. Jim's most recent project, IronPython integrates Python into Microsoft's .NET runtime. Jim's previous project, Jython is Python for the Java runtime and was the second production-quality implementation of Python. Before that, Jim's Numeric Python adapted Python to the needs of number crunching applications. Jim works at Microsoft adapting the .NET runtime to the needs of dynamic languages like Python. [3] Ian Cav?n is the primary developer of the Lowry Digital Images motion picture restoration system. This Python and Zope-based system has been used to restore over 150 motion pictures. Highlights include Citizen Kane, Sunset Boulevard and both the Indiana Jones and Star Wars trilogies. While Ian was Chief Scientist at Lowry Digital, his rack of computers grew from a few Macintoshes on his desktop to over six hundred Macintosh and Linux servers - at one point earning Lowry the title as the second biggest installation of parallel processing Maintoshes in the world. In 2005, Lowry Digital Images was acquired by DTS (the famous movie audio company) and renamed DTS Digital Images. The motion picture restoration system has been discussed in publications as diverse as IEEE Spectrum, USA Today, the BBC NEWS, the New York Times and Apple.com. Ian has been a Python enthusiast since 1999. [4] http://news.bbc.co.uk/2/hi/business/2299119.stm http://edition.cnn.com/2006/BUSINESS/06/15/btn.cities/index.html Cheers, Brian From richard at commonground.com.au Tue Jun 27 01:58:31 2006 From: richard at commonground.com.au (Richard Jones) Date: Tue, 27 Jun 2006 09:58:31 +1000 Subject: OSDC 2006 -- CFP closes in 2.5 weeks! Message-ID: <366AD0E8-FD7B-4858-A2C3-B4A3730EA718@commonground.com.au> http://www.osdc.com.au/papers/cfp06.html There are two and a half weeks to go to get your paper in for one of the best Australian conferences this year! The deadline for proposals is 12th July 2006. The Open Source Developers' Conference is an Australian conference designed for developers, by developers. It covers numerous programming languages across a range of operating systems. We're seeking papers on Open Source languages, technologies, projects and tools as well as topics of interest to Open Source developers. The conference will be held in Melbourne, Victoria (Monash University's Caulfield Campus) from the 6th to the 8th of December, 2006. Each day includes three streams of talks, social events and is fully catered with buffet lunch and morning, afternoon teas. For a list of conference presentations from last year visit: http://osdc2005.cgpublisher.com/proposals/ If you have any questions, or have never submitted a paper proposal before, please read our FAQ page at http://www.osdc.com.au/faq/ index.html If you don't find an answer there, please contact richard osdc.com.au To submit a proposal, follow the instructions at http://www.osdc.com.au/papers/cfp06.html This year we're also going to run a day of tutorials. See the CFP for more information. We are also seeking expressions of interest for people to be part of the OSDC 2006 Programme Committee. The Committee's primary responsibility is assessing the proposals submitted by potential speakers. Please email richard osdc.com.au if you are interested, indicating your open source development interests. We look forward to hearing from you! All the best, The OSDC 2006 committee. From bvdp at xplornet.com Tue Jun 27 23:48:07 2006 From: bvdp at xplornet.com (bvdp at xplornet.com) Date: 27 Jun 2006 14:48:07 -0700 Subject: Beta 0.22 of MMA - Musical MIDI Accompaniment Message-ID: <1151444887.567493.311550@i40g2000cwc.googlegroups.com> Beta 0.22 of MMA - Musical MIDI Accompaniment - is now available for downloading. Included in this release: Minor (and not-so-minor) bug fixes, added options to GROOVE selections, HARMONYVOLUME setting, FORCEOUT option for keyboard tracks, and some command line fixes. MMA is a accompaniment generator -- it creates midi tracks for a soloist to perform with. User supplied files contain pattern selections, chords, and MMA directives. For full details please visit: http://users.xplornet.com/~bvdp/mma/ If you have any questions or comments, please send them to: bvdp at xplornet.com From stefan.behnel-n05pAM at web.de Wed Jun 28 08:22:15 2006 From: stefan.behnel-n05pAM at web.de (Stefan Behnel) Date: Wed, 28 Jun 2006 08:22:15 +0200 Subject: lxml 1.0.2 and 1.1alpha released Message-ID: <44a2201c$0$26262$9b4e6d93@newsread2.arcor-online.net> Hi, I'm happy to announce the release of lxml 1.0.2 and 1.1alpha. The changes are listed below. As a brief introduction: """ 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, much more. Its goals are: * Pythonic API. * Documented. http://codespeak.net/lxml/#documentation http://codespeak.net/lxml/FAQ.html * FAST! http://codespeak.net/lxml/performance.html * Use Python unicode strings in API. * Safe (no segfaults). * No manual memory management! (as opposed to the official libxml2 Python bindings) """ lxml 1.0.2 is a maintenance release for the stable and production-ready 1.0 series. Updating and upstream integration into distributions is recommended. lxml 1.1alpha is a preview release which adds loads of new features, including a SAX-like iterparse() function, multi-threading and advanced tree iteration. Bug reports and success stories sent to the mailing list are appreciated. The source as well as various eggs and installers are available from cheeseshop: http://cheeseshop.python.org/pypi/lxml/1.0.2 http://cheeseshop.python.org/pypi/lxml/1.1alpha Have fun, Stefan Changes in 1.0.2: Features added * Support for setting a custom default Element class as opposed to namespace specific classes (which still override the default class) Bugs fixed * Rare exceptions in Python list functions were not handled * Parsing accepted unicode strings with XML encoding declaration in certain cases * Parsing 8-bit encoded strings from StringIO objects raised an exception * Module function initThread() was removed - useless (and never worked) * XSLT and parser exception messages include the error line number Features added in 1.1alpha: * Module level iterwalk() function as 'iterparse' for trees * ElementTree compatible iterparse() module function * Element.nsmap property returns a mapping of all namespace prefixes known at the Element to their namespace URI * Reentrant threading support in RelaxNG, XMLSchema and XSLT * Threading support in parsers and serializers: o All in-memory operations (tostring, parse(StringIO), etc.) free the GIL o File operations (on file names) free the GIL o Reading from file-like objects frees the GIL and reacquires it for reading o Serialisation to file-like objects is single-threaded (high lock overhead) * Element iteration over XPath axes: o Element.iterdescendants() iterates over the descendants of an element o Element.iterancestors() iterates over the ancestors of an element (from parent to parent) o Element.itersiblings() iterates over either the following or preceding siblings of an element o Element.iterchildren() iterates over the children of an element in either direction o All iterators support the tag keyword argument to restrict the generated elements * Element.getnext() and Element.getprevious() return the direct siblings of an element From jdavid at itaapy.com Wed Jun 28 10:30:08 2006 From: jdavid at itaapy.com (=?UTF-8?B?IkouIERhdmlkIEliw6HDsWV6Ig==?=) Date: Wed, 28 Jun 2006 10:30:08 +0200 Subject: itools 0.13.6 released Message-ID: <44A23E10.2030501@itaapy.com> itools is a Python library, it groups a number of packages into a single meta-package for easier development and deployment: itools.catalog itools.i18n itools.uri itools.cms itools.ical itools.web itools.csv itools.resources itools.workflow itools.datatypes itools.rss itools.xhtml itools.gettext itools.schemas itools.xliff itools.handlers itools.stl itools.xml itools.html itools.tmx Changes: URI - Add the method "replace" to uri objects (this makes the method "Request.build_url" from itools.web obsolete). Datatypes - Add a datatype for decimal numbers, by Herv? Cauwelier [#330]. Handlers - Revert the lazy load patch. CSV - Now "get_rows" is a generator, by Herv? Cauwelier [#312]. iCalendar - Various API improvements, by Nicolas Deram [#246]. STL - Now "stl:content" coerces floats and decimals to strings, by Herv? Cauwelier [#331]. Web - Improve error logging, print the whole request headers. - Don't fail when the "Cookie" header is present with an empty value. CMS - Now locks expire in one hour, by Herv? Cauwelier [#250]. - Handler for Restructured Text files, by Herv? Cauwelier [#68]. - Minor user interface improvements, by Herv? Cauwelier [#324, #334, #340]. Resources --------- Download http://download.ikaaro.org/itools/itools-0.13.6.tar.gz Home http://www.ikaaro.org/itools Mailing list http://mail.ikaaro.org/mailman/listinfo/itools Bug Tracker http://bugs.ikaaro.org -- J. David Ib??ez Itaapy Tel +33 (0)1 42 23 67 45 9 rue Darwin, 75018 Paris Fax +33 (0)1 53 28 27 88 From glingl at aon.at Wed Jun 28 13:56:42 2006 From: glingl at aon.at (Gregor Lingl) Date: Wed, 28 Jun 2006 13:56:42 +0200 Subject: ANN: xturtle.py - a new Tkinter based turtle graphics module Message-ID: <44A26E7A.1060908@aon.at> xturtle.py, extended turtle graphics a new turtle graphics module for Python and Tkinter Version 0.91 of xturtle.py has been released. A zip file containing the module and supplementary material can be found at: http://ada.rg16.asn-wien.ac.at/~python/xturtle xturtle should work properly on all major platforms (Mac, Linux and Windows) Feedback would be appreciated to take it into account for polishing xturtle to a final version 1.0. xturtle.py is a module designed to help you learn and/or teach computer programming using Python. Turtle graphics provides a means for the beginning programmers to get immediate visual feedback about the correct working of her programs. It's main goal is to provide easy access to a sufficiently rich graphics toolkit. It needs only the standard distribution of python (incl. Tkinter) and imho it (or some descendant of it) once (soon?) could (and should?) replace turtle.py which is contained in the current standard distribution. xturtle.zip contains xturtle.py and three supplementary elements: ( 0. the module xturtle.py ). 1. set of 25+ sample scripts of great variety to show possible uses of xturtle.py 2. A simple demoViewer to run and view those sample scripts 3. documentation in form of *.txt files, which also can be viewed with the demoViewer. Docs are derived from doc strings. thus Python's help utility works fine with the module xturtle.py For more information (e.g. some screenshots) see the web page mentioned above. Gregor From brian at sweetapp.com Wed Jun 28 18:19:21 2006 From: brian at sweetapp.com (Brian Quinlan) Date: Wed, 28 Jun 2006 18:19:21 +0200 Subject: VPW: early registration deadline Message-ID: <44A2AC09.5010703@sweetapp.com> What's New? =========== The deadline for early-bird registration for the Vancouver Python Workshop is this Friday, June 30th. Early-bird registration is significantly discounted over normal registration, so register now at: http://www.vanpyz.org/conference/registration.html About the Vancouver Python Workshop =================================== The conference will begin with keynote addresses on August 4st by Guido van Rossum [1] and Jim Hugunin [2]. Further talks (and tutorials for beginners) will take place on August 5th and 6th. Ian Cav?n [3] will give the closing address. The Vancouver Python Workshop is a community organized and designed for both the beginner and for the experienced Python programmer with: * tutorials for beginning programmers * advanced lectures for Python experts * case studies of Python in action * after-hours social events * informative keynote speakers More information see: http://www.vanpyz.org/conference/ or contact Brian Quinlan at: brian at sweetapp.com Vancouver ========= In addition to the opportunity to learn and socialize with fellow Pythonistas, the Vancouver Python Workshop also gives visitors the opportunity to visit one of the most extraordinary cities in the world [4]. For more information about traveling to Vancouver, see: http://www.vanpyz.org/conference/vancouver.html http://www.tourismvancouver.com http://en.wikipedia.org/wiki/Vancouver Important dates =============== Early registration (discounted): May 22nd to June 30th Normal registration: from July 1st Keynotes: August 4th Conference and tutorial dates: August 5th and 6th [1] Guido van Rossum (Google) is the inventor of Python and has managed its growth and development for more than a decade. Guido was awarded the Free Software Foundation Award in 2002 and Dr.Dobb's 1999 Excellence in Programming Award. Guido works at Google and spends half of his time on Python. [2] Jim Hugunin (Microsoft) is the creator of numerous innovations that take Python into new application domains. Jim's most recent project, IronPython integrates Python into Microsoft's .NET runtime. Jim's previous project, Jython is Python for the Java runtime and was the second production-quality implementation of Python. Before that, Jim's Numeric Python adapted Python to the needs of number crunching applications. Jim works at Microsoft adapting the .NET runtime to the needs of dynamic languages like Python. [3] Ian Cav?n is the primary developer of the Lowry Digital Images motion picture restoration system. This Python and Zope-based system has been used to restore over 150 motion pictures. Highlights include Citizen Kane, Sunset Boulevard and both the Indiana Jones and Star Wars trilogies. While Ian was Chief Scientist at Lowry Digital, his rack of computers grew from a few Macintoshes on his desktop to over six hundred Macintosh and Linux servers - at one point earning Lowry the title as the second biggest installation of parallel processing Maintoshes in the world. In 2005, Lowry Digital Images was acquired by DTS (the famous movie audio company) and renamed DTS Digital Images. The motion picture restoration system has been discussed in publications as diverse as IEEE Spectrum, USA Today, the BBC NEWS, the New York Times and Apple.com. Ian has been a Python enthusiast since 1999. [4] http://news.bbc.co.uk/2/hi/business/2299119.stm http://edition.cnn.com/2006/BUSINESS/06/15/btn.cities/index.html Cheers, Brian From doerwalter at googlemail.com Wed Jun 28 21:07:46 2006 From: doerwalter at googlemail.com (=?iso-8859-1?q?Walter_D=F6rwald?=) Date: 28 Jun 2006 12:07:46 -0700 Subject: ll-core 1.3 released Message-ID: <1151521666.811035.258850@p79g2000cwp.googlegroups.com> ll-core 1.3 has been released! What's new in version 1.3? ========================== * ll.make has been rewritten. Now there's no longer a distinction between Targets and Actions. Actions can be chained more easily and creating an action and registering it with the project are two separate steps. Actions can no longer be shared, as each action stores its own input actions (but output actions are not stored). "Ids" have been renamed to "keys" (and DBID/OracleID to DBKey/OracleKey. ImportAction has been renamed to ModuleAction and can now turn any string into a module. * In ll.url modification dates for local files now include microseconds (if the OS supports it). * A class Queue has been added to ll.misc which provides FIFO queues. * A decorator withdoc has been added to ll.misc that sets the docstring on the function it decorates. * setuptools is now supported for installation. Where can I get it? =================== ll-core can be downloaded from http://ftp.livinglogic.de/core/ or ftp://ftp.livinglogic.de/pub/livinglogic/core/ Web pages are at http://www.livinglogic.de/Python/core/ ViewCVS access is available at http://www.livinglogic.de/viewcvs/ Bye, Walter D?rwald From doerwalter at googlemail.com Wed Jun 28 21:08:34 2006 From: doerwalter at googlemail.com (=?iso-8859-1?q?Walter_D=F6rwald?=) Date: 28 Jun 2006 12:08:34 -0700 Subject: XIST 2.14 released Message-ID: <1151521714.814433.223630@i40g2000cwc.googlegroups.com> XIST 2.14 has been released! What is it? =========== XIST is an extensible HTML/XML generator written in Python. XIST is also a DOM parser (built on top of SAX2) with a very simple and Pythonesque tree API. Every XML element type corresponds to a Python class, and these Python classes provide a conversion method to transform the XML tree (e.g. into HTML). XIST can be considered "object oriented XSL". What's new in version 2.14? =========================== * Namespaces for RSS 0.91, RSS 2.0 and Atom 1.0 have been added. * A new namespace ll.xist.ns.detox has been added that is similar to ll.toxic but can be used to generate Python code instead of PL/SQL code. Using detox templates is about 50 times faster than using XIST trees directly and about 10 times faster than Kid. * Presenters are now compatible to IPython's ipipe modules. This means that you can browse XIST trees interactively if you have IPython installed. NormalPresenter and the Node methods repr and asrepr have been removed. * A new processing instruction ll.xist.ns.specials.url has been added that does the same URL transformation as ll.xist.xsc.URLAttr does. * On publishing ll.xist.ns.html.html now only adds a lang and xml:lang attribute, if neither of them exists. * setuptools is now supported for installation. For changes in older versions see: http://www.livinglogic.de/Python/xist/History.html Where can I get it? =================== XIST can be downloaded from http://ftp.livinglogic.de/xist/ or ftp://ftp.livinglogic.de/pub/livinglogic/xist/ Web pages are at http://www.livinglogic.de/Python/xist/ ViewCVS access is available at http://www.livinglogic.de/viewcvs/ For information about the mailing lists go to http://www.livinglogic.de/Python/xist/Mailinglists.html Bye, Walter D?rwald From jf.pieronne at laposte.net Thu Jun 29 09:27:54 2006 From: jf.pieronne at laposte.net (=?ISO-8859-1?Q?Jean-Fran=E7ois_Pi=E9ronne?=) Date: Thu, 29 Jun 2006 09:27:54 +0200 Subject: Python 2.5b1 is available for OpenVMS AXP and IA64 Message-ID: <44a38102$0$986$ba4acef3@news.orange.fr> A new Python 2.5 kit is now available for OpenVMS AXP and IA64, this kit is based on Python 2.5b1. It include some new libraries like, for example, pyExcelerator, Construct. Some new LIB$ and SYS$ routines interfaces have also be added. More information on Python from the official site http://www.python.org/ Download OpenVMS version from http://www.pi-net.dyndns.org/anonymous/kits/ Various demonstrations from http://vmspython.dyndns.org/ Jean-Fran?ois From wanja at merlinux.de Thu Jun 29 12:03:08 2006 From: wanja at merlinux.de (Wanja Saatkamp) Date: Thu, 29 Jun 2006 12:03:08 +0200 Subject: Release of PyPy videos Message-ID: <44A3A55C.10406@merlinux.de> The PyPy team is happy to announce that the first bunch of PyPy videos can now be downloaded from: http://codespeak.net/pypy/dist/pypy/doc/video-index.html The videos introduce involved people and contain different talks, tutorials and interviews such as: 1. Technical talk on the PyPy architecture, standard interpreter, translation toolchain and Just-in-time compiler at the University of Palma de Mallorca (72 min) 2. Coding discussion between Armin Rigo and Samuele Pedroni during the PyPy sprint at the University of Palma de Mallorca (40 min) 3. Core developer Holger Krekel and project manager Beatrice During explain the agile open source methods used in the PyPy project at PyCon, Dallas (26 min) 4. Core developers Michael Hudson and Christian Tismer are giving an introductory talk at PyCon, Dallas (28 min) 5. A PyPy architecture session given by core developers Holger Krekel and Armin Rigo at PyCon, Dallas (48 min) 6. A Sprint tutorial by core developer Michael Hudson who provides a detailed and hands-on overview about the architecture of PyPy, especially the translation toolchain (44 min) 7. What do you think about PyPy? Interview with American software developer Bob Ippolito at this year's PyCon, Dallas (8 min) 8. Interview with CPython core developer Tim Peters at this year's PyCon, Dallas (23 min) Some technical details: All films are in European PAL system, encoded with DivX and packed in .avi file format. The files can be downloaded using a bittorrent client. Further details regarding downloading and viewing can be found at the URL above. Have fun and don't hesitate to contact us at pypy-dev at codespeak.net if you encounter any problems or have any other comments, Best regards, Wanja Saatkamp & the PyPy team From fabiofz at gmail.com Thu Jun 29 17:17:35 2006 From: fabiofz at gmail.com (Fabio Zadrozny) Date: Thu, 29 Jun 2006 12:17:35 -0300 Subject: Pydev 1.2.1 Released Message-ID: Hi All, Pydev and Pydev Extensions 1.2.1 have been released Details on Pydev Extensions: http://www.fabioz.com/pydev Details on Pydev: http://pydev.sf.net Details on its development: http://pydev.blogspot.com Important ---------------- 1. This release is still not available in the sourceforge downloads session because of some problems at sourceforge, but it is already placed in the update sites (and should be added to the sourceforge downloads as soon as the sourceforge release works again. 2. Eclipse 3.2: The final Eclipse 3.2 should be available (according to http://eclipse.org) in 1 day. Release Highlights in Pydev Extensions: ----------------------------------------------------------------- - Bug-Fixes Release Highlights in Pydev: ---------------------------------------------- - The user is asked for which paths should be added to the system pythonpath - Go to previous method now works with decorators - Stack-trace link now opens in correct line for external files - Variables now show in the variables view while debugging - If an invalid interpreter is selected to run a file (old interpreter or wrong project type), a warning is given to the user - Ctrl+w is removed as the default for select word (the action is still there, but its keybinding is removed, so, users have to configure themselves which keybinding they want for it) - Assign to local or field variable now enters in linked mode - Added dependency to Eclipse 3.2 features, as version 1.2.0 of pydev and newer are only Eclipse 3.2 compatible. What is PyDev? --------------------------- PyDev is a plugin that enables users to use Eclipse for Python and Jython development -- making Eclipse a first class Python IDE -- It comes with many goodies such as code completion, syntax highlighting, syntax analysis, refactor, debug and many others. Cheers, -- Fabio Zadrozny ------------------------------------------------------ Software Developer ESSS - Engineering Simulation and Scientific Software http://www.esss.com.br Pydev Extensions http://www.fabioz.com/pydev Pydev - Python Development Enviroment for Eclipse http://pydev.sf.net http://pydev.blogspot.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-announce-list/attachments/20060629/733e5b45/attachment.html From t.zito at biologie.hu-berlin.de Fri Jun 30 14:52:23 2006 From: t.zito at biologie.hu-berlin.de (Tiziano Zito) Date: Fri, 30 Jun 2006 14:52:23 +0200 Subject: MDP-2.0 released Message-ID: <20060630125223.GB16597@itb.biologie.hu-berlin.de> MDP version 2.0 has been released! What is it? ----------- Modular toolkit for Data Processing (MDP) is a data processing framework written in Python. From the user's perspective, MDP consists of a collection of trainable supervised and unsupervised algorithms that can be combined into data processing flows. The base of readily available algorithms includes Principal Component Analysis, two flavors of Independent Component Analysis, Slow Feature Analysis, Gaussian Classifiers, Growing Neural Gas, Fisher Discriminant Analysis, and Factor Analysis. From the developer's perspective, MDP is a framework to make the implementation of new algorithms easier. MDP takes care of tedious tasks like numerical type and dimensionality checking, leaving the developer free to concentrate on the implementation of the training and execution phases. The new elements then automatically integrate with the rest of the library. As its user base is increasing, MDP might be a good candidate for becoming a common repository of user-supplied, freely available, Python implemented data processing algorithms. Resources --------- Download: http://sourceforge.net/project/showfiles.php?group_id=116959 Homepage: http://mdp-toolkit.sourceforge.net Mailing list: http://sourceforge.net/mail/?group_id=116959 What's new in version 2.0? -------------------------- MDP 2.0 introduces some important structural changes. It is now possible to implement nodes with multiple training phases and even nodes with an undetermined number of phases. This allows for example the implementation of algorithms that need to collect some statistics on the whole input before proceeding with the actual training, or others that need to iterate over a training phase until a convergence criterion is satisfied. The ability to train each phase using chunks of input data is maintained if the chunks are generated with iterators. Nodes that require supervised training can be defined in a very straightforward way by passing additional arguments (e.g., labels or a target output) to the 'train' method. New algorithms have been added, expanding the base of readily available basic data processing elements. MDP is now based exclusively on the NumPy Python numerical extension. -- Tiziano Zito Institute for Theoretical Biology Humboldt-Universitaet zu Berlin Invalidenstrasse, 43 D-10115 Berlin, Germany Pietro Berkes Gatsby Computational Neuroscience Unit Alexandra House, 17 Queen Square London WC1N 3AR, United Kingdom From brian at sweetapp.com Fri Jun 30 17:57:13 2006 From: brian at sweetapp.com (Brian Quinlan) Date: Fri, 30 Jun 2006 17:57:13 +0200 Subject: VPW: early registration deadline today! Message-ID: <44A549D9.4040403@sweetapp.com> What's New? =========== The deadline for early-bird registration for the Vancouver Python Workshop is today! Early-bird registration is significantly discounted over normal registration, so register now at: http://www.vanpyz.org/conference/registration.html About the Vancouver Python Workshop =================================== The conference will begin with keynote addresses on August 4st by Guido van Rossum [1] and Jim Hugunin [2]. Further talks (and tutorials for beginners) will take place on August 5th and 6th. Ian Cav?n [3] will give the closing address. The Vancouver Python Workshop is a community organized and designed for both the beginner and for the experienced Python programmer with: * tutorials for beginning programmers * advanced lectures for Python experts * case studies of Python in action * after-hours social events * informative keynote speakers More information see: http://www.vanpyz.org/conference/ or contact Brian Quinlan at: brian at sweetapp.com Vancouver ========= In addition to the opportunity to learn and socialize with fellow Pythonistas, the Vancouver Python Workshop also gives visitors the opportunity to visit one of the most extraordinary cities in the world [4]. For more information about traveling to Vancouver, see: http://www.vanpyz.org/conference/vancouver.html http://www.tourismvancouver.com http://en.wikipedia.org/wiki/Vancouver Important dates =============== Early registration (discounted): May 22nd to June 30th Normal registration: from July 1st Keynotes: August 4th Conference and tutorial dates: August 5th and 6th [1] Guido van Rossum (Google) is the inventor of Python and has managed its growth and development for more than a decade. Guido was awarded the Free Software Foundation Award in 2002 and Dr.Dobb's 1999 Excellence in Programming Award. Guido works at Google and spends half of his time on Python. [2] Jim Hugunin (Microsoft) is the creator of numerous innovations that take Python into new application domains. Jim's most recent project, IronPython integrates Python into Microsoft's .NET runtime. Jim's previous project, Jython is Python for the Java runtime and was the second production-quality implementation of Python. Before that, Jim's Numeric Python adapted Python to the needs of number crunching applications. Jim works at Microsoft adapting the .NET runtime to the needs of dynamic languages like Python. [3] Ian Cav?n is the primary developer of the Lowry Digital Images motion picture restoration system. This Python and Zope-based system has been used to restore over 150 motion pictures. Highlights include Citizen Kane, Sunset Boulevard and both the Indiana Jones and Star Wars trilogies. While Ian was Chief Scientist at Lowry Digital, his rack of computers grew from a few Macintoshes on his desktop to over six hundred Macintosh and Linux servers - at one point earning Lowry the title as the second biggest installation of parallel processing Maintoshes in the world. In 2005, Lowry Digital Images was acquired by DTS (the famous movie audio company) and renamed DTS Digital Images. The motion picture restoration system has been discussed in publications as diverse as IEEE Spectrum, USA Today, the BBC NEWS, the New York Times and Apple.com. Ian has been a Python enthusiast since 1999. [4] http://news.bbc.co.uk/2/hi/business/2299119.stm http://edition.cnn.com/2006/BUSINESS/06/15/btn.cities/index.html Cheers, Brian From travis at enthought.com Fri Jun 30 22:59:20 2006 From: travis at enthought.com (Travis N. Vaught) Date: Fri, 30 Jun 2006 15:59:20 -0500 Subject: ANN: SciPy 2006 Conference Reminder Message-ID: <44A590A8.5040705@enthought.com> The *SciPy 2006 Conference* is scheduled for Thursday and Friday, August 17-18, 2006 at CalTech with Sprints and Tutorials Monday-Wednesday, August 14-16. Conference details are at http://www.scipy.org/SciPy2006 The deadlines for submitting abstracts and early registration are approaching... Call for Presenters ------------------- If you are interested in presenting at the conference, you may submit an abstract in Plain Text, PDF or MS Word formats to abstracts at scipy.org -- the deadline for abstract submission is July 7, 2006. Papers and/or presentation slides are acceptable and are due by August 4, 2006. Registration: ------------- Early registration ($100.00) is still available through July 14. You may register online at http://www.enthought.com/scipy06. Registration includes breakfast and lunch Thursday & Friday and a very nice dinner Thursday night. After July 14, 2006, registration will cost $150.00. Tutorials and Sprints --------------------- This year the Sprints (Monday and Tuesday, August 14-15) and Tutorials (Wednesday, August 16) are no additional charge (you're on your own for food on those days, though). Remember to include these days in your travel plans. The following topics are presented as Tutorials Wednesday (more info here: http://www.scipy.org/SciPy2006/TutorialSessions): - "3D visualization in Python using tvtk and MayaVi" - "Scientific Data Analysis and Visualization using IPython and Matplotlib." - "Building Scientific Applications using the Enthought Tool Suite (Envisage, Traits, Chaco, etc.)" - "NumPy (migration from Numarray & Numeric, overview of NumPy)" The Sprint topics are under discussion here: http://www.scipy.org/SciPy2006/CodingSprints See you in August! Travis