#80: Monotone support broken (Debian bug 390805)
--------------------+-------------------------------------------------------
Reporter: lele | Owner: lele
Type: defect | Status: new
Priority: major | Milestone: VersionOne
Component: mtn | Version: 0.9
Keywords: |
--------------------+-------------------------------------------------------
Package: tailor
Version: 0.9.26-1
Severity: normal
After trying to create a monotone repository:
{{{
16:21:44 [I] Bootstrapping "project" in "/home/brian/monotone"
16:21:44 [I] $ mtn db init --db /home/brian/monotone/vacation.mtn
16:21:44 [I] [Ok]
Traceback (most recent call last):
File "/usr/bin/tailor", line 35, in ?
main()
File "/var/lib/python-support/python2.4/vcpx/tailor.py", line 338, in
main
tailorizer()
File "/var/lib/python-support/python2.4/vcpx/tailor.py", line 143, in
__call__
self.bootstrap()
File "/var/lib/python-support/python2.4/vcpx/tailor.py", line 64, in
bootstrap
dwd = self.workingDir()
File "/var/lib/python-support/python2.4/vcpx/project.py", line 203, in
workingDir
self.dwd = DualWorkingDir(self.source, self.target)
File "/var/lib/python-support/python2.4/vcpx/dualwd.py", line 68, in
__init__
self.target.prepareTargetRepository()
File "/var/lib/python-support/python2.4/vcpx/target.py", line 512, in
prepareTargetRepository
self._prepareTargetRepository()
File "/var/lib/python-support/python2.4/vcpx/repository/monotone.py",
line 841, in _prepareTargetRepository
self.repository.create()
File "/var/lib/python-support/python2.4/vcpx/repository/monotone.py",
line 81, in create
cmd = self.repository.command("genkey", "--db",
AttributeError: 'str' object has no attribute 'command'
}}}
Hmmm... Line 77 of monotone.py has "self.command" not
"self.repository.command". I wonder if some of "self.repository.command"
need
to be replaced with "self.command". Especially line 75 and line 81.
If I try to run the command again anyway, it skips the initialization step
(because the monotone database looks initialized), but monotone hangs
waiting
for a password (presumably because it get up to the step of creating a the
key
I requested). This, to me, seems to be not-very-robust - if the
initialization
failed, running the same command again should retry the initialization.
After making the change I suggested above, it appears that the passphrase
is
mandatory:
{{{
16:37:05 [I] Bootstrapping "project" in "/home/brian/monotone"
16:37:05 [I] $ mtn db init --db /home/brian/monotone/vacation.mtn
16:37:05 [I] [Ok]
Traceback (most recent call last):
File "/usr/bin/tailor", line 35, in ?
main()
File "/var/lib/python-support/python2.4/vcpx/tailor.py", line 338, in
main
tailorizer()
File "/var/lib/python-support/python2.4/vcpx/tailor.py", line 143, in
__call__
self.bootstrap()
File "/var/lib/python-support/python2.4/vcpx/tailor.py", line 64, in
bootstrap
dwd = self.workingDir()
File "/var/lib/python-support/python2.4/vcpx/project.py", line 203, in
workingDir
self.dwd = DualWorkingDir(self.source, self.target)
File "/var/lib/python-support/python2.4/vcpx/dualwd.py", line 68, in
__init__
self.target.prepareTargetRepository()
File "/var/lib/python-support/python2.4/vcpx/target.py", line 512, in
prepareTargetRepository
self._prepareTargetRepository()
File "/var/lib/python-support/python2.4/vcpx/repository/monotone.py",
line 841, in _prepareTargetRepository
self.repository.create()
File "/var/lib/python-support/python2.4/vcpx/repository/monotone.py",
line 87, in create
regkey.execute(self.keygenid, input=passp)
UnboundLocalError: local variable 'passp' referenced before assignment
}}}
This should be checked, with an error displayed if not given.
Which is easy to fix, and now:
{{{
16:43:24 [I] Updating "project" in "/home/brian/monotone"
16:43:24 [I] Applying pending upstream changesets
16:43:24 [I] Changeset "6"
16:43:24 [I] Log message: 03/03/00 - usersname.c removed
16:43:24 [I] /home/brian/monotone/vacation $ svn update --ignore-externals
--revision 6 .
16:43:28 [I] [Ok]
16:43:28 [I] /home/brian/monotone/vacation $ mtn drop usersname.c
16:43:28 [I] [Ok]
16:43:28 [I] /home/brian/monotone/vacation $ mtn commit --author thecivvie
--date 2000-03-23T12:13:44 --message-file /tmp/brian/tailornlAU81mtn .
16:43:28 [W] [Status 1]
16:43:28 [E] Monotone commit said: mtn: beginning commit on branch
'org.vpac.vacation'
mtn: misuse: you have multiple private keys
mtn: misuse: pick one to use for signatures by adding '-k<keyname>' to
your command
16:43:28 [C] Couldn't replay changeset
16:43:28 [C] Upstream change application failed
Failure applying upstream changes: /home/brian/monotone/vacation $ mtn
commit --author thecivvie --date 2000-03-23T12:13:44 --message-file
/tmp/brian/tailornlAU81mtn . returned status 1
}}}
tailor is meant to be passing the -k parameter for the key it just
created, but isn't.
--
Ticket URL: <http://progetti.arstecnica.it/tailor/ticket/80>
Tailor <http://progetti.arstecnica.it/tailor>
An inter-VCs changeset exchanger_______________________________________________
Tailor mailing list
[email protected]
http://lists.zooko.com/mailman/listinfo/tailor