Project Topics: detach from tags
In GitLab, you can add arbitrary topics to a project in the project settings.
In the backend, these topics are managed as so-called
Tags, which are also used for CI runners and CI builds. And also in the frontend, the term
tag is sometimes used instead of
topic. E.g. on the
Explore projects page, you can filter the projects by topic using the parameter
tag instead of
And on the
Project overview page, you can see the topics as well as the real tags (git tags):
We want to give a boost to the use of project topics and have several ideas:
- extend API functionality for topics
- make input of topics more convenient using autocomplete or a selection component
- add automatic suggestions of suitable topics
But before we can tackle these ideas as Community contribution, the confusion between topics and tags should be resolved first.
Tagging models are used for CI runners (
taggable_type=Ci::Runner) and CI builds (
taggable_type=CommitStatus) in the form of tags and are alienated for project topics (
taggable_type=Project). In the context of projects, the term "tags" is used for topics as well as git tags, which is confusing.
Therefore, we propose to detach project topics from the
Tag model and introduce a separate
Topic model for project topics only.
Before we start tackling this as Community contribution, we want to clarify if this idea is in your sense. WDYT?
GraphQL field: !61250 (merged)
Data migration: !61237 (merged)
Cleanup data migration: !62066 (merged)
ProjectsFinder parameter: !62093 (merged)
Create/update project parameter: !62191 (merged)
project: !62206 (merged)
tagsassociation: !62549 (merged)
tag_listattribute: !63493 (merged)
Data migration (2): !67574 (merged)
Data migration (3): !69199 (merged)
Data migration (4): !70018 (merged)
Clean up data migration: !68925 (merged)