diff --git a/progress/__init__.py b/progress/__init__.py index 122406f..2405dd2 100644 --- a/progress/__init__.py +++ b/progress/__init__.py @@ -63,6 +63,10 @@ def elapsed(self): @property def elapsed_td(self): return timedelta(seconds=self.elapsed) + + @property + def long_avg(self):#Gets the total average instead of just the running average + return self.elapsed/(self.index+1) def update_avg(self, n, dt): if n > 0: @@ -135,6 +139,13 @@ def eta(self): @property def eta_td(self): return timedelta(seconds=self.eta) + + @property + def long_eta(self): #For long running tasks the total average is more stable + return int(ceil(self.long_avg * self.remaining)) + @property + def eta_td(self): + return timedelta(seconds=self.long_eta) @property def percent(self):