Commit 8d0b8bf9 authored by Ezekiel Kigbo's avatar Ezekiel Kigbo

Merge branch 'mw-remove-cycle_analytics_scatterplot_enabled-ff' into 'master'

Remove cycle_analytics_scatterplot_enabled feature flag

See merge request gitlab-org/gitlab!65515
parents 346d026a 12d74f0e
...@@ -41,7 +41,6 @@ export default { ...@@ -41,7 +41,6 @@ export default {
}, },
computed: { computed: {
...mapState([ ...mapState([
'featureFlags',
'isLoading', 'isLoading',
'isLoadingStage', 'isLoadingStage',
'currentGroup', 'currentGroup',
...@@ -74,9 +73,6 @@ export default { ...@@ -74,9 +73,6 @@ export default {
shouldDisplayFilters() { shouldDisplayFilters() {
return !this.errorCode && !this.hasNoAccessError; return !this.errorCode && !this.hasNoAccessError;
}, },
shouldDisplayDurationChart() {
return this.featureFlags.hasDurationChart;
},
selectedStageReady() { selectedStageReady() {
return !this.hasNoAccessError && this.selectedStage; return !this.hasNoAccessError && this.selectedStage;
}, },
...@@ -200,11 +196,7 @@ export default { ...@@ -200,11 +196,7 @@ export default {
<template v-else> <template v-else>
<template v-if="isOverviewStageSelected"> <template v-if="isOverviewStageSelected">
<metrics :group-path="currentGroupPath" :request-params="cycleAnalyticsRequestParams" /> <metrics :group-path="currentGroupPath" :request-params="cycleAnalyticsRequestParams" />
<duration-chart <duration-chart class="gl-mt-3" :stages="activeStages" />
v-if="shouldDisplayDurationChart"
class="gl-mt-3"
:stages="activeStages"
/>
<type-of-work-charts /> <type-of-work-charts />
</template> </template>
<stage-table <stage-table
......
...@@ -19,7 +19,6 @@ export default () => { ...@@ -19,7 +19,6 @@ export default () => {
const { emptyStateSvgPath, noDataSvgPath, noAccessSvgPath } = el.dataset; const { emptyStateSvgPath, noDataSvgPath, noAccessSvgPath } = el.dataset;
const initialData = buildCycleAnalyticsInitialData(el.dataset); const initialData = buildCycleAnalyticsInitialData(el.dataset);
const store = createStore(); const store = createStore();
const { cycleAnalyticsScatterplotEnabled: hasDurationChart = false } = gon?.features;
const { const {
author_username = null, author_username = null,
...@@ -37,7 +36,6 @@ export default () => { ...@@ -37,7 +36,6 @@ export default () => {
selectedMilestone: milestone_title, selectedMilestone: milestone_title,
selectedAssigneeList: assignee_username, selectedAssigneeList: assignee_username,
selectedLabelList: label_name, selectedLabelList: label_name,
featureFlags: { hasDurationChart },
pagination: { pagination: {
sort: sort?.value || null, sort: sort?.value || null,
direction: direction?.value || null, direction: direction?.value || null,
......
...@@ -13,7 +13,6 @@ class Groups::Analytics::CycleAnalyticsController < Groups::Analytics::Applicati ...@@ -13,7 +13,6 @@ class Groups::Analytics::CycleAnalyticsController < Groups::Analytics::Applicati
before_action :request_params, only: :show before_action :request_params, only: :show
before_action do before_action do
push_frontend_feature_flag(:cycle_analytics_scatterplot_enabled, default_enabled: true)
render_403 unless can?(current_user, :read_group_cycle_analytics, @group) render_403 unless can?(current_user, :read_group_cycle_analytics, @group)
end end
......
---
name: cycle_analytics_scatterplot_enabled
introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/20290
rollout_issue_url:
milestone: '12.6'
type: development
group: group::optimize
default_enabled: true
# frozen_string_literal: true
require 'spec_helper'
RSpec.describe 'Group value stream analytics' do
let_it_be(:group) { create(:group) }
let_it_be(:user) { create(:user) }
before do
stub_licensed_features(cycle_analytics_for_groups: true)
group.add_owner(user)
sign_in(user)
end
it 'pushes frontend feature flags' do
visit group_analytics_cycle_analytics_path(group)
expect(page).to have_pushed_frontend_feature_flags(cycleAnalyticsScatterplotEnabled: true)
end
end
...@@ -58,10 +58,6 @@ const defaultStubs = { ...@@ -58,10 +58,6 @@ const defaultStubs = {
UrlSync, UrlSync,
}; };
const defaultFeatureFlags = {
hasDurationChart: true,
};
const [selectedValueStream] = valueStreams; const [selectedValueStream] = valueStreams;
const initialCycleAnalyticsState = { const initialCycleAnalyticsState = {
...@@ -127,7 +123,6 @@ describe('EE Value Stream Analytics component', () => { ...@@ -127,7 +123,6 @@ describe('EE Value Stream Analytics component', () => {
await store.dispatch('initializeCycleAnalytics', { await store.dispatch('initializeCycleAnalytics', {
...initialState, ...initialState,
featureFlags: { featureFlags: {
...defaultFeatureFlags,
...featureFlags, ...featureFlags,
}, },
}); });
......
...@@ -54,9 +54,7 @@ describe('Value Stream Analytics actions', () => { ...@@ -54,9 +54,7 @@ describe('Value Stream Analytics actions', () => {
createdAfter, createdAfter,
createdBefore, createdBefore,
stages: [], stages: [],
featureFlags: { featureFlags: {},
hasDurationChart: true,
},
activeStages, activeStages,
selectedValueStream, selectedValueStream,
...mockGetters, ...mockGetters,
...@@ -71,7 +69,7 @@ describe('Value Stream Analytics actions', () => { ...@@ -71,7 +69,7 @@ describe('Value Stream Analytics actions', () => {
it.each` it.each`
action | type | stateKey | payload action | type | stateKey | payload
${'setFeatureFlags'} | ${'SET_FEATURE_FLAGS'} | ${'featureFlags'} | ${{ hasDurationChart: true }} ${'setFeatureFlags'} | ${'SET_FEATURE_FLAGS'} | ${'featureFlags'} | ${{ someFeatureFlag: true }}
${'setSelectedProjects'} | ${'SET_SELECTED_PROJECTS'} | ${'selectedProjectIds'} | ${[10, 20, 30, 40]} ${'setSelectedProjects'} | ${'SET_SELECTED_PROJECTS'} | ${'selectedProjectIds'} | ${[10, 20, 30, 40]}
`('$action should set $stateKey with $payload and type $type', ({ action, type, payload }) => { `('$action should set $stateKey with $payload and type $type', ({ action, type, payload }) => {
return testAction( return testAction(
......
...@@ -30,9 +30,7 @@ const rootState = { ...@@ -30,9 +30,7 @@ const rootState = {
stages: [...activeStages, hiddenStage], stages: [...activeStages, hiddenStage],
selectedGroup, selectedGroup,
selectedValueStream, selectedValueStream,
featureFlags: { featureFlags: {},
hasDurationChart: true,
},
}; };
describe('DurationChart actions', () => { describe('DurationChart actions', () => {
......
...@@ -86,7 +86,6 @@ describe('Value Stream Analytics mutations', () => { ...@@ -86,7 +86,6 @@ describe('Value Stream Analytics mutations', () => {
it.each` it.each`
mutation | payload | expectedState mutation | payload | expectedState
${types.SET_FEATURE_FLAGS} | ${{ hasDurationChart: true }} | ${{ featureFlags: { hasDurationChart: true } }}
${types.SET_SELECTED_PROJECTS} | ${selectedProjects} | ${{ selectedProjects }} ${types.SET_SELECTED_PROJECTS} | ${selectedProjects} | ${{ selectedProjects }}
${types.SET_DATE_RANGE} | ${{ createdAfter, createdBefore }} | ${{ createdAfter, createdBefore }} ${types.SET_DATE_RANGE} | ${{ createdAfter, createdBefore }} | ${{ createdAfter, createdBefore }}
${types.SET_SELECTED_STAGE} | ${{ id: 'first-stage' }} | ${{ selectedStage: { id: 'first-stage' } }} ${types.SET_SELECTED_STAGE} | ${{ id: 'first-stage' }} | ${{ selectedStage: { id: 'first-stage' } }}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment