bastimeyer · GitHub

@bastimeyer

- Split `streamlink_cli.utils.progress` into `progress` + `terminal`
  - `terminal`:
    Responsible for calculating character output widths and for writing
    data to the output text stream
  - `progress`:
    Responsible for calculating the download speed and for formatting
    the progress output
- Use a separate thread for the progress output, with the output being
  written in constant time intervals, independent of the data that gets
  fed by the stream iterator of the main thread
- Output format changes:
  - Remove "prefix" from output format (full path already gets logged)
  - Avoid showing download speeds until a time threshold is reached
  - Use binary values for file size and download speed values
  - Add leading zeros to time units (only ever grow output text size)
- Don't import from alias module in `streamlink_cli.main`
- Split, move and rewrite tests

Read the original on github.com ↗