It is our pleasure to announce the release of SimPy 1.7 (final). It can be
downloaded via the SimPy homepage, http://simpy.sourceforge.net.
We thank the SimPy user community for their participation in the
testing of SimPy 1.7 beta.
What is new?
New constructs for inter-process communication, cooperation
and resource buffering have been added.
SimPy now supports much easier, cleaner implementation of models
for producer/consumer and multi-process cooperation
scenarios. It does this by the new abstract Buffer class,
with sub-classes Level and Store. Processes can
asynchronously put items into a buffer by *yield put* and
get items with *yield get* statements (both new). Examples
of their use are provided in the SimPyModels folder.
What is SimPy?
SimPy (= Simulation in Python) is an object-oriented, process-based
discrete-event simulation language completely implemented in Python. It is
released under the GNU Lesser GPL (LGPL). SimPy provides the modeler
with components of a simulation model including processes, for active
components like customers, messages, and vehicles, and resources, for
passive components that form limited capacity congestion points like
servers, checkout counters, and tunnels. It also provides monitor
variables to aid in gathering statistics. Random variates are provided
by the standard Python random module.
Many users claim that SimPy is one of the cleanest, easiest to use
discrete event simulation packages! SimPy is in use at many universities,
Research institutes and in industry.
SimPy comes with data collection capabilities, GUI and plotting packages.
It can be easily interfaced to other packages, such as plotting, statistics,
GUI, spreadsheets, and data bases.
The distribution contains extensive documentation (manuals, cheatsheet,
tutorials, HTML-based source code documentation) and a wide variety of
simulation models in SimPy.
Download, enjoy, and don't forget to give us feedback!
Klaus Müller Tony Vignaux
PyScripter is free and open source Windows-based Python IDE created
with the ambition to become competitive in functionality with
commercial IDEs available for other languages. Being built in a
compiled language (Delphi) is rather snappier than some of the other
Python IDEs and provides an extensive blend of features that make it a
productive Python development environment.
Download from http://mmm-experts.com/Products.aspx?ProductId=4
Version history at
Syntax Highlighting Editor
Code completion and call tips
Python source code utilities ((un)tabify, (un)comment, (un)indent)
Context sensitive help on Python keywords
Parameterized Code Templates (Ctrl-J)
Accept files dropped from Explorer
File change notification
Detecting loading/saving UTF-8 encoded files
Print Preview and print syntax highlighting of Python code
Converting line breaks (Windows, Unix, Mac)
Syntax highlighting of HTML, XML and CSS files
Integrated Python Interpreter
Integrated Python Debugging
Code and debugger hints
HTML Documentation (pydoc)
Easy configuration and browsing of the Python Path
Integrated version control using Tortoise CVS or SVN
Context sensitive access to Python manuals and through the Help menu
Integrated Unit Testing
Automated generation of tests
Unit testing GUI
To Do List
Find and Replace in Files
Integrated regular expression tester
Parameterized Code Templates
Choice of Python version to run via command line parameters
Run Python Script externally (highly configurable)
External Tools (External run and capture output)
Integration with Python tools such as PyLint, TabNanny, Profile
Powerful parameter functionality for external tool integration
Find Definition/Find references
Find definition by clicking and browsing history. Works on modules
Modern GUI with docked forms and configurable look&feel (themes)
Persistent configurable IDE options
-----BEGIN PGP SIGNED MESSAGE-----
itools is a Python library, it groups a number of packages into a single
meta-package for easier development and deployment:
itools.catalog itools.i18n itools.web
itools.cms itools.ical itools.workflow
itools.csv itools.resources itools.xhtml
itools.datatypes itools.rss itools.xliff
itools.gettext itools.schemas itools.xml
- Unquote escaped characters when decoding a url.
- Fix virtual handlers (#158).
- Now access by attribute works on rows, e.g. "row.<name>", where
name is the column name (of course only works when the schema is
- Fix "get_content_as_html" when there are non-ascii characters in
text nodes, by encoding them.
- Now the request handler keeps the whole request uri (not only the
path), this is: "request.uri" instead of "request.path".
- For virtual hosting, use the request header "X-Base-Path" instead
of the query variable REAL_PATH. So rewrite rules must be updated
(in Apache this is done with the "RequestHeader set X-Base-Path
- Remove consistency check in "Group.get_usernames" (it was an
scalability bottleneck). Instead add a view in the user interface
to check and fix groups with users that don't exist anymore.
- Provide "itools.__version__" (replaces "itools.__git_revision__").
- Drop the Changelog file.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v126.96.36.199 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
-----END PGP SIGNATURE-----
A Python class called "scalar" was designed to represent physical
scalars and to eliminate errors involving implied physical units (e.g.,
confusing angular degrees and radians). The standard arithmetic
operators are overloaded to provide syntax identical to that for
built-in numerical types. The scalar class allows the user to easily
define a set of appropriate physical units for any particular
application or domain, and the units used internally are based on those
selected by the user. Once an application has been developed and
tested, the units can easily be switched off, if desired, to achieve
the execution efficiency of built-in numerical types (which can be two
orders of magnitude faster). The scalar class can also be used for
discrete units to enforce type checking of integer counts, thereby
enhancing the built-in dynamic type checking of Python.
I think you'll like it. Check it out and let me know if I'm right. And
let me know if you have any problems. I've tested it to some extent,
and I think it's in good shape, but I'd like to get some feedback from
other users before I upgrade the beta version to a 1.0 release. Thanks.
Go to http://RussP.org/scalar.htm to download the user guide and the
I am pleased to announce version 2.10.0 of the Python bindings for GObject.
The new release is available from ftp.gnome.org as and its mirrors
as soon as its synced correctly:
What's new since PyGObject 2.9.1:
- enum/flags leak fix (Michael Smith)
GObject is a object system library used by GTK+ and GStreamer.
PyGObject provides a convenient wrapper for the GObject+ library for use
in Python programs, and takes care of many of the boring details such as
managing memory and type casting. When combined with PyGTK, PyORBit and
gnome-python, it can be used to write full featured Gnome applications.
Like the GObject library itself PyGObject is licensed under the
GNU LGPL, so is suitable for use in both free software and proprietary
applications. It is already in use in many applications ranging
from small single purpose scripts up to large full
PyGObject requires GObject >= 2.8.0 and Python >= 2.3.5 to build.
Bug reports, as always, should go to Bugzilla; check out
links to posting and querying bug reports for PyGTK.
gnome-announce-list mailing list
In order to facilitate small groups working on specific Python-in-Education
projects, we have launched an edupython list on google groups
(http://groups.google.com/group/edupython or edupython(a)googlegroups.com). We
envision participation by people trying to coordinate work on the nuts and
bolts implementation of a project, with frequent progress reports and
requests for suggestions and comments coming back to edu-sig. The list
developed as a result of a quite well-attended and enthusiastic BOF meeting
This edupython list is not intended to replace edu-sig, which remains very
strong for theoretical and philosophical discussions, and for getting input
and suggestions from a wider group, but is also necessarily higher
bandwidth. We invite anyone working on Python-related education projects to
join the list.
Anna Martelli Ravenscroft
== Existence of Local User Groups ==
I am in the process of forming a Python User Group for Champaign-Urbana
and surrounding areas, but I would like to make sure there is not
already a very unpublicized (very, very hard to find) user group for
Python in the area (Decatur, Bloomington or C-U areas)? Please reply
to this message (off the group, unless you would like it on the record
that there is a group and give general information for other CU
Python-heads that may not know about it).
I did searches on google, google groups and checked the python.org
LocalUserGroup wiki page, but found nothing that was active. The
nearest PyUG I found was ChiPy (the Chicago group), which is 2.5 hours
== New Local User Group Status ==
I am in the process of creating the website (in Python of course:) and
should have this ready by Friday 03/17/2006 (St. Paddy's Day), but I
did want to make sure there is not anything out there already to avoid
To be notified on new developments with the user group (events,
projects, etc.) please subscribe to the low-traffic Google Group I
I was also planning on advertizing the first meeting locally in weekly
newspapers, and posting flyers across campus and downtown Champaign as
well as Urbana retail locations in the next two weeks after the website
was launched, and of course listing the website on the python.org wiki
and related websites.
== First Meeting ==
Tentative date for the first meeting is Wednesday April 26, 2006 @ 7pm
at Giuliani's (where the old Green Street Coffee Shop used to be - 608
E. Green St., Champaign - do not confuse this with the new Green Street
Cafe near the Green and First St. intersection).
== Other ==
If anyone has any thoughts or experience with best practices (or
potential pitfalls to avoid) to organize (legally) or promote a local
user group for Python (or similar special interest groups), please
reply to this message (off the group).
DOPAL is a library to allow programs written in Python to easily
communicate the Java BitTorrent client Azureus, via the XML/HTTP plugin
(allowing communication over a network).
Version 0.56 is the third public release of DOPAL. One of the main
changes is support for "typeless" objects - this allows DOPAL to
represent remote objects which it has no information about. There is
also support for passing and receiving Java's "short" primitive type,
and a fix for a traceback occurring in the __str__ methods of some objects.
There's also various other minor changes - check the changelog for more
The method definitions in this release are in sync with Azureus 188.8.131.52
b13 (though you can use any version of Azureus with DOPAL).
It provides a very Pythonic way of interacting with the objects
available in Azureus's Plugin API - you can interact with remote objects
and invoke methods on them as easily as any normal Python object (while
all the connection handling and XML generation and parsing is done
behind the scenes). It also allows you to write code which can do just
the same things as Java plugins for Azureus can (well, almost).
XPN (X Python Newsreader) is a multi-platform newsreader with Unicode
support. It is written with Python+GTK. It has features like
scoring/actions, X-Face and Face decoding, muting of quoted text,
newsrc import/export, find article and search in the body, spoiler
char/rot13, random taglines and configurable attribution lines.
You can find it on:
Changes in this release:
* added message-id recognition. Now XPN tries to recognize
message-ids in the text and make them clickable in order
to open a search window.
* added a dialog window that informs you when XPN downloads new
articles in watched threads.
* some improvements in Global Search, now is possible to perform
* now XPN checks if there are other istances running (it uses the
file xpn.lock in the XPN directory). This behaviour should
prevent database break off.
* some fixes in the Score Window
* fixed some bugs in header management
* fixed a bug that caused crashes with multipart articles with
XPN is translated in Italian French and German, if you'd like to
translate it in your language and you are familiar with gettext and
po-files editing please contact me (xpn(a)altervista.org).
No wanna work. Wanna bang on keyboard.
|\ | |HomePage : http://nem01.altervista.org
| \|emesis |XPN (my nr): http://xpn.altervista.org
New in this released is API documentation which is generated using
epydoc. It's still being written but at this point I feel that
it's good enough to be a very useful resource to help understand
kiwi. Kiwi is a PyGTK framework for building graphical applications loosely
based on MVC Model-View-Controller (MVC) and Allen Holub's Visual proxy
. Think of Kiwi as a high-level, object-oriented layer built on
Its design is based on real-world experience using PyGTK to develop
large desktop applications, which use many concepts common to most
graphical applications: multiple windows and dialogs, forms, data
persistence, lists and high-level classes that support domain objects
Grab the latest sources from:
What's new since 1.9.6?
- Much improved mask support
- DateEntry widget
- Re-add ProxyDelegate (lost since kiwi1)
- Draw validation icon on the left side for right align entries
- Many ComboEntry bug fixes
- Distribution helper improvements
- Limited support for zope.interfaces
- Add a better HIG alert dialog
- Improved logging (a la GStreamer)
* An MVC-derived framework of classes:
* Views, which represent the graphical display
* Controllers, which handles user interaction with the widgets
in a View.
* Delegates, combines a View and a Controller.
* Models, which are special mixins for your domain objects
* Proxies, special types of Delegate designed to implement forms
* Validation: Kiwi supports validation on different levels:
data type validation and verification on the Model/Proxy level,
View validation and hooks for visually displaying validation state.
* ObjectList widget, which provides a higher level abstraction of
GtkTreeView and all its classes (GtkTreeModel, GtkTreeViewColumn,
GtkCellRenderer) with hooks to easily integrate into the
* Mask suport: You can set a mask on entries to force the input to
follow a certain standard, such as zip code, social security, ip address
* Gazpacho integration for most (non-deprecated) interactive
widgets with attributes for handling validation and proxy
* UI Test framework
Features a recorder and a player. The recorder allows you to record
different tasks, a script will be saved which will reproduce the
actions you made in the interface.
* Kiwi Tasklets
Tasklet is a small coroutines framework written by Gustavo Carneiro,
it was previously known as gtasklets.
* PyGTK utilities, to make it easier to add signals and properties to
* i18n translation utilities, to help you translate PyGTK applications,
currently depends on gettext and intltool.
* and many other things!
Python 2.3 or higher (2.4 recommended) http://www.python.org/
PyGTK 2.6.0 or higher (2.8 recommended) http://www.pygtk.org/
gazpacho 0.6.2 (svn recommenced) http://gazpacho.sicem.biz/
Kiwi provides API documentation generated by epydoc, it can be found at
Included in the tarball are also a number of examples, which serves as a
good starting point. Keep in mind that most of them require gazpacho to
Christian Robottom Reis: Original author and design
Lorenzo Gil Sanchez: PyGTK 2.x port
Also thanks to the following people which has contributed features
or bug reports:
Ali Afshar, Henrique Romano, Daniel Saran R. da Cunha, Evandro Vale
Miquelito, Gustavo Barbieri, Gustavo Carneiro, Sidnei da Silva
Report a bug http://bugs.async.com.br/enter_bug.cgi?product=Kiwi
API docs http://www.async.com.br/projects/kiwi/api/
Open bugs http://tinyurl.com/cyrms
Mail. list http://www.async.com.br/mailman/listinfo/kiwi/
Johan Dahlin <jdahlin(a)async.com.br>
Async Open Source