From dsuch at zato.io Sun Jun 2 22:48:04 2013 From: dsuch at zato.io (Dariusz Suchojad) Date: Sun, 02 Jun 2013 22:48:04 +0200 Subject: [ANN] Zato 1.1 - ESB and app server in Python Message-ID: <51ABAF84.9020502@zato.io> Hello, I'm very happy to let you know that Zato 1.1 has just been released. *What is Zato* -------------- Zato is a lightweight, yet complete, ESB (Enterprise Service Bus) and app server in Python designed for creating middleware applications and systems of systems. Zato is open-source software released under a commercial-friendly LGPL license. The project's site is at https://zato.io Read more about what ESB is at https://zato.io/docs/intro/esb-soa.html *Release notes* --------------- This release is based on feedback from early adopters and includes a number of improvements to help first time users get started more easily. An important addition in 1.1 is a unified installer for OS X, Ubuntu, Mint and Fedora. Special thanks to Myroslav Opyr (quintagroup.com) for all his suggestions and code patches and to a vocal group of OS X users (https://github.com/zatosource/zato/issues/41) who helped create the OS X installer! Download: https://zato.io/downloads.html Migrating from 1.0: https://zato.io/docs/admin/guide/migrating.html Changelog: https://zato.io/docs/project/changelog.html Unfortunately, this release doesn't add an installer for RHEL and SLES. Confronted with a choice between delaying 1.1 and adding support for OS X and Fedora, I had to make a call and chose the latter. *Changelog* ----------- * Unified installer for Ubuntu, Mint, Fedora and OS X * Added the zato check-config command * Fixed a bug which lead to double execution of user-defined scheduler jobs * Made quickstart clusters more robust when confronted with improperly configured servers, sanity checks are now performed before servers are started * Changed the default value of main.deployment_lock_expires so it works on 32-bit systems without a need for reconfiguring servers after they?re created * Made scripts generated by zato quickstart relocatable * Newly created servers start CPU_COUNT gunicorn workers by default now, not CPU_COUNT * 2 as previously * HAProxy load-balancer can now bind to all interfaces. Patch provided by Myroslav Opyr (quintagroup.com). cheers, -- Dariusz Suchojad https://zato.io The next generation ESB and application server. Open-source. In Python. From antonio.valentino at tiscali.it Mon Jun 3 19:19:46 2013 From: antonio.valentino at tiscali.it (Antonio Valentino) Date: Mon, 03 Jun 2013 19:19:46 +0200 Subject: ANN: PyTables 3.0 Message-ID: <51ACD032.8070005@tiscali.it> =========================== Announcing PyTables 3.0.0 =========================== We are happy to announce PyTables 3.0.0. PyTables 3.0.0 comes after about 5 years from the last major release (2.0) and 7 months since the last stable release (2.4.0). This is new major release and an important milestone for the PyTables project since it provides the long waited support for Python 3.x, which has been around for 4 years. Almost all of the core numeric/scientific packages for Python already support Python 3 so we are very happy that now also PyTables can provide this important feature. What's new ========== A short summary of main new features: - Since this release, PyTables now provides full support to Python 3 - The entire code base is now more compliant with coding style guidelines described in PEP8. - Basic support for HDF5 drivers. It now is possible to open/create an HDF5 file using one of the SEC2, DIRECT, LOG, WINDOWS, STDIO or CORE drivers. - Basic support for in-memory image files. An HDF5 file can be set from or copied into a memory buffer. - Implemented methods to get/set the user block size in a HDF5 file. - All read methods now have an optional *out* argument that allows to pass a pre-allocated array to store data. - Added support for the floating point data types with extended precision (Float96, Float128, Complex192 and Complex256). - Consistent ``create_xxx()`` signatures. Now it is possible to create all data sets Array, CArray, EArray, VLArray, and Table from existing Python objects. - Complete rewrite of the `nodes.filenode` module. Now it is fully compliant with the interfaces defined in the standard `io` module. Only non-buffered binary I/O is supported currently. Please refer to the RELEASE_NOTES document for a more detailed list of changes in this release. As always, a large amount of bugs have been addressed and squashed as well. In case you want to know more in detail what has changed in this version, please refer to: http://pytables.github.io/release_notes.html You can download a source package with generated PDF and HTML docs, as well as binaries for Windows, from: http://sourceforge.net/projects/pytables/files/pytables/3.0.0 For an online version of the manual, visit: http://pytables.github.io/usersguide/index.html 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. PyTables includes OPSI, a new indexing technology, allowing to perform data lookups in tables exceeding 10 gigarows (10**10 rows) in less than a tenth of a second. 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 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 Developers From vinay_sajip at yahoo.co.uk Tue Jun 4 14:06:47 2013 From: vinay_sajip at yahoo.co.uk (Vinay Sajip) Date: Tue, 4 Jun 2013 05:06:47 -0700 (PDT) Subject: ANN: Version 0.1.1 of sarge (a subprocess wrapper library) has been released. Message-ID: <1af31328-e6b8-47a0-9112-05ca363c0699@googlegroups.com> Version 0.1.1 of Sarge, a cross-platform library which wraps the subprocess module in the standard library, has been released. What changed? ------------- - Added the ability to scan for specific patterns in subprocess output streams. - Added convenience methods to operate on wrapped subprocesses. - Exceptions which occur while spawning subprocesses are now propagated. - Fixed issues #2, #3, and #4. - Improved shell_shlex resilience with Unicode on 2.x. - Added get_stdout, get_stderr and get_both for when subprocess output is not expected to be voluminous. - Added an internal lock to serialise access to shared data. - Added tests to cover added functionality and reported issues. - Added numerous documentation updates. What does Sarge do? ------------------- Sarge tries to make interfacing with external programs from your Python applications easier than just using subprocess alone. Sarge offers the following features: * A simple way to run command lines which allows a rich subset of Bash- style shell command syntax, but parsed and run by sarge so that you can run on Windows without cygwin (subject to having those commands available): >>> from sarge import capture_stdout >>> p = capture_stdout('echo foo | cat; echo bar') >>> for line in p.stdout: print(repr(line)) ... 'foo\n' 'bar\n' * The ability to format shell commands with placeholders, such that variables are quoted to prevent shell injection attacks. * The ability to capture output streams without requiring you to program your own threads. You just use a Capture object and then you can read from it as and when you want. Advantages over subprocess --------------------------- Sarge offers the following benefits compared to using subprocess: * The API is very simple. * It's easier to use command pipelines - using subprocess out of the box often leads to deadlocks because pipe buffers get filled up. * It would be nice to use Bash-style pipe syntax on Windows, but Windows shells don't support some of the syntax which is useful, like &&, ||, |& and so on. Sarge gives you that functionality on Windows, without cygwin. * Sometimes, subprocess.Popen.communicate() is not flexible enough for one's needs - for example, when one needs to process output a line at a time without buffering the entire output in memory. * It's desirable to avoid shell injection problems by having the ability to quote command arguments safely. * subprocess allows you to let stderr be the same as stdout, but not the other way around - and sometimes, you need to do that. Python version and platform compatibility ----------------------------------------- Sarge is intended to be used on any Python version >= 2.6 and is tested on Python versions 2.6, 2.7, 3.1, 3.2 and 3.3 on Linux, Windows, and Mac OS X (not all versions are tested on all platforms, but sarge is expected to work correctly on all these versions on all these platforms). Finding out more ---------------- You can read the documentation at http://sarge.readthedocs.org/ There's a lot more information, with examples, than I can put into this post. You can install Sarge using "pip install sarge" to try it out. The project is hosted on BitBucket at https://bitbucket.org/vinay.sajip/sarge/ And you can leave feedback on the issue tracker there. I hope you find Sarge useful! Regards, Vinay Sajip From temotor at gmail.com Tue Jun 4 19:26:16 2013 From: temotor at gmail.com (Sergey Shepelev) Date: Tue, 4 Jun 2013 10:26:16 -0700 (PDT) Subject: Eventlet 0.13 is going to have minor incompatible change in subprocess API Message-ID: <1dd9ef99-23d6-431f-8e12-d94491c0875e@googlegroups.com> Hello. I'm trying to reach out for as many Eventlet users as possible. This message contains specific actions to be taken by project owners to ensure compatibility with future versions of eventlet. 1. We're going to have a minor backward incompatible change. It will *only* affect you if you use Eventlet specific `check_interval` positional argument, e.g. subprocess.Popen(...).wait(0.1). Which is very unlikely, but I have to make sure. Checking will take less than minute best case. 2. Please run the following search against your code base: grep -lr -E 'import.+subprocess' . |xargs grep -nE '\.wait\([^)]' |fgrep -v 'check_interval=' 3. If you have any results on step 3, please check that either you imported subprocess from eventlet.green or used monkey_patch and matched lines correspond to eventlet.green.subprocess.Popen objects 4. If you have any results on step 4, that is, you pass check_interval as first positional argument to .wait() method of Popen object, please change it to keyword argument `check_interval=...` 5. Please, spread this message to your coworkers, friends or other people who uses Eventlet in their projects. Thank you very much. If you are curious what's going on, here's the full story: Python 3.3 introduced `timeout` kwarg to lots of methods of subprocess module. The RHEL guys backported it to their Python 2.6 package. At some point, the code they used started to use subprocess from Eventlet which does not have the `timeout` kwarg. https://bitbucket.org/eventlet/eventlet/issue/89 https://bitbucket.org/eventlet/eventlet/pull-request/30 Now in Eventlet, I am going to introduce the `timeout` argument and to make it forward compatible with Python3, it's going to get first place, like in stdlib. To interested people, you may leave a comment in this discussion or in this Github thread: https://github.com/eventlet/eventlet/pull/34 From vinay_sajip at yahoo.co.uk Wed Jun 5 12:38:14 2013 From: vinay_sajip at yahoo.co.uk (Vinay Sajip) Date: Wed, 5 Jun 2013 03:38:14 -0700 (PDT) Subject: ANN: A new version (0.3.4) of the Python module which wraps GnuPG has been released. Message-ID: <86e077b8-e81e-4e31-9fe5-7e63b705b857@googlegroups.com> A new version of the Python module which wraps GnuPG has been released. What Changed? ============= This is a minor enhancement and bug-fix release. See the project website ( http://code.google.com/p/python-gnupg/ ) for more information. Summary: An encoding bug which caused an exception when getting the GPG version has been fixed. Recipients can be passed in a set or frozenset as well as in a list or tuple. The keyring argument now accepts a list of public keyring filenames as well as a single filename. A secret_keyring argument has been added which accepts either a single filename or a list of filenames for secret keyrings. The current version passes all tests on Windows (CPython 2.4, 2.5, 2.6, 2.7, 3.1 and Jython 2.5.1), Mac OS X (Python 2.5) and Ubuntu (CPython 2.4, 2.5, 2.6, 2.7, 3.0, 3.1, 3.2). On Windows, GnuPG 1.4.11 has been used for the tests. What Does It Do? ================ The gnupg module allows Python programs to make use of the functionality provided by the Gnu Privacy Guard (abbreviated GPG or GnuPG). Using this module, Python programs can encrypt and decrypt data, digitally sign documents and verify digital signatures, manage (generate, list and delete) encryption keys, using proven Public Key Infrastructure (PKI) encryption technology based on OpenPGP. This module is expected to be used with Python versions >= 2.4, as it makes use of the subprocess module which appeared in that version of Python. This module is a newer version derived from earlier work by Andrew Kuchling, Richard Jones and Steve Traugott. A test suite using unittest is included with the source distribution. Simple usage: >>> import gnupg >>> gpg = gnupg.GPG(gnupghome='/path/to/keyring/directory') >>> gpg.list_keys() [{ ... 'fingerprint': 'F819EE7705497D73E3CCEE65197D5DAC68F1AAB2', 'keyid': '197D5DAC68F1AAB2', 'length': '1024', 'type': 'pub', 'uids': ['', 'Gary Gross (A test user) ']}, { ... 'fingerprint': '37F24DD4B918CC264D4F31D60C5FEFA7A921FC4A', 'keyid': '0C5FEFA7A921FC4A', 'length': '1024', ... 'uids': ['', 'Danny Davis (A test user) ']}] >>> encrypted = gpg.encrypt("Hello, world!", ['0C5FEFA7A921FC4A']) >>> str(encrypted) '-----BEGIN PGP MESSAGE-----\nVersion: GnuPG v1.4.9 (GNU/Linux)\n\nhQIOA/6NHMDTXUwcEAf ... -----END PGP MESSAGE-----\n' >>> decrypted = gpg.decrypt(str(encrypted), passphrase='secret') >>> str(decrypted) 'Hello, world!' >>> signed = gpg.sign("Goodbye, world!", passphrase='secret') >>> verified = gpg.verify(str(signed)) >>> print "Verified" if verified else "Not verified" 'Verified' For more information, visit http://code.google.com/p/python-gnupg/ - as always, your feedback is most welcome (especially bug reports, patches and suggestions for improvement). Enjoy! Cheers Vinay Sajip Red Dove Consultants Ltd. From menno at freshfoo.com Thu Jun 6 01:31:21 2013 From: menno at freshfoo.com (Menno Smits) Date: Thu, 06 Jun 2013 00:31:21 +0100 Subject: ANN: IMAPClient 0.10 Message-ID: <51AFCA49.7050103@freshfoo.com> I'm very happy to announce IMAPClient 0.10. IMAPClient is an easy-to-use, Pythonic and complete IMAP client library that is much friendlier to use than the imaplib module in the standard library. It is mature and well tested, including functional tests that check against actual IMAP server implementations. This is the first release to support Python 3. Python versions 2.6, 2.7, 3.2 and 3.3 are now officially supported. Support for Python 2.4 and 2.5 has been dropped. For details on what's changed in this release please see this blog post: http://freshfoo.com/blog/imapclient-0.10 and the news file: https://bitbucket.org/mjs0/imapclient/src/tip/NEWS.rst Related links: * Project home: http://imapclient.freshfoo.com/ * Bitbucket: https://bitbucket.org/mjs0/imapclient/ * PyPI: https://pypi.python.org/pypi/IMAPClient/0.10 * Documentation: https://imapclient.readthedocs.org/ - Menno From markflorisson88 at gmail.com Tue Jun 4 12:53:27 2013 From: markflorisson88 at gmail.com (mark florisson) Date: Tue, 4 Jun 2013 11:53:27 +0100 Subject: numba 0.9 Message-ID: Numba 0.9 adds support better math functions for all supported data types (complex and floating). The release also comes with open-sourced generalized ufunc support from numbapro. This allows users to write a NumPy generalized ufunc directly in python and compile it with numba. There is now also support for long double on all platforms. The support comes with a new dependency on llvmmath. Array expressions and their performance have also been improved. Generalized ufuncs: http://numba.pydata.org/numba-doc/0.9/arrays.html#generalized-ufuncs Supported math functions: https://github.com/ContinuumIO/llvmmath/blob/master/llvmmath/RequiredSymbols.txt Download ======== http://numba.pydata.org/download.html Website ======= http://numba.pydata.org/ Documentation ============ http://numba.pydata.org/numba-doc/0.9/index.html Numba ====== Numba is an just-in-time specializing compiler which compiles annotated Python and NumPy code to LLVM (through decorators). Its goal is to seamlessly integrate with the Python scientific software stack and produce optimized native code, as well as integrate with native foreign languages. From ralf at systemexit.de Fri Jun 7 22:47:14 2013 From: ralf at systemexit.de (Ralf Schmitt) Date: Fri, 07 Jun 2013 22:47:14 +0200 Subject: [ANNOUNCE] greenlet 0.4.1 Message-ID: <87sj0tsl65.fsf@myhost.lan> Hi, I have uploaded greenlet 0.4.1 to PyPI: https://pypi.python.org/pypi/greenlet What is it? ----------- The greenlet module provides coroutines for python. coroutines allow suspending and resuming execution at certain locations. concurrence[1], eventlet[2] and gevent[3] use the greenlet module in order to implement concurrent network applications. Documentation can be found here: http://greenlet.readthedocs.org The code is hosted on github: https://github.com/python-greenlet/greenlet Changes in version 0.4.1 ------------------------ The NEWS file lists these changes for release 0.4.1: * fix segfaults when using gcc 4.8 on amd64/x86 unix * try to disable certain gcc 4.8 optimizations that make greenlet crash * Fix greenlet on aarch64 with gcc 4.8 * workaround segfault on SunOS/sun4v * Add support for Aarch64 * Add support for x32 psABI on x86_64 * Changed memory constraints for assembly macro for PPC Linux platforms. Many thanks to all contributors! [1] http://opensource.hyves.org/concurrence/ [2] http://eventlet.net/ [3] http://www.gevent.org/ -- Cheers Ralf Schmitt From mal at egenix.com Fri Jun 7 15:50:44 2013 From: mal at egenix.com (M.-A. Lemburg) Date: Fri, 07 Jun 2013 15:50:44 +0200 Subject: EuroPython 2014/2015 Conference Team - Reminder: Call for Proposals Message-ID: <51B1E534.2090804@egenix.com> This is a reminder to all teams who want to submit a proposal for running the next EuroPython in 2014 and 2015. Proposals must be sent in before Friday, June 14th, i.e. in less than one week. If you have questions, please feel free to contact the EuroPython Society board at board at europython.eu. We're looking forward to hearing from you :-) Here's a copy of the original announcement email with the link to the CFP document: """ The EuroPython Society (EPS) is happy to announce the Call for Proposals for the EuroPython Conference in 2014 and 2015. This Call for Proposals is meant to collect proposals from teams that volunteer for organizing the EuroPython conference in 2014-2015. The Call for Proposals document containing all the details and information about the proposals and selection process can be found here: https://docs.google.com/file/d/0B8YBdLoQM_6fbVpuM2ZWUGp3Slk/edit?usp=sharing If you are part of a great team organizing amazing Python events you could be the team organizing the next EuroPython! Please also forward this Call for Proposals to anyone that you feel may be interested. The Call for Proposals will run until Friday, June 14th. Proposals must be submitted to europython-contact at python.org before that day, and must adhere the requirements specified in the CFP document. """ Regards, -- Marc-Andre Lemburg Director EuroPython Society http://www.europython.eu/ From tim at emergetec.com Mon Jun 10 05:46:13 2013 From: tim at emergetec.com (Tim Knapp) Date: Mon, 10 Jun 2013 15:46:13 +1200 Subject: Kiwi PyCon 2013 Financial Aid program Message-ID: Hi, The Kiwi PyCon 2013 Organising Committee would like to announce the availability of the Kiwi PyCon 2013 Financial Aid program. The program's purpose is to make the conference accessible to everyone, particularly those who due to financial difficulties would otherwise not be able to attend. We are particularly interested in potential speakers as it would be a shame for the conference to miss out on your talk contribution merely due to financial concerns. Further information regarding the program can be found here: http://nz.pycon.org/financial-aid/ And don't forget the Call for Proposals ends next Tuesday, June 18 so please get those talk/tutorial submissions in! -- Kind regards, Tim Knapp (On behalf of the Kiwi PyCon 2013 Organising Committee) From holger at merlinux.eu Mon Jun 10 23:53:25 2013 From: holger at merlinux.eu (holger krekel) Date: Mon, 10 Jun 2013 21:53:25 +0000 Subject: devpi-0.9: pypi caching server and packaging workflow meta tool Message-ID: <20130610215324.GL7789@merlinux.eu> Hi all, i just released devpi-server-0.9, devpi-client-0.9 and a convenience meta "devpi-0.9" package to install them both. Main news for devpi-server, the caching pypi server: - github-style user and index management: you can upload to USER/NAME indexes with the default being "root/dev", an overlay index that serves all pypi.python.org packages and the ones you upload to it. - integrates now well with latest CDN changes, maintains a consistent quite real-time local pypi cache - redis dependency is gone, only pure Python deps left Main news for the initial release of devpi-client, the packaging workflow tool: - provides install/upload/test sub commands to perform common tasks with an index - provides user/index/use/server commands to manage context and the automated server Lastly, to get started super-quickly, there is a new site with all the docs: http://doc.devpi.net I'd like to use the 0.9 series to refine the command line interface, fix bugs and implement some more functionality before heading for a more stable 1.0 release. have fun, holger krekel From dima at hlabs.org Tue Jun 11 15:10:59 2013 From: dima at hlabs.org (Dmitry Vasilev) Date: Tue, 11 Jun 2013 15:10:59 +0200 Subject: [ANN] ErlPort (library to connect Erlang to Python) 1.0.0alpha released Message-ID: <51B721E3.7010408@hlabs.org> Hi all, I've just released ErlPort version 1.0.0alpha. ErlPort is a library for Erlang which helps connect Erlang to a number of other programming languages (currently supported Python and Ruby). Apart from using ErlPort as a tool to call Python/Ruby functions from Erlang it also can be used as a middleware for Python/Ruby instances. Check http://erlport.org for more details. The new version of ErlPort is basically a complete redesign and rewrite of the project. The main changes in this version are: - Redesigned as Erlang application - Added support for all recent (2.5 and higher) versions of Python - Added support for all recent (1.8.6 and higher) versions of Ruby - Added support for custom data types Why ErlPort can be interesting for Python developers? ----------------------------------------------------- Apart from calling Python functions from Erlang or Erlang function from Python, ErlPort also allows to use Erlang as a middleware for Python. The following is a small inter-process recursion example (place it in roll.py file). Actually this example will be even simpler with ErlPort 1.0.0. from os import getpid from erlport.erlterms import Atom from erlport.erlang import call, self def roll(n, procs=None): if procs is None: procs = [] procs.append(self()) print "Hello from %s" % getpid() if n > 1: status, pid = call(Atom("python"), Atom("start"), []) if status == "ok": procs = call(Atom("python"), Atom("call"), [pid, Atom("roll"), Atom("roll"), [n - 1, procs]]) return procs And it can be used with Erlang shell and ErlPort like this: 1> {ok, P} = python:start(). {ok,<0.34.0>} 2> python:call(P, roll, roll, [5]). Hello from 7747 Hello from 7749 Hello from 7751 Hello from 7753 Hello from 7755 [<0.34.0>,<0.37.0>,<0.40.0>,<0.43.0>,<0.46.0>] -- Dmitry Vasiliev http://hlabs.org http://twitter.com/hdima From cbc at unc.edu Thu Jun 6 21:10:48 2013 From: cbc at unc.edu (Calloway, Chris) Date: Thu, 6 Jun 2013 19:10:48 +0000 Subject: Python Community Training Events Message-ID: Here are some upcoming Python community training events organized by the Triangle Python Users Group: PyOhio PyCamp 2013 offered July 22-26, 2013 at Ohio State University in conjunction with the PyOhio 2013 regional Python conference: http://trizpug.org/boot-camp/pyohio13/ Python Network and Web Programming Workshop offered August 5-9, 2013 at the University of North Carolina: http://trizpug.org/boot-camp/pywebpw13/ Toronto PyCamp 2013 offered August 12-16, 2013 at the University of Toronto in conjunction with the PyCon Canada 2013 national Python conference: http://trizpug.org/boot-camp/torpy13/ Seattle PyCamp 2013 offered September 9-13, 2013 at the University of Washington's Paul G. Allen Center for Computer Science and Engineering: http://trizpug.org/boot-camp/seapy13/ -- Sincerely, Chris Calloway UNC-CH Department of Marine Sciences 3313 Venable Hall CB 3300 Chapel Hill, NC 27599-3300 (919) 599-3530 From holger at merlinux.eu Fri Jun 14 16:47:29 2013 From: holger at merlinux.eu (holger krekel) Date: Fri, 14 Jun 2013 14:47:29 +0000 Subject: devpi-0.9.1: pushing tested releases to pypi Message-ID: <20130614144729.GW7789@merlinux.eu> Hi all, devpi-0.9.1 is out which fixes bugs and introduces support for pushing a tested release candidate from a private index to pypi. See http://doc.devpi.net on the ease of doing "devpi upload", "test" and "push" commands as well as general information on the devpi-server and devpi tools. Thanks to all issue reporters and to Andi Albrecht for his pull request. best, holger From mark.dufour at gmail.com Sun Jun 16 11:47:11 2013 From: mark.dufour at gmail.com (Mark Dufour) Date: Sun, 16 Jun 2013 11:47:11 +0200 Subject: [ANN] Shed Skin 0.9.4 Message-ID: Hi all, I have just released version 0.9.4 of Shed Skin, a (restricted-)Python-(2.x)-to-C++ compiler. This is the fourth maintenance release since 0.9, so no new major features were added. There have been many minor improvements though, and 3 new examples were added, bringing the total number of examples to 75. Please see my blog for more details about the release: http://shed-skin.blogspot.nl/ Or the release notes for the full list of changes: http://code.google.com/p/shedskin/wiki/releasenotes The homepage can be found here: http://code.google.com/p/shedskin/ Thanks, Mark Dufour. -- http://www.youtube.com/watch?v=E6LsfnBmdnk From info at egenix.com Tue Jun 18 10:17:02 2013 From: info at egenix.com (eGenix Team: M.-A. Lemburg) Date: Tue, 18 Jun 2013 10:17:02 +0200 Subject: ANN: eGenix mxODBC Django Database Engine - Django ODBC Adapter 1.2.0 Message-ID: <51C0177E.1090106@egenix.com> ________________________________________________________________________ ANNOUNCING eGenix.com mxODBC Django Database Engine MS SQL Server ORM and ODBC Adapter for the Django Web Framework Version 1.2.0 The mxODBC Django Database Engine is our commercially supported product for connecting Django to ODBC compatible databases on Windows, Mac OS X, Linux and FreeBSD platforms. This announcement is also available on our web-site for online reading: http://www.egenix.com/company/news/eGenix-mxODBC-Django-Database-Engine-1.2.0-GA.html ________________________________________________________________________ INTRODUCTION The mxODBC Django Database Engine product allows you to easily connect your Django website to just about any database backend on the market today, giving you the reliability of the commercially supported eGenix.com product mxODBC and the flexibility of the ODBC standard as middle-tier architecture. Flexible Database Access ------------------------ With the mxODBC Django Database Engine 1.2, you get two ways to connect to your databases: 1. access all your Microsoft SQL Server databases using the seamless Django ORM integration we provide for MS SQL Server 2005, 2008 and 2012, or 2. tap into the powerful SQL-based mxODBC Database Interface directly from within Django and access databases such as MS SQL Server, Oracle, IBM DB2 and Informix , Sybase ASE and Sybase Anywhere, MySQL, PostgreSQL, SAP MaxDB, and many others. Across Platforms ---------------- mxODBC Django Database Engine works on Windows, Linux, Mac OS X, FreeBSD, Solaris and AIX, providing you with the same consistent interface, flexibility and robustness across all of these platforms. For more information, please see the product page: http://www.egenix.com/products/django/mxODBCDjango/ ________________________________________________________________________ NEWS The 1.2.0 release of mxODBC Django Database Engine is the first public release of our Django database engine. Features -------- * Fully integrated with the Django ORM: No need to learn a new API - simply continue to use the known Django ORM interface. * Compatible with all current Django versions: The mxODBC Django Database Engine supports Django 1.4 and 1.5. * Compatible with all recommended Python versions: The database engine supports Python 2.6 and 2.7; both as UCS2 (narrow) and UCS4 (wide) Unicode variant on Unix platforms. * Full Unicode Support: The database engine can communicate with the database using native Unicode and 8-bit encodings such as UTF-8 or CP1252. * Full 64-bit Support: The underlying mxODBC 3.2 library fully supports 64-bit platforms such as Mac OS X 10.6 (Snow Leopard) or later, and 64-bit Linux systems that use unixODBC, iODBC or DataDirect ODBC managers. * Cross-platform Connection Objects: The database engine will automatically choose the right platform specific ODBC manager for you. * Per Connection Adjustable ODBC Manager Interface: mxODBC supports many different ODBC managers. The mxODBC Django Database Engine allows you to select the ODBC manager on a per-connection basis. * Per Connection Customization of Interface Parameters: The database engines allows adjusting many different parameters to adapt the engine to your specific database needs, should you have special requirements. MS SQL Server ORM Features -------------------------- * MS SQL Server fully integrated into the Django ORM: Access MS SQL Server through the Django ORM, just like any other Django ORM database. * MS SQL Server Regular Expression Emulation: Even though MS SQL Server itself does not support regular expressions, the mxODBC Django Database Engine provides an emulation for simple regular expressions to simplify porting existing applications to a SQL Server backend. * MS SQL Server Aggregate Function Support: We provide a special aggregate function implementation to have the Django ORM support SQL Server aggregate functions. * MS SQL Server Timestamp Support: SQL Server support millisecond accuracy on timestamps. The database engine will take care of applying the necessary rounding for the microsecond precision Python timestamps in a seamless way. * Support for all popular SQL Server ODBC drivers: The mxODBC Django Database Engine supports the MS SQL Server Native Client on Windows, the MS SQL Server Native Client for Linux, as well as the FreeTDS ODBC driver. Commercial drivers from well-known driver vendors are also supported. * Support for accessing SQL Server from Windows and Unix platforms: On Windows and Linux you can use the SQL Server Native Client, on other Unix platforms and Mac OS X, the FreeTDS driver or other commercial drivers can be used. Direct mxODBC Interface to other Databases ------------------------------------------ * Access IBM DB2, Sybase ASE, Oracle, Teradata, Netezza, etc. directly through the proven mxODBC Database API: Import, query and save data directly to the databases using a simple to use API and all available database specific SQL dialects, capabilities and features, including ones for which the Django ORM does not provide support. * Fully Python DB-API 2.0 compatible interface: mxODBC support the Python DB-API 2.0, including many standard extensions and the full set of ODBC catalog methods for database introspection. * Full transaction control: When using the mxODBC Database API, you get full control over the database connections, including opening them on demand, in auto-commit mode, dynamically scaling the number of connections per request, etc. ________________________________________________________________________ DOWNLOADS Please visit the eGenix mxODBC Django Database Engine product page for downloads, instructions on installation and documentation of the packages: http://www.egenix.com/products/django/mxODBCDjango/ If you want to try the package, please jump straight to the download instructions: http://www.egenix.com/products/django/mxODBCDjango/#Download Fully functional 30-day evaluation licenses for the mxODBC Django Database Engine are available free of charge: http://www.egenix.com/products/django/mxODBCDjango/#Evaluation _______________________________________________________________________ SUPPORT Commercial support for this product is available from eGenix.com. Please see the support section of our website for details: http://www.egenix.com/services/support/ _______________________________________________________________________ INFORMATION About Python (http://www.python.org/): Python is an object-oriented Open Source programming language which runs on all modern platforms. By integrating ease-of-use, clarity in coding, enterprise application connectivity and rapid application design, Python establishes an ideal programming platform for today's IT challenges. About eGenix (http://www.egenix.com/): eGenix is a software project, consulting and product company focusing on expert project services and professional quality products for companies, Python users and developers. Enjoy, -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Jun 18 2013) >>> Python Projects, Consulting and Support ... http://www.egenix.com/ >>> mxODBC.Zope/Plone.Database.Adapter ... http://zope.egenix.com/ >>> mxODBC, mxDateTime, mxTextTools ... http://python.egenix.com/ ________________________________________________________________________ 2013-07-01: EuroPython 2013, Florence, Italy ... 13 days to go 2013-07-16: Python Meeting Duesseldorf ... 28 days to go ::::: Try our mxODBC.Connect Python Database Interface for free ! :::::: eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 http://www.egenix.com/company/contact/ From info at egenix.com Mon Jun 17 13:49:55 2013 From: info at egenix.com (eGenix Team: M.-A. Lemburg) Date: Mon, 17 Jun 2013 13:49:55 +0200 Subject: ANN: Python Meeting =?windows-1252?Q?D=FCsseldorf_-_16=2E07=2E?= =?windows-1252?Q?2013?= Message-ID: <51BEF7E3.6090406@egenix.com> [This announcement is in German since it targets a local user group meeting in D?sseldorf, Germany] ________________________________________________________________________ ANK?NDIGUNG Python Meeting D?sseldorf http://pyddf.de/ Ein Treffen von Python Enthusiasten und Interessierten in ungezwungener Atmosph?re. Dienstag, 16.07.2013, 18:00 Uhr Raum 1, 2.OG im B?rgerhaus Stadtteilzentrum Bilk D?sseldorfer Arcaden, Bachstr. 145, 40217 D?sseldorf Diese Nachricht ist auch online verf?gbar: http://www.egenix.com/company/news/Python-Meeting-Duesseldorf-2013-07-16 ________________________________________________________________________ NEUIGKEITEN * Sprint-Planung: Wir m?chten im Sommer/Herbst gerne einen Sprint organisieren und suchen daf?r Themen. Falls Ihr Themenvorschl?ge habt, w?re es sch?n, wenn Ihr diese auf dem n?chsten Treffen kurz vorstellen k?nntet. Beispiele: - Progammieren eines Add-ons f?r XBMC - Progammieren eines Add-ons f?r Blender - Patch f?r einen oder mehrere Python Bugs schreiben * Neuer Veranstaltungsraum: Wir treffen uns im B?rgerhaus in den D?sseldorfer Arcaden. Da beim letzten Mal einige Teilnehmer Schwierigkeiten hatten, den Raum zu finden, hier eine kurze Beschreibung: Das B?rgerhaus teilt sich den Eingang mit dem Schwimmbad und befindet sich an der Seite der Tiefgarageneinfahrt der D?sseldorfer Arcaden. ?ber dem Eingang steht ein gro?es ?Schwimm?in Bilk? Logo. Hinter der T?r direkt links zu den zwei Aufz?gen, dann in den 2. Stock hochfahren. Der Eingang zum Raum 1 liegt direkt links, wenn man aus dem Aufzug kommt. Google Street View: http://bit.ly/11sCfiw ________________________________________________________________________ EINLEITUNG Das Python Meeting D?sseldorf ist eine regelm??ige Veranstaltung in D?sseldorf, die sich an Python Begeisterte aus der Region wendet: * http://pyddf.de/ Einen guten ?berblick ?ber die Vortr?ge bietet unser YouTube-Kanal, auf dem wir die Vortr?ge nach den Meetings ver?ffentlichen: * http://www.youtube.com/pyddf/ Veranstaltet wird das Meeting von der eGenix.com GmbH, Langenfeld, in Zusammenarbeit mit Clark Consulting & Research, D?sseldorf: * http://www.egenix.com/ * http://www.clark-consulting.eu/ ________________________________________________________________________ PROGRAMM Das Python Meeting D?sseldorf nutzt eine Mischung aus Open Space und Lightning Talks. Lightning Talks k?nnen vorher angemeldet werden, oder auch spontan w?hrend des Treffens eingebracht werden. Ein Beamer mit XGA Aufl?sung steht zur Verf?gung. Folien bitte als PDF auf USB Stick mitbringen. Lightning Talk Anmeldung bitte formlos per EMail an info at pyddf.de ________________________________________________________________________ KOSTENBETEILIGUNG Das Python Meeting D?sseldorf wird von Python Nutzern f?r Python Nutzer veranstaltet. Um die Kosten zumindest teilweise zu refinanzieren, bitten wir die Teilnehmer um einen Beitrag in H?he von EUR 10,00 inkl. 19% Mwst, Sch?ler und Studenten zahlen EUR 5,00 inkl. 19% Mwst. Wir m?chten alle Teilnehmer bitten, den Betrag in bar mitzubringen. ________________________________________________________________________ ANMELDUNG Da wir nur f?r ca. 20 Personen Sitzpl?tze haben, m?chten wir bitten, sich per EMail anzumelden. Damit wird keine Verpflichtung eingegangen. Es erleichtert uns allerdings die Planung. Meeting Anmeldung bitte formlos per EMail an info at pyddf.de ________________________________________________________________________ WEITERE INFORMATIONEN Weitere Informationen finden Sie auf der Webseite des Meetings: http://pyddf.de/ Mit freundlichen Gr??en, -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Jun 17 2013) >>> Python Projects, Consulting and Support ... http://www.egenix.com/ >>> mxODBC.Zope/Plone.Database.Adapter ... http://zope.egenix.com/ >>> mxODBC, mxDateTime, mxTextTools ... http://python.egenix.com/ ________________________________________________________________________ 2013-07-01: EuroPython 2013, Florence, Italy ... 14 days to go 2013-07-16: Python Meeting Duesseldorf ... 29 days to go ::::: Try our mxODBC.Connect Python Database Interface for free ! :::::: eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 http://www.egenix.com/company/contact/ From tom at tomforb.es Wed Jun 19 12:48:58 2013 From: tom at tomforb.es (Tom .) Date: Wed, 19 Jun 2013 11:48:58 +0100 Subject: [ANN] Django-debug-toolbar-template-timings Message-ID: Django-debug-toolbar-template-timings version 0.4.1 has been released and can be found here: https://pypi.python.org/pypi/django-debug-toolbar-template-timings What is it? ------------------------------ Does what it says on the tin. It's a panel for Django-debug-toolbar that breaks down the time it takes to render a template, showing detailed timing information for each sub-template and block. This helps you pinpoint exactly where the bottlekneck for your page is. More info and screenshots can be found here: https://github.com/orf/django-debug-toolbar-template-timings What's new in 0.4.1? ------------------------------ * The sum, average, min and max execution time for each template and block is now recorded (thanks @twidi) * The total time spent rendering is displayed in the sidebar * Added options to ignore templates and print the timings to the console From barry at python.org Fri Jun 21 01:15:54 2013 From: barry at python.org (Barry Warsaw) Date: Thu, 20 Jun 2013 19:15:54 -0400 Subject: ANNOUNCE: flufl.bounce 2.2 Message-ID: <20130620191554.09fd1bb4@limelight.wooz.org> I am happy to announce flufl.bounce version 2.2. The flufl.bounce library provides a set of heuristics and an API for detecting the original bouncing email addresses from a bounce message. Many formats found in the wild are supported, as are VERP and RFC 3464 (DSN). flufl.bounce is the bounce detection library used by GNU Mailman. flufl.bounce is compatible with Python 2.6, 2.7, 3.2, and 3.3. My deep gratitude to Mark Sapiro for his help in preparing the 2.2 release. Thanks also to the other contributors named below. Here's what's new in version 2.2: * Added recognition for a bogus Dovecot over-quota rejection sent as an MDN rather than a DSN. (LP: #693134) * Tweaked a simplematch regexp that didn't always work. (LP: #1079254) * Added recognition for bounces from mail.ru. Thanks to Andrey Rahmatullin. (LP: #1079249) * Fixed UnicodeDecodeError in qmail.py with non-ascii message. Thanks to Theo Spears. (LP: #1074592) * Added recognition for another Yahoo bounce format. Thanks to Mark Sapiro. (LP: #1157961) * Fix documentation bug. (LP: #1026403) * Document the zope.interface requirement. (LP: #1021383) Full documentation is available here: http://pythonhosted.org/flufl.bounce/ The project home page is at: https://launchpad.net/flufl.bounce You can report bugs at: https://bugs.launchpad.net/flufl.bounce Download the package from the Cheeseshop: https://pypi.python.org/pypi/flufl.bounce Enjoy, -Barry From thomas.calmant at gmail.com Fri Jun 21 12:07:10 2013 From: thomas.calmant at gmail.com (Thomas Calmant) Date: Fri, 21 Jun 2013 03:07:10 -0700 (PDT) Subject: [ANN] jsonrpclib-pelix 0.1.5 Message-ID: Hi, I'm glad to announce the release of jsonrpclib-pelix 0.1.5 ! What is it ? ------------ jsonrpclib-pelix is an implementation of the JSON-RPC specification. It supports both the original 1.0 specification, as well as the 2.0 specification, which includes batch submission, keyword arguments, etc. The suffix -pelix only indicates that this version works with Pelix Remote Services, but it is not a Pelix specific implementation. This version is a fork of Josh Marshal's jsonrpclib. It cannot be installed with the original version, as it uses the same package name. This project is under Apache License 2.0. It is available on PyPI: https://pypi.python.org/pypi/jsonrpclib-pelix The source code is on GitHub: https://github.com/tcalmant/jsonrpclib What's new in 0.1.5 ------------------- This is the second release of jsonrpclib-pelix, and the first one to be announced on this list. It adds the following features: * Support of Python 3 * Added support of the dispatch_method agument in SimpleJSONRPCDispatcher * Removed the support of Unix sockets * Added features from other forks: * Improved JSON-RPC 1.0 support * Less strict error response handling * New AppError exception raised if a RPC error code is not a pre-defined one * Support of custom headers sent in requests Enjoy, Thomas From holger at merlinux.eu Fri Jun 21 15:49:41 2013 From: holger at merlinux.eu (holger krekel) Date: Fri, 21 Jun 2013 13:49:41 +0000 Subject: devpi-0.9.2: uploading existing archives files Message-ID: <20130621134941.GI5471@merlinux.eu> devpi, the caching pypi server and its optional upload/test/install helper tool, just got a devpi-0.9.2 release. See the full updated docs here: http://doc.devpi.net Apart from some streamlining, there is a new upload option:: devpi upload --from-dir path/to/dir [--only-latest] which uploads existing release files to a devpi index, optionally only the latest versions. This is achieved with the help of ``pkginfo`` extracting PKGINFO files and, for the few where it's missing, using the filename to determine name/version data. Thanks to Anthon van der Neut for his related PRs. See below for a more detailed changelog. best, holger 0.9.2 (compared to 0.9.1) ---------------------------- server: - fix /USER/INDEXNAME root views to contain only latest in-stage packages - make +api calls return bases so that "devpi use" can show them client: - introduce "devpi upload --fromdir" for uploading archives in bulk mode, thanks to Anthon van der Neut for helping with this! (resolved issue5) - improve automatic server handling via "devpi use" - for "devpi server" you now need to specify "--log" to see log lines - make "devpi use" also show base indexes by default - fix issue4: auto-server data stored in non-dot dir From ralf at systemexit.de Sat Jun 22 23:08:52 2013 From: ralf at systemexit.de (Ralf Schmitt) Date: Sat, 22 Jun 2013 23:08:52 +0200 Subject: [ANN] pypiserver 1.1.2 - minimal private pypi server Message-ID: <871u7tx38b.fsf@myhost.lan> Hi, I've just uploaded pypiserver 1.1.2 to the python package index. pypiserver is a minimal PyPI compatible server. It can be used to serve a set of packages and eggs to easy_install or pip. pypiserver is easy to install (i.e. just 'pip install pypiserver'). It doesn't have any external dependencies. https://pypi.python.org/pypi/pypiserver/ should contain enough information to easily get you started running your own PyPI server in a few minutes. The code is available on github: https://github.com/schmir/pypiserver Changes in this version ----------------------- - fix "pypi-server -U" stable/unstable detection, i.e. do not accidentally update to unstable packages -- Cheers Ralf From graffatcolmingov at gmail.com Sun Jun 23 01:12:00 2013 From: graffatcolmingov at gmail.com (Ian Cordasco) Date: Sat, 22 Jun 2013 19:12:00 -0400 Subject: [ANN] MadPUG - A New Python Users' Group in Madison, WI Message-ID: Hey all, I wanted to first announce a python users' group in Madison, WI and second ask that anyone with a desire to speak at the first meet-up get in touch. Devin Walters and I are using meetup.com to coordinate the event and would hope to start holding meet-ups on a regular basis. If you're interested please join the group here: http://www.meetup.com/MadPUG/ We would also be willing to use madison at python.org which once hosted the list for a PUG in Madison (but seems rather inactive) if the python community would like. Cheers! Ian --- https://github.com/sigmavirus24 https://bitbucket.org/icordasc From stefan.urbanek at gmail.com Sun Jun 23 19:58:54 2013 From: stefan.urbanek at gmail.com (Stefan Urbanek) Date: Sun, 23 Jun 2013 10:58:54 -0700 (PDT) Subject: =?windows-1252?Q?ANN=3A_Bubbles_0=2E1_=96_Virtual_Data_Object_Framework?= Message-ID: Hi, I'm happy to announce new Python data framework: Bubbles Motto: Focus on the process, not the data technology. Blog post: http://blog.databrewery.org/posts/bubbles-0-1-released.html Here is a short presentation of the core concepts: http://www.slideshare.net/Stiivi/data-brewery-2-data-objects The concepts are: * data objects ? abstraction of tabular data, one object might have multiple representations at once (SQL, iterator, ...) * data stores ? abstraction of dataset collections * operations (performing on top of representations) and execution context (with operation catalog) * processing pipelines Priorities of the framework are: * understandability of the process * auditability of the data being processed (frequent use of metadata) * usability * versatility Working with data: * keep data in their original form. For example: represent data by a SQL statement and do not touch neither move around data if not necessary. * use native operations if possible: compose SQL statements, chain python iterators, compose APIs * performance provided by technology: SQL optimizer should know the best * have options ? custom operations are easy to create Bubbles is performance agnostic at the low level of physical data implementation. Performance should be assured by the data technology and proper use of operations. Summary of current operations: http://www.scribd.com/doc/147247069/Bubbles-Brewery2-Operations More will come, at least basic Mongo ops are planned for 0.2. Github: https://github.com/Stiivi/bubbles If you have any comments, suggestions or questions, let me know. Cheers, Stefan From vasudevram at gmail.com Sun Jun 23 23:53:35 2013 From: vasudevram at gmail.com (vasudevram) Date: Sun, 23 Jun 2013 14:53:35 -0700 (PDT) Subject: XMLtoPDFBook v1.1 released: Create simple PDF books from XML text content Message-ID: XMLtoPDFBook v1.1 released: XMLtoPDFBook is a program that lets you create simple PDF books from XML text content, including support for chapter numbers and names, headers and footers, automatic pagination, and page numbers. Please see this blog post about XMLtoPDFBook: XMLtoPDFBook now supports chapter numbers and names: http://jugad2.blogspot.in/2013/06/xmltopdfbook-now-supports-chapter.html XMLtoPDFBook is not separately released as a stand-alone product; I've added it as one of the components of my larger xtopdf project. But you can use it as a separate product, once you install the prerequisites, which include 1) v1.21 of the open source version of the ReportLab toolkit for PDF creation, and 2) xtopdf itself. The blog post linked above, has links to download xtopdf (and hence, XMLtoPDFBook). The same post (which also links to a previous post about XMLtoPDFBook), also shows how to use XMLtoPDFBook to generate simple PDF ebooks from the text content in XML files that are created in a specific format. The format is simple: the top-level element should be a element, and the inner elements should be elements. Chapter elements can have an optional attribute like this: Using this attribute will result in the specific chapter name being displayed in the header for the pages comprising that chapter (in the PDF output). Here is a guide to installing and using xtopdf: http://jugad2.blogspot.in/2012/07/guide-to-installing-and-using-xtopdf.html Enjoy, and give feedback, if any. - Vasudev Ram Dancing Bison Enterprises Python, Linux and open source training and consulting http://dancingbison.com http://jugad2.blogspot.com https://twitter.com/vasudevram From charlietaylor at users.sourceforge.net Mon Jun 24 10:43:25 2013 From: charlietaylor at users.sourceforge.net (Charlie Taylor) Date: Mon, 24 Jun 2013 01:43:25 -0700 Subject: XYmath a curve fitting GUI for python on Windows Message-ID: I have just released a new project on Sourceforge called XYmath at: https://sourceforge.net/p/xymath/xywiki/Home/ XYmath will find the "best" curve fit using either minimum percent error or minimum total error. It can search through common equations, an exhaustive search through thousands of equations, splines, smoothed splines, or non-linear equations input by the user. After fitting, XYmath will find roots, minima, maxima, derivatives or integrals of the curve. It will generate source code that documents and evaluates the fit in python, FORTRAN or EXCEL. Configurable plots are created using matplotlib that are of publication quality. If a recent version of pythonxy is installed, then XYmath can be installed with no additional dependencies I hope you find it useful. From peterhudec.com at gmail.com Mon Jun 24 13:24:58 2013 From: peterhudec.com at gmail.com (Peter Hudec) Date: Mon, 24 Jun 2013 04:24:58 -0700 (PDT) Subject: Support for Django in Authomatic Message-ID: Hi, I would like to announce that the Authomatic authentication / authorization package now supports Django out of the box. There is a short Authomatic + Django tutorial: http://peterhudec.github.io/authomatic/examples/django-simple.html Enjoy Peter Hudec From mmueller at python-academy.de Tue Jun 25 10:32:03 2013 From: mmueller at python-academy.de (=?ISO-8859-15?Q?Mike_M=FCller?=) Date: Tue, 25 Jun 2013 10:32:03 +0200 Subject: ANN: Training - Einstieg in Django (German), 15. - 17. Juli 2013 Message-ID: <51C95583.6070008@python-academy.de> This announcement is in German because the training is offered in German. We do offer an English version [1]. Einstieg in Django ================== Was: Praktischer Einstieg in die Entwicklung von Web-Anwendungen mit Django Wann: 15. - 17. Juli 2013 Wo: Python Academy, Leipzig Wer: Markus Zapke-Gr?ndemann Details: http://www.python-academy.de/Kurse/django_kurs_einstieg.html Django ist ein sehr beliebtes Framework f?r die Entwicklung von Webanwendungen mit Python. In diesem Kurs lernen die Teilnehmer alle Grundlagen von Django von unserem erfahrenen Django-Trainer. M?chten Sie schnell gute Django-Anwendungen schreiben? Dann ist das der richtige Kurs f?r Sie. Erlernen Sie Best Practices und wie Sie die vielen Werkzeuge rund um Python und Django effektiv f?r die Entwicklung professioneller, performanter und wartbarer Web-Anwendungen nutzen. Wenn Sie Django schon nutzen und mit den Grundlagen vertraut sind, empfehlen wir unseren Kurs "Django f?r Fortgeschrittene" [2]. Dieser schlie?t sich direkt vom 18. bis 20 Juli an, so dass Sie die M?glichkeit haben sechs Tage Django-Total zu genie?en. Der Kurs findet in Leipzig statt, das ein sehr reiches kulturelles Leben bietet. Leipzig war Gastgeber der ersten beiden PyCon DE Konferenzen 2011 und 2012. Leipzig ist sehr gut mit dem Auto und mit ?ffentlichen Verkehrsmitteln zu erreichen. Das Schulungszentrum ist jeweils eine nur Viertelstunde vom Hauptbahnhof oder Flughafen entfernt und von der Autobahnabfahrt sind es nur wenige Minuten bis zu uns. Leipzig bietet reichlich gute Hotels zu sehr moderaten Preisen. Der gleiche Kurs ist auch in englischer Sprache verf?gbar [1]. [1] http://www.python-academy.com/courses/django_course_introduction.html [2] http://www.python-academy.de/Kurse/django_kurs_fortgeschrittene.html From mmueller at python-academy.de Tue Jun 25 10:32:23 2013 From: mmueller at python-academy.de (=?ISO-8859-15?Q?Mike_M=FCller?=) Date: Tue, 25 Jun 2013 10:32:23 +0200 Subject: ANN: Training - Django =?ISO-8859-15?Q?f=FCr_Fortgeschrittene_?= =?ISO-8859-15?Q?=28German=29=2C_18=2E_-_20=2E_Juli_2013?= Message-ID: <51C95597.3000901@python-academy.de> This announcement is in German because the training is offered in German. We do offer an English version [1]. Django f?r Fortgeschrittene =========================== Was: Tiefes Eintauschen in Django Wann: 18. - 20. Juli 2013 Wo: Python Academy, Leipzig Wer: Markus Zapke-Gr?ndemann Details: http://www.python-academy.de/Kurse/django_kurs_fortgeschrittene.html Sie nutzen Django und wollen mehr dar?ber wissen? Dann k?nnen Sie in diesem Kurs tief in fortgeschrittene Konzepte einsteigen. Der Kurs wird Ihnen helfen bessere Anwendungen schneller zu entwickeln. Wenn Sie Django noch nicht nutzen und mit den Grundlagen nicht vertraut sind, empfehlen wir unseren Kurs "Einstieg in Django" [2]. Dieser Kurs vom 15. bis 17. Juli liegt direkt vor dem Kurs f?r Fortgeschrittene, so dass Sie die M?glichkeit haben sechs Tage Django-Total zu genie?en. Der Kurs findet in Leipzig statt, das ein sehr reiches kulturelles Leben bietet. Leipzig war Gastgeber der ersten beiden PyCon DE Konferenzen 2011 und 2012. Leipzig ist sehr gut mit dem Auto und mit ?ffentlichen Verkehrsmitteln zu erreichen. Das Schulungszentrum ist jeweils eine nur Viertelstunde vom Hauptbahnhof oder Flughafen entfernt und von der Autobahnabfahrt sind es nur wenige Minuten bis zu uns. Leipzig bietet reichlich gute Hotels zu sehr moderaten Preisen. Der gleiche Kurs ist auch in englischer Sprache verf?gbar [1]. [1] http://www.python-academy.com/courses/django_course_advanced.html [2] http://www.python-academy.de/Kurse/django_kurs_einstieg.html From dana.develop at gmail.com Tue Jun 25 18:02:00 2013 From: dana.develop at gmail.com (dana.develop at gmail.com) Date: Tue, 25 Jun 2013 09:02:00 -0700 (PDT) Subject: memprof - a memory profiler for Python Message-ID: <76e0aa86-6c80-4214-8496-e03103c2d231@googlegroups.com> Hello, I'd like to announce memprof, a memory profiler for Python: http://jmdana.github.io/memprof/ memprof logs and plots the memory usage of all the variables during the execution of the decorated methods. The source code is available in GitHub: https://github.com/jmdana/memprof And the mailing list is here: http://groups.google.com/group/memprof The project is licensed under GPLv3 and the current version is 0.2.2. Please don't hesitate to contact me through the mailing list and/or GitHub (e.g. opening a new issue). I hope you find it useful. Jose. From dinov at microsoft.com Wed Jun 26 19:09:37 2013 From: dinov at microsoft.com (Dino Viehland) Date: Wed, 26 Jun 2013 17:09:37 +0000 Subject: [ANN] Python Tools for Visual Studio 2.0 Beta Message-ID: We're pleased to announce the release of Python Tools for Visual Studio 2.0 Beta (https://pytools.codeplex.com/releases/view/103101). Python Tools for Visual Studio (PTVS) is an open-source plug-in for Visual Studio which supports programming with the Python language. PTVS supports a broad range of features including CPython/IronPython, Edit/Intellisense/Debug/Profile, Cloud, HPC, IPython, and cross platform debugging support. For a quick overview of the general IDE experience, please watch this video: http://www.youtube.com/watch?v=TuewiStNT0M. There are a number of exciting improvement in this release compared to 1.5, all based on your feedback & suggestions. Here's a summary: NOTE - this is a Beta release which is primarily meant for feedback purposes and has not been tested as much as the 1.5.x RTM releases! This release works with all three VS2010, VS2012 and VS2013. Beta limitations are noted in the corresponding docs for each feature. Please try these bits and let us know what you think! Debugging * New - Mixed-mode debugging! Alpha introduced remote debugging on Linux and MacOS. Beta introduces mixed Python and C/C++ debugging. Please refer to the documentation or this video: http://www.youtube.com/watch?v=wvJaKQ94lBY IDE * New - "Python Environments": Please refer to the documentation or this video for an overview: http://www.youtube.com/watch?v=L1bk7t9YDkE * "Interpreters" window: quickly see a global view of your installed interpreters and switch between them. * Vastly improved Virtual Env support: easily and quickly create silo'd environments for installing packages in your project. * Associate different Interpreters with your Project and quickly switch between them. * Various Intellisense improvements. Please refer to the documentation or this video for an overview: http://www.youtube.com/watch?v=TFxRSV9cucM Cloud * Improvements to Django support for Azure Web Sites and Cloud Service - you can now publish a Django site to Azure with minimum number of clicks. Azure provides free hosting to kick the tires. Please refer to the documentation or this video for an overview: http://www.youtube.com/watch?v=S7A7VNnsA_8 * Various bug fixes to the Azure SDK for Windows, Linux and MacOS. General * New - Starting with VS2013, we're happy to announce that PTVS is "in the box". This means when you install Visual Studio, there is a an existing "Python" download link which will install PTVS for you. * New - Survey/News feature. This experimental feature will periodically push News items such as "We just posted a new video on Python Debugging: ", or mini surveys such as "Do you think PTVS 2.0 RC is ready to ship? Yes No". You are in full control of this feature and can turn it off permanently. No user identifiable information is collected. Whenever we need any, we just ask the NSA. * Various bug fixes and improvements. For a list of known issues for this release, please see each feature's docs. We'd like to thank the following people who took the time to report the issues and feedback for this release: aperception, ardakkolcak, atilev, bbusacker, bde_fft, bveldkamp, Crazometer, cvolzke, delind, fwkz, golubdr, JandalDoe, jmfrank63, joxn, mcdevitts, miloslavbeno, mmclark, newfound, Nirmal4G, noam0101, pasmocko, salbright, shoejunk, soyiharu, tffung, VadimC. From michael at stroeder.com Thu Jun 27 10:59:46 2013 From: michael at stroeder.com (=?ISO-8859-1?Q?Michael_Str=F6der?=) Date: Thu, 27 Jun 2013 10:59:46 +0200 Subject: ANN: python-ldap 2.4.13 Message-ID: <51CBFF02.90202@stroeder.com> Find a new release of python-ldap: http://pypi.python.org/pypi/python-ldap/2.4.11 python-ldap provides an object-oriented API to access LDAP directory servers from Python programs. It mainly wraps the OpenLDAP 2.x libs for that purpose. Additionally it contains modules for other LDAP-related stuff (e.g. processing LDIF, LDAP URLs and LDAPv3 schema). Project's web site: http://www.python-ldap.org/ Ciao, Michael. ---------------------------------------------------------------- Released 2.4.13 2013-06-27 Changes since 2.4.12: Lib/ * ldapobject.ReconnectLDAPObject._apply_last_bind() now sends anonymous simple bind request even if the calling application did not to provoke ldap.SERVER_DOWN in method reconnect() * ldapobject.ReconnectLDAPObject.reconnect() now also catches ldap.TIMEOUT exception after reconnection attempt * Several other fixes for ldapobject.ReconnectLDAPObject (thanks to Jonathan Giannuzzi) ---------------------------------------------------------------- Released 2.4.12 2013-06-01 Changes since 2.4.11: Lib/ * Truly optional import of PyAsn1Error exception which should not fail anymore if pyasn1 is not installed From jendrikseipp at web.de Thu Jun 27 00:03:15 2013 From: jendrikseipp at web.de (Jendrik Seipp) Date: Thu, 27 Jun 2013 00:03:15 +0200 Subject: Vulture 0.4 Message-ID: <51CB6523.5090703@web.de> vulture - Find dead code ======================== vulture finds unused classes, functions and variables in Python code. This helps you cleanup and find errors in your programs. If you run it on both your library and test suite you can find untested code. Due to Python's dynamic nature it is impossible to find all dead code for a static code analyzer like vulture, because it ignores scopes and scans only token names. Additionally some dynamic items that are not explicitly mentioned in the code may be incorrectly reported as dead code. Download ======== http://pypi.python.org/pypi/vulture Features ======== - Fast: Uses static code analysis - Lightweight: Only one module - Complements pyflakes and has the same output syntax - Supports Python 2.6, 2.7 and 3.x News ==== * Ignore unused variables starting with an underscore. * Show warning for syntax errors instead of aborting directly. * Print warning if a file cannot be found. Cheers, Jendrik From mmueller at python-academy.de Wed Jun 26 11:51:23 2013 From: mmueller at python-academy.de (=?ISO-8859-15?Q?Mike_M=FCller?=) Date: Wed, 26 Jun 2013 11:51:23 +0200 Subject: [ANN] Training: Python for Non-Programmers, Leipzig, Germany July 9 - 12, 2013 Message-ID: <51CAB99B.4090604@python-academy.de> Python for Non-Programmers ========================== What: Python for Non-Programmers - Learn programming from scratch When: July 9 - 12, 2013 Where: Python Academy, Leipzig, Germany Instructor: Mike M?ller (eight years of Python training experience) Details: http://www.python-academy.com/courses/python_course_nonprogrammers.html Learn programming with Python. Python is a good first programming language. At the same time is offers many useful features for professional software development. This makes it an ideal choice to start your journey into the world of programming with an optional long-term travel plan. This course is a gentle introduction that does not assume any prior programming knowledge. You only need basic computer skills like working with files and directories. Some experience with the command line is useful but not required. After four days of intensive hands-on training you will be able to write your own Python programs and read more sophisticated source code from others. --- Our next courses: 24.06.-26.06.2013 (Leipzig) Professional Testing with pytest and tox (English) 02.07.2013 (Florence, Italy) Optimization at EuroPython (English) 06.07.-07.07.2013 (Florence, Italy) Advanced Python at EuroPython (English) 09.07.-12.07.2013 (Leipzig) Python for Non-Programmers (English) 15.07.-17.07.2013 (Leipzig) Einstieg in Django (German) 18.06.-20.07.2013 (Leipzig) Django f?r Fortgeschrittene (German) 09.09.-11.09.2013 (Leipzig) Twisted Training (English) 11.09.-13.09.2013 (Bologna, Italy) Python per programmatori (Italian) 12.09.-13.09.2013 (Leipzig) Content-Management mit Plone (German) 11.11.-13.11.2013 (Leipzig) Introduction to Django (English) 14.11.-16.11.2013 (Leipzig) Advanced Django (English) 30.09.-02.10.2013 (Katowice, Poland) Python for Programmers (English) 03.10.-03.10.2013 (Katowice, Poland) Advanced Python Course (English) From haoyi.sg at gmail.com Sat Jun 29 05:15:11 2013 From: haoyi.sg at gmail.com (Haoyi Li) Date: Fri, 28 Jun 2013 20:15:11 -0700 (PDT) Subject: MacroPy 1.0.0 Released! Message-ID: <5da98fc2-d6d9-433c-b132-0455184acf1f@googlegroups.com> MacroPy 1.0.0 (https://github.com/lihaoyi/macropy) has been released on PyPI. 1.0.0 is a landmark release of MacroPy which means: The core engine and bundled macros are looking more-or-less as they should. There will still be changes happening and bugs being fixed, but architecturally I'm pretty happy where they are now. The nightly break-all-the-things backwards-incompatible changes are over. Changes will be properly batched up into point releases from now on, with changelists. Development should now take place in the dev branch, with only numbered releases being merged into master. This means that people going to the github will see the docs for a stable, point release instead of the in-flux dev version. There's now a mailing list/google group (this one!) so it should be easier to ask questions or just talk about things. There are still a number of things that I would like to add to MacroPy, but I think that as of now the thing MacroPy needs most is feedback from people actually using it (both using the bundled macros and writing their own) to its future direction. As of this release, the previously ridiculously-in-flux rate of development (which I have received emails about, and which means a bunch of people are using various commits from Github) will slow down. This means if you are: Waiting for a chance to try out the bundled macros (e.g. case classes), now is the chance to do so, as you can be sure they won't shift suddenly under your feet. Functionality may be added, and things may change in backwards-incompatible ways, but those changes should be documented for each point release. Wanting to try writing your own macros, now is the time. With hygienic quasiquotes and the host of tools provided for macro-writers to use, I'm quite happy with how writing macros feels right now. Using some old, random snapshot, waiting for the dust to settle before bothering to upgrade (for fear of being left behind yet again) the dust has basically settled by this point, and there are a bunch of nice goodies[1] to be had! Looking forward to any feedback =) -Haoyi [1] Things that 1.0.0 provides that whatever earlier version of MacroPy you're using probably doesn't - Hygienic Quasiquotes, along with a reasonably-nice hygiene strategy - Caching macro-expanded files .pycs for performance - Exporting the source-tree with all macros pre-expanded - A nicer internal architecture, allowing macros to register pre/post-processing hooks that operate on entire files before/after expansion - Dozens of small bug-fixes and tweaks From albrecht.andi at gmail.com Sat Jun 29 20:08:09 2013 From: albrecht.andi at gmail.com (Andi Albrecht) Date: Sat, 29 Jun 2013 20:08:09 +0200 Subject: sqlparse 0.1.8 Message-ID: I'm pleased to announce sqlparse 0.1.8 Bug Fixes * Whitespaces within certain keywords are now allowed (issue97, patch proposed by xcombelle). Enhancements * Improve parsing of assignments in UPDATE statements (issue90). * Add STRAIGHT_JOIN statement (by Yago Riveiro). * Function.get_parameters() now returns the parameter if only one parameter is given (issue94, by wayne.wuw). * sqlparse.split() now removes leading and trailing whitespaces from splitted statements. * Add USE as keyword token (by mulos). * Improve parsing of PEP249-style placeholders (issue103). Installation (Python 2.4-2.7, 3.x, pypy): pip install sqlparse Documentation: http://sqlparse.readthedocs.org/ Issue tracker & repository: https://github.com/andialbrecht/sqlparse Or just try it out by visiting: http://sqlformat.org Thanks for all the feedback that leads to all the enhancements and bug fixes in this release. Andi From ashfall at twistedmatrix.com Sun Jun 30 15:34:42 2013 From: ashfall at twistedmatrix.com (Ashwini Oruganti) Date: Sun, 30 Jun 2013 19:04:42 +0530 Subject: Twisted 13.1.0 released Message-ID: On behalf of Twisted Matrix Laboratories, I am pleased to announce the release of Twisted 13.1. Highlights for this release include: * trial now has an --exitfirst flag which stops the test run after the first error or failure. * twisted.internet.ssl.CertificateOptions now supports chain certificates. * twisted.conch.endpoints.SSHCommandClientEndpoint is a new IStreamClientEndpoint which supports connecting a protocol to the stdio of a command running on a remote host via an SSH connection. * twisted.web.xmlrpc.QueryProtocol now generates valid Authorization headers for long user names and passwords. * twisted.internet.endpoints.connectProtocol allows connecting to a client endpoint using only a protocol instance, rather than requiring a factory. For more information, see the NEWS file here: http://twistedmatrix.com/Releases/Twisted/13.1/NEWS.txt Download it now from: http://pypi.python.org/packages/source/T/Twisted/Twisted-13.1.0.tar.bz2 or http://pypi.python.org/packages/2.7/T/Twisted/Twisted-13.1.0.win32-py2.7.msi Many thanks to Tom Prince and Thomas Herv?, whose work on release-process and answers to numerous questions made this release possible. Thanks also to the supporters of the Twisted Software Foundation and to the many contributors for this release. -Ashwini From nd at perlig.de Sun Jun 30 16:50:07 2013 From: nd at perlig.de (=?iso-8859-1?q?Andr=E9_Malo?=) Date: Sun, 30 Jun 2013 16:50:07 +0200 Subject: rJSmin 1.0.7 Message-ID: <201306301650.07664@news.perlig.de> Hello World, I'm pleased to announce version 1.0.7 of rJSmin. About rJSmin ============ rJSmin is a javascript minifier written in python. The minifier is based on the semantics of jsmin.c by Douglas Crockford. The module is a re-implementation aiming for speed, so it can be used at runtime (rather than during a preprocessing step). Usually it produces the same results as the original jsmin.c. It differs in the following ways: - there is no error detection: unterminated string, regex and comment literals are treated as regular javascript code and minified as such. - Control characters inside string and regex literals are left untouched; they are not converted to spaces (nor to \n) - Newline characters are not allowed inside string and regex literals, except for line continuations in string literals (ECMA-5). - "return /regex/" is recognized correctly. - "+ +" and "- -" sequences are not collapsed to "++" or "--" - Newlines before ! operators are removed more sensibly - rJSmin does not handle streams, but only complete strings. (However, the module provides a "streamy" interface). About Release 1.0.7 =================== This release mainly fixes a C/Python inconsistency. It also adds support for Jython 2.7. Supported Python Versions ========================= * Python 2.4 - 2.7 * Python 3.1 - 3.3 * PyPy 1.9, 2.0 * Jython 2.5, 2.7 (Python only) License ======= rJSmin is available under the terms and conditions of the "Apache License, Version 2.0." Links ===== * Homepage + Documentation: http://opensource.perlig.de/rjsmin/ * PyPI: https://pypi.python.org/pypi/rjsmin * License: http://www.apache.org/licenses/LICENSE-2.0 Andr? "nd" Malo From jendrikseipp at web.de Fri Jun 28 18:48:26 2013 From: jendrikseipp at web.de (jendrikseipp at web.de) Date: Fri, 28 Jun 2013 18:48:26 +0200 Subject: RedNotebook 1.7.2 Message-ID: <0MZDga-1UXlZe0BH2-00L0yA@smtp.web.de> A new RedNotebook version has been released. You can get the tarball, Windows installer and links to distribution packages at http://rednotebook.sourceforge.net/downloads.html What is RedNotebook? -------------------- RedNotebook is a **graphical journal** and diary helping you keep track of notes and thoughts. It includes a calendar navigation, customizable templates, export functionality and word clouds. You can also format, tag and search your entries. RedNotebook is available in the repositories of most common Linux distributions and a Windows installer is available. It is written in Python and uses GTK+ for its interface. What's new in this version? --------------------------- * Show error if saving fails due to a directory not being created. * Ignore hashtags starting with more than one #. * Fix: Allow inserting files and pictures from the "recently used" section (lp:1195759). Cheers, Jendrik