[tor-bugs] #7832 [Stem]: Get some consistency in Controller default args
Tor Bug Tracker & Wiki
blackhole at torproject.org
Sun Dec 30 22:34:56 UTC 2012
#7832: Get some consistency in Controller default args
------------------------+---------------------------------------------------
Reporter: atagar | Owner: atagar
Type: defect | Status: new
Priority: major | Milestone:
Component: Stem | Version:
Keywords: controller | Parent:
Points: | Actualpoints:
------------------------+---------------------------------------------------
A major pain point of using TorCtl was that just about every method could
raise an exception. This is 'proper' from a standpoint of correctness but
made it a pita to use, causing folks (including me) to make wrapper
libraries.
A few of our methods based on arm, like get_info() and get_conf(), have an
optional 'default' argument that suppresses exceptions. This is great
since it lets us have nice code like...
{{{
print "my version is %s" % controller.get_info('version', 'unknown')
}}}
... instead of...
{{{
try:
my_version = controller.get_info('version')
except:
my_version = 'unknown'
print "my version is %s" % my_version
}}}
However, as we've added more methods to the Controller class this has
largely gone by the wayside. In some cases that makes sense, but we should
look over our API to figure out what sort of class-wide conventions we
want it to have with respect to defaults.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/7832>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list