exec "$bup_python" "$0" ${1+"$@"}
"""
# end of bup preamble
+
+from __future__ import absolute_import
import sys
-from bup import git, options, client
-from bup.helpers import *
+
+from bup import git, options
+from bup.helpers import linereader, log
+from bup.repo import LocalRepo, RemoteRepo
optspec = """
extra = linereader(sys.stdin)
ret = 0
-
-if opt.remote:
- cli = client.Client(opt.remote)
- cat = cli.cat
-else:
- cp = git.CatPipe()
- cat = cp.join
+repo = RemoteRepo(opt.remote) if opt.remote else LocalRepo()
if opt.o:
outfile = open(opt.o, 'wb')
else:
outfile = sys.stdout
-for id in extra:
+for ref in extra:
try:
- for blob in cat(id):
+ for blob in repo.join(ref):
outfile.write(blob)
- except KeyError, e:
+ except KeyError as e:
outfile.flush()
log('error: %s\n' % e)
ret = 1