code: def update(self, command):
          
          if command.task_id in self.tasks and self.tasks[command.task_id].set_progress(command.progress):
  
              # Redraw
              self.changes_made = True
              self.redraw()
docs: Defines the current progress for this progress bar id in iteration units (not percent).
          If the given id does not exist or the given progress is identical to the current, then does nothing.
          Logger uses a redraw rate because of console flickering. That means it will not draw new messages or progress
          at the very time they are being logged but their timestamp will be captured at the right time. Logger will
          redraw at a given time period AND when new messages or progress are logged. If you still want to force redraw
          immediately (may produce flickering) then call 'flush' method.
          :param command: The command object that holds all the necessary information from the remote process.