Skip to content

Network/Graph view does not show tags which are not part of a branch

What does this MR do and why?

This MR changes the RPC used by /-/network graph. It uses Gitaly::ListCommitsRequest (https://gitlab-org.gitlab.io/gitaly/#gitaly.ListCommitsRequest) instead of Gitaly::FindAllCommitsRequest (deprecated RPC).

We want to preserve the current behavior of the graph while including tags that do not belong to an specific branch.

MR acceptance checklist

Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

How to set up and validate locally

Current behavior in master

Note: This only works locally using Webpack since Repository graph page does not load using Vite (gitlab-development-kit#2201)

  1. Clone a repository available in your GDK.
  2. Go to the project directory, create a tag and push without a branch.
git add .
git commit -m 'Release v1.0'

git tag v1.0
git push origin v1.0
  1. Go to https://<GDK_HOST>:<GDK_PORT>/gitlab-org/<YOUR_PROJECT>/-/network/main?ref_type=heads
  2. The tag created is not listed here but it exists in https://<GDK_HOST>:<GDK_PORT>/gitlab-org/<YOUR_PROJECT>/-/tags (undesired behavior).

Correct behavior using this branch

  1. Checkout this branch.
  2. Enable the FF use_list_commits_rpc_network_graph locally:
Feature.enable(:use_list_commits_rpc_network_graph)

Perform the same steps, the tag should appear in the graph.

Related to #386449 (closed)

Edited by Javiera Tapia

Merge request reports

Loading