from allmydata.util import time_format
from allmydata.scripts import backupdb
from allmydata.util.encodingutil import listdir_unicode, quote_output, \
- to_str, FilenameEncodingError, unicode_to_url
+ quote_local_unicode_path, to_str, FilenameEncodingError, unicode_to_url
from allmydata.util.assertutil import precondition
from allmydata.util.fileutil import abspath_expanduser_unicode
precondition(isinstance(localpath, unicode), localpath)
# returns newdircap
- self.verboseprint("processing %s" % quote_output(localpath))
+ quoted_path = quote_local_unicode_path(localpath)
+ self.verboseprint("processing %s" % (quoted_path,))
create_contents = {} # childname -> (type, rocap, metadata)
compare_contents = {} # childname -> rocap
children = listdir_unicode(localpath)
except EnvironmentError:
self.directories_skipped += 1
- self.warn("WARNING: permission denied on directory %s" % quote_output(localpath))
+ self.warn("WARNING: permission denied on directory %s" % (quoted_path,))
children = []
except FilenameEncodingError:
self.directories_skipped += 1
- self.warn("WARNING: could not list directory %s due to a filename encoding error" % quote_output(localpath))
+ self.warn("WARNING: could not list directory %s due to a filename encoding error" % (quoted_path,))
children = []
for child in self.options.filter_listdir(children):
compare_contents[child] = childcap
except EnvironmentError:
self.files_skipped += 1
- self.warn("WARNING: permission denied on file %s" % quote_output(childpath))
+ self.warn("WARNING: permission denied on file %s" % quote_local_unicode_path(childpath))
else:
self.files_skipped += 1
if os.path.islink(childpath):
- self.warn("WARNING: cannot backup symlink %s" % quote_output(childpath))
+ self.warn("WARNING: cannot backup symlink %s" % quote_local_unicode_path(childpath))
else:
- self.warn("WARNING: cannot backup special file %s" % quote_output(childpath))
+ self.warn("WARNING: cannot backup special file %s" % quote_local_unicode_path(childpath))
must_create, r = self.check_backupdb_directory(compare_contents)
if must_create:
- self.verboseprint(" creating directory for %s" % quote_output(localpath))
+ self.verboseprint(" creating directory for %s" % quote_local_unicode_path(localpath))
newdircap = mkdir(create_contents, self.options)
assert isinstance(newdircap, str)
if r:
self.directories_created += 1
return newdircap
else:
- self.verboseprint(" re-using old directory for %s" % quote_output(localpath))
+ self.verboseprint(" re-using old directory for %s" % quote_local_unicode_path(localpath))
self.directories_reused += 1
return r.was_created()
def upload(self, childpath):
precondition(isinstance(childpath, unicode), childpath)
- #self.verboseprint("uploading %s.." % quote_output(childpath))
+ #self.verboseprint("uploading %s.." % quote_local_unicode_path(childpath))
metadata = get_local_metadata(childpath)
# we can use the backupdb here
must_upload, bdb_results = self.check_backupdb_file(childpath)
if must_upload:
- self.verboseprint("uploading %s.." % quote_output(childpath))
+ self.verboseprint("uploading %s.." % quote_local_unicode_path(childpath))
infileobj = open(childpath, "rb")
url = self.options['node-url'] + "uri"
resp = do_http("PUT", url, infileobj)
raise HTTPError("Error during file PUT", resp)
filecap = resp.read().strip()
- self.verboseprint(" %s -> %s" % (quote_output(childpath, quotemarks=False),
+ self.verboseprint(" %s -> %s" % (quote_local_unicode_path(childpath, quotemarks=False),
quote_output(filecap, quotemarks=False)))
#self.verboseprint(" metadata: %s" % (quote_output(metadata, quotemarks=False),))
return filecap, metadata
else:
- self.verboseprint("skipping %s.." % quote_output(childpath))
+ self.verboseprint("skipping %s.." % quote_local_unicode_path(childpath))
self.files_reused += 1
return bdb_results.was_uploaded(), metadata