From f71958bf48a77764c56d618d37636b6f5ec838d8 Mon Sep 17 00:00:00 2001 From: Daira Hopwood Date: Tue, 20 Oct 2015 17:16:32 +0100 Subject: [PATCH] URIs are strs. Signed-off-by: Daira Hopwood --- src/allmydata/scripts/magic_folder_cli.py | 12 ++++++++---- src/allmydata/uri.py | 2 +- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/allmydata/scripts/magic_folder_cli.py b/src/allmydata/scripts/magic_folder_cli.py index 8227adda..ef0d76f6 100644 --- a/src/allmydata/scripts/magic_folder_cli.py +++ b/src/allmydata/scripts/magic_folder_cli.py @@ -109,24 +109,28 @@ def invite(options): if rc != 0: print >>options.stderr, "magic-folder: failed to mkdir\n" return rc + + # FIXME this assumes caps are ASCII. dmd_write_cap = mkdir_options.stdout.getvalue().strip() - dmd_readonly_cap = unicode(uri.from_string(dmd_write_cap).get_readonly().to_string(), 'utf-8') + dmd_readonly_cap = uri.from_string(dmd_write_cap).get_readonly().to_string() if dmd_readonly_cap is None: print >>options.stderr, "magic-folder: failed to diminish dmd write cap\n" return 1 magic_write_cap = get_aliases(options["node-directory"])[options.alias] - magic_readonly_cap = unicode(uri.from_string(magic_write_cap).get_readonly().to_string(), 'utf-8') + magic_readonly_cap = uri.from_string(magic_write_cap).get_readonly().to_string() + # tahoe ln CLIENT_READCAP COLLECTIVE_WRITECAP/NICKNAME ln_options = _delegate_options(options, LnOptions()) - ln_options.from_file = dmd_readonly_cap - ln_options.to_file = u"%s/%s" % (magic_write_cap, options.nickname) + ln_options.from_file = unicode(dmd_readonly_cap, 'utf-8') + ln_options.to_file = u"%s/%s" % (unicode(magic_write_cap, 'utf-8'), options.nickname) rc = tahoe_mv.mv(ln_options, mode="link") if rc != 0: print >>options.stderr, "magic-folder: failed to create link\n" print >>options.stderr, ln_options.stderr.getvalue() return rc + # FIXME: this assumes caps are ASCII. print >>options.stdout, "%s%s%s" % (magic_readonly_cap, INVITE_SEPARATOR, dmd_write_cap) return 0 diff --git a/src/allmydata/uri.py b/src/allmydata/uri.py index 372e0b8b..4d6db482 100644 --- a/src/allmydata/uri.py +++ b/src/allmydata/uri.py @@ -730,7 +730,7 @@ ALLEGED_IMMUTABLE_PREFIX = 'imm.' def from_string(u, deep_immutable=False, name=u""): if not isinstance(u, str): - raise TypeError("unknown URI type: %s.." % str(u)[:100]) + raise TypeError("URI must be str: %r" % (u,)) # We allow and check ALLEGED_READONLY_PREFIX or ALLEGED_IMMUTABLE_PREFIX # on all URIs, even though we would only strictly need to do so for caps of -- 2.45.2