Urwid-mitmproxy

Latest version: v2.1.2.1

Safety actively analyzes 710445 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 5 of 9

0.9.8

===========

2007-03-23

* Rendering is now significantly faster.

* New Widget base class for all widgets. It includes automatic caching
of rows() and render() methods. It also adds a new __super attribute
for accessing methods in superclasses.

Widgets must now call self._invalidate() to notify the cache when
their content has changed.

To disable caching in a widget set the class variable no_cache to a
list that includes the string "render".

* Canvas classes have been reorganized: Canvas has been renamed to
TextCanvas and Canvas is now the base class for all canvases. New
canvas classes include BlankCanvas, SolidCanvas and CompositeCanvas.

* External event loops may now be used with the raw_display module. The
new methods get_input_descriptors() and get_input_nonblocking()
should be used instead of get_input() to allow input processing
without blocking.

* The Columns, Pile and ListBox widgets now choose their first
selectable child widget as the focus widget by default.

* New ListWalker base class for list walker classes.

* New Signals class that will be used to improve the existing event
callbacks. Currently it is used for ListWalker objects to notify
their ListBox when their content has changed.

* SimpleListWalker now behaves as a list and supports all list
operations. This class now detects when changes are made to the list
and notifies the ListBox object. New code should use this class to
wrap lists of widgets before passing them to the ListBox
constructor.

* New PollingListWalker class is now the default list walker that is
used when passing a simple list to the ListBox constructor. This
class is intended for backwards compatibility only. When this class
is used the ListBox object is unable to cache its render() method.

* The curses_display module can now draw in the lower-right corner of
the screen.

* All display modules now have start() and stop() methods that may be
used instead of calling run_wrapper().

* The raw_display module now uses an alternate buffer so that the
original screen can be restored on exit. The old behaviour is
available by setting the alternate_buffer parameter of start() or
run_wrapper() to False.

* Many internal string processing functions have been rewritten in C to
improve their performance.

* Compatible with Python >= 2.2. Python 2.1 is no longer supported.

0.9.7.2

=============

2007-01-03

* Improved performance in UTF-8 mode when ASCII text is used.

* Fixed a UTF-8 input bug.

* Added a clear() function to the display modules to force the
screen to be repainted on the next draw_screen() call.

0.9.7.1

=============

2006-10-03

* Fixed bugs in Padding and Overlay widgets introduced in 0.9.7.

0.9.7

===========

2006-10-01

* 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
available fonts.

* 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 returns None.

* 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 its text.

* Overlay.calculate_padding_filler() and Padding.padding_values() now
include focus parameters.

0.9.6

===========

2006-08-22

* Fixed Unicode conversion and locale issues when using Urwid with
Python < 2.4. The graph.py example program should now work properly
with older versions of Python.

* The docgen_tutorial.py script can now write out the tutorial example
programs as individual files.

* Updated reference documentation table of contents to show which
widgets are flow and/or box widgets.

* Columns.set_focus(..) will now accept an integer or a widget as its
parameter.

* Added detection for rxvt's HOME and END escape sequences.

* Added support for setuptools (improved distutils).

0.9.5

===========

2006-06-14

* Some Unicode characters are now converted to use the G1 alternate
character set with DEC special and line drawing characters. These
Unicode characters should now "just work" in almost all terminals and
encodings.

When Urwid is run with the UTF-8 encoding the characters are left as
UTF-8 and not converted.

The characters converted are:

\u00A3 (£), \u00B0 (°), \u00B1 (±), \u00B7 (·), \u03C0 (π),
\u2260 (≠), \u2264 (≤), \u2265 (≥), \u23ba (⎺), \u23bb (⎻),
\u23bc (⎼), \u23bd (⎽), \u2500 (─), \u2502 (│), \u250c (┌),
\u2510 (┐), \u2514 (└), \u2518 (┘), \u251c (├), \u2524 (┤),
\u252c (┬), \u2534 (┴), \u253c (┼), \u2592 (▒), \u25c6 (◆)

* New SolidFill class for filling an area with a single character.

* New LineBox class for wrapping widgets in a box made of line- drawing
characters. May be used as a box widget or a flow widget.

* New example program graph.py demonstrates use of BarGraph, LineBox,
ProgressBar and SolidFill.

* Pile class may now be used as a box widget and contain a mix of box
and flow widgets.

* Columns class may now contain a mix of box and flow widgets. The box
widgets will take their height from the maximum height of the flow
widgets.

* Improved the smoothness of resizing with raw_display module. The
module will now try to stop updating the screen when a resize event
occurs during the update.

* The Edit and IntEdit classes now use their set_edit_text() and
set_edit_pos() functions when handling keypresses, so those functions
may be overridden to catch text modification.

* The set_state() functions in the CheckBox and RadioButton classes now
have a do_callback parameter that determines if the callback function
registered will be called.

* Fixed a newly introduced incompatibility with python < 2.3.

* Fixed a missing symbol in curses_display when python is linked
against libcurses.

* Fixed mouse handling bugs in the Frame and Overlay classes.

* Fixed a Padding bug when the left or right has no padding.

Page 5 of 9

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.