1696 progress.update(pos, item=item) |
1696 progress.update(pos, item=item) |
1697 else: |
1697 else: |
1698 progress.complete() |
1698 progress.complete() |
1699 |
1699 |
1700 def makeprogress(self, topic, unit="", total=None): |
1700 def makeprogress(self, topic, unit="", total=None): |
1701 '''exists only so low-level modules won't need to import scmutil''' |
1701 """Create a progress helper for the specified topic""" |
1702 return scmutil.progress(self, topic, unit, total) |
1702 if getattr(self._fmsgerr, 'structured', False): |
|
1703 # channel for machine-readable output with metadata, just send |
|
1704 # raw information |
|
1705 # TODO: consider porting some useful information (e.g. estimated |
|
1706 # time) from progbar. we might want to support update delay to |
|
1707 # reduce the cost of transferring progress messages. |
|
1708 def updatebar(topic, pos, item, unit, total): |
|
1709 self._fmsgerr.write(None, type=b'progress', topic=topic, |
|
1710 pos=pos, item=item, unit=unit, total=total) |
|
1711 elif self._progbar is not None: |
|
1712 updatebar = self._progbar.progress |
|
1713 else: |
|
1714 def updatebar(topic, pos, item, unit, total): |
|
1715 pass |
|
1716 return scmutil.progress(self, updatebar, topic, unit, total) |
1703 |
1717 |
1704 def getlogger(self, name): |
1718 def getlogger(self, name): |
1705 """Returns a logger of the given name; or None if not registered""" |
1719 """Returns a logger of the given name; or None if not registered""" |
1706 return self._loggers.get(name) |
1720 return self._loggers.get(name) |
1707 |
1721 |