From phil at riverbankcomputing.com Mon Nov 1 11:49:57 2010 From: phil at riverbankcomputing.com (Phil Thompson) Date: Mon, 01 Nov 2010 10:49:57 +0000 Subject: ANN: PyQt v4.8.1 Released Message-ID: PyQt v4.8.1 has been released and is available from http://www.riverbankcomputing.com/software/pyqt/. PyQt is a comprehensive set of bindings for the Qt application and UI framework from Nokia. It supports the same platforms as Qt (Windows, Linux and MacOS/X). PyQt supports Python v3 and Python v2.3 and later. The highlight of this release is full support for Qt v4.7.0 including the ability to integrate Python with QML, the new declarative markup language for building highly dynamic user interfaces. Windows installers are provided for the GPL version of PyQt which contains everything needed for PyQt development (including Qt, Qt Designer, QScintilla, and MySQL, PostgreSQL, SQLite and ODBC drivers) except Python itself. PyQt v4 is implemented as a set of 19 extension modules containing over 400 classes and over 6,000 functions and methods. QtCore The non-GUI infrastructure including event loops, threads, i18n, Unicode, signals and slots, user and application settings, mapped files and shared memory. QtDeclarative A set of classes that implement a framework for building highly dynamic user interfaces using the QML declarative language that can be integrated with Python. QtDesigner A set of classes that allow the Qt Designer GUI design tool to be extended with PyQt. QtGui A rich collection of GUI widgets. QtHelp A set of classes for creating and viewing searchable documentation and being able to integrate online help with PyQt applications. It includes the C++ port of the Lucene text search engine. QtNetwork A set of classes to support TCP and UDP socket programming and higher level protocols (eg. HTTP, SSL). QtOpenGL A set of classes that allows PyOpenGL to render onto Qt widgets. QtScript A set of classes that implements a JavaScript interpreter. Python objects may be exposed in the interpreter as JavaScript objects. QtScriptTools A debugger for the JavaScript interpreter. QtSql A set of classes that implement SQL data models and interfaces to industry standard databases. The Windows installers include support for SQLite, MySQL, PostgreSQL and ODBC. QtSvg A set of classes to render SVG files onto Qt widgets. QtTest A set of classes to automate unit testing of PyQt applications and GUIs. QtWebKit This implements a web browser engine based on the WebKit engine used by Apple's Safari browser. It allows the methods and properties of Python objects to be published and appear as JavaScript objects to scripts embedded in HTML pages. QtXML A set of classes that implement DOM and SAX parsers. QtXMLPatterns A set of classes that implement XQuery and XPath support for XML and custom data models. QAxContainer A set of classes for Windows that allows the integration of ActiveX controls and COM objects. phonon A cross-platform multimedia framework that enables the use of audio and video content in PyQt applications. DirectX is used as the Windows backend, QuickTime as the MacOS/X backend, and GStreamer as the Linux backend. QtMultimedia A set of classes that provide low-level multimedia functions. Application developers would normally use the phonon module. DBus PyQt includes dbus.mainloop.qt that allows the Qt event loop to be used with the standard DBus Python bindings. PyQt includes the pyuic4 utility which generates Python code to implement user interfaces created with Qt Designer in the same way that the uic utility generates C++ code. It is also able to load Designer XML files dynamically. PyQt is available under the GPL and a commercial license. Unlike Qt, PyQt is not available under the LGPL. The commercial PyQt license allows GPL applications to be relicensed at any time. From luis at luispedro.org Mon Nov 1 17:52:32 2010 From: luis at luispedro.org (Luis Pedro Coelho) Date: Mon, 1 Nov 2010 12:52:32 -0400 Subject: ANN: Milk 0.3.4 Message-ID: <201011011252.33322.luis@luispedro.org> Milk is a machine learning toolkit in Python. It's focus is on supervised classification with several classifiers available: SVMs (based on libsvm), k-NN, random forests, decision trees. It also performs feature selection. These classifiers can be combined in many ways to form different classification systems. For unsupervised learning, milk supports k-means clustering and affinity propagation. New in Version 0.3.4: * Random forest learners were added. * Decision trees were sped up by 20 times. * Gridsearch is much faster since it finds an optimum without computing all folds. Homepage: http://luispedro.org/software/milk API Docs: http://packages.python.org/milk/ Github: http://github.com/luispedro/milk Freshmeat: http://freshmeat.net/projects/milk -- Luis Pedro Coelho http://luispedro.org From ischnell at enthought.com Tue Nov 2 05:28:30 2010 From: ischnell at enthought.com (Ilan Schnell) Date: Mon, 1 Nov 2010 23:28:30 -0500 Subject: EPD 6.3 release Message-ID: Hello, I am pleased to announce that EPD (Enthought Python Distribution) version 6.3 has been released. Apart from the usual updates and bug fixes, many projects have been added into this EPD version including: numexpr (linked against the MKL's Vector Math Library), SimPy, h5py and pyzmq. Please find the complete list of additions, updates and bug fixes in the change log: http://www.enthought.com/EPDChangelog.html In addition, we now also provide a Python Package Index (PyPI) mirror for our customers which allows installing compiled PyPI packages using the native EPD install tool. To find more information about EPD, as well as download a 30 day free trial, visit this page: http://www.enthought.com/products/epd.php About EPD --------- The Enthought Python Distribution (EPD) is a "kitchen-sink-included" distribution of the Python Programming Language, including over 90 additional tools and libraries. The EPD bundle includes NumPy, SciPy, IPython, 2D and 3D visualization, and many other tools. http://www.enthought.com/products/epdlibraries.php It is currently available as a single-click installer for Windows XP, Vista and 7, MacOS (10.5 and 10.6), RedHat 3, 4 and 5, as well as Solaris 10 (x86 and x86_64/amd64 on all platforms). The 32-bit EPD is free for academic use. An annual subscription including installation support is available for individual and commercial use. Additional support options, including customization, bug fixes and training classes are also available: http://www.enthought.com/products/support_level_table.php - Ilan From runar.tenfjord at gmail.com Wed Nov 3 12:34:32 2010 From: runar.tenfjord at gmail.com (Runar Tenfjord) Date: Wed, 3 Nov 2010 12:34:32 +0100 Subject: ANN : svgplotlib 0.1 Message-ID: **svgplotlib**?is a lightweight python package for creating?SVG?graphs and charts. The TEX package and freetype extension have been ported from matplotlib. Compared to matplotlib the dependency om numpy have been removed. Homepage : http://code.google.com/p/svgplotlib/ Download : http://pypi.python.org/pypi/svgplotlib/ **Highlights** * General SVG support * Support a subset of TEX syntax similar to matplotlib. * Inlines font glyps in SVG file for consistent results. * Pie chart * Bar chart * Gantt chart * XY plot * date plot

svgplotlib 0.1svgplotlib?is a lightweight python package for creating?SVG graphs and charts. (03-Nov-10) From runar.tenfjord at gmail.com Wed Nov 3 12:27:40 2010 From: runar.tenfjord at gmail.com (runar.tenfjord at gmail.com) Date: Wed, 03 Nov 2010 11:27:40 +0000 Subject: ANN: svg2rlg Message-ID: <0015174be68c4c57a704942454a0@google.com> svg2rlg is a python tool to convert SVG files to reportlab graphics. The tool can be used as a console application to convert SVG to PDF files. Homepage: http://code.google.com/p/svg2rlg/ Download : http://pypi.python.org/pypi/svg2rlg/ Known problems ( AKA todo list): * Missing support for elliptical arcs in paths. It is belived to be possible to convert arcs to quadratic beziers. * Text handling is limited. * Style sheets not supported. Note that some limitations are due to limitation in the reportlab graphics package: * No gradients * No text on path * No filling rules (only odd-even) A wxpython tool is included in the distribution which does a side by side comparison to the SVG test suite. Presently most of the official SVG 1.1 test suite is prefect.

