diff --git a/kallithea/controllers/api/api.py b/kallithea/controllers/api/api.py --- a/kallithea/controllers/api/api.py +++ b/kallithea/controllers/api/api.py @@ -584,13 +584,12 @@ class ApiController(JSONRPCController): error: null """ - result = [] - users_list = User.query().order_by(User.username) \ - .filter(User.username != User.DEFAULT_USER) \ - .all() - for user in users_list: - result.append(user.get_api_data()) - return result + return [ + user.get_api_data() + for user in User.query() + .order_by(User.username) + .filter(User.username != User.DEFAULT_USER) + ] @HasPermissionAnyDecorator('hg.admin') def create_user(self, username, email, password=Optional(''), @@ -841,10 +840,10 @@ class ApiController(JSONRPCController): error : null """ - result = [] - for user_group in UserGroupList(UserGroup.query().all(), perm_level='read'): - result.append(user_group.get_api_data()) - return result + return [ + user_group.get_api_data() + for user_group in UserGroupList(UserGroup.query().all(), perm_level='read') + ] @HasPermissionAnyDecorator('hg.admin', 'hg.usergroup.create.true') def create_user_group(self, group_name, description=Optional(''), @@ -1187,7 +1186,6 @@ class ApiController(JSONRPCController): raise JSONRPCError('repository `%s` does not exist' % (repoid,)) members = [] - followers = [] for user in repo.repo_to_perm: perm = user.permission.permission_name user = user.user @@ -1208,8 +1206,10 @@ class ApiController(JSONRPCController): } members.append(user_group_data) - for user in repo.followers: - followers.append(user.user.get_api_data()) + followers = [ + uf.user.get_api_data() + for uf in repo.followers + ] data = repo.get_api_data() data['members'] = members @@ -1247,15 +1247,15 @@ class ApiController(JSONRPCController): ] error: null """ - result = [] if not HasPermissionAny('hg.admin')(): repos = RepoModel().get_all_user_repos(user=request.authuser.user_id) else: repos = Repository.query() - for repo in repos: - result.append(repo.get_api_data()) - return result + return [ + repo.get_api_data() + for repo in repos + ] # permission check inside def get_repo_nodes(self, repoid, revision, root_path, @@ -1910,10 +1910,10 @@ class ApiController(JSONRPCController): Returns all repository groups """ - result = [] - for repo_group in RepoGroup.query(): - result.append(repo_group.get_api_data()) - return result + return [ + repo_group.get_api_data() + for repo_group in RepoGroup.query() + ] @HasPermissionAnyDecorator('hg.admin') def create_repo_group(self, group_name, description=Optional(''), @@ -2352,14 +2352,13 @@ class ApiController(JSONRPCController): else: user_id = get_user_or_error(userid).user_id - gists = [] - _gists = Gist().query() \ - .filter(or_(Gist.gist_expires == -1, Gist.gist_expires >= time.time())) \ - .filter(Gist.owner_id == user_id) \ - .order_by(Gist.created_on.desc()) - for gist in _gists: - gists.append(gist.get_api_data()) - return gists + return [ + gist.get_api_data() + for gist in Gist().query() + .filter(or_(Gist.gist_expires == -1, Gist.gist_expires >= time.time())) + .filter(Gist.owner_id == user_id) + .order_by(Gist.created_on.desc()) + ] def create_gist(self, files, owner=Optional(OAttr('apiuser')), gist_type=Optional(Gist.GIST_PUBLIC), lifetime=Optional(-1), diff --git a/kallithea/controllers/compare.py b/kallithea/controllers/compare.py --- a/kallithea/controllers/compare.py +++ b/kallithea/controllers/compare.py @@ -134,11 +134,11 @@ class CompareController(BaseRepoControll gitrepo_remote = Repo(other_repo.path) SubprocessGitClient(thin_packs=False).fetch(safe_str(org_repo.path), gitrepo_remote) - revs = [] - for x in gitrepo_remote.get_walker(include=[other_rev], - exclude=[org_rev]): - revs.append(x.commit.id) - + revs = [ + x.commit.id + for x in gitrepo_remote.get_walker(include=[other_rev], + exclude=[org_rev]) + ] other_changesets = [other_repo.get_changeset(rev) for rev in reversed(revs)] if other_changesets: ancestors = [other_changesets[0].parents[0].raw_id] diff --git a/kallithea/model/db.py b/kallithea/model/db.py --- a/kallithea/model/db.py +++ b/kallithea/model/db.py @@ -100,10 +100,10 @@ class BaseDbModel(object): """return list with keys and values tuples corresponding to this model data """ - l = [] - for k in self._get_keys(): - l.append((k, getattr(self, k),)) - return l + return [ + (k, getattr(self, k)) + for k in self._get_keys() + ] def populate_obj(self, populate_dict): """populate model with data from given populate_dict""" @@ -915,11 +915,10 @@ class UserGroup(Base, BaseDbModel): owner=user_group.owner.username, ) if with_members: - members = [] - for user in user_group.members: - user = user.user - members.append(user.get_api_data()) - data['members'] = members + data['members'] = [ + ugm.user.get_api_data() + for ugm in user_group.members + ] return data diff --git a/kallithea/tests/api/api_base.py b/kallithea/tests/api/api_base.py --- a/kallithea/tests/api/api_base.py +++ b/kallithea/tests/api/api_base.py @@ -877,24 +877,22 @@ class _BaseTestApi(object): id_, params = _build_data(self.apikey, 'get_repos') response = api_call(self, params) - result = [] - for repo in Repository.query(): - result.append(repo.get_api_data()) - ret = jsonify(result) + expected = jsonify([ + repo.get_api_data() + for repo in Repository.query() + ]) - expected = ret self._compare_ok(id_, expected, given=response.body) def test_api_get_repos_non_admin(self): id_, params = _build_data(self.apikey_regular, 'get_repos') response = api_call(self, params) - result = [] - for repo in RepoModel().get_all_user_repos(self.TEST_USER_LOGIN): - result.append(repo.get_api_data()) - ret = jsonify(result) + expected = jsonify([ + repo.get_api_data() + for repo in RepoModel().get_all_user_repos(self.TEST_USER_LOGIN) + ]) - expected = ret self._compare_ok(id_, expected, given=response.body) @parametrize('name,ret_type', [