reviewboard.py 文件源码

python
阅读 24 收藏 0 点赞 0 评论 0

项目:alfred_reviewboard 作者: lydian 项目源码 文件源码
def search_user_name(self, prefix, limit=LIMIT):
        user_search_history = self.wf.stored_data('recent_users') or []
        if prefix.strip() != '':
            matched_recent_users = self.wf.filter(prefix, user_search_history)
        else:
            matched_recent_users = user_search_history

        if not self.wf.cached_data_fresh('users_list', 86400):
            run_in_background(
                'update_users', [
                    '/usr/bin/python',
                    self.wf.workflowfile('reviewboard.py'),
                    'update_users'])

        # if is_running('update_users'):
        #    self.wf.add_item('Updating users', icon=ICON_INFO)
        user_caches = self.wf.cached_data('users', max_age=0) or dict()
        users_list = self.wf.cached_data('users_list', max_age=0) or set()

        if prefix.strip() != '':
            matched_cached_users = self.wf.filter(
                prefix,
                users_list)
        else:
            matched_cached_users = users_list

        # remove duplicated
        matched_users = matched_recent_users + [
            user
            for user in matched_cached_users
            if user not in set(matched_recent_users)]

        return [
            user_caches[user] for user in matched_users[:limit]
        ]
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号