I'm not asking for any debugging, but overall does this look like a sane way to use the API to query the reviews given? The reviewboard Python API code is so dynamic that it's hard to inspect at runtime.
client = RBClient(server_url)
try:
root = client.get_root()
except AuthorizationError:
print('You are not logged in to the reviewboard API. '
'Enter your credentials:')
username = input('Username: ')
password = getpass('Password: ')
client.login(username, password)
root = client.get_root()
reviews_extension = None
for extension in root.get_extensions():
if
extension.name == 'rb_reviews_api':
reviews_extension = extension
break
else:
print('No RB reviews API extension installed')
for username in usernames:
reviews_given = reviews_extension.get_reviews(
time_added_from=time_added_from,
time_added_to=time_added_to,
from_user=username,
)
review_count = 0
print('Fetching reviews given. This may take a while...')
for review_given in reviews_given.all_items:
review_count += 1
print('%d reviews given' % review_count)