Older blog entries for knipknap (starting at number 86)

Release: Bibshelf 1.6.0

I am happy to announce the release of a new version of BibShelf 1.6.0, the book organizer for the GNOME desktop. This release is mostly a maintenance release that fixes gcc 4.3.2 compatibility and adds several translations.

Special thanks go to all translators, including:

da: Joe Hansen
de: Samuel Abels
es: David Lara
fr: Nicolas Provost
ga: Kevin Scannell
id: Andhika Padmawan
it: Marco Colombo
ms: Sharuzzaman Ahmat Raslan
nl: Mark Haanen
nn: Eivind Ødegård
rw: Steven Michael Murphy
sv: Daniel Nylander
vi: Clytie Siddall
wa: Pablo Saratxaga
zh_CN: YueGuang

The updated release can be downloaded here:

The project page is here:

Syndicated 2009-01-11 21:24:52 from Debain.org

Release: SpiffGtkWidgets 0.2.0

SpiffGtkWidgets is a collection of Gtk widgets (currently a calendar and an annotated text view) for Python. This release comes with a number of bugfixes and with an improved installer.

Project page
API documentation
Handbook (PDF) (incomplete)

Syndicated 2009-01-10 20:16:43 from Debain.org

Release: SpiffIntegrator 0.2.0

SpiffIntegrator is a small but powerful package manager for adding plugin support to Python applications. This release works with Genshi 0.5, and improves the build infrastructure to make it a lot easier to install.

Project page
API documentation
Handbook (PDF)

Syndicated 2009-01-10 20:06:52 from Debain.org

Release: SpiffGuard 1.9.2

SpiffGuard is a library providing generic access lists for Python. This release works with sqlalchemy 0.5 and improves the build infrastructure, making it a lot easier to install. A few minor bugs were also fixed.

Project page
API documentation
Handbook (PDF)
Handbook (PDF) (German)

Syndicated 2009-01-09 17:12:43 from Debain.org

Bugfix Release: Freech 0.9.16-1

This is a quick followup to the last release of Freech that fixes several problems with the package. If you had problems installing the software, release 0.9.16 should fix them.

Download: http://dl.debain.org/freech/

Syndicated 2009-01-09 11:13:32 from Debain.org

Freech 0.9.14 Is Out!

In what might be the biggest release of this week (so far), I am proud to announce an updated piece of software on which I have been working for a long time. Freech (which was formerly known as Tefinch, and Ammerum before that) is a threaded discussion forum for PHP5/MySQL5.

This new release comes with a shitload of new features:

Freech supports user accounts and groups. It currently provides a fixed number of four groups: Administrators, Moderators, normal users and anonymous users).

The user registration is fully automated, and users need to confirm their email address before activating an account.

A powerful new search feature was added:

There is a completely new administration interface: Administrators may edit users and manage groups, and moderators may lock messages in the forum.
Users may now also create polls:

Several “special pages” were added, such as a list showing the number of postings per user, and a statistics feature.

Freech also has a “sticky” feature, allowing moderators to pin a message to the top of the forum. There are many more features, and generally, Freech is a lot more polished than it used to be. Most of the features are plugins, so all most features can be easily disabled. On top of it all, the performance was also drastically improved, even when all new plugins are enabled.

Demo Forum: http://demo.debain.org/freech/
Download: http://dl.debain.org/freech/freech-0.9.14-1.tar.bz2
Project page: http://code.google.com/p/freech/
Google group: http://groups.google.com/group/freech/

Syndicated 2009-01-08 23:53:36 from Debain.org

Release: pywsgi 0.9.0

pywsgi is a brand new and very simple Python module for web applications. Applications using pywsgi will work with WSGI, CGI, and mod_python; the differences between these environments are abstracted. It also handles sessions, cookies, and GET/POST data. It also comes with some useful tools for URL handling.

Some example code is here:

def handler(request):
    # The code of your actual web site is here.
    request.write('Hello World')
    for key, value in request.get_data():
        print "GET DATA:", key, value
    for key, value in request.post_data():
        print "POST DATA:", key, value
    for key, value in request.cookies():
        print "COOKIE:", key, value
    for key, value in request.session().data():
        print "SESSION DATA:", key, value

if __name__ == '__main__':
    from pywsgi import RequestHandler
    request_handler = RequestHandler(handler)

The above code will work with both, mod_wsgi and mod_cgi. Note that accessing GET, POST, COOKIE, and SESSION data is completely uniform via a dictionary-like Table object.
This initial release also comes with complete API documentation.

Project page
API documentation
Handbook (PDF, incomplete)

Syndicated 2009-01-08 17:45:12 from Debain.org

Release: SpiffWorkflow 0.3.0

SpiffWorkFlow is a powerful workflow engine based on WorkflowPatterns. This is the first release that is pretty much feature complete and is clearly moving towards a stable API, though some changes may still be made.
New features in this release:

  • Support for a number of new control-flow patterns: Milestone, Deferred Choice, Interleaved Parallel Routing, Cancel/Complete Multiple Instance, Cancel Case, Cancel Task, Cancel Region, Explicit termination, Recursion, Persistent Trigger, and all variants of the Join for Multiple Instance patterns.
  • Support for new data patterns: Local Task Data, Block Data, Task to Task, Task to Sub-Workflow (De)composition.
  • Cleanups and bugfixes, as well as slightly improved documentation - though we are still pretty rough on this one.
  • Improved build infrastructure. The package should now be a lot easier to install.

API documentation (incomplete)
Handbook (PDF) (incomplete)

Syndicated 2009-01-07 17:04:13 from Debain.org

Release: termconnect 0.1.0

The second package for today is yet another initial release: termconnect is a Python module for accessing terminal based protocols such as Telnet and SSH.
Because the telnet module that is shipped with Python is incomplete, poorly implemented, and does not have a generic API, termconnect was written to provide a clean and simple replacement.

The example code is here:

from termconnect.Telnet import Transport
#from termconnect.SSH import Transport

conn = Transport()
conn.connect("") # The default port is 21
conn.authenticate("myuser", "mypassword")
conn.execute("ls -l")

The API for SSH is absolutely identical, so changing the protocol in your code is a matter of changing the import statement - that is the way it ought to be. In addition, there is a Dummy protocol adapter that may be used for testing your code - it is a fake protocol that emulates a device.

The code is already pretty well tested, so I am confident that this initial release is mature enough for production environments.

Project page
API documentation
Handbook (PDF)

Syndicated 2009-01-06 11:11:47 from Debain.org

Release: SpiffWorkQueue 0.1.0

Here is another initial release: SpiffWorkQueue is an asynchronous, multi-threaded queue. The following example shows how to execute two tasks in parallel. In the example, each task consists of a sequence of two actions:

from SpiffWorkQueue import WorkQueue, Sequence, Action

class MyAction(Action):
    def __init__(self, name):
        Action.__init__(self, name)

    def execute(self, lock, global_context, context):
        print "Hello world"

queue    = WorkQueue()
actions1 = [MyAction("one"),   MyAction("two")]
actions2 = [MyAction("three"), MyAction("four")]
queue.enqueue(Sequence(actions = actions1))
queue.enqueue(Sequence(actions = actions2))

while queue.get_length() > 0:

Project page
API documentation
Handbook (PDF)

Syndicated 2009-01-06 10:56:44 from Debain.org

77 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!