import urllib.parse
import urllib.request
-from .ui import progressbar
-
from .i18n import _
+from . import _pakfire
from . import errors
from .__version__ import PAKFIRE_VERSION
# Try setting progress bar to correct maximum value
# XXX this might need a function in ProgressBar
l = self._get_content_length(res)
- p.value_max = l
+ p.set_max(l)
# Compute a checksum of each downloaded file
h = hashlib.new(checksum_algo or "sha512")
filesize = os.path.getsize(filename)
with self._make_progressbar(message) as p:
- p.value_max = filesize
+ p.set_max(filesize)
with open(filename, "rb") as f:
# This streams the data in small chunks and
return "Basic %s" % authstring.decode("ascii")
- def _make_progressbar(self, message=None, **kwargs):
- p = progressbar.ProgressBar(**kwargs)
+ def _make_progressbar(self, message=None):
+ p = progressbar.ProgressBar()
# Show message (e.g. filename)
if message:
- p.add(message)
-
- w = progressbar.WidgetError()
- p.add(w)
-
- # Show percentage
- w = progressbar.WidgetPercentage(clear_when_finished=True)
- p.add(w)
-
- # Add a bar
- w = progressbar.WidgetBar()
- p.add(w)
-
- # Show transfer speed
- # XXX just shows the average speed which is probably
- # not what we want here. Might want an average over the
- # last x (maybe ten?) seconds
- w = progressbar.WidgetFileTransferSpeed()
- p.add(w)
-
- # Spacer
- p.add("|")
-
- # Show downloaded bytes
- w = progressbar.WidgetBytesReceived()
- p.add(w)
-
- # ETA
- w = progressbar.WidgetETA()
- p.add(w)
+ p.add_string(message)
+
+ # Add widgets
+ p.add_percentage()
+ p.add_bar()
+ p.add_transfer_speed()
+ p.add_string("|")
+ p.add_bytes_received()
+ p.add_eta()
return p