403 topic = {'upload': _('lfs uploading'), |
403 topic = {'upload': _('lfs uploading'), |
404 'download': _('lfs downloading')}[action] |
404 'download': _('lfs downloading')}[action] |
405 if len(objects) > 1: |
405 if len(objects) > 1: |
406 self.ui.note(_('lfs: need to transfer %d objects (%s)\n') |
406 self.ui.note(_('lfs: need to transfer %d objects (%s)\n') |
407 % (len(objects), util.bytecount(total))) |
407 % (len(objects), util.bytecount(total))) |
408 progress = self.ui.makeprogress(topic, total=total) |
408 |
409 progress.update(0) |
|
410 def transfer(chunk): |
409 def transfer(chunk): |
411 for obj in chunk: |
410 for obj in chunk: |
412 objsize = obj.get('size', 0) |
411 objsize = obj.get('size', 0) |
413 if self.ui.verbose: |
412 if self.ui.verbose: |
414 if action == 'download': |
413 if action == 'download': |
437 oids = worker.worker(self.ui, 0.1, transfer, (), |
436 oids = worker.worker(self.ui, 0.1, transfer, (), |
438 sorted(objects, key=lambda o: o.get('oid'))) |
437 sorted(objects, key=lambda o: o.get('oid'))) |
439 else: |
438 else: |
440 oids = transfer(sorted(objects, key=lambda o: o.get('oid'))) |
439 oids = transfer(sorted(objects, key=lambda o: o.get('oid'))) |
441 |
440 |
442 processed = 0 |
441 with self.ui.makeprogress(topic, total=total) as progress: |
443 blobs = 0 |
442 progress.update(0) |
444 for _one, oid in oids: |
443 processed = 0 |
445 processed += sizes[oid] |
444 blobs = 0 |
446 blobs += 1 |
445 for _one, oid in oids: |
447 progress.update(processed) |
446 processed += sizes[oid] |
448 self.ui.note(_('lfs: processed: %s\n') % oid) |
447 blobs += 1 |
449 progress.complete() |
448 progress.update(processed) |
|
449 self.ui.note(_('lfs: processed: %s\n') % oid) |
450 |
450 |
451 if blobs > 0: |
451 if blobs > 0: |
452 if action == 'upload': |
452 if action == 'upload': |
453 self.ui.status(_('lfs: uploaded %d files (%s)\n') |
453 self.ui.status(_('lfs: uploaded %d files (%s)\n') |
454 % (blobs, util.bytecount(processed))) |
454 % (blobs, util.bytecount(processed))) |