Package: svn-load
Version: 1.3-1
Severity: normal
Tags: patch upstream
Dear Maintainer,
since I reinstalled my system, using svn-load like
svn-load https://www.example.com/svn/myproject/ current /tmp/somedir
terminates with the following traceback:
TypeError: get_login() takes exactly 3 arguments (4 given)
Traceback (most recent call last):
File "/usr/bin/svn-load", line 652, in <module>
"Load %s into %s." % (os.path.basename(d), import_dir))
pysvn._pysvn_2_7.ClientError: unhandled exception in callback_get_login
after doing the local work, just before commiting the changes to the svn
server. With the freshly installed system, svn-load would need to ask me
for the svn password but fails to do so. As the version I had installed
on my old system worked well and was idendical, I assume that when a
cached password is present (which is the case in most scenarios -
therefore I could not find a bug report for this problem), the script
works well.
I created a simple patch that I'll attach to my next mail.
-- System Information:
Debian Release: 9.5
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 4.9.0-8-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8), LANGUAGE=en_US:en
(charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages svn-load depends on:
ii python 2.7.13-2
ii python-svn 1.9.4-2
svn-load recommends no packages.
svn-load suggests no packages.
-- no debconf information
diff --git a/svn-load b/svn-load
index 9c18fa0..37cddbe 100755
--- a/svn-load
+++ b/svn-load
@@ -68,11 +68,11 @@ class NotifiedClient:
def ssl_client_cert_password_prompt(realm, may_save):
return True, getpass.getpass("Passphrase for '%s': " % (realm)), False
- def get_login(realm, username, may_save):
+ def get_login(self, realm, username, may_save):
if not self.password:
self.password = raw_input("Password for %s (svn): " % username)
- return (True, username, password, False)
+ return (True, username, self.password, False)
## pysvn supports a number of callbacks for scenarios I've yet to
## encounter. For now, just emit a warning to hopefully clue the user