Skip to content
Snippets Groups Projects
Commit 509a93d0 authored by Dan Jensen's avatar Dan Jensen Committed by Mike Jang
Browse files

Make Issue Analytics singular

Originally we called the feature Issues Analytics. The plural form
felt a bit awkward. We recently introduced Merge Request Analytics,
where the singular form felt more natural and also conflicted with
Issues Analytics. So this re-names Issues Analytics (plural) as
Issue Analytics (singular).
parent bd6e5f16
No related branches found
No related tags found
No related merge requests found
Showing
with 35 additions and 30 deletions
Loading
Loading
@@ -871,7 +871,7 @@ $popover-max-width: 384px;
$popover-box-shadow: 0 2px 3px 1px $gray-100;
 
/*
Issues Analytics
Issue Analytics
*/
$issues-analytics-popover-boarder-color: rgba(0, 0, 0, 0.15);
 
Loading
Loading
Loading
Loading
@@ -156,7 +156,7 @@ The following documentation relates to the DevOps **Create** stage:
| [File locking](user/project/file_lock.md) **(PREMIUM)** | Lock files to avoid merge conflicts. |
| [GitLab Pages](user/project/pages/index.md) | Build, test, and deploy your static website with GitLab Pages. |
| [Groups](user/group/index.md) and [Subgroups](user/group/subgroups/index.md) | Organize your projects in groups. |
| [Issues Analytics](user/group/issues_analytics/index.md) **(PREMIUM)** | Check how many issues were created per month. |
| [Issue Analytics](user/group/issues_analytics/index.md) **(PREMIUM)** | Check how many issues were created per month. |
| [Merge Request Analytics](user/analytics/merge_request_analytics.md) **(PREMIUM)** | Check your throughput productivity - how many merge requests were merged per month. |
| [Projects](user/project/index.md), including [project access](public_access/public_access.md)<br/>and [settings](user/project/settings/index.md) | Host source code, and control your project's visibility and set configuration. |
| [Search through GitLab](user/search/index.md) | Search for issues, merge requests, projects, groups, and todos. |
Loading
Loading
Loading
Loading
@@ -24,7 +24,7 @@ The following analytics features are available at the group level:
 
