Separate project-level and group-level features
Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.
It has been decided in #3906 (closed) that group-only features will not be made available to public groups.
Project#feature_available? currently returns true for projects that are public even if the group doesn't have the appropriate license.
We should fix this by:
-
raising an error when it is a group-only feature so that the feature must be explicitly checked on the group (
Group#feature_available?). -
Or we can proxy the check to the project's group when it is a group-only feature
Note that group-only features should also not be available for personal projects (projects without a group) even if the group is public.
Samples of group-only features: epics, multiple issue boards.
Epics in particular caused the issue here because we previously checked the permission on the issue's project rather than the group.
This is only happens when
Check namespace planis turned on like on GitLab.com
Related MR
!7602 (merged) - Show promotion for epics on issues
Related Issue
#7743 (closed) - Epic attribute showing in issue sidebar incorrectly for GitLab.com Free for issue page