/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to breezy/git/server.py

  • Committer: Jelmer Vernooij
  • Date: 2020-02-21 03:58:42 UTC
  • mfrom: (7490.3.4 work)
  • mto: This revision was merged to the branch mainline in revision 7495.
  • Revision ID: jelmer@jelmer.uk-20200221035842-j97r6b74q8cgxb21
merge lp:brz/3.1.

Show diffs side-by-side

added added

removed removed

Lines of Context:
31
31
 
32
32
from .mapping import (
33
33
    default_mapping,
34
 
    decode_git_path,
35
34
    )
36
35
from .object_store import (
37
36
    BazaarObjectStore,
59
58
 
60
59
    def open_repository(self, path):
61
60
        # FIXME: More secure path sanitization
62
 
        transport = self.transport.clone(decode_git_path(path).lstrip("/"))
 
61
        transport = self.transport.clone(path.decode('utf-8').lstrip("/"))
63
62
        trace.mutter('client opens %r: %r', path, transport)
64
63
        return BzrBackendRepo(transport, self.mapping)
65
64
 
91
90
            have = self.object_store.find_common_revisions(graph_walker)
92
91
            if wants is None:
93
92
                return
94
 
            shallows = getattr(graph_walker, 'shallow', frozenset())
95
93
            if isinstance(self.object_store, BazaarObjectStore):
96
94
                return self.object_store.generate_pack_contents(
97
 
                    have, wants, shallow=shallows,
98
 
                    progress=progress, get_tagged=get_tagged, lossy=True)
 
95
                    have, wants, progress, get_tagged=get_tagged, lossy=True)
99
96
            else:
100
 
                if shallows:
101
 
                    return self.object_store.generate_pack_contents(
102
 
                        have, wants, shallow=shallows, progress=progress)
103
 
                else:
104
 
                    return self.object_store.generate_pack_contents(
105
 
                        have, wants, progress=progress)
 
97
                return self.object_store.generate_pack_contents(
 
98
                    have, wants, progress)
106
99
 
107
100
 
108
101
class BzrTCPGitServer(TCPGitServer):
170
163
 
171
164
def serve_git_receive_pack(transport, host=None, port=None, inet=False):
172
165
    if not inet:
173
 
        raise errors.CommandError(
 
166
        raise errors.BzrCommandError(
174
167
            "git-receive-pack only works in inetd mode")
175
168
    backend = BzrBackend(transport)
176
169
    sys.exit(serve_command(ReceivePackHandler, backend=backend))
178
171
 
179
172
def serve_git_upload_pack(transport, host=None, port=None, inet=False):
180
173
    if not inet:
181
 
        raise errors.CommandError(
 
174
        raise errors.BzrCommandError(
182
175
            "git-receive-pack only works in inetd mode")
183
176
    backend = BzrBackend(transport)
184
177
    sys.exit(serve_command(UploadPackHandler, backend=backend))