- [Contribution](../group/contribution_analytics/index.md). **(STARTER)**
- [Insights](../group/insights/index.md). **(ULTIMATE)**
- [Issues](../group/issues_analytics/index.md). **(PREMIUM)**
- [Issue](../group/issues_analytics/index.md). **(PREMIUM)**
- [Productivity](productivity_analytics.md), enabled with the `productivity_analytics`
[feature flag](../../development/feature_flags/development.md#enabling-a-feature-flag-locally-in-development). **(PREMIUM)**
- [Value Stream](value_stream_analytics.md), enabled with the `cycle_analytics`
Loading
Loading
@@ -37,7 +37,7 @@ The following analytics features are available at the project level:
- [CI/CD](../../ci/pipelines/index.md#pipeline-success-and-duration-charts). **(STARTER)**
- [Code Review](code_review_analytics.md). **(STARTER)**
- [Insights](../group/insights/index.md). **(ULTIMATE)**
- [Issues](../group/issues_analytics/index.md). **(PREMIUM)**
- [Issue](../group/issues_analytics/index.md). **(PREMIUM)**
- [Merge Request](merge_request_analytics.md). **(STARTER)**
- [Repository](repository_analytics.md).
- [Value Stream](value_stream_analytics.md), enabled with the `cycle_analytics`
Loading
Loading
Loading
Loading
@@ -743,9 +743,9 @@ With [GitLab Contribution Analytics](contribution_analytics/index.md),
you have an overview of the contributions (pushes, merge requests,
and issues) performed by your group members.
 
## Issues analytics **(PREMIUM)**
## Issue analytics **(PREMIUM)**
 
With [GitLab Issues Analytics](issues_analytics/index.md), you can see a bar chart of the number of issues created each month in your groups.
With [GitLab Issue Analytics](issues_analytics/index.md), you can see a bar chart of the number of issues created each month in your groups.
 
## Dependency Proxy **(PREMIUM)**
 
Loading
Loading
Loading
Loading
@@ -5,16 +5,16 @@ group: Analytics
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#designated-technical-writers
---
 
# Issues Analytics **(PREMIUM)**
# Issue Analytics **(PREMIUM)**
 
> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/7478) in [GitLab Premium](https://about.gitlab.com/pricing/) 11.5.
> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/196561) in [GitLab Premium](https://about.gitlab.com/pricing/) 12.9 at the project level.
 
Issues Analytics is a bar graph which illustrates the number of issues created each month.
Issue Analytics is a bar graph which illustrates the number of issues created each month.
The default timespan is 13 months, which includes the current month, and the 12 months
prior.
 
To access the chart, navigate to your group or project sidebar and select **{chart}** **Analytics > Issues Analytics**.
To access the chart, navigate to your group or project sidebar and select **{chart}** **Analytics > Issue Analytics**.
 
Hover over each bar to see the total number of issues.
 
Loading
Loading
Loading
Loading
@@ -167,7 +167,7 @@ The following table depicts the various user permission levels in a project.
| View CI\CD analytics | | ✓ | ✓ | ✓ | ✓ |
| View Code Review analytics **(STARTER)** | | ✓ | ✓ | ✓ | ✓ |
| View Insights **(ULTIMATE)** | ✓ | ✓ | ✓ | ✓ | ✓ |
| View Issues analytics **(PREMIUM)** | ✓ | ✓ | ✓ | ✓ | ✓ |
| View Issue analytics **(PREMIUM)** | ✓ | ✓ | ✓ | ✓ | ✓ |
| View Merge Request analytics **(STARTER)** | ✓ | ✓ | ✓ | ✓ | ✓ |
| View Repository analytics | | ✓ | ✓ | ✓ | ✓ |
| View Value Stream analytics | ✓ | ✓ | ✓ | ✓ | ✓ |
Loading
Loading
@@ -272,7 +272,7 @@ group.
| Disable notification emails | | | | | ✓ |
| View Contribution analytics | ✓ | ✓ | ✓ | ✓ | ✓ |
| View Insights **(ULTIMATE)** | ✓ | ✓ | ✓ | ✓ | ✓ |
| View Issues analytics **(PREMIUM)** | ✓ | ✓ | ✓ | ✓ | ✓ |
| View Issue analytics **(PREMIUM)** | ✓ | ✓ | ✓ | ✓ | ✓ |
| View Productivity analytics **(PREMIUM)** | | ✓ | ✓ | ✓ | ✓ |
| View Value Stream analytics | ✓ | ✓ | ✓ | ✓ | ✓ |
| View Billing **(FREE ONLY)** | | | | | ✓ (4) |
Loading
Loading
Loading
Loading
@@ -29,7 +29,7 @@ export default class FilteredSearchIssueAnalytics extends FilteredSearchManager
}
 
/**
* Updates issues analytics store and window history
* Updates issue analytics store and window history
* with filter path
*/
updateObject = path => {
Loading
Loading
/**
* This util method takes the global page filters and transforms parameters which
* are not standardized between the internal issues analytics api and the public
* are not standardized between the internal issue analytics api and the public
* issues api.
*
* @param {Object} filters the global filters used to fetch issues data
Loading
Loading
Loading
Loading
@@ -34,7 +34,7 @@ module EE
return unless project_nav_tab?(:issues_analytics)
 
navbar_sub_item(
title: _('Issues'),
title: _('Issue'),
path: 'issues_analytics#show',
link: project_analytics_issues_analytics_path(project)
)
Loading
Loading
@@ -108,7 +108,7 @@ module EE
return unless group_sidebar_link?(:analytics)
 
navbar_sub_item(
title: _('Issues'),
title: _('Issue'),
path: 'issues_analytics#show',
link: group_issues_analytics_path(group)
)
Loading
Loading
- page_title _('Issues Analytics')
- page_title _('Issue Analytics')
 
.mb-3
%h3
= _('Issues Analytics')
= _('Issue Analytics')
= render 'shared/issuable/search_bar', type: :issues_analytics, show_sorting_dropdown: false, placeholder: _('Filter results...')
#js-issues-analytics{ data: { endpoint: group_issues_analytics_path(@group), no_data_empty_state_svg_path: image_path('illustrations/monitoring/getting_started.svg'), filters_empty_state_svg_path: image_path('illustrations/issues.svg'), issues_api_endpoint: expose_url(api_v4_groups_issues_path(id: @group.id)), issues_page_endpoint: issues_group_path(@group) } }
- page_title _('Issues Analytics')
- page_title _('Issue Analytics')
 
.mb-3
%h3
= _('Issues Analytics')
= _('Issue Analytics')
= render 'shared/issuable/search_bar', type: :issues_analytics, show_sorting_dropdown: false, placeholder: _('Filter results...')
#js-issues-analytics{ data: { endpoint: project_analytics_issues_analytics_path(@project), no_data_empty_state_svg_path: image_path('illustrations/monitoring/getting_started.svg'), filters_empty_state_svg_path: image_path('illustrations/issues.svg'), issues_api_endpoint: expose_url(api_v4_projects_issues_path(id: @project.id)), issues_page_endpoint: project_issues_path(@project) } }
---
title: Re-name Issues Analytics (plural) as Issue Analytics (singular)
merge_request: 39506
author:
type: changed
Loading
Loading
@@ -3,7 +3,7 @@
require 'spec_helper'
 
RSpec.describe Groups::IssuesAnalyticsController do
it_behaves_like 'issues analytics controller' do
it_behaves_like 'issue analytics controller' do
let_it_be(:user) { create(:user) }
let_it_be(:group) { create(:group) }
let_it_be(:project1) { create(:project, :empty_repo, namespace: group) }
Loading
Loading
Loading
Loading
@@ -3,7 +3,7 @@
require 'spec_helper'
 
RSpec.describe Projects::Analytics::IssuesAnalyticsController do
it_behaves_like 'issues analytics controller' do
it_behaves_like 'issue analytics controller' do
let_it_be(:user) { create(:user) }
let_it_be(:group) { create(:group) }
let_it_be(:project1) { create(:project, :empty_repo, namespace: group) }
Loading
Loading
Loading
Loading
@@ -36,7 +36,7 @@ RSpec.describe 'Group active tab' do
end
 
it_behaves_like 'page has active tab', _('Analytics')
it_behaves_like 'page has active sub tab', _('Issues')
it_behaves_like 'page has active sub tab', _('Issue')
end
 
context 'on group Contribution Analytics' do
Loading
Loading
Loading
Loading
@@ -19,14 +19,14 @@ RSpec.describe 'Project navbar' do
sign_in(user)
end
 
context 'when issues analytics is available' do
context 'when issue analytics is available' do
before do
stub_licensed_features(issues_analytics: true)
 
insert_after_sub_nav_item(
_('Code Review'),
within: _('Analytics'),
new_sub_nav_item_name: _('Issues')
new_sub_nav_item_name: _('Issue')
)
 
visit project_path(project)
Loading
Loading
Loading
Loading
@@ -18,7 +18,7 @@ jest.mock('ee/issues_analytics/filtered_search_issues_analytics', () =>
const localVue = createLocalVue();
localVue.use(Vuex);
 
describe('Issues Analytics component', () => {
describe('Issue Analytics component', () => {
let wrapper;
let store;
let mountComponent;
Loading
Loading
Loading
Loading
@@ -2,7 +2,7 @@ import createState from 'ee/issues_analytics/stores/modules/issue_analytics/stat
import mutations from 'ee/issues_analytics/stores/modules/issue_analytics/mutations';
import * as types from 'ee/issues_analytics/stores/modules/issue_analytics/mutation_types';
 
describe('Issues Analytics mutations', () => {
describe('Issue Analytics mutations', () => {
let state;
 
beforeEach(() => {
Loading
Loading
Loading
Loading
@@ -7,7 +7,7 @@ const originalFilters = {
};
const tranformedFilters = { labels: ['one', 'two'], milestone: 'title', author_username: 'root' };
 
describe('issues analytics utils', () => {
describe('issue analytics utils', () => {
describe('transformFilters', () => {
it('transforms the object keys as expected', () => {
const filters = transformFilters(originalFilters);
Loading
Loading
# frozen_string_literal: true
 
RSpec.shared_examples 'issues analytics controller' do
RSpec.shared_examples 'issue analytics controller' do
describe 'GET #show' do
subject { get :show, params: params }
 
context 'when issues analytics is not available for license' do
context 'when issue analytics is not available for license' do
it 'renders 404' do
subject
 
Loading
Loading
@@ -26,7 +26,7 @@ RSpec.shared_examples 'issues analytics controller' do
end
end
 
context 'when issues analytics is available for license' do
context 'when issue analytics is available for license' do
before do
stub_licensed_features(issues_analytics: true)
end
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment