We remove some arguments that are rarely used or
used just to simplify setups on specs.
Modified Mentionable#create_new_cross_references method
we don’t need to calculate previous references to avoid the
duplication because we do that at database level when
creating references extracted from the current entity state.
MergeRequests won’t create cross_references for commits that are included so we change a spec to use a different merge request to make references to commits to other branches
The method Ability.issues_readable_by_user takes a list of users and an
optional user and returns an Array of issues readable by said user. This
method in turn is used by
Banzai::ReferenceParser::IssueParser#nodes_visible_to_user so this
method no longer needs to get all the available abilities just to check
if a user has the "read_issue" ability.
To test this I benchmarked an issue with 222 comments on my development
environment. Using these changes the time spent in nodes_visible_to_user
was reduced from around 120 ms to around 40 ms.