pyte Changelog

Here you can see the full list of changes between each pyte release.

Version 0.5.1

Bugfix release, released on January 10th 2015

  • Fixed dependencies in setup.py.

Version 0.5.0

Released on January 10th 2015

  • Deprecated Stream.consume in favour of Stream.feed. The latter allows for a more efficient implementation because it operates on the whole input string.
  • Improved Stream performance by converting FSM to a coroutine as suggested by Jonathan Slenders in issue #41 on GitHub.
  • Added support for DA (device attributes) and DSR (device status report). The implementation is based on the code by Jonathan Slenders. See issue #41 on GitHub.
  • Screen.draw now properly handles full/ambiguous-width characters. Thanks to the excellent wcwidth library by Jeff Quast.
  • Removed re-exports of abbreviated modules (e.g. mo as a synonym for modes) from pyte.
  • Removed Screen.size which misleadingly returned constructor arguments in reverse order. Please use Screen.columns and Screen.lines instead.
  • Fixed a bug in ByteStream which suppressed the exception if all of the decoders failed to process the input.

Version 0.4.10

Bugfix release, released on August 4th 2015

  • Fixed a bug in DiffScreen.draw which marked the wrong line as changed when DECAWM was enabled.
  • Stream now recognizes ESC % sequences for selecting control character set. However, these operations are no-op in the current version in a sense that ByteStream does not handle them to change encoding.

Version 0.4.9

Bugfix release, released on December 3rd 2014

  • Fixed a bug in Char initialization, see issue #24 on GitHub for details.
  • Updated error message in Stream, referencing str is relevant for Python 3, but not Python 2.

Version 0.4.8

Released on January 13th 2014

  • Screen does NOT inherit from builtin list, use Screen.buffer to access individual characters directly. This is a backward INCOMPATIBLE change.
  • Char._asdict was broken on Python 3.3 because of the changes in namedtuple implementation.
  • LAT1_MAP was an iterator because of the change in map semantics in Python 3.
  • Changed Screen to issues a CR in addition to LF when DECAWM mode is set and the cursor is at the right border of the screen. See http://www.vt100.net/docs/vt510-rm/DECAWM and issue #20 on GitHub for details.

Version 0.4.7

Bugfix release, released on March 28th 2013

Version 0.4.6

Bugfix release, released on February 29th 2012

Version 0.4.5

Technical release, released on September 1st 2011

  • Added MANIFEST.in and CenOS spec file

Version 0.4.4

Bugfix release, released on July 17th 2011

  • Removed pdb calls, left from HistoryScreen debugging – silly, I know :)

Version 0.4.3

Bugfix release, released on July 12th 2011

  • Fixed encoding issues in DebugStream – Unicode was not converted to bytes properly.
  • Fixed G0-1 charset handling and added VAX42 charset for the ancient stuff to work correctly.

Version 0.4.2

Bugfix release, released on June 27th 2011

  • Added a tiny debugging helper: python -m pyte your escape codes
  • Added Screen.__{before,after}__() hooks to Screen – now subclasses can extend more than one command easily.
  • Fixed HistoryScreen – now not as buggy as it used to be: and allows for custom ratio aspect when browsing history, see HistoryScreen documentation for details.
  • Fixed DECTCEM private mode handling – when the mode is reset Screen.cursor.hidden is True otherwise it’s False.

Version 0.4.1

Bugfix release, released on June 21st 2011

  • Minor examples and documentation update before the first public release.

Version 0.4.0

Released on June 21st 2011

  • Improved cursor movement – Screen passes all but one tests in vttest.
  • Changed the way Stream interacts with Screen – event handlers are now implicitly looked up in screen’s __dict__, not connected manually.
  • Changed cursor API – cursor position and attributes are encapsulated in a separate Cursor class.
  • Added support for DECSCNM – toggle screen-wide reverse-video mode.
  • Added a couple of useful Screen subclasses: HistoryScreen which allows screen pagination and DiffScreen which tracks the changed lines.

Version 0.3.9

Released on May 31st 2011

  • Added initial support for G0-1 charsets (mappings taken from tty kernel driver) and SI, SO escape sequences.
  • Changed ByteStream to support fallback encodings – it now takes a list of (encoding, errors) pairs and traverses it left to right on feed().
  • Switched to unicode_literals – one step closer to Python3.

Version 0.3.8

Released on May 23rd 2011

  • Major rewrite of Screen internals – highlights: inherits from list; each character is represented by namedtuple which also holds SGR data.
  • Numerous bugfixes, especially in methods, dealing with manipulating character attributes.

Version 0.3.7

First release after the adoption – skipped a few version to reflect that. Released on May 16th 2011

  • Added support for ANSI color codes, as listed in man console_codes. Not implemented yet: setting alternate font, setting and resetting mappings, blinking text.
  • Added a couple of trivial usage examples in the examples/ dir.