comparison rhodecode/lib/middleware/simplegit.py @ 2197:b14d8bd96144 beta

Synced SimpleGitUploadPackHandler with latest dulwich code
author Marcin Kuzminski <marcin@python-works.com>
date Tue, 17 Apr 2012 21:41:46 +0200
parents 79e4d6b9c1f0
children d9972f76322e
comparison
equal deleted inserted replaced
2196:7ccf403b9c3f 2197:b14d8bd96144
42 self.repo.get_peeled) 42 self.repo.get_peeled)
43 objects_iter = self.repo.fetch_objects( 43 objects_iter = self.repo.fetch_objects(
44 graph_walker.determine_wants, graph_walker, self.progress, 44 graph_walker.determine_wants, graph_walker, self.progress,
45 get_tagged=self.get_tagged) 45 get_tagged=self.get_tagged)
46 46
47 # Do they want any objects? 47 # Did the process short-circuit (e.g. in a stateless RPC call)? Note
48 if objects_iter is None or len(objects_iter) == 0: 48 # that the client still expects a 0-object pack in most cases.
49 if objects_iter is None:
49 return 50 return
50 51
51 self.progress("counting objects: %d, done.\n" % len(objects_iter)) 52 self.progress("counting objects: %d, done.\n" % len(objects_iter))
52 dulserver.write_pack_objects(dulserver.ProtocolFile(None, write), 53 dulserver.write_pack_objects(dulserver.ProtocolFile(None, write),
53 objects_iter, len(objects_iter)) 54 objects_iter)
54 messages = [] 55 messages = []
55 messages.append('thank you for using rhodecode') 56 messages.append('thank you for using rhodecode')
56 57
57 for msg in messages: 58 for msg in messages:
58 self.progress(msg + "\n") 59 self.progress(msg + "\n")
59 # we are done 60 # we are done
60 self.proto.write("0000") 61 self.proto.write("0000")
62
61 63
62 dulserver.DEFAULT_HANDLERS = { 64 dulserver.DEFAULT_HANDLERS = {
63 'git-upload-pack': SimpleGitUploadPackHandler, 65 'git-upload-pack': SimpleGitUploadPackHandler,
64 'git-receive-pack': dulserver.ReceivePackHandler, 66 'git-receive-pack': dulserver.ReceivePackHandler,
65 } 67 }