bzr bd in SVN checkout from DPMT repo fails with invalid URL
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
bzr-builddeb |
Triaged
|
Medium
|
Unassigned |
Bug Description
I heard that there was this amazing new feature where I could go run bzr bd in the subversion checkout of my debian packages from debian python modules team (these all use svn-buildpackage). When I tried this, I got an error:
emurphy@
Initialising Subversion metadata cache in /home/emurphy/
Building using working tree
Running in merge mode
bzr: ERROR: Invalid url supplied to transport: "svn+ssh://<email address hidden>
emurphy@
bzr:
Installed: 2.1.2-1
Candidate: 2.1.2-1
Version table:
*** 2.1.2-1 0
500 http://
100 /var/lib/
2.
500 http://
bzr-builddeb:
Installed: 2.4.2
Candidate: 2.4.2
Version table:
*** 2.4.2 0
500 http://
100 /var/lib/
2.4 0
500 http://
bzr-svn:
Installed: 1.0.2-2
Candidate: 1.0.2-2
Version table:
*** 1.0.2-2 0
500 http://
100 /var/lib/
1.
500 http://
snippet from ~/.bzr.log:
Wed 2010-07-14 15:40:25 -0400
0.033 bazaar version: 2.1.2
0.033 bzr arguments: [u'bd']
0.046 looking for plugins in /home/emurphy/
0.047 looking for plugins in /usr/lib/
0.172 encoding stdout as sys.stdout encoding 'UTF-8'
0.186 bzr-svn: using Subversion 1.6.12 ()
[16286] 2010-07-14 15:40:28.634 INFO: Initialising Subversion metadata cache in /home/emurphy/
401.332 potential branching layouts: [('trunk2', 295), ('root', 6)]
401.332 Guessed repository layout: TrunkLayout(2), guess layout to use: TrunkLayout(2)
402.992 saving file id map for 'svn-v4:
[16286] 2010-07-14 15:47:08.464 INFO: Building using working tree
403.015 Using True for merge, taken from the tree
[16286] 2010-07-14 15:47:08.481 INFO: Running in merge mode
403.016 Using 'debian/changelog' to get package information
403.026 Traceback (most recent call last):
File "/usr/lib/
return the_callable(*args, **kwargs)
File "/usr/lib/
ret = run(*run_argv)
File "/usr/lib/
return self.run_
File "/usr/lib/
return self._operation
File "/usr/lib/
self.cleanups, self.func, *args, **kwargs)
File "/usr/lib/
result = func(*args, **kwargs)
File "/usr/lib/
is_local, result_dir or result, build_dir, orig_dir)
File "/usr/lib/
config.
File "/usr/lib/
urlutils.
File "/usr/lib/
url, 'local urls must start with file:/// or file://localhost/')
InvalidURL: Invalid url supplied to transport: "svn+ssh://<email address hidden>
403.027 Transferred: 4593KiB (11.5K/s r:0K w:0K u:4593K)
403.027 return code 3
Changed in bzr-builddeb: | |
status: | New → Triaged |
importance: | Undecided → Medium |
On Wed, 14 Jul 2010 19:56:18 -0000, Elliot Murphy <email address hidden> wrote: sunk:~/ python- packaging/ django- lean$ bzr bd .cache/ bazaar/ svn/771dd761- d7fa-0310- a302-f036d1c1eb b6. /svn/python- modules/ packages/ django- lean/trunk" : local urls must start with file:/// or file://localhost/
> Public bug reported:
>
> I heard that there was this amazing new feature where I could go run bzr
> bd in the subversion checkout of my debian packages from debian python
> modules team (these all use svn-buildpackage). When I tried this, I got
> an error:
>
>
> emurphy@
> Initialising Subversion metadata cache in /home/emurphy/
> Building using working tree
> Running in merge mode
> bzr: ERROR: Invalid url supplied to transport: "svn+ssh://<email address hidden>
Hi Elliot,
Thanks for the bug.
So, it thinks that the branch that you passed is a local build, which it
is, because you didn't pass one.
In that case it assumes that the branch.base will be be local, but I'm
guessing that it is not forced to be in a checkout.
Thefore we need to be a bit smarter here and take the root of the tree
instead, if we have a tree.
We won't have one if you pass a remote branch to build, or if you are in
a treeless branch. If it is the latter then branch.base will be local
and all will work, if it is the former then it will be remote and the
existing code will cope with this.
I'm not quite sure how to untwist the logic around this right now, but
it shouldn't be hard to make the necessary tweaks in cmds.py if you want
to hack it and see how far you get after this error is removed.
Thanks,
James