Yamlog, v0.9 released
Yamlog uses a rotating file that rollovers at 128 KB, it writes
messages in YAML format since it's more easy to parse --using the
international format for date and time--, and it also logs the higher-
level messages to the standard error into single lines.
One day I was bored with MineSweeper not doing even simple analysis
for me, and wrote it in Python. Then I realized it'd be nice as an
exercise: I give you an implementation of dumb MineSweeper, with GUI,
and you subclass it to make it smarter. It comes with a detailed
document guiding you step-by-step.
If you don't feel like programming but just want to play, it comes
with a full solution :-)
The latest version will always live at:
I'd be happy to hear feedback.
Beni Cherniavsky-Paskin <cben(a)users.sf.net>
We are proud to announce the release of LDTP 1.7.1. This release features
number of important breakthroughs in LDTP as well as in the field of Test
Automation. This release note covers a brief introduction on LDTP followed
by the list of new features and major bug fixes which makes this new version
of LDTP the best of the breed. Useful references have been included at the
end of this article for those who wish to hack / use LDTP.
Linux Desktop Testing Project is aimed at producing high quality test
automation framework (C / Python) and cutting-edge tools that can be used to
test Linux Desktop and improve it. It uses the Accessibility libraries to
poke through the application's user interface. The framework also has tools
to record test-cases based on user events in the interface of the
application which is under testing. We strive to help in building a quality
NOTE: *** This is a bug fix release only as requested by Sun QA team, we
recommend to use LDTPv2 ***
Changes in this release:
Patch by James Tatum to fix Bug 606224 - Exceptions do not return unicode
Patch by Ara Pulido to fix Bug 603115 - Activate wnck function is not
Bug 603118 - wnck wrappers do not work with LDTP window names
Bug 605650 - LDTP core dumps on OpenSolaris
Bug 598947 - waittillguiexist() documentation should say if
wildcards/regexes are allowed
Patch by Adam Collard to fix Bug 599119 - checkrow action fails on table
Special thanks to James Tatum, Ara Pulido, Murray Cumming, Conny Cheng, Adam
Download source -
Download rpm - http://download.opensuse.org/repositories/home:/anagappan/
Will schedule deb build soon in openSUSE Build Service
For detailed information on LDTP framework and latest updates visit
For information on various APIs in LDTP including those added for this
release can be got from http://ldtp.freedesktop.org/user-doc/index.html
To subscribe to LDTP mailing lists, visit
IRC Channel - #ldtp on irc.freenode.net
Linux Desktop (GUI Application) Testing Project -
I'm happy to announce that ActivePython 18.104.22.168 is now available for
This is a minor release with several updates and fixes.
Changes in 22.214.171.124
- Upgrade to Python 2.5.5
- Upgrade to Tcl/Tk 8.5.8
- Upgrade to PyWin32 CVS (2009-11-10)
- Security upgrade to openssl-0.9.8l
- [Windows] Include Tcl/Tk header files
- [Windows] Allow side-by-side installation of 32-bit and 64-bit builds
- [Mac] Fix the MacOSX build to use Tcl/Tk 8.5.x
See the release notes for full details:
What is ActivePython?
ActivePython is ActiveState's binary distribution of Python. Builds
for Windows, Mac OS X, Linux are made freely available. Builds
for Solaris, HP-UX and AIX, and access to older versions are
available with ActivePython Business Edition:
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.
Beginning with the 126.96.36.199 release, ActivePython includes a binary package
manager for Python (PyPM) that can be used to install packages much
easily. For example:
pypm install pylons
See this page for full details:
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
An online version of the docs can be found here:
We would welcome any and all feedback to:
Please file bugs against ActivePython at:
On what platforms does ActivePython run?
ActivePython includes installers for the following platforms:
- Windows/x64 (aka "AMD64")
- Mac OS X
- Linux/x86_64 (aka "AMD64")
- Solaris/SPARC (Business Edition only)
- Solaris/x86 (Business Edition only)
- HP-UX/PA-RISC (Business Edition only)
- AIX/PowerPC (Business Edition only)
- AIX/PowerPC 64-bit (Business Edition only)
Custom builds are available in Enterprise Edition:
Thanks, and enjoy!
The Python Team
sridharr at activestate.com
The annual US Scientific Computing with Python Conference, SciPy, has
been held at Caltech since it began in 2001. While we always love an
excuse to go to California, it’s also important to make sure that we
allow everyone an opportunity to attend the conference. So, as Jarrod
Millman announced last fall, we’ll begin rotating the conference
location and hold the 2010 conference in Austin, Texas.
As you may know, Enthought is headquartered in Austin. So in addition
to our standard SciPy sponsorship, this year we’ll also be undertaking
a great deal of the planning and organization.
To begin with, we’re thrilled to announce that we’ve secured several
corporate sponsorships that will allow us to host the conference at
the brand new AT&T Executive Education and Conference Center on campus
at the University of Texas. It’s a wonderful facility in Central
Austin and provides easy access to an array of great restaurants,
parks, and music venues.
We will also be able to provide stipends for our Tutorial presenters
for the first time. These community members provide us with an
invaluable learning experience every year, and we’re very excited to
be able to compensate them for their efforts. And of course, we’ll
also continue to offer student sponsorships to support active academic
contributors who want to attend the conference.
So mark your calendars, folks! June 28 – July 3. Early registration
The Enthought Team
Scientific Computing Solutions
Hello Python Community,
We're pleased to announce the release of IronPython 2.6.1 RC1. This version of IronPython makes great strides in stability and compatibility, including a considerable number of targeted bugfixes. Because this is our largest servicing release to date, and due to our decision against incrementing the assembly version numbers, it is important that we get everything right. To this end, we present our first-ever RC for a minor dot release. Of course, your feedback is imperative to the quality of this release, so we'd love to hear from you!
IronPython 2.6.1 comes in two flavors - one that runs on top of .NET 4.0 RC, and one that runs on any other framework starting with .NET 2.0 SP1. They can be downloaded here:
- IronPython 2.6.1 RC1 for .NET 2.0 SP1: http://ironpython.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=40144
- IronPython 2.6.1 RC1 for .NET 4.0 RC: http://ironpython.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=40146
Note: The .NET Framework 4.0 RC is required for the latter release and can be downloaded at http://www.microsoft.com/downloads/details.aspx?FamilyID=a9ef9a95-58d2-4e51…
IronPython 2.6.1 RC1 includes fixes for well over 50 bugs, large and small. Ctypes has had a number of significant updates, including union support, variant_bool, and wintypes. Another focus has been on sys.settrace, making debugging more reliable. For example, sys.settrace now returns the correct frame, supports tracing through modules, and no longer interferes with "import os". Other notable fixes include thread-safe importing, and the missing error code in _winreg exception.
In addition, we've made a substantial improvement in import time. Not only does this reduce startup time, but can speed up the importing of large, definition-heavy modules by up to 50%.
As you might imagine, the .NET 4.0 flavor of IronPython 2.6.1 RC1 has a few of its own changes designed for better interoperability with the framework. These include fixing some errors with Func<> and better runtime isolation when similarly-named assemblies in different locations are loaded in multiple engines. In addition, both the .NET 2.0 and .NET 4.0 builds support the new .NET 4.0 IStructuralEquatable and IStructuralComparable interfaces and maps them to the appropriate operations (__eq__, __hash__, __gt__, etc.). In the case of .NET 4.0, this replaces IValueEquality as the gold standard for defining equality in an interop-friendly manner. In the .NET 2.0 build, these interfaces are copied so that their use can be phased in while retaining IValueEquality for backwards compatibility.
Special thanks to Albert Szilvasy, cendalc, clovery, egonw_, essey, fabiofz, igalse, jazzcat, jlunder, laughingboy, marten_range, László de Almásy, lbaker, Lukas Cenovsky, pl6306, roinet, sanxiyn, Thomas Heller, vernondcole, and Wolfram for reporting issues. Happy Scripting!
- The IronPython Team
-----BEGIN PGP SIGNED MESSAGE-----
Hello Python Community.
I'm pleased to announce pyxser-1.4.2r, a python extension which
contains functions to serialize and deserialize Python Objects
into XML. It is a model based serializer. Here is the ChangeLog
entry for this release:
Daniel Molina Wegener <dmw at coder dot cl>
* pyxser_collections.c: Added constraint checks for NULL
pointers removing nested statements.
* pyxser.c: Removed nested statements.
* pyxser_tools.c: Added constratints checks for NULL pointers,
removed nested statements and added strict checking for lists
since it was crashing with an ambigous list definition that
can not be handled by PyList_Check().
* test-utf8.py: Added tests to determine if it continue
crashing with module serialization.
Thanks to pyxser users for their feedback.
This release contains some bug fixes, mainly related to type
checking and type handling. I hope this small extension will
help you on your programming tasks.
The project is hosted at:
The web page for the project is located at:
PyPi entry is:
For a sample article on how to integrate
pyxser with ZSI WebServices:
Thanks and best regards,
Daniel Molina Wegener <dmw [at] coder [dot] cl>
Software Architect, System Programmer & Web Developer
Phone: +1 (510) 629-4267 | Blog: http://coder.cl/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
-----END PGP SIGNATURE-----
Celery 1.0 has been released!
We're happy to announce the release of Celery 1.0.
What is it?
Celery is a task queue/job queue based on distributed message passing.
It is focused on real-time operation, but supports scheduling as well.
The execution units, called tasks, are executed concurrently on one or
more worker servers. Tasks can execute asynchronously (in the background)
or synchronously (wait until ready).
Celery is already used in production to process millions of tasks a day.
Celery was originally created for use with Django, but is now usable
from any Python project. It can
also operate with other languages via webhooks.
The recommended message broker is RabbitMQ (http://rabbitmq.org), but support
for Redis and databases is also available.
For more information please visit http://celeryproject.org
From this version on the public API is considered stable. This means there won't
be any backwards incompatible changes in new minor versions. Changes to the
API will be deprecated; so, for example, if we decided to remove a function
that existed in Celery 1.0:
* Celery 1.2 will contain a backwards-compatible replica of the function which
will raise a PendingDeprecationWarning.
This warning is silent by default; you need to explicitly turn on display
of these warnings.
* Celery 1.4 will contain the backwards-compatible replica, but the warning
will be promoted to a full-fledged DeprecationWarning. This warning
is loud by default, and will likely be quite annoying.
* Celery 1.6 will remove the feature outright.
See the Celery Deprecation Timeline for a list of pending removals:
* Task decorators
Write tasks as regular functions and decorate them.
There are both task(), and periodic_task() decorators.
* Tasks are automatically registered
Registering the tasks manually was getting tedious, so now you don't have
to anymore. You can still do it manually if you need to, just
disable Task.autoregister. The concept of abstract task classes
has also been introduced, this is like django models, where only the
subclasses of an abstract task is registered.
If enabled, the worker will send events, telling you what tasks it
executes, their results, and how long it took to execute them. It also
sends out heartbeats, so listeners are able to detect nonfunctional
workers. This is the basis for the new real-time web monitor we're working on
* Rate limiting
Global and per task rate limits. 10 tasks a second? or one an hour? You
decide. It's using the token bucket algorithm, which is
commonly used for network traffic shaping. It accounts for bursts of
activity, so your workers won't be bored by having nothing to do.
* New periodic task service.
Periodic tasks are no longer dispatched by celeryd, but instead by a
separate service called *celerybeat*. This is an optimized, centralized
service dedicated to your periodic tasks, which means you don't have to
worry about deadlocks or race conditions any more. But that does mean you
have to make sure only one instance of this service is running at any one
**TIP:** If you're only running a single celeryd server, you can embed
celerybeat inside it. Just add the --beat argument.
* Broadcast commands
If you change your mind and don't want to run a task after all, you
now have the option to revoke it.
Also, you can rate limit tasks or even shut down the worker remotely.
It doesn't have many commands yet, but we're waiting for broadcast
commands to reach its full potential, so please share your ideas
if you have any.
* Multiple queues
The worker is able to receive tasks on multiple queues at once.
This opens up a lot of new possibilities when combined with the impressive
routing support in AMQP.
* Platform agnostic message format.
The message format has been standardized and is now using the ISO-8601 format
for dates instead of Python datetime objects. This means you can write task
consumers in other languages than Python (eceleryd anyone?)
Periodic tasks are now scheduled on the clock, i.e. timedelta(hours=1)
means every hour at :00 minutes, not every hour from the server starts.
To revert to the previous behavior you have the option to enable
* ... and a lot more!
To read about these and other changes in detail, please refer to
the change log: http://celeryproject.org/docs/changelog.html
This document contains crucial information for those
upgrading from a previous version of Celery, so be sure to read the entire
change set before you continue.
**TIP:** If you install the setproctitle module you can see which
task each worker process is currently executing in ps listings.
Just install it using pip: pip install setproctitle.
* Homepage: http://celeryproject.org
* Download: http://pypi.python.org/pypi/celery
* Documentation: http://celeryproject.org/docs/
* Changelog: http://celeryproject.org/docs/changelog.html
* Code: http://github.com/ask/celery/
* FAQ: http://ask.github.com/celery/faq.html
* Mailing-list: http://groups.google.com/group/celery-users
* IRC: #celery on irc.freenode.net.