gdb/debuginfod: Improve progress updates
authorAaron Merey <amerey@redhat.com>
Mon, 24 Oct 2022 18:05:06 +0000 (14:05 -0400)
committerAaron Merey <amerey@redhat.com>
Thu, 10 Nov 2022 17:01:18 +0000 (12:01 -0500)
commit27859c6b9d73a8ae1b51c5c40fc2b3aefd2228a0
treeae917c80fce78e048cbbd357f68ac2e9d2a61434
parentf71e3f86e83c9c22e3d86112b5ddb61919390a1a
gdb/debuginfod: Improve progress updates

If the download size is known, a progress bar is displayed along with
the percentage of completion and the total download size.

  Downloading separate debug info for /lib/libxyz.so
  [############                                      ]  25% (10.01 M)

If the download size is not known, a progress indicator is displayed
with a ticker ("###") that moves across the screen at a rate of 1 tick
every 0.5 seconds.

  Downloading separate debug info for /lib/libxyz.so
  [         ###                                                      ]

If the output stream is not a tty, batch mode is enabled, the screen is
too narrow or width has been set to 'unlimited', then only a static
description of the download is printed. No bar or ticker is displayed.

  Downloading separate debug info for /lib/libxyz.so...

In any case, if the size of the download is known at the time the
description is printed then it will be included in the description.

  Downloading 10.01 MB separate debug info for /lib/libxyz.so...
gdb/cli-out.c
gdb/cli-out.h
gdb/debuginfod-support.c
gdb/mi/mi-out.c
gdb/mi/mi-out.h
gdb/ui-out.h