- Mar 23, 2020
-
-
GitLab Bot authored
-
- Sep 13, 2019
-
-
GitLab Bot authored
-
- Jan 31, 2019
-
-
Jan Provaznik authored
When moving a project, it's possible that some users who had access to the project in old path can not access the project in the new path. Because `project_authorizations` records are updated asynchronously, when we send the notification about moved project the list of project team members contains old project members, we want to notify all these members except the old users who can not access the new location.
-
- Jan 23, 2019
-
-
Jan Provaznik authored
When moving a project, it's possible that some users who had access to the project in old path can not access the project in the new path. Because `project_authorizations` records are updated asynchronously, when we send the notification about moved project the list of project team members contains old project members, we want to notify all these members except the old users who can not access the new location.
-
- Jul 26, 2018
-
-
gfyoung authored
Partially addresses #47424.
-
- Jul 11, 2018
-
-
Mark Chao authored
-
- Jun 25, 2018
-
-
Lin Jen-Shin authored
-
- Mar 07, 2018
-
- Dec 22, 2017
-
-
blackst0ne authored
-
- Dec 07, 2017
-
-
Mike Greiling authored
-
- Sep 18, 2017
-
-
Stan Hu authored
In #37955,we see that the profile had a number of N+1 queries from repeated access to `cross_reference_not_visible_for?`. This was optimized in previous versions of GitLab by rendering all notes at once, counting the number of visible references, and then using that number to check whether a system note should be fully redacted. There was also another N+1 query calling `ProjectTeam#member?`, which did not take advantage of an optimization in prepare_notes_for_rendering that would preload the maximum access level per project. Closes #37955
-
- Sep 06, 2017
-
-
micael.bergeron authored
this will remove the need make N queries (per-note) at the cost of having to mark notes with an attribute this opens up the possibility for other special roles for notes
-
- Jun 21, 2017
-
-
Grzegorz Bizon authored
-
- Jun 01, 2017
-
-
Sean McGivern authored
When getting the max member access for a group of users, we stored the results in RequestStore. However, this will only return results for project members, so anyone who wasn't a member of the project would be checked once at the start, and then once for each comment they made. These queries are generally quite fast, but no query is faster!
-
- Apr 21, 2017
-
-
Dmitriy Zaporozhets authored
Signed-off-by:
Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
-
- Mar 31, 2017
-
-
Stan Hu authored
Looking at the SQL log, we see useless queries such as: ``` D, [2017-03-22T03:25:00.726710 #2629] DEBUG -- : (235.9ms) SELECT MAX("project_authorizations"."access_level") AS maximum_access_level, "project_authorizations"."user_id" AS project_authorizations_user_id FROM "project_authorizations" WHERE "project_authorizations"."project_id" = 13083 AND 1=0 GROUP BY "project_authorizations"."user_id" [["project_id", 13083]] ```
-
- Feb 23, 2017
-
-
Douwe Maan authored
This reverts commit cb10b725c8929b8b4460f89c9d96c773af39ba6b.
-
Douwe Maan authored
-
- Nov 23, 2016
-
-
Ahmad Sherif authored
-
Ahmad Sherif authored
-
Ahmad Sherif authored
Closes #23938
-
- Nov 18, 2016
-
-
Robert Speicher authored
This also updates _some_ specs to use these new methods, just to serve as an example for others going forward, but by no means is this exhaustive. Original implementations at !5992 and !6012. Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/20944
-
- Oct 28, 2016
-
-
Sean McGivern authored
`ProjectTeam#find_member` doesn't take group links into account. It was used in two places: 1. An admin view - it can stay here. 2. `ProjectTeam#member?`, which is often used to decide if a user has access to view something. This second part broke confidential issues viewing. `IssuesFinder` ends up delegating to `Project#authorized_for_user?`, which does consider group links, so users with access to the project via a group link could see confidential issues on the index page. However, `IssuesPolicy` used `ProjectTeam#member?`, so the same user couldn't view the issue when going to it directly.
-
- Sep 28, 2016
-
-
Rémy Coutable authored
Changes include: - Ensure Member.add_user is not called directly when not necessary - New GroupMember.add_users_to_group to have the same abstraction level as for Project - Refactor Member.add_user to take a source instead of an array of members - Fix Rubocop offenses - Always use Project#add_user instead of project.team.add_user - Factorize users addition as members in Member.add_users_to_source - Make access_level a keyword argument in GroupMember.add_users_to_group and ProjectMember.add_users_to_projects - Destroy any requester before adding them as a member - Improve the way we handle access requesters in Member.add_user Instead of removing the requester and creating a new member, we now simply accepts their access request. This way, they will receive a "access request granted" email. - Fix error that was previously silently ignored - Stop raising when access level is invalid in Member, let Rails validation do their work Signed-off-by:
Rémy Coutable <remy@rymai.me>
-
- Sep 21, 2016
-
-
Robert Speicher authored
-
Robert Speicher authored
-
- Sep 20, 2016
-
-
Robert Speicher authored
-
Robert Speicher authored
We were calling `.where` and `.send` on the relation, but never doing anything with the return value, resulting in proper access-level filtering never being of any consequence.
-
Robert Speicher authored
-
- Sep 13, 2016
-
-
Phil Hughes authored
-
Phil Hughes authored
-
Phil Hughes authored
Fixed spacing with buttons Disables group form when user doesnt have correct permissions
-
- Aug 18, 2016
-
-
Sean McGivern authored
-
- Aug 04, 2016
-
-
Herminio Torres authored
We never add things `into` projects, we just add them `to` projects. So how about we rename this to `add_users_to_project`. Rename `projects_ids` to `project_ids` by following the convention of rails.
-
- Aug 02, 2016
-
-
Adam Niedzielski authored
-
- Aug 01, 2016
-
-
Stan Hu authored
-
Adam Niedzielski authored
-
- Jul 29, 2016
-
-
Timothy Andrew authored
1. Remove `master_or_greater?` and `developer_or_greater?` in favor of `max_member_access`, which is a lot nicer. 2. Remove a number of instances of `include Gitlab::Database::MigrationHelpers` in migrations that don't need this module. Also remove comments where not necessary. 3. Remove duplicate entry in CHANGELOG. 4. Move `ProtectedBranchAccessSelect` from Coffeescript to ES6. 5. Split the `set_access_levels!` method in two - one each for `merge` and `push` access levels.
-
Timothy Andrew authored
1. In the context of protected branches. 2. Test this behaviour.
-
- Jul 27, 2016
-
-
Stan Hu authored
-