Project

General

Profile

# Date Author Comment
14583 08/26/2014 04:15 PM Aaron Marcuse-Kubitza

bugfix: lib/streams.py: CaptureStream: end_idx must also be > start_idx

13463 05/17/2014 01:29 PM Aaron Marcuse-Kubitza

lib/streams.py: added file_get_contents()

11970 01/20/2014 11:33 AM Aaron Marcuse-Kubitza

moved everything into /trunk/ to create the standard svn layout, for use with tools that require this (eg. git-svn). IMPORTANT: do NOT do an `svn up`. instead, re-use your working copy's existing files with `svn switch` (http://svnbook.red-bean.com/en/1.6/svn.ref.svn.c.switch.html).

5592 10/17/2012 11:42 AM Aaron Marcuse-Kubitza

streams.py: LineCountStream, LineCountInputStream: Fixed bug where line_num was 1 too high because it started at 1 and was incremented before each line is returned. It now properly starts at 1, but the initial line_num value is 0 to increment to 1 upon encountering the first line. This off-by-one behavior may have been needed for code that associates an error message with a line #, but such code should add 1 to the line_num to get the line # of the error if the error prevents the next line from being read by the LineCount*Stream.

4917 09/21/2012 12:36 PM Aaron Marcuse-Kubitza

streams.py: Line iteration: Added read_all()

2672 06/07/2012 05:15 PM Aaron Marcuse-Kubitza

streams.py: LineCountInputStream: Fixed bug where EOF was incorrectly considered a line, causing the final line count (used by ProgressInputStream) to be off by one

1964 04/24/2012 11:41 AM Aaron Marcuse-Kubitza

streams.py: StreamIter: Define readline() as a separate method so it can be overridden, and all calls to self.next() will use the overridden readline(). This fixes a bug in ProgressInputStream where incremental counts would not be displayed and it would end with "not all input read" if the StreamIter interface was used instead of readline().

1962 04/23/2012 09:56 PM Aaron Marcuse-Kubitza

streams.py: FilterStream: Inherit from StreamIter so that all descendants automatically have StreamIter functionality

1939 04/21/2012 09:29 PM Aaron Marcuse-Kubitza

Added ProgressInputStream

1928 04/21/2012 01:37 PM Aaron Marcuse-Kubitza

streams.py: Added LineCountInputStream, which is faster than LineCountStream for input streams. Added InputStreamsOnlyException and raise it in all *InputStream classes' write() methods.

1762 04/03/2012 01:10 PM Aaron Marcuse-Kubitza

streams.py: FilterStream: Forward all reads to readline()

1759 04/03/2012 08:33 AM Aaron Marcuse-Kubitza

streams.py: Added consume(). Added documentation labels to each section.

1710 03/29/2012 10:33 PM Aaron Marcuse-Kubitza

streams.py: Added FilterStream. Changed TracedStream to use FilterStream.

1707 03/29/2012 10:21 PM Aaron Marcuse-Kubitza

streams.py: CaptureStream: Ignore start_str when recording and end_str when not recording

1706 03/29/2012 10:13 PM Aaron Marcuse-Kubitza

streams.py: CaptureStream: Get each match as a separate array elem instead of concatenated together

1686 03/29/2012 06:13 PM Aaron Marcuse-Kubitza

streams.py: Added copy(). Added section comment for traced streams.

1684 03/29/2012 05:54 PM Aaron Marcuse-Kubitza

streams.py: Renamed LineCountOutputStream to LineCountStream since TracedStream now works on both input and output streams

1682 03/29/2012 05:51 PM Aaron Marcuse-Kubitza

streams.py: Added CaptureStream to wrap a stream, capturing matching text. Renamed TracedOutputStream to TracedStream and made it work on both input and output streams. Made TracedStream inherit from WrapStream so that close() would be forwarded properly.

1673 03/28/2012 07:58 PM Aaron Marcuse-Kubitza

Renamed timeout.py to timeouts.py. Renamed timeout_ vars to timeout.

1635 03/26/2012 10:43 PM Aaron Marcuse-Kubitza

streams.py: Added TimeoutInputStream and WrapStream. Changed StreamIter to use new WrapStream.

1630 03/26/2012 09:20 PM Aaron Marcuse-Kubitza

Added streams.py for I/O, which contains StreamIter, TracedOutputStream, and LineCountOutputStream