Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(177)

Side by Side Diff: gclient_utils.py

Issue 3497013: Display the name of the repository that is being updated. (Closed)
Patch Set: Simplify check for text to output. Created 10 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | third_party/repo/progress.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2009 Google Inc. All Rights Reserved. 1 # Copyright 2009 Google Inc. All Rights Reserved.
2 # 2 #
3 # Licensed under the Apache License, Version 2.0 (the "License"); 3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License. 4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at 5 # You may obtain a copy of the License at
6 # 6 #
7 # http://www.apache.org/licenses/LICENSE-2.0 7 # http://www.apache.org/licenses/LICENSE-2.0
8 # 8 #
9 # Unless required by applicable law or agreed to in writing, software 9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS, 10 # distributed under the License is distributed on an "AS IS" BASIS,
(...skipping 645 matching lines...) Expand 10 before | Expand all | Expand 10 after
656 """Flush threads that have terminated.""" 656 """Flush threads that have terminated."""
657 running = self.running 657 running = self.running
658 self.running = [] 658 self.running = []
659 for t in running: 659 for t in running:
660 if t.isAlive(): 660 if t.isAlive():
661 self.running.append(t) 661 self.running.append(t)
662 else: 662 else:
663 t.join() 663 t.join()
664 sys.stdout.full_flush() 664 sys.stdout.full_flush()
665 if self.progress: 665 if self.progress:
666 self.progress.update(1) 666 self.progress.update(1, t.item.name)
667 assert not t.item.name in self.ran 667 assert not t.item.name in self.ran
668 if not t.item.name in self.ran: 668 if not t.item.name in self.ran:
669 self.ran.append(t.item.name) 669 self.ran.append(t.item.name)
670 670
671 def _run_one_task(self, task_item, args, kwargs): 671 def _run_one_task(self, task_item, args, kwargs):
672 if self.jobs > 1: 672 if self.jobs > 1:
673 # Start the thread. 673 # Start the thread.
674 index = len(self.ran) + len(self.running) + 1 674 index = len(self.ran) + len(self.running) + 1
675 new_thread = self._Worker(task_item, index, args, kwargs) 675 new_thread = self._Worker(task_item, index, args, kwargs)
676 self.running.append(new_thread) 676 self.running.append(new_thread)
677 new_thread.start() 677 new_thread.start()
678 else: 678 else:
679 # Run the 'thread' inside the main thread. Don't try to catch any 679 # Run the 'thread' inside the main thread. Don't try to catch any
680 # exception. 680 # exception.
681 task_item.run(*args, **kwargs) 681 task_item.run(*args, **kwargs)
682 self.ran.append(task_item.name) 682 self.ran.append(task_item.name)
683 if self.progress: 683 if self.progress:
684 self.progress.update(1) 684 self.progress.update(1, ', '.join(t.item.name for t in self.running))
685 685
686 class _Worker(threading.Thread): 686 class _Worker(threading.Thread):
687 """One thread to execute one WorkItem.""" 687 """One thread to execute one WorkItem."""
688 def __init__(self, item, index, args, kwargs): 688 def __init__(self, item, index, args, kwargs):
689 threading.Thread.__init__(self, name=item.name or 'Worker') 689 threading.Thread.__init__(self, name=item.name or 'Worker')
690 logging.info(item.name) 690 logging.info(item.name)
691 self.item = item 691 self.item = item
692 self.index = index 692 self.index = index
693 self.args = args 693 self.args = args
694 self.kwargs = kwargs 694 self.kwargs = kwargs
695 695
696 def run(self): 696 def run(self):
697 """Runs in its own thread.""" 697 """Runs in its own thread."""
698 logging.debug('running(%s)' % self.item.name) 698 logging.debug('running(%s)' % self.item.name)
699 work_queue = self.kwargs['work_queue'] 699 work_queue = self.kwargs['work_queue']
700 try: 700 try:
701 self.item.run(*self.args, **self.kwargs) 701 self.item.run(*self.args, **self.kwargs)
702 except Exception: 702 except Exception:
703 # Catch exception location. 703 # Catch exception location.
704 logging.info('Caught exception in thread %s' % self.item.name) 704 logging.info('Caught exception in thread %s' % self.item.name)
705 logging.info(str(sys.exc_info())) 705 logging.info(str(sys.exc_info()))
706 work_queue.exceptions.put(sys.exc_info()) 706 work_queue.exceptions.put(sys.exc_info())
707 logging.info('Task %s done' % self.item.name) 707 logging.info('Task %s done' % self.item.name)
708 708
709 work_queue.ready_cond.acquire() 709 work_queue.ready_cond.acquire()
710 try: 710 try:
711 work_queue.ready_cond.notifyAll() 711 work_queue.ready_cond.notifyAll()
712 finally: 712 finally:
713 work_queue.ready_cond.release() 713 work_queue.ready_cond.release()
OLDNEW
« no previous file with comments | « no previous file | third_party/repo/progress.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698