#578708 bzr+ssh urlspec documentation should mention version required on remote end

#578708#5
Date:
2010-04-21 22:58:12 UTC
From:
To:
Package: bzr
Version: 2.1.1-1
Severity: normal
Tags: upstream

    For bzr+ssh:// and sftp:// URLs, Bazaar also supports paths that begin
    with '~' as meaning that the rest of the path should be interpreted
    relative to the remote user's home directory.  For example if the user
    ``remote`` has a  home directory of ``/home/remote`` on the server
    shell.example.com, then:

      bzr+ssh://remote@shell.example.com/~/myproject/trunk

    would refer to ``/home/remote/myproject/trunk``.

However, this does not seem to work:

    liw@saimaa$ rm -rf trunk
    liw@saimaa$ bzr get sftp://pieni.net/~/code.liw.fi/summain/bzr/trunk/
    Branched 28 revision(s).
    liw@saimaa$ rm -rf trunk
    liw@saimaa$ bzr get bzr+ssh://pieni.net/~/code.liw.fi/summain/bzr/trunk/
    bzr: ERROR: Not a branch: "bzr+ssh://pieni.net/~/code.liw.fi/summain/bzr/trunk/".
    liw@saimaa$ bzr get bzr+ssh://pieni.net/home/liw/code.liw.fi/summain/bzr/trunk/
    Branched 28 revision(s).
    liw@saimaa$

My home directory on the remote end is /home/liw (no surprise). With
sftp, the /~/ syntax works, with bzr+ssh it does not. If I expand /~/
to /home/liw manually, it works with bzr+ssh as well.

#578708#10
Date:
2010-04-22 07:23:41 UTC
From:
To:
Lars Wirzenius, 2010-04-22 10:58:12 +1200 :

[...]

My understanding is that the ~ handling is delegated to the remote bzr
process when you use bzr+ssh://, while it is done locally when you use
the “dumb” sftp:// protocol; as a consequence, ~ handling (which has
only existed since bzr 2.1) only works if the version of bzr installed
on the *remote* host is >= 2.1.

Roland.

#578708#15
Date:
2010-04-22 20:59:57 UTC
From:
To:
retitle 578708 bzr+ssh urlspec documentation should mention version required on remote end
thanks

I have 2.0.3-1~bpo50+1 on the remote server, so I assume that's the
solution. When I try it with another server, with 2.1.1-1, it does
indeed work.

The bug is therefore a documentation bug. The urlspec documentation
should include something like this (e.g., at the end of the /~/
description):

        For bzr+ssh, the remote version of bzr must be at least 2.1.

Retitling bug accordingly.