I am pleased to announce version 2.12.2 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.12.1:
- Make PyGObject 64-bit safe for Python 2.5 (Gustavo)
- All headers are now LGPL and not GPL (Johan)
- Remove a couple of GCC warnings (Gustavo)
- Revive distutils support (Cedric Gustin)
- Emission hook reference count bugfix (Gustavo)
- MSVC/ANSI C compilation fix (John Ehresman)
- Bump Ctrl-C timeout handler from 100ms to 1000ms (Johan)
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.
October 2, 2006
Announcing : PLY-2.1 (Python Lex-Yacc)
I'm pleased to announce a significant new update to PLY---a 100% Python
implementation of the common parsing tools lex and yacc. PLY-2.1 builds
upon the reimplementation of LALR(1) parsing that appeared in PLY-2.0
adds a number of significant new features. These include:
- Elimination of internal limitations due to the use of Python's re
- Better support for inherited attributes and embedded parsing
- Character literals (e.g., '+', '-') can now be included in
- Improved packaging. PLY is now a proper Python package.
- Improved support for line number and column tracking.
- Added diagnostics.
- New examples including a program to convert tradition yacc/bison
specifications to PLY.
- A variety of minor enhancements and bug fixes.
If you are new to PLY, here are a few highlights:
- PLY is closely modeled after traditional lex/yacc. If you know how
to use these or similar tools in other languages, you will find
PLY to be comparable.
- PLY provides very extensive error reporting and diagnostic
information to assist in parser construction. The original
implementation was developed for instructional purposes. As
a result, the system tries to identify the most common types
of errors made by novice users.
- PLY provides full support for empty productions, error recovery,
precedence rules, and ambiguous grammars.
- Parsing is based on LR-parsing which is fast, memory efficient,
better suited to large grammars, and which has a number of nice
properties when dealing with syntax errors and other parsing
problems. Currently, PLY can build its parsing tables using
either SLR or LALR(1) algorithms.
- PLY can be used to build parsers for large programming languages.
Although it is not ultra-fast due to its Python implementation,
PLY can be used to parse grammars consisting of several hundred
rules (as might be found for a language like C). The lexer and LR
parser are also reasonably efficient when parsing normal
More information about PLY can be obtained on the PLY webpage at:
PLY is freely available and is licensed under the terms of the Lesser
GNU Public License (LGPL).
David Beazley (http://www.dabeaz.com)
Announcing Urwid 0.9.7
Urwid home page:
About this release:
This release adds a new BigText widget for banners and text that needs
to stand out on the screen. A new example program demonstrating BigText
usage and a number of fonts are included. This widget is a fixed
widget, a new alternative to flow widgets and a box widgets. Fixed
widgets may be displayed within Overlay or Padding widgets to handle
changing screen sizes.
New in this release:
- Added initial support for fixed widgets - widgets that have a
fixed size on screen. Fixed widgets expect a size parameter
equal to (). Fixed widgets must implement the pack(..)
function to return their size.
- New BigText class that draws text with fonts made of grids of
character cells. BigText is a fixed widget and doesn't do any
alignment or wrapping. It is intended for banners and number
readouts that need to stand out on the screen.
Fonts: Thin3x3Font, Thin4x3Font, Thin6x6Font (full ascii)
UTF-8 only fonts: HalfBlock5x4Font, HalfBlock6x5Font,
HalfBlockHeavy6x5Font, HalfBlock7x7Font (full ascii)
New function get_all_fonts() may be used to get a list of the
- New example program bigtext.py demonstrates use of BigText.
- Padding class now has a clipping mode that pads or clips fixed
widgets to make them behave as flow widgets.
- Overlay class can now accept a fixed widget as the widget to
display "on top".
- New Canvas functions: pad_trim(..) and pad_trim_left_right(..).
- Fixed a bug in Filler.get_cursor_coords(..) that causes a
crash if the contained widget's get_cursor_coords(..) function
- Fixed a bug in Text.pack(..) that caused an infinite loop
when the text contained a newline. This function is not
currently used by Urwid.
- Edit.__init__(..) now calls set_edit_text(..) to initialize
- Overlay.calculate_padding_filler(..) and
Padding.padding_values(..) now include focus parameters.
Urwid is a console UI library for Python. It features fluid interface
resizing, UTF-8 support, multiple text layouts, simple attribute markup,
powerful scrolling list boxes and flexible interface design.
Urwid is released under the GNU LGPL.