From tim at zope.com Tue Mar 1 02:38:09 2005 From: tim at zope.com (Tim Peters) Date: Tue Mar 1 17:01:01 2005 Subject: ZODB 3.2.6 beta 1 released Message-ID: <20050301013817.454893B805B@smtp.zope.com> I'm pleased to announce the release of ZODB 3.2.6 beta 1. You can download a source tarball or Windows installer from: http://zope.org/Products/ZODB3.2 There are several critical bugfixes in this release, addressing rare problems in two major areas: - Thread and asyncore races while ZEO is attempting to make a connection, leading to connection failure and/or missed messages. - Rare cases in which FileStorage could reuse oids already assigned, leading to distinct objects with the same oid (object identifier). The primary cause was that FileStorage.restore() didn't update the storage's idea of the largest oid in use, regardless of how large an oid was passed to it. The first stage of ZRS recovery, and copyTransactionsFrom(), both rely on the .restore() method, and so both could create database copies that believed no oids had yet been assigned. A secondary cause was that a FileStorage's .index file contains a "maximum oid in the index" record, and the value in this record was believed even when it was incorrect. The primary cause was repaired by simple changes to .restore() and .store(), so that .index files with a bad max-oid record are no longer created. But there may be such databases already in existence, so the secondary cause was addressed by larger changes to ignore the max-oid record in the .index file, extracting the largest oid directly from the index instead (this is basically a BTree mapping oids to file offsets, so finding the largest key is very efficient; the separate max-oid record is really a leftover from earlier times, before a BTree was used here). Note that although ZODB 3.2.6 ignores an .index file's max-oid record, it still writes a max-oid record when it saves an .index file. This is so older ZODB releases can continue to read .index files produced by ZODB 3.2.6. See the news file for details: http://zope.org/Products/ZODB3.2/NEWS ZODB 3.2.6 can be used with Zopes in the 2.7 line, at or after Zope 2.7.3. Note that ZODB 3.2.6 does not support development on Zope 2.8, Zope X3 or Zope 3 (they require the ZODB 3.3 line). From bac at OCF.Berkeley.EDU Tue Mar 1 04:18:20 2005 From: bac at OCF.Berkeley.EDU (Brett C) Date: Tue Mar 1 17:01:01 2005 Subject: python-dev Summary for 2005-01-16 through 2005-01-31 Message-ID: <4223DEFC.3050101@ocf.berkeley.edu> ===================== Summary Announcements ===================== ----------------------------------------- School sure likes to destroy my free time ----------------------------------------- A month late, that much closer to having this hectic quarter being over. Sorry for being so delinquent with this summary but school has kept me busy and obviously the Real World has to take precedence over volunteer work. Now if I could only get paid for doing this... =) And if you hate the summaries being late, you could do it yourself. This is not meant to be a flippant comment! I am always willing to hand over development of the summaries to anyone who is willing to do a comparable job. If you are interested feel free to email me. I have now made this a permanent offer in the header in case someone comes along later and decides they want to do this. ---------------------- RSS feed now available ---------------------- Thanks entirely to one of my predecessors, A.M. Kuchling, the python-dev Summaries are available as an `RSS feed`_. The feed contains the titles of every summary and so will be updated with the newest summaries as soon as they are posted online. A full text feed will eventually be available. ---------- New format ---------- I have done a thorough restructuring of the boilerplate and the Summary Announcements section for the Summaries. The purpose of this is to make finding information in the boilerplate much easier. It also keeps consistency by sectioning off everything as in the Summary section. The other reason is for the ``contents`` directive in reST_. This will provide a more thorough table of contents for the web version of the summary at the very top of the summaries. This will allow people to jump directly to the section of the Summary they care about the most. Obviously this perk only exists in the HTML version. Lastly, the typical boilerplate for each Summary has now been moved to the bottom. This was at the request of a regular reader who I would like to keep happy. =) It also seems reasonable since once you have read through it once chances are you are not going to read it again so might as well move it out of the way. Then again I could be totally wrong about all of this and manage to alienate every person who reads the summaries regularly. =) ======= Summary ======= --------------------- Python 2.3.5 released --------------------- Consider how late this summary is I bet you already knew Python 2.3.5 was already out the door. =) With Python 2.4 out in the world this means there is a very high probability 2.3.6 will never exist and this marks the end of the 2.3 branch. Contributing threads: - `2.3.5 delayed til next week `__ - `2.3 BRANCH FREEZE imminent! `__ - `RELEASED Python 2.3.5, release candidate 1 `__ ------------------------------------------------------ Making magic type conversion methods act like __str__ ------------------------------------------------------ Walter D?rwald discovered that when you subclass 'unicode' and call unicode() on an instance of the subclass it will not call the implementation of __unicode__ of the subclass but instead will call unicode.__unicode__ . When in the same scenario with strings, though, str() calls the subclass' __str__ method. Turns out 'int' and 'float' act like 'unicode' while 'complex' acts like 'str'. So who is right? Docs say 'str' is wrong, but this is mainly an artifact of pre-2.2 inability to subclass types. Turns out 'str' is acting properly. `Patch #1109424`_ implements the proper semantics and will eventually go in for 2.5 (won't touch 2.4 since it is a semantic change). .. _Patch #1109424: http://www.python.org/sf/1109424 Contributing threads: - `__str__ vs. __unicode__ `__ --------------------------------------------- Speeding up function calls to C API functions --------------------------------------------- Neal Norwitz posted the patch found at http://www.python.org/sf/1107887 to help with function calls to C code. The idea is to expand the family of values used in PyMethodDef.ml_flags for argument types to include specifying the number of minimum and maximum number of arguments. This can provide a speedup by allowing the eval loop to unpack everything in the C stack and skip packing arguments in a tuple. But not everyone was sure it was worth the extra need to specify all of this for functions. Regardless of that and any other objections this would be more of a Python 3000 thing. Which also led to a quick shift in topic to how Python 3.0 will be developed. Guido said it would be piece-meal. Read http://joelonsoftware.com/articles/fog0000000069.html for why. Contributing threads: - `Speed up function calls `__ - `Moving towards Python 3.0 `__ ------------------------------------------------------------ How to handle memory allocation with the presence of threads ------------------------------------------------------------ Evan Jones has been working on a patch to allow the garbage collector to free up memory of small objects. This led him to ask questions in terms of memory usage in the face of threading at the C level. While the GIL usually needs to be held for any operation that touches Python code, he was not sure if this held for the memory API. Tim Peters clarified all of this by pointing out the documentation in the C API manual about the GIL. In a nutshell the memory API is not exempt from needing to hold the GIL, so hold it. It was also pointed out there was a bunch of code to allow people to mix usage of PyMem_* functions with PyObject_* functions. That was purely done for backwards-compatibility back in the day. Mixing these two APIs for memory is very bad. Don't do it! Contributing threads: - `Improving the Python Memory Allocator `__ - `Python Interpreter Thread Safety? `__ -------------------------- Slicing iterators rejected -------------------------- Nick Coghlan proposed allowing iterators to be sliced liked other sequence types. That way something like ``enumerate("ABCD")[1:]`` would work. But Guido rejected it. With itertools.islice existence it does not provide new functionality. Plus "Iterators are for single sequential access" according to Guido, and thus should not be confused with sequences. Contributing threads: - `Allowing slicing of iterators `__ =============== Skipped Threads =============== - redux: fractional seconds in strptime - how to test behavior wrt an extension type? - Strange segfault in Python threads and linux kernel 2.6 - Unix line endings required for PyRun* breaking embedded Python - Zen of Python - PyCon: The Spam Continues ;-) - Patch review: [ 1094542 ] add Bunch type to collections module ======== Epilogue ======== ------------ Introduction ------------ This is a summary of traffic on the `python-dev mailing list`_ from January 16, 2005 through January 31, 2005. It is intended to inform the wider Python community of on-going developments on the list on a semi-monthly basis. An archive_ of previous summaries is available online. An `RSS feed`_ of the titles of the summaries is available. You can also watch comp.lang.python or comp.lang.python.announce for new summaries (or through their email gateways of python-list or python-announce, respectively, as found at http://mail.python.org). This is the fifty-seventh summary written by Brett Cannon (grad schools are actually crazy enough to accept me =). To contact me, please send email to brett at python.org. 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 penny helps so even a small donation with a credit card, check, or by PayPal helps. If you are looking for a way to expand your knowledge of Python's development and inner-workings, consider writing the python-dev Summaries yourself! I am willing to hand over the reins to someone who is willing to do a comparable or better job of writing the Summaries. If you are interested, please email me at brett at python.org. -------------------- Commenting on Topics -------------------- To comment on anything mentioned here, just post to `comp.lang.python`_ (or email python-list@python.org which is a gateway to the newsgroup) with a subject line mentioning what you are discussing. All python-dev members are interested in seeing ideas discussed by the community, so don't hesitate to take a stance on something. And if all of this really interests you then get involved and join `python-dev`_! ------------------------- How to Read the Summaries ------------------------- The in-development version of the documentation for Python can be found at http://www.python.org/dev/doc/devel/ and should be used when looking up any documentation for new code; otherwise use the current documentation as found at http://docs.python.org/ . PEPs (Python Enhancement Proposals) are located at http://www.python.org/peps/ . To view files in the Python CVS online, go to http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/python/ . Reported bugs and suggested patches can be found at the SourceForge_ project page. Please note that this summary is written using reStructuredText_. Any unfamiliar punctuation is probably markup for reST_ (otherwise it is probably regular expression syntax or a typo =); you can safely ignore it. I do suggest learning reST, though; it's simple and is accepted for `PEP markup`_ and can be turned into many different formats like HTML and LaTeX. Unfortunately, even though reST is standardized, the wonders of programs that like to reformat text do not allow me to guarantee you will be able to run the text version of this summary through Docutils_ as-is unless it is from the `original text file`_. .. _python-dev: http://www.python.org/dev/ .. _SourceForge: http://sourceforge.net/tracker/?group_id=5470 .. _python-dev mailing list: http://mail.python.org/mailman/listinfo/python-dev .. _comp.lang.python: http://groups.google.com/groups?q=comp.lang.python .. _PEP Markup: http://www.python.org/peps/pep-0012.html .. _Docutils: http://docutils.sf.net/ .. _reST: .. _reStructuredText: http://docutils.sf.net/rst.html .. _PSF: .. _Python Software Foundation: http://python.org/psf/ .. _last summary: http://www.python.org/dev/summary/2005-01-01_2005-01-15.html .. _original text file: http://www.python.org/dev/summary/2005-01-16_2005-01-31.ht .. _archive: http://www.python.org/dev/summary/ .. _RSS feed: http://www.python.org/dev/summary/channews.rdf From olsongt at verizon.net Tue Mar 1 04:16:27 2005 From: olsongt at verizon.net (Grant Olson) Date: Tue Mar 1 17:01:02 2005 Subject: [ANN] pyasm 0.1 - x86 assembler for Python Message-ID: <0ICN00BR3L8Y0C85@vms046.mailsrvcs.net> pyasm 0.1 - x86 assembler for Python This release is for early adopters only. It is not properly packaged and doesn't have very good documentation. It is however a functional assembler that should be of interest to some people. Current output targets include Windows-style COFF files that can be subsequently linked to produce executables, and more interestingly output can target memory in an existing Python process and binding within a Python namespace. That's right, you can now generate dynamic inline assembly straight from Python! A simple hello world function implementation is listed at the end of this message. The files test\test_object_creation.py and test\test_winmem.py in the distribution probably give the best examples of usage. Future plans include targeting ELF file formats and Linux memory at runtime, and of course real documentation. The package is available at: http://mysite.verizon.net/olsongt/pyasm-0.1.zip Enjoy, -Grant ############################################# # PYTHON HELLO WORLD IN ASSEMBLY ############################################# import pyasm.winmem from pyasm.x86asm import assembler, CDECL from pyasm.x86cpToMemory import CpToMemory nonePointer = id(None) a = assembler() a.ADStr("hello_world", "Hello world!\n\0") a.AP("test_print", CDECL) a.AddLocal("self") a.AddLocal("args") #a.AI("INT 3") a.AI("PUSH hello_world") a.AI("CALL PySys_WriteStdout") #a.AI("INT 3") a.AI("MOV EAX,%s" % id(None)) a.AI("ADD [EAX],0x1") #refcount manipulation a.EP() mem = CpToMemory(a.Compile(),pyasm.winmem) mem.MakeMemory() mem.BindPythonFunctions(globals()) test_print() # calls the assembly function From paul at prescod.net Tue Mar 1 19:36:02 2005 From: paul at prescod.net (Paul Prescod) Date: Wed Mar 2 16:47:26 2005 Subject: Vancouver Python User Group Reminder Message-ID: <4224B612.10605@prescod.net> Tuesday March 1st is the first Tuesday of the month and the Vancouver Python, Zope and Plone user's group will have its monthly meeting at ActiveState (580 Granville) at 7:00. The topic is GNU Radio and Python. GNU Radio is a free software implementation of Software Defined Radio. "Imagine if the only thing stopping your handheld PDA from simultaneously being a GPS receiver, phone, radio or miniature TV was your willingness to download and install some free software program." "We're pretty much turning all hardware problems into software problems," Blossom says. "We want to facilitate evolution in the radio arena." "A software radio is a radio whose channel modulation waveforms are defined in software. That is, waveforms are generated as sampled digital signals, converted from digital to analog via a wideband DAC and then possibly upconverted from IF to RF. The receiver, similarly, employs a wideband Analog to Digital Converter (ADC) that captures all of the channels of the software radio node. The receiver then extracts, downconverts and demodulates the channel waveform using software on a general purpose processor." GNU Radio is a hybrid C++ / Python system. The primitive signal processing blocks are implemented in C++. All graph construction, policy decisions and non-performance critical operations are performed in Python. All of the underlying runtime system is manipulatable from Python. Upcoming talks: April 5, 2005 Large Scale Python From python-url at phaseit.net Wed Mar 2 00:50:31 2005 From: python-url at phaseit.net (Cameron Laird) Date: Wed Mar 2 16:47:27 2005 Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Mar 1) Message-ID: Editor's note: "Python-URL!" is minimal. It doesn't support advertisements, we never allow the subscribers' addresses to be used for other purposes, we don't claim infallibility, and we even take a couple weeks off some years. Occasionally, though--not as often as the US enters a shooting war, say, but more frequently than IBM hires a new CEO--we pause for a sufficiently important correction or announcement. This year, we apologize for inexplicably changing Oliver Schoenborn's name a couple of weeks ago to "Philip". Also, has anyone indexed Python bloggers (that is, webloggers of things Pythonic)? QOTW: "... more like generator included." -- Efrat Regev, on the proper characterization of our language of choice VOTW: Steves break ground on VOTWs. Notice the surrounding serious discussions on what exactly makes for an improvement in the language. http://groups-beta.google.com/group/comp.lang.python/msg/1c39adfc9408e225 http://groups-beta.google.com/group/comp.lang.python/msg/1fb3718aee61e4a7 Andrew Kuchling's explanation of PyZeroconf is exemplary: http://www.amk.ca/python/zeroconf All those calendrical/temporal things you need that the standard datetime module doesn't supply? Gustavo Niemeyer supplies (most of) them: https://moin.conectiva.com.br/DateUtil Laugh? Cry? Appeal to the UN? Not only can Python define "(almost) arbitrary infix operators", but you can parametrize their production, with "probably the best Python hack *ever*": http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/384122 Python 3000 might be real, and relatively free of trauma: http://mail.python.org/pipermail/python-dev/2005-January/051363.html Graybeard Steve Holden rambles through the sort of speech that commentators usually take as a sign of breakdown. In this case, though, the delivery has the virtues of: accuracy; and relevance: http://groups-beta.google.com/group/comp.lang.python/msg/9eb125ba50863d57 The state of the art of use of decorations continues to advance: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/133cf2869cc6907d/ Pythoneers, too, can solve polynomials (although probably not without obscure astronomical, linguistic, artistic, ... references): http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/4a4db288862f890f/ ======================================================================== Everything Python-related you want is probably one or two clicks away in these pages: Python.org's Python Language Website is the traditional center of Pythonia http://www.python.org Notice especially the master FAQ http://www.python.org/doc/FAQ.html PythonWare complements the digest you're reading with the marvelous daily python url http://www.pythonware.com/daily Mygale is a news-gathering webcrawler that specializes in (new) World-Wide Web articles related to Python. http://www.awaretek.com/nowak/mygale.html While cosmetically similar, Mygale and the Daily Python-URL are utterly different in their technologies and generally in their results. comp.lang.python.announce announces new Python software. Be sure to scan this newsgroup weekly. http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python.announce Brett Cannon continues the marvelous tradition established by Andrew Kuchling and Michael Hudson of intelligently summarizing action on the python-dev mailing list once every other week. http://www.python.org/dev/summary/ The Python Package Index catalogues packages. http://www.python.org/pypi/ The somewhat older Vaults of Parnassus ambitiously collects references to all sorts of Python resources. http://www.vex.net/~x/parnassus/ Much of Python's real work takes place on Special-Interest Group mailing lists http://www.python.org/sigs/ The Python Business Forum "further[s] the interests of companies that base their business on ... Python." http://www.python-in-business.org Python Success Stories--from air-traffic control to on-line match-making--can inspire you or decision-makers to whom you're subject with a vision of what the language makes practical. http://www.pythonology.com/success The Python Software Foundation (PSF) has replaced the Python Consortium as an independent nexus of activity. It has official responsibility for Python's development and maintenance. http://www.python.org/psf/ Among the ways you can support PSF is with a donation. http://www.python.org/psf/donate.html Kurt B. Kaiser publishes a weekly report on faults and patches. http://www.google.com/groups?as_usubject=weekly%20python%20patch Cetus collects Python hyperlinks. http://www.cetus-links.org/oo_python.html Python FAQTS http://python.faqts.com/ The Cookbook is a collaborative effort to capture useful and interesting recipes. http://aspn.activestate.com/ASPN/Cookbook/Python Among several Python-oriented RSS/RDF feeds available are http://www.python.org/channews.rdf http://bootleg-rss.g-blog.net/pythonware_com_daily.pcgi http://python.de/backend.php For more, see http://www.syndic8.com/feedlist.php?ShowMatch=python&ShowStatus=all The old Python "To-Do List" now lives principally in a SourceForge reincarnation. http://sourceforge.net/tracker/?atid=355470&group_id=5470&func=browse http://python.sourceforge.net/peps/pep-0042.html The online Python Journal is posted at pythonjournal.cognizor.com. editor@pythonjournal.com and editor@pythonjournal.cognizor.com welcome submission of material that helps people's understanding of Python use, and offer Web presentation of your work. del.icio.us presents an intriguing approach to reference commentary. It already aggregates quite a bit of Python intelligence. http://del.icio.us/tag/python *Py: the Journal of the Python Language* http://www.pyzine.com Archive probing tricks of the trade: http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python&num=100 http://groups.google.com/groups?meta=site%3Dgroups%26group%3Dcomp.lang.python.* Previous - (U)se the (R)esource, (L)uke! - messages are listed here: http://www.ddj.com/topics/pythonurl/ (requires subscription) http://groups-beta.google.com/groups?q=python-url+group:comp.lang.python*&start=0&scoring=d& http://purl.org/thecliff/python/url.html (dormant) or http://groups.google.com/groups?oi=djq&as_q=+Python-URL!&as_ugroup=comp.lang.python Suggestions/corrections for next week's posting are always welcome. E-mail to should get through. To receive a new issue of this posting in e-mail each Monday morning (approximately), ask to subscribe. Mention "Python-URL!". -- The Python-URL! Team-- Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and sponsor the "Python-URL!" project. From Fernando.Perez at colorado.edu Wed Mar 2 09:56:21 2005 From: Fernando.Perez at colorado.edu (Fernando Perez) Date: Wed Mar 2 16:47:27 2005 Subject: [ANN] IPython 0.6.12 is out. Message-ID: <42257FB5.5060006@colorado.edu> Hi all, I'm glad to announce the release of IPython 0.6.12. This is mainly a bugfix release. IPython's homepage is at: http://ipython.scipy.org and downloads are at: http://ipython.scipy.org/dist I've provided RPMs (for Python 2.3 and 2.4, built under Fedora Core 3), plus source downloads (.tar.gz). We now also have a native win32 installer which should work correctly for both Python 2.3 and 2.4. Debian, Fink and BSD packages for this version should be coming soon, as the respective maintainers (many thanks to Jack Moffit, Andrea Riciputi and Dryice Liu) have the time to follow their packaging procedures. Many thanks to Enthought for their continued hosting support for IPython, and to all the users who contributed ideas, fixes and reports. WHAT is IPython? ---------------- 1. An interactive shell superior to Python's default. IPython has many features for object introspection, system shell access, and its own special command system for adding functionality when working interactively. 2. An embeddable, ready to use interpreter for your own programs. IPython can be started with a single call from inside another program, providing access to the current namespace. 3. A flexible framework which can be used as the base environment for other systems with Python as the underlying language. Release notes ------------- As always, the NEWS file can be found at http://ipython.scipy.org/NEWS, and the full ChangeLog at http://ipython.scipy.org/ChangeLog. * New hooks system. This can be considered the first step in cleaning up ipython to expose its internals in a more rational manner. IPython/hooks.py contains the hooks which are meant to be easily overridden by users for customizations. Currently only the editor hook (called by %edit) exists, but a framework is in place. * Fix a subtle bug with corrupted init files under win32, thanks to Ville Vainio for trackign this. * Fix for Debian, which recently removed the profiler module from the default python distribution and moved it to non-free. * Allow empty and left-aligned output prompts, if users so want them. * New %time magic to time statements and expressions. It reports CPU and wall clock time. * Other small fixes and cleanups. Enjoy, and as usual please report any problems. Regards, Fernando. From sridharinfinity at gmail.com Wed Mar 2 13:05:36 2005 From: sridharinfinity at gmail.com (Sridhar R) Date: Wed Mar 2 16:47:28 2005 Subject: Online Programming Contest (Python solutions accepted) Message-ID: <1109765136.792740.206230@f14g2000cwb.googlegroups.com> Hi, We, the students of CEG, Anna University [1] are organizing an online programming contest as part of aBaCus [2] 2005. The contest itself will start on 6th March 2005 at 1:00 pm IST [3] and will end after 5 hours. You have to solve the problems posted at the start of the contest. Teams ranking high will be awarded the prizes. As a special note, inspite of C,C++ and Java we also allow Python [4] this time. So we hope a lot of Pythonistas also could attend the contest for fun. :-) For more details about the contest, visit the contest page -- http://203.197.138.181/OPC -- [1] http://en.wikipedia.org/wiki/Anna_University [2] http://www.annauniv.edu/abacus/ [3] Indian Standard Time (IST) is the time zone for India. It is 5 hours and 30 minutes ahead of GMT/UTC. [4] http://www.python.org -- Sridhar Ratna - http://srid.bsdnerds.org From michaels at rd.bbc.co.uk Wed Mar 2 13:05:46 2005 From: michaels at rd.bbc.co.uk (Michael Sparks) Date: Wed Mar 2 16:47:29 2005 Subject: ANNOUNCE: Kamaelia 0.1.1 Released Message-ID: Kamaelia 0.1.1 has been released! This is the initial release version of Kamaelia. What is it? =========== Kamaelia is a collection of Axon components designed for network protocol experimentation in a single threaded, select based environment. Axon components are python generators are augmented by inbox and outbox queues (lists) for communication in a communicating sequential processes (CSP) like fashion. The architecture is specifically designed to try and simplify the process of designing and experimenting with new network protocols in real environments. This release contains components allowing the creation of TCP based clients and servers, and includes a few (very) simple protocol handlers to show usage. Other components include vorbis decode and playback, asynchronous file reading, and equivalents of "tee" and "strings". (Writing systems is much like building unix pipelines, hence the need for similar tools) Examples ======== Sample echo server: (default generator callback style) from Kamaelia.SimpleServerComponent import SimpleServer from Axon.Component import component, scheduler class EchoProtocolCB(component): def mainBody(self): if self.dataReady("inbox"): data = self.recv("inbox") self.send(data,"outbox") if self.dataReady("control"): data = self.recv("control") return 0 return 1 SimpleServer(protocol=EchoProtocolCB).activate() scheduler.run.runThreads(slowmo=0) Sample echo server: (Normal generator style) from Kamaelia.SimpleServerComponent import SimpleServer from Axon.Component import component, scheduler class EchoProtocol(component): def main(self): while 1: if self.dataReady("inbox"): data = self.recv("inbox") self.send(data,"outbox") if self.dataReady("control"): data = self.recv("control") return yield 1 SimpleServer(protocol=EchoProtocol).activate() scheduler.run.runThreads(slowmo=0) The two styles are provided for those comfortable with generators and those who aren't. The plain generator form can be particularly useful in simplifying error handling (see Kamaelia.Internet.TCPClient for an example). The callback form is useful for implementing components in other languages - eg pyrex. Requirements ============ * Python 2.3 or higher recommended, though please report any bugs with 2.2. * Axon (Any released version, 1.0.3 recommended, 1.0.4 when released) * vorbissimple (if you want to use the vorbis decode component) (Both Axon and vorbissimple are separate parts of the Kamaelia project, and available at the same download location - see below) Platforms ========= Kamaelia has been used successfully under both Linux and Windows (2000 and ME). (This has not yet been tested with Axon running on series 60 mobiles since to the select module hasn't been released for Series 60 mobiles yet) Where can I get it? =================== Web pages are here: http://kamaelia.sourceforge.net/Docs/ http://kamaelia.sourceforge.net/ (includes info on mailing lists) ViewCVS access is available here: http://cvs.sourceforge.net/viewcvs.py/kamaelia/ Licensing ========= Kamaelia is released under the Mozilla tri-license scheme (MPL/ GPL/ LGPL). Specifically you may choose to accept either the Mozilla Public License 1.1, the GNU General Public License 2.0 or the Lesser General Public License 2.1. Proprietary terms and conditions available upon request. Best Regards, Michael. -- Michael Sparks, Senior R&D Engineer, Digital Media Group Michael.Sparks@rd.bbc.co.uk British Broadcasting Corporation, Research and Development Kingswood Warren, Surrey KT20 6NP This message (and any attachments) may contain personal views which are not the views of the BBC unless specifically stated. From fabioz at esss.com.br Wed Mar 2 20:26:30 2005 From: fabioz at esss.com.br (Fabio Zadrozny) Date: Thu Mar 3 14:47:22 2005 Subject: ANN: PyDev 0.9.1 released Message-ID: <42261366.3020602@esss.com.br> Hi All, PyDev - Python IDE (Python development enviroment for Eclipse) version 0.9.1 has just been released. You can check the homepage (http://pydev.sourceforge.net/) or my blog (http://pydev.blogspot.com/) for more details. ------------------------------------------------------ COMMENTS ON RELEASE: Content assistant improvements: - assign content assistant when assigned to variable strips the "get"; - move imports content assistant should be improved to move import closer to existant import and not to top of file; - Icons added to them; Others: - Ctrl+Shift+O: if no selection: Organizes all global imports from the file (sorts alphabetically); - Ctrl+Shift+O: if some line selection: sorts alphabetically the lines selected; - Ctrl+Shift+F: if no selection: Formats all code; - Ctrl+Shift+F: if some line selection: Formats selected code; - PyLint only blocks interface on "update results"; - the namespace in debug mode is not polluted anymore (Scott Schleiser provided the patch); - The PYTHONPATH used for debug now should be the same used in run. - Editor preferences Code Completion: - get parameters in code completion; - builtins like ' ', {}, [] should bring correct suggestions; - relative imports; - other bug-fixes; ------------------------------------------------------ Regards, Fabio Zadrozny ------------------------------------------------------ Software Developer ESSS - Engineering Simulation and Scientific Software www.esss.com.br From richardjones at optushome.com.au Thu Mar 3 06:00:45 2005 From: richardjones at optushome.com.au (Richard Jones) Date: Thu Mar 3 14:47:23 2005 Subject: Roundup Issue Tracker release 0.8.2 Message-ID: <200503031600.45594.richardjones@optushome.com.au> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Roundup is a simple-to-use and -install issue-tracking system with command-line, web and e-mail interfaces. It is based on the winning design from Ka-Ping Yee in the Software Carpentry "Track" design competition. This 0.8.2 release adds one feature and fixes some bugs: Feature: - - roundup-server automatically redirects from trackers list to the tracker page if there is only one tracker Fixed: - - added content to ZRoundup refresh.txt file (sf bug 1147622) - - fix invalid reference to csv.colon_separated - - correct URL to What's New in setup.py meta-data - - change AUTOCOMMIT=OFF to AUTOCOMMIT=0 for MySQL (sf bug 1143707) - - compile message objects in 'setup.py build' - - use backend datatype for journal timestamps in RDBMSes - - fixes to the "Using an external password validation source" customisation example (sf bugs 1153640 and 1155108) If you're upgrading from an older version of Roundup you *must* follow the "Software Upgrade" guidelines given in the maintenance documentation. Roundup requires python 2.3 or later for correct operation. To give Roundup a try, just download (see below), unpack and run:: python demo.py Source and documentation is available at the website: http://roundup.sourceforge.net/ Release Info (via download page): http://sourceforge.net/projects/roundup Mailing lists - the place to ask questions: http://sourceforge.net/mail/?group_id=31577 About Roundup ============= Roundup manages a number of issues (with flexible properties such as "description", "priority", and so on) and provides the ability to: (a) submit new issues, (b) find and edit existing issues, and (c) discuss issues with other participants. The system will facilitate communication among the participants by managing discussions and notifying interested parties when issues are edited. One of the major design goals for Roundup that it be simple to get going. Roundup is therefore usable "out of the box" with any python 2.1+ installation. It doesn't even need to be "installed" to be operational, though a disutils-based install script is provided. It comes with two issue tracker templates (a classic bug/feature tracker and a minimal skeleton) and five database back-ends (anydbm, sqlite, metakit, mysql and postgresql). -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (GNU/Linux) iD8DBQFCJpn9rGisBEHG6TARAiB/AJ9WYEySDgCMSrtHvkJmPZmCqOtXvQCaA1dv rLGfz4J5KWsxp5dcWeMfiNg= =zks0 -----END PGP SIGNATURE----- From s.varun at gmail.com Thu Mar 3 08:33:34 2005 From: s.varun at gmail.com (Varun) Date: Thu Mar 3 14:47:23 2005 Subject: Python Online Programming Contest In-Reply-To: References: Message-ID: <1109835214.901405.260290@z14g2000cwz.googlegroups.com> Hi, The results of OPC (online programming contest) is out. The statistics of python usage is available at http://www.samhita.info/opc/status.php Regards, -OPC Team From sridharinfinity at gmail.com Thu Mar 3 14:25:28 2005 From: sridharinfinity at gmail.com (Sridhar R) Date: Thu Mar 3 14:47:24 2005 Subject: Online Programming Contest (Python solutions accepted) In-Reply-To: References: Message-ID: <1109856328.089421.220340@g14g2000cwa.googlegroups.com> One important note about the contest: Top performers would be considered to join the 'Circle of Innovation' at Amazon India [1]. You may also have a chance to be considered for Internships/Externships/Work at Amazon India! Visit the contest page for more details: ** http://203.197.138.181/OPC ** [1] http://india.amazon.com/circle.php -- Sridhar Ratna - http://srid.bsdnerds.org From jmiller at stsci.edu Thu Mar 3 18:07:00 2005 From: jmiller at stsci.edu (Todd Miller) Date: Thu Mar 3 21:00:33 2005 Subject: ANN: numarray-1.2.3 Message-ID: <1109869619.19608.16.camel@halloween.stsci.edu> numarray-1.2.3 is a bugfix release for numarray-1.2.2 which fixes a problem with universal function setup caching which noticeably impaired 1.2.2 small array performance. Get it if you are new to numarray, haven't upgraded to 1.2.2 yet, or use a lot of small arrays. numarray-1.2.3 is here: http://sourceforge.net/project/showfiles.php?group_id=1369&package_id=32367 Thanks to Ralf Juengling for quietly reporting this and working with me to identify and fix the problem. From aahz at pythoncraft.com Fri Mar 4 02:52:36 2005 From: aahz at pythoncraft.com (Aahz) Date: Fri Mar 4 03:09:53 2005 Subject: BayPIGgies: March 10, 7:30pm (FINAL MEETING AT STANFORD) Message-ID: <20050304015236.GA16494@panix.com> WARNING: the last meeting of BayPIGgies at Stanford is currently scheduled for March. Our host, Danny Yoo, is leaving Stanford, and we need to find a new location. If you wish to assist with the search, please join the BayPIGgies mailing list. Meanwhile, let's all give hearty thanks to Danny for helping us find a stable meeting location for so long! The next meeting of BayPIGgies will be Thurs, March 10 at 7:30pm. Donovan Preston will lead a discussion about using Python with OS X, including integrating with PyObjC and GNUStep. BayPIGgies meetings are in Stanford, California. For more information and directions, see http://www.baypiggies.net/ Before the meeting, we may meet at 6pm for dinner in downtown Palo Alto. Discussion of dinner plans is handled on the BayPIGgies mailing list. Advance notice: The April 14 meeting agenda has not been set. Please send e-mail to baypiggies@baypiggies.net if you want to suggest an agenda -- and a meeting place! -- Aahz (aahz@pythoncraft.com) <*> http://www.pythoncraft.com/ "The joy of coding Python should be in seeing short, concise, readable classes that express a lot of action in a small amount of clear code -- not in reams of trivial code that bores the reader to death." --GvR From pycon at python.org Fri Mar 4 04:46:39 2005 From: pycon at python.org (Steve Holden) Date: Fri Mar 4 15:16:47 2005 Subject: Final PyCon Keynote from Google Speaker Message-ID: <20050304034639.C6E5A1E4004@bag.python.org> Dear Python Colleague: I am happy to say that we have now completed the PyCon DC 2005 keynote speaker lineup, and that the final keynote will be given by Greg Stein, an engineering manager wirh Google's Blogger group, who will be speaking on "Python at Google" Greg is also known to many in the open source world as the chairman of the Apache Foundation, and he is a significant contributor to Subversion, WebDAV and Python. With the opening keynote from a Microsoft speaker, the second keynote from Guido van Rossum (the inventor of Python) and the last keynote from Google, PyCon is beginning to demonstrate just how significant Python has become in the modern world of software and Internet services. I hope you will join me in DC from March 23-25, and possibly attend the four-day sprint being held immediately before the conference. Pre- conference registration is available via http://www.python.org//pycon/2005/register.html This is going to be a great opportunity for all those with an interest in Python to see just how far the language has come. regards Steve Holden Chairman, PyCON DC 2005 -- PyCon DC 2005: The third Python Community Conference http://www.pycon.org/ http://www.python.org/pycon/ The scoop on Python implementations and applications From pyvm at mailsnare.com Sat Mar 5 21:59:14 2005 From: pyvm at mailsnare.com (Antonio Cavallo) Date: Sun Mar 6 14:35:05 2005 Subject: pyvm - a portable python virtual machine Message-ID: pyvm 1.4.9 ========== "More batteries to your python" Introduction: pyvm is a relocatable python binary distribution containing several modules. Its main aim is to provide all this without requiring root access. Features: * pyqt (widget set) * pygtk (widget set) * nummarray (array and matematical) * pyqwt (plot widget in qt) * matplotlib (plot function similar tomatlab) * Imaging (a digital imaging library) * elementree (xml library) * and many many more. Download: http://pyvm.sourceforge.net Copyright: MIT for the building script, other licence terms apply to the singular package (see the docs) Author: Antonio Cavallo pyvm@mailsnare.com From bac at OCF.Berkeley.EDU Mon Mar 7 04:25:18 2005 From: bac at OCF.Berkeley.EDU (Brett C.) Date: Mon Mar 7 14:59:51 2005 Subject: python-dev Summary for 2005-02-01 through 2005-02-14 Message-ID: <422BC99E.8000705@ocf.berkeley.edu> [The HTML version of this Summary is available at http://www.python.org/dev/summary/2005-02-01_2005-02-14.html] ===================== Summary Announcements ===================== -------------------------- Giving myself a gold watch -------------------------- As some of you may have already heard or read, I am retiring from writing the python-dev Summaries after sending out the March 16 - 31 summary. It has been a long time coming and it required a kick in the ass (graciously supplied by Steve Holden) to finally make me let go of doing this and let someone else take over. The joy of the Summaries has dwindled over the 2.5 years I have been doing this. I was only doing them to be helpful. But now I would rather put my time and effort I have for Python into coding work rather than the Summaries. I would like to think I can be more productive and helpful as a programmer than a writer. And so there will only be three more regular Summaries after this written by yours truly. But do not worry about the Summaries dying! When I announced this (see http://mail.python.org/pipermail/python-dev/2005-March/051823.html for the thread that led to this), three individuals stepped forward to pick up the work once I step down. Steven Bethard, Tony Meyer, and Tim Lesher are being considered for picking up where I left off. There is the possibility that they will actually write the Summaries together as a team. As for my last Summary, expect a more expository one with my random thoughts on PyCon, Python, and anything else that comes to mind that I feel like using this space to abuse. You have Scott David Daniels to thank for that format idea for my final hurrah. ------------ Go to PyCon! ------------ I just booked my hotel room for PyCon_. You going to be there so I can shake your hand, thanking you for supporting Python? .. _PyCon: http://www.pycon.org/ ========= Summaries ========= ------------------------------------- Python Security Response Team founded ------------------------------------- For those of you who don't know, a security hole was found in XML-RPC servers in the stdlib that use register_instance; details at http://www.python.org/security/PSF-2005-001/ . In response to this, Guido has now formed the 'Python Security Response Team`_. This group's job is to respond to any and all security issues that come up as quickly as possible and to issue a patch in a timely fashion. .. _Python Security Response Team: http://www.python.org/security/ Contributing threads: - `Wanted: members for Python Security Response Team `__ ------------------------------ Licensing issues in the stdlib ------------------------------ It was reported to python-dev that 'profiler' and 'md5 do not conform to the Debian Free Software Guidelines. The specific issue was derived works using Python. This is obviously not a good thing. Things are in the works, though. The hope is to get the copyrights signed over and all of this cleared up. At worst the modules will be replaced with code licensed to the Python Software Foundation. If you care to accelerate this by writing replacements please do so. Contributing threads: - `license issues with profiler.py and md5.h/md5c.c `__ --------------------------------------------------- Replacing list of constants with tuple of constants --------------------------------------------------- note: written by Tim Lesher Skip Montanaro noticed that Raymond Hettinger had made a number of library checkins replacing lists with tuples in constructs like ``for a in [1, 2, 3]:`` and ``if a in [1, 2, 3]:``. He agreed with the motivation (the peephole optimizer can convert a tuple of constants into a single constant, eliminating construction time), but questioned hardcoding the optimization. Instead, he suggested teaching the optimizer about "throwaway" lists in ``for`` and ``if`` statements. Guido agreed with the sentiment. Raymond accepted the suggestion, and checked in code to implement it. There were some issues, though, but those will be covered in the next Summary. Contributing threads: - `list of constants -> tuple of constants `__ ------------------- Complex I/O problem ------------------- note: written by Tim Lesher Neal Becker asked why the result of printing a complex number is not an acceptable input to constructing a complex. For example, ``print complex(2,2)`` yields ``'(2+2j)'``; but ``complex('(2+2j)')`` throws a ValueError. A. M. Kuchling responded that many types, including 'str' and 'file' share this behavior, and that in any event, parsing string representations is a job more suited to 'eval' than to classes themselves. Guido `reiterated the rules`_ for str() (used by 'print') and repr(). Since both complex.__str__ and complex.__repr__ pass the eval() test, he pronounced it fine. .. _reiterated the rules: http://mail.python.org/pipermail/python-dev/2005-February/051390.html Contributing threads: - `complex I/O problem `__ ----------------------------- 2.3.5 and 2.4.1 release plans ----------------------------- note: written by Steve Bethard Anthony Baxter, Alex Martelli and Tim Peters squelched a bug where deepcopy failed on instances of types that lacked an ``__mro__`` attribute. The patch was pretty straight-forward (use inspect.getmro instead of cls.__mro__), but coming up with a test case was hard -- creating a Python object that doesn't have an __mro__ takes some complicated C code like that of Zope's ExtensionClass. Fortunately, John Lenton's c.l.py_ suggestion to simply raise an AttributeError for __mro__ in __getattribute__ properly tickled the bug, and 2.3.5 was cleared for release. Contributing Threads: - `2.3.5 and 2.4.1 release plans `__ ------------------------------------------------------------------------------------- Clarification sought about including a multidimensional array object into Python core ------------------------------------------------------------------------------------- note: written by Steve Bethard Travis Oliphant and others looked into the issues of including an array object (like that of Numeric or numarray) in Python core. Guido seemed hesitant, concerned that as Numeric_ and numarray_ continue to co-exist, the array object wouldn't be the "best of breed" (one of the requirements for inclusion in Python core). Travis explained that most of the disagreements are over ufunc objects, not the basic array object itself, so it wouldn't be unreasonable to include the array object without the ufunc object if necessary. There was also some suggestion that, at least for basic arithmetic operations, Numeric and numarray mostly agree, so a stripped-down ufunc object for these operations might also be inclusion-worthy. In an aside that grew decidedly un-aside-ish, Paul F. Dubois, Guido and David Ascher explained why matrix should not inherit from arrayobject -- this would complicate __new__ and cause confusion when mixed operands (arrays and matrices) are given to a binary op like multiplication. .. _Numeric: http://numeric.scipy.org/ .. _numarray: http://www.stsci.edu/resources/software_hardware/numarray Contributing Threads: - `Clarification sought about including a multidimensional array object into Python core `__ - `Numeric life as I see it `__ -------------------------------------- More licensing issues - redistribution -------------------------------------- note:: written by Tony Meyer As most people know, one of the major changes between the Windows builds of Python 2.3 and 2.4 is that 2.4 is built with VC7, rather than VC6. One of the consequences of this change is that 2.4 links with the Microsoft DLL msvcr71.dll, which only some people have, rather than msvcr.dll, which pretty much all Windows users have. The Windows Python 2.4 distribution installs msvcr71.dll, so it's there when needed. However, those building frozen applications (e.g. with py2exe) need to ensure that their users have msvcr71.dll. After going through the EULA's for both the commercial and free-to-use Microsoft compilers, it seems that redistributing mscvr71.dll is acceptable, if the re-distributor owns a copy of the commercial (not free) compiler, includes an EULA agreement in one of various forms (e.g. 'click-wrap'), and follows various other minor conditions (note that just about every message in this thread contains "IANAL, but"). This leaves those without VC7 unable to redistribute msvcr71.dll, unless, as some suggested, distributing a frozen Python application can be considered as redistributing Python (and the various other minor conditions are followed). In an interesting twist, it appears that the official Windows Python 2.4 distribution is in breach of the EULA, as a 'click-wrap' license is required, and is not present. This element of the thread died without reaching a conclusion, however. If you *are* a lawyer (with expertise in this area), and would like to comment, then please do! Contributing threads: - `Is msvcr71.dll re-redistributable? `__ ---------------------------------- Avoiding signs in memory addresses ---------------------------------- note:: written by Tony Meyer Troels Walsted Hansen pointed out that builtin_id() can return a negative number in Python 2.4 (and can generate a warning in 2.3). Some 2.3 modules (but no 2.4 ones) have code to work around this, but Troels suggested that a better solution would be to simply have builtin_id() return an unsigned long integer. The consensus was that this would be a good idea, although nothing has been checked in yet, and so this will probably stagnate without someone submitting a patch (or at least a bug report). Contributing threads: - `builtin_id() returns negative numbers `__ =============== Skipped Threads =============== + Son of PEP 246, redux + Re: PEP 246: LiskovViolation as a name + Re: [Python-checkins] python/dist/src/Python future.c, 2.14, 2.15 + Other library updates + Re: python/dist/src/Lib rfc822.py,1.78,1.79 + Patch review: [ 1098732 ] Enhance tracebacks and stack traces with vars + Re: [Python-checkins] python/dist/src/Python compile.c, 2.343, 2.344 + Re: [Python-checkins] python/dist/src/Lib xmlrpclib.py, 1.38, 1.39 + ViewCVS on SourceForge is broken ======== Epilogue ======== ------------ Introduction ------------ This is a summary of traffic on the `python-dev mailing list`_ from February 01, 2005 through February 14, 2005. It is intended to inform the wider Python community of on-going developments on the list on a semi-monthly basis. An archive_ of previous summaries is available online. An `RSS feed`_ of the titles of the summaries is available. You can also watch comp.lang.python or comp.lang.python.announce for new summaries (or through their email gateways of python-list or python-announce, respectively, as found at http://mail.python.org). This is the fifty-eighth summary written by Brett Cannon (3 more after this one). To contact me, please send email to brett at python.org. 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 penny helps so even a small donation with a credit card, check, or by PayPal helps. If you are looking for a way to expand your knowledge of Python's development and inner-workings, consider writing the python-dev Summaries yourself! I am willing to hand over the reins to someone who is willing to do a comparable or better job of writing the Summaries. If you are interested, please email me at brett at python.org. -------------------- Commenting on Topics -------------------- To comment on anything mentioned here, just post to `comp.lang.python`_ (or email python-list@python.org which is a gateway to the newsgroup) with a subject line mentioning what you are discussing. All python-dev members are interested in seeing ideas discussed by the community, so don't hesitate to take a stance on something. And if all of this really interests you then get involved and join `python-dev`_! ------------------------- How to Read the Summaries ------------------------- The in-development version of the documentation for Python can be found at http://www.python.org/dev/doc/devel/ and should be used when looking up any documentation for new code; otherwise use the current documentation as found at http://docs.python.org/ . PEPs (Python Enhancement Proposals) are located at http://www.python.org/peps/ . To view files in the Python CVS online, go to http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/python/ . Reported bugs and suggested patches can be found at the SourceForge_ project page. Please note that this summary is written using reStructuredText_. Any unfamiliar punctuation is probably markup for reST_ (otherwise it is probably regular expression syntax or a typo =); you can safely ignore it. I do suggest learning reST, though; it's simple and is accepted for `PEP markup`_ and can be turned into many different formats like HTML and LaTeX. Unfortunately, even though reST is standardized, the wonders of programs that like to reformat text do not allow me to guarantee you will be able to run the text version of this summary through Docutils_ as-is unless it is from the `original text file`_. .. _python-dev: http://www.python.org/dev/ .. _SourceForge: http://sourceforge.net/tracker/?group_id=5470 .. _python-dev mailing list: http://mail.python.org/mailman/listinfo/python-dev .. _c.l.py: .. _comp.lang.python: http://groups.google.com/groups?q=comp.lang.python .. _PEP Markup: http://www.python.org/peps/pep-0012.html .. _Docutils: http://docutils.sf.net/ .. _reST: .. _reStructuredText: http://docutils.sf.net/rst.html .. _PSF: .. _Python Software Foundation: http://python.org/psf/ .. _last summary: http://www.python.org/dev/summary/2005-01-16_2005-01-31.html .. _original text file: http://www.python.org/dev/summary/2005-02-01_2005-02-14.ht .. _archive: http://www.python.org/dev/summary/ .. _RSS feed: http://www.python.org/dev/summary/channews.rdf From FBatista at uniFON.com.ar Mon Mar 7 14:30:24 2005 From: FBatista at uniFON.com.ar (Batista, Facundo) Date: Mon Mar 7 14:59:52 2005 Subject: PyAr - Python Argentina 7th Meeting, this Thursday Message-ID: The Argentine Python User Group, PyAr, will have its seventh meeting this Thursday, January 10th at 7:00pm. Agenda ------ Despite our agenda tends to be rather open, this time we would like to cover these topics: - See how the code evolved from the ideas generated in of our first sprint. - Define how we will promote ourselves in PyCon 2005. Where ----- We're meeting at Hip Hop Bar, Hip?lito Yirigoyen 640, Ciudad de Buenos Aires, starting at 19hs. We will be in the back room, so please ask the barman for us. About PyAr ---------- For more information on PyAr see http://pyar.decode.com.ar (in Spanish), or join our mailing list (Also in Spanish. For instructions see http://pyar.decode.com.ar/Members/ltorre/listademail) We meet on the second Thursday of every month. . Facundo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ADVERTENCIA. La informaci?n contenida en este mensaje y cualquier archivo anexo al mismo, son para uso exclusivo del destinatario y pueden contener informaci?n confidencial o propietaria, cuya divulgaci?n es sancionada por la ley. Si Ud. No es uno de los destinatarios consignados o la persona responsable de hacer llegar este mensaje a los destinatarios consignados, no est? autorizado a divulgar, copiar, distribuir o retener informaci?n (o parte de ella) contenida en este mensaje. Por favor notif?quenos respondiendo al remitente, borre el mensaje original y borre las copias (impresas o grabadas en cualquier medio magn?tico) que pueda haber realizado del mismo. Todas las opiniones contenidas en este mail son propias del autor del mensaje y no necesariamente coinciden con las de Telef?nica Comunicaciones Personales S.A. o alguna empresa asociada. Los mensajes electr?nicos pueden ser alterados, motivo por el cual Telef?nica Comunicaciones Personales S.A. no aceptar? ninguna obligaci?n cualquiera sea el resultante de este mensaje. Muchas Gracias. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-announce-list/attachments/20050307/6d290627/attachment.htm From johan at gnome.org Mon Mar 7 15:46:25 2005 From: johan at gnome.org (Johan Dahlin) Date: Mon Mar 7 17:38:31 2005 Subject: ANNOUNCE: PyGTK 2.6.0 Message-ID: <422C6941.6030107@gnome.org> I am pleased to announce version 2.6.0 of the Python bindings for GTK. The new release is available from ftp.gnome.org as and its mirrors as soon as its synced correctly: http://ftp.gnome.org/pub/GNOME/sources/pygtk/2.6/pygtk-2.6.0.tar.gz Major changes: Gtk+ 2.6 API, new classes: GtkAboutDialog, GtkIconView, GtkCellView, GtkFileChooserButton. GInterfaces can now be implemented. Overriding GTK+ virtual methods is now supported. Better support for GMainloop support, so you don't need to run gtk.main to be able to use signals and gobjects. Deprecated gtk.TRUE,gtk.FALSE, gtk.idle_add, gtk.idle_remove, gtk.timeout_add, gtk.timeout_remove, gtk.input_add, gtk.input_add_full, gtk.input_remove Thanks to (this release would not have been possible without you!): Hans Breuer, Gustavo J. A. M. Carneiro, Raphael Kubo da Costa John Ehresman, John Finlay, Cedric Gustin, James Henstridge Adam Hooper, Alan Horkan, Mark McLoughlin, Christian Robottom Reis Manish Singh and Gian Mario Tagliaretti What's new since 2.5.4: - win32 fixes (Cedric Gustin) - remove unnecessary casting (Manish Singh) - updated examples (Johan) Blurb: GTK is a toolkit for developing graphical applications that run on POSIX systems such as Linux, Windows and MacOS X (provided that the X server for MacOS X has been installed). It provides a comprehensive set of GUI widgets, can display Unicode bidi text. It links into the Gnome Accessibility Framework through the ATK library. PyGTK provides a convenient wrapper for the GTK+ library for use in Python programs, and takes care of many of the boring details such as managing memory and type casting. When combined with PyORBit and gnome-python, it can be used to write full featured Gnome applications. Like the GTK+ library itself PyGTK is licensed under the GNU LGPL, so is suitable for use in both free software and proprietary applications. It is already in use in many applications ranging from small single purpose scripts up to large full features applications. PyGTK requires GTK+ >= 2.6 and Python >= 2.3 to build. Bug reports, as always, should go to Bugzilla; check out http://pygtk.org/developer.html and http://pygtk.org/feedback.html for links to posting and querying bug reports for PyGTK. -- Johan Dahlin johan@gnome.org From python-url at phaseit.net Mon Mar 7 20:29:11 2005 From: python-url at phaseit.net (Cameron Laird) Date: Tue Mar 8 16:13:09 2005 Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Mar 7) Message-ID: QOTW: "Really, of course, the only things you need to make explicit are the ones that readers don't understand." -- Steve Holden "Working with unicode objects in Python is so transparent, it's easy to forget about what a C extension would likely want." -- Kevin Dangoor "You take leadership in a small area, and you keep it as long as you care to." -- Max M, on the slender rewards of open-source authorship Even with everything else going on at PyCon2005--dynamite speakers, thrilling Sprints, and so on--the most newsworthy event of the week likely will be revelations about IronPython's schedule. When will it be possible to create .NET services in Python? Keep in mind that PythonNet already lets Python applications be .NET clients: http://www.zope.org/Members/Brian/PythonNet/index_html http://python.org/pycon/2005/keynotes.html Brett C. begins his farewell tour from python-dev summation: http://groups-beta.google.com/group/comp.lang.python/msg/99e13efba90ca590 Python has a Security Response Team, python-dev has new summarizers, CPython might soon have a new "throwaway list" optimization, and those only hint at the range of progress python-dev has made in the last fortnight: http://www.python.org/dev/summary/2005-02-01_2005-02-14.html Skip Montanaro and Diez Roggisch write with precision on use of urllib, and particularly its user-agent refinement: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/535ada773d6f6227/ Python is a good extension language, in the sense that an application or parts of it can be made scriptable under the control of an end-user. It's easy to do so--but be careful to promote "safe plugging": http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/620954f7d9767af6/ Jeff Epler exhibits a definition which automates remote control of Tkinter processes: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/2ac9a3f8309d183a/ ChaosKCW offers timings and brief commentary on alternative wrappings of SQL access with iterables and generators: http://groups-beta.google.com/group/comp.lang.python/msg/7ff516d7d9387dad Python is flexible. You can create applications, you can work interactively, you can interactively manage applications, you can create applications that offer interaction under programmatic control, you can ...: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/76826e3be040d63d/ One of the fundamentals of Python's origin was that the language play well with others (an innovation, in that context). Among the many instances of teamwork between Python and other languages that turn up daily is Python's success in development of assemblers: http://groups-beta.google.com/group/comp.lang.python.announce/browse_thread/thread/ce3329a8e408c202/ ======================================================================== 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 Brett Cannon continues the marvelous tradition established by Andrew Kuchling and Michael Hudson of intelligently summarizing action on the python-dev mailing list once every other week. http://www.python.org/dev/summary/ The Python Package Index catalogues packages. http://www.python.org/pypi/ The somewhat older Vaults of Parnassus ambitiously collects references to all sorts of Python resources. http://www.vex.net/~x/parnassus/ Much of Python's real work takes place on Special-Interest Group mailing lists http://www.python.org/sigs/ The Python Business Forum "further[s] the interests of companies that base their business on ... Python." http://www.python-in-business.org Python Success Stories--from air-traffic control to on-line match-making--can inspire you or decision-makers to whom you're subject with a vision of what the language makes practical. http://www.pythonology.com/success The Python Software Foundation (PSF) has replaced the Python Consortium as an independent nexus of activity. It has official responsibility for Python's development and maintenance. http://www.python.org/psf/ Among the ways you can support PSF is with a donation. http://www.python.org/psf/donate.html Kurt B. Kaiser publishes a weekly report on faults and patches. http://www.google.com/groups?as_usubject=weekly%20python%20patch Cetus collects Python hyperlinks. http://www.cetus-links.org/oo_python.html Python FAQTS http://python.faqts.com/ The Cookbook is a collaborative effort to capture useful and interesting recipes. http://aspn.activestate.com/ASPN/Cookbook/Python Among several Python-oriented RSS/RDF feeds available are http://www.python.org/channews.rdf http://bootleg-rss.g-blog.net/pythonware_com_daily.pcgi http://python.de/backend.php For more, see http://www.syndic8.com/feedlist.php?ShowMatch=python&ShowStatus=all The old Python "To-Do List" now lives principally in a SourceForge reincarnation. http://sourceforge.net/tracker/?atid=355470&group_id=5470&func=browse http://python.sourceforge.net/peps/pep-0042.html The online Python Journal is posted at pythonjournal.cognizor.com. editor@pythonjournal.com and editor@pythonjournal.cognizor.com welcome submission of material that helps people's understanding of Python use, and offer Web presentation of your work. del.icio.us presents an intriguing approach to reference commentary. It already aggregates quite a bit of Python intelligence. http://del.icio.us/tag/python *Py: the Journal of the Python Language* http://www.pyzine.com Archive probing tricks of the trade: http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python&num=100 http://groups.google.com/groups?meta=site%3Dgroups%26group%3Dcomp.lang.python.* Previous - (U)se the (R)esource, (L)uke! - messages are listed here: http://www.ddj.com/topics/pythonurl/ (requires subscription) http://groups-beta.google.com/groups?q=python-url+group:comp.lang.python*&start=0&scoring=d& http://purl.org/thecliff/python/url.html (dormant) or http://groups.google.com/groups?oi=djq&as_q=+Python-URL!&as_ugroup=comp.lang.python Suggestions/corrections for next week's posting are always welcome. E-mail to should get through. To receive a new issue of this posting in e-mail each Monday morning (approximately), ask to subscribe. Mention "Python-URL!". -- The Python-URL! Team-- Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and sponsor the "Python-URL!" project. From bac at OCF.Berkeley.EDU Tue Mar 8 04:17:12 2005 From: bac at OCF.Berkeley.EDU (Brett C.) Date: Tue Mar 8 16:13:10 2005 Subject: python-dev Summary for 2005-02-15 through 2005-02-28 Message-ID: <422D1938.3010206@ocf.berkeley.edu> [The HTML version of this Summary is available at http://www.python.org/dev/summary/2005-02-15_2005-02-28.html] ===================== Summary Announcements ===================== ------------------------ Status of the candidates ------------------------ It looks like all three candidates for taking over the Summaries (Tony Meyer, Steven Bethard, and Tim Lesher) have agreed to actually do the Summaries together. SO no break in the Summaries and I don't have to agonize over choosing a successor. ----------- PyCon Looms ----------- PyCon_ is coming soon! .. _PyCon: http://www.pycon.org/ ========= Summaries ========= ------------- PEP movements ------------- `PEP 309`_ is now final since the 'functional' module has now been checked into Python. .. _PEP 309: http://www.python.org/peps/pep-0309.html Contributing threads: - `PEP 309 enhancements `__ - `PEP 309 `__ ------------------------------------------------------ Indices for slices other objects with __int__ not okay ------------------------------------------------------ Travis Oliphant asked if it would be possible to patch slicing so that any object that defines __int__ could be used. Guido didn't like this idea, though. Float, for instance, has __int__ defined. Guido admitted he "unfortunately copied a design mistake from C here". He said he might add a __trunc__ magic method in Python 3000 for objects that really can't be viewed as an int but are willing to have data loss to give one. Contributing threads: - `Fixing _PyEval_SliceIndex so that integer-like objects can be used `__ - `Fix _PyEval_SliceIndex (Take two) `__ -------------------------------------------- Why can't ``class C(): pass`` be acceptable? -------------------------------------------- No reason. =) So as of Python 2.5 it is acceptable to have empty parentheses for class definitions. It does create a classic class and not a new-style one. Contributing threads: - `Requesting that a class be a new-style class `__ ---------------------------------- What basestring is truly meant for ---------------------------------- What is basestring for? According to Guido it is purely for unicode and str to inherit from to help with checks in code where either type is acceptable. It is *not* meant to be used as a base class for any other classes. Contributing threads: - `UserString `__ ------------------------------------------------------ Quickly opening an SF bug/patch in Firefox/Thunderbird ------------------------------------------------------ Martin v. L?wis posted a way to use the DictionarySearch_ plug-in for Mozilla to launch a browser with the highlighted patch/bug #. See the email for the thread on how to get it to work. .. _DictionarySearch: http://dictionarysearch.mozdev.org/download.php/http://downloads.mozdev.org/dictionarysearch/dictionarysearch_0.8.xpi Contributing threads: - `Quick access to Python bug reports in Thunderbird `__ -------------------------------- Optimizing ``x in [1, 2, 3]`` -------------------------------- Raymond Hettinger has been trying to teach the peepholer some new tricks to optimize ``x in [1, 2, 3]`` and the like into a faster operation. Initially he got it to change the list to a tuple. He then tried turning the list into a frozenset, but that had the unforeseen issue of breaking semantics since it then required the object being checked for to be hashable. So Raymond suggested introducing a SearchSet that tried the comparison as a frozenset first, and upon failure of hashing, to old way of just looking at each item in the list. But this seemed like overkill since most lists would be small; probably usually under 4 items. But Fredrik Lundh suggested expanding it to ``x == 1 or x == 2 or x == 3``. This seemed like a performance boost when the items of the list were lists since the COMPARE_OP opcode special-cases comparing ints. But for other instances it probably isn't worth it unless more special-casing is done in the opcodes. Contributing threads: - `Prospective Peephole Transformation `__ ------------------ A DupStore opcode? ------------------ Raymond Hettinger suggested a new opcode called DupStore that would replace load;store opcode pairs. Guido questioned if this was leading down a road of adding too much extra code for little benefit. Off this a discussion about speeding up frame allocation, an area viewed as needing some optimization, started up. Contributing threads: - `Store x Load x --> DupStore `__ --------------------------------------- Slow unit tests should be distinguished --------------------------------------- note:: written by Tony Meyer Guido clarified that unit tests should distinguish between "regular" tests and slow ones by use of the unit test 'resource' keys, as a result of Peter ?strand asking for comments about `bug #1124637`_, which complained that test_subprocess is too slow. The suggested solution was to add another resource for subprocess, so that generally a quick version would run, but a longer, more thorough test would run with -uall or -usubprocess. Along the way, it was discovered that the reason that Windows already ran test_subprocess quickly was because there was code special-casing it to be fast. The resource solution was checked in, although Windows was left special-cased. .. _bug #1124637: http://www.python.org/sf/1124637 Contributing threads: - `[ python-Bugs-1124637 ] test_subprocess is far too slow (fwd) `__ ----------------------------------- Clarification of the '5 for 1' deal ----------------------------------- note:: written by Tony Meyer It seems that the offer that some python-dev'ers have made to review a patch in exchange for reviews of five (originally ten) other patches is finally being taken up by various people. However, python-dev traffic has increased with patch and bug reviews, and the question was posed whether reviews should be posted in general, or only for this specific deal. The answer is that the comments should also be entered via the SourceForge tracking system, but that a brief message covering a bunch (rather than individual) of reviews is acceptable for python-dev, at least for now. New reports should almost never be posted to python-dev, however, and should be entered via the tracking system. This offer isn't official policy, but a reference to it will be added to Brett's summary of the development process. However, people should also remember that it may take developers some time to find time to deal with reviews, and so have patience after posting their review. Contributing threads: - `discourage patch reviews to the list? `__ - `Some old patches `__ - `Five review rule on the /dev/ page? `__ =============== Skipped Threads =============== + pymalloc on 2.1.3 + Exceptions *must*? be old-style classes? + subclassing PyCFunction_Type + Windows Low Fragementation Heap yields speedup of ~15% + string find(substring) vs. substring in string + Some old patches + Comment regarding PEP 328 ======== Epilogue ======== ------------ Introduction ------------ This is a summary of traffic on the `python-dev mailing list`_ from February 15, 2005 through February 28, 2005. It is intended to inform the wider Python community of on-going developments on the list on a semi-monthly basis. An archive_ of previous summaries is available online. An `RSS feed`_ of the titles of the summaries is available. You can also watch comp.lang.python or comp.lang.python.announce for new summaries (or through their email gateways of python-list or python-announce, respectively, as found at http://mail.python.org). This is the fifty-nineth summary written by Brett Cannon (two more to go!). To contact me, please send email to brett at python.org. 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 penny helps so even a small donation with a credit card, check, or by PayPal helps. If you are looking for a way to expand your knowledge of Python's development and inner-workings, consider writing the python-dev Summaries yourself! I am willing to hand over the reins to someone who is willing to do a comparable or better job of writing the Summaries. If you are interested, please email me at brett at python.org. -------------------- Commenting on Topics -------------------- To comment on anything mentioned here, just post to `comp.lang.python`_ (or email python-list@python.org which is a gateway to the newsgroup) with a subject line mentioning what you are discussing. All python-dev members are interested in seeing ideas discussed by the community, so don't hesitate to take a stance on something. And if all of this really interests you then get involved and join `python-dev`_! ------------------------- How to Read the Summaries ------------------------- The in-development version of the documentation for Python can be found at http://www.python.org/dev/doc/devel/ and should be used when looking up any documentation for new code; otherwise use the current documentation as found at http://docs.python.org/ . PEPs (Python Enhancement Proposals) are located at http://www.python.org/peps/ . To view files in the Python CVS online, go to http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/python/ . Reported bugs and suggested patches can be found at the SourceForge_ project page. Please note that this summary is written using reStructuredText_. Any unfamiliar punctuation is probably markup for reST_ (otherwise it is probably regular expression syntax or a typo =); you can safely ignore it. I do suggest learning reST, though; it's simple and is accepted for `PEP markup`_ and can be turned into many different formats like HTML and LaTeX. Unfortunately, even though reST is standardized, the wonders of programs that like to reformat text do not allow me to guarantee you will be able to run the text version of this summary through Docutils_ as-is unless it is from the `original text file`_. .. _python-dev: http://www.python.org/dev/ .. _SourceForge: http://sourceforge.net/tracker/?group_id=5470 .. _python-dev mailing list: http://mail.python.org/mailman/listinfo/python-dev .. _c.l.py: .. _comp.lang.python: http://groups.google.com/groups?q=comp.lang.python .. _PEP Markup: http://www.python.org/peps/pep-0012.html .. _Docutils: http://docutils.sf.net/ .. _reST: .. _reStructuredText: http://docutils.sf.net/rst.html .. _PSF: .. _Python Software Foundation: http://python.org/psf/ .. _last summary: http://www.python.org/dev/summary/2005-02-01_2005-02-14.html .. _original text file: http://www.python.org/dev/summary/2005-02-15_2005-02-28.ht .. _archive: http://www.python.org/dev/summary/ .. _RSS feed: http://www.python.org/dev/summary/channews.rdf From ianb at colorstudy.com Tue Mar 8 06:38:07 2005 From: ianb at colorstudy.com (Ian Bicking) Date: Tue Mar 8 16:13:10 2005 Subject: Chicago Python Group, Thurs March 10 Message-ID: <422D3A3F.50509@colorstudy.com> The Chicago Python User Group, ChiPy, will have its next meeting on Thursday, March 10, starting at 7pm. For more information on ChiPy see http://chipy.org Presentations ------------- This week we will have two presentations. Robert Ramsdell will talk about SimPy. SimPy (Simulation in Python) is an object-oriented, process-based discrete-event simulation language based on standard Python. It 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. Ian Bicking will be presenting on WSGI, WSGIKit, and Python web programming. WSGI is a new Python standard for interfacing between web servers (like Apache or Twisted) and web applications. WSGIKit is a reimplementation of Webware for Python using a series of WSGI components. He will be talking about its design and utilization of WSGI to create cross-framework libraries. Location -------- This month we will be having our first suburban meeting, in Downer's Grove: Acxiom 3333 Finley Road Downer's Grove Near the intersection of I-355 and Buttefield Road. Convenient to Fry's! Parking is plentiful. Some people are carpooling from the city -- contact the mailing list if you are interested.chiPy@lonelylion.com About ChiPy ----------- We meet once amonth, on the second Thursday of the month. If you can't come this month, please join our mailing list: http://lonelylion.com/mailman/listinfo/chipy From ryan at rfk.id.au Tue Mar 8 14:40:05 2005 From: ryan at rfk.id.au (Ryan Kelly) Date: Tue Mar 8 16:13:11 2005 Subject: ANN: PyEnchant 1.1.0 Message-ID: <1110289205.14810.9.camel@mango> I'm pleased to announce the release of PyEnchant version 1.1.0. This release includes several major changes and additions of functionality: * Shiny new sourceforge site: http://pyenchant.sourceforge.net * Preliminary support for input/output with unicode objects as well as standard python strings * Windows installer now comes with MySpell as the default instead of ISpell, which generally gives better results. This backend is compatible with dictionaries from the OpenOffice.org project. ISpell support is also still present * The enchant.tokenize package provides functions for splitting text into its component words * The enchant.utils.SpellChecker class implements a high-level spellchecking loop over a chunk of text Unfortunately I dont have much experience with unicode so the preliminary support for it might be a little flaky. Anyone who can help with testing this out, would be very gratefully appreciated. Cheers, Ryan About: ------- Enchant (http://www.abisource.com/enchant/) is the spellchecking package behind the AbiWord word processor, is being considered for inclusion in the KDE office suite, and is proposed as a FreeDesktop.org standard. It's completely cross-platform because it wraps the native spellchecking engine to provide a uniform interface. PyEnchant brings this simple, powerful and flexible spellchecking engine to Python: http://pyenchant.sourceforge.net/ Current Version: 1.1.0 Licence: LGPL with exemptions, as per Enchant itself -- Ryan Kelly http://www.rfk.id.au | This message is digitally signed. Please visit ryan@rfk.id.au | http://www.rfk.id.au/ramblings/gpg/ for details -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: This is a digitally signed message part Url : http://mail.python.org/pipermail/python-announce-list/attachments/20050309/474d7909/attachment-0001.pgp From cjw at sympatico.ca Tue Mar 8 23:58:48 2005 From: cjw at sympatico.ca (Colin J. Williams) Date: Wed Mar 9 15:17:28 2005 Subject: Announcement: PyMatrix-0.0.1a Released Message-ID: <422E2E28.9050009@sympatico.ca> PyMatrix is a package to provide access to the functionality of matrix algebra. This package is currently based on numarray. It includes a statistics module which includes a basic analysis of variance. In the future it is hoped to enhance the generality of the divide operation, to add the transcendental functions as methods of the matrix class and to improve the documentation. The expectation is that Numeric3 will eventually replace numarray and that this will necessitate some changes to PyMatrix Downloads in the form of a Windows Installer (Inno) and a zip file are available at: http://www3.sympatico.ca/cjw/PyMatrix An /Introduction to PyMatrix/ is available: http://www3.sympatico.ca/cjw/PyMatrix/IntroToPyMatrix.pdf Information on the functions and methods of the matrix module is given at: http://www3.sympatico.ca/cjw/PyMatrix/Doc/matrix-summary.html Colin W. From olsongt at verizon.net Wed Mar 9 00:59:01 2005 From: olsongt at verizon.net (Grant Olson) Date: Wed Mar 9 15:17:28 2005 Subject: [ANN] pyasm 0.2 - dynamic x86 assembler for python Message-ID: <0ID200E2Q5FNVNU1@vms048.mailsrvcs.net> PyASM by Grant Olson ============================================= PyASM is a dynamic x86 assembler for python. By "dynamic", I mean that it can be used to generate inline assembly functions in python at runtime without requiring object file generation or linkage. New in version 0.2 ------------------ + Linux Support. Will work in Linux environments as well as Windows. + Simplified Interface. You only need to use one function to generate code. + Preliminary Documentation. More information and downloads are available on my homepage: http://mysite.verizon.net/olsongt ################################# ## helloWorld.py ## assembly hello world script ################################# from pyasm import pyasm pyasm(globals(),r""" !CHARS hello_str 'Hello world!\n\0' !PROC hello_world PYTHON !ARG self !ARG args PUSH hello_str CALL PySys_WriteStdout ADD ESP, 0x4 MOV EAX,PyNone ADD [EAX],1 !ENDPROC """) hello_world() From agreen at cirrustech.com.au Wed Mar 9 01:46:24 2005 From: agreen at cirrustech.com.au (Alan Green) Date: Wed Mar 9 15:17:29 2005 Subject: Reminder: Sydney Python Meetup - March 10 Message-ID: <422E4760.5050109@cirrustech.com.au> The Sydney Python Meetup is on again tomorrow, Thursday March 10, at 6:30pm. The topic is web application frameworks, and we are covering four different approaches to building web applications in Python. What: Sydney Python Meetup "Web Application Frameworks" Speakers: Casey Whitelaw speaking on CGI Mark Rees on WSGI Andy Todd on Quixote Yours Truly on CherryPy When: 6:30pm, presentations commencing at 7:00pm Thursday, March 10 Where: James Squire Brewhouse 22 The Promenade King St Wharf Sydney, NSW The presentations will begin at 7:00 and finish at 8:00. Feel free to stay and discuss the relative merits of those frameworks and other Pythonic topics. Meals, snacks and drinks are available from the bar. Further details and RSVP at: http://python.meetup.com/96/events/4239674/ -- Alan Green (agreen@cirrustech.com.au) Cirrus Technologies Pty. Ltd. http://www.cirrustech.com.au +61 2 9299 3544 (w) +61 2 9299 5950 (f) From aahz at pythoncraft.com Wed Mar 9 15:40:21 2005 From: aahz at pythoncraft.com (Aahz) Date: Wed Mar 9 15:40:54 2005 Subject: BayPIGgies: March 10, 7:30pm (FINAL MEETING AT STANFORD) Message-ID: <20050309144021.GA471@panix.com> WARNING: the last meeting of BayPIGgies at Stanford is currently scheduled for March. Our host, Danny Yoo, is leaving Stanford, and we need to find a new location. If you wish to assist with the search, please join the BayPIGgies mailing list. Meanwhile, let's all give hearty thanks to Danny for helping us find a stable meeting location for so long! The next meeting of BayPIGgies will be Thurs, March 10 at 7:30pm. Donovan Preston will lead a discussion about using Python with OS X, including integrating with PyObjC and GNUStep. BayPIGgies meetings are in Stanford, California. For more information and directions, see http://www.baypiggies.net/ Before the meeting, we may meet at 6pm for dinner in downtown Palo Alto. Discussion of dinner plans is handled on the BayPIGgies mailing list. Advance notice: The April 14 meeting agenda has not been set. Please send e-mail to baypiggies@baypiggies.net if you want to suggest an agenda -- and a meeting place! -- Aahz (aahz@pythoncraft.com) <*> http://www.pythoncraft.com/ "The joy of coding Python should be in seeing short, concise, readable classes that express a lot of action in a small amount of clear code -- not in reams of trivial code that bores the reader to death." --GvR From fuzzyman at gmail.com Wed Mar 9 17:48:02 2005 From: fuzzyman at gmail.com (Fuzzyman) Date: Thu Mar 10 16:52:26 2005 Subject: [ANN] ConfigObj Update and New PythonUtils Package Message-ID: <1110386882.391186.99100@z14g2000cwz.googlegroups.com> ConfigObj has had another update - now version 3.3.0 Several of the Voidspace PythonUtils modules have been packaged together as the 'Voidspace Pythonutils Package'. This makes it easier to release packages that depend on ConfigObj and the other modules. This update includes several important new features and bugfixes. New features include - string interpolation similar to ConfigParser, unicode support for reading and writing of config files, and a validation schema for validating config files. The validation schema is implemented using validate.py, which is co-written by Mark Andrews and maintained at http://www.la-la.com (although included in all the distributions). The unicode support will recognise and preserve the UTF-8 BOM when reading/writing files. Check out the docs for full details of the changes and how they work. Homepage : http://www.voidspace.org.uk/py?thon/configobj.html For downloading, see the download section of the homepage. NEW ConfigObj API Docs Online : http://www.voidspace.org.uk/py?thon/configob-api What is ConfigObj ================== A python module (class) for ultra simple reading and writing of simple config files, including config files with sections. Designed to allow the greatest flexibility in the config files it will read (and your users will create). Many flexible features - but you don't need to use them ! What's New ? ============= Changes in the new version : 2005/03/01 Version 3.3.0b Requires listquote 1.2.0 - which is improved/optimised Requires caseless 2.2.0 which has support for unicode Adding support for validation using the configspec To be done with an external validator. (Validator class created with help of Mark Andrews) This means added methods/attributes : parseconfigspec method stripconfigspec method validate method __configspec__ attribute BOM attribute Experimental unicode internally. 'encoding' and 'backup_encoding' keywords added 'lists' keyword added - can turn off list handling (lists are left as strings) A ConfigObj can be created by passing in a dictionary Added a __repr__ method for the ConfigObj configspec can now be a filename (or StringIO instance...) - including for the write method Now raises a TypeError rather than a KeyError if you pass in invalid options writein can now return a config file as a list of lines if no filename is set duplicate keys/sections in writein now raise 'duplicate' errors, rather than 'conspecerror' String interpolation from the 'default' section - using '%(keyword)s' format - similar to ConfigParser Attribute access as well as dictionary syntax Added a test for lists Coerce sections created as dictionaries to caselessDict (bug fix) Escaped '&mjf-lf;' and '&mjf-quot;' in unquoted values are converted (bug fix) Bug fixed in configspec with section files (bug fix) Bug fix in reporting of duplicate sections with configspec. (bug fix) Fixed bugs in sectionfiles with 'configspec_only' (errors in the empty last section would be missed) (bug fix) Bug fix in __buildconfigspec (bug fix) Improved support for '/*... */' in the writein method (bug fix) Fixed typo in verify and reset methods (bug fix) configspec is no longer destroyed for flatfiles (bug fix) Missing keys and Extra keys errors the wrong way round in write method (bug fix) Plus other minor bugfixes, simplifications and optimisations The next version will have some refactoring to use more reg-exes in parsing (I've had to succomb and import re for string interpolation so I might as well make better use of it) and improvements to the error system. *NEW* Voidspace PythonUtils Package Version 0.1.0 1st March 2005 http://www.voidspace.org.uk/python/pythonutils.html The Voidspace Pythonutils package is a simple way of installing the Voidspace collection of modules. For programs that use ConfigObj (which also requires caseless and listquote), it is simpler to install this package than to use the modules separately. This makes it simpler to distribute programs that depend on ConfigObj, without you having to distribute ConfigObj as well. Of course all the modules are useful in their own right. The modules included are : * ConfigObj - simple config file handling * caseless - case insensitive datatypes and sorting * listquote - list and element handling * validate - schema validation system * StandOut - flexible output object (simple logging and verbosity control) * pathutils - for working with paths and files * cgiutils - cgi helpers Regards, Fuzzyman http://www.voidspace.org.uk/python/index.shtml From anthony at computronix.com Wed Mar 9 18:46:15 2005 From: anthony at computronix.com (Anthony Tuininga) Date: Thu Mar 10 16:52:26 2005 Subject: cx_bsdiff 1.1 Message-ID: <422F3667.8020505@computronix.com> What is cx_bsdiff? bsdiff is a very simple Python extension module that allows Python to perform the same tasks as the bsdiff utility available from http://www.daemonology.net/bsdiff and runs on any platform on which Python runs. Where do I get it? http://starship.python.net/crew/atuining What's new? 1) This is the first release of this project. I have used it at our company for a couple of years now and found it quite useful. I have written a script that accepts a source and target directory and performs a diff between the two, storing the binary differences in a pickled file which can then be used to reconstitute the target directory given the source directory and the patch file. I am willing to make this available if there is enough interest. -- Anthony Tuininga anthony@computronix.com Computronix Distinctive Software. Real People. Suite 200, 10216 - 124 Street NW Edmonton, AB, Canada T5N 4A3 Phone: (780) 454-3700 Fax: (780) 454-3838 http://www.computronix.com From michi at zeroc.com Thu Mar 10 04:52:31 2005 From: michi at zeroc.com (Michi Henning) Date: Thu Mar 10 16:52:27 2005 Subject: ANNOUNCE: Ice 2.1 released Message-ID: Hi, we've just released a new version of Ice, with nice new goodies and even better performance. Here is the official announcement. Enjoy! Cheers, Michi. -- Michi Henning Ph: +61 4 1118-2700 ZeroC, Inc. http://www.zeroc.com ZeroC, Inc. is pleased to announce the availability of the Internet Communications Engine (Ice), version 2.1.0. Changes in Ice since version 2.0.0 include: An implementation of IceSSL for Java. Support for bi-directional connections without using a router. A fast and lightweight new file patching service, IcePatch2. Many performance improvements. Easy RPM installation for Linux. Improved Windows installer. Numerous other improvements and bug fixes. For a detailed description of Ice, please have a look at http://www.zeroc.com/ice.html. For a comparison of Ice and CORBA, please see http://www.zeroc.com/iceVsCorba.html. In addition to traditional proprietary licensing models for commercial customers, Ice is also freely available as Open Source under the terms of the GNU General Public License (GPL). You can download the complete Ice source and documentation from http://www.zeroc.com/download.html. From fuzzyman at gmail.com Thu Mar 10 11:34:52 2005 From: fuzzyman at gmail.com (Fuzzyman) Date: Thu Mar 10 16:52:28 2005 Subject: [ANN] Pythonutils updates - approx, approxClientproxy, caseless etc Message-ID: <1110450892.330501.39240@o13g2000cwo.googlegroups.com> Various of the Voidspace Pythonutils modules have been updated. http://www.voidspace.org.uk/python/index.shtml approx.py has been updated (Python CGI Proxy script) approxClientproxy.py version 2.0 is available listquote, caseless, linky, and downman have all been updated. *MAJOR UPDATE* approx.py approx.py is now at version 0.6.3 This includes many new features, improvements and bugfixes since the last public release 0.6.0. http://www.voidspace.org.uk/python/cgi.shtml#approx approx.py is a Python CGI proxy. It aids unrestricted internet browsing in a censored environment. It is inspired by the James Marshall Perl cgiproxy. Whilst it is not as fully developed as that script it has several advantages. These include URL obfuscation and that it is designed to work with approxClientproxy - see below. 2005/02/15 Version 0.6.3a Refactoring again - less global variables, slightly neater structure. (A full class based structure might still be better) Removed a couple of unimplemented features. Session cookies are now saved. (before they were always discarded) Userid can now be hardwired into approxClientproxy - meaning we don't get *hundreds* of cookie files. Updated default user agent. Fixed bug in cookie sending. (now can send the userid cookie on non-html pages and when modify is off) 2005/01/20 Version 0.6.2a Obfuscation changed to use dataenc. URL obfuscation now *only* available if dataenc and dateutils modules are available. (This restriction will be removed, and the functions built in, when testing is complete) 2005/01/02 Version 0.6.1c Fixed bug(s) in python 2.4 compatibility. Fixed bug in cookie naming. Removed extraneous whitespace from urls entered in the form. Fixed a bug in debug mode introduced in a previous update ! Logging is off by default - avoids file permission errors for new users. (If people want logging they can switch it on themselves) Removed a source of crashes in handling unsupported authentication methods. Basic url obfuscation implemented - for the sake of server logs. In the event of error we now keep the url in the form. Many thanks to Jose for testing and encouragement. *NEW* approxClientproxy.py Version 2.0.0 alpha February 2005 http://www.voidspace.org.uk/python/cgi.shtml#approx This is an experimental client proxy to go with approx.py. It runs on the client machine and transparently rewrites URL requests from the browser to go through the approx proxy. It doesn't yet support fetching https URLs, which is the target of the next update. *UPDATED* caseless and listquote updates http://www.voidspace.org.uk/python/modules.shtml#caseless http://www.voidspace.org.uk/python/modules.shtml#listquote These two modules have had updates for the latest ConfigObj update. This includes optimisations and improvements for unicode support. caseless provides a "Case Insensitive Dictionary, List and Sort" listquote "contains a set of functions for parsing lists from text and writing them back out again" *UPDATED* downman.py Version 0.3.1 17th February 2005 http://www.voidspace.org.uk/python/cgi.shtml#downman Simple download manager. A CGI script for 'serving' files for downlaod and gathering/presenting statistics about their use. Several minor improvements since 0.2, including support for different sections. 2005/02/17 Version 0.3.1 Added version string. Uses the 'formatbytes' function from pathutils. 2005/02/07 Version 0.3.0 Greatly simplified. Doesn't do links or use fileid. Will now serve files from several directories (sections) with different stats. Now can order results by average download rate (or reverse). Now displays file size and will sort by file size. Filenames are also links to the file. *UPDATED* linky.py Version 0.1.1 16th February 2005 http://www.voidspace.org.uk/python/programs.shtml#linky A script that uses BeautifulSoup to check links on a website. Particular emphasis is checking local links within a website and comparing link 'casing' with files on the filesystem. This will pick up errors when testing your website on windows (where case errors may not be apparent). Regards, Fuzzy http://www.voidspace.org.uk/python/index.shtml From anthony at python.org Thu Mar 10 15:37:45 2005 From: anthony at python.org (Anthony Baxter) Date: Thu Mar 10 16:52:28 2005 Subject: RELEASED Python 2.4.1, release candidate 1 Message-ID: <200503110138.02569.anthony@python.org> On behalf of the Python development team and the Python community, I'm happy to announce the release of Python 2.4.1 (release candidate 1). Python 2.4.1 is a bug-fix release. See the release notes at the website (also available as Misc/NEWS in the source distribution) for details of the bugs squished in this release. Assuming no major problems crop up, a final release of Python 2.4.1 will follow in about a week's time. For more information on Python 2.4.1, including download links for various platforms, release notes, and known issues, please see: http://www.python.org/2.4.1/ Highlights of this new release include: - Bug fixes. According to the release notes, several dozen bugs have been fixed, including a fix for the SimpleXMLRPCServer security issue (PSF-2005-001). Highlights of the previous major Python release (2.4) are available from the Python 2.4 page, at http://www.python.org/2.4/highlights.html Enjoy the new release, Anthony Anthony Baxter anthony@python.org Python Release Manager (on behalf of the entire python-dev team) -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://mail.python.org/pipermail/python-announce-list/attachments/20050311/5a0061f4/attachment.pgp From anthony at computronix.com Thu Mar 10 17:01:34 2005 From: anthony at computronix.com (Anthony Tuininga) Date: Thu Mar 10 17:22:14 2005 Subject: cx_Logging 1.0 Message-ID: <42306F5E.20502@computronix.com> What is cx_Logging? cx_Logging is a Python extension module which operates in a fashion similar to the logging module that ships with Python 2.3 and higher. It also has a C interface which allows applications to perform logging independently of Python. Where do I get it? http://starship.python.net/crew/atuining What's new? 1) This is the first release of this project. -- Anthony Tuininga anthony@computronix.com Computronix Distinctive Software. Real People. Suite 200, 10216 - 124 Street NW Edmonton, AB, Canada T5N 4A3 Phone: (780) 454-3700 Fax: (780) 454-3838 http://www.computronix.com From frankn at cibit.nl Thu Mar 10 21:22:46 2005 From: frankn at cibit.nl (Frank Niessink) Date: Fri Mar 11 13:13:10 2005 Subject: [ANN] Release 0.24 of Task Coach (which is also available from Sourceforge now) Message-ID: <4230AC96.4020707@cibit.nl> Hi all, I am pleased to announce release 0.24 of Task Coach. This release fixes two bugs and adds one feature: Bugs fixed: - Saving a selection of tasks to a separate file would also save all effort records to that file (instead of just the effort records for the selected tasks), giving errors when loading that file. - Deleting a task with effort records would not delete the effort records. Features added: - The tracking status of tasks is saved. So if you start tracking a task, quit Task Coach, and restart Task Coach later, effort for that task is still being tracked. Requested by Bob Hossley. In addition, the source code for Task Coach is a available from the CVS repositoty at Sourceforge. See http://sourceforge.net/projects/taskcoach/ What is Task Coach? Task Coach is a simple task manager that allows for hierarchical tasks, i.e. tasks in tasks. Task Coach is open source (GPL) and uses wxPython. You can download Task Coach from: http://taskcoach.niessink.com https://sourceforge.net/projects/taskcoach/ A binary installer is available for Windows XP, in addition to the source distribution. Thanks, Frank From theller at python.net Fri Mar 11 22:04:01 2005 From: theller at python.net (Thomas Heller) Date: Sat Mar 12 21:58:44 2005 Subject: ctypes 0.9.5 released Message-ID: ctypes 0.9.5 released - Mar 11, 2005 ==================================== Overview ctypes is an advanced ffi (Foreign Function Interface) package for Python 2.3 and higher. ctypes allows to call functions exposed from dlls/shared libraries and has extensive facilities to create, access and manipulate simple and complicated C data types in Python - in other words: wrap libraries in pure Python. It is even possible to implement C callback functions in pure Python. ctypes runs on Windows, MacOS X, Linux, Solaris, FreeBSD, OpenBSD. It may also run on other systems, provided that libffi supports this platform. For windows, ctypes contains a ctypes.com package which allows to call and implement custom COM interfaces. Important If you download the source distribution, please choose the ZIP file for Windows, and the .tar.gz file for other machines. These archive have different contents! There have been lots of changes - if you are the author or user of a package that uses ctypes, please test it with this release and report problems on the ctypes-users mailing list. Additions New package ctypes.wrap. This contains decorators usable for easier creation of wrapper functions. This package also contains a toolchain for (semi)automatic creation of wrappers for external libraries - it can parse C header files and generate ctypes code for the declarations in them. It can even handle preprocessor definitions! For details, see http://starship.python.net/crew/theller/ctypes/codegen.html Changes in 0.9.5 On systems where sizeof(int) == sizeof(long), c_int/c_long and c_uint/c_ulong are now aliases. Similar for c_long/c_longlong and c_ulong/c_ulonglong. This prevents unneeded type errors. If an exception occurs in a callback function, a full traceback is now printed. Raising SystemExit in a callback function now correctly exists Python. HRESULT is now a proper ctype - no longer a function. This allows to use it in the argtypes sequence for function prototypes. An easier way to define structures and unions that reference themselves, or have dependencies to other data types. The _fields_ attribute can now be set *after* the Structure/Union class has been created. This makes the SetPointerType function obsolete. The semantics of the _fields_ attribute in sub-subclasses of Structure and Union has been fixed. The baseclasses _fields_ list is extended, not replaced, in subclasses. Assigning _fields_ when it is no longer possible raises an error now. Structures and unions now work as restype and in the argtypes list for functions. An important bug has been fixed with pointers. Detailed changelogs are in CVS: Download Downloads are available in the sourceforge files section Separate source distributions are available for windows and non-windows systems. Please use the .zip file for Windows (it contains the ctypes.com framework), and use the .tar.gz file for non-Windows systems (it contains the complete cross-platform libffi sources). Binary windows installers, which contain compiled extension modules, are also available, be sure to download the correct one for the Python version you are using. Homepage Enjoy, Thomas From nemesis at nowhere.invalid Sat Mar 12 16:27:09 2005 From: nemesis at nowhere.invalid (Nemesis) Date: Sat Mar 12 21:58:44 2005 Subject: [ANN] XPN 0.4.5 released Message-ID: <20050312151416.1742.18114.XPN@orion.homeinvalid> XPN - X Python Newsreader is a multiplatform newsreader with unicode support. It is written in Python+PyGTK. It has features like scoring/actions, XFace and Face decoding and random taglines. You can find it on: http://xpn.altervista.org/index-en.html http://sf.net/projects/xpn Changes in this release: * added X-Face support (thanks to Andrew Taylor for helping me in the translation of his javascript port of uncompface, and to Alien321 for telling me about the Mnheny Thunderbird extension) * added Face support (note you can't send Faces, because this is a non standard header). * added i18n support with gettext. At the moment the supported languages are Italian and French (thanks to Guillaume Bedot for the code and for the French translation) * rewrote NNTP connection handler as an externale module. Now it should be more readable and more reliable. * some refinements in watch/ignore/mark features * fixed some quirk behaviours in the wrapping feature. Now the live wrapping should work better. * added Subject based threading, it's used when References based threading fails * now XPN can generate Message-IDs, and you can also use a personal [pseudo-]FQDN. * added command line options, now you can run xpn with "-d" option and it will store articles and configs files inside a .xpn directory in your home-dir. (thanks to Guillaume Bedot for the code) * added a simple outbox, you can store your articles in it when you are offline and then send them when you estabilish the connection with the server. * now XPN should autmatically repair its database when it gets corrupted. * some fixes for Supersede/Cancel features * now you can select multiple row in groups list. So for instance you can subscribe more than one group with one click, or you can use the new "download new headers in selected groups". * now you can use a different From field when you reply by mail * fixed a bug introduced in the previous release that caused a crash trying to use a NickName with extended characters in it. -- Jesus loves you. Everyone else thinks you're an ass. |\ | |HomePage : http://nem01.altervista.org | \|emesis |XPN (my nr): http://xpn.altervista.org From jeremysanders at gmail.com Sun Mar 13 22:40:09 2005 From: jeremysanders at gmail.com (Jeremy Sanders) Date: Mon Mar 14 13:56:36 2005 Subject: ANN: Veusz 0.4 released (scientific plotting package) Message-ID: Veusz 0.4 [first public release] --------- Velvet Ember Under Sky Zenith ----------------------------- http://home.gna.org/veusz/ Veusz is a scientific plotting package written in Python (currently 100% Python). It uses PyQt for display and user-interfaces, and numarray for handling the numeric data. Veusz is designed to produce publication-ready Postscript output. Veusz provides a GUI, command line and scripting interface (based on Python) to its plotting facilities. The plots are built using an object-based system to provide a consistent interface. Currently done: * X-Y plots (with errorbars) * Stepped plots (for histograms) * Line plots * Function plots * Stacked plots and arrays of plots * Plot keys * Plot labels * LaTeX-like formatting for text * EPS output * Simple data importing * Scripting interface * Save/Load plots * Some work on a manual and introduction To be done: * Contour plots * Images * Filled regions * UI improvements * Import filters (for qdp and other plotting packages, fits, csv) * Data manipulation * Python embedding interface (for embedding Veusz in other programs). [some of the external interface is complete] * Proper installation program Requirements: Python (probably 2.3 or greater required) http://www.python.org/ Qt (free edition) http://www.trolltech.com/products/qt/ PyQt (SIP is required to be installed first) http://www.riverbankcomputing.co.uk/pyqt/ http://www.riverbankcomputing.co.uk/sip/ numarray http://www.stsci.edu/resources/software_hardware/numarray Microsoft Core Fonts (recommended) http://corefonts.sourceforge.net/ For documentation on using Veusz, see the "Documents" directory. The manual is in pdf, html and text format (generated from docbook). If you enjoy using Veusz, I would love to hear from you. Please join the mailing lists at https://gna.org/mail/?group=veusz to discuss new features or if you'd like to contribute code. The newest code can always be found in CVS. Cheers Jeremy Veusz is Copyright (C) 2003-2005 Jeremy Sanders Licenced under the GPL (version 2 or greater) From frankn at cibit.nl Sun Mar 13 23:26:49 2005 From: frankn at cibit.nl (Frank Niessink) Date: Mon Mar 14 13:56:37 2005 Subject: [ANN] Release 0.25 of Task Coach Message-ID: <4234BE29.7000007@cibit.nl> Hi all, I am pleased to announce release 0.25 of Task Coach. This release fixes one bug and extends two features: Bug fixed: - The menu item 'Effort' -> 'New effort' did not work in release 0.24. Features extended: - XML export now includes effort records. - Effort per day, per week and per month views now also show total time spent (i.e. time including time spent on subtasks). What is Task Coach? Task Coach is a simple task manager that allows for hierarchical tasks, i.e. tasks in tasks. Task Coach is open source (GPL) and uses wxPython. You can download Task Coach from: http://taskcoach.niessink.com https://sourceforge.net/projects/taskcoach/ A binary installer is available for Windows XP, in addition to the source distribution. Thanks, Frank From 2005a at usenet.alexanderweb.de Mon Mar 14 00:33:22 2005 From: 2005a at usenet.alexanderweb.de (Alexander Schremmer) Date: Mon Mar 14 13:56:37 2005 Subject: ANN: MoinMoin 1.3.4 (advanced wiki engine) released Message-ID: _ _ /\/\ ___ (_)_ __ /\/\ ___ (_)_ __ / \ / _ \| | '_ \ / \ / _ \| | '_ \ __ / /\/\ \ (_) | | | | / /\/\ \ (_) | | | | | /| _) \/ \/\___/|_|_| |_\/ \/\___/|_|_| |_| |.__) ============================================== MoinMoin 1.3.4 advanced wiki engine released ============================================== MoinMoin is an easy to use, full-featured and extensible wiki software package written in Python. It can fulfill a wide range of roles, such as a personal notes organizer deployed on a laptop or home web server, a company knowledge base deployed on an intranet, or an Internet server open to individuals sharing the same interests, goals or projects. A wiki is a collaborative hypertext environment with an emphasis on easy manipulation of information. MoinMoin 1.3.4 is a maintenance release that fixes several bugs and introduces some new features. See below. Upgrading is recommended for all users. - http://moinmoin.wikiwikiweb.de/MoinMoinDownload Major bugs that were fixed -------------------------- * Fixed a few non-critical ACL issues which might have led to leakage of pagenames. * Workaround on Windows 95, 98, ME. This fixes some bugs related to an outdated page list and newly created pages that did not appear immediately. * Fixed decoding issues of page names on Windows, finally. http://moinmoin.wikiwikiweb.de/MoinMoinBugs/BrokenUmlautsInLinksIn131 * Fixed traceback on IIS. http://moinmoin.wikiwikiweb.de/MoinMoinBugs/request%2epy_broken_on_IIS * Many fixes in WikiRPC. * Fixed backlinks - the result did not always show all links, often it showed too many irrelevant matches (MoinMoinBugs/BacklinksAreBroken). * Fixed the acceptance of the show_hosts setting. Now you should be able to hide any IP or host name from being published by MoinMoin by enabling this option. * Fixed free parent and subpage links in interwiki notation. http://moinmoin.wikiwikiweb.de/MoinMoinBugs/FreeParentLinksAreBroken * Various other bugfixes. Major New features ------------------ * Added the pragmas description and keywords. They will add headers if used. * The search modifier "linkto:" was introduced. You can use it to search for links. * Added support for Digest and NTLM authentication with CGI (e.g. if you use those Apache modules) * Date and DateTime macros accept a timezone specification. For a more detailed list of changes, see the CHANGES file in the distribution or http://moinmoin.wikiwikiweb.de/MoinMoinRelease1.3/CHANGES Major new features in 1.3 ========================= * MoinMoin speaks your language! Complete Unicode support, translated system and help pages in more than ten languages, and support for languages written from right to left are the base features of our internationalisation support. * Fresh look and feel. New default user interface design, improved existing themes and enhanced theme plug-in framework that make it easier to modify the design or create completely new user interface. * Find anything on your wiki, instantly. New search engine and streamlined Google-like search interface, using multiple search terms, regular expressions, search term modifiers and boolean search. * Antispam - keep spammers out of you wiki. Protect your wiki with automatically updated spam patterns maintained on the MoinMaster wiki, and shared by all MoinMoin wikis worlwide. * Underlay directory - easy upgrade and maintenance. New streamlined directory layout protects all system and help pages in a separate underlay directory. * Run with your favorite server. Use either a standalone server that requires only Python, the high performance Twisted server, Apache with Fast CGI, mod_python or plain CGI. * Multiconfig - easier, more powerful configuration. New class-based configuration allow you to easily configure single or multiple wikis sharing a common setup. MoinMoin History ================ MoinMoin has been around since year 2000. Most of the codebase was written by J?rgen Hermann; it is currently being developed by a growing team. Being originally based on PikiPiki, it has evolved heavily since then (PikiPiki and MoinMoin 0.1 consisted of just one file!). Many large enterprises have been using MoinMoin as a key tool of their intranet, some even use it for their public web page. A large number of Open Source projects use MoinMoin for communication and documentation. Of course there is also a large number of private installations. More Information ================ * Project site: http://moinmoin.wikiwikiweb.de/ * Feature list: http://moinmoin.wikiwikiweb.de/MoinMoinFeatures * Download: http://moinmoin.wikiwikiweb.de/MoinMoinDownload * This software is available under the GNU General Public License v2. * Changes: http://moinmoin.wikiwikiweb.de/MoinMoinRelease1.3/CHANGES * Upgrade: http://moinmoin.wikiwikiweb.de/HelpOnUpdating * Known bugs: * http://moinmoin.wikiwikiweb.de/KnownIssues * http://moinmoin.wikiwikiweb.de/MoinMoinBugs sent by Alexander Schremmer for the MoinMoin team From info at wingware.com Tue Mar 15 05:03:07 2005 From: info at wingware.com (Wing IDE Announce) Date: Tue Mar 15 16:51:39 2005 Subject: Wing IDE 2.0.2 Released Message-ID: Hi, We're pleased to announce the release of Wing IDE 2.0.2. 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 this release include: * Easier to use Zope and Plone integration http://wingware.com/doc/howtos/zope * Extension of the IDE with Python scripts (Wing Pro only) http://wingware.com/doc/scripting * CVS revision control system integration (Wing Pro only) http://localhost/doc/edit/revision-control * Reorganized and expanded Project and File properties * Ability to view and change text file encodings * Per-project line ending and indentation policies * Option to auto-add new files to projects * Text input methods for non-european languages * Wing IDE Personal now includes the Indentation tool * Over 70 other improvements and bug fixes New features in Wing IDE 2.0 since the last 1.1 release include a redesigned customizable user interface, call tips, syntax error indicators, editor tabs and splits, multi-file wildcard and regular expression searching, integrated documentation and tutorial, German localization, and Unicode support. This release is available for Windows, Linux, and Mac OS X, and can be compiled from sources on *BSD, Solaris, and other Posix operating systems. A complete list of changes is available here: http://wingware.com/pub/wingide/2.0.2/CHANGELOG.txt For more information see: Product Info: http://wingware.com/products Sales: http://wingware.com/store/purchase Upgrades: http://wingware.com/store/upgrade Sincerely, The Wingware Team From johan at gnome.org Tue Mar 15 22:56:31 2005 From: johan at gnome.org (Johan Dahlin) Date: Wed Mar 16 14:26:08 2005 Subject: ANNOUNCE: PyGTK 2.6.1 Message-ID: <42375A0F.8040103@gnome.org> I am pleased to announce version 2.6.1 of the Python bindings for GTK. The new release is available from ftp.gnome.org as and its mirrors as soon as its synced correctly: http://ftp.gnome.org/pub/GNOME/sources/pygtk/2.6/pygtk-2.6.1.tar.gz Changes since 2.6.0: - GtkListStore.insert optimization (Johan) - GtkTreeStore/GtkListStore.reorder leak fix (Johan, Richard Hult) - GParamSpec bug fix (Johan) - Code generator improvements (Anders Carlsson, Johan, Doug Quale) - GCC4 build fixes Blurb: GTK is a toolkit for developing graphical applications that run on POSIX systems such as Linux, Windows and MacOS X (provided that the X server for MacOS X has been installed). It provides a comprehensive set of GUI widgets, can display Unicode bidi text. It links into the Gnome Accessibility Framework through the ATK library. PyGTK provides a convenient wrapper for the GTK+ library for use in Python programs, and takes care of many of the boring details such as managing memory and type casting. When combined with PyORBit and gnome-python, it can be used to write full featured Gnome applications. Like the GTK+ library itself PyGTK is licensed under the GNU LGPL, so is suitable for use in both free software and proprietary applications. It is already in use in many applications ranging from small single purpose scripts up to large full features applications. PyGTK requires GTK+ >= 2.6 and Python >= 2.3 to build. Bug reports, as always, should go to Bugzilla; check out http://pygtk.org/developer.html and http://pygtk.org/feedback.html for links to posting and querying bug reports for PyGTK. -- Johan Dahlin johan@gnome.org From smulloni at bracknell.smullyan.org Wed Mar 16 04:33:33 2005 From: smulloni at bracknell.smullyan.org (Jacob Smullyan) Date: Wed Mar 16 14:26:09 2005 Subject: ANNOUNCE: PyDO-2.0a0 released Message-ID: I'm pleased to announce the first alpha release of PyDO 2. PyDO is Drew Csillag's ORM (Object-Relational Mapper) database access library for Python that facilitates writing a Python database access layer. PyDO attempts to be simple, flexible, extensible, and unconstraining. PyDO 2 is a rewrite of the 1.x series distributed with SkunkWeb. It has several enhancements: * PyDO can now be used in multi-threaded or twisted-style asynchronous sitations, with or without a customizable connection pool. * PyDO objects are now dict subclasses, but also support attribute access to fields. * Projections -- subsets of the field list of a super-class -- are now supported by the PyDO.project() method. * Table attributes are now declared in a more concise way. * Overall, the API has been tightened and the code restructured. It also has several limitations: * PyDO 2 is alpha code. Bugs should be expected, and the API is not guaranteed to be stable. * Currently, PyDO 2 supports fewer database systems than PyDO 1 (PostgreSQL, SQLite, and MySQL), although adding new drivers should not be difficult. * PyDO 2 requires Python 2.4 or later. PyDO is dual GPL/BSD licensed. The source tarball is available at SkunkWeb's berlios site: https://developer.berlios.de/projects/skunkweb/ or, more directly: http://download.berlios.de/skunkweb/PyDO-2.0a0.tar.gz Questions pertaining to PyDO can be addressed to the SkunkWeb mailing list at sourceforge: http://lists.sourceforge.net/lists/listinfo/skunkweb-list Cheers, js -- Jacob Smullyan From robin at alldunn.com Thu Mar 17 06:39:28 2005 From: robin at alldunn.com (Robin Dunn) Date: Thu Mar 17 15:49:37 2005 Subject: ANNOUNCE: wxPython 2.5.4.1 Message-ID: <42391810.4070107@alldunn.com> Announcing ---------- I'm pleased to announce the 2.5.4.1 release of wxPython, now available for download at http://wxpython.org/download.php What is wxPython? ----------------- wxPython is a GUI toolkit for the Python programming language. It allows Python programmers to create programs with a robust, highly functional graphical user interface, simply and easily. It is implemented as a Python extension module that wraps the GUI components of the popular wxWidgets cross platform library, which is written in C++. wxPython is a cross-platform toolkit. This means that the same program will usually run on multiple platforms without modifications. Currently supported platforms are 32-bit Microsoft Windows, most Linux or other Unix-like systems using GTK or GTK2, and Apple Macintosh OS X. Changes in 2.5.4.1 ------------------ wx.Sizer Add, Insert, and Prepend functions now return a reference to the wx.SizerItem that was added to the sizer, and the wx.SizerItem has a GetRect accessor to give the position of the item on the parent window. Added wx.Sizer.GetItem method which returns the wx.SizerItem for the given wx.Window, wx.Sizer or position index. wxMSW: wx.RadioButtons in the same group no longer have to be consecutive (there may be intervening controls). Without this fix, an out-of-sync assert is generated when clicking on a radio button and then calling GetValue(). Some XRC changes: - Added 'icon' property to wxFrame and wxDialog - No longer ignores menu bitmaps on non-MSW platforms - Notebook page bitmaps are now supported - added system colours and fonts support (based on patch #1038207) wxMSW: fix for [ 1052989 ] TextCtrl.SetBackgroundColour(wx.NullColour) bug. Added wx.PasswordEntryDialog analagous to wx.TextEntryDialog, allows detecting entering an empty string vs. cancel unlike the wx.GetPasswordFromUser dialog function. OGL patch from Shane Holloway: Two simple problems found in the new python ogl code. First is the patch for _canvas.py. Essentially:: dx = abs(dc.LogicalToDeviceX(x - self._firstDragX)) dy = abs(dc.LogicalToDeviceY(y - self._firstDragY)) was incorrect because (x,y) and (self._firstDragX, self._firstDragY) are both already in Logical coordinates. Therefore the difference between the two is also in logical coordinates, and the conversion call is an error. This bug surfaces when you have OGL on a scrollwin, and you are far from the origin of the canvas. The second change in _composit.py basically removes the assumption that the child is in both self._children and self._divisions. Causes many problems when it's not. ;) Fixed GetSaveData and SetSaveData in wx.lib.multisash to not depend on the default way that class objectss are converted to strings. Fixed problem in StyledTextCtrl.Set[HV]ScrollBar that could leave the internal scrollbar visible. Added wx.StandardPaths which provides methods for determining standard system paths for each platform. wxMSW: The window background is now only erased by default if the background colour or background mode has been changed. This better allows the default system themed behaviour to show through for uncustomized windows. Explicit support added for using the correct theme texture for wx.Notebook pages and their children. wx.Image: Added support for alpha channels in interpolated and non-interpolated image rotation. Added ConvertAlphaToMask helper method for turning shades of grey into shades of alpha and a colour. wxGTK2: Reimplemented DoDrawRotatedText() by way of a rotation of an alpha blended text bitmap. It would be better if Pango could draw directly into an wxImage (as FreeType can,) but that is for later... Added wrappers and a demo for the wx.MediaCtrl class, which can play various forms of audio/video media using native codecs install on the system. So far it is only implemented for Windows and OSX. wxGTK: Patch applied for Freeze()/Thaw() for wxTextCtrtl. Added "gravity" for splitter window (patch 1046105). Gravity is a floating-point factor between 0.0 and 1.0 which controls position of sash while resizing the wx.SplitterWindow. The gravity specifies how much the left/top window will grow while resizing. wxMSW: wx.Slider's C++ implementation rewritten to be more maintainable and hopefully less buggy. The position of the labels has also been changed in order to better comply with Microsoft's examples of how to use the control. wxMSW: Fix wx.TreeCtrl to end label editing if the control loses focus (a slightly modified patch 1084592.) Added wx.EXEC_NODISABLE flag for wx.Execute, which will prevent all the app's windows being disabled while a synchronous child process is running. wxMSW: Much work to correct painting (or leaving transparent) of control backgrounds, properly using background themes on XP, etc. Fixed a circular reference problem with wx.Timer. It will now completely cleanup after itself when the last reference to the timer is removed. If you were previously using timer.Destroy() to cleanup your timers it will no longer work. Instead you should hold a reference to the timer and then del the reference when you are finished with the timer. Updated to 1.3.24 of SWIG. All of my big patches have been applied to the main SWIG source tree, but unfortunatly there were also some bugs added that affected the wxPython build and a few details in my original patch were changed/removed, so we are still not free of patches. A new patch for SWIG is located in the wxPython/SWIG directory of the wxPython source tree. SWIG 1.3.24 plus this patch should be used by anyone who is making custom modifications to wxPython's .i files, or building their own extension modules or etc. that need to interact with the wxPython swigged types. For the morbidly curious, here are a few more details: * Since it is now possible easily and simply share the SWIG type tables across modules I reverted to always using the stock SWIG runtime instead of my slightly hacked up version of it exported via the wxPython C API. * The %name directive is now deprecated so I replaced most uses of it with a custom %Rename macro that uses %rename internally. These will evetually need to be replaced with a DocDecl macro when docstrings are added for those items. * The "this" attribute of all SWIGged classes is no longer a string containing a "swigified pointer", but rather a custom built-in type that holds the real C pointer to the object and the type info. It can be converted to a string like the old value using str() or to the long integer value of the pointer using long(). Added SetDefaultPyEncoding and GetDefaultPyEncoding functions which will set/get the encoding used by wxPython to convert string or unicode objects to/from wxString objects. Previously the default Python encoding was always used, but unless the user had tweaked their sitecustomize.py file it is always "ascii", which would result in errors if the strings contained character codes >= 128. SetDefaultPyEncoding will now allow you to control which encoding will be used to do those conversions. The default encoding is set to the value of `locale.getdefaultlocale()[1]` when wxPython is first imported. Please see http://www.alanwood.net/demos/charsetdiffs.html for information on the differences between the common latin/roman encodings. Added wxStdDialogButtonSizer, which is a a special sizer that knows how to order and position standard buttons in order to conform to the current platform's standards. You simply need to add each `wx.Button` to the sizer, and be sure to create the buttons using the standard ID's. Then call `Realize` and the sizer will take care of the rest. wxMSW Toolbar: pass correct tool id (and not always -1) to the EVT_TOOL_RCLICKED handler wxGTK: Applied patch for combo box SELECTED events (no longer get lots of surplus events) wxGTK: Applied patch for proper menu highlight colour detection in wx.SystemSettings. wxGTK: Commited scrollbar patch #1093339 which sends lineup, linedown events based on intercepting the mouse down events. wxGTK: Applied patch #1102789 which solved conflicts between wxWidgets and GTK+'s context menu code. wxGTK: Applied patch #1100327 for correct feedback from DND actions (not all actions are allowed). Fixed memory leak in wxGrid::UpdateAttr[Rows][Or][Cols] (patch 1104355) For efficiency reasons, text controls no longer set the string for each text updated event, but rather query for the string value only when GetString is called from an event handler. Added wx.SL_INVERSE style which will cause wx.Slider to invert the min and max ends of the slider. Several patches applied, such as #1111174, #1110252 and others, that make the generic wx.TreeCtrl (used on wxGTK and wxMac) be more conistent with the wxMSW native wx.TreeCtrl. XRCed: * Edit->Locate command (Ctrl-L) for quick selection of items. Works with event-handling controls (buttons, text fields) but not with labels/sizers. * Some improvements: relative paths for files supplied as command- line argument work correctly, notebook panels are highlighted better. wxMac: Fixed a long-standing issue where wxSlider controls with a hardcoded size would misplace their labels behind the slider control. wx.HtmlListBox fixed so calling RefreshLine(s) will cause the data for that line to be refetched from the overridden methods in the derived class. The default DoGetBestSize now includes the difference (if any) between the client size and total size of the window, (such as the size of borders.) Code that sets the client size using the best size, or that added extra space to sizers to compensate for this bug may need to be changed. Can suppress themed notebook pages with the wxNB_NOPAGETHEME style or setting system option msw.notebook.themed-background to 0. wxSyledTextCtrl updated to use Scintilla 1.62. Can now set the msw.window.no-clip-children system option to 1 to eliminate weird refresh behaviour (delays between a window being erased and repainted, giving a ghostly gradual-redraw effect). May be a temporary 'fix' until properly fixed before 2.6. wxMac: Toolbar is now more native looking with borderless toolbar buttons. wxMac: Switched wx.Bitmap to use newer Quartz object types and APIs internally. This results in faster display and better alpha support. Added wx.DatePickerCtrl. wx.html.HtmlWindow now supports background images. Added wx.lib.gestures module from Daniel Pozmanter which supports using Mouse Gestures in an application. wxGTK2: ENTER and LEAVE mouse events are now sent for multi-line text controls. wxMSW: "Alt" key (VK_MENU) now results in WXK_ALT keyboard event, not WXK_MENU Added modules from Peter Yared and Morgan Hua that implement the wx Doc/View framework in pure Python code. See wx.lib.docview for the base implementation and wx.lib.pydocview for Python-specific extensions. There are also a couple sample applications located in samples/docview. Added GetBitmap, GetIcon to wx.ImageList. wxGTK wx.Button.SetLabel no longer invalidates/resets the font. wx.Sizer.AddWindow, AddSizer, AddSpacer and etc. have now been undeprecated at the request of Riaan Booysen, the Boa Constructor team lead. Boa needs them to help keep track of what kind of item is being managed by the sizer. They are now just simple compatibility aliases for Add, and etc. The old C++ version of the OGL lib is no longer built by default. Use the Python version in the wx.lib.ogl package instead. The wx.iewin module is no longer built by default. You can use the wx.lib.iewin version instead. Fixed wx.BufferedPaintDC for scrolled windows to work whether the buffer is covering only the client area or the full virtual area of the scrolled window. By default it will assume that only the client area is covered. This is different than the old behavior so to indicate that the entire virtual area is covered simply add a style=wx.BUFFER_VIRTUAL_AREA parameter. wx.gizmos.TreeListCtrl: Add support for the EVT_TREE_ITEM_GETTOOLTIP event. Added Resize, SetRGBRect, Size, and GetOrFindMaskColour methods to wx.Image. Added wx.Rect.IsEmpty wxGTK: - Corrected wx.ListBox selection handling - Corrected default button size handling for different themes - Corrected splitter sash size and look for different themes - Fixed keyboard input for dead-keys -- Robin Dunn Software Craftsman http://wxPython.org Java give you jitters? Relax with wxPython! From jim at zope.com Thu Mar 17 17:08:50 2005 From: jim at zope.com (Jim Fulton) Date: Thu Mar 17 17:20:17 2005 Subject: PyCon 2005 Sprints Message-ID: <4239AB92.6050909@zope.com> PyCon 2005 is just around the corner. PyCon is a great place to meet and collaborate with your colleagues. A great way to collaborate at PyCon is through sprints. A sprint is a multi-day session of intense development organized around extreme programming (XP) ideas such as pair programming. There will be four days, March 19-22, before the regular conference to sprint on a variety of projects. To see what sprints are planned, see: http://www.python.org/moin/PyConDC2005/Sprints There is also useful logistical information there! If you would like to lead a sprint, feel free to add the sprint to that page. If you want to participate in a sprint, visit a sprint-topic page and add your name to the list of attendees so that we know how many people are coming. If you have a question about the sprints, feel free to drop me a line at jim@zope.com. Note that you don't have to attend PyCon to participate in a sprint. Jim -- Jim Fulton mailto:jim@zope.com Python Powered! CTO (540) 361-1714 http://www.python.org Zope Corporation http://www.zope.com http://www.zope.org From edreamleo at charter.net Thu Mar 17 17:32:29 2005 From: edreamleo at charter.net (Edward K. Ream) Date: Thu Mar 17 19:09:15 2005 Subject: ANN: Leo 4.3-a4 Message-ID: Leo 4.3 alpha 4 is now available at http://sourceforge.net/projects/leo/ Leo 4.3 is the culmination of more than five months of work. This alpha 4 focuses on plugins: all known plugins are now in leoPlugins.leo. Most plugins now work with the 4.3 code base. This alpha 4 release also adds the frequently-requested Add Comments and Delete Comments commands to Leo's Edit Body menu. The defining features of Leo 4.3: --------------------------------- 1. Leo now stores options in @settings trees, that is, outlines whose headline is '@settings'. When opening a .leo file, Leo looks for @settings trees not only in the outline being opened but also in various leoSettings.leo files. Users can create arbitrarily complex user options with @settings trees. 2. The Preferences command temporarily replaces the outline pane with an outline showing all the @settings trees in effect. The Preferences command also replaces the body pane with a "settings pane". This settings pane allows you to change the settings selected in the outline pane using standard gui widgets. 3. Leo's read/write code in leoAtFile.py has been rewritten to support user-defined tangling and untangling. This is a major cleanup of Leo's core. 4. Leo now contains an excellent Plugins Manager plugin. This plugin enables and disables plugins automatically and tells you everything you need to know about each plugin. This plugin also lets you download plugins from Leo's cvs site. 5. You can install third-party extensions in Leo's extensions directory. Leo will attempt to import such extensions from the extensions directory when normal imports fail. The distribution contains Python Mega Widgets in the extensions directory. What people are saying about Leo -------------------------------- "Word outlines are very useful. But Leo makes Word look like a clunky toy." --Joe Orr "Leo is an interactive editor for organizing text fragments hierarchically and sequentially into one or more files and hierarchical folders, without arbitrary limits on the number and size of text fragments and the depth of the hierarchy...Tangle is a tool for combining hierarchically and sequentially organized text fragments into text files, hierarchically grouped into folders, with hierarchical or sequential organization of text within the files, and without arbitrary limits on the size and number of files and the depth of the hierarchy of folders and text nesting within the files." -- Alex Abacus "Leo reminds me a great deal of things I loved when I used Userland's Frontier (an outlining cms with a native oodb) - but Frontier wasn't hackable enough for me, and it wasn't oriented towards coding and literate programming, and you couldn't round-trip rendered pages (big Leo win). This is really a super tool - in a matter of days I've started to use it on all my projects and I still haven't figured out how I lived without it." -- John Sequeira "Leo is EXACTLY the kind of outliner I was looking for--fantastic job!" -- Steve Allen "If you are like me, you have a kind of knowledge base with infos gathered over time. And you have projects, where you use some of those infos. Now, with conventional outliners you begin to double these infos, because you want to have the infos needed for the project with your project. With Leo you can do this too, but if you change text in one place IT IS UPDATED IN THE OTHER PLACE TOO! This is a feature I did not see with any other outliner (and I tried a few). Amazing! Leo directly supports the way I work!" -- F. Geiger More quotes at: http://webpages.charter.net/edreamleo/testimonials.html What makes Leo special? ----------------------- - Leo's outlines add a new dimension to programming. - Leo shows you your code and data the way _you_ want to see them. - Leo extends, completes and simplifies literate programming. - Leo's script buttons bring scripts to data. What is Leo? ------------ - A programmer's editor, an outlining editor and a flexible browser. - A literate programming tool, compatible with noweb and CWEB. - A data organizer and project manager. Leo provides multiple views of projects within a single outline. - Fully scriptable using Python. Leo saves its files in XML format. - Portable. leo.py is 100% pure Python. - Open Software, distributed under the Python License. Leo requires Python 2.2.1 or above and tcl/tk 8.4 or above. Leo works on Linux, Windows and MacOs X. Links: ------ Leo: http://webpages.charter.net/edreamleo/front.html Home: http://sourceforge.net/projects/leo/ Download: http://sourceforge.net/project/showfiles.php?group_id=3458 CVS: http://sourceforge.net/cvs/?group_id=3458 Quotes: http://webpages.charter.net/edreamleo/testimonials.html Edward -------------------------------------------------------------------- Edward K. Ream email: edreamleo@charter.net Leo: Literate Editor with Outlines Leo: http://webpages.charter.net/edreamleo/front.html -------------------------------------------------------------------- From fredrik at pythonware.com Thu Mar 17 17:54:49 2005 From: fredrik at pythonware.com (Fredrik Lundh) Date: Thu Mar 17 19:09:16 2005 Subject: ANN: ElementTree 1.2.6 (march 16, 2005) Message-ID: <004201c52b12$0864b2f0$c200a8c0@wmc3fuze4sqif8> The Element type is a simple but flexible container object, designed to store hierarchical data structures, such as simplified XML infosets, in memory. The ElementTree package provides a Python implementation of this type, plus code to serialize element trees to and from XML files. ElementTree 1.2.6 is a maintenance release, consisting of 1.2.5 plus a fix for proper expansion of entities defined in internal DTD:s, minor fixes in the HTML parser, and proper serialization also if Python's default encoding has been changed. You can get the ElementTree package from: http://effbot.org/downloads#elementtree Documentation, code samples, and pointers to articles about the Element- Tree package are available from: http://effbot.org/zone/element.htm enjoy /F From fredrik at pythonware.com Thu Mar 17 17:56:01 2005 From: fredrik at pythonware.com (Fredrik Lundh) Date: Thu Mar 17 19:09:17 2005 Subject: ANN: cElementTree 1.0.2 (march 2, 2005) Message-ID: <005201c52b12$32c98340$c200a8c0@wmc3fuze4sqif8> effbot.org proudly presents release 1.0.2 of the cElementTree library, a fast and very efficient implementation of the ElementTree API, for Python 2.1 and later. On typical documents, it's 15-20 times faster than the Python version of ElementTree, and uses 2-5 times less memory. cElementTree 1.0.2 is 1.0.1 plus the missing "iselement" function, and a couple of minor tweaks and bug fixes. The library is available as C source code, and as Windows installers for all recent Python versions. Get your copy here: http://effbot.org/downloads#celementtree The cElementTree module uses some support functions from the standard ElementTree library, and will not work properly without it. If you haven't installed it already, you can get it from: http://effbot.org/downloads#elementtree enjoy /F From jim at zope.com Thu Mar 17 18:03:43 2005 From: jim at zope.com (Jim Fulton) Date: Thu Mar 17 19:09:18 2005 Subject: New Mailing List for PyCon 2005 Attendees Message-ID: <4239B86F.5090608@zope.com> The PyCon organizers have created a mailing list for PyCon 2005 attendees: http://mail.python.org/mailman/listinfo/pycon2005-attendees We've subscribed attendees we had email addresses for. If you are attending PyCon and haven't received a welcome message, then we probably don't have your email address and you should subscribe to get last minute information. Alternatively, you can keep an eye on the archives. We'll remove this list a week or two after PyCon. Jim (P.S. The subsciber list for this mailing list is only viewable by the list administrators.) -- Jim Fulton mailto:jim@zope.com Python Powered! CTO (540) 361-1714 http://www.python.org Zope Corporation http://www.zope.com http://www.zope.org From riaan at e.co.za Thu Mar 17 18:53:28 2005 From: riaan at e.co.za (Riaan Booysen) Date: Thu Mar 17 19:09:18 2005 Subject: [ANN] Boa Constructor 0.4.0 Message-ID: <4239C418.9020608@e.co.za> Hi everyone, Boa Constructor 0.4.0 has been released and is available from the SourceForge file download page. http://sourceforge.net/project/showfiles.php?group_id=1909&package_id=1856&release_id=313481 The main focus of the release is wxPython 2.5 compatibility and source generation for the GUI designer. This release requires wxPython 2.5 to run. wxPython 2.4 is no longer supported, but there is a code upgrading tool provided to help upgrade from wxPython 2.4 to wxPython 2.5. A special thanks to Werner Bruhin for updating the tutorial and the code upgrading tool (started by Paul Sorenson). Enjoy, Riaan. http://boa-constructor.sourceforge.net From anthony at python.org Fri Mar 18 07:22:01 2005 From: anthony at python.org (Anthony Baxter) Date: Fri Mar 18 13:25:47 2005 Subject: RELEASED Python 2.4.1, release candidate 2 Message-ID: <200503181722.13891.anthony@python.org> On behalf of the Python development team and the Python community, I'm happy to announce the release of Python 2.4.1 (release candidate 2). Python 2.4.1 is a bug-fix release. See the release notes at the website (also available as Misc/NEWS in the source distribution) for details of the bugs squished in this release. Assuming no major problems crop up, a final release of Python 2.4.1 will be out around the 29th of March - straight after PyCon. For more information on Python 2.4.1, including download links for various platforms, release notes, and known issues, please see: http://www.python.org/2.4.1 Highlights of this new release include: - Bug fixes. According to the release notes, several dozen bugs have been fixed, including a fix for the SimpleXMLRPCServer security issue (PSF-2005-001). - A handful other bugs discovered in the first release candidate have been fixed in this version. Highlights of the previous major Python release (2.4) are available from the Python 2.4 page, at http://www.python.org/2.4/highlights.html Enjoy the new release, Anthony Anthony Baxter anthony@python.org Python Release Manager (on behalf of the entire python-dev team) -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://mail.python.org/pipermail/python-announce-list/attachments/20050318/92043986/attachment.pgp From ahaas at airmail.net Fri Mar 18 18:46:29 2005 From: ahaas at airmail.net (Art Haas) Date: Fri Mar 18 21:58:26 2005 Subject: [ANNOUNCE] Twenty-third release of PythonCAD now available Message-ID: <20050318174629.GB4728@artsapartment.org> I'm pleased to announce the twenty-third development release of PythonCAD, a CAD package for open-source software users. As the name implies, PythonCAD is written entirely in Python. The goal of this project is to create a fully scriptable drafting program that will match and eventually exceed features found in commercial CAD software. PythonCAD is released under the GNU Public License (GPL). PythonCAD requires Python 2.2 or newer. The interface is GTK 2.0 based, and uses the PyGTK module for interfacing to GTK. The design of PythonCAD is built around the idea of separating the interface from the back end as much as possible. By doing this, it is hoped that both GNOME and KDE interfaces can be added to PythonCAD through usage of the appropriate Python module. Addition of other PythonCAD interfaces will depend on the availability of a Python module for that particular interface and developer interest and action. The twenty-third release contains a several bug fixes, the largest of which is the correct restoration of dimension string text properties when the deletion of a dimension is undone. Another fix included in this release is the removal of some deprecated constants flagged by the 2.6 PyGTK release when they are encountered. This release also features the beginnings of the scripting enhancements planned for PythonCAD. The evaluation of user-entered expressions is now more powerful by utilizing Python's exec keyword and invoking the eval() command with an argument storing variables to be utilized during expression evaluation. More enhancements and improvements in expression evaluation and overall scriptability will appear in future releases. A mailing list for the development and use of PythonCAD is available. Visit the following page for information about subscribing and viewing the mailing list archive: http://mail.python.org/mailman/listinfo/pythoncad Visit the PythonCAD web site for more information about what PythonCAD does and aims to be: http://www.pythoncad.org/ Come and join me in developing PythonCAD into a world class drafting program! Art Haas -- Man once surrendering his reason, has no remaining guard against absurdities the most monstrous, and like a ship without rudder, is the sport of every wind. -Thomas Jefferson to James Smith, 1822 From theller at python.net Fri Mar 18 20:33:57 2005 From: theller at python.net (Thomas Heller) Date: Fri Mar 18 21:58:27 2005 Subject: ctypes 0.9.6 released Message-ID: <4qf8wxy2.fsf@python.net> ctypes 0.9.6 released - Mar 18, 2005 ==================================== Overview ctypes is an advanced ffi (Foreign Function Interface) package for Python 2.3 and higher. ctypes allows to call functions exposed from dlls/shared libraries and has extensive facilities to create, access and manipulate simple and complicated C data types in Python - in other words: wrap libraries in pure Python. It is even possible to implement C callback functions in pure Python. ctypes now includes a code generator toolchain which allows automatic creation of library wrappers from C header files. This feature is still experimental and beta quality. ctypes runs on Windows, MacOS X, Linux, Solaris, FreeBSD, OpenBSD. It may also run on other systems, provided that libffi supports this platform. For windows, ctypes contains a ctypes.com package which allows to call and implement custom COM interfaces. Important If you download the source distribution, please choose the ZIP file for Windows, and the .tar.gz file for other machines. These archive have different contents! There have been lots of changes - if you are the author or user of a package that uses ctypes, please test it with this release and report problems on the ctypes-users mailing list. Changes in 0.9.6 Thanks to all of you who reported bugs so quickly, and those who tried out the codegenerator toolchain. Bug fixes: - keyword arguments in Structure/Union initializers had no effect. - it was impossible to override the from_parm class method in subclasses of c_void_p, c_char_p, and c_wchar_p. - removed the __del__ method of _CDLL. It caused uncollectable garbage in Python's gc. - ctypes.com.register: enclose the Python script to run a com server in quotes, otherwise it won't run correctly when the directory name contains spaces. Enhancements: - Several changes have been made to the h2xml script from the codegenerator toolchain. See the documentation (linked below) for details. ----------------------- Additions in 0.9.5 New package ctypes.wrap. This contains decorators usable for easier creation of wrapper functions. This package also contains a toolchain for (semi)automatic creation of wrappers for external libraries - it can parse C header files and generate ctypes code for the declarations in them. It can even handle preprocessor definitions! For details, see http://starship.python.net/crew/theller/ctypes/codegen.html Changes in 0.9.5 On systems where sizeof(int) == sizeof(long), c_int/c_long and c_uint/c_ulong are now aliases. Similar for c_long/c_longlong and c_ulong/c_ulonglong. This prevents unneeded type errors. If an exception occurs in a callback function, a full traceback is now printed. Raising SystemExit in a callback function now correctly exists Python. HRESULT is now a proper ctype - no longer a function. This allows to use it in the argtypes sequence for function prototypes. An easier way to define structures and unions that reference themselves, or have dependencies to other data types. The _fields_ attribute can now be set *after* the Structure/Union class has been created. This makes the SetPointerType function obsolete. The semantics of the _fields_ attribute in sub-subclasses of Structure and Union has been fixed. The baseclasses _fields_ list is extended, not replaced, in subclasses. Assigning _fields_ when it is no longer possible raises an error now. Structures and unions now work as restype and in the argtypes list for functions. An important bug has been fixed with pointers. Detailed changelogs are in CVS: Download Downloads are available in the sourceforge files section Separate source distributions are available for windows and non-windows systems. Please use the .zip file for Windows (it contains the ctypes.com framework), and use the .tar.gz file for non-Windows systems (it contains the complete cross-platform libffi sources). Binary windows installers, which contain compiled extension modules, are also available, be sure to download the correct one for the Python version you are using. Homepage Enjoy, Thomas From python-url at phaseit.net Fri Mar 18 21:06:34 2005 From: python-url at phaseit.net (Cameron Laird) Date: Fri Mar 18 21:58:28 2005 Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Mar 18) Message-ID: QOTW: "Python's best feature is comp.lang.python." -- Joerg Schuster "I learn something valuable from comp.lang.python every week, and most of it has nothing to do with Python." -- Richie Hindle Google writes successful (if suboptimal) applications. Google relies on Python: http://code.google.com http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/a95a58db1410aa46/ The Enterprise talks about fancy proprietary stuff, but uses Python: http://www.infoworld.com/article/04/09/24/39FErrdev_1.html?s=feature PSF is active even to the point that money comes and goes: http://www.python.org/psf/grants/ http://pythonology.blogspot.com/2005/03/case-for-python-software-foundation.html 'Like Tkinter, except for its appearance? Try Tile: http://mfranklin.is-a-geek.org/docs/Tile/index.html While GUI toolkit selection involves significant subjective factors, the PyQt fans at least coherently describe their preference: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/97d9220e7a667ecb/ "Wing 2.0.2 ... adds easier-to-use Zope/Plone integration, extension of the IDE ..., CVS integration, ..., speed optimiations, ..." http://wingware.com/pub/wingide/press/2.0.2-release.html Steven Bethard provides an example of optparse use: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/c79cf10e61656d85/ ======================================================================== 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 Brett Cannon continues the marvelous tradition established by Andrew Kuchling and Michael Hudson of intelligently summarizing action on the python-dev mailing list once every other week. http://www.python.org/dev/summary/ The Python Package Index catalogues packages. http://www.python.org/pypi/ The somewhat older Vaults of Parnassus ambitiously collects references to all sorts of Python resources. http://www.vex.net/~x/parnassus/ Much of Python's real work takes place on Special-Interest Group mailing lists http://www.python.org/sigs/ The Python Business Forum "further[s] the interests of companies that base their business on ... Python." http://www.python-in-business.org Python Success Stories--from air-traffic control to on-line match-making--can inspire you or decision-makers to whom you're subject with a vision of what the language makes practical. http://www.pythonology.com/success The Python Software Foundation (PSF) has replaced the Python Consortium as an independent nexus of activity. It has official responsibility for Python's development and maintenance. http://www.python.org/psf/ Among the ways you can support PSF is with a donation. http://www.python.org/psf/donate.html Kurt B. Kaiser publishes a weekly report on faults and patches. http://www.google.com/groups?as_usubject=weekly%20python%20patch Cetus collects Python hyperlinks. http://www.cetus-links.org/oo_python.html Python FAQTS http://python.faqts.com/ The Cookbook is a collaborative effort to capture useful and interesting recipes. http://aspn.activestate.com/ASPN/Cookbook/Python Among several Python-oriented RSS/RDF feeds available are http://www.python.org/channews.rdf http://bootleg-rss.g-blog.net/pythonware_com_daily.pcgi http://python.de/backend.php For more, see http://www.syndic8.com/feedlist.php?ShowMatch=python&ShowStatus=all The old Python "To-Do List" now lives principally in a SourceForge reincarnation. http://sourceforge.net/tracker/?atid=355470&group_id=5470&func=browse http://python.sourceforge.net/peps/pep-0042.html The online Python Journal is posted at pythonjournal.cognizor.com. editor@pythonjournal.com and editor@pythonjournal.cognizor.com welcome submission of material that helps people's understanding of Python use, and offer Web presentation of your work. del.icio.us presents an intriguing approach to reference commentary. It already aggregates quite a bit of Python intelligence. http://del.icio.us/tag/python *Py: the Journal of the Python Language* http://www.pyzine.com Archive probing tricks of the trade: http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python&num=100 http://groups.google.com/groups?meta=site%3Dgroups%26group%3Dcomp.lang.python.* Previous - (U)se the (R)esource, (L)uke! - messages are listed here: http://www.ddj.com/topics/pythonurl/ (requires subscription) http://groups-beta.google.com/groups?q=python-url+group:comp.lang.python*&start=0&scoring=d& http://purl.org/thecliff/python/url.html (dormant) or http://groups.google.com/groups?oi=djq&as_q=+Python-URL!&as_ugroup=comp.lang.python Suggestions/corrections for next week's posting are always welcome. E-mail to should get through. To receive a new issue of this posting in e-mail each Monday morning (approximately), ask to subscribe. Mention "Python-URL!". -- The Python-URL! Team-- Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and sponsor the "Python-URL!" project. From tim at zope.com Fri Mar 18 22:09:14 2005 From: tim at zope.com (Tim Peters) Date: Sat Mar 19 15:34:33 2005 Subject: ZODB 3.2.6 final released Message-ID: <20050318210915.5B0E63B8038@smtp.zope.com> I'm pleased to announce the release of ZODB 3.2.6 final. This corresponds to the ZODB released in Zope 2.7.5 earlier today. You can download a source tarball or Windows installer from: http://zope.org/Products/ZODB3.2 Only documentation changes were made since the 3.2.6b1 release. There are several critical bugfixes in this release, addressing rare problems in two major areas: - Thread and asyncore races while ZEO is attempting to make a connection, leading to connection failure and/or missed messages. - Rare cases in which FileStorage could reuse object identifiers, assigning the same oid to two distinct objects. See the news file for details: http://zope.org/Products/ZODB3.2/NEWS ZODB 3.2.6 can be used with Zopes in the 2.7 line, at or after Zope 2.7.3. Note that ZODB 3.2.6 does not support development on Zope 2.8, Zope X3 or Zope 3 (they require a ZODB in the 3.3 or 3.4 lines). From djc at object-craft.com.au Sat Mar 19 04:59:45 2005 From: djc at object-craft.com.au (Dave Cole) Date: Sat Mar 19 15:34:34 2005 Subject: Sybase module 0.37pre1 released Message-ID: <423BA3B1.50408@object-craft.com.au> WHAT IS IT: The Sybase module provides a Python interface to the Sybase relational database system. It supports all of the Python Database API, version 2.0 with extensions. NOTES: This release contains a number of small bugfixes and patches received from users. I have been unable to find the source of the memory leak reported here: http://www.object-craft.com.au/pipermail/python-sybase/2004-December/000346.html The test program I wrote follows: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - import sys import Sybase db = Sybase.connect(..., auto_commit=True) db.execute(''' if exists (select name from sysobjects where name = "sp_test_leak") begin drop procedure sp_test_leak end ''') db.execute(''' create procedure sp_test_leak @arg int as select @arg ''') for i in range(200): for j in range(1000): c = db.cursor() c.callproc('sp_test_leak', {'@arg': 12345 }) sys.stdout.write('%3d\r' % i) sys.stdout.flush() sys.stdout.write('\n') - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - If someone is able to modify this and come up with a leaking result I am interested in working on the fix. You can build for FreeTDS like this: python setup.py build_ext -D HAVE_FREETDS -U WANT_BULKCOPY python setup.py install The module is available here: http://www.object-craft.com.au/projects/sybase/download/sybase-0.37pre1.tar.gz The module home page is here: http://www.object-craft.com.au/projects/sybase/ CHANGES SINCE 0.36: * Cursor output parameters now work when parameters are passed as a sequence. * Output parameters now work for FreeTDS 0.62.4. 1> create procedure sp_test_output 2> @num int, @result int output 3> as 4> select @result = @num 5> go params = c.callproc('sp_test_output', {'@num': 12345, '@result': Sybase.OUTPUT(1)}) print params['@result'] * The CS_STATUS_RESULT result set is now consumed internally in the Cursor and does not appear in the result sets consumed by the fetch and nextset methods. The return value from the stored procedure is available in the .return_status member of the Cursor. It will only contain a meaningful value once all of the row result sets have been consumed. Note that this does not work with FreeTDS 0.62.4. The return_status seems to always be 0. Research shows that the problem is probably in the CT emulation layer as tsql displays the correct value, but sqsh displays 0. * Output hook patch from Ty Sarna has been applied. * Applied patch from Andre Sedinin to improve error handling. * Improved detection of SYBASE_OCS. - Dave -- http://www.object-craft.com.au From irmen.NOSPAM at xs4all.nl Sun Mar 20 00:19:06 2005 From: irmen.NOSPAM at xs4all.nl (Irmen de Jong) Date: Sun Mar 20 14:29:22 2005 Subject: Snakelets 1.38 (simple-to-use web app server with dynamic pages) Message-ID: <423cb364$0$143$e4fe514c@news.xs4all.nl> I'm happy to say that Snakelets 1.38 is available. Snakelets is a very simple-to-use Python web application server. This project provides a built-in threaded web server (so you don't need to set up Apache or another web server), Ypages (HTML+Python language, similar to Java's JSPs) and Snakelets: code-centric page request handlers (similar to Java's Servlets). Snakelets is fully unicode compatible and it's possible to run it from a CD (read-only mode). It's released under the open-source MIT Software license. You can download from http://snakelets.sourceforge.net (go to the SF project site, and then the file section). A selection of the changes: - Documentation cleanups and improvements, more info on Apache config. - now requires at least Python 2.3 to run - added 'smart suffix finder' - fixed cookie removal problem, templated error page, and other smaller issues - static asset and url convenience stuff - documented static-file serving API (to facilitate download pages etc) - directory lister is now a (server-)plugin - new plugin distr corresponding with this new version - many cleanups in the html pages To start, edit the vhost config file (see docs) and then run the serv.py script, or the monitor.py script if you want to start it as a daemon (on Unix). Enjoy, --Irmen de Jong. P.S. if you want to see it in action, visit http://www.razorvine.net/snake/ From stuff at mailzilla.net Sun Mar 20 04:04:52 2005 From: stuff at mailzilla.net (stuff@mailzilla.net) Date: Sun Mar 20 14:29:22 2005 Subject: ReleaseForge 0.5 - A SourceForge project release tool Message-ID: <1111287892.034798.34940@g14g2000cwa.googlegroups.com> What is ReleaseForge? How silly of you to ask, but I shall satisfy your silly curiosity nonetheless. Are you a project administrator -or- release tech/engineer of at least one SourceForge-based project? If not, skip this message and don't read further... ReleaseForge is not for you. Still with me? Then you must be responsible for file releases of one or more SourceForge projects, either that, or, you're desperately in need of a life since ReleaseForge is of no use to you. ReleaseForge is a GUI application that offers many advantages to using SourceForge's package release system: - ReleaseForge allows you to quickly and effortlessly create a new release of one of your SourceForge project packages. - When creating a new release, you enter the release information (version number, change log, release notes) and then specify the files to include in the release. - ReleaseForge guesses the type of file (.gz, .zip, .rpm, .exe, etc...) for each of your files. Once you are satisfied with the release, ReleaseForge does all of the tedious work so that you don't have to: - Contacts SourceForge and adds your new release to your project's package. - Uploads all of your files for the release to the SourceForge FTP server. - Uploads your release notes and change log. - Automatically selects each of your uploaded files for inclusion in your new release. - Automatically applies the processor type and file type to each of your files. - If applicable, notifies monitoring users of the new release. These are just some of the awesome ReleaseForge features, you can learn more by checking out the ReleaseForge site at: http://releaseforge.sourceforge.net There is a FAQ and lots of pretty pictures of supermodels, err, screenshots. Either way, you'll be glad you visited the site, or not. ReleaseForge is written in Python (version 2.3 or greater) and uses PyQt for it's snazzy user interface. Phil From djc at object-craft.com.au Mon Mar 21 00:15:36 2005 From: djc at object-craft.com.au (Dave Cole) Date: Mon Mar 21 14:27:48 2005 Subject: Sybase module 0.37pre2 released Message-ID: <423E0418.6080405@object-craft.com.au> WHAT IS IT: The Sybase module provides a Python interface to the Sybase relational database system. It supports all of the Python Database API, version 2.0 with extensions. NOTES: This release contains a number of small bugfixes and patches received from users. I have been unable to find the source of the memory leak reported here: http://www.object-craft.com.au/pipermail/python-sybase/2004-December/000346.html The test program I wrote follows: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - import sys import Sybase db = Sybase.connect(..., auto_commit=True) db.execute(''' if exists (select name from sysobjects where name = "sp_test_leak") begin drop procedure sp_test_leak end ''') db.execute(''' create procedure sp_test_leak @arg int as select @arg ''') for i in range(200): for j in range(1000): c = db.cursor() c.callproc('sp_test_leak', {'@arg': 12345 }) sys.stdout.write('%3d\r' % i) sys.stdout.flush() sys.stdout.write('\n') - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - If someone is able to modify this and come up with a leaking result I am interested in working on the fix. You can build for FreeTDS like this: python setup.py build_ext -D HAVE_FREETDS -U WANT_BULKCOPY python setup.py install The module is available here: http://www.object-craft.com.au/projects/sybase/download/sybase-0.37pre1.tar.gz The module home page is here: http://www.object-craft.com.au/projects/sybase/ CHANGES SINCE 0.36: * Cursor state initialisation fix from Skip Montanaro. * Callback declaration fix on Windows from Vadim Beloborodov. * Cursor output parameters now work when parameters are passed as a sequence. * Output parameters now work for FreeTDS 0.62.4. 1> create procedure sp_test_output 2> @num int, @result int output 3> as 4> select @result = @num 5> go params = c.callproc('sp_test_output', {'@num': 12345, '@result': Sybase.OUTPUT(1)}) print params['@result'] * The CS_STATUS_RESULT result set is now consumed internally in the Cursor and does not appear in the result sets consumed by the fetch and nextset methods. The return value from the stored procedure is available in the .return_status member of the Cursor. It will only contain a meaningful value once all of the row result sets have been consumed. Note that this does not work with FreeTDS 0.62.4. The return_status seems to always be 0. Research shows that the problem is probably in the CT emulation layer as tsql displays the correct value, but sqsh displays 0. * Output hook patch from Ty Sarna has been applied. * Applied patch from Andre Sedinin to improve error handling. * Improved detection of SYBASE_OCS. - Dave -- http://www.object-craft.com.au From djc at object-craft.com.au Mon Mar 21 00:55:07 2005 From: djc at object-craft.com.au (Dave Cole) Date: Mon Mar 21 14:27:49 2005 Subject: [DB-SIG] Sybase module 0.37pre2 released In-Reply-To: <423E0418.6080405@object-craft.com.au> References: <423E0418.6080405@object-craft.com.au> Message-ID: <423E0D5B.70004@object-craft.com.au> Dave Cole wrote: > The module is available here: > > > http://www.object-craft.com.au/projects/sybase/download/sybase-0.37pre1.tar.gz Ooops. Make that: http://www.object-craft.com.au/projects/sybase/download/sybase-0.37pre2.tar.gz - Dave -- http://www.object-craft.com.au From unicorn at kurskline.ru Mon Mar 21 14:04:49 2005 From: unicorn at kurskline.ru (Roman V. Kiseliov) Date: Mon Mar 21 14:28:17 2005 Subject: Python + FreeBSD + Excel 97/2k/XP/2k3 + UNICODE Message-ID: <19005311.20050321160449@kurskline.ru> Hi, all! I wrote package (about 200k sources, BSD license) for generating BIFF8 files (Excel 97/2k/XP/2k3) with UNICODE, shared string table, ... This isn't port or borrowing of pyXLWriter (it knows only BIFF 5/7) or Perl::Spreadsheet::WriteExcel. My package is written from scratch. I'm working now on support of Esher layer in Excel files. I implemented also from scratch writing of MS Compound Documents. In addition package contains BIFF8 dumper and OLE2 files dumper. At present this package used by http://www.kurskline.ru/cgi-bin/prices.pl for generating .xls Want someone using such package? -- Regards, Roman V. Kiseliov, unicorn@kurskline.ru ICQ: 282708268 P.S. Package name is "pyExcelerator" ------------------------------------------ From bac at ocf.berkeley.edu Mon Mar 21 17:04:15 2005 From: bac at ocf.berkeley.edu (Brett C.) Date: Mon Mar 21 17:41:05 2005 Subject: python-dev Summary for 2005-03-01 through 2005-03-15 Message-ID: <423EF07F.5080501@ocf.berkeley.edu> [The HTML version of this Summary is available at http://www.python.org/dev/summary/2005-03-01_2005-03-15.html] ===================== Summary Announcements ===================== ----------------------------- Second to last summary for me ----------------------------- Just a reminder, after this Summary there is only one more left for me to write. After that Tim Lesher, Tony Meyer, and Steven Bethard will be taking over. ----------------- See you at PyCon! ----------------- PyCon_ is practically upon us! If you are going to be there, great! Please feel free to say hello if you run into me (will be at the sprints and the conference Wednesday and Thursday; skipping Friday to see a friend). Always happy to stop-and-chat. .. _PyCon: http://www.pycon.org/ ------------------------ 2.4.1 should be out soon ------------------------ Python 2.4c2 has now been released. Assuming no major issues come up, 2.4 final will be out March 29; day after PyCon. But in order to make sure no issues come up, we need the code to be tested! Please get the code and run the regression tests. If you are on a UNIX system it is as easy as running ``make test`` (``make testall`` is even better). The tests can also be run on non-UNIX systems; see http://docs.python.org/lib/regrtest.html on how. ========= Summaries ========= ---------------------- 2.4 should be out soon ---------------------- Python 2.4.1c1 was releaseed, but enough bugs were found and subsequently fixed that c2 release will occur before 2.4 final comes out. Contributing threads: - `2.4.1c1 March 10th, 2.4.1 March 17th `__ - `BRANCH FREEZE for 2.4.1rc1, 0000 UTC, 2005-03-10 `__ - `branch release24-maint is unfrozen, 2.4.1rc2? `__ - `os.access and Unicode `__ - `RELEASED Python 2.4.1, release candidate 1 `__ - `distutils fix for building Zope against Python 2.4.1c1 `__ - `Python2.4.1c1 and win32com `__ - `Open issues for 2.4.1 `__ ------------------------------------------- Getting state of all threads in interpreter ------------------------------------------- Florent Guillaume wrote some code for Zope that returned the current state of all threads in the interpreter, regardless of whether they were hung or not. Tim Peters suggested someone write up some code so that this could be made available in Python itself. Fazal Majid has volunteered to implement this. Contributing threads: - `Useful thread project for 2.5? `__ --------------------------------- No new features in micro releases --------------------------------- A bug in os.access() not allowing Unicode strings triggered the discussion of whether it was a bugfix to repair the issue or a new feature. In the end it was decided it was a bugfix. But the point was specified that micro releases should never have any new feature, no matter how small. Contributing threads: - `[Python-checkins] python/dist/src/Modules ossaudiodev.c, 1.35, 1.36 `__ - `No new features `__ - `os.access and Unicode `__ - `rationale for the no-new-features approach `__ ------------------------------------- Python wins Jolt "Productivity Award" ------------------------------------- Python was runner-up in the `15th annual Jolt Awards`_ in the category of "Languages and Development Environments", being given the "Productivity Award". Python is now award-winning. =) .. _15th annual Jolt Awards: http://www.sdmagazine.com/jolts/15th_jolt_finalists.html Contributing threads: - `FWD: SD MAgazine.com - Jolt Awards Winners `__ - `Python 2.4 won the "Jolt productivity award" last night `__ ------------------------------ New built-ins: any() and all() ------------------------------ Python 2.5 gains two new built-ins: any(), which returns True if the iterable passed to it contains any true items, and all(), which returns True if all the items in the iterable passed to it are true. Contributing threads: - `Adding any() and all() `__ -------------------------------- Abbreviating list comprehensions -------------------------------- The idea of allowing list comprehensions when the item being appended to the new list is passed directly in was proposed: ``[x in seq if f(x)`` would be equivalent to ``[x for x in seq if f(x)]``. The debate on this one is still going, but my gut says it won't be accepted; TOOWTDI and all. Contributing threads: - `Adding any() and all() `__ - `comprehension abbreviation `__ ------------------------- sum() semantics discussed ------------------------- Guido's blog entry on `the fate of reduce() in Python 3000`_ (which reiterated Guido's plan to cut map(), reduce(), filter() and lambdas (what about zip()?) caused a huge discussion on whether sum() worked the best way possible. As it stands now, sum() only accepts a sequence of numbers (sort of; more later) and its optional second argument works as an initial value to build off of. You can abuse the second argument to allow for adding other things (such as ``sum([[1], [2], [3]], [])``), but don't do that. =) The suggestion was put forth of making the second argument more of a default argument if the passed-in sequence was empty. Otherwise the second argument would be ignored. But further discussion solidified the idea that sum() works quite well as it is and thus won't be changed in Python 3000. .. _the fate of reduce() in Python 3000: http://www.artima.com/weblogs/viewpost.jsp?thread=98196 Contributing threads: - `sum() `__ - `Rationale for sum()'s design? `__ ----------------------------- Experimenting with subversion ----------------------------- note: written by Tony Meyer Martin v. L?wis did an automatic conversion of the Python CVS repository to (fellow Jolt winner) `Subversion`_, to see how well the process worked. He discovered that although the conversion process takes several hours, there were only minor problems with the conversion. It seems likely that if SourceForge does offer subversion repositories, as they have indicated they will, then Python will switch to this. Martin plans to continue collecting issues/complaints about the conversion conversion and to integrate solutions. .. _Subversion: http://subversion.tigris.org Contributing threads: - `Migrating to subversion `__ -------------------- Ordered Dictionaries -------------------- note: written by Tony Meyer A suggestion was made that hashed sets and maps that iterate in the order that the keys were added to the set/map could be added to 'collections'. The original use case presented was to remove duplicates without changing order, but it was pointed out that there are other, better, ways to do this. Although better use cases were presented, the consensus was that (in Barry Warsaw's words) "while the concept of 'an ordered dictionary' is nice and seemingly generic enough, [the] exact semantics and other design factors will either tend to push the stdlib implementation into ever more complexity, or won't prevent people from continuing to roll their own because the stdlib version 'isn't quite right'". A `cookbook recipe`_ is available, however. .. _cookbook recipe: http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/107747 Contributing threads: - `LinkedHashSet/LinkedHashMap equivalents `__ ----------------- Easier decorators ----------------- note: written by Tony Meyer Nick Coghlan suggested that an update_meta() function be added that copies across appropriate metadata of functions being decorated (such as __name__, __doc__, and __dict__), to make the process of decorating simpler, and more robust in the long term (e.g. if a new attribute should be copied in the future, update_meta can be updated, rather than individual decorators). A `patch`_ implementing this behaviour was submitted. .. _patch: http://www.python.org/sf/1161819 Contributing threads: - `@deprecated (was: Useful thread project for 2.5?) `__ - `func.update_meta (was: @deprecated) `__ - `(no subject) `__ =============== Skipped Threads =============== + Re: python-dev Summary for 2005-01-16 through 2005-01-31 + Documentation for __new__ + Decimal & returning NotImplemented (or not) + itemgetter/attrgetter extension + Re: [Python-checkins] python/dist/src/Lib/idlelib NEWS.txt, 1.49.2.3, 1.49.2.4 idlever.py, 1.22.2.1, 1.22.2.2 + code blocks using 'for' loops and generators + can we stop pretending _PyTyple_Lookup is internal? ======== Epilogue ======== ------------ Introduction ------------ This is a summary of traffic on the `python-dev mailing list`_ from March 01, 2005 through March 15, 2005. It is intended to inform the wider Python community of on-going developments on the list on a semi-monthly basis. An archive_ of previous summaries is available online. An `RSS feed`_ of the titles of the summaries is available. You can also watch comp.lang.python or comp.lang.python.announce for new summaries (or through their email gateways of python-list or python-announce, respectively, as found at http://mail.python.org). This is the sixieth summary written by Brett Cannon (sprinting my Spring Break away). To contact me, please send email to brett at python.org. 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 penny helps so even a small donation with a credit card, check, or by PayPal helps. If you are looking for a way to expand your knowledge of Python's development and inner-workings, consider writing the python-dev Summaries yourself! I am willing to hand over the reins to someone who is willing to do a comparable or better job of writing the Summaries. If you are interested, please email me at brett at python.org. -------------------- Commenting on Topics -------------------- To comment on anything mentioned here, just post to `comp.lang.python`_ (or email python-list@python.org which is a gateway to the newsgroup) with a subject line mentioning what you are discussing. All python-dev members are interested in seeing ideas discussed by the community, so don't hesitate to take a stance on something. And if all of this really interests you then get involved and join `python-dev`_! ------------------------- How to Read the Summaries ------------------------- The in-development version of the documentation for Python can be found at http://www.python.org/dev/doc/devel/ and should be used when looking up any documentation for new code; otherwise use the current documentation as found at http://docs.python.org/ . PEPs (Python Enhancement Proposals) are located at http://www.python.org/peps/ . To view files in the Python CVS online, go to http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/python/ . Reported bugs and suggested patches can be found at the SourceForge_ project page. Please note that this summary is written using reStructuredText_. Any unfamiliar punctuation is probably markup for reST_ (otherwise it is probably regular expression syntax or a typo =); you can safely ignore it. I do suggest learning reST, though; it's simple and is accepted for `PEP markup`_ and can be turned into many different formats like HTML and LaTeX. Unfortunately, even though reST is standardized, the wonders of programs that like to reformat text do not allow me to guarantee you will be able to run the text version of this summary through Docutils_ as-is unless it is from the `original text file`_. .. _python-dev: http://www.python.org/dev/ .. _SourceForge: http://sourceforge.net/tracker/?group_id=5470 .. _python-dev mailing list: http://mail.python.org/mailman/listinfo/python-dev .. _c.l.py: .. _comp.lang.python: http://groups.google.com/groups?q=comp.lang.python .. _PEP Markup: http://www.python.org/peps/pep-0012.html .. _Docutils: http://docutils.sf.net/ .. _reST: .. _reStructuredText: http://docutils.sf.net/rst.html .. _PSF: .. _Python Software Foundation: http://python.org/psf/ .. _last summary: http://www.python.org/dev/summary/2005-02-15_2005-02-28.html .. _original text file: http://www.python.org/dev/summary/2005-03-01_2005-03-15.ht .. _archive: http://www.python.org/dev/summary/ .. _RSS feed: http://www.python.org/dev/summary/channews.rdf From unicorn at kurskline.ru Wed Mar 23 09:51:29 2005 From: unicorn at kurskline.ru (Roman V. Kiseliov) Date: Wed Mar 23 17:18:52 2005 Subject: pyExcelerator (Python + FreeBSD + Excel 97/2k/XP/2k3 + UNICODE) Message-ID: <1027481952.20050323115129@kurskline.ru> 23 or 24.03.2005 I'll put pyExcelerator for download. In additional message I'll give link. Sorry for uncomfortable conditions. Situation will change in few days. -- Regards, Roman V. Kiseliov, unicorn@mail.kurskline.ru ICQ: 282708268 From dan.gass at gmail.com Wed Mar 23 15:12:33 2005 From: dan.gass at gmail.com (Dan Gass) Date: Wed Mar 23 17:18:52 2005 Subject: [Python-Announce] cfgparse v01_01 released Message-ID: I'm pleased to announce the V01_01 release of cfgparse. Whats New ------------------------------------------------------------- 1) Exception argument added to the Configuration parser initializer so that exceptions may be raised when user errors are encountered instead of the default call to sys.exit() that doesn't provide traceback. 2) Error messages were enhanced giving more detailed information. Background ------------------------------------------------------------- cfgparse is a more convenient, flexible, and powerful module for parsing configuration files than the standard library ConfigParser module. cfgparse uses a more declarative style modelled after the popular optparse standard library module. cfgparse can optionally cooperate with the optparse module to provide coordination between command line and configuration file options. In addition, the cooperation can be used to allow the user to control features of the parser from the command line. URLs ------------------------------------------------------------- Documentation: http://cfgparse.sourceforge.net/ Download: http://sourceforge.net/projects/cfgparse/ Feature Summary ------------------------------------------------------------- + Simple ini style configuration syntax. + Type checking with error handling and help messages. + Help summary modelled after that in optparse. + Round trip - read, modify, write configuration files with comment retention. + Cooperates with optparse so options may be overridden from command line. + Supports heirarchically organized option settings. * User may store multiple option settings in a arbitrarily deep keyed dictionary. * Application uses a key list to walk into the dictionary to obtain a setting. * User controls key list with setting in configuration file. * Keys may be added to the list using command line or environment variables. + Supports allowing user control of configuration files used. * Environment variables may be used to specify a default configuration file. * Command line may be used to specify additional configuration files. * Configuration files may include other configuration files. + Configuration files may alternatively be written in Python. * Full power and flexibility of Python available for creation of option settings. * Allows options settings to be real Python objects. * This feature is NOT enabled by default. + May be extended to support syntax such as XML. Enjoy, Dan Gass From hanselst at chello.nl Wed Mar 23 20:27:29 2005 From: hanselst at chello.nl (Hans Elst) Date: Thu Mar 24 14:56:32 2005 Subject: MMA - Musical MIDI Accompaniment, Beta 0.12 Message-ID: I do not succeed in downloading MMA from http://mypage.uniserve.com/~bvdp/mma/mma.html Error 404. Can you help me? Regards, Hans From s_t_a_n_i at gmx.net Thu Mar 24 01:33:31 2005 From: s_t_a_n_i at gmx.net (s_t_a_n_i@gmx.net) Date: Thu Mar 24 14:56:32 2005 Subject: SPE 0.7.3.A with Blender, wxGlade and PyChecker support Message-ID: <1111624411.066382.84580@l41g2000cwc.googlegroups.com> Spe is a python IDE with auto-indentation, auto completion, call tips, syntax coloring, uml viewer, syntax highlighting, class explorer, source index, auto todo list, sticky notes, integrated pycrust shell, python file browser, recent file browser, drag&drop, context help, ... Special is its blender support with a blender 3d object browser and its ability to run interactively inside blender. Spe ships with wxGlade (gui designer), PyChecker (source code doctor) and Kiki (regular expression console). Spe is extensible with wxGlade. This is a fix release for wxPython 2.5.4.1 If you like SPE, please contribute by coding, writing documentation or donating. Also I would like to thank Michael Foord, who made SPE part of a new Python distribution, called "movable python". It gives you the possibility to carry your favorite developping environment on a USB stick. So you can continue your work on any computer or test your modules for different python versions. This distribution opens a lot of new possibilities, check it out!! For more info, visit http://www.voidspace.org.uk/python/programs.shtml#movpy :Batteries included: - Kiki: Regular Expression (regex) console. For more info: http://project5.freezope.org/kiki/index.html - PyChecker: PyChecker is a tool for finding bugs in python source code. It finds problems that are typically caught by a compiler for less dynamic languages, like C and C++. It is similar to lint. For more info: http://pychecker.sourceforge.net - wxGlade: wxGlade is a GUI designer written in Python with the popular GUI toolkit wxPython, that helps you create wxWindows/wxPython user interfaces. As you can guess by the name, its model is Glade, the famous GTK+/GNOME GUI builder, with which wxGlade shares the philosophy and the look & feel (but not a line of code). For more info: http://wxglade.sourceforge.net :New features: - None :Bug fixes: - wxPython 2.5.4.1 :Donations(20euro): - Gerard Blais :Contributors: - None :Requirements: - full python 2.3+ - wxpython 2.5.3.8+ - optional blender 2.35+ :Links: - Homepage: http://spe.pycs.net - Website: http://projects.blender.org/projects/spe/ - Screenshots: http://spe.pycs.net/pictures/index.html - Forum: http://projects.blender.org/forum/?group_id=30 - RSS feed: http://spe.pycs.net/weblog/rss.xml From ta-meyer at ihug.co.nz Thu Mar 24 06:39:32 2005 From: ta-meyer at ihug.co.nz (Tony Meyer) Date: Thu Mar 24 14:56:33 2005 Subject: ANNOUNCE: SpamBayes 1.0.4 Message-ID: The SpamBayes team is pleased to announce release 1.0.4 of SpamBayes. This is a bug-fix release that fixes one major issue with the 1.0.3 release: if a 1.0.3 sb_server user's mail client tries to connect to the mail server, and the DNS lookup succeeds but the connection fails, then sb_server will write warnings to the log until there is no disk space left to do so. This specific problem is fixed in 1.0.4, and in addition 1.0.4 is again built with Python 2.3 (not 2.4), so should more closely match 1.0.1. Connection errors are also now only logged once per hour (unless the verbose option is set). No other changes have been made. As such, we strongly recommend that all sb_server users upgrade. sb_imapfilter, Outlook plug-in, and other users should notice no difference between 1.0.3 and 1.0.4 and do not need to upgrade. You can get the release via the 'Download' page at http://spambayes.org/download.html Enjoy the new release and your spam-free mailbox :-) As always, thanks to everyone involved in this release. (For the curious, the oft-delayed 1.1a1 release should be made next week.) Tony. (on behalf of the SpamBayes team) --- What is SpamBayes? --- The SpamBayes project is working on developing a Bayesian (of sorts) anti-spam filter (in Python), initially based on the work of Paul Graham, but since modified with ideas from Robinson, Peters, et al. The project includes a number of different applications, all using the same core code, ranging from a plug-in for Microsoft Outlook, to a POP3 proxy, to various command-line tools. The Windows installation program will install either the Outlook add-in (for Microsoft Outlook users), or the SpamBayes server program (for all other POP3 mail client users, including Microsoft Outlook Express). All Windows users (including existing users of the Outlook add-in) are encouraged to use the installation program. If you wish to use the source-code version, you will also need to install Python - see README.txt in the source tree for more information. From fredrik at pythonware.com Thu Mar 24 14:14:47 2005 From: fredrik at pythonware.com (Fredrik Lundh) Date: Thu Mar 24 14:56:34 2005 Subject: ANN: PIL 1.1.5 release candidate 2 (march 23, 2005) Message-ID: <200503241314.j2ODEDJ02825@pythonware.com> PIL 1.1.5 release candidate 2 is now available from effbot.org: http://effbot.org/downloads#imaging (look for Imaging-1.1.5c2.tar.gz for source, and PIL-115c2*.exe for windows binaries). For a list of changes in this release, see this page: http://effbot.org/zone/pil-changes-115.htm enjoy /F From python-url at phaseit.net Thu Mar 24 06:49:50 2005 From: python-url at phaseit.net (Cameron Laird) Date: Thu Mar 24 14:56:41 2005 Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Mar 24) Message-ID: QOTW: [Must be seen to be believed] http://groups-beta.google.com/group/comp.lang.python/msg/7613422265cdc010 "If you don't read answers, don't post questions :-/" -- bruno desthuilliers News from PyCon2005 emerges almost continuously. See, for example, this blog startpoint: http://pycon.blogspot.com/ Want productivity? Get Python: http://mail.python.org/pipermail/python-dev/2005-March/052246.html Pythoneers produce side-splitting doggerel: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/d7a780beaff2e88a/ 'Suspect that essentially all computing problems have been solved, and all programs already written? The Python Poets put the lie to *that* proposition, and spectacularly: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/2825cf318cb63a81/ Florent Guillaume, Fazal Majid, and others significantly advance the state of threading: http://mail.python.org/pipermail/python-dev/2005-March/051856.html Getting passwords right is ... a lot more challenging than the many inviting ways to do it wrong: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/91e4c114c5114e92/ Understand Python scoping, even in the presence of generators: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/460bdb4e14db8428/ ======================================================================== 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 Brett Cannon continues the marvelous tradition established by Andrew Kuchling and Michael Hudson of intelligently summarizing action on the python-dev mailing list once every other week. http://www.python.org/dev/summary/ The Python Package Index catalogues packages. http://www.python.org/pypi/ The somewhat older Vaults of Parnassus ambitiously collects references to all sorts of Python resources. http://www.vex.net/~x/parnassus/ Much of Python's real work takes place on Special-Interest Group mailing lists http://www.python.org/sigs/ The Python Business Forum "further[s] the interests of companies that base their business on ... Python." http://www.python-in-business.org Python Success Stories--from air-traffic control to on-line match-making--can inspire you or decision-makers to whom you're subject with a vision of what the language makes practical. http://www.pythonology.com/success The Python Software Foundation (PSF) has replaced the Python Consortium as an independent nexus of activity. It has official responsibility for Python's development and maintenance. http://www.python.org/psf/ Among the ways you can support PSF is with a donation. http://www.python.org/psf/donate.html Kurt B. Kaiser publishes a weekly report on faults and patches. http://www.google.com/groups?as_usubject=weekly%20python%20patch Cetus collects Python hyperlinks. http://www.cetus-links.org/oo_python.html Python FAQTS http://python.faqts.com/ The Cookbook is a collaborative effort to capture useful and interesting recipes. http://aspn.activestate.com/ASPN/Cookbook/Python Among several Python-oriented RSS/RDF feeds available are http://www.python.org/channews.rdf http://bootleg-rss.g-blog.net/pythonware_com_daily.pcgi http://python.de/backend.php For more, see http://www.syndic8.com/feedlist.php?ShowMatch=python&ShowStatus=all The old Python "To-Do List" now lives principally in a SourceForge reincarnation. http://sourceforge.net/tracker/?atid=355470&group_id=5470&func=browse http://python.sourceforge.net/peps/pep-0042.html The online Python Journal is posted at pythonjournal.cognizor.com. editor@pythonjournal.com and editor@pythonjournal.cognizor.com welcome submission of material that helps people's understanding of Python use, and offer Web presentation of your work. del.icio.us presents an intriguing approach to reference commentary. It already aggregates quite a bit of Python intelligence. http://del.icio.us/tag/python *Py: the Journal of the Python Language* http://www.pyzine.com Archive probing tricks of the trade: http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python&num=100 http://groups.google.com/groups?meta=site%3Dgroups%26group%3Dcomp.lang.python.* Previous - (U)se the (R)esource, (L)uke! - messages are listed here: http://www.ddj.com/topics/pythonurl/ (requires subscription) http://groups-beta.google.com/groups?q=python-url+group:comp.lang.python*&start=0&scoring=d& http://purl.org/thecliff/python/url.html (dormant) or http://groups.google.com/groups?oi=djq&as_q=+Python-URL!&as_ugroup=comp.lang.python Suggestions/corrections for next week's posting are always welcome. E-mail to should get through. To receive a new issue of this posting in e-mail each Monday morning (approximately), ask to subscribe. Mention "Python-URL!". -- The Python-URL! Team-- Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and sponsor the "Python-URL!" project. From jfine at pytex.org Thu Mar 24 09:15:43 2005 From: jfine at pytex.org (Jonathan Fine) Date: Thu Mar 24 14:56:41 2005 Subject: [ANN] QaTeX 0.1.1 Message-ID: <4242772F.9000808@pytex.org> I'm pleased to announce the release of version 0.1.1 of QaTeX. Here is a brief description of the package. (La)TeX macro programming is hard. Python is a powerful and easy to use scripting language. QaTeX allows Python modules to be used instead of (La)TeX style files. With QaTeX (pronounced `kwa-tech') TeX asks Questions and Python provides Answers. This release provides proof-of-concept. It is known to run under Linux and Mac OS/X. QaTeX is not yet secure, so please don't use it with untrusted documents. Another problem is that QaTeX does not yet run under Windows. QaTeX is released under the GPL. This release, and further information, is available via the project home page: http://qatex.sourceforge.net -- Jonathan From radeex at gmail.com Thu Mar 24 17:40:30 2005 From: radeex at gmail.com (Christopher Armstrong) Date: Fri Mar 25 15:51:51 2005 Subject: ANN: Twisted version 2.0 Message-ID: <60ed19d405032408407409bc66@mail.gmail.com> http://twistedmatrix.com/ TASMANIA (DP) -- Found on the Internet on 2005-03-22 by an anonymous programmer, Twisted 2.0 was obtained by local authorities and kept isolated for public safety and further study. On 2005-03-25, however, nano-probes were released from the package's surface and propagated the software to the public. Version 2.0 is said to have originated from ancient underground ruins somewhere in Australia, but their existence has not yet been verified. Christopher Armstrong, enslaved release archaeologist, was only able to say "Aieeya! Release?? What release? I just found this here tablet under some sand. Ia!" Project lead Glyph Lefkowitz was not available for comment, as he has fled the planet in fear of the repercussions of the software's new release. Record-keeper Mary Gardiner said "It will be interesting to see if the Twisted Sumo distribution collapses into a singularity. I guess there's a potential that Earth will be destroyed." As of this release, radix's soul, which has been included in Twisted since version 0.8.0, has been split off from the main project and given back to him to maintain in a separate sub-project. ---- Twisted 2.0 is a major upgrade, changing many things not only in the code but also in the structure of the project. As of 2.0, Twisted was split up into many sub-projects which you can read about in the Twisted Split FAQ[1]. 2.0 also marks the first release including the migration to the Zope Interface framework as opposed to Twisted's own built-in interface/adapter system. Another FAQ was made available[2] for those curious about the change. Many, tons, and lots of other changes have been made in this release. The NEWS[3] file contains a high-level overview of most of these changes. Changes in now-split subprojects are available on their individual project pages[4]. Tarballs are currently available at the twistedmatrix.com site, and packages for win32, Debian, and other OSes are currently on the way. 1: http://twistedmatrix.com/projects/core/documentation/upgrades/2.0/split.html 2: http://twistedmatrix.com/projects/core/documentation/upgrades/2.0/components.html 3: http://twistedmatrix.com/projects/core/NEWS.txt 4: http://twistedmatrix.com/projects/ ---- WHAT IS TWISTED? Twisted is an event-based framework for internet applications which works on Python 2.2.X and 2.3.X. The following are the (important) modules included with Twisted: - twisted.application A "Service" system that allows you to organize your application in hierarchies with well-defined startup and dependency semantics, - twisted.cred A general credentials and authentication system that facilitates pluggable authentication backends, - twisted.enterprise Asynchronous database access, compatible with any Python DBAPI2.0 modules, - twisted.internet Low-level asynchronous networking APIs that allow you to define your own protocols that run over certain transports, - twisted.manhole A tool for remote debugging of your services which gives you a Python interactive interpreter, - twisted.protocols Basic protocol implementations and helpers for your own protocol implementations, - twisted.python A large set of utilities for Python tricks, reflection, text processing, and anything else, - twisted.spread A secure, fast remote object system, - twisted.trial A unit testing framework that integrates well with Twisted-based code. Twisted supports integration of the Tk, GTK+, GTK+ 2, Qt, Mac OS X, or wxPython event loop with its main event loop. The Win32 event loop is also supported. For more information, visit http://www.twistedmatrix.com, or join the list at http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python There are many official Twisted subprojects, including clients and servers for web, mail, DNS, and more. You can find out more about these projects at http://twistedmatrix.com/projects/ -- Twisted | Christopher Armstrong: International Man of Twistery Radix | -- http://radix.twistedmatrix.com | Release Manager, Twisted Project \\\V/// | -- http://twistedmatrix.com |o O| | Founding Member, Hobart Hacking Society w----v----w-+ -- http://hackingsociety.org/chapters/hash From alberanid at libero.it Thu Mar 24 23:27:23 2005 From: alberanid at libero.it (Davide Alberani) Date: Fri Mar 25 15:51:52 2005 Subject: IMDbPY 1.8 released Message-ID: IMDbPY 1.8 is available (tgz, deb, rpm, exe) from: http://imdbpy.sourceforge.net/ IMDbPY is a Python package useful to retrieve and manage the data of the IMDb movie database. With this release, it's possible to retrieve many of the still missing pieces of informations about movies and persons. Many bugs were fixed; there are performance improvements and initial support for small systems (like hand-held devices) is introduced. IMDbPY aims to provide an easy way to access the IMDb's database using a Python script. Platform-independent and written in pure Python, it's independent from the data source (since IMDb provides two or three different interfaces to their database). IMDbPY is mainly intended for programmers and developers who want to build their Python programs using the IMDbPY package, but some example scripts - useful for the end users - are included. Other IMDbPY-based programs are available from the home page. -- Davide Alberani [PGP KeyID: 0x465BFD47] http://erlug.linux.it/~da/ From grahamd at dscpl.com.au Fri Mar 25 09:56:39 2005 From: grahamd at dscpl.com.au (grahamd@dscpl.com.au) Date: Fri Mar 25 15:51:53 2005 Subject: ANN: Vampire 1.5, an extension module for mod_python. Message-ID: <1111740999.730622.171400@o13g2000cwo.googlegroups.com> Vampire 1.5 is now available. http://www.dscpl.com.au/projects/vampire http://www.dscpl.com.au/downloads/vampire-1.5-20050325.tar.gz Vampire is an extension module for mod_python, which provides a more flexible dispatch mechanism for basic content handlers, as well as an alternative implementation of the mod_python.publisher module. A range of other useful features are also provided which make using mod_python a much more pleasant experience. For a quick overview of the features that Vampire provides check out: http://www.dscpl.com.au/projects/vampire/articles/vampire-001.html The most important new feature in this release is "vampire::publisher", an attempt at a drop in replacement for mod_python.publisher which avoids many of the problems present in the original in respect of module loading. This version also addresses all the currently known bugs and some limitations listed for mod_python.publisher on the mod_python bugs list. Other features worthy of mentioning are a handler object which can be used selectively in place of a basic content handler to introduce publisher style URL mapping for a single resource. Two handler objects which allow a function exported as a publisher to accept additional path information and have that supplied as a single parameter or for each part of the additional path to be supplied in distinct parameters. Finally, a handler object is provided which allows publisher style URL mapping for XML-RPC service requests. Although Vampire is up to version 1.5, this is the first time it has been announced in this forum. From fredrik at pythonware.com Fri Mar 25 18:48:14 2005 From: fredrik at pythonware.com (Fredrik Lundh) Date: Fri Mar 25 19:38:55 2005 Subject: ANN: PythonDoc 2.1 beta 3 (march 25, 2005) Message-ID: <200503251747.j2PHleJ12118@pythonware.com> PythonDoc is a documentation tool for Python, inspired by JavaDoc. Like JavaDoc, PythonDoc scans your Python code for doc comments, and generates API documentation in XML and HTML formats. Python- Doc supports basic JavaDoc tags like @param and @return, and adds a few Python-specific tags. You can use PythonDoc comments to describe module-level variables and constants, functions, classes, methods, and attributes. PythonDoc comes with a standard HTML generator, but you can plug in your own output handlers, or use XSLT or other tools to process the PythonDoc XML format. PythonDoc 2.1b3 parses docstrings and adds them to the XML model. It also includes some minor bug fixes. See the README file for details. Downloads: http://effbot.org/downloads#pythondoc http://effbot.org/downloads#elementtree Documentation: http://effbot.org/zone/pythondoc.htm enjoy /F From ptmcg at austin.rr.com Sat Mar 26 06:56:49 2005 From: ptmcg at austin.rr.com (Paul McGuire) Date: Sun Mar 27 04:02:44 2005 Subject: ANN: pyparsing-1.3 released Message-ID: <1111816609.639005.70050@l41g2000cwc.googlegroups.com> I'm happy to announce that 1) pyparsing has been pretty stable for the past 6 months (the last formal release 1.2.2 was last September), and 2) I finally found the time to put together a new release, version 1.3. This release also includes all of the enhancements I posted to CVS last fall as version 1.2.3, but never formally released. Here are some of the major new features and bug-fixes: Version 1.3 - March, 2005 ---------------------------------- - Added new Keyword class, as a special form of Literal. Keywords must be followed by whitespace or other non-keyword characters, to distinguish them from variables or other identifiers that just happen to start with the same characters as a keyword. For instance, the input string containing "ifOnlyIfOnly" will match a Literal("if") at the beginning and in the middle, but will fail to match a Keyword("if"). Keyword("if") will match only strings such as "if only" or "if(only)". (Berteun Damman requested this on comp.lang.python - great idea!) - Added setWhitespaceChars() method to override the characters to be skipped as whitespace before matching a particular ParseElement. Also added the class-level method setDefaultWhitespaceChars(), to allow users to override the default set of whitespace characters (space, tab, newline, and return) for all subsequently defined ParseElements. (Inspired by Klaas Hofstra's inquiry on the Sourceforge pyparsing forum.) - Added helper parse actions to support some very common parse action use cases: .. replaceWith(replStr) - replaces the matching tokens with the provided replStr replacement string; especially useful with transformString() .. removeQuotes - removes first and last character from string enclosed in quotes (note - NOT the same as the string strip() method, as only a single quote character is removed at each end) - Added copy() method to ParseElement, to make it easier to define different parse actions for the same basic parse expression. (Note, copy is implicitly called when using setResultsName().) (The following changes were posted to CVS as Version 1.2.3 - October-December, 2004) - Added support for Unicode strings in creating grammar definitions. (Big thanks to Gavin Panella!) - Added constant alphas8bit to include the following 8-bit characters: ????????????????????????????????????????????????????????????? - Added srange() function to simplify definition of Word elements, using regexp-like '[A-Za-z0-9]' syntax. This also simplifies referencing common 8-bit characters. - Fixed bug in Dict when a single element Dict was embedded within another Dict. (Thanks Andy Yates for catching this one!) - Added 'formatted' argument to ParseResults.asXML(). If set to False, suppresses insertion of whitespace for pretty-print formatting. Default equals True for backward compatibility. - Added setDebugActions() function to ParserElement, to allow user-defined debugging actions. - Added support for escaped quotes (either in \', \", or doubled quote form) to the predefined expressions for quoted strings. (Thanks, Ero Carrera!) - Minor performance improvement (~5%) converting "char in string" tests to "char in dict". (Suggested by Gavin Panella, cool idea!) You can download pyparsing at http://pyparsing.sourceforge.net. Enjoy! -- Paul McGuire From unicorn at kurskline.ru Sun Mar 27 15:24:06 2005 From: unicorn at kurskline.ru (Roman V. Kiseliov) Date: Mon Mar 28 15:25:10 2005 Subject: pyExcelerator 0.4.0a available for download Message-ID: <477975430.20050327172406@kurskline.ru> Hi all! pyExcelerator 0.4.0a with sources is available for download from http://www.kiseliov.ru 0.BSD-like license. 1.Generating Excel 97+ spreadsheets with Python 2.4+ 2.Support for UNICODE 3.Using variety of formatting features and printing options 4.Excel BIFF8 dumper and MS compound documents dumper 5.No need in Windows and COM servers Please send bug reports and feedback to roman@kiseliov.ru You can use anonymous CVS access provided by SourceForge to download source of pre-alpha versions. Project site at SourceForge: http://sourceforge.net/projects/pyexcelerator/ Hope you'll like this pyExcelerator :-) -- Regards, Roman V. Kiseliov, www.kiseliov.ru roman@kiseliov.ru From uche.ogbuji at fourthought.com Sun Mar 27 17:47:33 2005 From: uche.ogbuji at fourthought.com (Uche Ogbuji) Date: Mon Mar 28 15:25:11 2005 Subject: ANN: Amara XML Toolkit 1.0b1 Message-ID: <1111938453.26746.236.camel@borgia> http://uche.ogbuji.net/tech/4Suite/amara ftp://ftp.4suite.org/pub/Amara/ Changes in this release: * Improve mutation API. Results in at least one backwards compat break: node.xml_element(qname [, namespace]) rather than node.xml_element(namespace, qname) * Add binderytools.create_document * Fix support for doctype declarations, PIs and comments * Improve re-serialization API, including better support for 4Suite writers (and some reduction of the direct need for those) * Fix processing instructions, comments and doctype declaration bugs * Numerous bug fixes, demo and test updates Amara XML Toolkit is a collection of Python tools for XML processing-- not just tools that happen to be written in Python, but tools built from the ground up to use Python idioms and take advantage of the many advantages of Python. Amara builds on 4Suite [http://4Suite.org], but whereas 4Suite focuses more on literal implementation of XML standards in Python, Amara focuses on Pythonic idiom. It provides tools you can trust to conform with XML standards without losing the familiar Python feel. The components of Amara are: * Bindery: data binding tool (a very Pythonic XML API) * Scimitar: implementation of the ISO Schematron schema language for XML; converts Schematron files to Python scripts * domtools: set of tools to augment Python DOMs * saxtools: set of tools to make SAX easier to use in Python * Flextyper: user-defined datatypes in Python for XML processing There's a lot in Amara, but here are highlights: Amara Bindery: XML as easy as py -------------------------------- Bindery turns an XML document into a tree of Python objects corresponding to the vocabulary used in the XML document, for maximum clarity. For example, the document What do you mean "bleh" But I was looking for argument Becomes a data structure such that you can write binding.monty.python.spam In order to get the value "eggs" or binding.monty.python[1] In order to get the value "But I was looking for argument". There are other such tools for Python, and what makes Anobind unique is that it's driven by a very declarative rules-based system for binding XML to the Python data. You can register rules that are triggered by XPattern expressions specialized binding behavior. It includes XPath support and supports mutation. Bindery is very efficient, using SAX to generate bindings. Scimitar: Schematron for Pytthon -------------------------------- Merged in from a separate project, Scimitar is an implementation of ISO Schematron that compiles a Schematron schema into a Python validator script. You typically use scimitar in two phases. Say you have a schematron schema schema1.stron and you want to validate multiple XML files against it, instance1.xml, instance2.xml, instance3.xml. First you run schema1.stron through the scimitar compiler script, scimitar.py: scimitar.py schema1.stron The generated file, schema1.py, can be used to validate XML instances: python schema1.py instance1.xml Which emits a validation report. Amara DOM Tools: giving DOM a more Pythonic face ------------------------------------------------ DOM came from the Java world, hardly the most Pythonic API possible. Some DOM-like implementations such as 4Suite's Domlettes mix in some Pythonic idiom. Amara DOM Tools goes even further. Amara DOM Tools feature pushdom, similar to xml.dom.pulldom, but easier to use. It also includes Python generator-based tools for DOM processing, and a function to return an XPath location for any DOM node. Amara SAX Tools: SAX without the brain explosion ------------------------------------------------ Tenorsax (amara.saxtools.tenorsax) is a framework for "linerarizing" SAX logic so that it flows more naturally, and needs a lot less state machine wizardry. License ------- Amara is open source, provided under the 4Suite variant of the Apache license. See the file COPYING for details. Installation ------------ Amara requires Python 2.3 or more recent and 4Suite 1.0a4 or more recent. Make sure these are installed, unpack Amara to a convenient location and run python setup.py install -- Uche Ogbuji Fourthought, Inc. http://uche.ogbuji.net http://4Suite.org http://fourthought.com Use CSS to display XML, part 2 - http://www-128.ibm.com/developerworks/edu/x-dw-x-xmlcss2-i.html Writing and Reading XML with XIST - http://www.xml.com/pub/a/2005/03/16/py-xml.html Introducing the Amara XML Toolkit - http://www.xml.com/pub/a/2005/01/19/amara.html Be humble, not imperial (in design) - http://www.adtmag.com/article.asp?id=10286 Querying WordNet as XML - http://www.ibm.com/developerworks/xml/library/x-think29.html Packaging XSLT lookup tables as EXSLT functions - http://www.ibm.com/developerworks/xml/library/x-tiplook2.html From luca at nowhere.invalid Sun Mar 27 22:43:02 2005 From: luca at nowhere.invalid (Luca Montecchiani) Date: Mon Mar 28 15:25:11 2005 Subject: [ANN] pyfdupes 1.0.3 Message-ID: Pyfdupes can help you to reorganize your mp3 collection or your download directories, finding files with a "similar name" or same content with great results. Main features : - Graphical interface - Console mode command line version - Reusability of the core classes - GNU GPL licence Documentation, source code and Windows binary installer can be downloaded from http://sourceforge.net/projects/pyfdupes/ enjoy, luca From casevh at comcast.net Mon Mar 28 01:40:07 2005 From: casevh at comcast.net (casevh@comcast.net) Date: Mon Mar 28 15:25:12 2005 Subject: ANN: BigDecimal - decimal arithmetic on very large intergers Message-ID: <032720052340.23979.42474457000403FA00005DAB220699973508900A9C0E0C@comcast.net> BigDecimal is a Python class that supports decimal arithmetic on very large integers. BigDecimal was inspired by the posting of BigDec to c.l.py by Tim Peters. BigDecimal implements all the commonly used integer methods. (It doesn't implement any of the binary/shifting operations.) It has been optimized for performance. It uses a 4x4 Toom-Cook algorithm for multiplication and a new, very fast, division algorithm. If GMPY is available, it will be automatically used. Performance examples, computing the decimal represendation of the 42nd Mersenne prime: 2**25964951 - 1 Tim Peter's posting to c.l.py: 13 minutes 41 seconds BigDecimal: 59 seconds BigDecimal w/gmpy: 10 seconds The first released version is availabe at http://home.comcast.net/~casevh From frank at niessink.com Mon Mar 28 22:30:22 2005 From: frank at niessink.com (Frank Niessink) Date: Tue Mar 29 02:47:08 2005 Subject: [ANN] Release 0.26 of Task Coach Message-ID: <4248695D.7090207@niessink.com> Hi all, I am pleased to announce release 0.26 of Task Coach. This release fixes tow bugs and extends two features: Bugs fixed: - Marking a task completed did not stop effort tracking. - Reading lots of effort records was slow. Features added: - Save button is disabled when saving is not necessary, requested by Mike Vorozhbensky. - Effort records have a description field, requested by Kent and others. What is Task Coach? Task Coach is a simple task manager that allows for hierarchical tasks, i.e. tasks in tasks. Task Coach is open source (GPL) and uses wxPython. You can download Task Coach from: http://taskcoach.niessink.com https://sourceforge.net/projects/taskcoach/ A binary installer is available for Windows XP, in addition to the source distribution. Thanks, Frank From brian at zope.com Tue Mar 29 04:31:14 2005 From: brian at zope.com (Brian Lloyd) Date: Tue Mar 29 16:09:36 2005 Subject: ANNOUNCE: Python for .NET beta 5 now available Message-ID: Python for .NET 1.0 beta 5 is now available - you can download it from: http://www.zope.org/Members/Brian/PythonNet/ Python for .NET is a near-seamless integration of Python with the .NET common language runtime. For more details, see the README: http://www.zope.org/Members/Brian/PythonNet/README.html The beta 5 release features a refactoring of thread management support, making the runtime stable for multi-threaded applications, as well as several improvements and bug-fixes. Special thanks to all who sent in thread-related scenarios and test cases! I have tried to incorporate as many of these as possible into the unit tests - if you still have problems that you suspect may be related to threading or interpreter lock issues, please let me know asap. There is also now a mailing list for discussion, questions and issues related to Python for .NET at: pythondotnet@python.org. To subscribe to the mailing list or read the online archives, see: http://mail.python.org/mailman/listinfo/pythondotnet Brian Lloyd brian@zope.com V.P. Engineering 540.361.1716 Zope Corporation http://www.zope.com From fredrik at pythonware.com Tue Mar 29 18:36:18 2005 From: fredrik at pythonware.com (Fredrik Lundh) Date: Wed Mar 30 00:03:18 2005 Subject: ANN: Python Imaging Library 1.1.5 final (march 28, 2005) Message-ID: <200503291635.j2TGZmJ15813@pythonware.com> the labs proudly presents PIL 1.1.5 final: The Python Imaging Library (PIL) adds image processing capabilities to your Python interpreter. This library supports many file formats, and provides powerful image processing and graphics capabilities, including display support for Windows and Tkinter. Version 1.1.5 adds a stream-lined build process, better support for applications using multiple threads on systems with multiple processors and/or hyperthreading processors, and tons of smaller tweaks and bug fixes. For a complete list of changes in this release, see: http://effbot.org/zone/pil-changes-115.htm PIL 1.1.5 is available as source code, and as Windows binaries for Python 2.1, 2.2, 2.3 and 2.4. Get your copy here: http://www.pythonware.com/products/pil/ enjoy, the pil team "Secret Labs -- makers of fine pythonware since 1997." From sdeibel at wingware.com Tue Mar 29 19:42:32 2005 From: sdeibel at wingware.com (Stephan Deibel) Date: Wed Mar 30 00:03:19 2005 Subject: Wanted: New Python Success Stories Message-ID: Hi, O'Reilly Associates is going to be printing volume III of the Python Success Stories series in June and I'm looking for submissions of new stories. The stories have been quite valuable for people introducing Python to new users and companies. The deadline for me to receive stories for editing is May 1st and the deadline for the final edited, approved story going to O'Reilly is June 1st. The existing stories are online here: http://pythonology.org/success There's more info about writing one here: http://pythonology.org/successguide The biggest hurdle is usually getting approval from the company to write about Python. It may require some educating about open source to get past rules against endorsing commercial products (which Python obviously isn't). If you have any questions, please let me know. Thanks, Stephan Deibel Pythonology.com From stuff at mailzilla.net Tue Mar 29 20:22:12 2005 From: stuff at mailzilla.net (stuff@mailzilla.net) Date: Wed Mar 30 00:03:20 2005 Subject: ReleaseForge 0.6 - A SourceForge project release tool Message-ID: <1112120532.074479.42620@l41g2000cwc.googlegroups.com> ReleaseForge 0.6 is now available at: http://releaseforge.sourceforge.net New to version 0.6: * The ability to edit existing SourceForge releases * Some UI tweaks * Some random bug fixes * Some code cleanup * Stays crispy in milk In case you're not already familiar with ReleaseForge: ReleaseForge is a python GUI that allows SourceForge users (project admins and release techs) the ability to create and edit SourceForge releases of their projects. ReleaseForge provides an alternative (re: much improved, more intuitive) interface than the usual SourceForge web interface. ReleaseForge also allows users to create new project packages and update existing packages. ReleaseForge is developed in Python (requires version 2.3 or greater) using PyQt (v3.3 or greater) and contains 100% real fruit juice. A Windows installer is also available that includes all of the software dependencies. http://releaseforge.sourceforge.net From vandenbe at ee.ucla.edu Tue Mar 29 22:28:54 2005 From: vandenbe at ee.ucla.edu (Lieven Vandenberghe) Date: Wed Mar 30 00:03:21 2005 Subject: CVXOPT 0.3 - A Python Package for Convex Optimization. Message-ID: CVXOPT is a package for specifying and solving convex optimization problems. Version 0.3 is a pre-release and includes the following. * Sparse and dense matrix extension types, interfaces to most of the BLAS 'double' routines, interfaces to the dense linear equation solvers and symmetric eigenvalue routines from LAPACK, interfaces to the sparse linear equation solvers UMFPACK and LDL and a simple C API for extension writers. * A linear programming solver written in Python. * A modeling tool for specifying convex optimization problems with piecewise-linear objective and constraint functions. Future releases will include solvers and modeling support for other classes of convex optimization problems (for example, quadratic, geometric, second-order cone and semidefinite programming). http://www.ee.ucla.edu/~vandenbe/cvxopt Joachim Dahl Lieven Vandenberghe From python-url at phaseit.net Wed Mar 30 02:59:56 2005 From: python-url at phaseit.net (Cameron Laird) Date: Wed Mar 30 19:39:12 2005 Subject: Dr. Dobb's Python-URL! - weekly Python news and links (Mar 30) Message-ID: QOTW: "This is a Python newsgroup. Assume that we all have been brainwashed." -- Peter Otten "[M]y experience porting Java to Jython is that it mostly involves deleting stuff :-)" -- Kent Johnson "[K]eep in mind, however, that not all problems in life can be solved with software." -- Roy Smith The Second Edition (of the *Cookbook*) hits the shelves! http://www.oreilly.com/catalog/pythoncook2/ Most of the week's news had to do with PyCon2005: http://python.org/moin/PyConDC2005 http://programming.newsforge.com/programming/05/03/29/0747230.shtml?tid=108&tid=18 http://oreillynet.com/pub/wlg/6767 http://planetpython.org/ Notice that plenty of other PyEvents, including PyConDayBrasil in particular, are imminent: http://python.org/moin/PythonEvents#preview A Microsoft magazine publishes two favorable profiles of Python: http://www.devsource.com/article2/0,1759,1778141,00.asp http://www.devsource.com/article2/0,1759,1778250,00.asp How does a Linux-hosted Tkinter set its window icon? Jeff Epler knows: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/95a5c57c829699d2/ Roy Smith and Larry Bates, among others, cogently counsel would-be language autodidacts: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/359d8bc917d8dd0a/ Ivan Van Laningham addresses the off-topic matter of /bin/ls's performance with such precision as to illuminate Python use, particularly in its evocation of earlier threads: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/9a8586f0ac49c8ca/ http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/d6524ee021fc946f/ Raymond Hettinger, so wise in the ways of iteration, also knows his way around the syntax of decimal numerals: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/a7b8b5de4c355d56 ======================================================================== 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 Brett Cannon continues the marvelous tradition established by Andrew Kuchling and Michael Hudson of intelligently summarizing action on the python-dev mailing list once every other week. http://www.python.org/dev/summary/ The Python Package Index catalogues packages. http://www.python.org/pypi/ The somewhat older Vaults of Parnassus ambitiously collects references to all sorts of Python resources. http://www.vex.net/~x/parnassus/ Much of Python's real work takes place on Special-Interest Group mailing lists http://www.python.org/sigs/ The Python Business Forum "further[s] the interests of companies that base their business on ... Python." http://www.python-in-business.org Python Success Stories--from air-traffic control to on-line match-making--can inspire you or decision-makers to whom you're subject with a vision of what the language makes practical. http://www.pythonology.com/success The Python Software Foundation (PSF) has replaced the Python Consortium as an independent nexus of activity. It has official responsibility for Python's development and maintenance. http://www.python.org/psf/ Among the ways you can support PSF is with a donation. http://www.python.org/psf/donate.html Kurt B. Kaiser publishes a weekly report on faults and patches. http://www.google.com/groups?as_usubject=weekly%20python%20patch Cetus collects Python hyperlinks. http://www.cetus-links.org/oo_python.html Python FAQTS http://python.faqts.com/ The Cookbook is a collaborative effort to capture useful and interesting recipes. http://aspn.activestate.com/ASPN/Cookbook/Python Among several Python-oriented RSS/RDF feeds available are http://www.python.org/channews.rdf http://bootleg-rss.g-blog.net/pythonware_com_daily.pcgi http://python.de/backend.php For more, see http://www.syndic8.com/feedlist.php?ShowMatch=python&ShowStatus=all The old Python "To-Do List" now lives principally in a SourceForge reincarnation. http://sourceforge.net/tracker/?atid=355470&group_id=5470&func=browse http://python.sourceforge.net/peps/pep-0042.html The online Python Journal is posted at pythonjournal.cognizor.com. editor@pythonjournal.com and editor@pythonjournal.cognizor.com welcome submission of material that helps people's understanding of Python use, and offer Web presentation of your work. del.icio.us presents an intriguing approach to reference commentary. It already aggregates quite a bit of Python intelligence. http://del.icio.us/tag/python *Py: the Journal of the Python Language* http://www.pyzine.com Archive probing tricks of the trade: http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python&num=100 http://groups.google.com/groups?meta=site%3Dgroups%26group%3Dcomp.lang.python.* Previous - (U)se the (R)esource, (L)uke! - messages are listed here: http://www.ddj.com/topics/pythonurl/ (requires subscription) http://groups-beta.google.com/groups?q=python-url+group:comp.lang.python*&start=0&scoring=d& http://purl.org/thecliff/python/url.html (dormant) or http://groups.google.com/groups?oi=djq&as_q=+Python-URL!&as_ugroup=comp.lang.python Suggestions/corrections for next week's posting are always welcome. E-mail to should get through. To receive a new issue of this posting in e-mail each Monday morning (approximately), ask to subscribe. Mention "Python-URL!". -- The Python-URL! Team-- Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and sponsor the "Python-URL!" project. From anthony at python.org Wed Mar 30 11:36:54 2005 From: anthony at python.org (Anthony Baxter) Date: Wed Mar 30 19:39:13 2005 Subject: RELEASED Python 2.4.1 (final) Message-ID: <200503301937.10660.anthony@python.org> On behalf of the Python development team and the Python community, I'm happy to announce the release of Python 2.4.1 (final). Python 2.4.1 is a bug-fix release. See the release notes at the website (also available as Misc/NEWS in the source distribution) for details of the bugs squished in this release. Python 2.4.1 should be a completely painless upgrade from Python 2.4 - no new features have been added. For more information on Python 2.4.1, including download links for various platforms, release notes, and known issues, please see: http://www.python.org/2.4.1/ Highlights of this new release include: - Bug fixes. According to the release notes, several dozen bugs have been fixed, including a fix for the SimpleXMLRPCServer security issue (PSF-2005-001). Highlights of the previous major Python release (2.4) are available from the Python 2.4 page, at http://www.python.org/2.4/highlights.html Enjoy the new release, Anthony Anthony Baxter anthony@python.org Python Release Manager (on behalf of the entire python-dev team) -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://mail.python.org/pipermail/python-announce-list/attachments/20050330/439b00db/attachment.pgp From hpk at trillke.net Wed Mar 30 19:32:36 2005 From: hpk at trillke.net (holger krekel) Date: Wed Mar 30 19:39:14 2005 Subject: rlcompleter2-0.96 interactive tab-completion for python Message-ID: <20050330173236.GK23818@solar.trillke.net> hi folks, after much interest at Pycon 2005 (great to have been there, thanks to all who where there, btw!), i release version 0.96 of the interactive command line completer "rlcompleter2". rlcompleter2 provides tab-completion to the python interactive commandline interpreter much like bash does to the shell commandline. Main reason for the 0.96 release: I figure that people would actually like to have it run nicely on 2.3, 2.4 and CVS-python which it didn't before in not-so-uncommon cases. Sorry that i waited so long. Grab it from http://codespeak.net/rlcompleter2/download/rlcompleter2-0.96.tar.gz or try out the new PyPI downloading feature http://www.python.org/pypi/rlcompleter2/0.96 (I, for one, welcome our new PyPI / CPAN-For-Python overlords! thanks Richard, Barry and all those who helped make it happen!) And/or go to the home page at http://codespeak.net/rlcompleter2 cheers and have fun, holger From anthony at python.org Thu Mar 31 09:24:17 2005 From: anthony at python.org (Anthony Baxter) Date: Thu Mar 31 16:39:02 2005 Subject: Mac OS X Installer for Python 2.4.1 available Message-ID: <200503311724.18176.anthony@python.org> Thanks to Bob Ippolito, there's now an installer for Python 2.4.1 available for Mac OS X 10.3 and later. Grab it from the Python 2.4.1 page - http://www.python.org/2.4.1/ Anthony From fabioz at esss.com.br Thu Mar 31 18:51:26 2005 From: fabioz at esss.com.br (Fabio Zadrozny) Date: Fri Apr 1 20:18:37 2005 Subject: ANN: PyDev 0.9.2 released In-Reply-To: <42261366.3020602@esss.com.br> References: <42261366.3020602@esss.com.br> Message-ID: <424C2A8E.9030104@esss.com.br> Hi All, PyDev - Python IDE (Python development enviroment for Eclipse) version 0.9.2 has just been released. Check the homepage (http://pydev.sourceforge.net/) for more details. Regards, Fabio Zadrozny ------------------------------------------------------ Software Developer ESSS - Engineering Simulation and Scientific Software www.esss.com.br PyDev - Python Development Enviroment for Eclipse pydev.sf.net pydev.blogspot.com From "cyril dot jaquier at bluewin dot ch" at newsspool.solnet.ch Thu Mar 31 18:32:36 2005 From: "cyril dot jaquier at bluewin dot ch" at newsspool.solnet.ch (Cyril Jaquier) Date: Fri Apr 1 20:19:20 2005 Subject: [ANN] Fail2Ban 0.3.1 Message-ID: <424c2623$0$145$fb624d75@newsspool.solnet.ch> The version 0.3.1 of Fail2Ban is available. Fail2Ban is written in Python. It scans log files like /var/log/pwdfail or /var/log/apache/error_log and bans IP that makes too many password failures. It updates firewall rules to reject the IP address. Currently, iptables, ipfwadm and ipfw are supported. It needs log4py. http://fail2ban.sourceforge.net Best Regards, Cyril Jaquier From trentm at ActiveState.com Thu Mar 31 20:09:52 2005 From: trentm at ActiveState.com (Trent Mick) Date: Fri Apr 1 20:19:22 2005 Subject: ANN: ActivePython 2.4.1 build 245 is available Message-ID: <20050331180952.GE18059@ActiveState.com> I'm pleased to announce that ActivePython 2.4.1 build 245 is now available from: http://www.ActiveState.com/Products/ActivePython ActivePython 2.4.1.245 is a bug-fix release matching the recent core Python 2.4.1 release. ActivePython builds for Linux, Solaris and Windows are available. We welcome any and all feedback to: ActivePython-feedback@ActiveState.com Please file bugs against ActivePython at: http://bugs.ActiveState.com/ActivePython What is ActivePython? --------------------- ActivePython is ActiveState's quality-assured binary build of Python. Builds for Windows, Linux and Solaris and made freely available. ActivePython includes the Python core and core extensions (zlib 1.2.1, bzip2 1.0.2, bsddb 4.2.52, Tk 8.4.9, and Tix 8.1.4). On Windows, ActivePython includes the PyWin32 suite of Windows tools developed by Mark Hammond, including bindings to the Win32 API and Windows COM, the Pythonwin IDE, and more. ActivePython also includes a wealth of Python documentation, including: - the core Python docs - Andrew Kuchling's "What's New in Python" series - the Non-Programmer's Tutorial for Python - Mark Pilgrim's excellent "Dive into Python", and - a snapshot of the Python FAQs, HOWTOs and PEPs. An online version of the docs can be found here: http://aspn.activestate.com/ASPN/docs/ActivePython/2.4/welcome.html In particular the Release Notes: http://aspn.activestate.com/ASPN/docs/ActivePython/2.4/relnotes.html and the Installation Guide: http://aspn.activestate.com/ASPN/docs/ActivePython/2.4/installnotes.html Extra Bits ---------- ActivePython releases also include the following packages: - a Windows "debug" package: debug-built binaries for ActivePython users building debug versions of their binary Python extensions - ActivePython24.chm: an MS compiled help collection of the full ActivePython documentation set. Linux users of applications such as xCHM might find this useful. This package is installed by default on Windows. These packages are available from: ftp://ftp.activestate.com/ActivePython/etc/ On behalf of the team at ActiveState, Thanks, and enjoy! -- Trent Mick TrentM@ActiveState.com