[tahoe-lafs-trac-stream] [tahoe-lafs] #2081: bad error message when you give a readonly dircap as target to "tahoe cp"

tahoe-lafs trac at tahoe-lafs.org
Wed Sep 11 06:09:01 UTC 2013


#2081: bad error message when you give a readonly dircap as target to "tahoe cp"
----------------------------------+---------------------------
 Reporter:  zooko                 |          Owner:
     Type:  defect                |         Status:  new
 Priority:  normal                |      Milestone:  undecided
Component:  code-mutable          |        Version:  1.10.0
 Keywords:  usability error easy  |  Launchpad Bug:
----------------------------------+---------------------------
 I accidentally wrote {{{tahoe cp -r . $RODIRCAP}}}, and instead of a nice
 error message like "Can't cp to target because it is read-only.", I got
 this:

 {{{

 zooko at spark ~/tmp/tahoe-lafs.org/~zooko $ tahoe cp --node-directory
 =~/.tahoe-basedirs/leastauthority-zookog_at_gmail.com/gateway/ -r
 ./backup_of_klog/ $RODIRCAP
 Traceback (most recent call last):
   File "/usr/bin/tahoe", line 3, in <module>
     runner.run()
   File "/usr/lib/python2.7/dist-packages/allmydata/scripts/runner.py",
 line 113, in run
     rc = runner(sys.argv[1:], install_node_control=install_node_control)
   File "/usr/lib/python2.7/dist-packages/allmydata/scripts/runner.py",
 line 99, in runner
     rc = cli.dispatch[command](so)
   File "/usr/lib/python2.7/dist-packages/allmydata/scripts/cli.py", line
 546, in cp
     rc = tahoe_cp.copy(options)
   File "/usr/lib/python2.7/dist-packages/allmydata/scripts/tahoe_cp.py",
 line 771, in copy
     return Copier().do_copy(options)
   File "/usr/lib/python2.7/dist-packages/allmydata/scripts/tahoe_cp.py",
 line 451, in do_copy
     status = self.try_copy()
   File "/usr/lib/python2.7/dist-packages/allmydata/scripts/tahoe_cp.py",
 line 512, in try_copy
     return self.copy_to_directory(sources, target)
   File "/usr/lib/python2.7/dist-packages/allmydata/scripts/tahoe_cp.py",
 line 658, in copy_to_directory
     self.assign_targets(source, target)
   File "/usr/lib/python2.7/dist-packages/allmydata/scripts/tahoe_cp.py",
 line 693, in assign_targets
     subtarget = target.get_child_target(name)
   File "/usr/lib/python2.7/dist-packages/allmydata/scripts/tahoe_cp.py",
 line 378, in get_child_target
     writecap = make_tahoe_subdirectory(self.nodeurl, self.writecap, name)
   File "/usr/lib/python2.7/dist-packages/allmydata/scripts/tahoe_cp.py",
 line 55, in make_tahoe_subdirectory
     ]) + "?t=mkdir"
   File "/usr/lib/python2.7/urllib.py", line 1255, in quote
     raise TypeError('None object cannot be quoted')
 TypeError: None object cannot be quoted
 }}}

-- 
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2081>
tahoe-lafs <https://tahoe-lafs.org>
secure decentralized storage


More information about the tahoe-lafs-trac-stream mailing list