# `apt.progress.text` — Progress reporting for text interfaces

Progress reporting for text interfaces.

## Acquire Progress Reporting

class apt.progress.text.AcquireProgress(outfile: TextIOBase | None = None)

  AcquireProgress for the text interface.

  fail(item: AcquireItemDesc) → None

    Called when an item is failed.

  fetch(item: AcquireItemDesc) → None

    Called when some of the item’s data is fetched.

  ims_hit(item: AcquireItemDesc) → None

    Called when an item is update (e.g. not modified on the server).

  media_change(medium: str, drive: str) → bool

    Prompt the user to change the inserted removable media.

  pulse(owner: Acquire) → bool

    Periodically invoked while the Acquire process is underway.

    Return False if the user asked to cancel the whole Acquire process.

  start() → None

    Start an Acquire progress.

    In this case, the function sets up a signal handler for SIGWINCH, i.e. window resize signals. And it also sets id to 1.

  stop() → None

    Invoked when the Acquire process stops running.

## CD-ROM Progress Reporting

class apt.progress.text.CdromProgress(outfile: TextIOBase | None = None)

  Text CD-ROM progress.

  ask_cdrom_name() → str | None

    Ask the user to provide a name for the disc.

  change_cdrom() → bool

    Ask the user to change the CD-ROM.

  update(text: str, current: int) → None

    Set the current progress.

## Operation Progress Reporting

class apt.progress.text.OpProgress(outfile: TextIOBase | None = None)

  Operation progress reporting.

  This closely resembles OpTextProgress in libapt-pkg.

  done() → None

    Called once an operation has been completed.

  update(percent: float | None = None) → None

    Called periodically to update the user interface.