I have just released version 0.0.10 of Shed Skin, an optimizing
Python-to-C++ compiler. It allows for translation of pure
(unmodified), implicitly statically typed Python programs into
optimized C++, and hence, highly optimized machine language. Many
non-trivial benchmarks (ray tracer, chess player, othello player, sat
solver, 3 sudoku solvers..) run typically 2-40 times faster than when
using Psyco, 12 times on average, and 2-220 times than when using
CPython, 45 times on average.
Besides many bug fixes, this release adds many error messages for
unsupported features, so it should be much easier to try out the
compiler and work around problems. Please download this new release
from http://mark.dufour.googlepages.com and let me know about any
if vars: self.output('; '.join([self.type(var)+' '+name for (name,var)
Python author and trainer Mark Lutz will be interviewed
on the radio show Tech Talk this Sunday, October 1st,
at 6PM Eastern time. He'll be answering questions about
Python, his books, and his Python training services.
For more details about the show, see Tech Talk's website
at http://techtalk.imi-us.com. You can also listen to
the live webcast of the show on KFNX's website,
--Python Training Services
Issue IX - 28 September 2006
We are proud to announce the release of LDTP 0.6.0. 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 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
This release features an all new TCP interface of the server which, is
covered briefly below.
Recording has taken new heights and the code is much organized now. More
bug fixing and documentation changes.
Whats new in this release...
+ Remote TCP based execution
Tests can, now, be carried out from a remote terminal. LDTP Clients
can connect to the new TCP interface and run tests with-in the box that
is running the server. This kind of interface comes handy for testing
applications running in small devices. This interface is contributed by
+ Recording using LDTP
This new version of LDTP features a recorder tool which would help in
generating automation scripts automatically by recording user events.
This would greatly reduce the time required for creating and maintaining
automation scripts. Thanks to Venkateswaran ('whacko'), Harishankaran
('sp2hari') and Theyagarajan ('Taggy') for making this happen. For more
information on this please refer to
+ Bug fixes
This version includes loads of bug fixes to address important issues
like memory leak, API functionality, accessibility compatible issues
etc., For a detailed list please refer to release notes section of our
project site hosted in http://ldtp.freedesktop.org. Thanks to all the
developers for their contribution and dobey especially.
* Accessibility test suite by Rodney Dawes (dobey) -
* LDTP presentation in GNOME Accessibility summit, Boston, 2006
* LDTP Presentation in Mozilla Accessibility summit, Boston, 2006
LDTP Recording demo
Record / Playback of scripts -
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
For suggestions to improve this newsletter, please write to
Nagappan A <anagappan(a)novell.com>
Linux Desktop Testing Project - http://ldtp.freedesktop.orghttp://nagappanal.blogspot.com
SUSE® Linux Enterprise 10
Your Linux is ready™
"...from little towns with strange names like Smegma, Spasmodic, Frog,
and the far-flung Isles of Langerhans".
Someone on SourceForge has a project that includes the name
'spasmodic' so I'm using the name spasmoidal. But this code will
always be spasmodic to me.
Asynchronous I/O (and other tasks) proceeding in fits and spasms
The SpasmodicEngine selects tasks (spasmoids) from a (heapqueue based)
priority queue. The tasks are Python 2.5 extended generators (some
call them coroutines: PEP 342). The engine calls task.send() with an
appropriate argument. One of the library of tasks is Pollster.
Pollster calls poll() with for tasks that are waiting I/O. Tasks that
are ready for I/O are fed to the priority queue.
Spasmodic provides an efficient way to manage a large number of
sockets and/or files. Other processing works well too, if it can be
subdivided into brief spasms.
Doug Fort, Consulting Programmer
Registrations are open for the Open Source Developers' Conference 2006:
http://www.osdc.com.au/registration/index.html Book before 31st October to
save $50 and get a free conference t-shirt!
The Open Source Developers' Conference is an Australian conference covering
talks about software development for open source languages and projects;
regardless of operating system. The technical program is running from 6th -
8th December 2006 and will be held in Melbourne, Victoria (at Monash
University's Caulfield Campus). We are planning to have 3 streams of talks
over the three days with combined keynotes at the start and end of each
day. Morning and afternoon teas, and lunch will be provided. A conference
dinner will be held on the night of the 6th.
This year we have a strong Python track with talks including:
- "Python in Mozilla" by Mark Hammond, Enfold Systems Inc.
- "Overview of Python ctypes" by Alex Holkner (the pygame-ctypes guy)
- "Python 3.0" by Anthony Baxter, Python's release manager
- "A Rails/Django Comparison" by Alan Green, Cirrus Technologies and
Ben Askins, Sterland Computing
Other talks include:
- "Mono - Migrating from Windows to Linux" by Dr. Trent Mifsud,
Lecturer for the Faculty of Information Technology, Monash University
- "Data Warehousing HOWTO" by Evan Leybourn, Director of Looking Glass
- "J2EE and Open Source Innovation: The Relationship between Open
Source and Standards" by Keith Pitty, Senior Consultant at Cirrus
Technologies Pty Ltd
- "Enterprise PHP" by Thorsten Rinne, Software Developer at Mayflower
GmbH / ThinkPHP
- "Obfuscation, Golfing and Secret Operators in Perl" by José Castro,
Team Leader at log
For a full list please visit:
Conference keynote presentors include Damian Conway, Randal L. Schwartz,
Richard Farnsworth and others. On the 5th of December we are running a
number of short tutorials. These cover Cascading Style Sheets, Open Source
Python GIS Hacks, Testing Web Applications with Perl, a Drupal Tutorial, an
Introduction to Perl Template Toolkit and Building Large Scale Web Apps.
For more information please visit:
We look forward to sharing this great conference with you.
OSDC Program Chair
On behalf of the CherryPy team I'd like to announce the availability of
CherryPy 3.0.0 beta 2. There have been some significant bug fixes and
improvements since the first beta release a few weeks ago. Here are some
* All CherryPy exceptions now inherit from CherryPyException
* The permission bug with the error log has been corrected.
* Builtin SSL support! (requires PyOpenSSL).
* New cherrypy.url() function replaces tree.url and request.url.
* New builtin tools for basic and digest authentication.
* Encoding bug fixes.
For more details on 3.0, see the following URLs:
Thanks to the CherryPy community for all of the bug reports and comments on
the first beta. Please try out this latest release and let us know what you
Pune Python meet organized by PythonThreads.com is scheduled on 30th
September. The main purpose of the meet is to introduce Django to
Python web framework developers and encourage them to use it in their
daily tasks. Amitabh Jain will speak on Django. In the IndicThreads.com
Java meet, Amol Raje will talk about Portlets.
Amitabh Jain is an IT professional with more than 8 years of experience
in companies like Infosys and Vertex. He has done his graduation in
Computer Science from Pune University followed by MBA from IIM,
Ahmedabad. Over the years, he has worked with various technologies in
different technical and managerial capacities. Currently, he is
involved in setting up a startup that is focused on executing projects
using accelerated development frameworks like Django.
He first started dealing with Python in 2000, when he was evaluating
Zope for one of the projects at Infosys in Bangalore. After that he has
been using Python in various projects.
Amol Raje is currently working as a business analyst with the Global
functions team in HSBC GLT. He was earlier with ITC Infotech in
Bangalore and has over 5 years of industry experience.
Guido van Rossum, the creator of Python, recently commented on Django.
He said, "People keep asking me to pick one, and I like Django because
I like the way its authors run their project : They really 'get'
open-source development.". He is pretty clear that he is not trying to
force the "there should be only one way to do it" philosophy on the
world of Python web frameworks. Well, Guido prefers Django, you can
judge the importance of Django from his comments.
Django session details :-
* Introduction to Django (5 mins)
* Mapping MVC concepts in Django (5 mins)
* A walkthrough of a simple Django application (15 mins)
* ORM in Django (5 minutes)
* A look at a more complex Dnago application (30 minutes)
Session will be followed by an open discussion on Django.
Date and Time :-
Saturday, 30th September 2006
4.30 pm - 5.30 pm - Introduction to Portlets. Walkthrough of portlet
development and how they could be put to use (business drivers). Also a
quick walkthough on portlet administration - by Amol Raje
5.35 pm - 6.35 pm - Pune Python meet - A session on Django. Django is a
high-level Python Web framework that encourages rapid development and
clean, pragmatic design. - by Amitabh Jain
Symbiosis Institute of Computer Studies and Research (SICSR),
7th floor, Atur Center, Model Colony, Pune, India.
(Event supported by SICSR)
* Entry is free of cost. Entry on first come first served basis.
*Please share the meet details or this file on your college / company
mailing lists or notice boards so that others could also benefit.*
IndicThreads and PythonThreads meets are held on the last Saturday of
PyCon 2007, to be held in Dallas at the same location as in 2006, is coming up
and we need instructors to fill Tutorial Day on Feb 22. Last year we had
Internet Programming with Python
Getting Started with wxPython
Text & Data Processing
Plone Rapid Bootcamp
Using Databases with Python
A Game-Free Introduction to PyGame
Getting Started with the Twisted Framework
Agile Development and Testing in Python
Classes are half-day affairs (3-hours with a 15-min break) and net the
instructor $500-$1500 (depending upon enrollment). One or two of those would
easily cover your expenses for attending PyCon and then some. And since
tutorials are held the day BEFORE the main conference, you won't miss any
Tutorials have more stringent requirements than talks, often providing class
handouts and finely tuned presentations. For this reason we want the best.
And if you're short on topic ideas, or a potential student who would like a
specific topic covered, check out our wiki page at
Instructors, email your (plain text) proposals, 250 to 1000 words long, to
<pycon(a)python.org>. The deadline for submissions is _Nov 15_ with an
acceptance decision by Nov 22. Your proposal should cover:
* Instructor name(s)
* Contact Information
* Summary of proposed presentation
* Presentation outline
* Intended audience (non-programmers, beginning programmers,
advanced users, core Python developers, etc.)
* (Recommended) At least one previous presentation/teaching
So get cranking and let us see your best.
PyCon 2007 Co-Chair
On behalf of the Zope 3 development team I'm proud to announce the final
Zope 3.3.0 release. There were no changes since the 3.3.0 release candidate.
Zope 3 is the next major Zope release and has been written from scratch
based on the latest software design patterns and the experiences of Zope 2.
Cleanup of the Zope 3 packages has continued to ensure a flexible and
scalable platform. We continued the work on making the transition from
Zope 2 to Zope 3 by making Zope 2.10 use even more of the Zope 3
packages. But the transition is far from complete yet. **You can't run
Zope 2 applications in Zope 3.**
Installation instructions for both Windows and Un*x/Linux are now
available in the top level README.txt file of the distribution. The
binary installer is recommended for Windows.
Zope 3.3 requires Python 2.4.1 to run, Python 2.4.3 is recommended. It
does **NOT** work with Python 2.5 yet. You must also have zlib installed
on your system.
Most Important Changes Since Zope 3.2
- Provided a new component registry API that allows multiple
component registries to be combined more flexibly than before.
See 'zope.component.interfaces.IComponentRegistry' for more
- Greatly simplified local-component registration.
See 'zope.component.interfaces.IComponentRegistry' for more
- Moved many packages out of zope.app to make them easier to use
outside of Zope.
- Change the session credentials plugin to make it configurable
in which fields it looks for the credentials.
- Added a new API for collating text. You can now adapt
a locale to 'zope.i18n.interfaces.ILocales.ICollator'. You can
then use that to sort strings, such as menu entries, in a
- A new 'zope.annotation.factory' helper function that makes
it easier to create annotations. Also added a README in
'zope.annotation' which explains how to use it.
- Added a more complete set of widgets for fields that use
iterable sources. These widgets now mirror the set provided
by vocabulary-based fields.
- Added a cleaner and more robust API to testbrowser for setting
- Deprecated several ZCML directives:
* content (as an alias to the class directive)
- The 'browser:layer' directive and the 'ILayer' interface
has been deprecated. Registering layers has become obsolete,
layers should be created as interfaces extending
- The 'browser:skin' directive has been deprecated. Skins
should be created as interfaces extending 'IBrowserRequest'
and can be registered using a simple 'utility' directive.
- The 'ISkin' interface has been renamed to 'IBrowserSkinType'.
For a complete list of changes see the 'CHANGES.txt' file.
- Zope 3 Development Web Site:
- Zope 3 Dev Mailing List:
- Zope 3 Users Mailing List:
- IRC Channel: #zope3-dev at irc.freenode.net
Thanks goes to everyone who contributed.