+def build_mute_dict(dict_data=False):
+ """
+ Build muting list
+ """
+ t = Twitter(auth=authen())
+ # Init cursor
+ next_cursor = -1
+ screen_name_list = []
+ name_list = []
+ # Cursor loop
+ while next_cursor != 0:
+ list = t.mutes.users.list(
+ screen_name=g['original_name'],
+ cursor=next_cursor,
+ skip_status=True,
+ include_entities=False,
+ )
+ screen_name_list += ['@' + u['screen_name'] for u in list['users']]
+ name_list += [u['name'] for u in list['users']]
+ next_cursor = list['next_cursor']
+ # Return dict or list
+ if dict_data:
+ return dict(zip(screen_name_list, name_list))
+ else:
+ return screen_name_list
+
+
+def debug_option():
+ """
+ Save traceback when run in debug mode
+ """
+ if g['debug']:
+ g['traceback'].append(traceback.format_exc())
+
+
+def upgrade_center():
+ """
+ Check latest and notify to upgrade
+ """
+ try:
+ current = pkg_resources.get_distribution("rainbowstream").version
+ url = 'https://raw.githubusercontent.com/DTVD/rainbowstream/master/setup.py'
+ readme = requests.get(url).content
+ latest = readme.split("version = \'")[1].split("\'")[0]
+ if current != latest:
+ notice = light_magenta('RainbowStream latest version is ')
+ notice += light_green(latest)
+ notice += light_magenta(' while your current version is ')
+ notice += light_yellow(current) + '\n'
+ notice += light_magenta('You should upgrade with "pip install -U rainbowstream".')
+ printNicely(notice)
+ except:
+ pass
+
+