svg2rlg 0.3 svg2rlg is a python tool to convert SVG files to reportlab graphics (03-Nov-10) From Pierre.RAYBAUT at CEA.FR Wed Nov 3 15:46:52 2010 From: Pierre.RAYBAUT at CEA.FR (Pierre.RAYBAUT at CEA.FR) Date: Wed, 3 Nov 2010 15:46:52 +0100 Subject: [ANN] guidata v1.2.2 Message-ID: Hi all, I am pleased to announce that `guidata` v1.2.2 has been released. This is mostly a bug fix release. Based on the Qt Python binding module PyQt4, guidata is a Python library generating graphical user interfaces for easy dataset editing and display. It also provides helpers and application development tools for PyQt4. guidata also provides the following features: * guidata.qthelpers: PyQt4 helpers * guidata.disthelpers: py2exe helpers * guidata.userconfig: .ini configuration management helpers (based on Python standard module ConfigParser) * guidata.configtools: library/application data management * guidata.gettext_helpers: translation helpers (based on the GNU tool gettext) * guidata.guitest: automatic GUI-based test launcher * guidata.utils: miscelleneous utilities guidata has been successfully tested on GNU/Linux and Windows platforms. Python package index page: http://pypi.python.org/pypi/guidata/ Documentation, screenshots: http://packages.python.org/guidata/ Downloads (source + Python(x,y) plugin): http://sourceforge.net/projects/guidata/ Cheers, Pierre --- Dr. Pierre Raybaut CEA - Commissariat ? l'Energie Atomique et aux Energies Alternatives From Pierre.RAYBAUT at CEA.FR Wed Nov 3 15:46:54 2010 From: Pierre.RAYBAUT at CEA.FR (Pierre.RAYBAUT at CEA.FR) Date: Wed, 3 Nov 2010 15:46:54 +0100 Subject: [ANN] guiqwt v2.0.4 Message-ID: Hi all, I am pleased to announce that `guiqwt` v2.0.4 has been released. This is mostly a bug fix release. Based on PyQwt (plotting widgets for PyQt4 graphical user interfaces) and on the scientific modules NumPy and SciPy, guiqwt is a Python library providing efficient 2D data-plotting features (curve/image visualization and related tools) for interactive computing and signal/image processing application development. As you certainly know, the most popular Python module for data plotting is currently matplotlib, an open-source library providing a lot of plot types and an API (the pylab interface) which is very close to MATLAB's plotting interface. guiqwt plotting features are quite limited in terms of plot types compared to matplotlib. However the currently implemented plot types are much more efficient. For example, the guiqwt image showing function (imshow) do not make any copy of the displayed data, hence allowing to show images much larger than with its matplotlib's counterpart. In other terms, when showing a 30-MB image (16-bits unsigned integers for example) with guiqwt, no additional memory is wasted to display the image (except for the offscreen image of course which depends on the window size) whereas matplotlib takes more than 600-MB of additional memory (the original array is duplicated four times using 64-bits float data types). guiqwt also provides the following features: guiqwt.pyplot: equivalent to matplotlib's pyplot module (pylab) supported plot items: * curves, error bar curves and 1-D histograms * images (RGB images are not supported), images with non-linear x/y scales, images with specified pixel size (e.g. loaded from DICOM files), 2-D histograms, pseudo-color images (pcolor) * labels, curve plot legends * shapes: polygon, polylines, rectangle, circle, ellipse and segment * annotated shapes (shapes with labels showing position and dimensions): rectangle with center position and size, circle with center position and diameter, ellipse with center position and diameters (these items are very useful to measure things directly on displayed images) curves, images and shapes: * multiple object selection for moving objects or editing their properties through automatically generated dialog boxes (guidata) * item list panel: move objects from foreground to background, show/hide objects, remove objects, ... * customizable aspect ratio * a lot of ready-to-use tools: plot canvas export to image file, image snapshot, image rectangular filter, etc. curves: * interval selection tools with labels showing results of computing on selected area * curve fitting tool with automatic fit, manual fit with sliders, ... images: * contrast adjustment panel: select the LUT by moving a range selection object on the image levels histogram, eliminate outliers, ... * X-axis and Y-axis cross-sections: support for multiple images, average cross-section tool on a rectangular area, ... * apply any affine transform to displayed images in real-time (rotation, magnification, translation, horizontal/vertical flip, ...) application development helpers: * ready-to-use curve and image plot widgets and dialog boxes * load/save graphical objects (curves, images, shapes) * a lot of test scripts which demonstrate guiqwt features guiqwt has been successfully tested on GNU/Linux and Windows platforms. Python package index page: http://pypi.python.org/pypi/guiqwt/ Documentation, screenshots: http://packages.python.org/guiqwt/ Downloads (source + Python(x,y) plugin): http://sourceforge.net/projects/guiqwt/ Cheers, Pierre --- Dr. Pierre Raybaut CEA - Commissariat ? l'Energie Atomique et aux Energies Alternatives From lpc at cmu.edu Thu Nov 4 05:29:38 2010 From: lpc at cmu.edu (Luis Pedro Coelho) Date: Thu, 4 Nov 2010 00:29:38 -0400 Subject: ANN: Mahotas 0.5.3 Message-ID: <201011040029.38673.lpc@cmu.edu> Hi List, I'd like to announce the release of mahotas 0.5.3. Mahotas is an image processing library, which is mostly implemented in C++ for speed and complements scipy.ndimage and pymorph. Notable Algorithms ------------------ - watershed. - thresholding. - convex points calculations. - hit & miss. thinning. - Zernike & Haralick features. - freeimage based numpy image loading (requires freeimage libraries to be installed). New Features in 0.5.3 ---------------------- * Implement mahotas.thin() in C++ for speed * Add np.uint64 support to fullhistogram() * Drop GIL when possible * Add imresize() wrapper around ndimage.zoom Website: http://luispedro.org/software/mahotas Mailing List (for computer vision in Python stuff, including this library): http://groups.google.com/group/pythonvision Repository: http://github.com/luispedro/mahotas API Docs: http://packages.python.org/mahotas/ Thank you, -- Luis Pedro Coelho http://luispedro.org From faltet at pytables.org Thu Nov 4 14:58:55 2010 From: faltet at pytables.org (Francesc Alted) Date: Thu, 4 Nov 2010 14:58:55 +0100 Subject: ANN: python-blosc 1.0.2 Message-ID: <201011041458.55870.faltet@pytables.org> ==================================================== Announcing python-blosc 1.0.2 A Python wrapper for the Blosc compression library ==================================================== What is it? =========== Blosc (http://blosc.pytables.org) is a high performance compressor optimized for binary data. It has been designed to transmit data to the processor cache faster than the traditional, non-compressed, direct memory fetch approach via a memcpy() OS call. Blosc works well for compressing numerical arrays that contains data with relatively low entropy, like sparse data, time series, grids with regular-spaced values, etc. python-blosc is a Python package that wraps it. What is new? ============ Updated to Blosc 1.1.2. Fixes some bugs when dealing with very small buffers (typically smaller than specified typesizes). Closes #1. Basic Usage =========== [Using IPython shell and a 2-core machine below] # Create a binary string made of int (32-bit) elements >>> import array >>> a = array.array('i', range(10*1000*1000)) >>> bytes_array = a.tostring() # Compress it >>> import blosc >>> bpacked = blosc.compress(bytes_array, typesize=a.itemsize) >>> len(bytes_array) / len(bpacked) 110 # 110x compression ratio. Not bad! # Compression speed? >>> timeit blosc.compress(bytes_array, typesize=a.itemsize) 100 loops, best of 3: 12.8 ms per loop >>> len(bytes_array) / 0.0128 / (1024*1024*1024) 2.9103830456733704 # wow, compressing at ~ 3 GB/s, that's fast! # Decompress it >>> bytes_array2 = blosc.decompress(bpacked) # Check whether our data have had a good trip >>> bytes_array == bytes_array2 True # yup, it seems so # Decompression speed? >>> timeit blosc.decompress(bpacked) 10 loops, best of 3: 21.3 ms per loop >>> len(bytes_array) / 0.0213 / (1024*1024*1024) 1.7489625814375185 # decompressing at ~ 1.7 GB/s is pretty good too! More examples showing other features (and using NumPy arrays) are available on the python-blosc wiki page: http://github.com/FrancescAlted/python-blosc/wiki Documentation ============= Please refer to docstrings. Start by the main package: >>> import blosc >>> help(blosc) and ask for more docstrings in the referenced functions. Download sources ================ Go to: http://github.com/FrancescAlted/python-blosc and download the most recent release from here. Blosc is distributed using the MIT license, see LICENSES/BLOSC.txt for details. Mailing list ============ There is an official mailing list for Blosc at: blosc at googlegroups.com http://groups.google.es/group/blosc ---- **Enjoy data!** -- Francesc Alted From albrecht.andi at gmail.com Fri Nov 5 14:45:21 2010 From: albrecht.andi at gmail.com (Andi Albrecht) Date: Fri, 05 Nov 2010 14:45:21 +0100 Subject: pyCologne Python User Group Cologne - Meeting, November 10, 2010, 6.30pm Message-ID: <8739rfrij2.fsf@gmail.com> Hello, The next meeting of pyCologne will take place: Wednesday, November, 10th starting about 6.30 pm - 6.45 pm at Room 0.14, Benutzerrechenzentrum (RRZK-B) University of Cologne, Berrenrather Str. 136, 50937 K?ln, Germany Agenda: - Summer of Code Summit, Google Code In (Reimar Bauer) - Upcoming events and activities Further discussion topics, news, book-presentations etc. are welcome on each of our meetings! At about 8.30 pm we will as usual enjoy the rest of the evening in a nearby restaurant. Further information including directions how to get to the location can be found at: http://www.pycologne.de (Sorry, the web-links are in German only.) Best Wishes, Andi From faltet at pytables.org Fri Nov 5 17:00:27 2010 From: faltet at pytables.org (Francesc Alted) Date: Fri, 5 Nov 2010 17:00:27 +0100 Subject: ANN: PyTables 2.2.1 released Message-ID: <201011051700.27205.faltet@pytables.org> =========================== Announcing PyTables 2.2.1 =========================== This is maintenance release. The upgrade is recommended for all that are running PyTables in production environments. What's new ========== Many fixes have been included, as well as a fair bunch of performance improvements. Also, the Blosc compression library has been updated to 1.1.2, in order to prevent locks in some scenarios. Finally, the new evaluation version of PyTables Pro is based on the previous Pro 2.2. In case you want to know more in detail what has changed in this version, have a look at: http://www.pytables.org/moin/ReleaseNotes/Release_2.2.1 You can download a source package with generated PDF and HTML docs, as well as binaries for Windows, from: http://www.pytables.org/download/stable For an on-line version of the manual, visit: http://www.pytables.org/docs/manual-2.2.1 What it is? =========== PyTables is a library for managing hierarchical datasets and designed to efficiently cope with extremely large amounts of data with support for full 64-bit file addressing. PyTables runs on top of the HDF5 library and NumPy package for achieving maximum throughput and convenient use. Resources ========= About PyTables: http://www.pytables.org About the HDF5 library: http://hdfgroup.org/HDF5/ About NumPy: http://numpy.scipy.org/ Acknowledgments =============== Thanks to many users who provided feature improvements, patches, bug reports, support and suggestions. See the ``THANKS`` file in the distribution package for a (incomplete) list of contributors. Most specially, a lot of kudos go to the HDF5 and NumPy (and numarray!) makers. Without them, PyTables simply would not exist. Share your experience ===================== Let us know of any bugs, suggestions, gripes, kudos, etc. you may have. ---- **Enjoy data!** -- The PyTables Team -- Francesc Alted From edreamleo at gmail.com Fri Nov 5 19:15:54 2010 From: edreamleo at gmail.com (Edward K. Ream) Date: Fri, 5 Nov 2010 11:15:54 -0700 (PDT) Subject: ANN: Leo 4.8 beta 1 released Message-ID: <9a2f5fb6-6e47-421f-8034-1e8ba81ec95f@f16g2000prj.googlegroups.com> Leo 4.8 beta 1 is now available at: http://sourceforge.net/project/showfiles.php?group_id=3458&package_id=29106 Leo is a text editor, data organizer, project manager and much more. See: http://webpages.charter.net/edreamleo/intro.html The highlights of Leo 4.8: -------------------------- - Leo now uses the simplest possible sentinel lines in external files. External files with sentinels now look like Emacs org-mode files. - Leo Qt gui now supports Drag and Drop. This was one of the most frequently requested features. - Improved abbreviation commands. You now define abbreviations in Leo settings nodes, not external files. - @url nodes may contain url's in body text. This allows headlines to contain summaries: very useful. - Leo now uses PyEnchant to check spelling. - Leo can now open multiple files from the command line. - Leo's ancient Tangle and Untangle commands are now deprecated. This will help newbies how to learn Leo. - Leo now shows "Resurrected" and "Recovered" nodes. These protect data and show how data have changed. These fix several long-standing data-related problems. - A new "screenshots" plugin for creating slide shows with Leo. I used this plugin to create Leo's introductory slide shows. - A better installer. - Many bug fixes. Links: ------ Leo: http://webpages.charter.net/edreamleo/front.html Forum: http://groups.google.com/group/leo-editor Download: http://sourceforge.net/project/showfiles.php?group_id=3458 Bzr: http://code.launchpad.net/leo-editor/ Quotes: http://webpages.charter.net/edreamleo/testimonials.html From stefan_ml at behnel.de Sat Nov 6 00:16:44 2010 From: stefan_ml at behnel.de (Stefan Behnel) Date: Sat, 06 Nov 2010 00:16:44 +0100 Subject: [ANN] Lupa 0.17 released - Lua in Python Message-ID: <4CD4905C.8070304@behnel.de> Hi all, I am happy to announce the release of Lupa 0.17. http://pypi.python.org/pypi/lupa/0.17 Have fun, Stefan What is Lupa? -------------- Lupa integrates the LuaJIT2 runtime [1] into CPython. It is a rewrite of LunaticPython in Cython with several advanced features. This release features iteration support for Python objects in Lua. Changes in this release: 0.17 (2010-11-05) * new helper function "python.enumerate()" in Lua that returns a Lua iterator for a Python object and adds the 0-based index to each item. * new helper function "python.iterex()" in Lua that returns a Lua iterator for a Python object and unpacks any tuples that the iterator yields into separate Lua arguments. * new helper function "python.iter()" in Lua that returns a Lua iterator for a Python object. * resurrected the "python.as_function()" helper function for Lua code as it can be needed in cases where Lua cannot determine how to run a Python function. [1] LuaJIT2: http://luajit.org/ Features --------- * separate Lua runtime states through a LuaRuntime class * frees the GIL and supports threading in separate runtimes when calling into Lua * Python compatible coroutine wrapper for Lua coroutines * iteration support for Python objects in Lua and Lua objects in Python * proper encoding and decoding of strings (configurable per runtime, UTF-8 by default) * supports Python 2.x and 3.x, potentially starting with Python 2.3 (currently untested) * written for LuaJIT2, as opposed to the Lua interpreter (tested with LuaJIT 2.0.0-beta5) * easy to hack on and extend as it is written in Cython, not C Why use it? ------------ It complements Python very well. Lua is a language as dynamic as Python, but LuaJIT compiles it to very fast machine code, sometimes faster than many other compiled languages for computational code. The language runtime is extremely small and carefully designed for embedding. The complete binary module of Lupa, including a statically linked LuaJIT2 runtime, is only some 500KB on a 64 bit machine. However, the Lua ecosystem lacks many of the batteries that Python readily includes, either directly in its standard library or as third party packages. This makes real-world Lua applications harder to write than equivalent Python applications. Lua is therefore not commonly used as primary language for large applications, but it makes for a fast, high-level and resource-friendly backup language inside of Python when raw speed is required and the edit-compile-run cycle of binary extension modules is too heavy and too static for agile development or hot-deployment. Lupa is a very fast and thin wrapper around LuaJIT. It makes it easy to write dynamic Lua code that accompanies dynamic Python code by switching between the two languages at runtime, based on the tradeoff between simplicity and speed. Examples --------- >>> from lupa import LuaRuntime >>> lua = LuaRuntime() >>> lua.eval('1+1') 2 >>> lua_func = lua.eval('function(f, n) return f(n) end') >>> def py_add1(n): return n+1 >>> lua_func(py_add1, 2) 3 >>> lua_code = '''\ ... function(N) ... for i=0,N do ... coroutine.yield( i%2 ) ... end ... end ... ''' >>> f = lua.eval(lua_code) >>> gen = f.coroutine(4) >>> list(enumerate(gen)) [(0, 0), (1, 1), (2, 0), (3, 1), (4, 0)] >>> lua_code = '''\ ... function(L) ... for item in python.iter(L) do ... if item == 3 then return 1 end ... end ... return 0 ... end ... ''' >>> f = lua.eval(lua_code) >>> f([1,2,3]) 1 >>> f([1,2]) 0 From bertrand.chenal at b2ck.com Tue Nov 9 16:17:31 2010 From: bertrand.chenal at b2ck.com (bch) Date: Tue, 9 Nov 2010 07:17:31 -0800 (PST) Subject: Tryton 1.8 is out Message-ID: I'm glad to announce the 1.8 release of Tryton: Main improvements[1]: * Extensive API simplification (gain in the number of line of code and first step toward an implementation of the Active record pattern). * The client now offer pagination for very big list of documents and fix a memory leak, making it more responsive. * Can be run completly on a USB stick (with Neso). [1] More details about this release: http://news.tryton.org/2010/11/tryton-18-is-out.html About Tryton: Tryton is a Python framework aimed at rapid development of integrated business application (aka ERP). The main software stack is : * A relational database (PostgreSQL, or MySQL or Sqlite) * the Tryton server that offers amongst other stuff an ORM, automated database migrations and expose data through several protocols (XML-RPC, JSON-RPC, WebDAV, CalDAV, with SSL or without) * The Tryton client, written in pyGTK, it offers the priviliged way to acces those data. There is also: * Neso, the standalone version of Tryton, that glues server and client together and run on top of Sqlite. * Proteus: a library that allows to acces easily local and remote Tryton server (from the command line or from any other Python software) and expose data through and Active Record API -- Bertrand Chenal B2CK SPRL Rue de Rotterdam, 4 4000 Li?ge Belgium Tel: +32 472 54 46 59 Email: bertrand.chenal at b2ck.com Website: http://www.b2ck.com/ From laurent.pointal at free.fr Tue Nov 9 23:06:14 2010 From: laurent.pointal at free.fr (Laurent Pointal) Date: Tue, 9 Nov 2010 23:06:14 +0100 Subject: [ANN] =?utf-8?q?Abr=C3=A9g=C3=A9_Dense_Python_3=2E1_in?= english Message-ID: <201011092306.14699.laurent.pointal@free.fr> Hello, I'm pleased to announce the translation of the quick reference for Python 3.1 in english. It is a one recto-verso page filled with language basics and advanced constructions. Web page for all versions and source document download: http://perso.limsi.fr/pointal/python:abrege Direct english PDF download: http://perso.limsi.fr/pointal/_media/python:cours:abregepython-english.pdf Direct english ODT download: http://perso.limsi.fr/pointal/_media/python:cours:abregepython-english.odt A+ L.Pointal PS. ?Abr?g? Dense? may be translated to ?Heavy Summary?. From vasco.jerinic at e-technik.tu-chemnitz.de Wed Nov 10 12:00:00 2010 From: vasco.jerinic at e-technik.tu-chemnitz.de (Vasco Jerinic) Date: Wed, 10 Nov 2010 12:00:00 +0100 Subject: Python ByteCoat Message-ID: We would like to announce Python ByteCoat. Python ByteCoat is a solution which allows for the protection of python implementation details. It compiles platform independent python byte code into a platform dependent binary, i.e. native shared library. This library is used by the python interpreter transparently, as if it were a python byte code module. All functions, classes and other definitions inside the translated module are fully accessible. The ByteCoat technology ensures full compatibility of the generated shared library and python interpreter. Python ByteCoat is currently available for Python 2.4, 2.5 and 2.6. Support for Python 2.7 will be available soon. If you want to use ByteCoat, you can request an evaluation copy or obtain a license. Please visit http://www.coremountains.com/products/bytecoat/ or contact info at coremountains.com to inquire conditions and prices. If your platform is not listed, please give us a note and we will check whether we can provide a version for it. -- +---------------------------------------------------+ + Dr. Vasco Jerinic + + Gesch?ftsf?hrer / Managing Director + + fon +49 371 531 35520 fax +49 371 531 8 35520 + + vje at coremountains.com + + + + Core Mountains GmbH + + Firmensitz: Fr?hlichtweg 11, 09127 Chemnitz + + Registergericht: Amtsgericht Chemnitz, HRB 22660 + + Gesch?ftsf?hrer: Dr. Vasco Jerinic + +---------------------------------------------------+ From johnp at redhat.com Wed Nov 10 22:09:21 2010 From: johnp at redhat.com (John Palmieri) Date: Wed, 10 Nov 2010 16:09:21 -0500 (EST) Subject: =?utf-8?Q?[ANNOUNCE]_PyGObject_2.27.0_=E2=80=93_unstable_release?= Message-ID: <1249690169.2882671289423361059.JavaMail.root@zmail04.collab.prod.int.phx2.redhat.com> I am pleased to announce version 2.27.0 of the Python bindings for GObject. A lot of fixes went in under the hood include fixes to the Windows build environment. On the Introspection side we are getting closer to parity with PyGtk interfaces with notes from people who have successfully ported their plugins and apps. I would like to thank the numerous bug and patch filers including the GEdit team for letting us know what they need for us to support them. Keep those bugs coming and hop on irc to pester us until we fix your issue. Some higlights include: * better handling of virtual methods * fixed gobject inheritance model * you can now call dir on dynamic modules to see what member exist * the Tree* API is much nicer, exporting a lot of the convenience APIs that exist in PyGtk * cairo_rectangle_int_t is supported as a foreign type if pycairo exports it (patch at https://bugs.freedesktop.org/show_bug.cgi?id=31111) * some Python 3 fixes so we can compile under Python 3.2 The new release is available from ftp.gnome.org as and its mirrors: http://download.gnome.org/sources/pygobject/2.27/ What?s new since PyGObject 2.26.0? * Implement richcompare for GIBaseInfo (Jonathan Matthew) * [gi] add the rectangle_int_t forign cairo type (John (J5) Palmieri) * add a foreign type for cairo_rectangle_int_t and allow it to be caller-allocated (John (J5) Palmieri) * [gi] add overrides to Gtk.Editable (John (J5) Palmieri) * [gi] handle virtual invokers (John (J5) Palmieri) * add overrides for the insert* apis of list_store and tree_store (John (J5) Palmieri) * fix dialogs overrides which were relying on broken inheritance behavior (John (J5) Palmieri) * Add a overrides registry so we can refrence overrides inside the module (John (J5) Palmieri) * setup.py: ease maintenance burden for tests installation (Dieter Verfaillie) * fix inheritence issues in overrides (John (J5) Palmieri) * tests: add runtests-windows.py script (Dieter Verfaillie) * pygobject_postinstall.py: remove pygobject-2.0.pc treatment from postinstall as pkg-config on windows figures out the correct prefix at runtime (Dieter Verfaillie) * pygobject_postinstall.py: remove shortcut creation (Dieter Verfaillie) * setup.py: formatting cleanup, makes things readable (Dieter Verfaillie) * setup.py: build and install tests (Dieter Verfaillie) * setup.py: install documentation when available on build system (Dieter Verfaillie) * setup.py: install pygobject-codegen script (Dieter Verfaillie) * setup.py: install fixxref.py script (Dieter Verfaillie) * setup.py: rearrange constants (Dieter Verfaillie) * setup.py: check python version and pkgconig availability before anything else (Dieter Verfaillie) * setup.py: simplify sys.platform != 'win32' detection and error reporting (Dieter Verfaillie) * setup.py: rearrange imports (Dieter Verfaillie) * README.win32: update build instructions (Dieter Verfaillie) * dsextras.py: formatting cleanup, makes things readable (Dieter Verfaillie) * dsextras.py: add ggc4 to MSVC compatible struct packing comment (Dieter Verfaillie) * dsextras.py: use the pkgc_ functions instead of repeating pgk-config incantations all over the place (Dieter Verfaillie) * dsextras.py: add pkgc_get_version and pkgc_get_defs_dir functions (Dieter Verfaillie) * dsextras.py: PEP8: Comparisons to singletons like None should always be done with 'is' or 'is not', never the equality operators. (Dieter Verfaillie) * dsextras.py: use True/False instead of 1/0 (Dieter Verfaillie) * dsextras.py: rearrange imports (Dieter Verfaillie) * Add distutils generated build/dist directories and eclipse configuration files to .gitignore (Dieter Verfaillie) * [gi] add tests for calling dir on a dynamic module (John (J5) Palmieri) * [gi] dir() now works for modules (Deepankar Sharma) * Don't check the inner type when comparing gpointers (Sim??n Pena) * Release GIL when calling into C functions (John (J5) Palmieri) * _gi.Repository : Implement missing info bindings. (Jos?? Aliste) * include Python.h so that PY_VERSION_HEX gets defined (John (J5) Palmieri) * [gi] make overrides work for python 3.x protocols and alias for python 2.x (John (J5) Palmieri) * Override Gtk.Widget.translate_coordinates to not return success value (Sebastian P??lsterl) * Override Gtk.TreeViewColumn.cell_get_position to not return success value (Sebastian P??lsterl) * Override get_path_at_pos and get_dest_row_at_pos of Gtk.TreeView to not return success value (Sebastian P??lsterl) * Override Gtk.TreeSortable.get_sort_column_id to not return success value (Sebastian P??lsterl) * Override forward_search and backward_search of Gtk.TextIter to not return success value (Sebastian P??lsterl) * Override Gtk.TextBuffer.get_selection_bounds to not return success value (Sebastian P??lsterl) * Override Gtk.RecentInfo.get_application_info to not return success value (Sebastian P??lsterl) * Override Gtk.IMContext.get_surrounding to not return success value (Sebastian P??lsterl) * Override get_item_at_pos, get_visible_range, get_dest_item_at_pos of Gtk.IconView to not return success value (Sebastian P??lsterl) * Override Gtk.Container.get_focus_chain to not return success value (Sebastian P??lsterl) * Override Gtk.ComboBox.get_active_iter to not return success value (Sebastian P??lsterl) * [gi] make parameter check less strict when dealing with GValue params (John (J5) Palmieri) * Shortcut removal is not needed on post-uninstall (John Stowers) * Disable shortcut creation in windows installer (John Stowers) * overrides for all subclasses of dialog (John (J5) Palmieri) * Make TreeModel behave like in GTK-2.x (Sebastian P??lsterl) * Correctly build GIO on windows (John Stowers) * Require Python >= 2.6.0 for Windows build (John Stowers) * Fix depreciation warning in dsextras.py (John Stowers) * Fix build on windows (John Stowers) * Support for GCC4 in Windows distutils build - bug 626548 (Michael Culbertson) * Remove obsolete comments in dsextras.py (John Stowers) * Broken dsextras.py pkg-config check error message (John Stowers) * add compat functions for the deprecated PyCObject api (John (J5) Palmieri) * Add __path__ attributes. (Damien Caliste) * Override Gtk.TreeSelection.get_selected to not return success value. (Sebastian P??lsterl) * Make row optional in Gtk.TreeStore/ListStore.append override (Vincent Untz) * Revert "add compat functions for the deprecated PyCObject api" (John (J5) Palmieri) * return NULL instead of -1 which fixes crash when introspection is turned off (John (J5) Palmieri) * add compat functions for the deprecated PyCObject api (John (J5) Palmieri) * fix commit 7fe83108 which didn't use the compat functions for string handling (John (J5) Palmieri) * Python 3 fixes for dsextras and the python.m4 distribution files (John (J5) Palmieri) Blurb: GObject is a object system library used by GTK+ and GStreamer. PyGObject provides a convenient wrapper for the GObject library for use in Python programs, and takes care of many of the boring details such as managing memory and type casting. When combined with PyGTK, PyORBit and gnome-python, it can be used to write full featured Gnome applications. Like the GObject library itself PyGObject is licensed under the GNU LGPL, so is suitable for use in both free software and proprietary applications. It is already in use in many applications ranging from small single purpose scripts up to large full featured applications. PyGObject requires glib >= 2.22.4 and Python >= 2.5.1 to build. GIO bindings require glib >= 2.22.4. The Introspection module is the next generation Python GObject library bindings. Instead of statically wrapping every GObject based library we can now dynamically accesses any of those libraries using GObject Introspection. It replaces the need for separate modules such as PyGTK, GIO and python-gnome to build a full GNOME application. Once new functionality is added to gobject library it is instantly available as a Python API without the need for an intermediate Python module. Introspection/Python 2 bindings requires gobject-introspection >= 0.9.5 and pycairo >=1.0.2 or py2cairo >=1.8.10 Introspection/Python 3 bindings requires gobject-introspection >= 0.9.5, pycairo >=1.8.10 and Python >= 3.1 gobject-introspection bugs are being fixed at a rapid pace so it is recommend to use the latest version in git when filing bugs against the Introspection module. ? John (J5) Palmieri GNOME Foundation member johnp at redhat.com From sridharr at activestate.com Thu Nov 11 02:08:15 2010 From: sridharr at activestate.com (Sridhar Ratnakumar) Date: Wed, 10 Nov 2010 17:08:15 -0800 Subject: PyPM Index Message-ID: <4CDB41FF.8090609@activestate.com> Hi, I'd like to announce the availability of PyPM Index - frontend to browse/search Python packages available in the PyPM repository: http://code.activestate.com/pypm/ The site also has some nifty features that, I think, may be of use to package authors: 1. Author pages 2. Build RSS notification (released with a setup.py bug?) 3. Dependency information For more details, see this blog post: http://www.activestate.com/blog/2010/11/pypm-index-python-developers -- Sridhar Ratnakumar Python Developer ActiveState, The Dynamic Language Experts http://www.activestate.com/ From phd at phd.pp.ru Thu Nov 11 21:26:57 2010 From: phd at phd.pp.ru (Oleg Broytman) Date: Thu, 11 Nov 2010 23:26:57 +0300 Subject: Torrent VFS for Midnight Commander Message-ID: <20101111202657.GA2613@phd.pp.ru> Torrent Virtual FileSystem for Midnight Commander WHAT IS IT View files, directories and meta information from a torrent metafile in Midnight Commander. WHAT'S NEW in version 1.0.0 (2010-11-11) Initial release. WHERE TO GET Master site: http://phd.pp.ru/Software/mc/ Mirrors: http://phd.by.ru/Software/mc/ http://phd.webhost.ru/Software/mc/ AUTHOR Oleg Broytman COPYRIGHT Copyright (C) 2010 PhiloSoft Design LICENSE GPL Oleg. -- Oleg Broytman http://phd.pp.ru/ phd at phd.pp.ru Programmers don't die, they just GOSUB without RETURN. From g.rodola at gmail.com Sat Nov 13 04:19:40 2010 From: g.rodola at gmail.com (=?ISO-8859-1?Q?Giampaolo_Rodol=E0?=) Date: Sat, 13 Nov 2010 04:19:40 +0100 Subject: ANN: psutil 0.2.0 released Message-ID: Hi, I'm pleased to announce the 0.2.0 release of psutil: http://code.google.com/p/psutil === About === psutil is a module providing an interface for retrieving information on running processes and system utilization (CPU, memory) in a portable way by using Python, implementing many functionalities offered by command line tools like ps, top, kill, lsof and netstat. It currently supports Linux, Windows, OS X and FreeBSD both 32-bit and 64-bit with Python versions from 2.4 to 3.2 by using a unique code base. === Major enhancements === * per-process open files * per-process TCP/UPD connections * per-process children * per-process executable name * per-process number of threads * per-process send_signal() and terminate() methods * system cached and buffer memory * support for Windows 64-bit (XP, Vista, 7) and Windows 2000 * mingw compiler support === Links === * Home page: http://code.google.com/p/psutil * Mailing list: http://groups.google.com/group/psutil/topics * Source tarball: http://psutil.googlecode.com/files/psutil-0.2.0.tar.gz * Windows Installer (Python 2.7): http://psutil.googlecode.com/files/psutil-0.2.0.win32-py2.7.exe * Api Reference: http://code.google.com/p/psutil/wiki/Documentation --- Giampaolo Rodola' http://code.google.com/p/pyftpdlib http://code.google.com/p/psutil/ From benjamin at python.org Sun Nov 14 00:08:10 2010 From: benjamin at python.org (Benjamin Peterson) Date: Sat, 13 Nov 2010 17:08:10 -0600 Subject: [RELEASED] Python 3.1.3 release candidate 1 Message-ID: On behalf of the Python development team, I'm gladsome to announce a release candidate of the third bugfix release for the Python 3.1 series, Python 3.1.3. This bug fix release fixes numerous issues found in 3.1.2. Please try it with your packages and report any bugs you find. The final of 3.1.3 is scheduled to be released in two weeks. The Python 3.1 version series focuses on the stabilization and optimization of the features and changes that Python 3.0 introduced. For example, the new I/O system has been rewritten in C for speed. File system APIs that use unicode strings now handle paths with undecodable bytes in them. Other features include an ordered dictionary implementation, a condensed syntax for nested with statements, and support for ttk Tile in Tkinter. For a more extensive list of changes in 3.1, see http://doc.python.org/3.1/whatsnew/3.1.html or Misc/NEWS in the Python distribution. To download Python 3.1.3 visit: http://www.python.org/download/releases/3.1.3/ A list of changes in 3.1.3 can be found here: http://svn.python.org/projects/python/tags/r313rc1/Misc/NEWS The 3.1 documentation can be found at: http://docs.python.org/3.1 Bugs can always be reported to: http://bugs.python.org Enjoy! -- Benjamin Peterson Release Manager benjamin at python.org (on behalf of the entire python-dev team and 3.1.3's contributors) From benjamin at python.org Sun Nov 14 00:12:22 2010 From: benjamin at python.org (Benjamin Peterson) Date: Sat, 13 Nov 2010 17:12:22 -0600 Subject: [RELEASED] Python 2.7.1 release candidate 1 Message-ID: On behalf of the Python development team, I'm chuffed to announce the a release candidate of Python 2.7.1. Please test the release candidate with your packages and report any bugs you find. 2.7.1 final is scheduled in two weeks. 2.7 includes many features that were first released in Python 3.1. The faster io module, the new nested with statement syntax, improved float repr, set literals, dictionary views, and the memoryview object have been backported from 3.1. Other features include an ordered dictionary implementation, unittests improvements, a new sysconfig module, auto-numbering of fields in the str/unicode format method, and support for ttk Tile in Tkinter. For a more extensive list of changes in 2.7, see http://doc.python.org/dev/whatsnew/2.7.html or Misc/NEWS in the Python distribution. To download Python 2.7.1 visit: http://www.python.org/download/releases/2.7.1/ The 2.7.1 changelog is at: http://svn.python.org/projects/python/tags/r271rc1/Misc/NEWS 2.7 documentation can be found at: http://docs.python.org/2.7/ This is a testing release, so we encourage developers to test it with their applications and libraries. Please report any bugs you find, so they can be fixed in the final release. The bug tracker is at: http://bugs.python.org/ Enjoy! -- Benjamin Peterson Release Manager benjamin at python.org (on behalf of the entire python-dev team and 2.7.1's contributors) From edreamleo at gmail.com Mon Nov 15 18:06:54 2010 From: edreamleo at gmail.com (Edward K. Ream) Date: Mon, 15 Nov 2010 09:06:54 -0800 (PST) Subject: Leo 4.8 rc1 released Message-ID: Leo 4.8 release candidate 1 is now available at: http://sourceforge.net/project/showfiles.php?group_id=3458&package_id=29106 Leo is a text editor, data organizer, project manager and much more. See: http://webpages.charter.net/edreamleo/intro.html The highlights of Leo 4.8: -------------------------- - Leo now uses the simplest possible sentinel lines in external files. External files with sentinels now look like Emacs org-mode files. - Leo Qt gui now supports Drag and Drop. This was one of the most frequently requested features. - Improved abbreviation commands. You now define abbreviations in Leo settings nodes, not external files. - @url nodes may contain url's in body text. This allows headlines to contain summaries: very useful. - Leo now uses PyEnchant to check spelling. - Leo can now open multiple files from the command line. - Leo's ancient Tangle and Untangle commands are now deprecated. This will help newbies how to learn Leo. - Leo now shows "Resurrected" and "Recovered" nodes. These protect data and show how data have changed. These fix several long-standing data-related problems. - A new "screenshots" plugin for creating slide shows with Leo. I used this plugin to create Leo's introductory slide shows. - Improved autocompletion: Ctrl-space starts a one-time completion. - A better installer. - Many bug fixes. Links: ------ Leo: http://webpages.charter.net/edreamleo/front.html Forum: http://groups.google.com/group/leo-editor Download: http://sourceforge.net/project/showfiles.php?group_id=3458 Bzr: http://code.launchpad.net/leo-editor/ Quotes: http://webpages.charter.net/edreamleo/testimonials.html Edward K. Ream November 15, 2010 From emile.anclin at logilab.fr Tue Nov 16 11:53:47 2010 From: emile.anclin at logilab.fr (Emile Anclin) Date: Tue, 16 Nov 2010 11:53:47 +0100 Subject: pylint 0.22.0 : alpha release of python3.x support Message-ID: <201011161153.48100.emile.anclin@logilab> Hello everybody, we are pleased to announce the first Python 3.x compatible Pylint release with version 0.22.0 ! According to this, we also release logilab-common 0.53.0 and logilab-astng 0.21.0. Python3 support --------------- However, the Python3.x support should be considered as an alpha release, since we know that some of the tests don't pass. If you install logilab-common, logilab-astng and pylint from source, you also have to run the 2to3 script by yourself:: find . ! -path "*/test/*py" -name "*py" -exec 2to3-3.1 -wn {} \; If you want to run the tests, remove the -path option, and ask Logilab for support. If you install it from debian packages through logilab repository, it comes with pylint3(-gui) and pyreverse3 executables. Bugfixes -------- Furthermore, as we forgot to announce the Pylint 0.21.4 and logilab-astng 0.20.4 release, let me note that those releases fixed a lot of bugs: Pylint: #37148: Pyreverse fails on twisted.internet #19799: "pylint -blah" exit with status 2 #48066: pylint crashes when redirecting output containing non-ascii #3259: "pylint --disable-all --enable-msg=XYZ file.py" #46772: absolute imports fail depending on module path #46137: disable-report options do not work anymore Astng: #37665, #37868, #33638: E0611 false positive with relative imports #37909: No name 'testing' in module 'srllib' #8969: false positive when importing from zip-safe eggs #20254: odd import name w/ absolute_import activated #46131: Pylint did not recognise decorators usage What is Pylint? --------------- Pylint analyzes Python source code looking for bugs and signs of poor quality. Pylint is a python tool that checks if a module satisfies a coding standard. Pylint is similar to PyChecker but offers more features, like checking line-code's length, checking if variable names are well-formed according to your coding standard, or checking if declared interfaces are truly implemented, and much more. The big advantage with Pylint is that it is highly configurable, customizable, and you can easily write a small plugin to add a personal feature. Pylint is shipped with Pyreverse which creates UML diagrams for python code. -- Emile Anclin http://www.logilab.fr/ http://www.logilab.org/ Informatique scientifique & et gestion de connaissances From Marcin.Kasperski at mekk.waw.pl Tue Nov 16 12:36:37 2010 From: Marcin.Kasperski at mekk.waw.pl (Marcin Kasperski) Date: Tue, 16 Nov 2010 12:36:37 +0100 Subject: mekk.rtm 0.6.0 Message-ID: <8739r1xzy2.fsf@mekk.waw.pl> mekk.rtm provides both: - yet another Python client for RememberTheMilk API (contrary to two other existing libraries, this one tries to define explicit parameters and provide results of known structure) - a few command-line helpers (massively add/remove tag to all tasks satisfying given query, massively move tasks to another list, import data exported from Nozbe) This is the first release announced here. For more details see: http://pypi.python.org/pypi/mekk.rtm/0.6.0 Source and issue tracker: http://bitbucket.org/Mekk/rtmimport From fuzzyman at gmail.com Tue Nov 16 13:52:54 2010 From: fuzzyman at gmail.com (Fuzzyman) Date: Tue, 16 Nov 2010 04:52:54 -0800 (PST) Subject: ANN: mock 0.7.0 beta 4 release Message-ID: <04da1b5a-a165-4ec7-9996-c4089f02740c@k22g2000yqh.googlegroups.com> I've released mock 0.7.0 beta 4. This is intended to be the last release of 0.7.0 before the final. http://pypi.python.org/pypi/mock/ (download) http://www.voidspace.org.uk/python/mock/ (documentation) https://code.google.com/p/mock/ (repo and issue tracker) mock is a Python library for simple mocking and patching (replacing objects with mocks during test runs). The "headline features" in 0.7.0 are Python 3 support and the ability to mock magic methods. You can now mock objects that behave like containers or are used as context managers. mock is designed for use with unittest, based on the "action -> assertion" pattern rather than "record -> replay". People are happily using mock with Python test frameworks like nose and py.test. 0.7.0 is a major new release with a bunch of other new features and bugfixes as well. The latest beta is now up on PyPI. 0.7.0 beta 4 is intended to be the last release before 0.7.0 final (read my lips - no new features), so please try it out and report any issues. The work remaining before the final release is updating the documentation, especially the examples, to include the new features. Changes since beta 3 are: * patchers (patch, patch.object and patch.dict) have start and stop methods * Addition of assert_called_once_with method * repr of a mock with a spec includes the class name of the spec * assert_called_with works with python -OO * New spec_set keyword argument to Mock and patch. If this is set, attempting to set an attribute on a mock not on the spec will raise an AttributeError * Attributes and return value of a MagicMock are MagicMock objects * Attempting to set an unsupported magic method now raises an AttributeError * patch.dict works as a class decorator * Switched from subversion to mercurial for source code control * BUGFIX: mocks are now copyable (thanks to Ned Batchelder for reporting and diagnosing this) * BUGFIX: spec=True works with old style classes * BUGFIX: mocksignature=True can now patch instance methods via patch.object For more details, including full changelog since 0.6.0 and examples of using the new start / stop methods on patchers, see the announcement on my blog: http://www.voidspace.org.uk/python/weblog/arch_d7_2010_11_13.shtml#e1193 All the best, Michael Foord From georg at python.org Tue Nov 16 15:05:51 2010 From: georg at python.org (Georg Brandl) Date: Tue, 16 Nov 2010 15:05:51 +0100 Subject: [RELEASED] Python 3.2 alpha 4 Message-ID: <4CE28FBF.9020200@python.org> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On behalf of the Python development team, I'm happy to announce the fourth and (this time really) final alpha preview release of Python 3.2. Python 3.2 is a continuation of the efforts to improve and stabilize the Python 3.x line. Since the final release of Python 2.7, the 2.x line will only receive bugfixes, and new features are developed for 3.x only. Since PEP 3003, the Moratorium on Language Changes, is in effect, there are no changes in Python's syntax and built-in types in Python 3.2. Development efforts concentrated on the standard library and support for porting code to Python 3. Highlights are: * numerous improvements to the unittest module * PEP 3147, support for .pyc repository directories * PEP 3149, support for version tagged dynamic libraries * an overhauled GIL implementation that reduces contention * many consistency and behavior fixes for numeric operations * countless fixes regarding string/unicode issues; among them full support for a bytes environment (filenames, environment variables) * a sysconfig module to access configuration information * a pure-Python implementation of the datetime module * additions to the shutil module, among them archive file support * improvements to pdb, the Python debugger For an extensive list of changes in 3.2, see Misc/NEWS in the Python distribution. To download Python 3.2 visit: http://www.python.org/download/releases/3.2/ 3.2 documentation can be found at: http://docs.python.org/3.2/ Please consider trying Python 3.2 with your code and reporting any bugs you may notice to: http://bugs.python.org/ Enjoy! - -- Georg Brandl, Release Manager georg at python.org (on behalf of the entire python-dev team and 3.2's contributors) -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.16 (GNU/Linux) iEYEARECAAYFAkzij74ACgkQN9GcIYhpnLCbtwCgi4whRruM0Oi6yfgjVclYErFa OJcAn0U8UBBsQBFyGcnKJRbls6B+guQ2 =Vuqf -----END PGP SIGNATURE----- From faltet at pytables.org Wed Nov 17 20:46:31 2010 From: faltet at pytables.org (Francesc Alted) Date: Wed, 17 Nov 2010 20:46:31 +0100 Subject: python-blosc 1.0.3 released Message-ID: <201011172046.31055.faltet@pytables.org> ==================================================== Announcing python-blosc 1.0.3 A Python wrapper for the Blosc compression library ==================================================== What is it? =========== Blosc (http://blosc.pytables.org) is a high performance compressor optimized for binary data. It has been designed to transmit data to the processor cache faster than the traditional, non-compressed, direct memory fetch approach via a memcpy() OS call. Blosc works well for compressing numerical arrays that contains data with relatively low entropy, like sparse data, time series, grids with regular-spaced values, etc. python-blosc is a Python package that wraps it. What is new? ============ Blosc has been updated to 1.1.3, allowing much improved compression ratio under some circumstances. Also, the number of cores on Windows platform is detected correctly now (thanks to Han Genuit). Last, but not least, Windows binaries for Python 2.6 and 2.7 are provided (both in 32-bit and 64-bit flavors). For more info, you can see the release notes in: https://github.com/FrancescAlted/python-blosc/wiki/Release-notes Basic Usage =========== # Create a binary string made of int (32-bit) elements >>> import array >>> a = array.array('i', range(10*1000*1000)) >>> bytes_array = a.tostring() # Compress it >>> import blosc >>> bpacked = blosc.compress(bytes_array, typesize=a.itemsize) >>> len(bytes_array) / len(bpacked) 110 # 110x compression ratio. Not bad! # Compression speed? >>> from timeit import timeit >>> timeit("blosc.compress(bytes_array, a.itemsize)", "import blosc, array; \ a = array.array('i', range(10*1000*1000)); \ bytes_array = a.tostring()", \ number=10) 0.040534019470214844 >>> len(bytes_array)*10 / 0.0405 / (1024*1024*1024) 9.1982476505232444 # wow, compressing at ~ 9 GB/s. That's fast! # This is actually much faster than a `memcpy` system call >>> timeit("ctypes.memmove(b.buffer_info()[0], a.buffer_info()[0], \ len(a)*a.itemsize)", "import array, ctypes; \ a = array.array('i', range(10*1000*1000)); \ b = a[::-1]", number=10) 0.10316681861877441 >>> len(bytes_array)*10 / 0.1031 / (1024*1024*1024) 3.6132786600018565 # ~ 3.6 GB/s is memcpy speed # Decompress it >>> bytes_array2 = blosc.decompress(bpacked) # Check whether our data have had a good trip >>> bytes_array == bytes_array2 True # yup, it seems so # Decompression speed? >>> timeit("s2 = blosc.decompress(bpacked)", "import blosc, array; \ a = array.array('i', range(10*1000*1000)); \ bytes_array = a.tostring(); \ bpacked = blosc.compress(bytes_array, a.itemsize)", \ number=10) 0.083872079849243164 > len(bytes_array)*10 / 0.0838 / (1024*1024*1024) 4.4454538167803275 # decompressing at ~ 4.4 GB/s is pretty good too! [Using a machine with 8 physical cores with hyper-threading] The above examples use maximum compression level 9 (default), and although lower compression levels produce smaller compression ratios, they are also faster (reaching speeds exceeding 11 GB/s). More examples showing other features (and using NumPy arrays) are available on the python-blosc wiki page: http://github.com/FrancescAlted/python-blosc/wiki Documentation ============= Please refer to docstrings. Start by the main package: >>> import blosc >>> help(blosc) and ask for more docstrings in the referenced functions. Download sources ================ Go to: http://github.com/FrancescAlted/python-blosc and download the most recent release from here. Blosc is distributed using the MIT license, see LICENSES/BLOSC.txt for details. Mailing list ============ There is an official mailing list for Blosc at: blosc at googlegroups.com http://groups.google.es/group/blosc ---- **Enjoy data!** -- Francesc Alted From tundra at tundraware.com Thu Nov 18 03:31:13 2010 From: tundra at tundraware.com (Tim Daneliuk) Date: Wed, 17 Nov 2010 20:31:13 -0600 Subject: [ANN]: 'tren' Cross-Platform Batch Renaming Tool, Version 1.239 Released Message-ID: <6ofer7-jnc1.ln1@ozzie.tundraware.com> 'tren' Version 1.239 is now released and available for download at: http://www.tundraware.com/Software/tren The last public release was 1.217. --------------------------------------------------------------------- What's New In This Release? --------------------------- This release fixes several critical bugs and adds a number of new features. Existing users are urged to upgrade at their earliest opportunity: FIXED: Backups weren't being improperly named. FIXED: Changed TREN envvar processing to properly parse quoting. FIXED: Each renaming target must either be something that exists or a wildcard that expands to something that exists. Formerly, nonexistent renaming targets were silently ignored. NEW: Debug now shows the incremental change to each file name as each renaming request is applied left-to-right. Use -dq to see this more clearly. NEW: The environment variable TRENINCL is now supported. This allows you to specify a path to search when looking for include files. NEW: Implemented /NAMESOFAR/ renaming token. NEW: Added -e type case conversion option - new kind of renaming request. c - Capitalize l - Lower s - Swap case t - Title -> Char's followiing non-alpha are capitalized u - Upper NEW: Added -T option to allow user to "target" a substring of the full filename for renaming OTHER: Documentation additions and updates including clarification of old features, description of new features, and improved table-of-contents for PDF and PS document formats. What Is 'tren'? ------------------ 'tren' is a general purpose file and directory renaming tool. Unlike commands like 'mv', 'tren' is particularly well suited for renaming *batches* of files and/or directories with a single command line invocation. 'tren' eliminates the tedium of having to script simpler tools to provide higher-level renaming capabilities. 'tren' is also adept at renaming only *part of an existing file or directory name* either based on a literal string or a regular expression pattern. You can replace any single, group, or all instances of a given string in a file or directory name. 'tren' implements the idea of a *renaming token*. These are special names you can embed in your renaming requests that represent things like the file's original name, its length, date of creation, and so on. There are even renaming tokens that will substitute the content of any environment variable or the results of running a program from a shell back into the new file name. 'tren' can automatically generate *sequences* of file names based on their dates, lengths, times within a given date, and so on. In fact, sequences can be generated on the basis of any of the file's 'stat' information. Sequence "numbers" can be ascending or descending and the count can start at any initial value. Counting can take place in one of several internally defined counting "alphabets" (decimal, hex, octal, alpha, etc.) OR you can define your own counting alphabet. This allows you to create sequences in any base (2 or higher please :) using any symbol set for the count. 'tren' is written in pure Python and requires Python version 2.6.x or later. It is known to run on various Unix-like variants (FreeBSD, Linux, MacOS X) as well as Windows. It will also take advantage of 'win32all' Python extensions on a Windows system, if they are present. --------------------------------------------------------------------- Complete details of all fixes, changes, and new features can be found in the WHATSNEW.txt and documentation files included in the distribution. A FreeBSD port has been submitted as well. From casevh at gmail.com Thu Nov 18 09:55:51 2010 From: casevh at gmail.com (casevh) Date: Thu, 18 Nov 2010 00:55:51 -0800 (PST) Subject: ANN: GMPY 1.14 and GMPY2 alpha1 released Message-ID: <35265e12-2cc6-45d5-9d2e-ead51d545d78@h21g2000vbh.googlegroups.com> Everyone, I'm pleased to annouce the release of both a new production and experimental release of GMPY. GMPY is a wrapper for the MPIR or GMP multiple-precision arithmetic library. The experimental release (GMPY2) now includes support for the MPFR floating-point library. GMPY is available for download from: http://code.google.com/p/gmpy/ Production release ------------------ GMPY 1.14 is the updated stable release. A memory leak was fixed so it is highly recommended that all user upgrade to this version. In addition to a few other bug fixes, GMPY 1.14 is compatible with the changes to the hashing code in Python 3.2a4. The 64-bit Windows installer for Python 3.2 should only be used with 3.2a4 and later. Even though my primary development focus has shifted to GMPY2 (see below), GMPY 1.X will continue to receive bug and compatibility fixes. Experimental release -------------------- To simplify the codebase, allow for changes in the API, and support simultaneous installation, the development version has been renamed to GMPY2. The following is list of changes in GMPY2: In 2.0.0a0 ---------- * support for a mutable integer type "xmpz" * removal of random number functions * "xmpz" supports slices for setting/clearing bits * some methods have been renamed (scan1 -> bit_scan1) * support for Python prior to 2.6 has been removed * support for all division modes has been added * ceiling - round to +Infinity * floor - round to -Infinity * truncate - round to zero * 2exp - division by a power of 2 * support is_even() and is_odd() In 2.0.0a1 ---------- * support for the MPFR floating point library If you use GMPY regularly, please test GMPY2. There have been several requests asking for a mutable integer and I am curious if there are real-world performance improvements. Please report any issues! casevh From tundra at tundraware.com Fri Nov 19 04:20:58 2010 From: tundra at tundraware.com (Tim Daneliuk) Date: Thu, 18 Nov 2010 21:20:58 -0600 Subject: [ANN] tperimeter 1.112 Released And Available Message-ID: 'tperimeter' Version 1.112 is released and available at: http://www.tundraware.com/Software/tperimeter/ The last public release was 1.110 What's New ---------- The user can now leave either the service name or IP input field blank. A blank service name will default the IP address discovered in the http headers. This is almost always the correct address to open for remote access. Commercial licensing restrictions have been removed. There is no mandatory fee for use by for-profit, government, institutional organizations or individual users. What Is 'tperimeter'? --------------------- Have you ever been away from the office and needed, say, ssh access to your system? Ooops - you can't do that because in your zealous pursuit of security, you set your TCP wrappers to prevent outside access to all but a select group of hosts. Worse still, everywhere you go, your local IP address changes so there is no practical way to open up the wrappers for this situation. 'tperimeter' is a dynamic TCP wrapper control system that gives you (limited) remote control of your TCP wrapper configuration. It does this via a web interface that you've (hopefully) secured with https/SSL. You just log in, specify your current IP address and one of the services you want to access. 'tperimeter' will then briefly open a hole in your wrappers long enough to let you in. It then automatically closes the hole again. Voila! Remote access to your system, wherever you are. You get much of the facility of a VPN or so-called "port knocking" without most of the aggravation. As a side benefit, 'tperimeter' will also simplify management of your standard /etc/hosts.allow TCP wrapper control file. 'tperimeter' is written in python, shell script, and html. It is very small and easy to maintain. It was developed and tested on FreeBSD 4.x/8.x, and apache 1.x/2.x, but should run with very minor (or no) modification on most Unix-like systems like Linux or Mac OS X hosts. It comes complete with documentation in html, pdf, dvi, and Postscript formats. There is no licensing fee any use, commercial, institutional, or personal. -- ---------------------------------------------------------------------------- Tim Daneliuk tundra at tundraware.com PGP Key: http://www.tundraware.com/PGP/ From greg.ewing at canterbury.ac.nz Fri Nov 19 09:48:58 2010 From: greg.ewing at canterbury.ac.nz (Greg Ewing) Date: Fri, 19 Nov 2010 21:48:58 +1300 Subject: ANN: PyGUI 2.3.1 Message-ID: <4CE639FA.9090802@canterbury.ac.nz> PyGUI 2.3.1 is available: http://www.cosc.canterbury.ac.nz/greg.ewing/python_gui/ This version incorporates a modification that I hope will improve the behaviour of ScrollableViews on Windows with pywin32 builds later than 212. (There are still problems with it, though. If the Scrollable View doesn't fill all of its containing window, the scroll bars get repositioned incorrectly when the window is resized. This appears to be entirely MFC's doing. I really will have to get away from using CView altogether.) This version also fixes a problem on Windows whereby dismissing a modal dialog with the Return key could spuriously activate a button in another window. What is PyGUI? -------------- PyGUI is a cross-platform GUI toolkit designed to be lightweight and have a highly Pythonic API. -- Gregory Ewing greg.ewing at canterbury.ac.nz http://www.cosc.canterbury.ac.nz/greg.ewing/ From Andreas.Schreiber at dlr.de Fri Nov 19 23:32:23 2010 From: Andreas.Schreiber at dlr.de (Andreas.Schreiber at dlr.de) Date: Fri, 19 Nov 2010 22:32:23 +0000 Subject: [ANN] Call for Papers: Workshop Python for High Performance and Scientific Computing Message-ID: <64886ABF09B1924997D70320E02F7DDB03F1AE@DLREXMBX01.intra.dlr.de> Workshop Python for High Performance and Scientific Computing June 1-3, 2011, Tsukuba, Japan part of The International Conference on Computational Science (ICCS 2011) http://www.dlr.de/sc/iccs2011 =============== Call for Papers =============== Introduction ------------ Python is an accepted high-level programming language with a growing community in academia and industry. Beside its original use as a scripting language for web applications, today Python is a general-purpose language adopted by many scientific applications like CFD, bio molecular simulation, AI, scientific visualization etc. More and more industrial domains are turning towards it as well, such as robotics, semiconductor manufacturing, automotive solutions, telecommunication, computer graphics, and games. In all fields, the use of Python for scientific, high performance parallel, and distributed computing, as well as general scripted automation is increasing. Moreover, Python is well-suited for education in scientific computing. The workshop aims at bringing together researchers and practitioners from industry and academia using Python for all aspects of high performance and scientific computing. The goal is to present Python-based scientific applications and libraries, to discuss general topics regarding the use of Python (such as language design and performance issues), and to share experience using Python in scientific computing education. Topics ------ * Python-based scientific applications and libraries * High performance computing * Parallel Python-based programming languages * Scientific visualization * Scientific computing education * Python performance and language issues * Problem solving environments with Python * Performance analysis tools for Python application Papers/Submission ----------------- We invite you to submit a paper of up to 10 pages formatted according to the rules of Procedia Computer Science (http://www.elsevier.com/locate/inca/719435) via the ICCS 2011 conference submission system (http://www.iccs-meeting.org/iccs2011/papers/upload.php) selecting our workshop Python for High Performance and Scientific Computing in the drop-down menu. Important Dates --------------- Full paper submission: January 10, 2011 Notification of acceptance: February 20, 2011 Camera-ready papers: March 7, 2011 Program Committee ----------------- * Achim Basermann, German Aerospace Center, Germany * David Beazley, Dabeaz, LLC, USA * William E. Hart, Sandia National Laboratories, USA * Konrad Hinsen, Centre de Biophysique Mol?culaire, CNRS Orl?ans, France * Andreas Kl?ckner, New York University, USA * Maurice Ling, Singapore Polytechnic, Singapore * Stuart Mitchell, The University of Auckland, New Zealand * Mike M?ller, Python Academy, Germany * Travis Oliphant, Enthought, Inc., USA * Fernando P?rez, University of California, Berkeley, USA * Massimo Di Pierro, DePaul University, USA * Marc Poinot, ONERA, France * William Scullin, Argonne National Laboratory, USA * Ga?l Varoquaux, INRIA, France Workshop Organizers ------------------- * Chair: Andreas Schreiber, German Aerospace Center (DLR), Germany E-Mail: iccs2011 at dlr.de * Co-Chair: Guy K. Kloss, Auckland University of Technology, New Zealand -- Andreas Schreiber Head Distributed Systems and Component Software DLR (German Aerospace Center), Simulation and Software Technology Linder Hoehe, 51147 Cologne, Germany Tel: +49 (0)2203/601-2485 http://www.dlr.de/sc Fax: +49 (0)2203/601-12485 MSN: mailto:Andreas.Schreiber at dlr.de Mobile: +49 (0)173 5231013 ICQ# 324185855 DLR on Twitter: http://twitter.com/DLR_de From ralf.gommers at googlemail.com Sun Nov 21 08:10:17 2010 From: ralf.gommers at googlemail.com (Ralf Gommers) Date: Sun, 21 Nov 2010 15:10:17 +0800 Subject: ANN: NumPy 1.5.1 Message-ID: Hi, I am pleased to announce the availability of NumPy 1.5.1. NumPy is the fundamental package needed for scientific computing with Python. It contains: * a powerful N-dimensional array object * sophisticated (broadcasting) functions * basic linear algebra functions * basic Fourier transforms * sophisticated random number capabilities * tools for integrating Fortran code. Besides it's obvious scientific uses, NumPy can also be used as an efficient multi-dimensional container of generic data. Arbitrary data-types can be defined. This allows NumPy to seamlessly and speedily integrate with a wide-variety of databases. This bug-fix release comes almost 3 months after the 1.5.0 release, it contains no new features compared to 1.5.0. Binaries, sources and release notes can be found at https://sourceforge.net/projects/numpy/files/. Thank you to everyone who contributed to this release. Enjoy, The numpy developers. ========================= NumPy 1.5.1 Release Notes ========================= Numpy 1.5.1 is a bug-fix release with no new features compared to 1.5.0. Numpy source code location changed ============================== ==== Numpy has stopped using SVN as the version control system, and moved to Git. The development source code for Numpy can from now on be found at http://github.com/numpy/numpy Note on GCC versions ==================== On non-x86 platforms, Numpy can trigger a bug in the recent GCC compiler versions 4.5.0 and 4.5.1: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45967 We recommend not using these versions of GCC for compiling Numpy on these platforms. Bugs fixed ========== Of the following, #1605 is important for Cython modules. - #937: linalg: lstsq should always return real residual - #1196: lib: fix negative indices in s_ and index_exp - #1287: core: fix uint64 -> Python int cast - #1491: core: richcompare should return Py_NotImplemented when undefined - #1517: lib: close file handles after use in numpy.lib.npyio.* - #1605: core: ensure PEP 3118 buffers can be released in exception handler - #1617: core: fix clongdouble cast to Python complex() - #1625: core: fix detection for ``isfinite`` routine - #1626: core: fix compilation with Solaris 10 / Sun Studio 12.1 Scipy could not be built against Numpy 1.5.0 on OS X due to a numpy.distutils bug, #1399. This issue is fixed now. - #1399: distutils: use C arch flags for Fortran compilation on OS X. Python 3 specific; #1610 is important for any I/O: - #----: f2py: make f2py script runnable on Python 3 - #1604: distutils: potential infinite loop in numpy.distutils - #1609: core: use accelerated BLAS, when available - #1610: core: ensure tofile and fromfile maintain file handle positions From irmen.NOSPAM at xs4all.nl Mon Nov 22 00:55:08 2010 From: irmen.NOSPAM at xs4all.nl (Irmen de Jong) Date: Mon, 22 Nov 2010 00:55:08 +0100 Subject: Pyro 3.11 released Message-ID: <4ce9b160$0$81485$e4fe514c@news.xs4all.nl> Hi, Pyro 3.11 has been released! Pyro is a an advanced and powerful Distributed Object Technology system written entirely in Python, that is designed to be very easy to use. Have a look at http://www.xs4all.nl/~irmen/pyro3/ for more information. Highlights of this release are: - improved compatibility with Jython - fixed some threading problems regarding proxy connections - fixed a threading issue that could break COM calls - persistent mode nameserver improved As always the detailed changes are in the change log chapter in the manual. More info and download link available in PyPI: http://pypi.python.org/pypi/Pyro/ Enjoy, Irmen de Jong From anto.cuni at gmail.com Mon Nov 22 23:07:12 2010 From: anto.cuni at gmail.com (Antonio Cuni) Date: Mon, 22 Nov 2010 14:07:12 -0800 (PST) Subject: ANN: fancycompleter 0.2 Message-ID: <6a5a44bc-db6d-40f7-9aac-7118f9f2aced@a30g2000vbt.googlegroups.com> Hi, fancycompleter 0.2 has been released. http://bitbucket.org/antocuni/fancycompleter/src >From the README: fancycompleter is a module to improve your experience in Python by adding TAB completion to the interactive prompt. It is an extension of the stdlib's rlcompleter module. Features: * its best feature is that the completions are displayed in different colors, depending on their type. * To save space on screen, fancycompleter only shows the characters "after the dot". * If we press ```` at the beginning of the line, a real tab character is inserted, instead of trying to complete. This is useful when typing function bodies or multi-line statements at the prompt. * Unlike rlcompleter, fancycompleter **does** complete expressions containing dictionary or list indexing. For example, ``mydict['foo'].`` works (assuming that mydict is a dictionary and that it contains the key 'foo', of course :-)). * Starting from Python 2.6, is the completed name is a callable, rlcompleter automatically adds an open parenthesis ``(``. This is annoying in case we do not want to really call it, so fancycompleter disable this behaviour. Enjoy, Antonio Cuni From alice at gothcandy.com Wed Nov 24 04:41:01 2010 From: alice at gothcandy.com (=?utf-8?Q?Alice_Bevan=E2=80=93McGregor?=) Date: Tue, 23 Nov 2010 19:41:01 -0800 Subject: ANN: Marrow Suite Releases Message-ID: <2010112319410197447-alice@gothcandycom> The following packages have been released, each unit tested and/or tested by example (as applicable) on both Python 2.7 and 3.1. All packages, unless otherwise noted, are compatible with Python 2.6+ and 3.1+ and distributed under the MIT license. Versions < 1.0 are missing documentation and/or full unit tests. Documentation, where available, is accessible via the GitHub repository pages in the README.textile files which GitHub automatically renders. marrow.io 1.1 - Tornado IOLoop and IOStream fork with Python 3 support. License: Apache (Tornado's license.) Note: Tornado's documentation and unit tests apply to this package. - http://pypi.python.org/pypi/marrow.io/ - https://github.com/pulp/marrow.io/ marrow.server 0.9 - High-level asynchronous forking/threading Server and Protocol APIs. Note: The forking model is complete and functional, threading is still in development. - http://pypi.python.org/pypi/marrow.server/0.9 - https://github.com/pulp/marrow.server/ marrow.server.http 0.8 - High-performance HTTP/1.1 WSGI 2 server. Note: chunked transfer encoding is missing in this release. Warning: This server conforms to an altered version of PEP 444 and should be considered an experimental technical demonstration of proposed changes to the PEP. - http://pypi.python.org/pypi/marrow.server.http/0.8 - https://github.com/pulp/marrow.server.http/ marrow.util 1.0.1 - Commonly re-implemented Python utility functions, classes, and compatibility code. Compatibility: Python 2.5+, 3.1+ - http://pypi.python.org/pypi/marrow.util/1.0.1 - https://github.com/pulp/marrow.util/ marrow.wsgi.egress.compression 1.1 - GZip compression of WSGI 2 responses. Note: this is a fully functional, fully documented, 100% unit tested demonstration of the proposed filtering API for WSGI 2. - http://pypi.python.org/pypi/marrow.wsgi.egress.compression/1.1 - https://github.com/pulp/marrow.wsgi.egress.compression/ What is Marrow? A collection of related projects with a focus on simplicity, performance, clear separation of tasks, and dual Python 2.6+ / 3.1+ compatibility. For more information and a list of packages in development, see: - https://github.com/pulp/ Why re-invent the wheel? To help encourage web frameworks to adopt Python 3 the Marrow suite brute-forces the chicken-and-egg problem of library compatibility. Clean-room re-implementation of common WSGI middleware and associated utilities allows for lighter-weight code unencumbered by signifigant backwards-compatibility to be developed rapidly, quickly documented, and encourages test-centric development. Are these components production-ready? The short answer: no. marrow.io, being based on Tornado's published codebase is, as is marrow.util. The egress compression filter is, in theory, production ready (having complete documentation and 100% test coverage), though no server currently conforms to the WGSI 2 (PEP 444) API or WSGI 2 filtering API other than marrow.server.http, which is not production ready. It should be possible to adapt this egress filter to WSGI (PEP 333) without too much difficulty and utilize it in Python 2.6+ applications, however. Where do I report problems or request features? Each project has its own issue tracker hosted on GitHub. Please see the GitHub link for each package. From sridharr at activestate.com Thu Nov 25 07:09:09 2010 From: sridharr at activestate.com (Sridhar Ratnakumar) Date: Wed, 24 Nov 2010 22:09:09 -0800 Subject: ANN: PyPM Index - build notification by author; import data In-Reply-To: <4CDB4201.3070505@activestate.com> References: <4CDB4201.3070505@activestate.com> Message-ID: <4CEDFD85.5070409@activestate.com> Hi, There are, now, a couple more features to the previously announced PyPM Index that I think would be of interest if you are a developer of Python packages on PyPI. 1. an RSS feed for each author that shows the recently failing builds (eg: to identify bugs in releases) 2. The "import" feature shows if multiple packages provide the same import (eg: site-packages/tests) ... and, map packages to imports and vice-versa. See the "import conflicts" section for interesting set of cases. For more details, see my blog post: http://www.activestate.com/blog/2010/11/python-pypm-index-author-build-notification-imports-recipes-integration -- Sridhar Ratnakumar Python Developer ActiveState, The Dynamic Language Experts http://www.activestate.com/ On 11/10/2010 5:08 PM, Sridhar Ratnakumar wrote: > Hi, > > I'd like to announce the availability of PyPM Index - frontend to > browse/search Python packages available in the PyPM repository: > > http://code.activestate.com/pypm/ > > The site also has some nifty features that, I think, may be of use to > package authors: > > 1. Author pages > 2. Build RSS notification (released with a setup.py bug?) > 3. Dependency information > > For more details, see this blog post: > http://www.activestate.com/blog/2010/11/pypm-index-python-developers > From lkcl at lkcl.net Thu Nov 25 09:09:09 2010 From: lkcl at lkcl.net (Luke Kenneth Casson Leighton) Date: Thu, 25 Nov 2010 08:09:09 +0000 Subject: [ANN] PythonWebkit bindings for WebkitDFB Message-ID: WebkitDFB is an experimental port to allow the webkit web browser engine to use DirectFB (http://directfb.org). It is lightning-quick to start up (no large widget set to load), yet has the potential to provide full HTML5 functionality. The PythonWebkit project, http://www.gnu.org/software/pythonwebkit brings 300+ DOM objects and 2,000+ fully W3C-compliant python-based DOM functions to webkit, making python effectively a peer of javascript (doc.body.style, getElementsByTagName, appendChild, setTimeout, XMLHttpRequest, onclick etc.) These two projects have been brought together in the same source repository. If startup time and CPU usage is important (as it is on embedded systems) then please do consider helping with WebkitDFB by funding its ongoing development and/or helping Denis out. If startup time and CPU usage and _python_ are important... :) in this rather short announcement, it's easy to miss the significance: yes, webkit the web browser engine, directfb the direct framebuffer engine, and python the utterly cool and beautiful programming language have been combined into the same package and sentence. more information at http://www.gnu.org/software/pythonwebkit. l. From holger at merlinux.eu Thu Nov 25 18:03:42 2010 From: holger at merlinux.eu (holger krekel) Date: Thu, 25 Nov 2010 18:03:42 +0100 Subject: execnet-1.0.9: small refinements Message-ID: <20101125170342.GZ1009@trillke.net> Hi all, just released execnet-1.0.9, the rapid multi-Python deployment library. 1.0. contains some small additions and refinements, mostly implemented by Ronny Pfannschmidt. See the docs fore more info: http://codespeak.net/execnet cheers, holger 1.0.9 -------------------------------- - add gw.reconfigure() to configure per gateway options. Currently supported: py2str_as_py3str and py3str_as_py2str to configure string deserialization - channel.makefile() objects now have a isatty() returning False - group.allocate_id(spec) allows to early-determine an (automatic) id - internal refactorings and cleanups (thanks Ronny Pfannschmidt): - refactor message types into received handler functions - refactor b(chr(opcode)) to bchr(opcode) - reorder Message ctor args, rename msgtype to msgcode - refactor gateway.send to take message's init args instead of a message - inline and remove Message.writeto/readfrom - refactor collection loading to avoid the indirection over tuple - remove the unused NamedThreadPool From holger at merlinux.eu Thu Nov 25 21:39:00 2010 From: holger at merlinux.eu (holger krekel) Date: Thu, 25 Nov 2010 21:39:00 +0100 Subject: pytest-2.0: asserts++, unittest++, reporting++, config++, docs++ Message-ID: <20101125203900.GC1009@trillke.net> py.test 2.0.0: asserts++, unittest++, reporting++, config++, docs++ =========================================================================== Welcome to pytest-2.0.0, a major new release of "py.test", the rapid easy Python testing tool. There are many new features and enhancements, see below for summary and detailed lists. A lot of long-deprecated code has been removed, resulting in a much smaller and cleaner implementation. See the new docs with examples here: http://pytest.org/ I also just released pytest-xdist-1.5, the plugin for distributed testing - which was successfully used to speed up a real-life unittest suite 4-times written for (twisted) trial, thanks to the generic unittest integration improvements. See here for docs and install instructions: http://pypi.python.org/pypi?:action=display&name=pytest-xdist A note on packaging: pytest used to part of the "py" distribution up until version py-1.3.4 but this has changed now: pytest-2.0.0 only contains py.test related code and is expected to be backward-compatible to existing test code. If you want to install pytest, just type one of:: pip install -U pytest easy_install -U pytest Many thanks to all issue reporters and people asking questions or complaining. Particular thanks to Floris Bruynooghe and Ronny Pfannschmidt for their great coding contributions and many others for feedback and help. best, holger krekel New Features ----------------------- - new invocations through Python interpreter and from Python:: python -m pytest # on all pythons >= 2.5 or from a python program:: import pytest ; pytest.main(arglist, pluginlist) see http://pytest.org/2.0.0/usage.html for details. - new and better reporting information in assert expressions if comparing lists, sequences or strings. see http://pytest.org/2.0.0/assert.html#newreport - new configuration through ini-files (setup.cfg or tox.ini recognized), for example:: [pytest] norecursedirs = .hg data* # don't ever recurse in such dirs addopts = -x --pyargs # add these command line options by default see http://pytest.org/2.0.0/customize.html - improved standard unittest support. In general py.test should now better be able to run custom unittest.TestCases like twisted trial or Django based TestCases. Also you can now run the tests of an installed 'unittest' package with py.test:: py.test --pyargs unittest - new "-q" option which decreases verbosity and prints a more nose/unittest-style "dot" output. - many many more detailed improvements details Fixes ----------------------- - fix issue126 - introduce py.test.set_trace() to trace execution via PDB during the running of tests even if capturing is ongoing. - fix issue124 - make reporting more resilient against tests opening files on filedescriptor 1 (stdout). - fix issue109 - sibling conftest.py files will not be loaded. (and Directory collectors cannot be customized anymore from a Directory's conftest.py - this needs to happen at least one level up). - fix issue88 (finding custom test nodes from command line arg) - fix issue93 stdout/stderr is captured while importing conftest.py - fix bug: unittest collected functions now also can have "pytestmark" applied at class/module level Important Notes -------------------- * The usual way in pre-2.0 times to use py.test in python code was to import "py" and then e.g. use "py.test.raises" for the helper. This remains valid and is not planned to be deprecated. However, in most examples and internal code you'll find "import pytest" and "pytest.raises" used as the recommended default way. * pytest now first performs collection of the complete test suite before running any test. This changes for example the semantics of when pytest_collectstart/pytest_collectreport are called. Some plugins may need upgrading. * The pytest package consists of a 400 LOC core.py and about 20 builtin plugins, summing up to roughly 5000 LOCs, including docstrings. To be fair, it also uses generic code from the "pylib", and the new "py" package to help with filesystem and introspection/code manipulation. (Incompatible) Removals ----------------------------- - py.test.config is now only available if you are in a test run. - the following (mostly already deprecated) functionality was removed: - removed support for Module/Class/... collection node definitions in conftest.py files. They will cause nothing special. - removed support for calling the pre-1.0 collection API of "run()" and "join" - removed reading option values from conftest.py files or env variables. This can now be done much much better and easier through the ini-file mechanism and the "addopts" entry in particular. - removed the "disabled" attribute in test classes. Use the skipping and pytestmark mechanism to skip or xfail a test class. - py.test.collect.Directory does not exist anymore and it is not possible to provide an own "Directory" object. If you have used this and don't know what to do, get in contact. We'll figure someting out. Note that pytest_collect_directory() is still called but any return value will be ignored. This allows to keep old code working that performed for example "py.test.skip()" in collect() to prevent recursion into directory trees if a certain dependency or command line option is missing. see :ref:`changelog` for more detailed changes. -- From holger at merlinux.eu Thu Nov 25 21:54:36 2010 From: holger at merlinux.eu (holger krekel) Date: Thu, 25 Nov 2010 21:54:36 +0100 Subject: tox-0.9: better CI bootstrapping / custom PyPI index servers Message-ID: <20101125205436.GD1009@trillke.net> Hi all, i just released tox-0.9, the generic virtualenv-using test integration automation tool (tm). This release brings a new zero-install way to deploy tox and your test suite on Hudson slaves. Apart from one or more Python interpreters you do not need anything on the slave side, see here for details: http://codespeak.net/tox/example/hudson.html#zero-installation-for-slaves Moreover, you can now work with multiple PyPI index servers which is very nice if you (want to) operate your own in-company servers, see here for details: http://codespeak.net/tox/example/basic.html#using-a-different-default-pypi-url Btw, what kind of custom servers are you successfully using? (tell me on twitter @hpk42 if you like). Oh, and for basic info just go to http://codespeak.net/tox if that wasn't clear yet. have fun, holger Changelog for 0.9 ----------------------- - added support for working with different and multiple PYPI indexservers. - fix pip-installation mixups by always unsetting PIP_RESPECT_VIRTUALENV (thanks Armin Ronacher) - issue1: Add a toxbootstrap.py script for tox, thanks to Sridhar Ratnakumar - new option: -r|--recreate to force recreation of virtualenv - show logfile content if there is an error (makes CI output more readable) - depend on py>=1.4.0 which does not contain or install the py.test anymore which is now a separate distribution "pytest". From geoff.bache at gmail.com Fri Nov 26 14:12:12 2010 From: geoff.bache at gmail.com (Geoff Bache) Date: Fri, 26 Nov 2010 14:12:12 +0100 Subject: PyUseCase 3.4.1: Python GUI test tool Message-ID: Hi all, 3.4.1 is mostly bugfixes related to PyGTK, although some internal reorganisation and minor API changes are also included. Also proof of concept support for Hildon extension to PyGTK, the GUI used on Nokia's Maemo phones and restored support for Python 2.5 which was dropped in 3.4 and then regretted. Regards, Geoff Bache A bit more detail: PyUseCase is an unconventional GUI testing tool for PyGTK,Tkinter and wxPython, along with a framework for testing Python GUIs in general. Instead of recording GUI mechanics directly, it asks the user for descriptive names and hence builds up a "domain language" along with a "UI map file" that translates this language into actions on the current GUI widgets. The point is to reduce coupling, allow very expressive tests, and ensure that GUI changes mean changing the UI map file but not all the tests. Instead of an "assertion" mechanism, it auto-generates a log of the GUI appearance and changes to it. The point is then to use that as a baseline for text-based testing, using e.g. TextTest. It also includes support for instrumenting code so that "waits" can be recorded, making it far easier for a tester to record correctly synchronized tests without having to explicitly plan for this. Homepage: http://www.texttest.org/index.php?page=ui_testing Download: http://sourceforge.net/projects/pyusecase Mailing list: https://lists.sourceforge.net/lists/listinfo/pyusecase-users (new) Bugs: https://bugs.launchpad.net/pyusecase/ Source: https://code.launchpad.net/pyusecase/ From fijall at gmail.com Fri Nov 26 19:23:45 2010 From: fijall at gmail.com (Maciej Fijalkowski) Date: Fri, 26 Nov 2010 20:23:45 +0200 Subject: PyPy 1.4 released Message-ID: =============================== PyPy 1.4: Ouroboros in practice =============================== We're pleased to announce the 1.4 release of PyPy. This is a major breakthrough in our long journey, as PyPy 1.4 is the first PyPy release that can translate itself faster than CPython. Starting today, we are using PyPy more for our every-day development. So may you :) You can download it here: http://pypy.org/download.html What is PyPy ============ PyPy is a very compliant Python interpreter, almost a drop-in replacement for CPython. It's fast (`pypy 1.4 and cpython 2.6`_ comparison) Among its new features, this release includes numerous performance improvements (which made fast self-hosting possible), a 64-bit JIT backend, as well as serious stabilization. As of now, we can consider the 32-bit and 64-bit linux versions of PyPy stable enough to run `in production`_. Numerous speed achievements are described on `our blog`_. Normalized speed charts comparing `pypy 1.4 and pypy 1.3`_ as well as `pypy 1.4 and cpython 2.6`_ are available on benchmark website. For the impatient: yes, we got a lot faster! More highlights =============== * PyPy's built-in Just-in-Time compiler is fully transparent and automatically generated; it now also has very reasonable memory requirements. The total memory used by a very complex and long-running process (translating PyPy itself) is within 1.5x to at most 2x the memory needed by CPython, for a speed-up of 2x. * More compact instances. All instances are as compact as if they had ``__slots__``. This can give programs a big gain in memory. (In the example of translation above, we already have carefully placed ``__slots__``, so there is no extra win.) * `Virtualenv support`_: now PyPy is fully compatible with virtualenv_: note that to use it, you need a recent version of virtualenv (>= 1.5). * Faster (and JITted) regular expressions - huge boost in speeding up the `re` module. * Other speed improvements, like JITted calls to functions like map(). .. _virtualenv: http://pypi.python.org/pypi/virtualenv .. _`Virtualenv support`: http://morepypy.blogspot.com/2010/08/using-virtualenv-with-pypy.html .. _`in production`: http://morepypy.blogspot.com/2010/11/running-large-radio-telescope-software.html .. _`our blog`: http://morepypy.blogspot.com .. _`pypy 1.4 and pypy 1.3`: http://speed.pypy.org/comparison/?exe=1%2B41,1%2B172&ben=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20&env=1&hor=false&bas=1%2B41&chart=normal+bars .. _`pypy 1.4 and cpython 2.6`: http://speed.pypy.org/comparison/?exe=2%2B35,1%2B172&ben=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20&env=1&hor=false&bas=2%2B35&chart=normal+bars Cheers, Carl Friedrich Bolz, Antonio Cuni, Maciej Fijalkowski, Amaury Forgeot d'Arc, Armin Rigo and the PyPy team From tw55413 at gmail.com Sat Nov 27 14:00:57 2010 From: tw55413 at gmail.com (erikj) Date: Sat, 27 Nov 2010 05:00:57 -0800 (PST) Subject: Camelot 10.11.27 : leverage Python, QT and SQLAlchemy Message-ID: <72a7fa60-c9ed-4614-8d5b-a826ef285178@c39g2000yqi.googlegroups.com> Dear all, Camelot 10.11.27 has been released. Camelot is an open source RAD framework that leverages Python, Sqlalchemy and Qt to build database applications. Inspired by the Django admin interface, Camelot allows a developer to define the database model and Camelot will create the views. Homepage : www.python-camelot.com Demonstration video : http://www.youtube.com/watch?v=HZ5i257N6cc Regards, Erik New in this release : - tab based desktop - faster table view - improved search queries - much more dynamic field attributes : tooltip, background_color, editable, choices, prefix, suffix, arrow - SQLAlchemy 0.6.x support - Matplotlib integration - move to new style signal/slot connections - frozen columns in a table view From benjamin at python.org Sun Nov 28 05:33:43 2010 From: benjamin at python.org (Benjamin Peterson) Date: Sat, 27 Nov 2010 22:33:43 -0600 Subject: [RELEASED] Python 2.7.1 Message-ID: On behalf of the Python development team, I'm happy as a clam to announce the immediate availability of Python 2.7.1. 2.7 includes many features that were first released in Python 3.1. The faster io module, the new nested with statement syntax, improved float repr, set literals, dictionary views, and the memoryview object have been backported from 3.1. Other features include an ordered dictionary implementation, unittests improvements, a new sysconfig module, auto-numbering of fields in the str/unicode format method, and support for ttk Tile in Tkinter. For a more extensive list of changes in 2.7, see http://doc.python.org/dev/whatsnew/2.7.html or Misc/NEWS in the Python distribution. To download Python 2.7.1 visit: http://www.python.org/download/releases/2.7.1/ The 2.7.1 changelog is at: http://svn.python.org/projects/python/tags/r271/Misc/NEWS 2.7 documentation can be found at: http://docs.python.org/2.7/ This is a production release. Please report any bugs you find to the bug tracker: http://bugs.python.org/ Enjoy! -- Benjamin Peterson Release Manager benjamin at python.org (on behalf of the entire python-dev team and 2.7.1's contributors) From benjamin at python.org Sun Nov 28 05:34:42 2010 From: benjamin at python.org (Benjamin Peterson) Date: Sat, 27 Nov 2010 22:34:42 -0600 Subject: [RELEASED] Python 3.1.3 Message-ID: On behalf of the Python development team, I'm happy as a lark to announce the third bugfix release for the Python 3.1 series, Python 3.1.3. This bug fix release features numerous bug fixes and documentation improvements over 3.1.2. The Python 3.1 version series focuses on the stabilization and optimization of the features and changes that Python 3.0 introduced. For example, the new I/O system has been rewritten in C for speed. File system APIs that use unicode strings now handle paths with undecodable bytes in them. Other features include an ordered dictionary implementation, a condensed syntax for nested with statements, and support for ttk Tile in Tkinter. For a more extensive list of changes in 3.1, see http://doc.python.org/3.1/whatsnew/3.1.html or Misc/NEWS in the Python distribution. This is a production release. To download Python 3.1.3 visit: http://www.python.org/download/releases/3.1.3/ A list of changes in 3.1.3 can be found here: http://svn.python.org/projects/python/tags/r313/Misc/NEWS The 3.1 documentation can be found at: http://docs.python.org/3.1 Bugs can always be reported to: http://bugs.python.org Enjoy! -- Benjamin Peterson Release Manager benjamin at python.org (on behalf of the entire python-dev team and 3.1.3's contributors) From cthedot at gmail.com Sun Nov 28 18:52:15 2010 From: cthedot at gmail.com (Christof) Date: Sun, 28 Nov 2010 18:52:15 +0100 Subject: ANN: cssutils 0.9.7final Message-ID: what is it ---------- A Python package to parse and build CSS Cascading Style Sheets. (Not a renderer though!) about this release ------------------ 0.9.7 is the final 0.9.7 release. Work on 0.9.8 has begun. main changes ------------ No real change but CSSValue and related classes will not be supported in 0.9.8 anymore. 0.9.8 will feature a simplified API. Please follow its development if you need any currently supported or new feature. Thanks! license ------- cssutils is published under the LGPL version 3 or later, see http://cthedot.de/cssutils/ If you have other licensing needs please let me know. download -------- For download options see http://cthedot.de/cssutils/ cssutils needs Python 2.4 and higher or Jython 2.5 and higher (tested with Python 2.7(x64), 2.6.5(x64), 2.5.4(x32), 2.4.4(x32) and Jython 2.5.1 on Win7x64 only) Bug reports (via Google code), comments, etc are very much appreciated! Thanks. Christof From a.cavallo at cavallinux.eu Sun Nov 28 19:48:15 2010 From: a.cavallo at cavallinux.eu (Antonio Cavallo) Date: Sun, 28 Nov 2010 19:48:15 +0100 Subject: New python pyvm release Message-ID: <17F29854-A8C1-4DF1-A4DD-C1FB2C26F6B7@cavallinux.eu> Dear All, the python pyvm project aims to provide validated binary builds for the python svn source (python 2.7x) as often as possible. Each build provides rpm for: CentOS 5 (i586, x86_64) Fedora 12 (i586, x86_64) Mandriva 2008 (i586, x86_64) Mandriva 2009.1 (i586, x86_64) Mandriva 2010 (i586, x86_64) OpenSuSE 11.1 (i586, x86_64) OpenSuSE 11.2 (i586, x86_64) OpenSuSE 11.3 (i586, x86_64) OpenSuSE Factory (i586, x86_64) Red Hat Enterprise Linux 4 (i586, x86_64) Red Hat Enterprise Linux 5 (i586, x86_64) SuSE Enterprise Linux 9 (i586, x86_64) SuSE Enterprise Linux 10 (i586, x86_64) SuSE Enterprise Linux 11 (i586, x86_64) It integrates the testing stage both for python and for the runtime. The homepage: http://pyvm.sf.net Download binaries: http://download.opensuse.org/repositories/home:/cavallo71:/opt-python-interpreters/ News in this release: - Web site clean up - Tutorial to create python modules Regards, Antonio From andrew.collette at gmail.com Mon Nov 29 02:46:32 2010 From: andrew.collette at gmail.com (Andrew Collette) Date: Sun, 28 Nov 2010 18:46:32 -0700 Subject: ANN: HDF5 for Python (h5py) 1.3.1 BETA Message-ID: HDF5 for Python (h5py) 1.3.1 *BETA* =================================== HDF5 for Python 1.3.1-beta is now available! This release includes numerous bugfixes and performance improvements, along with support for new versions of HDF5 and Python. In particular, HDF5 1.8.5 is now supported, along with Python 2.7 on Windows. The beta will be available for approximately two weeks. Bug reports and comments are more than welcome, either at the h5py mailing list (h5py at googlegroups) or directly via the bug tracker at h5py.googlecode.com. What is h5py? ------------- HDF5 for Python (h5py) is a general-purpose Python interface to the Hierarchical Data Format library, version 5. HDF5 is a mature scientific software library originally developed at NCSA, designed for the fast, flexible storage of enormous amounts of data. >From a Python programmer's perspective, HDF5 provides a robust way to store data, organized by name in a tree-like fashion. You can create datasets (arrays on disk) hundreds of gigabytes in size, and perform random-access I/O on desired sections. Datasets are organized in a filesystem-like hierarchy using containers called "groups", and accesed using the tradional POSIX /path/to/resource syntax. In addition to providing interoperability with existing HDF5 datasets and platforms, h5py is a convienient way to store and retrieve arbitrary NumPy data and metadata. HDF5 datasets and groups are presented as "array-like" and "dictionary-like" objects in order to make best use of existing experience. For example, dataset I/O is done with NumPy-style slicing, and group access is via indexing with string keys. Standard Python exceptions (KeyError, etc) are raised in response to underlying HDF5 errors. Highlights in 1.3.1 ------------------- - Windows binaries now built against NumPy 1.5 - Fix for new identifier behavior means HDF5 1.8.5 is now supported - Workaround for a serious performance bug in HDF5 relating to chunked data - Fixed File reference count glitch which caused some one-liners to fail - Modified atexit hook which conflicted with PyTables - Support for Cython 0.13 - Fixed conflict between IPython completer and multiprocessing module Where to get it & where to complain ----------------------------------- * Main website, documentation: http://h5py.alfven.org * Downloads, bug tracker: http://h5py.googlecode.com * Mailing list: h5py at googlegroups.com Requires -------- * Linux, Mac OS-X or Windows * Python 2.5, 2.6 or 2.7 * NumPy 1.0.3 or later * HDF5 1.6.5 or later (including 1.8); HDF5 is included with the Windows version. From sridharr at activestate.com Mon Nov 29 04:38:32 2010 From: sridharr at activestate.com (Sridhar Ratnakumar) Date: Sun, 28 Nov 2010 19:38:32 -0800 Subject: ANN: ActivePython 2.6.6.17 is now available Message-ID: ActiveState is pleased to announce ActivePython 2.6.6.17, a complete, ready-to-install binary distribution of Python 2.6. http://www.activestate.com/activepython/downloads What's New in ActivePython-2.6.6.17 =================================== *Release date: 19-Nov-2010* New Features & Upgrades ----------------------- - Security upgrade to openssl-0.9.8p - Upgrade to PyPM 1.2.5; noteworthy changes: - New command 'pypm log' to view log entries for last operation - depgraph bug fixes (Bug #88664, #88825) - Fix: ignore empty lines in requirements.txt - Ignore comments (starting with #) in the requirements file What's New in ActivePythonEE-2.6.6.16 ===================================== *Release date: 05-Nov-2010* New Features & Upgrades ----------------------- - Upgrade to PyPM 1.2.3; noteworthy changes: - Faster startup (performance) especially on Windows. - Rewrite of an improved dependency algorithm (#88038) - install/uninstall now accepts the --nodeps option - 'pypm install ' to directly download and install a .pypm file - 'pypm show' shows other installed packages depending on the shown package - 'pypm show' accepts --rdepends to show the list of dependents - 'pypm show' shows extra dependencies (for use in the 'install' cmd) - 'pypm show' lists all available versions in the repository - 'pypm freeze' to dump installed packages as requirements (like 'pip freeze') - Support for pip-stye requirements file ('pypm install -r requirements.txt') - Bug #87764: 'pypm upgrade' will not error out for missing packages - Bug #87902: fix infinite loops with cyclic package dependencies (eg: plone) - Bug #88370: Handle file-overwrite conflicts (implement --force) - Upgraded the following packages: - Distribute-0.6.14 - pip-0.8.1 - SQLAlchemy-0.6.5 - virtualenv-1.5.1 What is ActivePython? ===================== ActivePython is ActiveState's binary distribution of Python. Builds for Windows, Mac OS X, Linux are made freely available. Solaris, HP-UX and AIX builds, and access to older versions are available in ActivePython Business, Enterprise and OEM editions: http://www.activestate.com/python ActivePython includes the Python core and the many core extensions: zlib and bzip2 for data compression, the Berkeley DB (bsddb) and SQLite (sqlite3) database libraries, OpenSSL bindings for HTTPS support, the Tix GUI widgets for Tkinter, ElementTree for XML processing, ctypes (on supported platforms) for low-level library access, and others. The Windows distribution ships with PyWin32 -- a suite of Windows tools developed by Mark Hammond, including bindings to the Win32 API and Windows COM. ActivePython 2.6, 2.7 and 3.1 also include a binary package manager for Python (PyPM) that can be used to install packages much easily. For example: C:\>pypm install mysql-python [...] C:\>python >>> import MySQLdb >>> See this page for full details: http://docs.activestate.com/activepython/2.6/whatsincluded.html As well, ActivePython ships with a wealth of documentation for both new and experienced Python programmers. In addition to the core Python docs, ActivePython includes the "What's New in Python" series, "Dive into Python", the Python FAQs & HOWTOs, and the Python Enhancement Proposals (PEPs). An online version of the docs can be found here: http://docs.activestate.com/activepython/2.6/ We would welcome any and all feedback to: activepython-feedback at activestate.com Please file bugs against ActivePython at: http://bugs.activestate.com/enter_bug.cgi?product=ActivePython Supported Platforms =================== ActivePython is available for the following platforms: - Windows/x86 (32-bit) - Windows/x64 (64-bit) (aka "AMD64") - Mac OS X (32-bit and 64-bit; 10.5+) - Linux/x86 (32-bit) - Linux/x86_64 (64-bit) (aka "AMD64") - Solaris/SPARC (32-bit and 64-bit) (Business, Enterprise or OEM edition only) - Solaris/x86 (32-bit) (Business, Enterprise or OEM edition only) - HP-UX/PA-RISC (32-bit) (Business, Enterprise or OEM edition only) - HP-UX/IA-64 (32-bit and 64-bit) (Enterprise or OEM edition only) - AIX/PowerPC (32-bit and 64-bit) (Business, Enterprise or OEM edition only) More information about the Business Edition can be found here: http://www.activestate.com/business-edition Custom builds are available in the Enterprise Edition: http://www.activestate.com/enterprise-edition Thanks, and enjoy! The Python Team -- Sridhar Ratnakumar Python Developer ActiveState, The Dynamic Language Experts sridharr at activestate.com http://www.activestate.com Get insights on Open Source and Dynamic Languages at www.activestate.com/blog From Pierre.RAYBAUT at CEA.FR Mon Nov 29 12:39:12 2010 From: Pierre.RAYBAUT at CEA.FR (Pierre.RAYBAUT at CEA.FR) Date: Mon, 29 Nov 2010 12:39:12 +0100 Subject: [ANN] guidata v1.2.4 Message-ID: Hi all, I am pleased to announce that `guidata` v1.2.4 has been released. More than a bug fix release, this version of `guiqwt` includes a brand new documentation with examples, API reference, etc.: http://packages.python.org/guidata/ Based on the Qt Python binding module PyQt4, guidata is a Python library generating graphical user interfaces for easy dataset editing and display. It also provides helpers and application development tools for PyQt4. guidata also provides the following features: * guidata.qthelpers: PyQt4 helpers * guidata.disthelpers: py2exe helpers * guidata.userconfig: .ini configuration management helpers (based on Python standard module ConfigParser) * guidata.configtools: library/application data management * guidata.gettext_helpers: translation helpers (based on the GNU tool gettext) * guidata.guitest: automatic GUI-based test launcher * guidata.utils: miscelleneous utilities guidata has been successfully tested on GNU/Linux and Windows platforms. Python package index page: http://pypi.python.org/pypi/guidata/ Documentation, screenshots: http://packages.python.org/guidata/ Downloads (source + Python(x,y) plugin): http://sourceforge.net/projects/guidata/ Cheers, Pierre --- Dr. Pierre Raybaut CEA - Commissariat ? l'Energie Atomique et aux Energies Alternatives From Pierre.RAYBAUT at CEA.FR Mon Nov 29 12:41:11 2010 From: Pierre.RAYBAUT at CEA.FR (Pierre.RAYBAUT at CEA.FR) Date: Mon, 29 Nov 2010 12:41:11 +0100 Subject: [ANN] guiqwt v2.0.7 Message-ID: Hi all, I am pleased to announce that `guiqwt` v2.0.7 has been released. More than a bug fix release, this version of `guiqwt` includes a brand new documentation with examples, API reference, etc.: http://packages.python.org/guiqwt/ Based on PyQwt (plotting widgets for PyQt4 graphical user interfaces) and on the scientific modules NumPy and SciPy, guiqwt is a Python library providing efficient 2D data-plotting features (curve/image visualization and related tools) for interactive computing and signal/image processing application development. When compared to the excellent module `matplotlib`, the main advantage of `guiqwt` is performance: see http://packages.python.org/guiqwt/overview.html#performances. But `guiqwt` is more than a plotting library; it also provides: * Helper functions for data processing: see the example http://packages.python.org/guiqwt/examples.html#curve-fitting * Framework for signal/image processing application development: see http://packages.python.org/guiqwt/examples.html * And many other features like making executable Windows programs easily (py2exe helpers): see http://packages.python.org/guiqwt/disthelpers.html guiqwt plotting features are the following: guiqwt.pyplot: equivalent to matplotlib's pyplot module (pylab) supported plot items: * curves, error bar curves and 1-D histograms * images (RGB images are not supported), images with non-linear x/y scales, images with specified pixel size (e.g. loaded from DICOM files), 2-D histograms, pseudo-color images (pcolor) * labels, curve plot legends * shapes: polygon, polylines, rectangle, circle, ellipse and segment * annotated shapes (shapes with labels showing position and dimensions): rectangle with center position and size, circle with center position and diameter, ellipse with center position and diameters (these items are very useful to measure things directly on displayed images) curves, images and shapes: * multiple object selection for moving objects or editing their properties through automatically generated dialog boxes (guidata) * item list panel: move objects from foreground to background, show/hide objects, remove objects, ... * customizable aspect ratio * a lot of ready-to-use tools: plot canvas export to image file, image snapshot, image rectangular filter, etc. curves: * interval selection tools with labels showing results of computing on selected area * curve fitting tool with automatic fit, manual fit with sliders, ... images: * contrast adjustment panel: select the LUT by moving a range selection object on the image levels histogram, eliminate outliers, ... * X-axis and Y-axis cross-sections: support for multiple images, average cross-section tool on a rectangular area, ... * apply any affine transform to displayed images in real-time (rotation, magnification, translation, horizontal/vertical flip, ...) application development helpers: * ready-to-use curve and image plot widgets and dialog boxes * load/save graphical objects (curves, images, shapes) * a lot of test scripts which demonstrate guiqwt features guiqwt has been successfully tested on GNU/Linux and Windows platforms. Python package index page: http://pypi.python.org/pypi/guiqwt/ Documentation, screenshots: http://packages.python.org/guiqwt/ Downloads (source + Python(x,y) plugin): http://sourceforge.net/projects/guiqwt/ Cheers, Pierre --- Dr. Pierre Raybaut CEA - Commissariat ? l'Energie Atomique et aux Energies Alternatives From holger at merlinux.eu Mon Nov 29 16:52:34 2010 From: holger at merlinux.eu (holger krekel) Date: Mon, 29 Nov 2010 16:52:34 +0100 Subject: py-1.4.0: cross python lib for localpath/io/dynamic/... code functionality Message-ID: <20101129155234.GU1009@trillke.net> py-1.4.0: cross-python lib for path, code, io, ... manipulations =========================================================================== "py" is a small library comprising APIs for filesystem and svn path manipulations, dynamic code construction and introspection, a Py2/Py3 compatibility namespace ("py.builtin"), IO capturing, terminal colored printing (on windows and linux), ini-file parsing and a lazy import mechanism. It runs unmodified on all Python interpreters compatible to Python2.4 up until Python 3.2. The general goal with "py" is to provide stable APIs for some common tasks that are continously tested against many Python interpreters and thus also to help transition. Here are some docs: http://pylib.org NOTE: The prior py-1.3.X versions contained "py.test" which now comes as its own separate "pytest" distribution and was just released as "pytest-2.0.0", see here for the revamped docs: http://pytest.org And "py.cleanup|py.lookup|py.countloc" etc. helpers are now part of the pycmd distribution, see http://pypi.python.org/pypi/pycmd This makes "py-1.4.0" a simple library which does not install any command line utilities anymore. cheers, holger From holger at merlinux.eu Mon Nov 29 16:54:50 2010 From: holger at merlinux.eu (holger krekel) Date: Mon, 29 Nov 2010 16:54:50 +0100 Subject: pycmd-1.0: tools for managing/searching Python related files Message-ID: <20101129155450.GV1009@trillke.net> Hi all, i released pycmd-1.0, some tools for working with Python source code: py.cleanup: remove .pyc and $py.class etc. files py.lookup: grep in python files py.countloc: give Lines of Code for code and tests py.which: print location of an importable package or module All tools have command line options with help strings and have automated tests running against them. see also: http://pypi.python.org/pypi/pycmd cheers, holger From pierre.raybaut at gmail.com Mon Nov 29 18:33:48 2010 From: pierre.raybaut at gmail.com (Pierre Raybaut) Date: Mon, 29 Nov 2010 09:33:48 -0800 (PST) Subject: ANN: Spyder v2.0.0 Message-ID: <676a2061-dae7-49c8-b259-f8a03243f634@a17g2000yql.googlegroups.com> Hi all, I am pleased to announced that Spyder v2.0.0 has just been released. Spyder (previously known as Pydee) is a free open-source Python development environment providing MATLAB-like features in a simple and light-weighted software, available for Windows XP/Vista/7, GNU/Linux and MacOS X: http://spyderlib.googlecode.com/ Spyder is part of spyderlib, a Python module based on PyQt4, pyflakes and rope (QScintilla's dependency has been removed in version 2.0 and rope features have been integrated since this version as well). Some of Spyder basic features: * Python, C/C++, Fortran source editor with class/function browser, code completion and calltips * consoles: o open as many Python interpreters, IPython consoles or command windows as you need o code completion and calltips o variable explorer with GUI-based editors for a lot of data types (numbers, strings, lists, arrays, dictionaries, ...) * object inspector: provide documentation or source code on any Python object (class, function, module, ...) * online documentation: automatically generated html documentation on installed Python modules * find in files * file explorer * project manager * MATLAB-like PYTHONPATH management dialog box (works with all consoles) * Windows only: current user environment variables editor * direct links to documentation (Python, Qt, Matplotlib, NumPy, Scipy, etc.) * direct link to Python(x,y) launcher * direct links to QtDesigner, QtLinguist and QtAssistant (Qt documentation) Some of the new key features introduced with Spyder v2.0: * IPython integration is no longer experimental: only v0.10 release is supported * a brand new GUI layout: clearer menus and options structure * source editor: o powerful dynamic code introspection features (powered by rope): + improved code completion and calltips + go-to-definition: go to an object definition with a simple mouse click! o breakpoints and conditional breakpoints * object inspector: new rich text mode (powered by sphinx) * variable explorer may now open multiple array/list/dict editor instances at once, thus allowing to compare variable contents * preferences dialog box: o keyboard shortcuts o syntax coloring schemes (source editor, history log, object inspector) o console: background color (black/white), automatic code completion, etc. o and a lot more... Cheers, Pierre From samuele.pedroni at gmail.com Mon Nov 29 21:30:20 2010 From: samuele.pedroni at gmail.com (Samuele Pedroni) Date: Mon, 29 Nov 2010 21:30:20 +0100 Subject: oejskit 0.8.9, javascript testing support, consolidation release In-Reply-To: References: Message-ID: I have just uploaded to pypi a new release 0.8.9 of oejskit, this is just a consolidation release. The main changes it that it is packaged as source tarball, making it easier to install with Python 2.7, and that it drops support for Python 2.5. This release doesn't support yet py.test 2.0, I have started investigating what is required to support it, it will take a bit of time to release something working with it. unittest.py support is working and unchanged. About OE jskit: jskit contains infrastructure and in particular a py.test plugin to enable running unit tests for JavaScript code inside browsers. It contains also glue code to run JavaScript tests from unittest.py based test suites. The approach also enables to write integration tests such that the JavaScript code is tested against server-side Python code mocked as necessary. Any server-side framework that can already be exposed through WSGI can play. The plugin requires py.test 1.3.4 or slightly older. More information and downloading at: http://pypi.python.org/pypi/oejskit including a changelog and ?documentation. regards, Samuele Pedroni From glyph at twistedmatrix.com Tue Nov 30 07:07:57 2010 From: glyph at twistedmatrix.com (Glyph Lefkowitz) Date: Tue, 30 Nov 2010 01:07:57 -0500 Subject: [ANNOUNCE] Twisted 10.2.0 Released Message-ID: <48EF5F73-CAE0-43CC-89A9-FD273C334E79@twistedmatrix.com> Twisted 10.2.0, the third Twisted release of 2010, has emerged from the mysterious depths of Twisted Matrix Labs, as so many releases before it. Survivors of the release process - what few there were of them - have been heard to claim that this version is "awesome", "even more robust", "fun-sized" and "oven fresh". Crossing several things that shouldn't ought to be, including the streams and the rubicon, I have assumed the triple responsibilities of feature author, project leader, *and* release manager for 10.2: with this dark and terrible power - a power which no man ought to wield alone - I have wrought a release which contains many exciting new features, including: - A plug-in API for adding new types of endpoint descriptions. - A new, simpler, substantially more robust CoreFoundation reactor. - Improvements to the implementation of Deferred which should both improve performance and fix certain runtime errors with long callback chains. - Deferred.setTimeout is (finally) gone. To quote the author of this change: "A new era of peace has started." - NetstringReceiver is substantially faster. And, of course, nearly one hundred smaller bug fixes, documentation updates, and general improvements. See the NEWS file included in the release for more details. Look upon our Twisted, ye mighty, and make your network applications event-driven: get it now, from: ... or simply install the 'Twisted' package from PyPI. Many thanks to Christopher Armstrong, for his work on release-automation tools that made this possible; to Jonathan Lange, for thoroughly documenting the process and thereby making my ascent to the throne of release manager possible, and to Jean-Paul Calderone for his tireless maintenance of our build and test infrastructure as well as his help with the release. Most of all, thanks to everyone who contributed a patch, reported a bug or reviewed a ticket for 10.2. Not including those already thanked, there are 41 of you, so it would be a bit tedious to go through everyone, but you know who you are and we absolutely couldn't do it without you! Thanks a ton!