docs: def _calc_eta(self):
          """ Calculates estimated time left until completion. """
          elapsed = self._elapsed()
          if self.cnt == 0 or elapsed < 0.001:
              return None
          rate = float(self.cnt) / elapsed
          self.eta = (float(self.max_iter) - float(self.cnt)) / rate