~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/transport/__init__.py

Support bzr:// urls to work with the new RPC-based transport which will be used
with the upcoming high-performance smart server. The new command ``bzr serve``
will invoke bzr in server mode, which processes these requests. (Andrew
Bennetts, Robert Collins, Martin Pool)

Show diffs side-by-side

added added

removed removed

Lines of Context:
331
331
        # transports?
332
332
        if not isinstance(relpath, str):
333
333
            raise errors.InvalidURL("not a valid url: %r" % relpath)
334
 
        base_parts = base_path.split('/')
 
334
        if relpath.startswith('/'):
 
335
            base_parts = []
 
336
        else:
 
337
            base_parts = base_path.split('/')
335
338
        if len(base_parts) > 0 and base_parts[-1] == '':
336
339
            base_parts = base_parts[:-1]
337
340
        for p in relpath.split('/'):
1011
1014
register_lazy_transport('memory://', 'bzrlib.transport.memory', 'MemoryTransport')
1012
1015
register_lazy_transport('readonly+', 'bzrlib.transport.readonly', 'ReadonlyTransportDecorator')
1013
1016
register_lazy_transport('fakenfs+', 'bzrlib.transport.fakenfs', 'FakeNFSTransportDecorator')
1014
 
register_lazy_transport('vfat+', 
 
1017
register_lazy_transport('vfat+',
1015
1018
                        'bzrlib.transport.fakevfat',
1016
1019
                        'FakeVFATTransportDecorator')
 
1020
register_lazy_transport('bzr://',
 
1021
                        'bzrlib.transport.smart',
 
1022
                        'SmartTCPTransport')