From sylvain.thenault at logilab.fr Thu Mar 1 10:02:23 2007 From: sylvain.thenault at logilab.fr (Sylvain =?iso-8859-1?Q?Th=E9nault?=) Date: Thu, 1 Mar 2007 10:02:23 +0100 Subject: [ANN] pylint 0.13 / astng 0.17 Message-ID: <20070301090223.GD12447@crater.logilab.fr> Hi there! I'm very pleased to announce new releases of pylint (0.13) and its underlying library astng (0.17). The PyLint release contains a bunch of bugs fixes, some new checks and command line changes, and a new checker dedicated to Restricted Python checking. If this doesn't sound familiar to you, visit the PyPy_ project web site for more information. The astng release contains a lot of inference fixes and enhancement, so even if pylint should still works with the old version you're strongly encouraged to upgrade. .. _PyPy: http://codespeak.net/pypy/ What is pylint ? ---------------- Pylint is a python tool that checks if a module satisfy a coding standard. Pylint can be seen as another pychecker since nearly all tests you can do with pychecker can also be done with Pylint. But Pylint offers some more features, like checking line-code's length, checking if variable names are well-formed according to your coding standard, or checking if declared interfaces are truly implemented, and much more (see http://www.logilab.org/projects/pylint/ for the complete check list). The big advantage with Pylint is that it is highly configurable, customizable, and you can easily write a small plugin to add a personal feature. The usage it quite simple : $ pylint mypackage.mymodule This command will output all the errors and warnings related to the tested code (here : mypackage.mymodule), will dump a little summary at the end, and will give a mark to the tested code. Pylint is free software distributed under the GNU Public Licence. Home page --------- http://www.logilab.org/project/name/pylint http://www.logilab.org/project/name/logilab-astng Download -------- ftp://ftp.logilab.org/pub/pylint ftp://ftp.logilab.org/pub/astng Mailing list ------------ mailto://python-projects at logilab.org Enjoy ! -- Sylvain Th?nault LOGILAB, Paris (France) Formations Python, Zope, Plone, Debian: http://www.logilab.fr/formations D?veloppement logiciel sur mesure: http://www.logilab.fr/services Python et calcul scientifique: http://www.logilab.fr/science From fabiofz at gmail.com Thu Mar 1 12:22:21 2007 From: fabiofz at gmail.com (Fabio Zadrozny) Date: Thu, 1 Mar 2007 08:22:21 -0300 Subject: Pydev 1.2.8 Released Message-ID: Hi All, Pydev and Pydev Extensions 1.2.8 have been released Details on Pydev Extensions: http://www.fabioz.com/pydev Details on Pydev: http://pydev.sf.net Details on its development: http://pydev.blogspot.com Release Highlights in Pydev Extensions: ----------------------------------------------------------------- * Code-analysis: when a compare statement is found out of a test scope, that's reported as a warning * Mark Occurrences: new option to choose whether strings and comments should be highlighted * Simple Completions: some keywords were removed from the default list (the 2-letter ones because they're barely worth it and those related to 'try', as there's already an assistant that creates 'try' blocks) * Rename refactoring / Mark Occurrences: matches in multi-line strings are now correct Release Highlights in Pydev: ---------------------------------------------- * Refactoring: integration of the PEPTIC refactoring engine * Package Explorer: many fixes (special thanks for Don Taylor for the bug reports) * Debugger: a number of small optimizations * Code-completion: works in emacs mode * Code-completion: added the possibility of auto-completing for all letter chars and '_' (so, it starts completing once you start writing) * Code-completion: code-completion for epydoc inside strings * Code-completion: assigns after global statement considered added to the global namespace * Code-completion: now works when a class is declared in a nested scope * Code-completion: if multiple assigns are found to some variable, the completion will be a merge of them * Code-completion: functions are analyzed for their return values for code-completion purposes * Code-completion: working on multi-line imports * Code-completion: can discover instance variables not declared in the class (in the scope where the class was instanced) * Auto-edit: adds 'self', 'cls' or no parameter based on the @clasmethod, @staticmethod declaration on previous line * Auto-edit: doesn't add 'self' if a method is declared in a method inner scope * Fix: BRM Refactoring: wrong column was being passed to the BRM refactoring engine * Code-folding: added for comments and strings * Fix: sometimes the 'create docstring' assistant was not recognizing method definitons What is PyDev? --------------------------- PyDev is a plugin that enables users to use Eclipse for Python and Jython development -- making Eclipse a first class Python IDE -- It comes with many goodies such as code completion, syntax highlighting, syntax analysis, refactor, debug and many others. Cheers, -- Fabio Zadrozny ------------------------------------------------------ Software Developer ESSS - Engineering Simulation and Scientific Software http://www.esss.com.br Pydev Extensions http://www.fabioz.com/pydev Pydev - Python Development Enviroment for Eclipse http://pydev.sf.net http://pydev.blogspot.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-announce-list/attachments/20070301/75e82941/attachment.htm From daftspaniel at gmail.com Thu Mar 1 14:17:13 2007 From: daftspaniel at gmail.com (daftspaniel at gmail.com) Date: 1 Mar 2007 05:17:13 -0800 Subject: wxTayLayout 00.00.12 i Message-ID: <1172755029.307435.327290@31g2000cwt.googlegroups.com> wxTayLayout 00.00.12 is now available for download! This brings the wxPython version of TayLayout very close to feature parity with the IronPython version. Just compound controls to go (e.g. File browser, colour picker). http://code.google.com/p/taylayout/downloads/list Thanks, Davy From gdementen at gmail.com Fri Mar 2 11:40:08 2007 From: gdementen at gmail.com (Gaetan de Menten) Date: Fri, 2 Mar 2007 11:40:08 +0100 Subject: Elixir 0.2.0 released! Message-ID: We are pleased to announce that the second release of Elixir (http://elixir.ematia.de) is now available. We hope you'll enjoy it. Highlights for this release ------------------------------------- - Implemented singletable non-polymorphic inheritance - Added support to pass non-keyword arguments to tables. - Added support for deferred columns - Look at the calling stack frame to ensure that we apply statements to the proper class. We now attach the statement list to the class itself, rather than attaching it to a global list that is neither threadsafe, nor safe when doing nested class definition. - Fixed foreign key names on MySQL (and possibly other) databases by making sure the generated name is unique for the whole database, and not only for the table on which it applies. - Applied patch from Robin Munn to make the code python 2.3 compatible The full list of changes can be seen at: http://elixir.ematia.de/svn/elixir/tags/0.2.0/CHANGES What is Elixir? --------------------- Elixir is a declarative layer on top of SQLAlchemy. It is a fairly thin wrapper, which provides the ability to define model objects following the Active Record design pattern, and using a DSL syntax similar to that of the Ruby on Rails ActiveRecord system. Elixir does not intend to replace SQLAlchemy's core features, but instead focuses on providing a simpler syntax for defining model objects when you do not need the full expressiveness of SQLAlchemy's manual mapper definitions. Mailing list ---------------- sqlelixir at googlegroups.com -- Ga?tan de Menten http://openhex.org From titus at caltech.edu Sun Mar 4 03:11:55 2007 From: titus at caltech.edu (Titus Brown) Date: Sat, 3 Mar 2007 18:11:55 -0800 Subject: announcing: "testing-in-python" mailing list Message-ID: <20070304021155.GB8128@caltech.edu> Folks, catalyzed by the great fun we had at PyCon '07, Grig Gheorghiu and I have created the "testing-in-python" (or "TIP") mailing list. This list will hopefully serve as a forum for discussing Python testing tools, testing approaches useful in Python, Web resources for same, and whatever else people would like to talk about. ("Proposed: The Death Star would not have had a single point of failure had it been written in Python and tested with the Death Star Testing Protocol Tool. Discuss.") Grig has a blog post about the list here: http://agiletesting.blogspot.com/2007/02/testing-in-python-mailing-list.html You can sign up for the [mailman] list here: http://lists.idyll.org/listinfo/testing-in-python Subscribers can post to the list at 'tip at lists.idyll.org'. List archives are available here: http://lists.idyll.org/pipermail/testing-in-python/ cheers, --titus From dmitry at targeted.org Mon Mar 5 10:26:05 2007 From: dmitry at targeted.org (dmitry at targeted.org) Date: 5 Mar 2007 01:26:05 -0800 Subject: Pythomnic 4.0 - platform for building reliable network services in Python Message-ID: <1173086765.151544.259160@t69g2000cwt.googlegroups.com> Pythomnic is a platform for building non-stop middleware around a set of network services. It allows changing source code and configuration on the fly without interrupting the live service. Pythomnic modules can be invisibly migrated from one server to another for redundancy or load balancing. Such middleware can take as much business logic as necessary, from being a simple adapter to an integration platform. New in version 4.0: * Support for SOAP * Support for Oracle * Support for reliable communications channel between services with message passing semantics * Persistent module storage has been made much more reliable by using BerkeleyDB write-ahead logs + More documentation Improved in version 4.0: * Improved support for JMS * Improved shutdown process http://www.pythomnic.org/ From gnewsg at gmail.com Mon Mar 5 14:44:35 2007 From: gnewsg at gmail.com (billie) Date: 5 Mar 2007 05:44:35 -0800 Subject: ANN pyftpdlib 0.1 released Message-ID: <1173102274.626495.36980@s48g2000cws.googlegroups.com> Hi all, I'm proud to announce the first beta release of pyftpdlib available at the following urls: home: http://billiejoex.altervista.org/pyftpdlib.html google code: http://code.google.com/p/pyftpdlib/ About ===== pyftpdlib is an high-level FTP server library based on asyncore/ asychat frameworks. pyftpdlib is actually the most complete RFC959 FTP server implementation available for Python programming language. Requirements ========== Python 2.2 or higher Bug reports / Contacts ================ billiejoex -_[AT]_- gmail (dot) com From titus at caltech.edu Wed Mar 7 00:01:25 2007 From: titus at caltech.edu (Titus Brown) Date: Tue, 6 Mar 2007 15:01:25 -0800 Subject: ANN: twill 0.9b1 released Message-ID: <20070306230125.GA26059@caltech.edu> ANNOUNCING twill v0.9b1. twill is a simple language for browsing the Web. It's designed for automated testing of Web sites, but it can be used to interact with Web sites in a variety of ways. In particular, twill supports form submission, cookies, redirects, and HTTP authentication. This release of twill is officially "Pretty Dang Stable". A twill script to use the "I'm feeling lucky" button on Google looks like this: setlocal query "twill Python" go http://www.google.com/ fv 1 q $query submit btnI # use the "I'm feeling lucky" button show (Note that using this script abuses Google's Terms of Service. So don't.) You can install the latest release of twill with easy_install, easy_install twill or download this release at http://darcs.idyll.org/~t/projects/twill-0.9b1.tar.gz Documentation is included in the .tar.gz and is also online at http://twill.idyll.org/ Miscellaneous details: twill is implemented in Python and uses pyparsing and mechanize. In addition to the existing simple command language, twill can easily be extended with Python. twill also provides a fairly simple and well-documented wrapper around mechanize. twill does not understand JavaScript, I'm sorry to say. --- Significant changes with 0.9b1 * Switched to MIT license. * twill tests now work under Windows and cygwin (switch to subprocess). Fixed a variety of Windows-specific bugs in the process ;). * Complete integration with latest mechanize, including global form access. * Added Seo Sanghyeon's patch to enable form element TAB completion on 'formvalue' command. * twill-sh now gathers scripts from subdirectories. * Added paste.lint test into wsgi_intercept test code. * Cleared up confusing test output when test server didn't run. * Started using the BeautifulSoup code included with mechanize. * Added TWILL_TEST_PORT for running tests on something other than port 8080. * Added Andy Chamber's patch to the formfill extension module. * Fixed DNS tests to be reliant on name records I control. * Removed ClientCookie dependencies. * Defended my PhD. * Added newline '\n' processing in arguments. From gnewsg at gmail.com Wed Mar 7 09:21:29 2007 From: gnewsg at gmail.com (billiejoex) Date: 7 Mar 2007 00:21:29 -0800 Subject: ANN: pyftpdlib 0.1.1 Message-ID: <1173255689.385533.58390@c51g2000cwc.googlegroups.com> Changed in version 0.1.1 ================== * port selection on PASV command has been randomized (this to prevent a remote user to know how many data connections are in progress on the server). * fixed bug in demo/unix_ftpd.py script. * ftpd automatically re-use address if current system is unix. * license changed into a MIT style one. About ===== pyftpdlib is an high-level FTP server library based on asyncore/ asychat frameworks. pyftpdlib is actually the most complete RFC959 FTP server implementation available for Python programming language. Requirements ========== Python 2.2 or higher Bug reports / Contacts ================ billiejoex -_[AT]_- gmail (dot) com From l.oluyede at gmail.com Wed Mar 7 15:59:15 2007 From: l.oluyede at gmail.com (Lawrence Oluyede) Date: 7 Mar 2007 06:59:15 -0800 Subject: ANN: pinder 0.5.0 Message-ID: <1173279555.125816.56830@30g2000cwc.googlegroups.com> Pinder is a straightforward API to interface with Campfire , the web chat application from 37Signals. Pinder allows you to create rooms, delete them, speak from a remote client and more. For example: >>> room = campfire.find_room_by_name('Jonz Room') >>> print room.users() set([u'Alice']) or >>> print campfire.users() set([u'Alice', u'Bob']) which gets the list of the users talking in each room of the subdomain. >>> room.speak("Foobar") will send the message to the chat room so you can speak too. There's more like creating and deleting rooms, toggling guest access, locking the room etc. See the usage documentation and the API documentation for details. You can install the latest release with: $ easy_install pinder or download from here: http://dev.oluyede.org/download/pinder/ This is the first public release. From bob at mellowood.ca Wed Mar 7 22:36:39 2007 From: bob at mellowood.ca (bvdp@xplornet.com) Date: 7 Mar 2007 13:36:39 -0800 Subject: MMA - Musical MIDI Accompaniment 1.1 Message-ID: <1173303398.694692.325350@8g2000cwh.googlegroups.com> Version 1.1 of MMA - Musical MIDI Accompaniment - is now available for downloading. Included in this release: Addition of ARIA tracks for auto-generated melodies, Fixed solo/harmony volumes, Chord fixes, New commands: NEWSET, DOCVAR, GROOVECLEAR, -0 sync command line switch, Many library additions/enhancements, Minor bug fixes. MMA is a accompaniment generator -- it creates midi tracks for a soloist to perform with. User supplied files contain pattern selections, chords, and MMA directives. For full details please visit: http://www.mellowood.ca/mma/ If you have any questions or comments, please send them to: bob at mellowood.ca From anthony.tuininga at gmail.com Thu Mar 8 05:40:38 2007 From: anthony.tuininga at gmail.com (Anthony Tuininga) Date: Wed, 7 Mar 2007 21:40:38 -0700 Subject: cx_Logging 1.3 Message-ID: <703ae56b0703072040q718e2ce0i12f5e0e58483b6d@mail.gmail.com> (Oops. I sent the first message without changing the subject so I got the wrong version). 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) Fixed support for importing in Python 2.5 on Windows. The module now uses the .pyd extension instead of the .dll extension since support for importing modules with the .dll extension was removed in Python 2.5. 2) Added support for 64-bit Python installations, particularly in Python 2.5. Anthony Tuininga From anthony.tuininga at gmail.com Thu Mar 8 06:21:46 2007 From: anthony.tuininga at gmail.com (Anthony Tuininga) Date: Wed, 7 Mar 2007 22:21:46 -0700 Subject: cx_Oracle 4.3 Message-ID: <703ae56b0703072121h715e3135u5a182066c6edfed6@mail.gmail.com> What is cx_Oracle? cx_Oracle is a Python extension module that allows access to Oracle and conforms to the Python database API 2.0 specifications with a few exceptions. Where do I get it? http://starship.python.net/crew/atuining What's new? 1) Added preliminary support for fetching Oracle objects (SQL types) as requested by Kristof Beyls (who kindly provided an initial patch). Additional work needs to be done to support binding and updating objects but the basic structure is now in place. 2) Added connection.maxBytesPerCharacter which indicates the maximum number of bytes each character can use; use this value to also determine the size of local buffers in order to handle discrepancies between the client character set and the server character set. Thanks to Andreas Mock for providing the initial patch and working with me to resolve this issue. 3) Added support for querying native floats in Oracle 10g as requested by Danny Boxhoorn. 4) Add support for temporary LOB variables created via PL/SQL instead of only directly by cx_Oracle; thanks to Henning von Bargen for discovering this problem. 5) Added support for specifying variable types using the builtin types int, float, str and datetime.date which allows for finer control of what type of Python object is returned from cursor.callfunc() for example. 6) Added support for passing booleans to callproc() and callfunc() as requested by Anana Aiyer. 7) Fixed support for 64-bit environments in Python 2.5. 8) Thanks to Filip Ballegeer and a number of his co-workers, an intermittent crash was tracked down; specifically, if a connection is closed, then the call to OCIStmtRelease() will free memory twice. Preventing the call when the connection is closed solves the problem. Anthony Tuininga From richardjones at optushome.com.au Thu Mar 8 22:14:06 2007 From: richardjones at optushome.com.au (Richard Jones) Date: Fri, 9 Mar 2007 08:14:06 +1100 Subject: PyWeek #4 in April! Message-ID: <200703090814.06728.richardjones@optushome.com.au> PyWeek #4 will run in the first week of April: Start: 00:00UTC Sunday 1st April Finish: 00:00UTC Sunday 8th April REGISTRATION IS OPEN Visit the PyWeek website for more information: http://pyweek.org/ THE PYWEEK CHALLENGE: - Invites all Python programmers to write a game in one week from scratch either as an individual or in a team, - Is intended to be challenging and fun, - Will hopefully increase the public body of python game tools, code and expertise, - Will let a lot of people actually finish a game, and - May inspire new projects (with ready made teams!) Entries must be developed during the challenge, and must incorporate some theme decided at the start of the challenge. The rules for the challenge are at: http://media.pyweek.org/static/rules.html Richard -- Visit the PyWeek website: http://pyweek.org/ From helge-ng at devmates.com Fri Mar 9 15:00:51 2007 From: helge-ng at devmates.com (Helge Stahlmann) Date: Fri, 9 Mar 2007 15:00:51 +0100 Subject: Hamburg Pythoneers Monthly Meeting: Wed, Apr 11 Message-ID: +++++ Hamburg Python User Group April Meeting +++++ I am pleased to announce our next user group meeting: Wednesday, April 11, 2007 at 7:00pm Location: DDD Design GmbH, Jarrestrasse 46, 22303 Hamburg. Session highlight: Aspect-oriented programming with AOPython RSVP now at http://python.meetup.com/179/calendar/5549826/ If you're interested in learning more, please visit our website at meetup.com: http://python.meetup.com/179/ Additional links: RSS Newsfeed: feed://www.meetup.com/rss/g/python/179/new/ Group Calendar RSS: feed://python.meetup.com/179/calendar/rss/The+Hamburg+Python+User+Group/ iCal: webcal://python.meetup.com/179/calendar/ical/The+Hamburg+Python+User +Group/ +++++ Hamburg Python User Group - Treffen im April +++++ Ich freue mich, an dieser Stelle unser n?chstes Meeting ank?ndigen zu d?rfen: Mittwoch, 11. April 2007 um 19 Uhr Veranstaltungsort: DDD Design GmbH, Jarrestrasse 46, 22303 Hamburg. Highlight: Aspektorientierte Programmierung mit AOPython Anmeldungen werden unter http://python.meetup.com/179/calendar/5549826/ entgegengenommen. Weitere Informationen finden sich auf unserer Webseite bei meetup.com: http://python.meetup.com/179/ Weitere Links: RSS Newsfeed: feed://www.meetup.com/rss/g/python/179/new/ Gruppen Kalender RSS: feed://python.meetup.com/179/calendar/rss/The+Hamburg+Python+User+Group/ iCal: webcal://python.meetup.com/179/calendar/ical/The+Hamburg+Python+User +Group/ From micktwomey at gmail.com Fri Mar 9 18:26:47 2007 From: micktwomey at gmail.com (Michael Twomey) Date: Fri, 9 Mar 2007 17:26:47 +0000 Subject: Python Ireland 14th March 2007 Meeting Message-ID: <50a522ca0703090926v49b9be41t6288ac7b6e52fe1a@mail.gmail.com> Hi, The Python Ireland group will be having our next meeting soon: Wednesday, 14th March at 7pm Location: OpenApp 55 Fitzwilliam Square Dublin 2 More Info: http://openapp.biz/sections/contact/ We'll be giving the following talks: * Pycon 2007 roundup followed by a bonus lightning talk - John Gill * An introduction to ZODB - Michael Kerrin These will be followed by some friendly chat in the nearest pub. Due to space limits please mention your interest on the python ireland mailing list so we can get an idea of how many people are coming. See http://groups.google.com/group/pythonireland For more info and directions see http://wiki.python.ie/moin.cgi/PythonMeetup/March2007 cheers, Michael Python Ireland - http://python.ie/ From faltet at carabos.com Fri Mar 9 20:35:09 2007 From: faltet at carabos.com (Francesc Altet) Date: Fri, 9 Mar 2007 20:35:09 +0100 Subject: ANN: Pytables 2.0 beta1 (hierarchical datasets) released Message-ID: <200703092035.10331.faltet@carabos.com> ========================= Announcing PyTables 2.0b1 ========================= The PyTables development team is very happy to announce the public availability of the first *beta* version of PyTables 2.0. Starting with this release, both the API and the file format have entered in the stage of freezing (i.e. nothing will be modified unless something is clearly *wrong*), so people can use it in order to begin with the migration of their existing PyTables 1.x scripts as well as start enjoying the new exciting features in this major version ;) You can download a source package of the version 2.0b1 with generated PDF and HTML docs from http://www.pytables.org/download/preliminary/ [Starting with the beta phase, and in order to make the life easier for Windows beta-testers, we are delivering binary versions for Win32.] You can also get the latest sources from the Subversion repository at http://pytables.org/svn/pytables/trunk/ If you are afraid of Subversion (you shouldn't), you can always download the latest, daily updated, packed sources from http://www.pytables.org/download/snapshot/ Please have in mind that some sections in the manual can be obsolete (specially the "Optimization tips" chapter). The tutorials chapter is in the process of being updated as well. The reference chapter should be fairly up-to-date though. You may also want to have an in-deep read of the ``RELEASE-NOTES.txt`` file where you will find an entire section devoted to how to migrate your existing PyTables 1.x apps to the 2.0 version. You can find an HTML version of this document at http://www.pytables.org/moin/ReleaseNotes/Release_2.0b1 Changes more in depth ===================== Improvements: - NumPy is finally at the core! That means that PyTables no longer needs numarray in order to operate, although it continues to be supported (as well as Numeric). This also means that you should be able to run PyTables in scenarios combining Python 2.5 and 64-bit platforms (these are a source of problems with numarray/Numeric because they don't support this combination yet). - Most of the operations in PyTables have experimented noticeable speed-ups (sometimes up to 2x, like in regular Python table selections). This is a consequence of both using NumPy internally and a considerable effort in terms of refactorization and optimization of the new code. - Combined conditions are finally supported for in-kernel selections. So, now it is possible to perform complex selections like:: result = [ row['var3'] for row in table.where('(var2 < 20) | (var1 == "sas")') ] or:: complex_cond = '((%s <= col5) & (col2 <= %s)) ' \ '| (sqrt(col1 + 3.1*col2 + col3*col4) > 3)' result = [ row['var3'] for row in table.where(complex_cond % (inf, sup)) ] and run them at full C-speed (or perhaps more, due to the cache-tuned computing kernel of numexpr, which has been integrated into PyTables). - Now, it is possible to get fields of the ``Row`` iterator by specifying their position, or even ranges of positions (extended slicing is supported). For example, you can do:: result = [ row[4] for row in table # fetch field #4 if row[1] < 20 ] result = [ row[:] for row in table # fetch all fields if row['var2'] < 20 ] result = [ row[1::2] for row in # fetch odd fields table.iterrows(2, 3000, 3) ] in addition to the classical:: result = [row['var3'] for row in table.where('var2 < 20')] - ``Row`` has received a new method called ``fetch_all_fields()`` in order to easily retrieve all the fields of a row in situations like:: [row.fetch_all_fields() for row in table.where('column1 < 0.3')] The difference between ``row[:]`` and ``row.fetch_all_fields()`` is that the former will return all the fields as a tuple, while the latter will return the fields in a NumPy void type and should be faster. Choose whatever fits better to your needs. - Now, all data that is read from disk is converted, if necessary, to the native byteorder of the hosting machine (before, this only happened with ``Table`` objects). This should help to accelerate apps that have to do computations with data generated in platforms with a byteorder different than the user machine. - The modification of values in ``*Array`` objects (through __setitem__) now doesn't make a copy of the value in the case that the shape of the value passed is the same as the slice to be overwritten. This results in considerable memory savings when you are modifying disk objects with big array values. - All the leaf constructors have received a new parameter called ``byteorder`` that lets the user specify the byteorder of their data *on disk*. This effectively allows to create datasets in other byteorders than the native platform. - Native HDF5 datasets with ``H5T_ARRAY`` datatypes are fully supported for reading now. - The test suites for the different packages are installed now, so you don't need a copy of the PyTables sources to run the tests. Besides, you can run the test suite from the Python console by using:: >>> tables.tests() Bug fixes: - As mentioned above, the fact that NumPy is at the core makes that certain bizarre interactions between numarray and NumPy scalars don't affect the behaviour of table selections anymore. Fixes http://www.pytables.org/trac/ticket/29. - Did I mention that PyTables 2.0 can be safely used in 64-bit platforms in combination with Python 2.5? ;) Deprecated features: - Not many, really. Please see ``RELEASE-NOTES.txt`` file. Backward-incompatible changes: - Many. Please see ``RELEASE-NOTES.txt`` file. Important note for Windows users ================================ In order to keep PyTables happy, you will need to get the HDF5 library compiled for MSVC 7.1, aka .NET 2003. It can be found at ftp://ftp.hdfgroup.org/HDF5/current/bin/windows/5-165-win-net.ZIP Please remember that, from PyTables 2.0 on, Python 2.3 (and lesser) is not supported anymore. What is PyTables? ================= **PyTables** is a package for managing hierarchical datasets and designed to efficiently cope with extremely large amounts of data (with support for full 64-bit file addressing). It features an object-oriented interface that, combined with C extensions for the performance-critical parts of the code, makes it a very easy-to-use tool for high performance data storage and retrieval. PyTables runs on top of the HDF5 library and NumPy package (but numarray and Numeric are also supported) for achieving maximum throughput and convenient use. Besides, PyTables I/O for table objects is buffered, implemented in C and carefully tuned so that you can reach much better performance with PyTables than with your own home-grown wrappings to the HDF5 library. PyTables Pro sports indexing capabilities as well, allowing selections in tables exceeding one billion of rows in just seconds. Platforms ========= This version has been extensively checked on quite a few platforms, like Linux on Intel32 (Pentium), Win on Intel32 (Pentium), Linux on Intel64 (Itanium2), FreeBSD on AMD64 (Opteron), Linux on PowerPC (and PowerPC64) and MacOSX on PowerPC. For other platforms, chances are that the code can be easily compiled and run without further issues. Please contact us in case you are experiencing problems. Resources ========= Go to the PyTables web site for more details: http://www.pytables.org About the HDF5 library: http://hdf.ncsa.uiuc.edu/HDF5/ About NumPy: http://numpy.scipy.org/ To know more about the company behind the development of PyTables, see: http://www.carabos.com/ Acknowledgments =============== Thanks to various users who provided feature improvements, patches, bug reports, support and suggestions. See the ``THANKS`` file in the distribution package for a (incomplete) list of contributors. Many thanks also to SourceForge who have helped to make and distribute this package! Share your experience ===================== Let us know of any bugs, suggestions, gripes, kudos, etc. you may have. ---- **Enjoy data!** -- The PyTables Team -- >0,0< Francesc Altet ? ? http://www.carabos.com/ V V C?rabos Coop. V. ??Enjoy Data "-" From sschwarzer at sschwarzer.net Fri Mar 9 23:00:46 2007 From: sschwarzer at sschwarzer.net (Stefan Schwarzer) Date: Fri, 09 Mar 2007 23:00:46 +0100 Subject: Leipzig Python User Group - Meeting, March 13, 2007, 08:00pm Message-ID: <45F1D90E.3070408@sschwarzer.net> === Leipzig Python User Group === We will meet on March 13 at 08:00pm at the training center of Python Academy in Leipzig, Germany ( http://www.python-academy.com/center/find.html ). Our topic will be Python for scientific applications. Food and soft drinks are provided. Please send a short confirmation mail to info at python-academy.de, so we can prepare appropriately. Everybody who uses Python, plans to do so or is interested in learning more about the language is encouraged to participate. While the meeting language will be mainly German, we will provide English translation if needed. Current information about the meetings are at http://www.python-academy.com/user-group . Stefan Schwarzer === Leipzig Python User Group === Wir treffen uns am Dienstag, 13.03.2007 um 20:00 Uhr im Schulungszentrum der Python Academy in Leipzig ( http://www.python-academy.de/Schulungszentrum/anfahrt.html ). Unser Thema ist Python f?r wissenschaftliche Anwendungen. F?r das leibliche Wohl wird gesorgt. Eine Anmeldung unter info at python-academy.de w?re nett, damit wir genug Essen besorgen k?nnen. Willkommen ist jeder, der Interesse an Python hat, die Sprache bereits nutzt oder nutzen m?chte. Aktuelle Informationen zu den Treffen sind unter http://www.python-academy.de/User-Group zu finden. Viele Gr??e Stefan Schwarzer From millerdev at gmail.com Sat Mar 10 16:50:31 2007 From: millerdev at gmail.com (Daniel Miller) Date: Sat, 10 Mar 2007 10:50:31 -0500 Subject: ANN: AOPython 1.0.3 Message-ID: <45F2D3C7.7040904@gmail.com> AOPython 1.0.3 has been released. It's now available in the Cheese Shop! http://cheeseshop.python.org/pypi/AOPython/1.0.3 This release is a very small update. Here are the details: - Removed re/sre weave test from aopythonexamples (it didn't pass on Python 2.4 and it wasn't a good test). - Improved Aspect.wrap() function - Added setup.py ~~~~~~~~~~~~~~~ What is AOPython? AOPython is an AOP (Aspect Oriented Programming) module for Python. AOPython provides a base 'Aspect' that can 'advise' or wrap function and/or method calls. It also contains a weave function that can weave (apply advice to a subset of- or all functions and methods in) a module, class, or instance. Advice may modify or replace parameters and/or the return value of the advised function or method each time it is called. It can do many other things such as handle exceptions raised by an advised function, collect information on the method call (logging), or obtain and release resources before and after a method is invoked. Example 1: How to wrap a function from aopython import Aspect def negate(x): return -x aspect = Aspect() negate = aspect.wrap(negate) negate(2) # advised function call Example 2: How to weave a class from aopython import Aspect class MyObj(object): def double(self, x): return x * 2 def tripple(self, x): return x * 3 aspect = Aspect() aspect.weave(MyObj) myobj = MyObj() myobj.double(5) # advised method call MyObj.tripple(myobj, 5) # advised method call Download/leave comments/ask questions http://www.openpolitics.com/pieces/archives/002206.html Comments are appreciated.

AOPython 1.0.2 - Aspect Oriented Python (16-Aug-05)

From chris.arndt at web.de Sat Mar 10 19:27:44 2007 From: chris.arndt at web.de (Christopher Arndt) Date: Sat, 10 Mar 2007 19:27:44 +0100 Subject: ANN: next pyCologne meeting 14.03.2007, 18:30 h Message-ID: <45F2F8A0.10408@web.de> Hello fellow Pythonistas! the next monthly meeting of pyCologne, the Python User Group K?ln (Cologne) is due soon: Date: Wednesday, 14th March 2007 Time: 18:30 h c.t. Venue: Pool 0.14, computing centre (RRZK-B), University Cologne, Berrenrather Str. 136, 50937 K?ln, Germany I'm pleased to announce our fifth meeting since the group's inauguration and invite everybody interested in the Python programming language and it's applications to come and meet with us. We will have two presentations at this month's meeting. The meeting and the presentations are held (surprise, surprise!) in the German language. - "Python in der Luft- und Raumfahrt" ("Python in the aerospace industry") by Andreas Schreiber - "Python und Blender", Teil II "Die Blender Game-Engine" ("Python and Blender", part II "the Blender game engine"), by Rebecca Breu Further Information about our PUG is available on our page in the German Python wiki: http://wiki.python.de/User_Group_K%C3%B6ln CU there, Christopher Arndt From titus at caltech.edu Sun Mar 11 21:00:48 2007 From: titus at caltech.edu (Titus Brown) Date: Sun, 11 Mar 2007 13:00:48 -0700 Subject: ANN: pinocchio 0.1, extensions for nose unit test framework Message-ID: <20070311200048.GA21600@caltech.edu> ANNOUNCING pinocchio v0.1. pinocchio is a collection of plugins for the 'nose' unit testing framework; more about that here: http://somethingaboutorange.com/mrl/projects/nose/ Basic documentation for pinocchio is available at http://darcs.idyll.org/~t/projects/pinocchio/doc/ pinocchio currently contains five plugins: * decorator -- allows you to assign tags to tests from a list file; * figleafsections -- shows you which tests are executing what code; * stopwatch -- lets you pick tests to run based on the last execution time; * outputsave -- saves test stdout into individual files, tagged with success/failure. * spec -- generates "specification" output from test class/method names. This is the first package release of pinocchio. Note that pinocchio *requires* setuptools to be installed, because that is how nose plugins work! You can install pinocchio with easy_install, or download this release at http://darcs.idyll.org/~t/projects/pinocchio-0.1.tar.gz Documentation is included in the .tar.gz, and you can read the latest docs online at http://darcs.idyll.org/~t/projects/pinocchio/doc/ pinocchio is available under the MIT license. It is Copyright (C) 2006, 2007 C. Titus Brown, except for the spec plugin which is Copyright (C) 2007 Michal Kwiatkowski. --titus From fabiofz at gmail.com Mon Mar 12 18:27:31 2007 From: fabiofz at gmail.com (Fabio Zadrozny) Date: Mon, 12 Mar 2007 14:27:31 -0300 Subject: Pydev 1.3.0 Released Message-ID: Hi All, Pydev and Pydev Extensions 1.3.0 have been released Details on Pydev Extensions: http://www.fabioz.com/pydev Details on Pydev: http://pydev.sf.net Details on its development: http://pydev.blogspot.com Release Highlights in Pydev Extensions: ----------------------------------------------------------------- * Find References: Ctrl+Shift+G can be used to find the references to the selected token in the editor * Fix: Code-analysis: Fixed false positive for statement with no effect Release Highlights in Pydev: ---------------------------------------------- * Code-completion: Deep analysis for discovering arguments in constructs 'from imports' now can be configured given the number of chars of the qualifier * Refactoring for override methods: changed so that it uses the pydev code-completion engine for getting the hierarchy and methods * Fix: Python Nature Restore: begin rule does not match outer scope rule fixed * Fix: Package Explorer: if show-in is in a deep structure, it will show it is the 1st try and not only in the 2nd * Fix: Package Explorer: some intercepts removed elements incorrectly, and ended up messing the navigator and search (which has 'null' elements because of that) What is PyDev? --------------------------- PyDev is a plugin that enables users to use Eclipse for Python and Jython development -- making Eclipse a first class Python IDE -- It comes with many goodies such as code completion, syntax highlighting, syntax analysis, refactor, debug and many others. Cheers, -- Fabio Zadrozny ------------------------------------------------------ Software Developer ESSS - Engineering Simulation and Scientific Software http://www.esss.com.br Pydev Extensions http://www.fabioz.com/pydev Pydev - Python Development Enviroment for Eclipse http://pydev.sf.net http://pydev.blogspot.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-announce-list/attachments/20070312/1fdbd170/attachment.htm From jason at tishler.net Tue Mar 13 15:02:48 2007 From: jason at tishler.net (Jason Tishler) Date: Tue, 13 Mar 2007 10:02:48 -0400 Subject: Updated Cygwin Package: python-2.5-1 Message-ID: <20070313140248.GA296@tishler.net> New News: === ==== I have updated the version of Python to 2.5-1. The tarballs should be available on a Cygwin mirror near you shortly. The following is the only notable change since the previous release: o upgrade to Python 2.5 Old News: === ==== Python is an interpreted, interactive, object-oriented programming language. If interested, see the Python web site for more details: http://www.python.org/ Please read the README file: /usr/share/doc/Cygwin/python-2.5.README since it covers requirements, installation, known issues, etc. Standard News: ======== ==== To update your installation, click on the "Install Cygwin now" link on the http://cygwin.com/ web page. This downloads setup.exe to your system. Then, run setup and answer all of the questions. If you have questions or comments, please send them to the Cygwin mailing list at: cygwin at cygwin.com . *** CYGWIN-ANNOUNCE UNSUBSCRIBE INFO *** If you want to unsubscribe from the cygwin-announce mailing list, look at the "List-Unsubscribe: " tag in the email header of this message. Send email to the address specified there. It will be in the format: cygwin-announce-unsubscribe-you=yourdomain.com at cygwin.com If you need more information on unsubscribing, start reading here: http://sources.redhat.com/lists.html#unsubscribe-simple Please read *all* of the information on unsubscribing that is available starting at this URL. Jason -- PGP/GPG Key: http://www.tishler.net/jason/pubkey.asc or key servers Fingerprint: 7A73 1405 7F2B E669 C19D 8784 1AFD E4CC ECF4 8EF6 From trentm at activestate.com Tue Mar 13 20:56:20 2007 From: trentm at activestate.com (Trent Mick) Date: Tue, 13 Mar 2007 12:56:20 -0700 Subject: ANN: ActivePython 2.5.0.0 is now available Message-ID: <45F701E4.4080404@activestate.com> I'm happy to announce that ActivePython 2.5.0.0 is now available for download from: http://www.activestate.com/products/activepython/ This is the first release of ActivePython for Python version 2.5. Apologies for the long delay between core Python 2.5 and this release. The good news is that part of the reason for this delay was to finally get approval to include crypto in ActivePython, hence: Changes in this release include: - Full OpenSSL support (finally!) - Update to Python 2.5 (duh) - [Mac OS X] Universal build (finally!) - [Windows] Update to PyWin32 build 210 - All the new standard extensions: SQLite, ctypes, ElementTree - [Linux] Rationalized the build names. - [Mac OS X] A sane uninstall script See the release notes for full details: http://aspn.activestate.com/ASPN/docs/ActivePython/2.5/relnotes.html What is ActivePython? --------------------- ActivePython is ActiveState's binary distribution of Python. Builds for Windows, Mac OS X, Linux, HP-UX and AIX are made freely available. ActivePython includes the Python core and the many core extensions: zlib and bzip2 for data compression, the Berkeley DB (bsddb) and SQLite (sqlite3) database libraries, the Tix GUI widgets for Tkinter, ElementTree for XML processing, ctypes (on supported platforms) for low-level library access, and others. The Windows distribution ships with PyWin32 -- a suite of Windows tools developed by Mark Hammond, including bindings to the Win32 API and Windows COM. See this page for full details: http://aspn.activestate.com/ASPN/docs/ActivePython/2.5/whatsincluded.html As well, ActivePython ships with a wealth of documentation for both new and experienced Python programmers. In addition to the core Python docs, ActivePython includes the "What's New in Python" series, "Dive into Python", the Python FAQs & HOWTOs, and the Python Enhancement Proposals (PEPs). An online version of the docs can be found here: http://aspn.activestate.com/ASPN/docs/ActivePython/2.5/welcome.html We would welcome any and all feedback to: ActivePython-feedback at activestate.com.com Please file bugs against ActivePython at: http://bugs.activestate.com/query.cgi?set_product=ActivePython On what platforms does ActivePython run? ---------------------------------------- ActivePython includes installers for the following platforms: - AIX/PowerPC - HP-UX/PA-RISC - Linux/x86 - Linux/x86_64: "x86_64" is also known as "AMD64" - Solaris/SPARC - Solaris/x86 - Mac OS X - Windows/x64: "x64" is also known as "AMD64" - Windows/x86 Extra Bits ---------- ActivePython releases also include the following: - ActivePython25.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. Extra bits are available from: http://downloads.activestate.com/ActivePython/etc/ Thanks, and enjoy! Trent, Python Tech Lead -- Trent Mick trentm at activestate.com From mcfletch at vrplumber.com Tue Mar 13 23:25:16 2007 From: mcfletch at vrplumber.com (Mike C. Fletcher) Date: Tue, 13 Mar 2007 18:25:16 -0400 Subject: Regular Toronto Python User's Group (PyGTA) meeting next Tuesday Message-ID: <45F724CC.2020804@vrplumber.com> We will be having our regular monthly PyGTA meeting on the 20th of March, 2007. Our planned topic is an introduction to the One Laptop Per Child project, and particularly the Python-coded Sugar development environment. We'll probably also have some discussion on news and events in the Python world, such as the University of Toronto choosing Python as its first-year teaching language. As usual we will be meeting in the cool and funky Linux Caffe. It's located at the corner of Grace and Harbord streets in downtown Toronto. We start gathering around 6:30pm and get started with the more formal discussions around 7:00pm. We normally wrap up the formal session between 8:30 and 9:00 and head out for beer, ice-cream and the like. http://web.engcorp.com/pygta/wiki/NextMeeting Have fun all, Mike -- ________________________________________________ Mike C. Fletcher Designer, VR Plumber, Coder http://www.vrplumber.com http://blog.vrplumber.com From stevech1097 at yahoo.com.au Wed Mar 14 11:51:00 2007 From: stevech1097 at yahoo.com.au (Steve Chaplin) Date: Wed, 14 Mar 2007 18:51:00 +0800 Subject: ANN: pycairo release 1.4.0 now available Message-ID: <1173869460.840.2.camel@localhost.localdomain> Pycairo is a set of Python bindings for the multi-platform 2D graphics library cairo. http://cairographics.org http://cairographics.org/pycairo A new pycairo release 1.4.0 is now available from: http://cairographics.org/releases/pycairo-1.4.0.tar.gz http://cairographics.org/releases/pycairo-1.4.0.tar.gz.md5 e26e77919b606113f565d70036c1f504 pycairo-1.4.0.tar.gz Overview of changes from pycairo 1.2.6 to pycairo 1.4.0 ======================================================= General changes: Pycairo 1.4.0 requires cairo 1.4.0 (or later). New methods: Context.clip_extents Context.copy_clip_rectangles Context.get_dash Context.get_dash_count Context.get_scaled_font Context.glyph_extents Context.glyph_path Context.show_glyphs LinearGradient.get_linear_points RadialGradient.get_radial_circles SolidPattern.get_rgba SurfacePattern.get_surface Deleted methods: ImageSurface.create_for_array Remove Numeric Python support, since Numeric has been made obsolete by numpy, and numpy data can be read using ImageSurface.create_for_data. Other changes: the module cairo.gtk has been removed (pygtk 2.7.0 onwards has cairo support built in). Send instant messages to your online friends http://au.messenger.yahoo.com From frpythoneers at gmail.com Sat Mar 17 01:25:46 2007 From: frpythoneers at gmail.com (frpythoneers at gmail.com) Date: 16 Mar 2007 17:25:46 -0700 Subject: Front Range Pythoneers Monthly Meeting: Wed, Mar 21, in Boulder, Colorad Message-ID: <1174091146.578140.241150@d57g2000hsg.googlegroups.com> == Meeting: Wednesday, March 21, 2007 == * Time: 6-8 PM * Location: bivio Software, Inc., 28th and Iris, Boulder, CO. Above Hair Elite in Suite S. There is abundant parking. This Wednesday (March 21) we have a great lineup of PyCon 2007 talks from local presenters: * Matt Boersma will present "Write Less Code with XRC for wxPython": an easier way to do GUI layout using wxWidget's XML-based resource system. * Sean Reifschneider will present "Python and vim: Two great tastes that go great together". The vim editor includes extensive abilities for customization and scripting. In addition to its own simple macro language, vim also supports calling Python code. This Python code has access back into vim for manipulating the edit buffer as well as running normal vim commands. Examples demonstrated in this talk will include automatically detecting indentation style (tabs/N spaces), automatic update of DNS "serial" numbers when editing DNS zone files, mail alias tab-expansion, and a time tracking application using a "domain specific vim" as the user interface. Other items to talk about: * BoulderSprint. The next sprint will be April 28 on the IPython1 Beta. This would be an excellent opportunity to learn about decorators, Twisted, and other advanced Python concepts while helping getting this amazing shell to beta status. * Google Summer of Code. The Python Software Foundation's application to join GSoC was just approved. It's not too late to be a mentor. But the student application deadline is March 24! We will have food & drink available as usual. Hope to see you there! More info: http://wiki.python.org/moin/FrontRangePythoneers From python at cx.hu Sun Mar 18 03:00:44 2007 From: python at cx.hu (Ferenczi Viktor) Date: Sun, 18 Mar 2007 03:00:44 +0100 Subject: Enhanced python-cjson 1.0.3 version: 1.0.3x Message-ID: <001f01c76901$3d8f3e30$8600a8c0@ANNA> Enhanced version of python-cjson 1.0.3 has been released. It's numbered 1.0.3x, where x stands for eXtension. The main improvement is the ability to extend the JSON encoder and decoder with extensions functions to serialize/unserialize objects not in the original JSON specification. This is achieved without sacrificing the speed and stability of the original implementation. Please send bug reports to python at cx.hu and do not contact the original author (Dan Pascu) about this version. Download and more information: http://cx.hu/python-cjson/ Example to encode/decode python date and datetime objects as JavaScript Date objects: import re import cjson import datetime # Encoding Date objects: def dateEncoder(d): assert isinstance(d, datetime.date) return 'new Date(Date.UTC(%d,%d,%d))'%(d.year, d.month, d.day) json=cjson.encode([1,datetime.date(2007,1,2),2], extension=dateEncoder) assert json=='[1, new Date(Date.UTC(2007,1,2)), 2]' # Decoding Date objects: re_date=re.compile('^new\sDate\(Date\.UTC\(.*?\)\)') def dateDecoder(json,idx): json=json[idx:] m=re_date.match(json) if not m: raise 'cannot parse JSON string as Date object: %s'%json[idx:] args=cjson.decode('[%s]'%json[18:m.end()-2]) dt=datetime.date(*args) return (dt,m.end()) # must return (object, character_count) tuple data=cjson.decode('[1, new Date(Date.UTC(2007,1,2)), 2]', extension=dateDecoder) assert data==[1,datetime.date(2007,1,2),2] From noway at ask.me Sun Mar 18 03:08:03 2007 From: noway at ask.me (Giovanni Bajo) Date: Sun, 18 Mar 2007 03:08:03 +0100 Subject: [ANN] GCC 4.1.2 installer for Python distutils compilation Message-ID: <8a1Lh.9924$6.6507@tornado.fastwebnet.it> Hello, This page: http://www.develer.com/oss/GccWinBinaries contains a friendly Windows installer for GCC 4.1.2 (MinGW binary version), with full support for integrating it with Python installations so that it is used by distutils to compile Python extensions. Direct download link: http://www.develer.com/~rasky/gcc-4.1.2-mingw-setup.exe Who needs this package? * People who wants to use FLOSS tools to develop Python extensions. * People who wants to use the recent GCC 4.1.2 to develop Python extensions, given that it easily outperforms the 4-years-old Visual Studio .NET 2003. What's special about this? * mingw.org still has GCC 3.4.2, so go figure. Also, you need to compose other packages together. This is a single installer with everything inside. * By default, MinGW GCC links with MSVCRT.DLL, and not MSVCR71.DLL (used by Python 2.4 and 2.5). Fixing this is pretty complicate, and there's much confusion (Google turns up red herrings). This package handles everything for you, and it just works. -- Giovanni Bajo Develer S.r.l. http://www.develer.com From python at cx.hu Sun Mar 18 03:37:40 2007 From: python at cx.hu (Ferenczi Viktor) Date: Sun, 18 Mar 2007 03:37:40 +0100 Subject: First version of qooxdoo json-rpc module has been released Message-ID: <003d01c76906$6633f5b0$8600a8c0@ANNA> First release of JSON-RPC module for qooxdoo has been released. qxjsonrpc is a new JSON-RPC backend for the qooxdoo JavaScript UI framework ( http://www.qooxdoo.org ). This module can be used to build server side backends in python with very little effort. Features: - HTTP transport (GET and POST, including ScriptTransport) - Build-in qooxdoo test server implementation for RPC_* tests - Very fast JSON serialization through python-cjson-1.0.3x Download and more information: http://cx.hu/qxjsonrpc/ Simply running the module provides a qooxdoo test backend at: 127.0.0.1:8000 Example: import qxjsonrpc class MyService(object): def getPi(self, *args): print 'Called: getPi%r'%(args,) return 3.14159265365 server=qxjsonrpc.HTTPServer() server.setService('myservice', MyService()) server.serve_forever() NOTE: qxjsonrpc uses an enhanced version of the very fast python-cjson 1.0.3 JSON library called python-cjson-1.0.3x. You must install python-cjson-1.0.3x before using qxjsonrpc. You can download it from: http://cx.hu/python-cjson NOTE: I haven't tested this backend with real qooxdoo components, so it may not work properly in such situations. Please drop me a mail about your success or failure. Thanx. You can send bug reports to: python at cx.hu (This is only a temporary solution for bug reporting, of course.) From cook_jim at yahoo.com Sun Mar 18 16:59:03 2007 From: cook_jim at yahoo.com (Jim) Date: 18 Mar 2007 08:59:03 -0700 Subject: pyCairo Message-ID: <1174233543.710353.12190@l77g2000hsb.googlegroups.com> I'd like to experiment with pyCairo, but I'm having installation problems. I've downloaded cairo-1.4.0, libpng1.2.8, zlib 1.2.3, and pycairo 1.4.0, and I've placed the DLLs for cairo, libpng, and zlib in c:\python25\dlls\. However, when I try to run "setup.py install" for pycairo I get an error message saying the installation program can't find cairo 1.4.0. I'm running Python 2.5 on WinXP. Any help will be greatly appreciated. From quentel.pierre at wanadoo.fr Sun Mar 18 21:42:21 2007 From: quentel.pierre at wanadoo.fr (Pierre Quentel) Date: 18 Mar 2007 13:42:21 -0700 Subject: ANN : Karrigell-2.3.4 Message-ID: <1174250541.929365.254280@o5g2000hsb.googlegroups.com> Hi all, A new version of the Karrigell web framework has just been released It is mainly a bug fix release, with a few improvements for "smart url" management and for the calendar demo Home page : http://karrigell.sourceforge.net Regards, Pierre From phd at phd.pp.ru Mon Mar 19 17:39:53 2007 From: phd at phd.pp.ru (Oleg Broytmann) Date: Mon, 19 Mar 2007 19:39:53 +0300 Subject: SQLObject 0.7.4 Message-ID: <20070319163953.GB32328@phd.pp.ru> Hello! I'm pleased to announce the 0.7.4 release of SQLObject. What is SQLObject ================= SQLObject is an object-relational mapper. Your database tables are described as classes, and rows are instances of those classes. SQLObject is meant to be easy to use and quick to get started with. SQLObject supports a number of backends: MySQL, PostgreSQL, SQLite, and Firebird. It also has newly added support for Sybase, MSSQL and MaxDB (also known as SAPDB). Where is SQLObject ================== Site: http://sqlobject.org Mailing list: https://lists.sourceforge.net/mailman/listinfo/sqlobject-discuss Archives: http://news.gmane.org/gmane.comp.python.sqlobject Download: http://cheeseshop.python.org/pypi/SQLObject/0.7.4 News and changes: http://sqlobject.org/docs/News.html What's New ========== News since 0.7.3 ---------------- * Documentation updates Small Features -------------- * For MySQLdb 1.2.2+ call ping(True) on the connection to allow autoreconnect after a timeout. Bug Fixes --------- * Another round of changes to create/drop the tables in the right order in the command-line client `sqlobject-admin`. * Fixed a bug in UnicodeField - allow comparison with None. For a more complete list, please see the news: http://sqlobject.org/docs/News.html Oleg. -- Oleg Broytmann http://phd.pp.ru/ phd at phd.pp.ru Programmers don't die, they just GOSUB without RETURN. From phd at phd.pp.ru Mon Mar 19 18:02:48 2007 From: phd at phd.pp.ru (Oleg Broytmann) Date: Mon, 19 Mar 2007 20:02:48 +0300 Subject: SQLObject 0.8.1 Message-ID: <20070319170248.GB870@phd.pp.ru> Hello! I'm pleased to announce the 0.8.1 release of SQLObject. What is SQLObject ================= SQLObject is an object-relational mapper. Your database tables are described as classes, and rows are instances of those classes. SQLObject is meant to be easy to use and quick to get started with. SQLObject supports a number of backends: MySQL, PostgreSQL, SQLite, and Firebird. It also has newly added support for Sybase, MSSQL and MaxDB (also known as SAPDB). Where is SQLObject ================== Site: http://sqlobject.org Development: http://sqlobject.org/devel/ Mailing list: https://lists.sourceforge.net/mailman/listinfo/sqlobject-discuss Archives: http://news.gmane.org/gmane.comp.python.sqlobject Download: http://cheeseshop.python.org/pypi/SQLObject/0.8.1 News and changes: http://sqlobject.org/News.html What's New ========== News since 0.8.0 ---------------- * Documentation updates Small Features -------------- * For MySQLdb 1.2.2+ call ping(True) on the connection to allow autoreconnect after a timeout. Bug Fixes --------- * Another round of changes to create/drop the tables in the right order in the command-line client `sqlobject-admin`. * Fixed a bug in UnicodeField - allow comparison with None. * ID columns are reverted back from INT UNSIGNED to INT for MySQL to be in accord with FOREIGN KEYs. * Fixed return value from Firebird/MaxdbConnection.createTable(). * Fixed and simplified DatabaseIndex.get(). * Fixed ConnectionHub.doInTransaction() - close low-level connection on commit() to prevent connections leaking. For a more complete list, please see the news: http://sqlobject.org/News.html Oleg. -- Oleg Broytmann http://phd.pp.ru/ phd at phd.pp.ru Programmers don't die, they just GOSUB without RETURN. From joevans at gmail.com Tue Mar 20 06:10:11 2007 From: joevans at gmail.com (Jason) Date: 19 Mar 2007 22:10:11 -0700 Subject: Parsing.py: An LR(1) parser generator with CFSM/GLR drivers Message-ID: <1174367411.353079.227150@e65g2000hsc.googlegroups.com> The Parsing module implements an LR(1) parser generator, as well as CFSM and GLR parser drivers. It is now publicly available at: http://www.canonware.com/download/Parsing/Parsing.py See the docstring documentation for more details. Jason Evans From irmen.NOSPAM at xs4all.nl Tue Mar 20 23:07:33 2007 From: irmen.NOSPAM at xs4all.nl (Irmen de Jong) Date: Tue, 20 Mar 2007 23:07:33 +0100 Subject: Pyro 3.6 (remote objects) Message-ID: <46005b5b$0$327$e4fe514c@news.xs4all.nl> I'm happy to announce Pyro 3.6 -- Python's own powerful remote method invocation technology! You can get it via http://pyro.sourceforge.net, then go to the SF project homepage download area. It has many new features and improvements over Pyro 3.5, which was released more than a year ago. (Sorry about the glacial update rate) Most important new stuff: - python 2.5 compatibility fixes - multithreading stability fixes - mobile code race condition fixes - a few new examples - various stability improvements and other fixes - new looks for the manual The full list is far too long to include here. Please view it online: http://pyro.sourceforge.net/manual/12-changes.html#latest Have fun, and thanks for your interest, support, and feedback! --Irmen de Jong ---> What is Pyro? Pyro is an acronym for PYthon Remote Objects. Pyro is an advanced and powerful Distributed Object Technology system written entirely in Python, that is designed to be very easy to use. It is extremely easy to implement a distributed system with Pyro, because all network communication code is abstracted and hidden from your application. You just get a remote Python object and invoke methods on the object on the other machine. Pyro offers you a Name Server, an Event Service, mobile objects, remote exceptions, dynamic proxies, remote attribute access, automatic reconnection, a very good and detailed manual, and many examples to get you started right away. From olivier.ravard at univ-rennes1.fr Wed Mar 21 01:00:48 2007 From: olivier.ravard at univ-rennes1.fr (Olivier Ravard) Date: Wed, 21 Mar 2007 01:00:48 +0100 Subject: ANN: MetaContract Message-ID: <460075c0$0$25906$ba4acef3@news.orange.fr> I'm happy to announce that MetaContract 0.1 is now available for download from: http://sourceforge.net/projects/metacontract/ what is metacontract ? -------------------- Design by Contract allows a programmer to document a function/class with statements describing behavior. Metacontract implements the PEP-0316 related to this feature for the Python language using meta classes. From gldnspud at gmail.com Wed Mar 21 20:02:51 2007 From: gldnspud at gmail.com (Matthew Scott) Date: 21 Mar 2007 12:02:51 -0700 Subject: ANN: Schevo 3.0 Message-ID: <1174503771.653100.209310@n76g2000hsh.googlegroups.com> Orbtech, L.L.C. and the Schevo team are pleased to announce the availability of Schevo version 3.0. After nearly two years of refinement, the third generation of Schevo, a next-generation DBMS for Python, has been deemed ready to be stripped of "beta" status. Don't let that fool you though: Schevo has been in production use during that entire time as its development is driven by real-world use cases. Get started with Schevo right away: http://schevo.org/wiki/SchevoGettingStarted Learn more about Schevo and related projects: http://schevo.org/ What is Schevo? Rapid Development: It's easy and fun to create even the most complex of databases. Easily write and understand schema syntax. Quickly place required initial data directly in your schema; use the same syntax to create sets of sample data for development use. Rich Schema Definition: Write database schemata using concise, easy-to-read Python code. Your schema will describe not only database structure, but also all transactions and rules that ensure database integrity. Automated Schema Evolution: Deploy a Schevo database and use it to store valuable data, then easily make further changes to the structure of the database. Use Schevo's tools to help restructure a database and safely migrate data from one schema version to the next. Transaction Based: Schevo protects your data. Use transactions to make all changes to a Schevo database (it's the only way it allows you to!), and you can trust Schevo to ensure that your database is left in a consistent state at all times. User Interface Generation: User interface code takes advantage of the richness of your database schema. Use a full-featured database navigator to interact with your database without writing a single line of code outside your database schema. Build customized UIs using Schevo-aware widgets and UI tools. From baoilleach at gmail.com Wed Mar 21 23:17:36 2007 From: baoilleach at gmail.com (baoilleach at gmail.com) Date: 21 Mar 2007 15:17:36 -0700 Subject: ANN: cclib 0.7 released Message-ID: <1174515456.953417.74960@l75g2000hse.googlegroups.com> cclib 0.7 is now available for download from http://cclib.sf.net. cclib is an open source library, written in Python, for parsing and interpreting the results of computational chemistry packages. It currently parses output files from ADF, GAMESS (US), GAMESS-UK, Gaussian, Jaguar and PC GAMESS. The main new features in this release are: * a Jaguar parser * cclib now extracts the Gaussian basis, the MP-corrected energies, and the Cartesian displacement vectors * Charge Decomposition Analysis, Fragment analysis For more details, see http://cclib.sf.net/wiki/index.php/Changelog Among other data, cclib extracts: * coordinates * atomic orbital information * molecular orbital information * information on vibrational modes * the results of a TD-DFT calculation (For a complete list see http://cclib.sf.net/wiki/index.php/Parsed_Data). cclib also provides some calculation methods for interpreting some electronic properties of molecules using analyses such as: * Mulliken population analysis * Overlap population analysis * Calculation of Mayer's bond orders. For information on how to use cclib, see http://cclib.sf.net/wiki/index.php/Using_cclib. If you need help, find a bug, want new features or have any questions, please send an email to our mailing list: cclib-users at lists.sourceforge.net Regards, The cclib development team From python at cx.hu Thu Mar 22 00:49:58 2007 From: python at cx.hu (Ferenczi Viktor) Date: Thu, 22 Mar 2007 00:49:58 +0100 Subject: Interface module for the Maxwell MX-25 501 digital multimeters Message-ID: <002301c76c13$a26d29b0$8600a8c0@ANNA> Interface module for the Maxwell MX-25 501 digital multimeters has been released. This is a Python module for easy data acquisition from Maxwell MX-25 501 digital multimeters. You can read the currently displayed value with very little effort. Example: from maxwell import Maxwell multimeter=Maxwell('/dev/ttyS0') value,unit=multimeter.read() print '%r %r'%(value,unit) See maxwell.py for instructions about the required multimeter setup (how to enable serial communication). Download from: http://python.cx.hu/maxwell/ NOTE: I don't have such a device anymore, just releasing my old code under the LGPL licence. From python-url at phaseit.net Thu Mar 22 03:36:29 2007 From: python-url at phaseit.net (Cameron Laird) Date: Thu, 22 Mar 2007 02:36:29 +0000 (UTC) Subject: Python-URL! - weekly Python news and links (Mar 22) Message-ID: This is the first time you've received "Python-URL!" in 2007. No, that's not the fault of your mail server; we've just been on sabbatical. Now we're back. QOTW: "'Doesn't seem to work' is effectivly even more useless than 'doesn't work' [as a symptomatic description]." - Bruno Desthuilliers http://groups.google.com/group/comp.lang.python/browse_thread/thread/5055abaa958fd81b/ "Linux and Python got a fan due to PySol. It should be considered a cultural treasure, and if a bit of funding would help keep it rolling into the future, that might be worthwhile." - Harry George http://groups.google.com/group/comp.lang.python/browse_thread/thread/716ef184ffc90db0/ Python supports all sorts of interesting introspection, including, for example, examination of a function's docstring: http://groups.google.com/group/comp.lang.python/msg/2b5ea6834ec6b6c7 Pybots deserve to be better known and appreciated: http://pybots.org/ Alex Martelli computationally demonstrates that CPython does *not* implement "x = y = z" as "y = z; x = y". http://groups.google.com/group/comp.lang.python/browse_thread/thread/8e592af30d621b77/ ======================================================================== 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 The Python Papers aims to publish "the efforts of Python enthusiats". http://pythonpapers.org/ comp.lang.python.announce announces new Python software. Be sure to scan this newsgroup weekly. http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python.announce Python411 indexes "podcasts ... to help people learn Python ..." Updates appear more-than-weekly: http://www.awaretek.com/python/index.html Steve Bethard continues the marvelous tradition early borne by Andrew Kuchling, Michael Hudson, Brett Cannon, Tony Meyer, and Tim Lesher of intelligently summarizing action on the python-dev mailing list once every other week. http://www.python.org/dev/summary/ The Python Package Index catalogues packages. http://www.python.org/pypi/ The somewhat older Vaults of Parnassus ambitiously collects references to all sorts of Python resources. http://www.vex.net/~x/parnassus/ Much of Python's real work takes place on Special-Interest Group mailing lists http://www.python.org/sigs/ Python Success Stories--from air-traffic control to on-line match-making--can inspire you or decision-makers to whom you're subject with a vision of what the language makes practical. http://www.pythonology.com/python/success The Python Software Foundation (PSF) has replaced the Python Consortium as an independent nexus of activity. It has official responsibility for Python's development and maintenance. http://www.python.org/psf/ Among the ways you can support PSF is with a donation. http://www.python.org/psf/donate.html Kurt B. Kaiser publishes a weekly report on faults and patches. http://www.google.com/groups?as_usubject=weekly%20python%20patch Although unmaintained since 2002, the Cetus collection of Python hyperlinks retains a few gems. http://www.cetus-links.org/oo_python.html Python FAQTS http://python.faqts.com/ The Cookbook is a collaborative effort to capture useful and interesting recipes. http://aspn.activestate.com/ASPN/Cookbook/Python Among several Python-oriented RSS/RDF feeds available are http://www.python.org/channews.rdf http://bootleg-rss.g-blog.net/pythonware_com_daily.pcgi http://python.de/backend.php For more, see http://www.syndic8.com/feedlist.php?ShowMatch=python&ShowStatus=all The old Python "To-Do List" now lives principally in a SourceForge reincarnation. http://sourceforge.net/tracker/?atid=355470&group_id=5470&func=browse http://www.python.org/dev/peps/pep-0042/ The online Python Journal is posted at pythonjournal.cognizor.com. editor at pythonjournal.com and editor at pythonjournal.cognizor.com welcome submission of material that helps people's understanding of Python use, and offer Web presentation of your work. del.icio.us presents an intriguing approach to reference commentary. It already aggregates quite a bit of Python intelligence. http://del.icio.us/tag/python *Py: the Journal of the Python Language* http://www.pyzine.com Archive probing tricks of the trade: http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python&num=100 http://groups.google.com/groups?meta=site%3Dgroups%26group%3Dcomp.lang.python.* Previous - (U)se the (R)esource, (L)uke! - messages are listed here: http://www.ddj.com/topic/python/ (requires subscription) http://groups-beta.google.com/groups?q=python-url+group:comp.lang.python*&start=0&scoring=d& http://purl.org/thecliff/python/url.html (dormant) or http://groups.google.com/groups?oi=djq&as_q=+Python-URL!&as_ugroup=comp.lang.python There is *not* an RSS for "Python-URL!"--at least not yet. Arguments for and against are occasionally entertained. Suggestions/corrections for next week's posting are always welcome. E-mail to should get through. To receive a new issue of this posting in e-mail each Monday morning (approximately), ask to subscribe. Mention "Python-URL!". Write to the same address to unsubscribe. -- The Python-URL! Team-- Phaseit, Inc. (http://phaseit.net) is pleased to participate in and sponsor the "Python-URL!" project. Watch this space for upcoming news about posting archives. From jdavid at itaapy.com Thu Mar 22 14:52:46 2007 From: jdavid at itaapy.com (=?UTF-8?B?IkouIERhdmlkIEliw6HDsWV6Ig==?=) Date: Thu, 22 Mar 2007 14:52:46 +0100 Subject: itools 0.15.2 released Message-ID: <46028A2E.5090108@itaapy.com> itools 0.15.2 (2007/03/22) ========================== itools is a Python library, it groups a number of packages into a single meta-package for easier development and deployment: itools.catalog itools.http itools.uri itools.cms itools.i18n itools.vfs itools.csv itools.ical itools.web itools.datatypes itools.rss itools.workflow itools.gettext itools.schemas itools.xhtml itools.handlers itools.stl itools.xliff itools.html itools.tmx itools.xml This release brings tons of changes, many more than it is reasonable to do for just a minor version bump. Highlights: - The speed of the iCalendar handler has been radically improved, specifically for searches. We have added reverse indexes and now the method "search" offers the same API as the CSV handler. - A new module, "itools.i18n.locale", has been added to provide support for locale information like dates. - The database system for "itools.cms" has been re-worked. The code is cleaner, faster and more robust. - There have been major user interface improvements in "itools.cms". Most notably, a drop-down menu has replaced the tabs. There is also a new menu in the left column called "Main Menu", with links to the most frequently used views. Other improvements involve the folder's browse view (sort by size, localized last modification time), and the JavaScript calendar widget, which is multilingual now. - The Wiki and Calendar objects of "itools.cms" have been improved. The first has a new "export to PDF" feature and has a generally better user interface. The second has an improved weekly view. - A new object has been added to "itools.cms": Web-Site. Its intended purpose is to be the root of a public (extranet) or private (intranet) site; so a single "itools.cms" instance may host several web sites, with a shared user database. - The user management and control access interfaces of "itools.cms" have been re-worked. And now we have two security policies: intranet or extranet. Also, now users have the fields "firstname" and "lastname" (instead of just one field for the fullname). - The API of "itools.cms" has been tweaked to make easier several tasks, most notably to define custom skins, to use the "table" widget, and to validate forms. Credits: - Luis Belmar Letelier helped fixing bugs; - Herv? Cauwelier worked on "itools.cms" (Wiki, CSS), got the API of "itools.web" working as documented, and fixed bugs; - Nicolas Deram worked on "itools.ical", "itools.cms.ical", and fixed bugs; - J. David Ib??ez worked on the user interface of "itools.cms" and the related programming interface, on the performance of "itools.ical" and fixed bugs. Resources --------- Download http://download.ikaaro.org/itools/itools-0.15.2.tar.gz Home http://www.ikaaro.org/itools Mailing list http://mail.ikaaro.org/mailman/listinfo/itools Bug Tracker http://bugs.ikaaro.org/ -- J. David Ib??ez Itaapy Tel +33 (0)1 42 23 67 45 9 rue Darwin, 75018 Paris Fax +33 (0)1 53 28 27 88 From wescpy at gmail.com Thu Mar 22 19:36:52 2007 From: wescpy at gmail.com (wesley chun) Date: Thu, 22 Mar 2007 11:36:52 -0700 Subject: [ANN] Python courses this Spring In-Reply-To: <78b3a9580703221136v15c9b4a9q892a228a32486053@mail.gmail.com> References: <78b3a9580703221134s14d026ebgd59d1af30fb4f5c5@mail.gmail.com> <78b3a9580703221136v15c9b4a9q892a228a32486053@mail.gmail.com> Message-ID: <78b3a9580703221136s5d52a382kb257473647c307e2@mail.gmail.com> I'll be giving a variety of Python courses this Spring. Daytime courses are for visitors and locals who need Python training in the shortest amount of time possible via consecutive workdays. Python is certainly gaining momentum as our February course filled up completely! Although I had planned on scheduling the same set to be taught in November, it is likely that these May daytime sessions are the last ones of 2007. In contrast, I'm experimenting with a *weekly evening* course in Silicon Valley designed mainly for locals. It represents a viable alternative to those who cannot take time off during the week as well as being more budget-friendly, as I am partnering with a local community college (Foothill) to offer this course. Class takes place on the main campus and you must register through the college to attend. For more information, such as cost and other course details, see the corresponding websites below. Contact me privately if you have any more questions. cheers, -wesley - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - "Core Python Programming", Prentice Hall, (c)2007,2001 http://corepython.com wesley.j.chun :: wescpy-at-gmail.com python training and technical consulting cyberweb.consulting : silicon valley, ca http://cyberwebconsulting.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - DAYTIME ======= - (Intensive) Introduction to Python (Mon-Wed, May 14-16) - Advanced Python Programming (Wed-Fri, May 16-18) - Advanced Python (short course; Thu-Fri, May 17-18) - Core Python (Intro+Advanced combo; Mon-Fri, May 14-18) These courses run daily 9a-5p and will take place in San Bruno right near the San Francisco International Airport at the: Staybridge Suites - San Francisco Airport 1350 Huntington Ave San Bruno, CA 94066 USA http://www.ichotelsgroup.com/h/d/sb/1/en/hd/sfobr Discounts are available for students and teachers, as well as multiple registrations from those working at the same company. For more info and registration, go to http://cyberwebconsulting.com (click on "Python Training") LOCALS: free parking and 101/280/380 access, BART across the street and CalTrain down the road (San Bruno stations) VISITORS: free hotel shuttle to/from the San Francisco airport, lots of free food and wireless, 2-bedroom suites w/private baths and a common work/living area available for traveling coworkers, and of course, The City by the Bay - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - EVENING ======= - Intermediate Python Programming (Tues, Apr 10-Jun 26) This course will cover the same topics as the advanced course above as well as critical portions of the intensive introductory course. It will be held once a week on Tuesday evenings from 6-9:40p. Foothill College 12345 El Monte Road Los Altos Hills, CA 94022 USA (right off 280, just south of Stanford) http://www.foothill.edu/schedule/schedule.php search for CIS 68L for Spring Quarter 2007 From mwojc at p.lodz.pl Fri Mar 23 03:23:45 2007 From: mwojc at p.lodz.pl (Marek Wojciechowski) Date: Fri, 23 Mar 2007 03:23:45 +0100 Subject: ffnet 0.6 released Message-ID: ffnet version 0.6 is now released. Source packages, Gentoo ebuilds and Windows binaries are now available for download at: http://ffnet.sourceforge.net The last public release was 0.5. If you are unfamiliar with this package, see the end of this message for a description. NEW FEATURES - trained network can be now exported to fortran source code and compiled - added new architecture generator (imlgraph) - added rprop training algorithm - added draft network plotting facility (based on networkx and matplotlib) CHANGES & BUG FIXES - fixed bug preventing ffnet form working with networkx-0.33 - training data can be now numpy arrays - ffnet became a package now, but API should be compatibile with previous version DOCUMENTATION - docstrings of all objects have been improved - docs (automatically generated with epydoc) are avilable online and have been included to source distribution What is ffnet? -------------- ffnet is a fast and easy-to-use feed-forward neural network training solution for python. Unique features --------------- 1. Any network connectivity without cycles is allowed. 2. Training can be performed with use of several optimization schemes including: standard backpropagation with momentum, rprop, conjugate gradient, bfgs, tnc, genetic alorithm based optimization. 3. There is access to exact partial derivatives of network outputs vs. its inputs. 4. Automatic normalization of data. Basic assumptions and limitations: ---------------------------------- 1. Network has feed-forward architecture. 2. Input units have identity activation function, all other units have sigmoid activation function. 3. Provided data are automatically normalized, both input and output, with a linear mapping to the range (0.15, 0.85). Each input and output is treated separately (i.e. linear map is unique for each input and output). 4. Function minimized during training is a sum of squared errors of each output for each training pattern. Performance ----------- Excellent computational performance is achieved implementing core functions in fortran 77 and wrapping them with f2py. ffnet outstands in performance pure python training packages and is competitive to 'compiled language' software. Moreover, a trained network can be exported to fortran sources, compiled and called from many programming languages. Usage ----- Basic usage of the package is outlined below: from ffnet import ffnet, mlgraph, savenet, loadnet, exportnet conec = mlgraph( (2,2,1) ) net = ffnet(conec) input = [ [0.,0.], [0.,1.], [1.,0.], [1.,1.] ] target = [ [1.], [0.], [0.], [1.] ] net.train_tnc(input, target, maxfun = 1000) net.test(input, target, iprint = 2) savenet(net, "xor.net") exportnet(net, "xor.f") net = loadnet("xor.net") answer = net( [ 0., 0. ] ) partial_derivatives = net.derivative( [ 0., 0. ] ) Usage examples with full description can be found in examples directory of the source distribution or browsed at http://ffnet.sourceforge.net. -- Marek Wojciechowski From armin.ronacher at active-4.com Fri Mar 23 17:05:28 2007 From: armin.ronacher at active-4.com (Armin Ronacher) Date: 23 Mar 2007 09:05:28 -0700 Subject: Jinja 1.0 Released Message-ID: <1174665928.651044.92180@l77g2000hsb.googlegroups.com> Jinja 1.0 Released ================== Jinja 1.0 is out now. Jinja is a sandboxed template engine written in pure Python licensed under the BSD license. It provides a Django-like non-XML syntax and compiles templates into executable python code. It's basically a combination of Django templates and python code. Differences to Django --------------------- While the Jinja default syntax looks pretty much like Django the rest of the template engine works completely different. Jinja was designed to be used without Django and to support Python expressions. Features that Jinja has in common with Django: * filter functions * block based template inheritance * the {% cycle %} and {% filter %} tag * being sandboxed * similar default syntax Differences: * advanced lexer that allows escaping of tags * generation of bytecode for faster template execution * definition of macros (often recurring tasks like rendering dialog boxes, form elements etc.) * raw blocks * uncoupled internationalization support * expression support in any tag * abbility of modifying the context from the template by using the {% set %} tag. * support for function calling with arguments * filters can be called with a variable argument count * full unicode support * deferred objects (objects that are resolved on first access, not on context instanciation) * Missing support for {{ block.super }} * Support for recursing by using recursing for loops or self calling macros. * If blocks have support for multiple elif statements * for loops have an optional else block executed if there was no iteration. * test functions like is even etc. * block delimiters are exchangeable. * no implicit function calling * {% endblock %} doesn't support the optional name argument * {% ifchanged %} is not implemented because of performance reasons. If there's enough interest an implementation might be added * {% templatetag %} is not implemented because Jinja supports escaping via {% raw %} or the variable syntax * {% comment %} is not implemented, rather use for commenting out stuff. * {% now %} is not implemented because Jinja doesn't handle l10n. Datetime specific stuff should be provided by the application. * {% load %}, loading components for Jinja works from the application side. Template designers don't have to import stuff on their own. * {% debug %} is not implemented. You can use the global function debug(). * custom tags are not supported. Most of the stuff that is possible with django template tags is possible with either functions, filters, tests or a combination of them. * using keywords like endfor as identifer raises an exception. Links ----- * Webpage - http://jinja.pocoo.org/ * Downloads - http://jinja.pocoo.org/download.html * Documentation - http://jinja.pocoo.org/documentation/ From robin at alldunn.com Fri Mar 23 20:47:53 2007 From: robin at alldunn.com (Robin Dunn) Date: Fri, 23 Mar 2007 12:47:53 -0700 Subject: ANN: wxPython 2.8.3.0 Message-ID: <46042EE9.10302@alldunn.com> Announcing ---------- The 2.8.3.0 release of wxPython is now available for download at http://wxpython.org/download.php. This release includes a number of bug fixes and also some new enhancements, including updates to the XRCed tool and the new InspectionTool. Source code is available, as well as binaries for both Python 2.4 and 2.5, for Windows and Mac, as well some pacakges for various Linux distributions. A summary of changes is listed below and also at http://wxpython.org/recentchanges.php. What is wxPython? ----------------- wxPython is a GUI toolkit for the Python programming language. It allows Python programmers to create programs with a robust, highly functional graphical user interface, simply and easily. It is implemented as a Python extension module that wraps the GUI components of the popular wxWidgets cross platform library, which is written in C++. wxPython is a cross-platform toolkit. This means that the same program will usually run on multiple platforms without modifications. Currently supported platforms are 32-bit Microsoft Windows, most Linux or other Unix-like systems using GTK2, and Mac OS X 10.3+, in most cases the native widgets are used on each platform to provide a 100% native look and feel for the application. Changes in 2.8.3.0 ------------------ Added wx.ToolBar.SetToolNormalBitmap and SetToolDisabledBitmap methods. (Keep in mind however that the disabled bitmap is currently generated on the fly by most native toolbar widgets, so this SetToolDisabledBitmap method won't have any affect on them...) Refactored the inspection tool such that it can be used as a wx.App mix-in class as it was used before (with the wx.lib.mixins.inspect module) and also as a non mix-in tool (using wx.lib.inspect.InspectionTool). Add wx.lib.mixins.treemixin from Frank Niessink. Added the wx.SizerFlags class, and also added AddF, InsertF and PrependF methods to wx.Sizer. The wxSizerFlags class provides a convienient and easier to read way to add items to a sizer. It was added as a new set of methods of the wx.Sizer class so as to not disturb existing code. For example, instead of writing:: sizer.Add(ctrl, 0, wx.EXPAND | wx.ALL, 10) you can now write:: sizer.AddF(ctrl, wx.SizerFlags().Expand().Border(wx.ALL,10)) Will Sadkin provided a patch for the wx.lib.masked package that fixes its support for using the navigation keys on the numeric keypad. wx.lib.plot: patch #1663937 to allow user to turn off scientific notation on plot. wxGTK: Most of the remaining TODOs for the wx.GraphicsContext on wxGTK have been done. This includes implementations for GetTextExtent, Clip, DrawBitmap, fixing the drawing position of text to be at the upper left corner instead of the baseline, etc. wx.lib.customtreectrl patches from Andrea: 1. ExpandAll has been renamed as ExpandAllChildren, and the new ExpandAll now takes no input arguments (consistent with wx.TreeCtrl) 2. ctstyle keyword is now defaulted to 0: every style related to CustomTreeCtrl and the underlying wx.PyScrolledWindow should be declared using the keyword "style" only. For backward compatibility, ctstyle continues to work as I merged ctstyle and style in the __init__ method. 3. GetClassDefaultAttributes is now a classmethod. 4. UnselectAll bug fixed. Renamed the wx.lib.inspect and wx.lib.mixins.inspect modules to inspection, in order to avoid conflicts with the inspect module in the standard Python library. Lots of changes to XRCed from Roman Rolinsky: * Preferences for default "sizeritem" parameters for new panels and controls can be configured ("File">"Preferences..."). * Implemented comment object for including simple one-line comments and comment directives as tree nodes. No validation is performed for a valid XML string so comments must not contain "-->". Comment directive is a special comment starting with '%' character, followed by a line of python code. It is executed using 'exec' when the resource file is opened. This is useful to import plugin modules containing custom handlers which are specific to the resource file, hovewer this is of course a security hole if you use foreign XRC files. A warning is displayed if the preference option 'ask' is selected (by default). * Added support for custom controls and plugin modules. Refer to this wxPythonWiki for the details: http://wiki.wxpython.org/index.cgi/XRCed#custom * Tool panel sections can be collapsed/expanded by clicking on the label of a tool group. * Some undo/redo and other fixes. * Fixes for wxMSW (notebook highlighting, control sizes, tree Unselect). * Notebook page highlighting fix. Highlight resizes when the window is resized. ParamUnit spin button detects event handler re-entry (wxGTK probably has a bug in wxSpinButton with repeated events). * Fix for dealing with empty 'growable' property, using MiniFrame for properties panel, the panel is restored together with the main window. -- Robin Dunn Software Craftsman http://wxPython.org Java give you jitters? Relax with wxPython! From steven.bethard at gmail.com Sun Mar 25 19:05:23 2007 From: steven.bethard at gmail.com (Steven Bethard) Date: Sun, 25 Mar 2007 11:05:23 -0600 Subject: [ANN] argparse 0.7 - Command-line parsing library Message-ID: Announcing argparse 0.7 ----------------------- The argparse module is an optparse-inspired command line parser that improves on optparse by supporting: * positional arguments * sub-commands * required options * options with a variable number of args * better usage messages * a much simpler extension mechanism and a number of other improvements on the optparse API. Download argparse ================= argparse home: http://argparse.python-hosting.com/ argparse single module download: http://argparse.python-hosting.com/file/trunk/argparse.py?format=raw argparse bundled downloads at PyPI: http://www.python.org/pypi/argparse/ About this release ================== This release adds support for single-dash long options and combining single-dash options in a single option string. Note that the 'outfile' type is still deprecated and will likely be removed in the next release. Please update your code to use the new FileType factory. New in this release =================== * Single-dash long options (e.g. ``-foo`` or ``-foo-bar``) * Combining single-dash options (e.g. ``-xy`` is now the same as ``-x -y`` when ``-x`` does not take an argument) Example argparse code ===================== Here's a simple program that sums its command-line arguments and writes them to a file:: parser = argparse.ArgumentParser() parser.add_argument('integers', nargs='+', type=int) parser.add_argument('--log', default=sys.stdout, type=argparse.FileType('w')) args = parser.parse_args() args.log.write('%s\n' % sum(args.integers)) args.log.close() From micahel at gmail.com Mon Mar 26 00:37:47 2007 From: micahel at gmail.com (Michael Hudson) Date: Sun, 25 Mar 2007 23:37:47 +0100 Subject: EuroPython 2007: Call for Proposals Message-ID: Book Monday 9th July to Wednesday 11th July 2007 in your calendar! EuroPython 2007, the European Python and Zope Conference, will be held in Vilnius, Lithuania. Last year's conference was a great success, featuring a variety of tracks, amazing lightning talks and inspiring keynotes. With your participation, we want to make EuroPython 2007, the sixth EuroPython, even more successful than the previous five. Talks, Papers and Themes ------------------------ This year we have decided to borrow a few good ideas from PyCon, one of which is to move away from the 'track' structure. Instead, speakers are invited to submit presentations about anything they have done that they think would be of interest to the Python community. We will then arrange them into related groups and schedule them in the space available. In the past, EuroPython participants have found the following themes to be of interest: * Science * Python Language and Libraries * Web Related Technologies * Education * Games * Agile Methodologies and Testing * Social Skills In addition to talks, we will also accept full paper submissions about any of the above themes. The Call for Refereed Papers will be posted shortly. The deadline for talk proposals is Friday 18th May at midnight (24:00 CEST, Central European Summer Time, UTC+2). Other ways to participate ------------------------- Apart from giving talks, there are plenty of other ways to participate in the conference. Just attending and talking to people you find here can be satisfying enough, but there are three other kinds of activity you may wish to plan for: Lightning Talks, Open Space and Sprints. Lightning Talks are very short talks that give you just enough time to introduce a topic or project, Open Space is an area reserved for informal discussions, and Sprints are focused gatherings for developers interested in particular projects. For more information please see the following pages: * Lightning Talks: http://www.europython.org/sections/events/lightning_talks * Open Space: http://www.europython.org/sections/events/open_space * Sprints: http://www.europython.org/sections/sprints_and_wiki Your Contribution ----------------- To propose a talk or a paper, go to... * http://www.europython.org/submit For more general information on the conference, please visit... * http://www.europython.org/ Looking forward to seeing what you fine folk have been up to, The EuroPython Team From ian at excess.org Mon Mar 26 06:28:38 2007 From: ian at excess.org (Ian Ward) Date: Mon, 26 Mar 2007 00:28:38 -0400 Subject: ANN: Urwid 0.9.8 - Console UI Library Message-ID: <46074BF6.4030503@excess.org> Announcing Urwid 0.9.8 ---------------------- Urwid home page: http://excess.org/urwid/ Tarball: http://excess.org/urwid/urwid-0.9.8.tar.gz About this release: =================== This release improves Urwid's performance by 70% to 450% (reducing running time by 41% to 82%)[1] for some benchmarks[2]. New base classes have been introduced for widgets, canvases and list walkers. Some bugs have been fixed. Python 2.2 or later is now required. There were three major changes that contributed to the performance improvement in this release. The Canvas class was rewritten so that canvases can be combined more efficiently. Canvas objects are now cached so that most unchanged widgets will not need to re-render themselves. There is a new C module for some of the heavily used low-level string functions contributed by Rebecca Breu. Urwid's raw_display module may now be used with libraries like Twisted that have their own event loops. Use the new get_input_descriptors() and get_input_nonblocking() methods instead of get_input() when using an external event loop. While I have tried to maintain compatibility with older versions of Urwid, some of the changes in this release may affect existing code. Please report any problems you have to the mailing list or the IRC channel. [1] http://article.gmane.org/gmane.comp.lib.urwid/415 [2] http://excess.org/urwid/browser/contrib/trunk New in this release: ==================== * Rendering is now significantly faster. * New Widget base class for all widgets. It includes automatic caching of rows() and render() methods. It also adds a new __super attribute for accessing methods in superclasses. Widgets must now call self._invalidate() to notify the cache when their content has changed. To disable caching in a widget set the class variable no_cache to a list that includes the string "render". * Canvas classes have been reorganized: Canvas has been renamed to TextCanvas and Canvas is now the base class for all canvases. New canvas classes include BlankCanvas, SolidCanvas and CompositeCanvas. * External event loops may now be used with the raw_display module. The new methods get_input_descriptors() and get_input_nonblocking() should be used instead of get_input() to allow input processing without blocking. * The Columns, Pile and ListBox widgets now choose their first selectable child widget as the focus widget by defaut. * New ListWalker base class for list walker classes. * New Signals class that will be used to improve the existing event callbacks. Currently it is used for ListWalker objects to notify their ListBox when their content has changed. * SimpleListWalker now behaves as a list and supports all list operations. This class now detects when changes are made to the list and notifies the ListBox object. New code should use this class to wrap lists of widgets before passing them to the ListBox constructor. * New PollingListWalker class is now the default list walker that is used when passing a simple list to the ListBox constructor. This class is intended for backwards compatibility only. When this class is used the ListBox object is unable to cache its render() method. * The curses_display module can now draw in the lower-right corner of the screen. * All display modules now have start() and stop() methods that may be used instead of calling run_wrapper(). * The raw_display module now uses an alternate buffer so that the original screen can be restored on exit. The old behaviour is available by seting the alternate_buffer parameter of start() or run_wrapper() to False. * Many internal string processing functions have been rewritten in C to improve their performance. * Compatible with Python >= 2.2. Python 2.1 is no longer supported. About Urwid =========== Urwid is a console UI library for Python. It features fluid interface resizing, UTF-8 support, multiple text layouts, simple attribute markup, powerful scrolling list boxes and flexible interface design. Urwid is released under the GNU LGPL. From t.zito at biologie.hu-berlin.de Mon Mar 26 12:07:38 2007 From: t.zito at biologie.hu-berlin.de (Tiziano Zito) Date: Mon, 26 Mar 2007 12:07:38 +0200 Subject: Modular toolkit for Data Processing 2.1 released! Message-ID: <20070326100738.GA5038@lotka.biologie.hu-berlin.de> MDP version 2.1 and symeig 1.2 have been released! What's new in version 2.1? -------------------------- - Fully compatible with NumpPy 1.0, the first stable release of the descendant of the Numeric python extension module - symeig project resumed and updated - For increased speed, scipy and symeig are automatically used if available - New nodes: Independent Slow Feature Analysis and quadratic forms analysis algorithms - General improvements, several bug fixes, and code cleanups What is it? ----------- Modular toolkit for Data Processing (MDP) is a data processing framework written in Python. From the user's perspective, MDP consists of a collection of trainable supervised and unsupervised algorithms that can be combined into data processing flows. The base of readily available algorithms includes Principal Component Analysis, two flavors of Independent Component Analysis, Slow Feature Analysis, Independent Slow Feature Analysis, and many more. From the developer's perspective, MDP is a framework to make the implementation of new algorithms easier. MDP takes care of tedious tasks like numerical type and dimensionality checking, leaving the developer free to concentrate on the implementation of the training and execution phases. The new elements then seamlessly integrate with the rest of the library. MDP has been written in the context of theoretical research in neuroscience, but it has been designed to be helpful in any context where trainable data processing algorithms are used. Its simplicity on the user side together with the reusability of the implemented nodes make it also a valid educational tool. As its user base is increasing, MDP is becoming a common repository of user-supplied, freely available, Python-implemented data processing algorithms. The optional symeig module contains a Python wrapper for the LAPACK functions to solve the standard and generalized eigenvalue problems for symmetric (hermitian) positive definite matrices. Those specialized algorithms give an important speed-up with respect to the generic LAPACK eigenvalue problem solver used by NumPy. Resources --------- Download: http://sourceforge.net/project/showfiles.php?group_id=116959 Homepage: http://mdp-toolkit.sourceforge.net Mailing list: http://sourceforge.net/mail/?group_id=116959 -- Tiziano Zito Institute for Theoretical Biology Humboldt-Universitaet zu Berlin Invalidenstrasse, 43 10115 Berlin, Germany Pietro Berkes Gatsby Computational Neuroscience Unit Alexandra House, 17 Queen Square London WC1N 3AR, United Kingdom From fabiofz at gmail.com Tue Mar 27 03:13:41 2007 From: fabiofz at gmail.com (Fabio Zadrozny) Date: Mon, 26 Mar 2007 22:13:41 -0300 Subject: Pydev 1.3.1 Released Message-ID: Hi All, Pydev and Pydev Extensions 1.3.1 have been released Details on Pydev Extensions: http://www.fabioz.com/pydev Details on Pydev: http://pydev.sf.net Details on its development: http://pydev.blogspot.com Release Highlights in Pydev Extensions: ----------------------------------------------------------------- * Interactive Console: jython process can receive vmargs (configured in the preferences page) * Code-Completion: auto-import completions will not be brought for tokens in the current module * Code-Completion: auto-import inserted as last import in imports list (so, __future__ imports will remain in the 1st position) * Code-Analysis: Only adds unused parameters in methods that have some statement that is not a 'pass' or string * Fix: Find Occurrences: will not 'overlap' occurrences anymore * Fix: Code-Analysis: deep attribute access after finding __getattr__ does not signal unresolved import errors anymore Release Highlights in Pydev: ---------------------------------------------- * Mylar integration: the pydev package explorer now supports mylar (packaged as a separate feature: org.python.pydev.mylar.feature) * Code-completion: comment completion is now the same as string completion * Debug: Breakpoints can be set in external files * Debug: Breakpoint annotations now show in external files * Package Explorer: filter for import nodes created * Fix: Package Explorer Actions: Open action does not expand children when opening python file * Fix: Project Explorer (WTP) integration: does not conflict with elements from other plugins anymore (such as java projects) * Fix: halt in new project wizard: when creating a new project from the pydev wizard it was halting in some platforms * Fix: ${string_prompt} in run config: now only evaluated on the actual run * Fix: Code-Completion: jython shell was not handling java.lang.NoClassDefFoundError correctly What is PyDev? --------------------------- PyDev is a plugin that enables users to use Eclipse for Python and Jython development -- making Eclipse a first class Python IDE -- It comes with many goodies such as code completion, syntax highlighting, syntax analysis, refactor, debug and many others. Cheers, -- Fabio Zadrozny ------------------------------------------------------ Software Developer ESSS - Engineering Simulation and Scientific Software http://www.esss.com.br Pydev Extensions http://www.fabioz.com/pydev Pydev - Python Development Enviroment for Eclipse http://pydev.sf.net http://pydev.blogspot.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-announce-list/attachments/20070326/9d0b35d3/attachment.htm From mark.dufour at gmail.com Tue Mar 27 10:49:40 2007 From: mark.dufour at gmail.com (Mark Dufour) Date: Tue, 27 Mar 2007 10:49:40 +0200 Subject: Shed Skin Optimizing Python-to-C++ Compiler 0.0.21 Message-ID: <8180ef690703270149o774fd6a7m60f72b7ed4996051@mail.gmail.com> Hi all, Development of Shed Skin is continuing at a steady pace. I have just released 0.0.21, which comes with the following changes: -important type inference fix/cleanup -support for 'bisect', 'collections.deque' and 'string.maketrans' -improved 'copy' support -support for 'try, else' construction -some optimizations ('dict[..] += ..', "''.join(sorted(str))") -several minor bug fixes See the homepage for more information about Shed Skin, and a collection of 27 'largish' programs (in total about 7,000 lines) that compile with the latest release: http://mark.dufour.googlepages.com I am always looking for developers to join the project. So far I have not received much help. An important area where Shed Skin is still lacking is integration with CPython (building extension modules and using non-compiled modules from compiled code). Other areas I could really use help with are systematic testing, bug reporting, building a better website/wiki, etc. Please let me know if you are interested, and/or join the mailing list from the sourceforge site. Thanks, Mark Dufour. -- "One of my most productive days was throwing away 1000 lines of code" - Ken Thompson From gdementen at gmail.com Tue Mar 27 18:56:28 2007 From: gdementen at gmail.com (Gaetan de Menten) Date: Tue, 27 Mar 2007 18:56:28 +0200 Subject: Elixir 0.3.0 released! Message-ID: We are pleased to announce that version 0.3.0 of Elixir is now available. As always, feedback is very welcome, preferably on Elixir mailing list. Highlights for this release ------------------------------------- - Added support for autoloading/reflecting databases with has_and_belongs_to_many relationships. See the docs for details. - Added support for the "version_id_col" option on entities. This option adds a column to the table which will be used to prevent concurrent modifications on any row of the entity's table (i.e. it will raise an error if it happens). - Added an "ondelete" argument to belongs_to relationships. - The tablename option can now be given a callable so that people can provide their own function to get the table name for an entity. - Made the provided metadata not threadlocal. This could break things for you in some rare case. Please see the (newly created) FAQ file for details about this. - Fixed bug preventing having entities without any statement. - Fixed typo which broke the use_alter argument on belongs_to relationships. The full list of changes can be seen at: http://elixir.ematia.de/svn/elixir/tags/0.3.0/CHANGES What is Elixir? --------------------- Elixir is a declarative layer on top of SQLAlchemy. It is a fairly thin wrapper, which provides the ability to define model objects following the Active Record design pattern, and using a DSL syntax similar to that of the Ruby on Rails ActiveRecord system. Elixir does not intend to replace SQLAlchemy's core features, but instead focuses on providing a simpler syntax for defining model objects when you do not need the full expressiveness of SQLAlchemy's manual mapper definitions. Mailing list ---------------- http://groups.google.com/group/sqlelixir/about -- Ga?tan de Menten http://openhex.org From michael at stroeder.com Tue Mar 27 22:49:15 2007 From: michael at stroeder.com (=?ISO-8859-1?Q?Michael_Str=F6der?=) Date: Tue, 27 Mar 2007 22:49:15 +0200 Subject: ANN: python-ldap-2.3.0 Message-ID: Find a new release of python-ldap: http://python-ldap.sourceforge.net/ python-ldap provides an object-oriented API to access LDAP directory servers from Python programs. It mainly wraps the OpenLDAP 2.x libs for that purpose. Additionally it contains modules for other LDAP-related stuff (e.g. processing LDIF, LDAPURLs and LDAPv3 schema). ---------------------------------------------------------------- Released 2.3.0 2007-03-27 Changes since 2.2.1: * OpenLDAP 2.3+ required now to build. * Added support for Cancel operation ext. op. if supported in OpenLDAP API of the libs used for the build. Modules/ * Removed deprecated code for setting options by name * Added l_ldap_cancel() * Some modifications related to PEP 353 for Python 2.5 on 64-bit platforms (see SF#1467529, thanks to Matej) * Added new function l_ldap_str2dn(), removed functions l_ldap_explode_dn() and l_ldap_explode_rdn() (see SF#1657848, thanks to David) Lib/ * Added method ldapobject.LDAPObject.cancel() * ldap.schema.subentry.urlfetch() now can do non-anonymous simple bind if the LDAP URL provided contains extensions 'bindname' and 'X-BINDPW'. (see SF#1589206) * ldap.filter.escape_filter_chars() has new a key-word argument escape_mode now which defines which chars to be escaped (see SF#1193271). * Various important fixes to ldapobject.ReconnectLDAPObject * Moved all DN-related functions to sub-module ldap.dn, import them in ldap.functions for backward compability * ldap.dn.explode_dn() and ldap.dn.explode_rdn() use the new wrapper function ldap.dn.str2dn() (related to SF#1657848) * changetype issue partially fixed (see SF#1683746) From cfbolz at gmx.de Tue Mar 27 23:50:17 2007 From: cfbolz at gmx.de (Carl Friedrich Bolz) Date: Tue, 27 Mar 2007 23:50:17 +0200 Subject: PyPy 1.0: JIT compilers for free and more Message-ID: <46099199.6060405@gmx.de> ========================================== PyPy 1.0: JIT compilers for free and more ========================================== Welcome to the PyPy 1.0 release - a milestone integrating the results of four years of research, engineering, management and sprinting efforts, concluding the 28 months phase of EU co-funding! Although still not mature enough for general use, PyPy 1.0 materializes for the first time the full extent of our original vision: - A flexible Python interpreter, written in "RPython": - Mostly unaware of threading, memory and lower-level target platform aspects. - Showcasing advanced interpreter features and prototypes. - Passing core CPython regression tests, translatable to C, LLVM and .NET. - An advanced framework to translate such interpreters and programs: - That performs whole type-inference on RPython programs. - Can weave in threading, memory and target platform aspects. - Has low level (C, LLVM) and high level (CLI, Java, JavaScript) backends. - A **Just-In-Time Compiler generator** able to **automatically** enhance the low level versions of our Python interpreter, leading to run-time machine code that runs algorithmic examples at speeds typical of JITs! Previous releases, particularly the 0.99.0 release from February, already highlighted features of our Python implementation and the abilities of our translation approach but the **new JIT generator** clearly marks a major research result and gives weight to our vision that one can generate efficient interpreter implementations, starting from a description in a high level language. We have prepared several entry points to help you get started: * The main entry point for JIT documentation and status: http://codespeak.net/pypy/dist/pypy/doc/jit.html * The main documentation and getting-started PyPy entry point: http://codespeak.net/pypy/dist/pypy/doc/index.html * Our online "play1" demos showcasing various Python interpreters, features (and a new way to program AJAX applications): http://play1.codespeak.net/ * Our detailed and in-depth Reports about various aspects of the project: http://codespeak.net/pypy/dist/pypy/doc/index-report.html In the next few months we are going to discuss the goals and form of the next stage of development - now more than ever depending on your feedback and contributions - and we hope you appreciate PyPy 1.0 as an interesting basis for greater things to come, as much as we do ourselves! have fun, the PyPy release team, Samuele Pedroni, Armin Rigo, Holger Krekel, Michael Hudson, Carl Friedrich Bolz, Antonio Cuni, Anders Chrigstroem, Guido Wesdorp Maciej Fijalkowski, Alexandre Fayolle and many others: http://codespeak.net/pypy/dist/pypy/doc/contributor.html What is PyPy? ================================ Technically, PyPy is both a Python interpreter implementation and an advanced compiler, or more precisely a framework for implementing dynamic languages and generating virtual machines for them. The framework allows for alternative frontends and for alternative backends, currently C, LLVM and .NET. For our main target "C", we can can "mix in" different garbage collectors and threading models, including micro-threads aka "Stackless". The inherent complexity that arises from this ambitious approach is mostly kept away from the Python interpreter implementation, our main frontend. PyPy is now also a Just-In-Time compiler generator. The translation framework contains the now-integrated JIT generation technology. This depends only on a few hints added to the interpreter source and should be able to cope with the changes to the interpreter and be generally applicable to other interpreters written using the framework. Socially, PyPy is a collaborative effort of many individuals working together in a distributed and sprint-driven way since 2003. PyPy would not have gotten as far as it has without the coding, feedback and general support from numerous people. Formally, many of the current developers were involved in executing an EU contract with the goal of exploring and researching new approaches to language and compiler development and software engineering. This contract's duration is about to end this month (March 2007) and we are working and preparing the according final review which is scheduled for May 2007. For the future, we are in the process of setting up structures to help maintain conceptual integrity of the project and to discuss and deal with funding opportunities related to further PyPy sprinting and developments. See here for results of the discussion so far: http://codespeak.net/pipermail/pypy-dev/2007q1/003577.html 1.0.0 Feature highlights ============================== Here is a summary list of key features included in PyPy 1.0: - The Just-In-Time compiler generator, now capable of generating the first JIT compiler versions of our Python interpreter: http://codespeak.net/pypy/dist/pypy/doc/jit.html - More Python interpreter optimizations (a CALL_METHOD bytecode, a method cache, rope-based strings), now running benchmarks at around half of CPython's speed (without the JIT): http://codespeak.net/pypy/dist/pypy/doc/interpreter-optimizations.html - The Python interpreter can be translated to .NET and enables interactions with the CLR libraries: http://codespeak.net/pypy/dist/pypy/doc/cli-backend.html http://codespeak.net/pypy/dist/pypy/doc/clr-module.html - Aspect Oriented Programming facilities (based on mutating the Abstract Syntax Tree): http://codespeak.net/pypy/dist/pypy/doc/aspect_oriented_programming.html http://codespeak.net/pypy/extradoc/eu-report/D10.1_Aspect_Oriented_Programming_in_PyPy-2007-03-22.pdf - The JavaScript backend has evolved to a point where it can be used to write AJAX web applications with it. This is still an experimental technique, though. For demo applications which also showcase various generated Python and PROLOG interpreters, see: http://play1.codespeak.net/ - Proxying object spaces and features of our Python interpreter: - Tainting: a 270-line proxy object space tracking and boxing sensitive information within an application. - Transparent proxies: allow the customization of both application and builtin objects from application level code. Now featuring an initial support module (tputil.py) for working with transparent proxies. For a detailed description and discussion of high level backends and Python interpreter features, please see our extensive "D12" report: http://codespeak.net/pypy/extradoc/eu-report/D12.1_H-L-Backends_and_Feature_Prototypes-2007-03-22.pdf Funding partners and organisations ===================================================== PyPy development and activities happen as an open source project and with the support of a consortium partially funded by a 28 month European Union IST research grant for the period from December 2004 to March 2007. The full partners of that consortium are: Heinrich-Heine University (Germany), Open End (Sweden) merlinux GmbH (Germany), tismerysoft GmbH (Germany) Logilab Paris (France), DFKI GmbH (Germany) ChangeMaker (Sweden), Impara (Germany) From python at cx.hu Wed Mar 28 01:33:02 2007 From: python at cx.hu (Ferenczi Viktor) Date: Wed, 28 Mar 2007 01:33:02 +0200 Subject: python-cjson 1.0.3x2 released Message-ID: <003d01c770c8$43df0d50$8600a8c0@ANNA> This is an enhanced version of python-cjson, the fast JSON encoder/decoder. Qiangning Hong submitted a patch to fix segfault with Python 2.5 on 64 bit platforms. Version python-cjson 1.0.3x2 released to incorporate this patch. It's numbered 1.0.3x, where x stands for eXtension. The main improvement is the ability to extend the JSON encoder and decoder with extensions functions to serialize/unserialize objects not in the original JSON specification. This is achieved without sacrificing the speed and stability of the original implementation. Please send bug reports to python at cx.hu and do not contact the original author (Dan Pascu) about this version. Download and more information: http://cx.hu/python-cjson/ Example to encode/decode python date objects as JavaScript Date: import re import cjson import datetime # Encoding Date objects: def dateEncoder(d): assert isinstance(d, datetime.date) return 'new Date(Date.UTC(%d,%d,%d))'%(d.year, d.month, d.day) json=cjson.encode([1,datetime.date(2007,1,2),2], extension=dateEncoder) assert json=='[1, new Date(Date.UTC(2007,1,2)), 2]' # Decoding Date objects: re_date=re.compile('^new\sDate\(Date\.UTC\(.*?\)\)') def dateDecoder(json,idx): json=json[idx:] m=re_date.match(json) if not m: raise 'cannot parse JSON string as Date object: %s'%json[idx:] args=cjson.decode('[%s]'%json[18:m.end()-2]) dt=datetime.date(*args) return (dt,m.end()) # must return (object, character_count) tuple data=cjson.decode('[1, new Date(Date.UTC(2007,1,2)), 2]', extension=dateDecoder) assert data==[1,datetime.date(2007,1,2),2] From ben+openid at benfinney.id.au Wed Mar 28 05:09:25 2007 From: ben+openid at benfinney.id.au (Ben Finney) Date: Wed, 28 Mar 2007 13:09:25 +1000 Subject: ANN: Gracie v0.2 -- a local-account OpenID provider Message-ID: <87ejnam5cq.fsf@benfinney.id.au> Howdy all, I'm pleased to announce the creation of the Gracie project. What is Gracie? =============== Gracie is an OpenID server (a "provider" in OpenID terminology) that serves OpenID identities for the local system PAM accounts. It authenticates users with a username/password challenge. The OpenID protocol is documented at . Gracie is intended for use within trusted environments that have an existing authentication system available via PAM (e.g. most GNU/Linux environments), that would like to provide OpenIDs for all local users instead of maintaining disparate web-based accounts for local services. What can Gracie do now? ======================= Gracie 0.2 is still alpha-development software, not intended for use in production environments. That said, this version does satisfy some basic requirements. Currently Gracie can serve OpenID 1.1 authentication for local PAM users. It will authenticate the user with a web form, using the PAM system where the Gracie server is running. It assumes that any consumer request for identity is authorised to be given the user's identity. What improvements are needed? ============================= The current state of Gracie is functional but still needs much improvement. Please check the TODO.txt file in the source package for a list of improvements that need to be made. As of this announcement, Gracie version 0.2 is available. The project's home page is . -- \ "When I turned two I was really anxious, because I'd doubled my | `\ age in a year. I thought, if this keeps up, by the time I'm six | _o__) I'll be ninety." -- Steven Wright | Ben Finney From mark.john.rees at gmail.com Wed Mar 28 06:28:11 2007 From: mark.john.rees at gmail.com (Mark Rees) Date: Wed, 28 Mar 2007 14:28:11 +1000 Subject: SyPy - Sydney Users Group Meeting, Thursday April 5, 2007 Message-ID: Hi everyone, For our April meeting, Google have kindly offered to host us. Thursday, April 5, 2007 6:15-8:30PM Google Australia Level 18, Tower 1 Darling Park 201 Sussex St Sydney We will have two presentations: 1. Alec Thomas will give us a debrief on his time at PyCon 2007 2. Andrew Bennets will talk about the Bazaar Distributed Version Control followed by some lively discussion and for those who want to, we will continue the gathering at a local watering hole after 8:30PM. The room can hold 40 people. To attend this meeting you must RSVP to Alan Green (alangreen at google dot com) Regards Mark About SyPy A group of Sydney based python users who meet on the first thursday of the month. Website: http://sypy.org Maillist: http://groups.google.com/group/sydneypython -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-announce-list/attachments/20070328/5725ad59/attachment-0001.html From garabik-news-2005-05 at kassiopeia.juls.savba.sk Fri Mar 30 20:58:36 2007 From: garabik-news-2005-05 at kassiopeia.juls.savba.sk (garabik-news-2005-05 at kassiopeia.juls.savba.sk) Date: Fri, 30 Mar 2007 18:58:36 +0000 (UTC) Subject: ANN: mountpy v0.8 Message-ID: mountpy is a python script for quick automatic mounting and umounting of external filesystems, especially suited for USB removable devices. mountpy is developed on linux, and is meant for modern linux systems. This is version 0.8, changes from previous version: - add test for removable devices (not very useful) - add test for devices already mounted elsewhere (very useful) URL: http://kassiopeia.juls.savba.sk/~garabik/software/mountpy/ License: GPL -- ----------------------------------------------------------- | Radovan Garab?k http://kassiopeia.juls.savba.sk/~garabik/ | | __..--^^^--..__ garabik @ kassiopeia.juls.savba.sk | ----------------------------------------------------------- Antivirus alert: file .signature infected by signature virus. Hi! I'm a signature virus! Copy me into your signature file to help me spread! From python-url at phaseit.net Sat Mar 31 02:04:38 2007 From: python-url at phaseit.net (Cameron Laird) Date: Sat, 31 Mar 2007 00:04:38 +0000 (UTC) Subject: Python-URL! - weekly Python news and links (Mar 30) Message-ID: QOTW: "I have a fake supervisor reference generator for job interviews, a fake house inspection generator for real estate transactions, and a fake parole testimony generator - maybe you could adapt one of them (unfortunately, they are written in dissembler)." - Paul McGuire "... I think that [PyPy] is the most interesting work in CS in many years." - Jacob Hallen PyPy 1.0 is ready--yippee! http://groups.google.com/group/comp.lang.python/browse_thread/thread/5d2675e6895a9daf/ Notice Jacon Hallen's advertisement of the benefits of PyPy. Alex Martelli and Facundo Batista explain the Python perspective on timing-out HTTP requests: http://groups.google.com/group/comp.lang.python/browse_thread/thread/ff84e7340988c168/ Paul McGuire illustrates the intent and use of his valuable pyparsing module: http://groups.google.com/group/comp.lang.python/msg/ee4129aee0f33efc http://groups.google.com/group/comp.lang.python/msg/39337f2c6148e927 More Pythoneers should be familiar with timing and related measurements. Alex Martellii aptly illustrates how rewarding it can be in the hands of a master: http://groups.google.com/group/comp.lang.python/msg/785e1571d3c9b468 Mode of a collection is a sort of reverse-lookup statistic that interestingly models many other useful calculations. Notice how succinctly idiomatic Python solves the problem: http://groups.google.com/group/comp.lang.python/browse_thread/thread/23da16a5fc2ca39d/ ======================================================================== 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 The Python Papers aims to publish "the efforts of Python enthusiats". http://pythonpapers.org/ Readers have recommended the "Planet" sites: http://planetpython.org http://planet.python.org comp.lang.python.announce announces new Python software. Be sure to scan this newsgroup weekly. http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python.announce Python411 indexes "podcasts ... to help people learn Python ..." Updates appear more-than-weekly: http://www.awaretek.com/python/index.html Steve Bethard continues the marvelous tradition early borne by Andrew Kuchling, Michael Hudson, Brett Cannon, Tony Meyer, and Tim Lesher of intelligently summarizing action on the python-dev mailing list once every other week. http://www.python.org/dev/summary/ The Python Package Index catalogues packages. http://www.python.org/pypi/ The somewhat older Vaults of Parnassus ambitiously collects references to all sorts of Python resources. http://www.vex.net/~x/parnassus/ Much of Python's real work takes place on Special-Interest Group mailing lists http://www.python.org/sigs/ Python Success Stories--from air-traffic control to on-line match-making--can inspire you or decision-makers to whom you're subject with a vision of what the language makes practical. http://www.pythonology.com/python/success The Python Software Foundation (PSF) has replaced the Python Consortium as an independent nexus of activity. It has official responsibility for Python's development and maintenance. http://www.python.org/psf/ Among the ways you can support PSF is with a donation. http://www.python.org/psf/donate.html Kurt B. Kaiser publishes a weekly report on faults and patches. http://www.google.com/groups?as_usubject=weekly%20python%20patch Although unmaintained since 2002, the Cetus collection of Python hyperlinks retains a few gems. http://www.cetus-links.org/oo_python.html Python FAQTS http://python.faqts.com/ The Cookbook is a collaborative effort to capture useful and interesting recipes. http://aspn.activestate.com/ASPN/Cookbook/Python Many Python conferences around the world are in preparation. Watch this space for links to them. Among several Python-oriented RSS/RDF feeds available are http://www.python.org/channews.rdf http://bootleg-rss.g-blog.net/pythonware_com_daily.pcgi http://python.de/backend.php For more, see http://www.syndic8.com/feedlist.php?ShowMatch=python&ShowStatus=all The old Python "To-Do List" now lives principally in a SourceForge reincarnation. http://sourceforge.net/tracker/?atid=355470&group_id=5470&func=browse http://www.python.org/dev/peps/pep-0042/ The online Python Journal is posted at pythonjournal.cognizor.com. editor at pythonjournal.com and editor at pythonjournal.cognizor.com welcome submission of material that helps people's understanding of Python use, and offer Web presentation of your work. del.icio.us presents an intriguing approach to reference commentary. It already aggregates quite a bit of Python intelligence. http://del.icio.us/tag/python *Py: the Journal of the Python Language* http://www.pyzine.com Archive probing tricks of the trade: http://groups.google.com/groups?oi=djq&as_ugroup=comp.lang.python&num=100 http://groups.google.com/groups?meta=site%3Dgroups%26group%3Dcomp.lang.python.* Previous - (U)se the (R)esource, (L)uke! - messages are listed here: http://www.ddj.com/topic/python/ (requires subscription) http://groups-beta.google.com/groups?q=python-url+group:comp.lang.python*&start=0&scoring=d& http://purl.org/thecliff/python/url.html (dormant) or http://groups.google.com/groups?oi=djq&as_q=+Python-URL!&as_ugroup=comp.lang.python There is *not* an RSS for "Python-URL!"--at least not yet. Arguments for and against are occasionally entertained. Suggestions/corrections for next week's posting are always welcome. E-mail to should get through. To receive a new issue of this posting in e-mail each Monday morning (approximately), ask to subscribe. Mention "Python-URL!". Write to the same address to unsubscribe. -- The Python-URL! Team-- Phaseit, Inc. (http://phaseit.net) is pleased to participate in and sponsor the "Python-URL!" project. Watch this space for upcoming news about posting archives. From atul.nene at gmail.com Sat Mar 31 20:48:50 2007 From: atul.nene at gmail.com (Atul) Date: 31 Mar 2007 11:48:50 -0700 Subject: ANN: New Version - WERD (1.1), the Phonetic Transliterator to Indic scripts available Message-ID: <1175366930.765222.302610@o5g2000hsb.googlegroups.com> WERD is a phonetic transliterator that helps users write english text but read the same in the chosen Devanagari (Indic) font. WERD is expected to make it easy for Indians wanting to communicate over chat or email in their native language. Checkout http://werd.sourceforge.net/ WERD is written in Python and Tkinter, is open source software released under GPL, and is hosted by SourceForge (www.sourceforge.net) Whats New: 1. Unicode font support 2. Usability enhancements 3. Minor Bug Fixes Thanks and Regards, -- Atul From sebastian.hilbert at gmx.net Sat Mar 31 21:35:21 2007 From: sebastian.hilbert at gmx.net (Sebastian Hilbert) Date: Sat, 31 Mar 2007 21:35:21 +0200 Subject: GNUmed 0.2.5 release Message-ID: <200703312135.22311.sebastian.hilbert@gmx.net> GNUmed version 0.2.5 has been polished and released ! For the impatient: Go grab your copy at wiki.gnumed.de.or www.gnumed.de/downloads Next to bug fixes and code cleanup this release has a nice selection of new features as well ... We need testers. Let us know if it works for you. The GNUmed team worked hard to release yet another stable version. As features are being added more and more success stories of happy users reach us. For this release GNotary support on backup, improved phrasewheel code, handling of the original filename in the document archive, visual indication of patient birthday, initial KVK (German health insurance card) handling, connection pooling (massive speedup over slow network links), a generalized hooks framework and smart allergies handling has been added. Localization files were added and updated. All features have been documented over at wiki.gnumed.de. Packages are available for Debian unstable, Ubuntu Feisty, MS Windows and any other GNU/Linux using the archives (tgz). The latest not yet released GNUmed code has been successfully tested on Mac OSX. One of the next releases will include support for that OS. Have fun and please report bugs and success stories. To stay in touch just head over to blog.gnumed.de every once in a while. -- Sebastian Hilbert Leipzig / Germany [www.gnumed.de] -> PGP welcome, HTML ->/dev/null From sebastian.hilbert at gmx.net Sat Mar 31 21:35:21 2007 From: sebastian.hilbert at gmx.net (Sebastian Hilbert) Date: Sat, 31 Mar 2007 21:35:21 +0200 Subject: [ANNOUNCE] GNUmed 0.2.5 release Message-ID: <200703312135.22311.sebastian.hilbert@gmx.net> GNUmed version 0.2.5 has been polished and released ! For the impatient: Go grab your copy at wiki.gnumed.de.or www.gnumed.de/downloads Next to bug fixes and code cleanup this release has a nice selection of new features as well ... We need testers. Let us know if it works for you. The GNUmed team worked hard to release yet another stable version. As features are being added more and more success stories of happy users reach us. For this release GNotary support on backup, improved phrasewheel code, handling of the original filename in the document archive, visual indication of patient birthday, initial KVK (German health insurance card) handling, connection pooling (massive speedup over slow network links), a generalized hooks framework and smart allergies handling has been added. Localization files were added and updated. All features have been documented over at wiki.gnumed.de. Packages are available for Debian unstable, Ubuntu Feisty, MS Windows and any other GNU/Linux using the archives (tgz). The latest not yet released GNUmed code has been successfully tested on Mac OSX. One of the next releases will include support for that OS. Have fun and please report bugs and success stories. To stay in touch just head over to blog.gnumed.de every once in a while. -- Sebastian Hilbert Leipzig / Germany [www.gnumed.de] -> PGP welcome, HTML ->/dev/null ---------------------------(end of broadcast)--------------------------- -To unsubscribe from this list, send an email to: pgsql-announce-unsubscribe at postgresql.org