From info at egenix.com Tue Apr 2 10:16:11 2013 From: info at egenix.com (eGenix Team: M.-A. Lemburg) Date: Tue, 02 Apr 2013 10:16:11 +0200 Subject: ANN: eGenix mxODBC Zope/Plone Database Adapter 2.1.1 Message-ID: <515A93CB.5040805@egenix.com> ________________________________________________________________________ ANNOUNCEMENT mxODBC Zope/Plone Database Adapter Version 2.1.1 for Zope and the Plone CMS Available for Plone 4.0, 4.1 and 4.2, Zope 2.12 and 2.13, on Windows, Linux, Mac OS X, FreeBSD and other platforms This announcement is also available on our web-site for online reading: http://www.egenix.com/company/news/eGenix-mxODBC-Zope-DA-2.1.1-GA.html ________________________________________________________________________ INTRODUCTION The eGenix mxODBC Zope DA allows you to easily connect your Zope or Plone CMS installation to just about any database backend on the market today, giving you the reliability of the commercially supported eGenix product mxODBC and the flexibility of the ODBC standard as middle-tier architecture. The mxODBC Zope Database Adapter is highly portable, just like Zope itself and provides a high performance interface to all your ODBC data sources, using a single well-supported interface on Windows, Linux, Mac OS X, FreeBSD and other platforms. This makes it ideal for deployment in ZEO Clusters and Zope hosting environments where stability and high performance are a top priority, establishing an excellent basis and scalable solution for your Plone CMS. Product page: http://www.egenix.com/products/zope/mxODBCZopeDA/ ________________________________________________________________________ NEWS We are pleased to announce the new version 2.1.1 of our mxODBC Zope/Plone Database Adapter product. Feature Enhancements -------------------- * Added a new connection property "ODBC cursor type" which allows easily adjusting the ODBC cursor type to be used for mxODBC Zope DA connection objects. This new property allows enhancing the performance of the adapter significantly, when using it with MS SQL Server or IBM DB2 database backends. Please see below for details. Driver Compatibility -------------------- * MS SQL Server performance can now be much enhanced, and increased to levels beyond that of previous mxODBC Zope DA releases, by adjusting the connection ODBC cursor type to "Forward only cursors". The performance increase compared to mxODBC Zope DA 2.1.0 is enormous: from 2-3x faster executes/fetches for average queries, up to 300x faster for simple cases. In mxODBC Zope DA 2.2, we will switch to using "Forward only cursors" per default for all database backends. * IBM DB2 can benefit from the same performance enhancements using "Forward only cursors". The effect is a lot smaller, but still noticeable: up to 2x faster executes/fetches with forward-only cursors, compared to mxODBC Zope DA 2.1.0. * Added documentation to explain the different cursor types, compatibility with different database backends and effects on performance. Fixes ----- * Fixed the installation instructions to be more generic and easily adaptable to Plone and Zope installations on both Windows and Unix platforms. For the full set of changes please check the change log: http://www.egenix.com/products/zope/mxODBCZopeDA/changelog.html ________________________________________________________________________ FEATURES Version 2.1.0 of our mxODBC Zope/Plone Database Adapter product was released on 2012-09-18. Please see the full announcement for highlights of the 2.1 release: http://www.egenix.com/company/news/eGenix-mxODBC-Zope-DA-2.1.0-GA.html For the full set of features mxODBC has to offer, please see: http://www.egenix.com/products/zope/mxODBCZopeDA/#Features ________________________________________________________________________ UPGRADING Users are encouraged to upgrade to this latest mxODBC Zope/Plone DA release to benefit from the new features and updated ODBC driver support. We have taken special care not to introduce backwards incompatible changes, making the upgrade experience as smooth as possible. As always, patch level upgrades (e.g. from 2.1.0 to 2.1.1) are free of charge. The licenses you have purchased for 2.1 will continue to work with this new release. For major and minor upgrade purchases, we will give out 20% discount coupons going from mxODBC Zope DA 1.x to 2.1 and 50% coupons for upgrades from mxODBC 2.x to 2.1. After upgrade, use of the original license from which you upgraded is no longer permitted. Please contact the eGenix.com Sales Team with your existing license serials for details for an upgrade discount coupon. If you want to try the new release before purchace, you can request 30-day evaluation licenses by visiting our web-site or writing to sales at egenix.com, stating your name (or the name of the company) and the number of eval licenses that you need. _______________________________________________________________________ SUPPORT Commercial support for this product is available from eGenix.com. Please see http://www.egenix.com/services/support/ for details about our support offerings. ________________________________________________________________________ MORE INFORMATION For more information on the mxODBC Zope Database Adapter, licensing and download instructions, please visit our web-site: http://www.egenix.com/products/zope/mxODBCZopeDA/ You can buy mxODBC Zope DA licenses online from the eGenix.com shop at: http://shop.egenix.com/ About Python (http://www.python.org/): Python is an object-oriented Open Source programming language which runs on all modern platforms. By integrating ease-of-use, clarity in coding, enterprise application connectivity and rapid application design, Python establishes an ideal programming platform for today's IT challenges. About eGenix (http://www.egenix.com/): eGenix is a software project, consulting and product company focusing on expert project services and professional quality products for companies, Python users and developers. Enjoy, -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Apr 02 2013) >>> Python Projects, Consulting and Support ... http://www.egenix.com/ >>> mxODBC.Zope/Plone.Database.Adapter ... http://zope.egenix.com/ >>> mxODBC, mxDateTime, mxTextTools ... http://python.egenix.com/ ________________________________________________________________________ 2013-03-25: Released mxODBC 3.2.2 ... http://egenix.com/go40 2013-04-10: Python Meeting Duesseldorf ... 8 days to go ::::: Try our mxODBC.Connect Python Database Interface for free ! :::::: eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 http://www.egenix.com/company/contact/ From aahz at pythoncraft.com Wed Apr 3 04:08:11 2013 From: aahz at pythoncraft.com (Aahz) Date: Tue, 2 Apr 2013 22:08:11 -0400 (EDT) Subject: OSCON 2013 registration is open (7/22-26) Message-ID: <20130403020811.8FDCB3481E@mailbackend.panix.com> OSCON (O'Reilly Open Source Conference) will be held in Portland, OR July 22-26. This year we're celebrating the fifteenth anniversary! Registration is now open: http://www.oscon.com/oscon2013 http://www.oscon.com/oscon2013/public/schedule/grid Hope to see you there! -- Aahz (aahz at pythoncraft.com) <*> http://www.pythoncraft.com/ "The joy of coding Python should be in seeing short, concise, readable classes that express a lot of action in a small amount of clear code -- not in reams of trivial code that bores the reader to death." --GvR From therve at free.fr Wed Apr 3 13:11:21 2013 From: therve at free.fr (=?ISO-8859-1?Q?Thomas_Herv=E9?=) Date: Wed, 03 Apr 2013 13:11:21 +0200 Subject: Twisted 13.0.0 released Message-ID: <515C0E59.8070109@free.fr> On behalf of Twisted Matrix Laboratories, I am pleased to announce the release of Twisted 13.0. Among the 70 tickets closed, we can see: * A new "Introduction to Deferreds" document that you can find here: http://twistedmatrix.com/documents/13.0.0/core/howto/defer-intro.html * A fix in twisted.web.template where attributes were not quoted properly, risking HTML injection. * Support for unicode domain names in twisted.names SRVConnector and Name classes, after a 12.3 regression. * A workaround for platform limitations when trying to schedule events far in the future. For more information, see the NEWS file here: http://twistedmatrix.com/Releases/Twisted/13.0/NEWS.txt Download it now from: http://pypi.python.org/packages/source/T/Twisted/Twisted-13.0.0.tar.bz2 or http://pypi.python.org/packages/2.7/T/Twisted/Twisted-13.0.0.win32-py2.7.msi Thanks to the supporters of Twisted via the Software Freedom Conservancy and to the many contributors for this release. -- Thomas From diarmuidbourke at gmail.com Wed Apr 3 14:00:08 2013 From: diarmuidbourke at gmail.com (Diarmuid Bourke) Date: Wed, 3 Apr 2013 13:00:08 +0100 Subject: [ANN] PyCon Ireland 2013 Message-ID: Hi All, We are pleased to announce that PyCon Ireland will take place in Dublin this year. When: Saturday 12th - Sunday 13th October Where: The Burlington Hotel (Information on ticket prices, etc. will be announced soon.) We will also have a two-day sprints held after the conference, this is free for all to attend. When: Monday 14th - Tuesday 15th October Where: Venue TBA Call for Sponsors: Form open for submissions from 12pm on Tuesday 9th April. https://docs.google.com/forms/d/1bo87oESHcAyxr2raffcKkP4WyQEQctDyWGQN1amcjJQ/viewform Call for Speakers: https://docs.google.com/forms/d/1fBPxGD5f6Idp9q6ftog8CLCLMoBld4e05mRvyDZpacE/viewform If you have any questions, please email pycon at python.ie. Kindest Regards, PyCon Ireland 2013 Committee -- Diarmuid Bourke Python Ireland / Chairperson diarmuid at python.ie From damien.cassou at gmail.com Wed Apr 3 14:48:23 2013 From: damien.cassou at gmail.com (Damien Cassou) Date: Wed, 3 Apr 2013 14:48:23 +0200 Subject: Call for papers for Dyla'13: 7th Workshop on Dynamic Languages and Applications @ECOOP Message-ID: Call for Papers =========================================================== Dyla'13, 7th Workshop on Dynamic Languages and Applications Colocated with ECOOP, ECMFA and ECSA In-cooperation with SIGPLAN and SIGSOFT 1?5 July, Montpellier, France http://rmod.lille.inria.fr/web/pier/Events/Dyla13 !! Important dates - Submission deadline: *April 19th* - Notification: mid-May - Workshop: July 1st - Ecoop early registration: mid-May !! Abstract The advent of Java and C# has been a major breakthrough in the adoption of some important object-oriented language characteristics. This breakthrough turned academic features like interfaces, garbage collection, and meta-programming into technologies generally accepted by industry. Nevertheless, the massive adoption of these languages now also gives rise to a growing awareness of their limitations. A number of reactions from industry testify this: invokedynamic bytecode instruction has been included in latest Java virtual machine release; the dynamic language runtime (DLR) is gaining popularity; C# adopted dynamic as a valid static type. Gartner prognoses further growth (http://blogs.gartner.com/mark_driver/2008/12/10) of dynamic languages. Researchers and practitioners struggle with static type systems, overly complex abstract grammars, simplistic concurrency mechanisms, limited reflection capabilities, and the absence of higher-order language constructs such as delegation, closures and continuations. Dynamic languages such as Ruby, Python, JavaScript and Lua are a step forward in addressing these problems while getting more and more popular. Making these languages mainstream requires practitioners to look back and pick mechanisms up in existing dynamic languages such as Lisp, Scheme, Smalltalk and Self. Practitioners also need to further explore discover new dynamic approaches in the context of new challenging fields such as pervasive computing. The goal of this workshop is to act as a forum where practitioners can discuss new advances in the design, implementation and application of dynamically typed languages that, sometimes radically, diverge from the statically typed class-based mainstream. Another objective is to discuss new as well as older "forgotten" languages and features in this context. Topics of interest include, but are not limited to: - programming language extensions - programming environment extensions - executing environments - static and dynamic analyses - optional type-checking - meta-object protocols - reserve engineering - domain-specific languages/tooling - testing environments - live programming !! Targeted audience The expected audience of this workshop is practitioners and researchers sharing the same interest in dynamically typed languages. Lua, Python, Ruby, Scheme and Smalltalk are gaining a significant popularity both in industry and academia. Nevertheless, each community has the tendency to only look at what it produces. Broadening the scope of each community is the goal of the workshop. To achieve this goal we will form a PC with leading persons from all languages mentioned above, fostering participation from all targeted communities. !! Workshop Format and Submission Information The workshop will have a demo-oriented style. The idea is to allow participants to demonstrate new and interesting features and discuss what they feel is relevant for the dynamic-language community. To participate to the workshop, you can either - submit (before __April 19th 2013__) an article (ACM Tighter Alternate style http://www.acm.org/sigs/publications/proceedings-templates) describing your presentation and/or tool. Articles whose length ranges from 2 to 15 pages will be carefully reviewed by a program committee including but not limited to the organizers. Each accepted paper will be presented for 20 to 30 minutes and be published to the ACM Digital Library (at the option of each author) and the workshop's web site. The submission website is http://www.easychair.org/conferences/?conf=dyla2013. - or give a 10-minute lightning demo of your work. A dedicated session will be allocated for this, provided there is ample time available. A session on pair programming is also planned. People will then get a chance to share their technologies by interacting with other participants. !! Program committee - Carl Friedrich Bolz, Heinrich-Heine-Universit?t D?sseldorf, Germany (http://cfbolz.de) - Camillo Bruni, Inria Lille-Nord Europe, France (http://rmod.lille.inria.fr/web/pier/team/bruni) - Adrian Kuhn, University of British Columbia, Canada (https://www.cs.ubc.ca/people/adrian-kuhn) - Lukas Renggli, Google, Switzerland (http://www.lukas-renggli.ch/) - Juan Pablo Sandoval Alcocer, University of Chile (http://users.dcc.uchile.cl/~jsandova/) - Bastian Steinert, Hasso-Plattner-Institute, Germany (http://www.bastiansteinert.org) - Veronica Uquillas Gomez, Vrije Universiteit Brussel, Belgium (http://soft.vub.ac.be/~vuquilla/) - Simon Urli, University of Nice-Sophia Antipolis, France (http://www.simonurli.fr/) - Didier Verna, EPITA Research and Development Laboratory, France (http://www.lrde.epita.fr/~didier) - the 4 workshop organizers !! Workshop Organizers - Alexandre Bergel (http://bergel.eu) - Damien Cassou (http://damiencassou.seasidehosting.st) - Jorge Ressia (http://www.jorgeressia.com) - Serge Stinckwich (http://www.doesnotunderstand.org) !! News feed Follow us on twitter: http://twitter.com/dyla2013 For further information: http://rmod.lille.inria.fr/web/pier/Events/Dyla13 From graffatcolmingov at gmail.com Wed Apr 3 16:30:20 2013 From: graffatcolmingov at gmail.com (Ian Cordasco) Date: Wed, 3 Apr 2013 10:30:20 -0400 Subject: [Announcement] New mailing list for code quality tools including Flake8, Pyflakes and Pep8 Message-ID: Hello, There's a new mailing-list related to Python code-quality tools. Are you concerned about the evolution of various code checkers? Do you have questions or suggestions? Subscribe here: http://mail.python.org/mailman/listinfo/code-quality Best regards, Ian From mmueller at python-academy.de Thu Apr 4 11:19:12 2013 From: mmueller at python-academy.de (=?ISO-8859-15?Q?Mike_M=FCller?=) Date: Thu, 04 Apr 2013 11:19:12 +0200 Subject: Course: Content-Management mit Plone (German), September 12 - 13, 2013 Message-ID: <515D4590.6080909@python-academy.de> Content-Management mit Plone (German) ===================================== Date: September 12 - 13, 2013 Location: Leipzig, Germany Language: German Link: http://www.python-academy.de/Kurse/kurs_plone.html (The following is in German, the instruction language.) Der Kurs richtet sich an Autoren und Redakteure sowie Contentmanager und Webmaster, die Inhalte mit Hilfe des Content-Management-Systems Plone erstellen und pflegen wollen. Es sind keine Grundkenntnisse erforderlich. Plone ist in Python implementiert. Im Gengensatz zu den anderen Kursen der Python Academy geht es nicht um das Programmieren, sondern um das Nutzen von Software. Wer tiefer einsteigen und mit Python programmieren m?chte, zum Beispiel um Plone zu erweitern, kann aus vielen Kursen ausw?hlen. Unten sind die n?chsten Kurs-Termine aufgelistet. --- Our next courses: 14.04.-17.04.2013 (Leipzig) Python f?r Nicht-Programmierer (German) 15.04.-17.04.2013 (Leipzig) Python f?r Programmierer (German) 18.04.-20.04.2013 (Leipzig) Python f?r Wissenschaftler und Ingenieure (German) 03.06.-05.06.2013 (Leipzig) Einstieg in Django (German) 06.06.-08.06.2013 (Leipzig) Django f?r Fortgeschrittene (German) 10.06.-12.06.2013 (Leipzig) Python for Scientists and Engineers (English) 13.06.2013 (Leipzig) Fast Code with the Cython Compiler (English) 14.06.2013 (Leipzig) Fast NumPy Processing with Cython (English) 24.06.-26.06.2013 (Leipzig) Professional Testing with pytest and tox (English) 09.09.-11.09.2013 (Leipzig) Twisted Training (English) 12.09.-13.09.2013 (Leipzig) Content-Management mit Plone (German) 04.11.-06.11.2013 (Leipzig) Introduction to Django (English) 07.11.-09.11.2013 (Leipzig) Advanced Django (English) From barry at python.org Fri Apr 5 21:00:54 2013 From: barry at python.org (Barry Warsaw) Date: Fri, 5 Apr 2013 15:00:54 -0400 Subject: ANNOUNCE: flufl.enum 4.0 Message-ID: <20130405150054.23929439@anarchist> I am happy to announce flufl.enum version 4.0. What is flufl.enum? It is an enumeration package with a simple syntax, and concise and specific semantics. flufl.enum is compatible with Python 2.7, 3.2, and 3.3. It is proposed for inclusion in Python 3.4 by way of PEP 435. My thanks to Eli Bendersky for his help with both the code and in authoring the PEP, as well as everyone who participated in discussions on python-dev, python-ideas, and at the PyCon 2013 language summit. Changes since 3.2: - Added the IntEnum variant. When you create an enumeration with this base class, the resulting enum values *are* ints and can be used anywhere a Python int can be used, including in the C API. (LP: #1132976) - make() is deprecated. You can now just call Enum() or IntEnum() to programmatically create enumerations. (LP: #1162375). These constructors now also accept a space-separated string of attribute names which are auto-split and auto-numbered. They also accept a dictionary mapping names to values. - IntEnums values support __index__() for slicing (LP: #1132972), as well as__int__() for coercion to a concrete integer. - EnumValue.__int__() is deprecated; use IntEnumValue (via IntEnum) instead. - EnumValues now have a .value attribute to access the actual, underlying value. (LP: #1132859) - Previously deprecated attributes .enumclass and .enumname have been removed, as well as the module function make_enum(). (LP: #1132951) - Minor API changes: the repr of enum values say "value=" instead of "int=", and multiple enum values in a single enum definition now raises ValueError instead of TypeError. - Single argument Enum() calling as a synonym for getitem is deprecated. - Other bugs fixed: LP: #1026403, LP: #1132830, LP: #1124596 Full documentation is available here: http://pythonhosted.org/flufl.enum/README.html The project home is at: https://launchpad.net/flufl.enum You can report bugs at: https://bugs.launchpad.net/flufl.enum Download the package from the Cheeseshop: https://pypi.python.org/pypi/flufl.enum or from the Launchpad project page above. Read PEP 435: http://www.python.org/dev/peps/pep-0435/ Enjoy, -Barry From dmalcolm at redhat.com Thu Apr 4 21:17:12 2013 From: dmalcolm at redhat.com (David Malcolm) Date: Thu, 04 Apr 2013 15:17:12 -0400 Subject: ANN: gcc-python-plugin 0.12 Message-ID: <1365103032.1778.41.camel@surprise> gcc-python-plugin is a plugin for GCC 4.6 onwards which embeds the CPython interpreter within GCC, allowing you to write new compiler warnings in Python, generate code visualizations, etc. It ships with "gcc-with-cpychecker", which implements static analysis passes for GCC aimed at finding bugs in CPython extensions. In particular, it can automatically detect reference-counting errors: http://gcc-python-plugin.readthedocs.org/en/latest/cpychecker.html Major new features in 0.12 ========================== * support added for GCC 4.8 (along with 4.6 and 4.7) * addition of a new "gcc-c-api" component to isolate much of GCC's internals (and the differences between 4.6-4.8). I plan for this to eventually be its own project, aiming at providing a stable API and ABI for working with GCC, once it has proven itself in the context of the python plugin. * link-time-optimization support, for e.g. whole-program visualizations across multiple source files. See http://gcc-python-plugin.readthedocs.org/en/latest/0.12.html for more information, and for details of the numerous other changes. Tarball releases are available at: https://fedorahosted.org/releases/g/c/gcc-python-plugin/ Prebuilt-documentation can be seen at: http://gcc-python-plugin.readthedocs.org/en/latest/index.html The project's homepage is: https://fedorahosted.org/gcc-python-plugin/ The plugin and checker are Free Software, licensed under the GPLv3 or later. Enjoy! Dave Malcolm From reingart at gmail.com Thu Apr 4 23:40:08 2013 From: reingart at gmail.com (Mariano Reingart) Date: Thu, 4 Apr 2013 18:40:08 -0300 Subject: gui2py alpha 0.9a: Simple and powerful GUI framework for agile development, released Message-ID: FYI gui2py is a ?fork? of PythonCard (a simple software construction kit based on wxpython), but improved trying to enhance it with a modern look & feel (better visual designer, property grid, drag & drop toolbox, etc.) and keeping it simple and powerful (i.e. adding MVC List, Tree, Grid, easier layout with Notebook, Sizers and Web-like features): https://code.google.com/p/gui2py/ It was based initially mainly on PythonCard (and also on wxPython Demo, wxGlade and other related projects), but also it includes a lot of experience and personal needs (it would be used to port a legacy ERP-like system for SME, actually composed of a large Visual Basic 5.0 classic codebase). For more info see: https://code.google.com/p/erplibre/ It is also aimed for teaching in introductory and intermediate programming courses (prior web development assignments), so it was simplified even further and adopted some HTML/Javascript features. In parallel, gui2py is part of a meta-project called rad2py (Rapid Application Development for Python), an academic research about software engineering best practices and quality assurance, whose goals are to integrate an IDE (code editor, debugger, unit test and other tools) with agile methodologies and a well defined software process (mainly for metrics collection, analysis and estimation): https://code.google.com/p/rad2py/ https://gui2py.googlecode.com/hg/screenshots/win8/rad2py_ide2py_gui2py_integration.png As gui2py it is not completely backwards compatible with PythonCard, a lot of code was changed/removed or added, it was "forked" in a separate project to not cause confusions. Migration should be easy, and an automatic tool is planned to convert PythonCard resources and source code to gui2py requeriments. New features are only available on gui2py, and they could not be backported to PythonCard. This alpha release is functional and "stable" for development porposes, but expect some APIs to change in the near future, and a lot of features still need to be incorporated. Screenshots (Windows, Mac OS X, Ubuntu): https://code.google.com/p/gui2py/wiki/SampleScreenshots https://code.google.com/p/gui2py/wiki/ToolsScreenshots Quick Start Installation Guide: https://code.google.com/p/gui2py/wiki/QuickStart Roadmap: https://code.google.com/p/gui2py/wiki/RoadMap Feedback is welcome, and of course, if you are interested, I've created this group where anyone can participate: http://groups.google.com/group/gui2py gui2py at googlegroups.com My special thanks to all of the PythonCard's, wxPython's and Python's developers that made this possible Best regards, Mariano Reingart http://www.sistemasagiles.com.ar http://reingart.blogspot.com From laurent.pointal at free.fr Thu Apr 4 20:05:45 2013 From: laurent.pointal at free.fr (Laurent Pointal) Date: Thu, 04 Apr 2013 20:05:45 +0200 Subject: New version of (french) "Une introduction =?UTF-8?B?w6A=?= Python 3" Message-ID: <515dc0f9$0$2289$426a74cc@news.free.fr> Hello, a new version of B.Cordeau book, for which i was invited to participate, is now online here: http://perso.limsi.fr/pointal/_media/python:cours:courspython3.pdf This (french) book is for people intending to learn Python as first programming language. A+ L.Pointal. -- Laurent POINTAL - laurent.pointal at laposte.net From paultag at debian.org Sat Apr 6 02:51:38 2013 From: paultag at debian.org (Paul Tagliamonte) Date: Fri, 5 Apr 2013 20:51:38 -0400 Subject: ANN: Hy - Python / Lisp interoperability layer Message-ID: <20130406005138.GA10500@leliel> Hello, World! tl;dr ===== Version: 0.9.4 License: Expat (sometimes called MIT) Hilarious: Yes Hy is a wicked funny hack that lets you interop (in both directions) with Lisp from Python (or with Python from Lisp). It's pip installable: $ pip install hy [...] $ hy => (print (.join ", " ["Hello" "World"])) Hello, World (REPL even has cute readline bits mostly workingish, with a few known issues) And the source is on GitHub @ http://git.io/hy (star it, fork it, hack it) It's undergoing changes quite quickly - so, be careful! OK, what is it (technically) ============================ Hy is a set of hacks, implemented in Python, to lex and compile a Lisp variant (called `Hy', which looks very similar to Clojure in some ways) into Python AST, and transparently load it into sys.modules using a PEP 302 import hook. I gave a lightning talk about Hy at PyCon, in case anyone's having flashbacks. You can see that talk on my blog (http://blog.pault.ag/post/46982895940/), or watch a full hour-long talk about Hy at Boston Python at http://www.youtube.com/watch?v=ulekCWvDFVI Right, so that means? ===================== You can do hilarious (hylarious?) things like write full Django projects[1] in Lisp, or interop with pymongo[2], or even use pdb to debug Lisp code[3]. Wait, are you serious? ====================== About it working? Yup! About making this lisp-variant production quality? Not really. It's just really funny, and helps teach people about how awesome Python is. Whatabout Macros? ================= Yep!(*) *: but you have to write them in Python for now (code plot'ed) :( Docs? ===== Yep! http://hy.rtfd.org/ - could use help! Hacks welcome! With lots of love, paultag Special thanks to the current contributors: * Thomas Mashek * Amrut Joshi * Christopher Allan Webber * Will Kahn-Greene * James King * Julien Danjou * Nicolas Dandrimont [1]: https://github.com/paultag/djlisp [2]: https://gist.github.com/paultag/5188459 [3]: http://blog.pault.ag/post/45232056896/hilariously-debuggable-lisp-hy -- .''`. Paul Tagliamonte : :' : Proud Debian Developer `. `'` 4096R / 8F04 9AD8 2C92 066C 7352 D28A 7B58 5B30 807C 2A87 `- http://people.debian.org/~paultag From albrecht.andi at gmail.com Sat Apr 6 11:06:28 2013 From: albrecht.andi at gmail.com (Andi Albrecht) Date: Sat, 06 Apr 2013 09:06:28 -0000 Subject: ANN: sqlparse 0.1.7 Message-ID: Hi, I'm pleased to announce sqlparse 0.1.7, a bug fix release. sqlparse is a non-validating SQL parser module. Download: https://pypi.python.org/packages/source/s/sqlparse/sqlparse-0.1.7.tar.gz Bug Fixes * Fix Python 3 compatibility of sqlformat script (by Piet Delport). * Fix parsing of SQL statements that contain binary data (by Alexey Malyshev). * Fix a bug where keywords were identified as aliased identifiers in invalid SQL statements. * Fix parsing of identifier lists where identifiers are keywords too (issue10). Enhancements * Top-level API functions now accept encoding keyword to parse statements in certain encodings more reliable (issue20). * Improve parsing speed when SQL contains CLOBs or BLOBs (issue86). * Improve formatting of ORDER BY clauses (issue89). * Formatter now tries to detect runaway indentations caused by parsing errors or invalid SQL statements. When re-indenting such statements the formatter flips back to column 0 before going crazy. Other * Documentation updates. What is sqlparse? ================= sqlparse is a non-validating SQL parser module for Python. The module provides functions for splitting, formatting and parsing SQL statements. Please file bug reports and feature request on the issue tracker. Project Page: https://github.com/andialbrecht/sqlparse Documentation: http://readthedocs.org/docs/sqlparse/en/latest/ Discussions: http://groups.google.com/group/sqlparse Issues/Bugs: https://github.com/andialbrecht/sqlparse/issues Online Demo: http://sqlformat.org Regards, Andi From georg at python.org Sat Apr 6 22:42:46 2013 From: georg at python.org (Georg Brandl) Date: Sat, 06 Apr 2013 20:42:46 -0000 Subject: [RELEASED] Python 3.2.4 and Python 3.3.1 Message-ID: <516088DF.5050303@python.org> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On behalf of the Python development team, I am pleased to announce the final releases of Python 3.2.4 and 3.3.1. Python 3.2.4 is the final regular maintenance release for the Python 3.2 series, while Python 3.3.1 is the first maintenance release for the 3.3 series. Both releases include hundreds of bugfixes. There has recently been a lot of discussion about XML-based denial of service attacks. Specifically, certain XML files can cause XML parsers, including ones in the Python stdlib, to consume gigabytes of RAM and swamp the CPU. These releases do not include any changes in Python XML code to address these issues. Interested parties should examine the defusedxml package on PyPI: https://pypi.python.org/pypi/defusedxml To download Python 3.2.4 or Python 3.3.1, visit: http://www.python.org/download/releases/3.2.4/ or http://www.python.org/download/releases/3.3.1/ respectively. As always, please report bugs to http://bugs.python.org/ Enjoy! - -- Georg Brandl, Release Manager georg at python.org (on behalf of the entire python-dev team and all contributors) -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (GNU/Linux) iEYEARECAAYFAlFgiN8ACgkQN9GcIYhpnLAXxQCdHAd2lECpYfmYM4Wbd3I01es4 898AoKBDvHtgecD/PeVRKUrdQRSWGPJg =K8RQ -----END PGP SIGNATURE----- From ralf.gommers at gmail.com Sun Apr 7 22:09:16 2013 From: ralf.gommers at gmail.com (Ralf Gommers) Date: Sun, 07 Apr 2013 20:09:16 -0000 Subject: ANN: SciPy 0.12.0 release Message-ID: We are pleased to announce the availability of SciPy 0.12.0. This release has some cool new features (see highlights below) and a large amount of bug fixes and maintenance work under the hood. The number of contributors also keeps rising steadily - 75 people contributed patches to this release. We hope to see this trend continue. Some of the highlights of this release are: - Completed QHull wrappers in scipy.spatial. - cKDTree now a drop-in replacement for KDTree. - A new global optimizer, basinhopping. - Support for Python 2 and Python 3 from the same code base (no more 2to3). This release requires Python 2.6, 2.7 or 3.1-3.3 and NumPy 1.5.1 or greater. Support for Python 2.4 and 2.5 has been dropped as of this release. Sources and binaries can be found at http://sourceforge.net/projects/scipy/files/scipy/0.12.0/, release notes are copied below. Enjoy, The SciPy developers ========================== SciPy 0.12.0 Release Notes ========================== SciPy 0.12.0 is the culmination of 7 months of hard work. It contains many new features, numerous bug-fixes, improved test coverage and better documentation. There have been a number of deprecations and API changes in this release, which are documented below. All users are encouraged to upgrade to this release, as there are a large number of bug-fixes and optimizations. Moreover, our development attention will now shift to bug-fix releases on the 0.12.x branch, and on adding new features on the master branch. Some of the highlights of this release are: - Completed QHull wrappers in scipy.spatial. - cKDTree now a drop-in replacement for KDTree. - A new global optimizer, basinhopping. - Support for Python 2 and Python 3 from the same code base (no more 2to3). This release requires Python 2.6, 2.7 or 3.1-3.3 and NumPy 1.5.1 or greater. Support for Python 2.4 and 2.5 has been dropped as of this release. New features ============ ``scipy.spatial`` improvements ------------------------------ cKDTree feature-complete ^^^^^^^^^^^^^^^^^^^^^^^^ Cython version of KDTree, cKDTree, is now feature-complete. Most operations (construction, query, query_ball_point, query_pairs, count_neighbors and sparse_distance_matrix) are between 200 and 1000 times faster in cKDTree than in KDTree. With very minor caveats, cKDTree has exactly the same interface as KDTree, and can be used as a drop-in replacement. Voronoi diagrams and convex hulls ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `scipy.spatial` now contains functionality for computing Voronoi diagrams and convex hulls using the Qhull library. (Delaunay triangulation was available since Scipy 0.9.0.) Delaunay improvements ^^^^^^^^^^^^^^^^^^^^^ It's now possible to pass in custom Qhull options in Delaunay triangulation. Coplanar points are now also recorded, if present. Incremental construction of Delaunay triangulations is now also possible. Spectral estimators (``scipy.signal``) -------------------------------------- The functions ``scipy.signal.periodogram`` and ``scipy.signal.welch`` were added, providing DFT-based spectral estimators. ``scipy.optimize`` improvements ------------------------------- Callback functions in L-BFGS-B and TNC ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ A callback mechanism was added to L-BFGS-B and TNC minimization solvers. Basin hopping global optimization (``scipy.optimize.basinhopping``) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ A new global optimization algorithm. Basinhopping is designed to efficiently find the global minimum of a smooth function. ``scipy.special`` improvements ------------------------------ Revised complex error functions ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The computation of special functions related to the error function now uses a new `Faddeeva library from MIT `__ which increases their numerical precision. The scaled and imaginary error functions ``erfcx`` and ``erfi`` were also added, and the Dawson integral ``dawsn`` can now be evaluated for a complex argument. Faster orthogonal polynomials ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Evaluation of orthogonal polynomials (the ``eval_*`` routines) in now faster in ``scipy.special``, and their ``out=`` argument functions properly. ``scipy.sparse.linalg`` features -------------------------------- - In ``scipy.sparse.linalg.spsolve``, the ``b`` argument can now be either a vector or a matrix. - ``scipy.sparse.linalg.inv`` was added. This uses ``spsolve`` to compute a sparse matrix inverse. - ``scipy.sparse.linalg.expm`` was added. This computes the exponential of a sparse matrix using a similar algorithm to the existing dense array implementation in ``scipy.linalg.expm``. Listing Matlab(R) file contents in ``scipy.io`` ----------------------------------------------- A new function ``whosmat`` is available in ``scipy.io`` for inspecting contents of MAT files without reading them to memory. Documented BLAS and LAPACK low-level interfaces (``scipy.linalg``) ------------------------------------------------------------------ The modules `scipy.linalg.blas` and `scipy.linalg.lapack` can be used to access low-level BLAS and LAPACK functions. Polynomial interpolation improvements (``scipy.interpolate``) ------------------------------------------------------------- The barycentric, Krogh, piecewise and pchip polynomial interpolators in ``scipy.interpolate`` accept now an ``axis`` argument. Deprecated features =================== `scipy.lib.lapack` ------------------ The module `scipy.lib.lapack` is deprecated. You can use `scipy.linalg.lapack` instead. The module `scipy.lib.blas` was deprecated earlier in Scipy 0.10.0. `fblas` and `cblas` ------------------- Accessing the modules `scipy.linalg.fblas`, `cblas`, `flapack`, `clapack` is deprecated. Instead, use the modules `scipy.linalg.lapack` and `scipy.linalg.blas`. Backwards incompatible changes ============================== Removal of ``scipy.io.save_as_module`` -------------------------------------- The function ``scipy.io.save_as_module`` was deprecated in Scipy 0.11.0, and is now removed. Its private support modules ``scipy.io.dumbdbm_patched`` and ``scipy.io.dumb_shelve`` are also removed. Other changes ============= Authors ======= * Anton Akhmerov + * Alexander Ebersp?cher + * Anne Archibald * Jisk Attema + * K.-Michael Aye + * bemasc + * Sebastian Berg + * Fran?ois Boulogne + * Matthew Brett * Lars Buitinck * Steven Byrnes + * Tim Cera + * Christian + * Keith Clawson + * David Cournapeau * Nathan Crock + * endolith * Bradley M. Froehle + * Matthew R Goodman * Christoph Gohlke * Ralf Gommers * Robert David Grant + * Yaroslav Halchenko * Charles Harris * Jonathan Helmus * Andreas Hilboll * Hugo + * Oleksandr Huziy * Jeroen Demeyer + * Johannes Sch?nberger + * Steven G. Johnson + * Chris Jordan-Squire * Jonathan Taylor + * Niklas Kroeger + * Jerome Kieffer + * kingson + * Josh Lawrence * Denis Laxalde * Alex Leach + * Tim Leslie * Richard Lindsley + * Lorenzo Luengo + * Stephen McQuay + * MinRK * Sturla Molden + * Eric Moore + * mszep + * Matt Newville + * Vlad Niculae * Travis Oliphant * David Parker + * Fabian Pedregosa * Josef Perktold * Zach Ploskey + * Alex Reinhart + * Gilles Rochefort + * Ciro Duran Santillli + * Jan Schlueter + * Jonathan Scholz + * Anthony Scopatz * Skipper Seabold * Fabrice Silva + * Scott Sinclair * Jacob Stevenson + * Sturla Molden + * Julian Taylor + * thorstenkranz + * John Travers + * True Price + * Nicky van Foreest * Jacob Vanderplas * Patrick Varilly * Daniel Velkov + * Pauli Virtanen * Stefan van der Walt * Warren Weckesser A total of 75 people contributed to this release. People with a "+" by their names contributed a patch for the first time. From info at egenix.com Tue Apr 9 10:25:28 2013 From: info at egenix.com (eGenix Team: M.-A. Lemburg) Date: Tue, 09 Apr 2013 08:25:28 -0000 Subject: ANN: eGenix mxODBC Connect - Python ODBC Database Interface 2.0.3 Message-ID: <5163D074.4030800@egenix.com> ________________________________________________________________________ ANNOUNCING eGenix.com mxODBC Connect Python ODBC Database Interface Version 2.0.3 mxODBC Connect is our commercially supported client-server product for connecting Python applications to relational databases in a truly platform independent way. This announcement is also available on our web-site for online reading: http://www.egenix.com/company/news/eGenix-mxODBC-Connect-2.0.3-GA.html ________________________________________________________________________ INTRODUCTION The mxODBC Connect Database Interface for Python allows users to easily connect Python applications to all major databases on the market today in a highly portable, convenient and secure way. Python Database Connectivity the Easy Way ----------------------------------------- Unlike our mxODBC Python extension, mxODBC Connect is designed as client-server application, so you no longer need to find production quality ODBC drivers for all the platforms you target with your Python application. Instead you use an easy to install royalty-free Python client library which connects directly to the mxODBC Connect database server over the network. This makes mxODBC Connect a great basis for writing cross-platform multi-tier database applications and utilities in Python, especially if you run applications that need to communicate with databases such as MS SQL Server and MS Access, Oracle Database, IBM DB2 and Informix, Sybase ASE and Sybase Anywhere, MySQL, PostgreSQL, SAP MaxDB and many more, that run on Windows or Linux machines. Ideal for Database Driven Client Applications --------------------------------------------- By removing the need to install and configure ODBC drivers on the client side and dealing with complicated network setups for each set of drivers, mxODBC Connect greatly simplifies deployment of database driven client applications, while at the same time making the network communication between client and database server more efficient and more secure. For more information, please have a look at the mxODBC Connect product page, in particular, the full list of available features. For more information, please see the product page: http://www.egenix.com/products/python/mxODBCConnect/ ________________________________________________________________________ NEWS The 2.0.3 release of mxODBC Connect includes the following enhancements and fixes: Security Enhancements --------------------- * Upgraded client and server to the most recent eGenix pyOpenSSL 0.13.1.1.0.1.5. Server Enhancements ------------------- * Updated the server to use mxODBC 3.2.2 for database connectivity. Client Enhancements ------------------- * Added support for the new .cursortype attribute in mxODBC 3.2.2 which is available on both connections and cursors to adjust the used ODBC cursor type. Performance Enhancements ------------------------ * MS SQL Server performance can now be much enhanced, and increased to levels beyond that of mxODBC Connect 2.0.2 and previous releases, by adjusting the default cursor type to forward-only cursors instead of static cursors: # Connect to the remote database from mx.ODBCConnect.Client import ServerSession session = ServerSession(...) ODBC = session.open() connection = ODBC.DriverConnect(...) # Use the faster forward-only cursors connection.cursortype = ODBC.SQL.CURSOR_FORWARD_ONLY # Cursors created on this connection will then default # to forward only cursors cursor = connection.cursor() * The performance increase compared to mxODBC Connect 2.0.2 is enormous: from 2-3x faster executes/fetches for average queries, up to 300x faster for simple cases. In mxODBC Connect 2.1, we will switch to using forward-only cursors per default for all database backends. * IBM DB2 can benefit from the same performance enhancements using forward-only cursors. The effect is a lot smaller compared to MS SQL Server, but still noticeable: up to 2x faster executes/fetches with forward-only cursors, compared to mxODBC Connect 2.0.2. * Added documentation to explain the different cursor types, compatibility with different database backends and effects on performance to the mxODBC documentation. New License Structure --------------------- Due to popular demand, we have added an unlimited connections server license, so now you can choose between: * the entry-level 20-connections server license, * an average use 50-connections server license. * and the unlimited connections server license for our high-end users. For the full set of changes, please check the mxODBC Connect change log. http://www.egenix.com/products/python/mxODBCConnect/changelog.html mxODBC Connect 2.0 Highlights ----------------------------- mxODBC Connect 2.0 was released on 2012-08-20. These are the most important highlights: * mxODBC Connect Server now uses mxODBC 3.2 internally and makes its API available in the mxODBC Connect Client. This is a major step forward from the mxODBC 3.0 version used in mxODBC Connect Server 1.0. * We've added native Windows x64 builds. * mxODBC Connect Client now integrates directly with gevent, allowing client applications to run asynchronous tasks while performing remote database queries. Please see the release announcement for full details: http://www.egenix.com/company/news/eGenix-mxODBC-Connect-2.0.0-GA.html ________________________________________________________________________ UPGRADING You are encouraged to upgrade to this latest mxODBC Connect release. When upgrading, please always upgrade both the server and the client installations to the same version - even for patch level releases. Customers who have purchased mxODBC Connect 2.0 licenses can continue to use their licenses with this patch level release. Customers who have purchased mxODBC Connect 1.x licenses can request 20% discount coupons for upgrade purchases. Please contact the eGenix.com Sales Team (sales at egenix.com) with your existing license serials for details. Users of our stand-alone mxODBC product will have to purchase new licenses from our online shop in order to use mxODBC Connect. You can request 30-day evaluation licenses by visiting our web-site or writing to sales at egenix.com, stating your name (or the name of the company) and the number of eval licenses that you need. http://www.egenix.com/products/python/mxODBCConnect/#Evaluation ________________________________________________________________________ DOWNLOADS The download archives as well as instructions for installation and configuration of the product can be found on the product page: http://www.egenix.com/products/python/mxODBCConnect/ If you want to try the package, jump straight to the download instructions: https://cms.egenix.com/products/python/mxODBCConnect/#Download Fully functional evaluation licenses for the mxODBC Connect Server are available free of charge: http://www.egenix.com/products/python/mxODBCConnect/#Evaluation mxODBC Connect Client is always free of charge. _______________________________________________________________________ SUPPORT Commercial support for this product is available from eGenix.com. Please see http://www.egenix.com/services/support/ for details about our support offerings. _______________________________________________________________________ INFORMATION About Python (http://www.python.org/): Python is an object-oriented Open Source programming language which runs on all modern platforms. By integrating ease-of-use, clarity in coding, enterprise application connectivity and rapid application design, Python establishes an ideal programming platform for today's IT challenges. About eGenix (http://www.egenix.com/): eGenix is a software project, consulting and product company focusing on expert project services and professional quality products for companies, Python users and developers. Enjoy, -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Apr 09 2013) >>> Python Projects, Consulting and Support ... http://www.egenix.com/ >>> mxODBC.Zope/Plone.Database.Adapter ... http://zope.egenix.com/ >>> mxODBC, mxDateTime, mxTextTools ... http://python.egenix.com/ ________________________________________________________________________ 2013-04-02: Released mxODBC Zope DA 2.1.1 ... http://egenix.com/go41 2013-04-10: Python Meeting Duesseldorf ... tomorrow ::::: Try our mxODBC.Connect Python Database Interface for free ! :::::: eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 http://www.egenix.com/company/contact/ From g.rodola at gmail.com Tue Apr 9 18:16:10 2013 From: g.rodola at gmail.com (=?ISO-8859-1?Q?Giampaolo_Rodol=E0?=) Date: Tue, 09 Apr 2013 16:16:10 -0000 Subject: ANN: pyftpdlib 1.1.0 released Message-ID: Hi there guys, I'm pleased to announce pyftpdlib 1.1.0. This is mainly a bugfix release, see: https://pyftpdlib.googlecode.com/svn/trunk/HISTORY === Links === Home: http://code.google.com/p/pyftpdlib/ Download: https://pyftpdlib.googlecode.com/files/pyftpdlib-1.1.0.tar.gz Tutorial: http://code.google.com/p/pyftpdlib/wiki/Tutorial Enjoy, Giampaolo From l.myerscough at chello.nl Thu Apr 11 16:29:19 2013 From: l.myerscough at chello.nl (Larry Myerscough) Date: Thu, 11 Apr 2013 14:29:19 -0000 Subject: ANN: phileas0.8 now available Message-ID: <5166C160.4000509@chello.nl> phileas = "Python/HTML integration: Larry's Elegant Alternative Solution" Source and documentation can be accessed at: http://larry.myerscough.nl/phileas_project/ N.B. This really is an alternative solution; the other available approaches to this subject don't work for me... ... but may work for you, so be sure also to check pypi.python.org to see the bigger picture! Larry Myerscough, aka paphippo From g.rodola at gmail.com Fri Apr 12 17:01:24 2013 From: g.rodola at gmail.com (=?ISO-8859-1?Q?Giampaolo_Rodol=E0?=) Date: Fri, 12 Apr 2013 15:01:24 -0000 Subject: ANN: psutil 0.7.0 released Message-ID: Hi there folks, I'm pleased to announce the 0.7.0 release of psutil: http://code.google.com/p/psutil/ This is mainly a bugfix release addressing a couple of high priority issues on Linux and FreeBSD. Complete list of bugfixes and enhancements is here: https://psutil.googlecode.com/hg/HISTORY === New features === - psutil.get_boot_time() - get/set process IO priority on Windows - psutil.cpu_times() on Linux now includes new 'steal', 'guest' and guest_nice' fields available on recent kernels - psutil.cpu_times_percent() which provides utilization percentages for each specific CPU time as is returned by cpu_times() - source code has been migrated from SVN to Mercurial === Compatitility notes === - Process cmdline and ppid properties are no longer cached after first access - psutil.error module is deprecated and scheduled for removal === Links === - Home: http://code.google.com/p/psutil - Sources: http://psutil.googlecode.com/files/psutil-0.7.0.tar.gz - Docs: http://code.google.com/p/psutil/wiki/Documentation Please try out this new release and let me know if you experience any problem by filing issues on the bug tracker. Thanks in advance. --- Giampaolo Rodola' http://code.google.com/p/pyftpdlib/ http://code.google.com/p/psutil/ http://code.google.com/p/pysendfile/ From paultag at debian.org Tue Apr 16 04:38:57 2013 From: paultag at debian.org (Paul Tagliamonte) Date: Tue, 16 Apr 2013 02:38:57 -0000 Subject: ANN: Hy - Python / Lisp interoperability layer (0.9.6) Message-ID: <20130416024732.GA3812@leliel> Hello, World! tl;dr ===== Version: 0.9.6 License: Expat (sometimes called MIT) Hilarious: Yes Site: http://hylang.org Hy is a wicked funny hack that lets you interop (in both directions) with Lisp from Python (or with Python from Lisp). It's pip installable: $ pip install hy [...] $ hy => (print (.join ", " ["Hello" "World"])) Hello, World (REPL even has cute readline bits mostly workingish, with a few known issues) What's new ========== There's a new release of hy (version 0.9.6) pushed to PyPi. It's hand-crafted with the utmost care from the AUTHORS[1] to help you (yes, you!) hack using Lisp without giving up your Python libs of choice (or even your Python libs giving up on you!) The source is on GitHub @ http://github.com/hylang/hy (star it, fork it, hack it) It's undergoing changes quite quickly - so, be careful! The API / language is being worked out very quickly. The two releases since the last post here (0.9.5 and 0.9.6) features the following select features (for a full list, check NEWS, this is seriously cut down) * Added all the missing math operators. * We now support float and complex numbers. * Keywords (such as :foo) are now valid and loved. * `try' now accepts `else' * Added "not" as the inline "not" operator. * `let' macro added * Added "~" as the "invert" operator. * Added the tail threading macro (->>) * UTF encoded symbols are allowed, but mangled. * If hoisting (for things like printing the return of an if statement) have been added. '(print (if true true true))' OK, what is it (technically) ============================ Hy is a set of hacks, implemented in Python, to lex and compile a Lisp variant (called `Hy', which looks very similar to Clojure in some ways) into Python AST, and transparently load it into sys.modules using a PEP 302 import hook. I gave a lightning talk about Hy at PyCon, in case anyone's having flashbacks. You can see that talk on my blog (http://blog.pault.ag/post/46982895940/), or watch a full hour-long talk about Hy at Boston Python at http://www.youtube.com/watch?v=ulekCWvDFVI Thanks! ======= Thanks, folks! Tweet about it, hack with it, hang out with us on #hy on freenode[2]. Fondly, and with just tons of love, [1]: * Paul Tagliamonte * Thomas Mashek * Amrut Joshi * Christopher Allan Webber * Will Kahn-Greene * James King * Julien Danjou * Nicolas Dandrimont * Gergely Nagy * Konrad Hinsen * Vladimir Gorbunov [2]: http://webchat.freenode.net/?channels=hy -- .''`. Paul Tagliamonte : :' : Proud Debian Developer `. `'` 4096R / 8F04 9AD8 2C92 066C 7352 D28A 7B58 5B30 807C 2A87 `- http://people.debian.org/~paultag From info at egenix.com Wed Apr 17 09:30:28 2013 From: info at egenix.com (eGenix Team: M.-A. Lemburg) Date: Wed, 17 Apr 2013 07:30:28 -0000 Subject: ANN: eGenix mx Base Distribution 3.2.6 (mxDateTime, mxTextTools, etc.) Message-ID: <516E4ECB.6090109@egenix.com> ________________________________________________________________________ ANNOUNCING eGenix.com mx Base Distribution mxDateTime, mxTextTools, mxProxy, mxURL, mxUID, mxBeeBase, mxStack, mxQueue, mxTools Version 3.2.6 Open Source Python extensions providing important and useful services for Python programmers. This announcement is also available on our web-site for online reading: http://www.egenix.com/company/news/eGenix-mx-Base-Distribution-3.2.6-GA.html ________________________________________________________________________ ABOUT The eGenix.com mx Base Distribution for Python is a collection of professional quality software tools which enhance Python's usability in many important areas such as fast text searching, date/time processing and high speed data types. The tools have a proven record of being portable across many Unix and Windows platforms. You can write applications which use the tools on Windows and then run them on Unix platforms without change due to the consistent platform independent interfaces. Contents of the distribution: * mxDateTime - Easy to use Date/Time Library for Python * mxTextTools - Fast Text Parsing and Processing Tools for Python * mxProxy - Object Access Control for Python * mxBeeBase - On-disk B+Tree Based Database Kit for Python * mxURL - Flexible URL Data-Type for Python * mxUID - Fast Universal Identifiers for Python * mxStack - Fast and Memory-Efficient Stack Type for Python * mxQueue - Fast and Memory-Efficient Queue Type for Python * mxTools - Fast Everyday Helpers for Python The package also include a number of helpful smaller modules in the mx.Misc subpackage, such as mx.Misc.ConfigFile for config file parsing or mx.Misc.CommandLine to quickly write command line applications in Python. All available packages have proven their stability and usefulness in many mission critical applications and various commercial settings all around the world. For more information, please see the distribution page: http://www.egenix.com/products/python/mxBase/ ________________________________________________________________________ NEWS The 3.2.6 release of the eGenix mx Base Distribution is the latest release of our open-source Python extensions. It includes these fixes and enhancements: Fixes ----- * mxURL: Added a work-around to resolve a segfault when exiting the Python 2.7.4 interpreter. This is a Python bug which was introduced in Python 2.7.4 and will get fixed again in Python 2.7.5 - see http://bugs.python.org/issue17703. Documentation Enhancements -------------------------- * mxURL: Added sections on URL join operations and interaction with strings to mxURL documentation. * mxDateTime: Added notice to documentation that .gmtoffset() can give wrong results during DST switching time. Compatibility Enhancements -------------------------- * Filled the tp_methods slot of all extension types to improve Python 2.7 compatibility. Distribution Enhancements ------------------------- * Added download URL registered with PyPI is now a static page and includes an MD5 hash tag to allow verification of the page. * All distribution files are GPG signed with our release key. We also provide MD5 and SHA1 hash values for all files to easily verify the downloads. eGenix mx Base Distribution 3.2.0 was release on 2012-08-28. Please see the eGenix mx Base Distribution 3.2.0 announcement for new features in the 3.2 major release: https://cms.egenix.com/company/news/eGenix-mx-Base-Distribution-3.2.0-GA.html For a full list of changes, please refer to the eGenix mx Base Distribution change log and the change logs of the various included Python packages. http://www.egenix.com/products/python/mxBase/changelog.html ________________________________________________________________________ UPGRADING We encourage all users to upgrade to this latest eGenix mx Base Distribution release. If you are upgrading from eGenix mx Base 3.1.x, please see the eGenix mx Base Distribution 3.2.0 release notes for details on what has changed since the 3.1 major release. http://www.egenix.com/company/news/eGenix-mx-Base-Distribution-3.2.0-GA.html For a full list of changes, please refer to the eGenix mx Base Distribution change log at http://www.egenix.com/products/python/mxBase/changelog.html and the change logs of the various included Python packages. ________________________________________________________________________ LICENSE The eGenix mx Base package is distributed under the eGenix.com Public License 1.1.0 which is an Open Source license similar to the Python license. You can use the packages in both commercial and non-commercial settings without fee or charge. The package comes with full source code ________________________________________________________________________ DOWNLOADS The download archives and instructions for installing the packages can be found on the eGenix mx Base Distribution page: http://www.egenix.com/products/python/mxBase/ As always, we are providing pre-built binaries for all common platforms: Windows 32/64-bit, Linux 32/64-bit, FreeBSD 32/64-bit, Mac OS X 32/64-bit. Source code archives are available for installation on all other Python platforms, such as Solaris, AIX, HP-UX, etc. To simplify installation in Zope/Plone and other egg-based systems, we have also precompiled egg distributions for all platforms. These are available on our own PyPI-style index server for easy and automatic download. Whether you are using a prebuilt package or the source distribution, installation is a simple "python setup.py install" command in all cases. The only difference is that the prebuilt packages do not require a compiler or the Python development packages to be installed. ________________________________________________________________________ SUPPORT Commercial support for this product is available from eGenix.com. Please see http://www.egenix.com/services/support/ for details about our support offerings. ________________________________________________________________________ MORE INFORMATION For more information on the eGenix mx Base Distribution, documentation and installation notes, please visit our web-site: http://www.egenix.com/products/python/mxBase/ About Python (http://www.python.org/): Python is an object-oriented Open Source programming language which runs on all modern platforms. By integrating ease-of-use, clarity in coding, enterprise application connectivity and rapid application design, Python establishes an ideal programming platform for today's IT challenges. About eGenix (http://www.egenix.com/): eGenix is a software project, consulting and product company focusing on expert project services and professional quality products for companies, Python users and developers. Enjoy, -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Apr 17 2013) >>> Python Projects, Consulting and Support ... http://www.egenix.com/ >>> mxODBC.Zope/Plone.Database.Adapter ... http://zope.egenix.com/ >>> mxODBC, mxDateTime, mxTextTools ... http://python.egenix.com/ ________________________________________________________________________ 2013-04-09: Released mxODBC.Connect 2.0.3 ... http://egenix.com/go42 ::::: Try our mxODBC.Connect Python Database Interface for free ! :::::: eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 http://www.egenix.com/company/contact/ From cbc at unc.edu Wed Apr 17 23:13:05 2013 From: cbc at unc.edu (Chris Calloway) Date: Wed, 17 Apr 2013 21:13:05 -0000 Subject: PyCamp Registration Open for Columbus, Toronto, and Oshkosh Message-ID: <516F1058.4080203@unc.edu> Registration is open for three upcoming PyCamps produced by the Triangle Python Users Group: - A five-day PyOhio PyCamp hosted by the Ohio State University Open Source Club, July 22-26, 2013 the week prior to the PyOhio regional Python conference weekend. PyCamp is a training program and sponsor of PyOhio: http://trizpug.org/boot-camp/pyohio13/ - A five-day Toronto PyCamp hosted by the University of Toronto Department of Physics, August 12-16, 2013 the week after the PyCon Canada national Python conference weekend. PyCamp is a Diversity Sponsor of PyCon CA: http://trizpug.org/boot-camp/torpy13/ - A three-day Wisconsin Mini-PyCamp hosted at the University of Wisconsin Oshkosh, June 2-4, 2013 as part of the Plone Symposium Midwest training days: http://trizpug.org/boot-camp/wiscpy13/ PyCamp is the original, ultra-low-cost Python Boot Camp created by a user group for user groups. For beginners, PyCamp makes you productive so you can get your work done quickly. PyCamp emphasizes the features which make Python a simpler and more efficient language. Following along with example Python PushUps speeds your learning process. Become a self-sufficient Python developer at PyCamp. PyCamps are conducted in state of the art high technology classrooms on university campuses. Registration will open soon also for two additional Triangle Python User Group boot camp events. An additional announcement will follow when registration opens for these events, but mark your calendars now: - A five-day Seattle PyCamp hosted by the University of Washington Department of Computer Science and Engineering and UW Marketing, September 9-13, 2013. PyCamp is a sponsor of the Seattle Plone Users Group. - A five-day special Python Web Programming boot camp hosted by the University of North Carolina Department of Marine Sciences, August 5-9, 2013. -- Sincerely, Chris Calloway http://nccoos.org/Members/cbc office: 3313 Venable Hall phone: (919) 599-3530 mail: Campus Box #3300, UNC-CH, Chapel Hill, NC 27599 From cdevienne at gmail.com Fri Apr 19 09:59:27 2013 From: cdevienne at gmail.com (Christophe de Vienne) Date: Fri, 19 Apr 2013 07:59:27 -0000 Subject: WSME 0.5b2 released Message-ID: <5170F953.8000008@gmail.com> About WSME ---------- Web Service Made Easy (WSME) simplify the writing of REST web services by providing simple yet powerful typing which removes the need to directly manipulate the request and the response objects. WSME can work standalone or on top of your favorite python web (micro)framework, so you can use both your preferred way of routing your REST requests and most of the features of WSME that rely on the typing system like: * Alternate protocols, including ones supporting batch-calls * Easy documentation through a Sphinx extension Main Changes ------------ * Changed the way datas of complex types are stored. In previous versions, an attribute was added to the type for each attribute, its name being the attribute name prefixed with '_'. Starting with this version, a single attribute _wsme_dataholder is added to the instance. The motivation behind this change is to avoid adding too many attributes to the object. * Add a special type 'HostRequest' that allow a function to ask for the host framework request object in its arguments. * Pecan adapter: Debug mode (which returns the exception tracebacks to the client) can be enabled by the pecan application configuration. * New adapter: wsmeext.flask, for the Flask framework. * Various bug fixes. Documentation ------------- http://pythonhosted.org/WSME/ Download -------- http://pypi.python.org/pypi/WSME/ Cheers, Christophe de Vienne From stefan_ml at behnel.de Fri Apr 19 18:27:07 2013 From: stefan_ml at behnel.de (Stefan Behnel) Date: Fri, 19 Apr 2013 16:27:07 -0000 Subject: New release 0.19 of the Cython compiler Message-ID: <5171705A.5070905@behnel.de> I'm happy to announce that Cython 0.19 has been released. This is a feature release of the Cython compiler that adds some major usability improvements especially for code that needs to run in both Py2 and Py3, as well as better Python compatibility and optimisations. http://cython.org/ You can get it from here: http://cython.org/release/Cython-0.19.tar.gz http://cython.org/release/Cython-0.19.zip Release notes: https://github.com/cython/cython/blob/29bf3493fdc80cb3261a9dfb9f73e3ccd46fec66/CHANGES.rst Documentation: http://docs.cython.org/ Major new features in this release: =========================== * New directives ``c_string_type`` and ``c_string_encoding`` to automatically convert between C strings and the different Python string types. * Keyword arguments are supported for cdef functions, including external C/C++ library functions. * New freelist decorator for extension types. * Fast extension type instantiation using the ``Type.__new__(Type)`` idiom has gained support for passing arguments. * Slicing was optimised for several builtin types and otherwise conforms better with Python semantics for user defined types. * The mapping of dict view/item methods in Python 3 was improved. What is Cython? =============== Cython is an optimising static compiler for both the Python programming language and the extended Cython programming language (based on Pyrex). It makes writing C extensions for Python as easy as Python itself. The Cython language is a superset of the Python language that additionally supports calling C functions and declaring C types on variables and class attributes. This allows the compiler to generate very efficient C code from Cython code. The C code is generated once and then compiles with all major C/C++ compilers in CPython 2.4 and later, including Python 3.x. All of this makes Cython the ideal language for wrapping external C libraries, embedding CPython into existing applications, and for fast C modules that speed up the execution of Python code. See the project home page for further information: http://cython.org/ Have fun, Stefan From josiah.carlson at gmail.com Mon Apr 22 06:51:50 2013 From: josiah.carlson at gmail.com (Josiah Carlson) Date: Sun, 21 Apr 2013 21:51:50 -0700 Subject: ANN: rom 0.10 - Redis object mapper for Python Message-ID: Hey everyone, I know, it's been several years since I announced anything on these lists, but I suspect that some of you may have uses for my new package, so here you go. The "rom" package is a Redis object mapper for Python. It sports an interface similar to Django's ORM, SQLAlchemy + Elixir, or Appengine's datastore. This is the initial release, so there may be some rough edges. I've included the basic intro for the package below. You can find the package at: https://www.github.com/josiahcarlson/rom https://pypi.python.org/pypi/rom Please CC me on any replies if you have any questions or comments. Thank you, - Josiah What's new? ========== Everything What ==== Rom is a package whose purpose is to offer active-record style data modeling within Redis from Python, similar to the semantics of Django ORM, SQLAlchemy + Elixir, Google's Appengine datastore, and others. Why === I was building a personal project, wanted to use Redis to store some of my data, but didn't want to hack it poorly. I looked at the existing Redis object mappers available in Python, but didn't like the features and functionality offered. What is available ================= Data types: * Strings, ints, floats, decimals * Json columns (for nested structures) * OneToMany and ManyToOne columns (for model references) Indexes: * Numeric range fetches, searches, and ordering * Full-word text search (find me entries with col X having words A and B) Other features: * Per-thread entity cache (to minimize round-trips, easy saving of all entities) From g.rodola at gmail.com Mon Apr 22 17:03:01 2013 From: g.rodola at gmail.com (Giampaolo Rodola') Date: Mon, 22 Apr 2013 17:03:01 +0200 Subject: ANN: pyftpdlib 1.2.0 released Message-ID: Hi there guys, I'm pleased to announce pyftpdlib 1.2.0. === About === Python FTP server library provides an high-level portable interface to easily write asynchronous FTP/S servers with Python. pyftpdlib is currently the most complete RFC-959 FTP server implementation available for Python programming language. This new release fixes a critical bug with threaded FTP server and also introduces 3 new features: - the address passed to FTPServer can be a socket object - FTPServer's new backlog argument (passed to socket.sliten()) - IO loop's fileno() method https://code.google.com/p/pyftpdlib/issues/list?can=1&q=milestone=1.2.0&colspec=ID%20Summary%20Type%20Status%20Priority%20Milestone%20Opened === Links === Home: http://code.google.com/p/pyftpdlib/ Download: https://pyftpdlib.googlecode.com/files/pyftpdlib-1.2.0.tar.gz Tutorial: http://code.google.com/p/pyftpdlib/wiki/Tutorial Enjoy, Giampaolo From cbc at unc.edu Tue Apr 23 23:34:56 2013 From: cbc at unc.edu (Chris Calloway) Date: Tue, 23 Apr 2013 17:34:56 -0400 Subject: Registration Open for PyCamp in Columbus, Toronto, and Oshkosh Message-ID: <5176FE80.3070405@unc.edu> Registration is open for three upcoming PyCamps produced by the Triangle Python Users Group: - A five-day PyOhio PyCamp hosted by the Ohio State University Open Source Club, July 22-26, 2013 the week prior to the PyOhio regional Python conference weekend. PyCamp is a sponsor and training program of PyOhio: http://trizpug.org/boot-camp/pyohio13/ - A five-day Toronto PyCamp hosted by the University of Toronto Department of Physics, August 12-16, 2013 the week after the PyCon Canada national Python conference weekend. PyCamp is a Diversity Sponsor of PyCon CA: http://trizpug.org/boot-camp/torpy13/ - A three-day Wisconsin Mini-PyCamp hosted at the University of Wisconsin Oshkosh, June 2-4, 2013 as part of the Plone Symposium Midwest training days: http://trizpug.org/boot-camp/wiscpy13/ PyCamp is the original, ultra-low-cost Python Boot Camp created by a user group for user groups. For beginners, PyCamp makes you productive so you can get your work done quickly. PyCamp emphasizes the features which make Python a simpler and more efficient language. Following along with example Python PushUps speeds your learning process. Become a self-sufficient Python developer at PyCamp. PyCamps are conducted in state of the art high technology classrooms on university campuses. Registration will open soon also for two additional Triangle Python User Group boot camp events. An additional announcement will follow when registration opens for these events, but mark your calendars now: - A five-day Seattle PyCamp hosted by the University of Washington Department of Computer Science and Engineering and UW Marketing, September 9-13, 2013. PyCamp is a sponsor of the Seattle Plone Users Group. - A five-day special Python Web Programming boot camp in Chapel Hill hosted by the University of North Carolina Department of Marine Sciences, August 5-9, 2013. -- Sincerely, Chris Calloway http://nccoos.org/Members/cbc office: 3313 Venable Hall phone: (919) 599-3530 mail: Campus Box #3300, UNC-CH, Chapel Hill, NC 27599 From dsuch at gefira.pl Mon Apr 29 19:12:54 2013 From: dsuch at gefira.pl (Dariusz Suchojad) Date: Mon, 29 Apr 2013 19:12:54 +0200 Subject: ANN: PyMQI 1.3 - Python interface to WebSphere MQ Message-ID: <517EAA16.1070609@gefira.pl> Hi, I'm very happy to announce the release of PyMQI 1.3. *INTRODUCTION* PyMQI allows users to connect Python applications to WebSphere MQ queue managers. It can be used to develop test harnesses for WebSphere MQ based systems, for rapid prototyping of WebSphere MQ applications, for development of administrative GUIs or for mainstream MQ application development. PyMQI has been used in production environments for 10+ years on Linux, Windows, Solaris and AIX with queue managers running on Linux, Windows, Solarix, AIX, HP-UX and z/OS mainframe. Supported WebSphere MQ versions are 5.0 onwards, including 7.5. *What's new* * Support for MQ 7.5 * The development effort has moved to GitHub https://github.com/dsuch/pymqi Special thanks to Alexander Fomichev and Umapathy Subburam for their support and patches! *Hello world with PyMQI* Here's an example showing how easy it is to connect to WebSphere MQ and put a message on a queue. import pymqi qmgr = pymqi.connect('QM01', 'SVRCONN.1', '192.168.1.121(1434)') q = pymqi.Queue(qmgr, 'TEST.QUEUE.1') q.put('Hello from Python') *Links* Project's homepage: https://github.com/dsuch/pymqi Documentation: https://pythonhosted.org/pymqi/ Download URL: https://pypi.python.org/pypi/pymqi Usage examples: https://pythonhosted.org/pymqi/examples.html Twitter: https://twitter.com/fourthrealm Blog: http://www.gefira.pl/blog LinkedIn: http://www.linkedin.com/groups?gid=3726448 IRC: #pymqi channel on Freenode network cheers, -- Dariusz Suchojad From info at egenix.com Tue Apr 30 10:41:24 2013 From: info at egenix.com (eGenix Team: M.-A. Lemburg) Date: Tue, 30 Apr 2013 10:41:24 +0200 Subject: ANN: eGenix PyRun - One file Python Runtime 1.2.0 Message-ID: <517F83B4.9090401@egenix.com> ________________________________________________________________________ ANNOUNCING eGenix PyRun - One file Python Runtime Version 1.2.0 An easy-to-use single file relocatable Python run-time - available for Windows, Mac OS X and Unix platforms This announcement is also available on our web-site for online reading: http://www.egenix.com/company/news/eGenix-PyRun-1.2.0.html ________________________________________________________________________ INTRODUCTION Our new eGenix PyRun combines a Python interpreter with an almost complete Python standard library into a single easy-to-use executable, that does not require a system wide installation and is fully relocatable. eGenix PyRun's executable only needs 11MB, but still supports most Python application and scripts - and it can be further compressed to just 3-4MB using upx. Compared to a regular Python installation of typically 100MB on disk, this makes eGenix PyRun ideal for applications and scripts that need to be distributed to many target machines, client installations or customers. It makes "installing" Python on a Unix based system as simple as copying a single file. We have been using the product internally in our mxODBC Connect Server since 2008 with great success and have now extracted it into a stand-alone open-source product. We provide both the source archive to build your own eGenix PyRun, as well as pre-compiled binaries for Linux, FreeBSD and Mac OS X, as 32- and 64-bit versions. Please see the product page for more details: http://www.egenix.com/products/python/PyRun/ ________________________________________________________________________ NEWS This is a new minor release of eGenix PyRun, which contains a few important fixes and enhancement based on the user feedback in recent months. New Features ------------ * Upgraded eGenix PyRun to work with and use Python 2.7.4 per default. * Changed the pyrun default to run in non-optimized mode and added the -O command line option to reenable it. Previous versions of eGenix PyRun used to default to optimized mode, which prevented running tests using e.g. assert with it. The stdlib itself is still frozen in optimized mode. * Added support for directly running Python directories and ZIP files with __main__ module. Only works with the Python 2.7 variant. * eGenix PyRun now honors symlinks, so symlinked copies of PyRun can be used to save disk space. The installations will still work as expected, i.e. independent of each other. * Added new pyrun_release config variable to the pyrun_config module. This allows checking the pyrun release version. * Added PyRun release version to the banner and -V output. * Added support for the Python -d command line option to pyrun. * Added a fix to allow PyRun to compile the sqlite module on Mac OS X 10.4. See http://bugs.python.org/issue17857 for details. * Much enhanced documentation, which now also explains the internals and highlights Python modules/packages that are not included in eGenix PyRun. Other Changes ------------- * Removed the compiler package from being compiled into PyRun. If needed, it can be installed separately. Note that the compiler package needs the parser module which is not compiled into PyRun either, but is still available as extension module. * Removed the Tkinter Python module from being compiled into PyRun. If needed, it can be installed separately. Note that the Tkinter module needs the _tkinter C module, which is not compiled into PyRun either, but is still available as extension module. * Fixed sys.argv when using interactive mode to default to ['']. * All eGenix PyRun distribution packages are now GPG signed with our release key and come with MD5 and SHA1 hashes to check for download corruption. install-pyrun Quick Installation Enhancements --------------------------------------------- Since version 1.1.0, eGenix PyRun includes a shell script called install-pyrun, which greatly simplifies installation of eGenix PyRun. It works much like the virtualenv shell script used for creating new virtual environments (except that there's nothing virtual about PyRun environments). https://downloads.egenix.com/python/install-pyrun With the script, an eGenix PyRun installation is as simple as running: ./install-pyrun targetdir We have enhanced this script somewhat since the last release and also added it to the source code distribution of eGenix PyRun: * Added new options --distribute-distribution and --pip-distribution to be able to use local distribution files for distribute and pip. * Added --debug option to enable debug output. * install-pyrun will now try uname -m in case uname -p doesn't return useful information about the platform. * install-pyrun will now use HTTPS connections for all tools (pyrun, distribute and pip). SSL certificate checking is enabled per default, but can be turned off using the new --disable-certificate-checks option. * Added automatic support for wget to install-pyrun. It is being used if curl is not found on the system. * Added new option --platform-list to print a list of available platform strings. Presentation at EuroPython 2012 ------------------------------- Marc-Andr? Lemburg, CEO of eGenix, gave a presentation about eGenix PyRun at EuroPython 2012 last year. The talk video as well as the slides are available on our website: http://www.egenix.com/library/presentations/EuroPython2012-eGenix-PyRun/ ________________________________________________________________________ LICENSE eGenix PyRun is distributed under the eGenix.com Public License 1.1.0 which is an Open Source license similar to the Python license. You can use eGenix PyRun in both commercial and non-commercial settings without fee or charge. Please see our license page for more details: http://www.egenix.com/products/python/PyRun/license.html The package comes with full source code. ________________________________________________________________________ DOWNLOADS The download archives and instructions for installing eGenix PyRun can be found at: http://www.egenix.com/products/python/PyRun/ As always, we are providing pre-built binaries for all common platforms: Windows 32/64-bit, Linux 32/64-bit, FreeBSD 32/64-bit, Mac OS X 32/64-bit. Source code archives are available for installation on other platforms, such as Solaris, AIX, HP-UX, etc. _______________________________________________________________________ SUPPORT Commercial support for this product is available from eGenix.com. Please see http://www.egenix.com/services/support/ for details about our support offerings. ________________________________________________________________________ MORE INFORMATION For more information about eGenix PyRun, licensing and download instructions, please visit our web-site: http://www.egenix.com/products/python/PyRun/ About Python (http://www.python.org/): Python is an object-oriented Open Source programming language which runs on all modern platforms. By integrating ease-of-use, clarity in coding, enterprise application connectivity and rapid application design, Python establishes an ideal programming platform for today's IT challenges. About eGenix (http://www.egenix.com/): eGenix is a software project, consulting and product company specializing in expert project services and professional quality products for companies, Python users and developers. Enjoy, -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Apr 30 2013) >>> Python Projects, Consulting and Support ... http://www.egenix.com/ >>> mxODBC.Zope/Plone.Database.Adapter ... http://zope.egenix.com/ >>> mxODBC, mxDateTime, mxTextTools ... http://python.egenix.com/ ________________________________________________________________________ 2013-04-17: Released eGenix mx Base 3.2.6 ... http://egenix.com/go43 ::::: Try our mxODBC.Connect Python Database Interface for free ! :::::: eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 http://www.egenix.com/company/contact/ From holger at merlinux.eu Tue Apr 30 16:39:15 2013 From: holger at merlinux.eu (holger krekel) Date: Tue, 30 Apr 2013 14:39:15 +0000 Subject: pytest-2.3.5: bug fixes and little improvements Message-ID: <20130430143915.GH5855@merlinux.eu> pytest-2.3.5: bug fixes and little improvements =========================================================================== pytest-2.3.5 is a maintenance release with many bug fixes and little improvements. See the changelog below for details. No backward compatibility issues are foreseen and all plugins which worked with the prior version are expected to work unmodified. Speaking of which, a few interesting new plugins saw the light last month: - pytest-instafail: show failure information while tests are running - pytest-qt: testing of GUI applications written with QT/Pyside - pytest-xprocess: managing external processes across test runs - pytest-random: randomize test ordering And several others like pytest-django saw maintenance releases. For a more complete list, check out https://pypi.python.org/pypi?%3Aaction=search&term=pytest&submit=search. For general information see: http://pytest.org/ To install or upgrade pytest: pip install -U pytest # or easy_install -U pytest Particular thanks to Floris, Ronny, Benjamin and the many bug reporters and fix providers. may the fixtures be with you, holger krekel Changes between 2.3.4 and 2.3.5 ----------------------------------- - never consider a fixture function for test function collection - allow re-running of test items / helps to fix pytest-reruntests plugin and also help to keep less fixture/resource references alive - put captured stdout/stderr into junitxml output even for passing tests (thanks Adam Goucher) - Issue 265 - integrate nose setup/teardown with setupstate so it doesnt try to teardown if it did not setup - issue 271 - dont write junitxml on slave nodes - Issue 274 - dont try to show full doctest example when doctest does not know the example location - issue 280 - disable assertion rewriting on buggy CPython 2.6.0 - inject "getfixture()" helper to retrieve fixtures from doctests, thanks Andreas Zeidler - issue 259 - when assertion rewriting, be consistent with the default source encoding of ASCII on Python 2 - issue 251 - report a skip instead of ignoring classes with init - issue250 unicode/str mixes in parametrization names and values now works - issue257, assertion-triggered compilation of source ending in a comment line doesn't blow up in python2.5 (fixed through py>=1.4.13.dev6) - fix --genscript option to generate standalone scripts that also work with python3.3 (importer ordering) - issue171 - in assertion rewriting, show the repr of some global variables - fix option help for "-k" - move long description of distribution into README.rst - improve docstring for metafunc.parametrize() - fix bug where using capsys with pytest.set_trace() in a test function would break when looking at capsys.readouterr() - allow to specify prefixes starting with "_" when customizing python_functions test discovery. (thanks Graham Horler) - improve PYTEST_DEBUG tracing output by puting extra data on a new lines with additional indent - ensure OutcomeExceptions like skip/fail have initialized exception attributes - issue 260 - don't use nose special setup on plain unittest cases - fix issue134 - print the collect errors that prevent running specified test items - fix issue266 - accept unicode in MarkEvaluator expressions From klappnase at web.de Tue Apr 30 19:17:42 2013 From: klappnase at web.de (klappnase) Date: Tue, 30 Apr 2013 10:17:42 -0700 (PDT) Subject: New TkinterDnd URL Message-ID: <9f038dd6-e5a0-4c28-9d23-21a4596ab333@googlegroups.com> The TkinterDnD Project has permanently moved to sourceforge and is now available at http://tkinterdnd.sourceforge.net/ . TkinterDnD is a python wrapper for George Petasis' tkDnD Tk extension. tkDnD adds native drag and drop support for windows and (yet partially) unix and Mac OSX to Tk. TkinterDnD makes this functionality available for Python/Tkinter. The Python wrapper modules for both the current tkdnd-2 series and the now outdated tkdnd-1 version can be downloaded at https://sourceforge.net/projects/tkinterdnd/files/ . From holger at merlinux.eu Tue Apr 30 23:48:10 2013 From: holger at merlinux.eu (holger krekel) Date: Tue, 30 Apr 2013 21:48:10 +0000 Subject: devpi-server: lightning fast pypi.python.org proxy (0.7 initial release) Message-ID: <20130430214810.GL5855@merlinux.eu> devpi-server: lightning-fast pypi.python.org proxy (0.7 initial) ================================================================= This is the initial release of devpi-server, an easy-to-use caching proxy server for pypi.python.org, providing fast and reliable installs when used by pip or easy_install. devpi-server offers features not found in other PyPI proxy servers: - transparent caching of pypi.python.org index and release files on first access, including indexes and files from 3rd party sites. - pip/easy_install/buildout are shielded from the typical client-side crawling, thus providing lightning-fast and reliable installation (on second access of a package). - ``devpi-server`` moreover automatically updates its main index cache using pypi's changelog protocol, making sure you'll always see an up-to-date view of what's available. devpi-server is designed to satisfy all needs arising from pip/easy_install installation operations and can thus act as the sole entry point for all package installation interactions. It will manage all outbound traffic for installing packages. Getting started ---------------------------- Simply install ``devpi-server`` via for example:: pip install devpi-server # or easy_install devpi-server Make sure you have the ``redis-server`` binary available and issue:: devpi-server after which a http server is running on ``localhost:3141`` and you can use the following index url with pip or easy_install:: pip install -i http://localhost:3141/ext/pypi/simple/ ... easy_install -i http://localhost:3141/ext/pypi/simple/ ... To avoid having to re-type the URL, you can configure pip by either setting the environment variable ``PIP_INDEX_URL`` to ``http://localhost:3141/ext/pypi/simple/`` or by putting an according entry in your ``$HOME/.pip/pip.conf`` (posix) or ``$HOME/pip/pip.conf`` (windows):: [global] index-url == http://localhost:3141/ext/pypi/simple/ Example timing ---------------- Here is a little screen session when using a fresh ``devpi-server`` instance, installing itself in a fresh virtualenv:: hpk at teta:~/p/devpi-server$ virtualenv devpi >/dev/null hpk at teta:~/p/devpi-server$ source devpi/bin/activate (devpi) hpk at teta:~/p/devpi-server$ time pip install -q \ -i http://localhost:3141/ext/pypi/simple/ devpi-server real 21.971s user 1.564s system 0.420s So that took 21 seconds. Now lets remove the virtualenv, recreate it and install a second time:: (devpi) hpk at teta:~/p/devpi-server$ rm -rf devpi (devpi) hpk at teta:~/p/devpi-server$ virtualenv devpi >/dev/null (devpi)hpk at teta:~/p/devpi-server$ time pip install -q -i http://localhost:3141/ext/pypi/simple/ devpi-server real 1.716s user 1.152s system 0.472s Ok, that was more than 10 times faster. The install of ``devpi-server`` (0.7) involves five packages btw: ``beautifulsoup4, bottle, py, redis, requests``. Compatibility -------------------- ``devpi-server`` works with python2.6 and python2.7 on both Linux and Windows environments. Windows support is somewhat experimental -- better don't run a company wide server with it. OSX is untested as of now but no issues are expected -- please report back how things work in reality. ``devpi-server`` requires ``redis-server`` with versions 2.4 or later. Earlier versions may or may not work (untested). Deployment notes ---------------------------- By default, devpi-server configures and starts its own redis instance. For this it needs to find a ``redis-server`` executable. On windows it will, in addition to the PATH variable, also check for ``c:\\program files\redis\redis-server.exe`` which is the default install location for the `windows redis fork installer `_. In a consolidated setting you might want to use the ``--redismode=manual`` and ``--redisport NUM`` options to rather control the setup of redis yourself. You might also want to use the ``--datadir`` option to specify where release files will be cached. Lastly, if you run ``devpi-server`` in a company network, you can for example proxy-serve the application through an nginx site configuration like this:: # sample nginx conf server { server_name your.server.name; listen 80; root /home/devpi/.devpi/httpfiles/; # arbitrary for now location / { proxy_pass http://localhost:3141; proxy_set_header X-Real-IP $remote_addr; } } command line options --------------------- A list of all devpi-server options:: $ devpi-server -h Usage: devpi-server [options] Options: -h, --help show this help message and exit main options: --version show devpi_version (0.7) --datadir=DIR data directory for devpi-server [~/.devpi/serverdata] --port=PORT port to listen for http requests [3141] --redisport=PORT redis server port number [3142] --redismode=auto|manual whether to start redis as a sub process [auto] --bottleserver=TYPE bottle server class, you may try eventlet or others [wsgiref] --debug run wsgi application with debug logging pypi upstream options: --pypiurl=url base url of remote pypi server [https://pypi.python.org/] --refresh=SECS periodically pull changes from pypi.python.org [60] Project status and next steps ----------------------------- ``devpi-server`` is considered beta because it's just an initial release. It is is tested through tox and has all of its automated pytest suite passing for python2.7 and python2.6 on Ubuntu 12.04 and Windows 7. ``devpi-server`` is actively developed and is bound to see more releases in 2013, in particular for supporting private indexes and a new development and testing workflow system. You are very welcome to join, discuss and contribute: * mailing list: https://groups.google.com/d/forum/devpi-dev * repository: http://bitbucket.org/hpk42/devpi-server * issues: http://bitbucket.org/hpk42/devpi-server/issues * irc: for now on #pylib on irc.freenode.net. * pypi home page: https://pypi.python.org/pypi/devpi-server From benjamin at python.org Sat Apr 6 22:04:38 2013 From: benjamin at python.org (Benjamin Peterson) Date: Sat, 06 Apr 2013 20:04:38 -0000 Subject: [RELEASE] Python 2.7.4 Message-ID: I'm thrilled to announce the release of Python 2.7.4. 2.7.4 is the latest maintenance release in the Python 2.7 series. It includes hundreds of bugfixes to the core language and standard library. Downloads are at http://python.org/download/releases/2.7.4/ As always, please report bugs to http://bugs.python.org/ Several regressions found in the release candidate have been fixed. Many thanks to those who tested the preview release. There has recently been a lot of discussion about XML-based denial of service attacks. Specifically, certain XML files can cause XML parsers, including ones in the Python stdlib, to consume gigabytes of RAM and swamp the CPU. 2.7.4 does not include any changes in Python XML code to address these issues. Interested parties should examine the defusedxml package on PyPI: https://pypi.python.org/pypi/defusedxml This is a production release. Best wishes, Benjamin Peterson 2.7 Release Manager (on behalf of all of Python 2.7's contributors) From markflorisson88 at gmail.com Tue Apr 16 14:09:29 2013 From: markflorisson88 at gmail.com (mark florisson) Date: Tue, 16 Apr 2013 12:09:29 -0000 Subject: numba 0.8 Message-ID: Numba 0.8 adds support for autojit classes and methods, building on the perfect hash table ideas from SEP 201 [1]. This allows methods to automatically specialize to argument types and instance attribute types. Many thanks to Dag Sverre Seljebotn for his work and ideas on the SEPs and his ideas and implementation of the hash table and surrounding facilities, and many thanks to Robert Bradshaw for his contributions and ideas. Further functionality includes Python 3 support for pycc, and retrieving pointers from numba jit functions. A memory leak that plagued users has also been fixed. Many thanks for all the bug reports and feedback! Over the coming months we hope to stabilize numba and allow distribution of portable numba code and a well-defined and stable runtime. We also hope to address some of the math portability and numerical stability issues. We have a roadmap [2] which details what we want to do, and also provides entry points for new potential developers to contribute. Stay tuned as we try to make numba more robust, portable, interoperable and usable :) Download ======== http://numba.pydata.org/download.html Website ======= http://numba.pydata.org/ Documentation ============ http://numba.pydata.org/numba-doc/0.8/index.html Numba ====== Numba is an just-in-time specializing compiler which compiles annotated Python and NumPy code to LLVM (through decorators). Its goal is to seamlessly integrate with the Python scientific software stack and produce optimized native code, as well as integrate with native foreign languages. References ========= [1]: https://github.com/numfocus/sep/blob/master/sep201.rst [2]: http://numba.pydata.org/numba-doc/dev/roadmap.html From whykay at python.ie Thu Apr 25 13:42:55 2013 From: whykay at python.ie (Vicky Lee - Python Ireland) Date: Thu, 25 Apr 2013 12:42:55 +0100 Subject: [ANN] PyCon Ireland 2013 Early Bird Tickets on sale Message-ID: Hi All, ================================================================== CONFERENCE: Sat 12th - Sun 13th October at Burlington Hotel, Dublin SPRINTS: Mon 14th - Tue 15th October at College of Computer Training (CCT), Dublin ================================================================== PyCon Ireland 2013 Early Bird tickets, Corporate and Student tickets can be purchased via http://python.ie/pycon/2013/ If you are interested in sprints, you have to register separately, scroll down a little bit more to register. :-) Call for Sponsors is still open: http://bit.ly/sponsorpyconie Call for Speakers: http://bit.ly/speakerpyconie Any questions, email pycon at python.ie. Cheers, /// Vicky (PyCon Ireland co-Chair) Python Ireland co-Chair / Treasurer EuroPython Board PSF member From mmueller at python-academy.de Wed Apr 17 03:00:01 2013 From: mmueller at python-academy.de (=?ISO-8859-15?Q?Mike_M=FCller?=) Date: Wed, 17 Apr 2013 01:00:01 -0000 Subject: Course: Advanced Python in Katowice, Poland, May 30 - June 1, 2013 Message-ID: <516DF40C.5040108@python-academy.de> Advanced Python in Katowice =========================== Date: May 30 - June 1, 2013 Location: Katowice, Poland Language: English Link: http://www.python-academy.com/courses/specialtopics/python_course_advanced.html Instructor: Mike M?ller (eight years of Python training experience) Dive deep into Python. Would you like to learn how decorators work and what descriptors do? Metaclasses don't have to be scary and generators and coroutines can be fun to work with. Context managers can help to improve your code as well as pythonic patterns and best practices. Python has many things to offer that might need a bit more of explanation. Join us for three days of total immersion into a great programming language. Be sure to bring your questions along. Not enough Python experience for an advanced course? Just attend our training "Python for Programmers" at the same location right before (May 27 - 29, 2013) to learn the basics too. http://www.python-academy.com/courses/python_course_programmers.html --- Our next courses: 14.04.-17.04.2013 (Leipzig) Python f?r Nicht-Programmierer (German) 15.04.-17.04.2013 (Leipzig) Python f?r Programmierer (German) 18.04.-20.04.2013 (Leipzig) Python f?r Wissenschaftler und Ingenieure (German) 27.05.-29.05.2013 (Katowice, Poland) Python for Programmers (English) 30.05.-01.06.2013 (Katowice, Poland) Advanced Python Course (English) 03.06.-05.06.2013 (Leipzig) Einstieg in Django (German) 06.06.-08.06.2013 (Leipzig) Django f?r Fortgeschrittene (German) 10.06.-12.06.2013 (Leipzig) Python for Scientists and Engineers (English) 13.06.2013 (Leipzig) Fast Code with the Cython Compiler (English) 14.06.2013 (Leipzig) Fast NumPy Processing with Cython (English) 24.06.-26.06.2013 (Leipzig) Professional Testing with pytest and tox (English) 02.07.2013 (Florence, Italy) Optimization at EuroPython (English) 06.07.-07.07.2013 (Florence, Italy) Advanced Python at EuroPython (English) 09.09.-11.09.2013 (Leipzig) Twisted Training (English) 11.09.-13.09.2013 (Bologna, Italy) Python per programmatori (Italian) 12.09.-13.09.2013 (Leipzig) Content-Management mit Plone (German) 04.11.-06.11.2013 (Leipzig) Introduction to Django (English) 07.11.-09.11.2013 (Leipzig) Advanced Django (English) More information at http://www.python-academy.com -- Dr.-Ing. Mike M?ller, M.Sc. - Gesch?ftsf?hrer (CEO) - Python Academy GmbH & Co. KG Zur Schule 20 04158 Leipzig Germany Sitz (Registered Office): Leipzig Amtsgericht (Registration Court): Leipzig HRA (Commercial Register No.): 16004 Pers?nlich haftende Gesellschafterin (Personally Liable Partner): py solutions GmbH Sitz (Registered Office): Leipzig Amtsgericht (Registration Court): Leipzig HRB (Commercial Register No.): 25781 Gesch?ftsf?hrer (Managing Director): Dr. Mike M?ller Tel: +49 341 260 3370 Fax: +49 341 520 4495 E-Mail: mmueller at python-academy.de WWW: http://www.python-academy.com From mmueller at python-academy.de Wed Apr 17 03:09:29 2013 From: mmueller at python-academy.de (=?ISO-8859-15?Q?Mike_M=FCller?=) Date: Wed, 17 Apr 2013 01:09:29 -0000 Subject: Course: Python for Programmers in Katowice, Poland, May 27 - 29, 2013 Message-ID: <516DF39E.2010604@python-academy.de> Python for Programmers in Katowice ================================== Date: May 27 - 29, 2013 Location: Katowice, Poland Language: English Link: http://www.python-academy.com/courses/python_course_programmers.html Instructor: Mike M?ller (eight years of Python training experience) Three days of Python training for participants with programming experience in other languages. Learn all you need to know about Python to write pythonic programs that take advantage of Python's best features. Want to learn more? Just add another three days of our "Advanced Python" class at the same location (May 30 - June 1, 2013). http://www.python-academy.com/courses/specialtopics/python_course_advanced.html --- Our next courses: 14.04.-17.04.2013 (Leipzig) Python f?r Nicht-Programmierer (German) 15.04.-17.04.2013 (Leipzig) Python f?r Programmierer (German) 18.04.-20.04.2013 (Leipzig) Python f?r Wissenschaftler und Ingenieure (German) 27.05.-29.05.2013 (Katowice, Poland) Python for Programmers (English) 30.05.-01.06.2013 (Katowice, Poland) Advanced Python Course (English) 03.06.-05.06.2013 (Leipzig) Einstieg in Django (German) 06.06.-08.06.2013 (Leipzig) Django f?r Fortgeschrittene (German) 10.06.-12.06.2013 (Leipzig) Python for Scientists and Engineers (English) 13.06.2013 (Leipzig) Fast Code with the Cython Compiler (English) 14.06.2013 (Leipzig) Fast NumPy Processing with Cython (English) 24.06.-26.06.2013 (Leipzig) Professional Testing with pytest and tox (English) 02.07.2013 (Florence, Italy) Optimization at EuroPython (English) 06.07.-07.07.2013 (Florence, Italy) Advanced Python at EuroPython (English) 09.09.-11.09.2013 (Leipzig) Twisted Training (English) 11.09.-13.09.2013 (Bologna, Italy) Python per programmatori (Italian) 12.09.-13.09.2013 (Leipzig) Content-Management mit Plone (German) 04.11.-06.11.2013 (Leipzig) Introduction to Django (English) 07.11.-09.11.2013 (Leipzig) Advanced Django (English) More information at http://www.python-academy.com -- Dr.-Ing. Mike M?ller, M.Sc. - Gesch?ftsf?hrer (CEO) - Python Academy GmbH & Co. KG Zur Schule 20 04158 Leipzig Germany Sitz (Registered Office): Leipzig Amtsgericht (Registration Court): Leipzig HRA (Commercial Register No.): 16004 Pers?nlich haftende Gesellschafterin (Personally Liable Partner): py solutions GmbH Sitz (Registered Office): Leipzig Amtsgericht (Registration Court): Leipzig HRB (Commercial Register No.): 25781 Gesch?ftsf?hrer (Managing Director): Dr. Mike M?ller Tel: +49 341 260 3370 Fax: +49 341 520 4495 E-Mail: mmueller at python-academy.de WWW: http://www.python-academy.com From sn at sncs.se Thu Apr 25 17:09:55 2013 From: sn at sncs.se (sverker nilsson) Date: Thu, 25 Apr 2013 17:09:55 +0200 (CEST) Subject: Guppy-PE/Heapy 0.1.10 Message-ID: <881148509.678625.1366902595790.JavaMail.open-xchange@webmail.surftown.com> I am happy to announce Guppy-PE 0.1.10 Guppy-PE is a library and programming environment for Python, currently providing in particular the Heapy subsystem, which supports object and heap memory sizing, profiling and debugging. It also includes a prototypical specification language, the Guppy Specification Language (GSL), which can be used to formally specify aspects of Python programs and generate tests and documentation from a common source. The main news in this release: o Support for Python 2.7 However, there are still some problems with the tests that I haven't been able to sort out. o Some minor bug fixes License: MIT Guppy-PE 0.1.10 is available in source tarball format on the Python Package Index (a.k.a. Cheeseshop): http://pypi.python.org/pypi/guppy/0.1.10 The project homepage is on Sourceforge: http://guppy-pe.sourceforge.net Enjoy, Sverker Nilsson From vasudevram at gmail.com Mon Apr 15 00:22:20 2013 From: vasudevram at gmail.com (vasudevram) Date: Sun, 14 Apr 2013 22:22:20 -0000 Subject: ANN: Using xtopdf and pypyodbc to publish MS Access database data to PDF Message-ID: Wrote a program that lets you publish your MS Access database data to PDF, using Python, ReportLab, xtopdf and pypyodbc. (This code will go into my xtopdf toolkit (a Python toolkit for PDF creation) after cleanup, in a while.) Link: http://jugad2.blogspot.in/2013/04/using-xtopdf-and-pypyodbc-to-publish-ms.html Note: Saw some comments about my blog post on the Python Reddit, which made me realize that I had not explained that similar code can be used to publish data from any ODBC database (for which you have an ODBC driver, and which is supported by pypyodbc), to PDF. All you have to do is change the connection string in the code, and maybe a few other small tweaks for differences between SQL dialects of different RDBMS's. Enjoy. - Vasudev Ram www.dancingbison.com jugad2.blogspot.com bitbucket.org/vasudevram/xtopdf From prabhu at enthought.com Mon Apr 15 20:06:02 2013 From: prabhu at enthought.com (Prabhu Ramachandran) Date: Mon, 15 Apr 2013 18:06:02 -0000 Subject: [ANN] Enthought Tool Suite (ETS) v 4.3 Message-ID: Hello, We are happy to announce the release of version 4.3 of the Enthought Tool Suite (ETS-4.3.0). ETS (http://code.enthought.com/projects) is a collection of free, open-source components developed by Enthought and our partners, which we use every day to construct custom scientific applications. ETS includes a wide variety of components, including: - an extensible application framework - application building blocks - 2-D and 3-D graphics libraries - scientific and math libraries - developer tools This release features some important improvements: - NEW: Casuarius (Cython binding for Cassowary) supports constraints-based layout in Enaml, and soon in Enable. Cassowary is an incremental constraint-solving toolkit, which efficiently solves systems of linear equalities and inequalities. - Mayavi now fully supports the Qt backend. The Volume module is now usable with the Qt backend. This also means that Mayavi can be used on Mac OS X 64-bit using the Qt backend. - Chaco has added space-saving horizon plots, and improvements to many plots and tools. - Pyface has added and improved many UI components. - Enaml 0.6 has made extensive API changes and performance enhancements, and added many features, including new and improved widgets, embedded matplotlib and traitsui, and enhanced layout flow. However it is still under heavy development, and its API will continue to change in backward-incompatible ways. Use at your own risk. - Bug fixes to all packages. - Improvements to documentation and examples. The recommended way to get the ETS packages is to use Enthought Canopy (formerly EPD). They are also available on PyPI, and the source code is on github. cheers, ETS Developers. From tw55413 at gmail.com Fri Apr 12 13:43:41 2013 From: tw55413 at gmail.com (erikj) Date: Fri, 12 Apr 2013 11:43:41 -0000 Subject: Camelot 13.04.13 released Message-ID: <519f5c2d-26a0-4a22-81a6-766bd77405ce@s9g2000vba.googlegroups.com> Hello, Camelot 13.04.13 has been released. Camelot provides components to build business applications on top Python, SQLAlchemy and Qt. For screenshots, see : http://www.python-camelot.com/ An overview of the changes can be found here : http://www.python-camelot.com/3/post/2013/04/release-130413.html Cheers, Erik From john at picloud.com Fri Apr 12 02:25:33 2013 From: john at picloud.com (John Riley) Date: Fri, 12 Apr 2013 00:25:33 -0000 Subject: ANN Queues: Distributed, Fault-Tolerant Message Processing by PiCloud Message-ID: PiCloud's (http://www.picloud.com) latest feature gives Python users a distributed, fault-tolerant message queue with a scalable message processing system. We ensure that you never lose any messages, and that they're processed at the speed you need--even thousands of messages per second. More information: Blog Post: http://blog.picloud.com/2013/04/03/introducing-queues-creating-a-pipeline-in-the-cloud/ Documentation: http://docs.picloud.com/queue.html What's it for? Queues let you decouple discrete components of your application, and simplify communication between them as the pushing and popping of messages. Queues are perfect for integrating PiCloud into a web application backend, or any realtime, high-throughput system. If your workloads have been too short (< 1s) to use our job system effectively, or you've found difficulty creating a multi-stage pipeline with jobs, then you'll want to give queues a try! You'll need the latest cloud library v2.7.7 to use the feature. Best Regards, John