Skip to content

Resolve "`Member.add_user`doesn't detect existing members that have requested access"

What does this MR do?

This merge request handle the case when an access requester is added to a group or project (via the members page or the API).

In Member.add_user, if an access requester already exists, we simply accept their request (and set the created_by, access_level and expires_at attributes if given).

Are there points in the code the reviewer needs to double check?

I've taken the opportunity to cleanup the whole {Group,Project}Member.add_user* methods since it was quite a mess.

Does this MR meet the acceptance criteria?

What are the relevant issue numbers?

Closes #21983 (closed)

Merge request reports