Skip to content

GraphQL: Add Project.topics and deprecate Project.tag_list

Introduction

In GitLab, a project can have topics and tags (git tags) on its repository. Unfortunately, topics appear in various places under the name tags, which leads to a lot of confusion. As discussed in #328226 (closed), this confusion is to be cleared up. So I submitted the MR !60834 (closed) for that. However, the MR was too big. So I closed the MR and will submit several separate MRs instead.

What does this MR do?

This MR adds a new field topics to the Project type and deprecate the existing tag_list field.

Before:

query {project(fullPath: "gnuwget/Wget2") {name, tagList}}

{
    "data": {
        "project": {
            "name": "Wget2",
            "tagList": "topic1, topic2, topic3"
        }
    }
}

After:

query {project(fullPath: "gnuwget/Wget2") {name, topics}}

{
    "data": {
        "project": {
            "name": "Wget2",
            "topics": [
                "topic1",
                "topic2",
                "topic3"
            ]
        }
    }
}

🛠 with at Siemens

/cc @bufferoverflow

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • [-] Label as security and @ mention @gitlab-com/gl-security/appsec
  • [-] The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • [-] Security reports checked/validated by a reviewer from the AppSec team
Edited by Jonas Wälter

Merge request reports