code: public static function endProgress($remove = false, $keepPrefix = true)
      {
          if ($remove === false) {
              static::stdout(PHP_EOL);
          } else {
              if (static::streamSupportsAnsiColors(STDOUT)) {
                  static::clearLine();
              }
              static::stdout("\r" . ($keepPrefix ? self::$_progressPrefix : '') . (is_string($remove) ? $remove : ''));
          }
          flush();
  
          self::$_progressStart = null;
          self::$_progressWidth = null;
          self::$_progressPrefix = '';
          self::$_progressEta = null;
          self::$_progressEtaLastDone = 0;
          self::$_progressEtaLastUpdate = null;
      }
docs: Ends a progress bar that has been started by [[startProgress()]].
  
  @param string|bool $remove This can be `false` to leave the progress bar on screen and just print a newline.
  If set to `true`, the line of the progress bar will be cleared. This may also be a string to be displayed instead
  of the progress bar.
  @param bool $keepPrefix whether to keep the prefix that has been specified for the progressbar when progressbar
  gets removed. Defaults to true.
  @see startProgress
  @see updateProgress