Skip to content

Rename GitLab-reserved paths that our users want to use

Description

As seen in https://gitlab.com/gitlab-org/gitlab-ce/issues/25893#note_20964090, some of our users want to use namespace or project paths that are reserved because they conflict with GitLab functionality - user-controlled paths are not segregated from hardcoded paths. A full list of reserved names can be found in these files:

As new functionality is introduced into GitLab, more restrictions will be added.

Proposal

Some of these restrictions are more commonly encountered than others. Words that are feasible project or group names, such as 'assets' and 'dashboard' restrict our users more often than words like 'raw' or 'create_dir'.

We can retain the current naming schemes while giving our users more freedom by renaming some GitLab-reserved paths to free them up for our users again. assets is a clear candidate, as this is a configurable Rails path. It could be /_assets or /.assets instead, for instance.

Conclusion

Based on the discussion below, we decided to prefix all GitLab-reserved routes with /-/. This is currently being done for all newly introduced routes, so there should be no more renames.

But we still need to rename a bunch of existing routes to free up the reserved words that our users might like to use.

For example: https://gitlab.com/gitlab-org/gitlab-ce/issues/33550

/cc @dzaporozhets @haynes @dblessing @jason.rowland

Edited by Bob Van Landuyt