Kamaelia 0.3.0 has been released!
Introduction
============
Kamaelia is a networking/communications infrastructure for innovative
multimedia systems. Kamaelia uses a component architecture designed to
simplify creation and testing of new protocols and large scale media
delivery systems. A subset of the system has been tested on series 60
phones.
General feedback is welcome either directly, mailing lists or via IRC
(#kamaelia, freenode). People are also more than welcome to use the
system and suggest improvements not directly related to our specific
goals, because we recognise the system can be used in more areas, not
just networked multimedia. A diversity of systems built improves the
system (for all users of course!) as a whole.
What's New & Changed?
=====================
*NOTE* Kamaelia 0.3.0 requires Axon-1.1.2 to run for some newer
components
(which has also just been released).
Full release notes and change log:
* http://kamaelia.sourceforge.net/Kamaelia-0.3.0-ReleaseNotes.html
New Examples - 7 new examples including:
* Simple reliable multicast based streamer using Ogg Vorbis.
* Dirac Player
* Dirac encode & playback.
* Simple bouncing images game. Designed for very small children who
are amused by things take beep and react when you press left/right
mouse buttons.
* Simple example showing how to use the ticker (First developed for
showing subtitles).
* Demonstration system showing how to use the new software chassis
facility in the context of multiple chassis.
New Tools, Notable Additions
* Visual tool for building Kamaelia pipelines
* Tk Support
* Video encode, decode and playback. (dirac)
New Packages & Subsystems
These names should provide you with a flavour of the new subsystems that
have been added:
* Kamaelia.Codec
* Kamaelia.Chassis
* Kamaelia.File
* Kamaelia.UI.Tk
* Kamaelia.Internet.Simulate
Other Highlights
* Software chassis (software backplane will be coming in
Kamaelia-NEXT)
* Tk integration. (The pipeline builder is a nice example of a tool
this
enables)
* Dirac encoded video decoders and encoders
* Support for video playback. (dirac & YUV)
* Variety of pygame based components, including
* Tools for greater control over the pygame surface managed
environment
* Tools for building simple games. (controlling sprite behaviour for
example)
* Much richer tools for file reading and writing
* Includes re-usable file readers.
* More utilities for message filters and splitting of messages
* Basic tools for simuluating error conditions and failure rates
for delivery of messages (Sufficient for simulating an unstable
underlying internet infrastructure).
What is Kamaelia?
=================
The project aims to make it easy to build networked multimedia
systems (eg audio, video, interactive systems). The result is systems
which are naturally componentised. Also, the resulting systems are
/naturally concurrent/ allowing quick and fast reuse in the same way
as Unix pipelines do.
It is designed as a practical toolkit, such that you can build systems
such as:
* Ogg Vorbis streaming server/client systems (via vorbissimple)
* Create Video players & streaming systems (for dirac).
* With subtitles.
* Simple network aware games (via pygame)
* Quickly build TCP & Multicast based network servers and clients
* Presentation tools
* A networked audio mixer matrix (think multiple audio sources over
network connections mixed and sent on to multiple locations with
different mixes)
* Look at graph topologies & customise the rules of display &
particle
types.
.... Mix and match all of the above.
You can also do a lot of this *visually* using the new PipeBuilder
application in Tools.
Essentially if the system you want to build involves audio or moving
pictures, and you want to be able to make the system network aware,
then this should be quick and easy to do using Kamaelia. (If it isn't,
then a) it's a bug b) needs improving :-)
It runs on Linux, Window, Mac OS X with a subset running on Series 60
phones.
The basic underlying metaphor of a component us like an office worker
with inboxes and outboxes, with deliveries occuring between desks,
offices, and depts. The component can thus do work anyway it likes but
only communicates with these inboxes and outboxes. Like office workers,
components run in parallel, and to achieve this are generally
implemented using python generators, but can also used threads.
The rationale behind the project is to provide a toolkit enabling the
development of new protocols, including streaming, for large scale
media delivery. The license essentially allows use in proprietary
systems without change, but all changes to the system itself must be
shared.
Oh, and due to things like the visual editor, the use of pygame in
a lot of examples, the use of dirac & vorbis, it's quite a lot of
fun too :-)
Requirements
============
* Python 2.3 or higher recommended, though please do report any bugs
with 2.2.
* Axon (1.1.1 recommended)
* vorbissimple (if you want to use the vorbis decode
component/examples)
(Both Axon and vorbissimple are separate parts of the Kamaelia project,
and available at the same download location - see below)
Platforms
=========
Kamaelia has been used successfully under both Linux, Windows and Mac OS
X (panther). A subset of Kamaelia has been successfully tested on Series
60
Nokia mobiles when used with the Axon SERIES 60 branch.
Where can I get it?
===================
Web pages are here:
http://kamaelia.sourceforge.net/Docs/http://kamaelia.sourceforge.net/ (includes info on mailing lists)
ViewCVS access is available here:
http://cvs.sourceforge.net/viewcvs.py/kamaelia/
Tutorial for the core component/concurrency system:
* http://kamaelia.sourceforge.net/MiniAxon/
Project Motivations:
* http://kamaelia.sourceforge.net/Challenges/
Licensing
=========
Kamaelia is released under the Mozilla tri-license scheme
(MPL1.1/GPL2.0/LGPL2.1). See
http://kamaelia.sourceforge.net/Licensing.html
Best Regards,
Michael.
--
Michael.Sparks(a)rd.bbc.co.uk, http://kamaelia.sourceforge.net/
British Broadcasting Corporation, Research and Development
Kingswood Warren, Surrey KT20 6NP
This message (and any attachments) may contain personal views
which are not the views of the BBC unless specifically stated.
Pycairo is a set of Python bindings for the multi-platform 2D graphics
library cairo.
http://cairographics.orghttp://cairographics.org/pycairo
A new pycairo release 1.0.2 is now available from:
http://cairographics.org/releases/pycairo-1.0.2.tar.gzhttp://cairographics.org/releases/pycairo-1.0.2.tar.gz.md5
5bb6a202ebc3990712bced1da6dfb7a8 pycairo-1.0.2.tar.gz
Overview of changes from pycairo 1.0.0 to pycairo 1.0.2
=======================================================
General changes:
Pycairo has been updated to work with cairo 1.0.2.
New cairo functions supported:
cairo.ImageSurface.create_for_data()
Updated functions:
ctx.set_source_rgba (r, g, b, a=1.0) now supports a default alpha
argument
Other changes:
cairo.Matrix now supports the Python sequence protocol, so you can
do:
xx, yx, xy, yy, x0, y0 = matrix
Send instant messages to your online friends http://au.messenger.yahoo.com
Please join us October 12, 7:30-9:00 PM, for the fifth meeting of the
Fredericksburg, VA Zope and Python User Group ("ZPUG"). Learn about
Python configuration of Asterisk, an open source VOIP! Free food!
Rob Page, Zope Corporation CEO and President, will present a
technical session on Asterisk [1] installation, configuration and
operation. A brief discussion of connections to the public telephone
network and internet telephony providers will be presented.
Hadar Pedhazur, Zope Corporation Chairman of the Board, will present
a technical session on call handling and processing using Python
extensions to Asterisk.
We will also serve delicious fruit, cheese, and soft drinks.
We've had a nice group for all the meetings. Please come and bring
friends!
We also are now members of the O'Reilly and Apress user group
programs, which gives us nice book discounts (prices better than
Amazon's, for instance) and the possibility of free review copies.
Ask me about details at the meeting if you are interested.
General ZPUG information
When: second Wednesday of every month, 7:30-9:00.
Where: Zope Corporation offices. 513 Prince Edward Street;
Fredericksburg, VA 22408 (tinyurl for map is http://tinyurl.com/duoab).
Parking: Zope Corporation parking lot; entrance on Prince Edward Street.
Topics: As desired (and offered) by participants, within the
constraints of having to do with Python.
Contact: Gary Poster (gary(a)zope.com)
[1] From www.asterisk.org: Asterisk is a complete PBX in software. It
runs on Linux, BSD and MacOSX and provides all of the features you
would expect from a PBX and more. Asterisk does voice over IP in many
protocols, and can interoperate with almost all standards-based
telephony equipment using relatively inexpensive hardware.
Asterisk provides Voicemail services with Directory, Call
Conferencing, Interactive Voice Response and Call Queuing. It has
support for three-way calling, caller ID services, ADSI, SIP and H.
323 (as both client and gateway). Check the Features section for a
more complete list.
Asterisk needs no additional hardware for Voice over IP. For
interconnection with digital and analog telephony equipment, Asterisk
supports a number of hardware devices, most notably all of the
hardware manufactured by Asterisk's sponsors, Digium™. Digium has
single and quad span T1 and E1 interfaces for interconnection to PRI
lines and channel banks as well as a single port FXO card and a one
to four-port modular FXS and FXO card.
I am pleased to announce version 2.8.2 of the Python bindings for GTK.
The new release is available from ftp.gnome.org as and its mirrors
as soon as its synced correctly:
http://ftp.gnome.org/pub/GNOME/sources/pygtk/2.8/pygtk-2.8.2.tar.gz
What's new since 2.8.1:
- GIOChannel thread fix (Johan, Ole Andre Vadla Ravnås)
For a complete list of new features in 2.8.x, see the wiki page:
http://live.gnome.org/PyGTK/WhatsNew28
Blurb:
GTK is a toolkit for developing graphical applications that run on POSIX
systems such as Linux, Windows and MacOS X (provided that the X server
for MacOS X has been installed). It provides a comprehensive set of GUI
widgets, can display Unicode bidi text. It links into the Gnome
Accessibility Framework through the ATK library.
PyGTK provides a convenient wrapper for the GTK+ library for use in
Python programs, and takes care of many of the boring details such as
managing memory and type casting. When combined with PyORBit and
gnome-python, it can be used to write full featured Gnome applications.
Like the GTK+ library itself PyGTK is licensed under the GNU LGPL, so is
suitable for use in both free software and proprietary applications. It
is already in use in many applications ranging from small single purpose
scripts up to large full features applications.
PyGTK requires GTK+ >= 2.8.0 and Python >= 2.3 to build.
Bug reports, as always, should go to Bugzilla; check out
http://pygtk.org/developer.html and http://pygtk.org/feedback.html for
links
to posting and querying bug reports for PyGTK.
--
Johan Dahlin
johan(a)gnome.org
ANNOUNCING twill v0.7.3.
twill is a simple Web scripting language built on top of Python and
John J. Lee's 'mechanize'. It's designed for automated testing of Web
sites, but it should prove useful for anybody who needs to interact
with Web sites (especially those using logins and cookies) on the
command line or via a script.
twill can also now be used for stress-testing and benchmarking of
complex sites via the twill-fork script.
twill is a reimplementation of Cory Dodt's PBP.
A twill script looks like this:
# go to the /. login page
go http://slashdot.org/login.pl
# fill in the form
fv 1 unickname test
fv 1 upasswd test
submit
# ok, there's no such account ;). show error HTML.
show
---
This is the fourth public release of twill, version 0.7.3.
(Tagline: "miscellaneous updates & twill-fork initial implementation")
Download directly here:
http://darcs.idyll.org/~t/projects/twill-0.7.3.tar.gz
Documentation is online at
http://www.idyll.org/~t/www-tools/twill.html
---
Miscellaneous details:
twill is implemented in Python and uses pyparsing and mechanize. In
addition to the existing simple command language, twill can easily be
extended with Python. twill also provides a fairly simple and
well-documented wrapper around mechanize.
twill scripts can be recorded with maxq, although scripts may require
some hand tweaking at the moment. See the twill documentation for
more information.
twill does not understand JavaScript, I'm sorry to say.
---
Notable bug fixes and features:
* added 'twill-fork' to allow multiprocess execution of twill-scripts
for stress-testing & benchmarking;
* image 'submit' buttons now allowed (Robert Leftwich);
* added 'Accept: text/html' above */* (Nic Ferrier);
* added 'run' to execute Python commands (Ed Rahn);
* added 'runfile' to execute other scripts (Ed Rahn);
* added $variable substitution (Ed Rahn);
* added 'setglobal'/'setlocal' to go along with $variable subs;
* increased code coverage of tests;
I'm happy to announce the release of Frog 1.7
Frog is a Blog server application written for Snakelets. It is small but has many
features, such as BBcode markup, XHTML+CSS page output, multiple users, no database
required, anti-spam measures, email notification, Smileys, RSS feeds, and more.
For more info, see: http://snakelets.sourceforge.net/frog/
Have fun!
--Irmen de Jong
P.S. if you don't already have Snakelets 1.42 installed, you can download
the 'frogcomplete' package. It includes everything to get Frog up and running.
The next meeting of BayPIGgies will be Thurs, October 13 at 7:30pm at
IronPort.
Tim Thompson will describe and demonstrate the interaction between
Burning Man and Python using two applications, Radio Free Quasar and
Ergo.
BayPIGgies meetings alternate between IronPort (San Bruno, California)
and Google (Mountain View, California). For more information and
directions, see http://www.baypiggies.net/
Before the meeting, we sometimes meet at 6pm for dinner. Discussion of
dinner plans is handled on the BayPIGgies mailing list.
Advance notice: We've got some options on the plate for November 10 but
haven't settled anything yet. Please send e-mail to
baypiggies(a)baypiggies.net if you want to suggest an agenda (or volunteer
to give a presentation). The meeting agenda for December 8 has been set.
--
Aahz (aahz(a)pythoncraft.com) <*> http://www.pythoncraft.com/
The way to build large Python applications is to componentize and
loosely-couple the hell out of everything.
py2exe 0.6.3 released
=====================
py2exe is a Python distutils extension which converts Python scripts
into executable Windows programs, able to run without requiring a
Python installation. Console and Windows (GUI) applications, Windows
NT services, exe and dll COM servers are supported.
Changes in 0.6.3:
* First release assembled by py2exe's new maintainer, Jimmy
Retzlaff. Code changes in this release are from Thomas Heller
and Gordon Scott.
* The dll-excludes option is now available on the command line.
It was only possible to specify that in the options argument to
the setup function before.
The dll-excludes option can now be used to filter out dlls like
msvcr71.dll or even w9xpopen.exe.
* Fix from Gordon Scott: py2exe crashed copying extension modules
in packages.
Changes in 0.6.2:
* Several important bugfixes:
- bundled extensions in packages did not work correctly, this
made the wxPython single-file sample fail with newer wxPython
versions.
- occasionally dlls/pyds were loaded twice, with very strange
effects.
- the source distribution was not complete.
- it is now possible to build a debug version of py2exe.
Changes in 0.6.1:
* py2exe can now bundle binary extensions and dlls into the
library-archive or the executable itself. This allows to
finally build real single-file executables.
The bundled dlls and pyds are loaded at runtime by some special
code that emulates the Windows LoadLibrary function - they are
never unpacked to the file system.
This part of the code is distributed under the MPL 1.1, so this
license is now pulled in by py2exe.
* By default py2exe now includes the codecs module and the
encodings package.
* Several other fixes.
Homepage:
<http://www.py2exe.org>
Download from the usual location:
<http://sourceforge.net/project/showfiles.php?group_id=15583>
Enjoy,
Jimmy
Roundup is a simple-to-use and -install issue-tracking system with
command-line, web and e-mail interfaces. It is based on the winning design
from Ka-Ping Yee in the Software Carpentry "Track" design competition.
The 0.8.5 stable release includes an Argentinian Spanish translation by Ramiro
Morales and fixes some bugs:
- Display of Multilinks where linked Class labelprop values are None
- Fix references to the old * Registration Permissions
- Fix missing merge of fix to sf bug 1177057
- Fix RDBMS indexer indexing UTF-8 words that encode to > 30 chars
- Handle invalidly-specified charsets in incoming email
The 0.9.0b1 development release includes:
- added "imapServer.py" script (sf patch 934567)
- added date selection popup windows (thanks Marcus Priesch)
- added Xapian indexer; replaces standard indexers if Xapian is available*
- mailgw subject parsing has configurable levels of strictness
- nosy messages may be sent individually to all recipients
- remember where we came from when logging in (sf patch 1312889)
*: unfortunately the latest release of Xapian (0.9.2) has a bug in the
Python bindings which prevents this indexer from working, so it's disabled
If you're upgrading from an older version of Roundup you *must* follow
the "Software Upgrade" guidelines given in the maintenance documentation.
Roundup requires python 2.3 or later for correct operation.
To give Roundup a try, just download (see below), unpack and run::
python demo.py
Source and documentation is available at the website:
http://roundup.sourceforge.net/
Release Info (via download page):
http://sourceforge.net/projects/roundup
Mailing lists - the place to ask questions:
http://sourceforge.net/mail/?group_id=31577
About Roundup
=============
Roundup is a simple-to-use and -install issue-tracking system with
command-line, web and e-mail interfaces. It is based on the winning design
from Ka-Ping Yee in the Software Carpentry "Track" design competition.
Note: Ping is not responsible for this project. The contact for this
project is richard(a)users.sourceforge.net.
Roundup manages a number of issues (with flexible properties such as
"description", "priority", and so on) and provides the ability to:
(a) submit new issues,
(b) find and edit existing issues, and
(c) discuss issues with other participants.
The system will facilitate communication among the participants by managing
discussions and notifying interested parties when issues are edited. One of
the major design goals for Roundup that it be simple to get going. Roundup
is therefore usable "out of the box" with any python 2.3+ installation. It
doesn't even need to be "installed" to be operational, though a
disutils-based install script is provided.
It comes with two issue tracker templates (a classic bug/feature tracker and
a minimal skeleton) and five database back-ends (anydbm, sqlite, metakit,
mysql and postgresql).
Initial release of ABT 0.7 under QPL license
http://dev.artenum.com/projects/abt
ABT automates the building of projects by executing the minimum set of
commands to update the project like the famous Make.
ABT is given a file, called the recipe (filename is abt-recipe.xml),
that describes how the files that make up the project are related (how
they are dependent upon one another) and how to update (build) those
files. ABT checks the dates on the files to see if any need to be
updated (when a target is older than one of its sources). If there are
files that need to be updated, ABT executes the rule actions specified
in the recipe for that purpose.
ABT have also testing features that permit you to check if binaries you
need to build your sources are present on the installation system. This
checking phase is cached. Command execution are OS dependant so you can
specify commands depending if you are running windows or unix system.
ABT is the perfet tool for fast Jython/Java based application packaging
and deployement because it may be integrated in the distribution and
boostraped by the Jython interpreter. It's usefull for all kins of
project and is not limited to Jython/Java projects.
ABT is pure Python 2.1 written and so is interpretable with Jython.
It includes a basic Makefile2recipe converter helping you migrating
from Makefiles.
Contact
Maxime Biais : <maxime.biais (AT) artenum.com>