Add latest changes from gitlab-org/gitlab@master
This commit is contained in:
parent
d43cf10712
commit
2ac811ce68
26 changed files with 155 additions and 118 deletions
|
@ -1113,60 +1113,13 @@ Rails/SaveBang:
|
|||
# Cop supports --auto-correct.
|
||||
RSpec/TimecopFreeze:
|
||||
Exclude:
|
||||
- 'ee/spec/controllers/admin/application_settings_controller_spec.rb'
|
||||
- 'ee/spec/controllers/projects/security/network_policies_controller_spec.rb'
|
||||
- 'ee/spec/features/admin/admin_reset_pipeline_minutes_spec.rb'
|
||||
- 'ee/spec/features/boards/sidebar_spec.rb'
|
||||
- 'ee/spec/features/groups/analytics/cycle_analytics/filters_and_data_spec.rb'
|
||||
- 'ee/spec/features/groups/iteration_spec.rb'
|
||||
- 'ee/spec/features/projects/mirror_spec.rb'
|
||||
- 'ee/spec/features/projects/services/prometheus_custom_metrics_spec.rb'
|
||||
- 'ee/spec/finders/productivity_analytics_finder_spec.rb'
|
||||
- 'ee/spec/frontend/fixtures/analytics.rb'
|
||||
- 'ee/spec/helpers/vulnerabilities_helper_spec.rb'
|
||||
- 'ee/spec/lib/analytics/merge_request_metrics_refresh_spec.rb'
|
||||
- 'ee/spec/lib/analytics/productivity_analytics_request_params_spec.rb'
|
||||
- 'ee/spec/lib/ee/gitlab/background_migration/populate_vulnerability_historical_statistics_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/analytics/cycle_analytics/data_collector_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/analytics/cycle_analytics/group_stage_time_summary_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/analytics/cycle_analytics/summary/group/stage_time_summary_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/analytics/type_of_work/tasks_by_type_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/auth/group_saml/sso_enforcer_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/database/load_balancing/host_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/geo/base_request_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/geo/event_gap_tracking_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/geo/git_push_http_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/geo/log_cursor/daemon_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/geo/log_cursor/events/repository_updated_event_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/analytics/cycle_analytics/data_collector_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/geo/oauth/login_state_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/insights/reducers/count_per_period_reducer_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/prometheus/queries/additional_metrics_environment_query_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/prometheus/queries/cluster_query_spec.rb'
|
||||
- 'ee/spec/migrations/populate_vulnerability_historical_statistics_for_year_spec.rb'
|
||||
- 'ee/spec/migrations/remove_duplicated_cs_findings_spec.rb'
|
||||
- 'ee/spec/migrations/remove_duplicated_cs_findings_without_vulnerability_id_spec.rb'
|
||||
- 'ee/spec/migrations/schedule_fix_orphan_promoted_issues_spec.rb'
|
||||
- 'ee/spec/migrations/schedule_merge_request_any_approval_rule_migration_spec.rb'
|
||||
- 'ee/spec/migrations/schedule_populate_resolved_on_default_branch_column_spec.rb'
|
||||
- 'ee/spec/migrations/schedule_populate_vulnerability_historical_statistics_spec.rb'
|
||||
- 'ee/spec/migrations/schedule_project_any_approval_rule_migration_spec.rb'
|
||||
- 'ee/spec/migrations/set_resolved_state_on_vulnerabilities_spec.rb'
|
||||
- 'ee/spec/migrations/20190926180443_schedule_epic_issues_after_epics_move_spec.rb'
|
||||
- 'ee/spec/models/analytics/cycle_analytics/group_level_spec.rb'
|
||||
- 'ee/spec/models/burndown_spec.rb'
|
||||
- 'ee/spec/models/ee/namespace_spec.rb'
|
||||
- 'ee/spec/models/geo/project_registry_spec.rb'
|
||||
- 'ee/spec/models/merge_train_spec.rb'
|
||||
- 'ee/spec/models/productivity_analytics_spec.rb'
|
||||
- 'ee/spec/models/project_spec.rb'
|
||||
- 'ee/spec/models/vulnerabilities/export_spec.rb'
|
||||
- 'ee/spec/requests/api/vulnerabilities_spec.rb'
|
||||
- 'ee/spec/services/geo/file_download_service_spec.rb'
|
||||
- 'ee/spec/services/vulnerabilities/confirm_service_spec.rb'
|
||||
- 'ee/spec/services/vulnerabilities/dismiss_service_spec.rb'
|
||||
- 'ee/spec/services/vulnerabilities/resolve_service_spec.rb'
|
||||
- 'ee/spec/services/vulnerabilities/revert_to_detected_service_spec.rb'
|
||||
- 'ee/spec/services/vulnerability_exports/export_service_spec.rb'
|
||||
- 'ee/spec/frontend/fixtures/analytics.rb'
|
||||
- 'ee/spec/support/shared_contexts/lib/gitlab/insights/reducers/reducers_shared_contexts.rb'
|
||||
- 'qa/spec/support/repeater_spec.rb'
|
||||
- 'spec/features/profiles/active_sessions_spec.rb'
|
||||
|
|
2
Gemfile
2
Gemfile
|
@ -377,7 +377,7 @@ group :development, :test do
|
|||
gem 'rubocop-rspec', '~> 1.37.0'
|
||||
|
||||
gem 'scss_lint', '~> 0.56.0', require: false
|
||||
gem 'haml_lint', '~> 0.34.0', require: false
|
||||
gem 'haml_lint', '~> 0.36.0', require: false
|
||||
gem 'bundler-audit', '~> 0.6.1', require: false
|
||||
|
||||
gem 'benchmark-ips', '~> 2.3.0', require: false
|
||||
|
|
|
@ -548,8 +548,9 @@ GEM
|
|||
haml (5.1.2)
|
||||
temple (>= 0.8.0)
|
||||
tilt
|
||||
haml_lint (0.34.0)
|
||||
haml (>= 4.0, < 5.2)
|
||||
haml_lint (0.36.0)
|
||||
haml (>= 4.0, < 5.3)
|
||||
parallel (~> 1.10)
|
||||
rainbow
|
||||
rubocop (>= 0.50.0)
|
||||
sysexits (~> 1.1)
|
||||
|
@ -1370,7 +1371,7 @@ DEPENDENCIES
|
|||
grpc (~> 1.30.2)
|
||||
gssapi
|
||||
guard-rspec
|
||||
haml_lint (~> 0.34.0)
|
||||
haml_lint (~> 0.36.0)
|
||||
hamlit (~> 2.11.0)
|
||||
hangouts-chat (~> 0.0.5)
|
||||
hashie
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<script>
|
||||
import { GlButton, GlModal, GlModalDirective } from '@gitlab/ui';
|
||||
import { escape } from 'lodash';
|
||||
import { s__, sprintf } from '~/locale';
|
||||
import { s__, __, sprintf } from '~/locale';
|
||||
|
||||
export default {
|
||||
components: {
|
||||
|
@ -29,12 +29,6 @@ export default {
|
|||
},
|
||||
},
|
||||
computed: {
|
||||
modalId() {
|
||||
return 'delete-wiki-modal';
|
||||
},
|
||||
message() {
|
||||
return s__('WikiPageConfirmDelete|Are you sure you want to delete this page?');
|
||||
},
|
||||
title() {
|
||||
return sprintf(
|
||||
s__('WikiPageConfirmDelete|Delete page %{pageTitle}?'),
|
||||
|
@ -44,6 +38,17 @@ export default {
|
|||
false,
|
||||
);
|
||||
},
|
||||
primaryProps() {
|
||||
return {
|
||||
text: this.$options.i18n.deletePageText,
|
||||
attributes: { variant: 'danger', 'data-qa-selector': 'confirm_deletion_button' },
|
||||
};
|
||||
},
|
||||
cancelProps() {
|
||||
return {
|
||||
text: this.$options.i18n.cancelButtonText,
|
||||
};
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
onSubmit() {
|
||||
|
@ -51,30 +56,36 @@ export default {
|
|||
this.$refs.form.submit();
|
||||
},
|
||||
},
|
||||
i18n: {
|
||||
deletePageText: s__('WikiPageConfirmDelete|Delete page'),
|
||||
modalBody: s__('WikiPageConfirmDelete|Are you sure you want to delete this page?'),
|
||||
cancelButtonText: __('Cancel'),
|
||||
},
|
||||
modal: {
|
||||
modalId: 'delete-wiki-modal',
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="d-inline-block">
|
||||
<gl-button
|
||||
v-gl-modal="modalId"
|
||||
category="primary"
|
||||
v-gl-modal="$options.modal.modalId"
|
||||
category="secondary"
|
||||
variant="danger"
|
||||
data-qa-selector="delete_button"
|
||||
>
|
||||
{{ __('Delete') }}
|
||||
{{ $options.i18n.deletePageText }}
|
||||
</gl-button>
|
||||
<gl-modal
|
||||
:title="title"
|
||||
:action-primary="{
|
||||
text: s__('WikiPageConfirmDelete|Delete page'),
|
||||
attributes: { variant: 'danger', 'data-qa-selector': 'confirm_deletion_button' },
|
||||
}"
|
||||
:modal-id="modalId"
|
||||
title-tag="h4"
|
||||
:action-primary="primaryProps"
|
||||
:action-cancel="cancelProps"
|
||||
:modal-id="$options.modal.modalId"
|
||||
size="sm"
|
||||
@ok="onSubmit"
|
||||
>
|
||||
{{ message }}
|
||||
{{ $options.i18n.modalBody }}
|
||||
<form ref="form" :action="deleteWikiUrl" method="post" class="js-requires-input">
|
||||
<input ref="method" type="hidden" name="_method" value="delete" />
|
||||
<input :value="csrfToken" type="hidden" name="authenticity_token" />
|
||||
|
|
|
@ -92,6 +92,13 @@ export default {
|
|||
}
|
||||
}
|
||||
},
|
||||
handleComponentAppear() {
|
||||
// We can avoid putting `catch` block here
|
||||
// as failure is handled within actions.js already.
|
||||
return this.fetchLabels().then(() => {
|
||||
this.$refs.searchInput.focusInput();
|
||||
});
|
||||
},
|
||||
/**
|
||||
* We want to remove loaded labels to ensure component
|
||||
* fetches fresh set of labels every time when shown.
|
||||
|
@ -139,7 +146,7 @@ export default {
|
|||
</script>
|
||||
|
||||
<template>
|
||||
<gl-intersection-observer @appear="fetchLabels" @disappear="handleComponentDisappear">
|
||||
<gl-intersection-observer @appear="handleComponentAppear" @disappear="handleComponentDisappear">
|
||||
<div class="labels-select-contents-list js-labels-list" @keydown="handleKeyDown">
|
||||
<div
|
||||
v-if="isDropdownVariantSidebar || isDropdownVariantEmbedded"
|
||||
|
@ -158,8 +165,8 @@ export default {
|
|||
</div>
|
||||
<div class="dropdown-input" @click.stop="() => {}">
|
||||
<gl-search-box-by-type
|
||||
ref="searchInput"
|
||||
v-model="searchKey"
|
||||
:autofocus="true"
|
||||
:disabled="labelsFetchInProgress"
|
||||
data-qa-selector="dropdown_input_field"
|
||||
/>
|
||||
|
|
|
@ -20,7 +20,7 @@ export const receiveLabelsFailure = ({ commit }) => {
|
|||
};
|
||||
export const fetchLabels = ({ state, dispatch }) => {
|
||||
dispatch('requestLabels');
|
||||
axios
|
||||
return axios
|
||||
.get(state.labelsFetchPath)
|
||||
.then(({ data }) => {
|
||||
dispatch('receiveLabelsSuccess', data);
|
||||
|
|
5
changelogs/unreleased/auto-deploy-1-0-7.yml
Normal file
5
changelogs/unreleased/auto-deploy-1-0-7.yml
Normal file
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: 'Auto Deploy: fixes issues for fetching other charts from stable repo'
|
||||
merge_request: 46531
|
||||
author:
|
||||
type: fixed
|
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Autofocus on search input within labels dropdown after labels are loaded
|
||||
merge_request: 46750
|
||||
author:
|
||||
type: fixed
|
5
changelogs/unreleased/update-haml_lint-to-0-36-0.yml
Normal file
5
changelogs/unreleased/update-haml_lint-to-0-36-0.yml
Normal file
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Update haml_lint from 0.34.0 to 0.36.0
|
||||
merge_request: 44914
|
||||
author: Takuya Noguchi
|
||||
type: other
|
5
changelogs/unreleased/wiki-delete.yml
Normal file
5
changelogs/unreleased/wiki-delete.yml
Normal file
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Minor UI improvements to Wiki Delete Page button and modal
|
||||
merge_request: 45740
|
||||
author:
|
||||
type: changed
|
|
@ -101,25 +101,27 @@ end
|
|||
|
||||
def lint_commits(commits)
|
||||
commit_linters = commits.map { |commit| lint_commit(commit) }
|
||||
failed_commit_linters = commit_linters.select { |commit_linter| commit_linter.failed? }
|
||||
warn_or_fail_commits(failed_commit_linters, default_to_fail: !squash_mr?)
|
||||
|
||||
if count_non_fixup_commits(commit_linters) > MAX_COMMITS_COUNT
|
||||
self.warn(format(MAX_COMMITS_COUNT_EXCEEDED_MESSAGE, max_commits_count: MAX_COMMITS_COUNT))
|
||||
end
|
||||
|
||||
if squash_mr?
|
||||
multi_line_commit_linter = commit_linters.detect { |commit_linter| !commit_linter.merge? && commit_linter.multi_line? }
|
||||
|
||||
if multi_line_commit_linter && multi_line_commit_linter.failed?
|
||||
warn_or_fail_commits(multi_line_commit_linter)
|
||||
commit_linters.delete(multi_line_commit_linter) # Don't show an error (here) and a warning (below)
|
||||
elsif gitlab_danger.ci? # We don't have access to the MR title locally
|
||||
title_linter = lint_mr_title(gitlab.mr_json['title'])
|
||||
if title_linter.failed?
|
||||
warn_or_fail_commits(title_linter)
|
||||
end
|
||||
end
|
||||
else
|
||||
if count_non_fixup_commits(commit_linters) > MAX_COMMITS_COUNT
|
||||
self.warn(format(MAX_COMMITS_COUNT_EXCEEDED_MESSAGE, max_commits_count: MAX_COMMITS_COUNT))
|
||||
end
|
||||
end
|
||||
|
||||
failed_commit_linters = commit_linters.select { |commit_linter| commit_linter.failed? }
|
||||
warn_or_fail_commits(failed_commit_linters, default_to_fail: !squash_mr?)
|
||||
end
|
||||
|
||||
def warn_or_fail_commits(failed_linters, default_to_fail: true)
|
||||
|
|
|
@ -452,7 +452,7 @@ Learn more about using Git, and using Git with GitLab:
|
|||
|
||||
## Coming to GitLab from another platform
|
||||
|
||||
If you are coming to GitLab from another platform, you'll find the following information useful:
|
||||
If you are coming to GitLab from another platform, the following information is useful:
|
||||
|
||||
| Topic | Description |
|
||||
|:---------------------------------------------------------------|:---------------------------------------------------------------------------------------|
|
||||
|
|
|
@ -373,7 +373,7 @@ As the final step, you must update Gitaly clients to switch from using local Git
|
|||
the Gitaly servers you just configured.
|
||||
|
||||
This can be risky because anything that prevents your Gitaly clients from reaching the Gitaly
|
||||
servers will cause all Gitaly requests to fail. For example, any sort of network, firewall, or name
|
||||
servers causes all Gitaly requests to fail. For example, any sort of network, firewall, or name
|
||||
resolution problems.
|
||||
|
||||
Additionally, you must [disable Rugged](../nfs.md#improving-nfs-performance-with-gitlab)
|
||||
|
|
|
@ -8047,7 +8047,7 @@ type Group {
|
|||
|
||||
"""
|
||||
Represents the code coverage activity for this group. Available only when
|
||||
feature flag `group_coverage_data_report` is enabled
|
||||
feature flag `group_coverage_data_report_graph` is enabled
|
||||
"""
|
||||
codeCoverageActivities(
|
||||
"""
|
||||
|
|
|
@ -22228,7 +22228,7 @@
|
|||
},
|
||||
{
|
||||
"name": "codeCoverageActivities",
|
||||
"description": "Represents the code coverage activity for this group. Available only when feature flag `group_coverage_data_report` is enabled",
|
||||
"description": "Represents the code coverage activity for this group. Available only when feature flag `group_coverage_data_report_graph` is enabled",
|
||||
"args": [
|
||||
{
|
||||
"name": "startDate",
|
||||
|
|
|
@ -123,24 +123,36 @@ document from the Kubernetes team also has some great points regarding this.
|
|||
|
||||
### Commit messages guidelines
|
||||
|
||||
When writing commit messages, please follow the guidelines below:
|
||||
Commit messages should follow the guidelines below, for reasons explained by Chris Beams in [How to Write a Git Commit Message](https://chris.beams.io/posts/git-commit/):
|
||||
|
||||
- The commit subject must contain at least 3 words.
|
||||
- The commit subject must not be longer than 72 characters.
|
||||
- The commit subject must start with a capital letter.
|
||||
- The commit subject must not end with a period.
|
||||
- The commit subject and body must be separated by a blank line.
|
||||
- The commit subject must start with a capital letter.
|
||||
- The commit subject must not be longer than 72 characters.
|
||||
- The commit subject must not end with a period.
|
||||
- The commit body must not contain more than 72 characters per line.
|
||||
- Commits that change 30 or more lines across at least 3 files must
|
||||
describe these changes in the commit body.
|
||||
- The commit subject or body must not contain Emojis.
|
||||
- Use issues and merge requests' full URLs instead of short references,
|
||||
as they are displayed as plain text outside of GitLab.
|
||||
- The merge request must not contain more than 10 commit messages.
|
||||
- The merge request should not contain more than 10 commit messages.
|
||||
- The commit subject should contain at least 3 words.
|
||||
|
||||
If the guidelines are not met, the MR will not pass the
|
||||
CAUTION: **Caution:**
|
||||
If the guidelines are not met, the MR may not pass the
|
||||
[Danger checks](https://gitlab.com/gitlab-org/gitlab/blob/master/danger/commit_messages/Dangerfile).
|
||||
For more information see [How to Write a Git Commit Message](https://chris.beams.io/posts/git-commit/).
|
||||
|
||||
TIP: **Tip:**
|
||||
Consider enabling [Squash and merge](../../user/project/merge_requests/squash_and_merge.md#squash-and-merge) if your merge
|
||||
request includes "Applied suggestion to X files" commits, so that Danger can ignore those.
|
||||
|
||||
#### Why these standards matter
|
||||
|
||||
1. Consistent commit messages that follow these guidelines make the history more readable.
|
||||
1. Concise standard commit messages helps to identify breaking changes for a deployment or ~"master:broken" quicker when
|
||||
reviewing commits between two points in time.
|
||||
|
||||
#### Commit message template
|
||||
|
||||
Example commit message template that can be used on your machine that embodies the above (guide for [how to apply template](https://codeinthehole.com/tips/a-useful-template-for-commit-messages/)):
|
||||
|
||||
|
|
|
@ -104,7 +104,7 @@ a YAML definition in `config/feature_flags` or `ee/config/feature_flags`.
|
|||
Only feature flags that have a YAML definition file can be used when running the development or testing environments.
|
||||
|
||||
```shell
|
||||
$ bin/feature-flag my-feature-flag
|
||||
$ bin/feature-flag my_feature_flag
|
||||
>> Specify the group introducing the feature flag, like `group::apm`:
|
||||
?> group::memory
|
||||
|
||||
|
@ -116,9 +116,9 @@ https://gitlab.com/gitlab-org/gitlab/-/issues/new?issue%5Btitle%5D=%5BFeature+fl
|
|||
|
||||
>> URL of the rollout issue (enter to skip):
|
||||
?> https://gitlab.com/gitlab-org/gitlab/-/issues/232533
|
||||
create config/feature_flags/development/test-flag.yml
|
||||
create config/feature_flags/development/my_feature_flag.yml
|
||||
---
|
||||
name: test-flag
|
||||
name: my_feature_flag
|
||||
introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/38602
|
||||
rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/232533
|
||||
group: group::memory
|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 17 KiB |
Binary file not shown.
Before Width: | Height: | Size: 10 KiB |
|
@ -96,12 +96,12 @@ Please note that:
|
|||
|
||||
## Editing a wiki page
|
||||
|
||||
NOTE: **Note:**
|
||||
Requires Developer [permissions](../../permissions.md).
|
||||
You need Developer [permissions](../../permissions.md) or higher to edit a wiki page.
|
||||
To do so:
|
||||
|
||||
To edit a page, simply click on the **Edit** button. From there on, you can
|
||||
change its content. When done, click **Save changes** for the changes to take
|
||||
effect.
|
||||
1. Click the edit icon (**{pencil}**).
|
||||
1. Edit the content.
|
||||
1. Click **Save changes**.
|
||||
|
||||
### Adding a table of contents
|
||||
|
||||
|
@ -110,23 +110,34 @@ For an example, see [Table of contents](../../markdown.md#table-of-contents).
|
|||
|
||||
## Deleting a wiki page
|
||||
|
||||
NOTE: **Note:**
|
||||
Requires Maintainer [permissions](../../permissions.md).
|
||||
You need Maintainer [permissions](../../permissions.md) or higher to delete a wiki page.
|
||||
To do so:
|
||||
|
||||
You can find the **Delete** button only when editing a page. Click on it and
|
||||
confirm you want the page to be deleted.
|
||||
1. Open the page you want to delete.
|
||||
1. Click the **Delete page** button.
|
||||
1. Confirm the deletion.
|
||||
|
||||
## Moving a wiki page
|
||||
|
||||
You can move a wiki page from one directory to another by specifying the full
|
||||
path in the wiki page title in the [edit](#editing-a-wiki-page) form.
|
||||
You need Developer [permissions](../../permissions.md) or higher to move a wiki page.
|
||||
To do so:
|
||||
|
||||
![Moving a page](img/wiki_move_page_1.png)
|
||||
1. Click the edit icon (**{pencil}**).
|
||||
1. Add the new path to the **Title** field.
|
||||
1. Click **Save changes**.
|
||||
|
||||
![After moving a page](img/wiki_move_page_2.png)
|
||||
For example, if you have a wiki page called `about` under `company` and you want to
|
||||
move it to the wiki's root:
|
||||
|
||||
In order to move a wiki page to the root directory, the wiki page title must
|
||||
be preceded by the slash (`/`) character.
|
||||
1. Click the edit icon (**{pencil}**).
|
||||
1. Change the **Title** from `about` to `/about`.
|
||||
1. Click **Save changes**.
|
||||
|
||||
If you want to do the opposite:
|
||||
|
||||
1. Click the edit icon (**{pencil}**).
|
||||
1. Change the **Title** from `about` to `company/about`.
|
||||
1. Click **Save changes**.
|
||||
|
||||
## Viewing a list of all created wiki pages
|
||||
|
||||
|
|
10
lefthook.yml
10
lefthook.yml
|
@ -13,6 +13,11 @@ pre-push:
|
|||
files: git diff --name-only $(git merge-base origin/master HEAD)..HEAD
|
||||
glob: "*.html.haml"
|
||||
run: bundle exec haml-lint --config .haml-lint.yml {files}
|
||||
markdownlint:
|
||||
tags: documentation style
|
||||
files: git diff --name-only $(git merge-base origin/master HEAD)..HEAD
|
||||
glob: "*.md"
|
||||
run: yarn markdownlint {files}
|
||||
scss-lint:
|
||||
tags: stylesheet css style
|
||||
files: git diff --name-only $(git merge-base origin/master HEAD)..HEAD
|
||||
|
@ -24,3 +29,8 @@ pre-push:
|
|||
files: git diff --name-only $(git merge-base origin/master HEAD)..HEAD
|
||||
glob: "*.rb"
|
||||
run: bundle exec rubocop --parallel --force-exclusion {files}
|
||||
vale: # Requires Vale: https://docs.gitlab.com/ee/development/documentation/#install-linters
|
||||
tags: documentation style
|
||||
files: git diff --name-only $(git merge-base origin/master HEAD)..HEAD
|
||||
glob: "*.md"
|
||||
run: if command -v vale 2> /dev/null; then vale --config .vale.ini --minAlertLevel error {files}; else echo "Vale not found. Install Vale"; fi
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.dast-auto-deploy:
|
||||
image: "registry.gitlab.com/gitlab-org/cluster-integration/auto-deploy-image:v1.0.6"
|
||||
image: "registry.gitlab.com/gitlab-org/cluster-integration/auto-deploy-image:v1.0.7"
|
||||
|
||||
dast_environment_deploy:
|
||||
extends: .dast-auto-deploy
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.auto-deploy:
|
||||
image: "registry.gitlab.com/gitlab-org/cluster-integration/auto-deploy-image:v1.0.6"
|
||||
image: "registry.gitlab.com/gitlab-org/cluster-integration/auto-deploy-image:v1.0.7"
|
||||
dependencies: []
|
||||
|
||||
review:
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
"eslint-staged-fix": "git diff --diff-filter=d --cached --name-only | grep -E \"(.*)\\.(js|vue)$\" | xargs eslint --cache --max-warnings 0 --report-unused-disable-directives --fix",
|
||||
"eslint-report": "eslint --max-warnings 0 --ext .js,.vue --format html --output-file ./eslint-report.html --no-inline-config .",
|
||||
"file-coverage": "scripts/frontend/file_test_coverage.js",
|
||||
"lint-docs": "scripts/lint-doc.sh",
|
||||
"prejest": "yarn check-dependencies",
|
||||
"jest": "jest --config jest.config.js",
|
||||
"jest-debug": "node --inspect-brk node_modules/.bin/jest --runInBand",
|
||||
|
@ -20,7 +21,7 @@
|
|||
"karma": "BABEL_ENV=${BABEL_ENV:=karma} karma start --single-run true config/karma.config.js",
|
||||
"karma-coverage": "BABEL_ENV=coverage karma start --single-run true config/karma.config.js",
|
||||
"karma-start": "BABEL_ENV=karma karma start config/karma.config.js",
|
||||
"markdownlint": "markdownlint -c .markdownlint.json 'doc/**/*.md'",
|
||||
"markdownlint": "markdownlint --config .markdownlint.json",
|
||||
"postinstall": "node ./scripts/frontend/postinstall.js",
|
||||
"prettier-staged": "node ./scripts/frontend/prettier.js check",
|
||||
"prettier-staged-save": "node ./scripts/frontend/prettier.js save",
|
||||
|
@ -80,7 +81,7 @@
|
|||
"deckar01-task_list": "^2.3.1",
|
||||
"diff": "^3.4.0",
|
||||
"document-register-element": "1.14.3",
|
||||
"dompurify": "^2.2.0",
|
||||
"dompurify": "^2.2.2",
|
||||
"dropzone": "^4.2.0",
|
||||
"editorconfig": "^0.15.3",
|
||||
"emoji-regex": "^7.0.3",
|
||||
|
|
|
@ -128,6 +128,16 @@ describe('DropdownContentsLabelsView', () => {
|
|||
});
|
||||
});
|
||||
|
||||
describe('handleComponentAppear', () => {
|
||||
it('calls `focusInput` on searchInput field', async () => {
|
||||
wrapper.vm.$refs.searchInput.focusInput = jest.fn();
|
||||
|
||||
await wrapper.vm.handleComponentAppear();
|
||||
|
||||
expect(wrapper.vm.$refs.searchInput.focusInput).toHaveBeenCalled();
|
||||
});
|
||||
});
|
||||
|
||||
describe('handleComponentDisappear', () => {
|
||||
it('calls action `receiveLabelsSuccess` with empty array', () => {
|
||||
jest.spyOn(wrapper.vm, 'receiveLabelsSuccess');
|
||||
|
@ -301,7 +311,6 @@ describe('DropdownContentsLabelsView', () => {
|
|||
const searchInputEl = wrapper.find(GlSearchBoxByType);
|
||||
|
||||
expect(searchInputEl.exists()).toBe(true);
|
||||
expect(searchInputEl.attributes('autofocus')).toBe('true');
|
||||
});
|
||||
|
||||
it('renders label elements for all labels', () => {
|
||||
|
|
|
@ -4181,10 +4181,10 @@ domhandler@^2.3.0:
|
|||
dependencies:
|
||||
domelementtype "1"
|
||||
|
||||
dompurify@^2.2.0:
|
||||
version "2.2.0"
|
||||
resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-2.2.0.tgz#51d34e76faa38b5d6b4e83a0678530f27fe3965c"
|
||||
integrity sha512-bqFOQ7XRmmozp0VsKdIEe8UwZYxj0yttz7l80GBtBqdVRY48cOpXH2J/CVO7AEkV51qY0EBVXfilec18mdmQ/w==
|
||||
dompurify@^2.2.0, dompurify@^2.2.2:
|
||||
version "2.2.2"
|
||||
resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-2.2.2.tgz#cb8c2b1a2f3c8a0b565127504ae4eedec176a972"
|
||||
integrity sha512-BsGR4nDLaC5CNBnyT5I+d5pOeaoWvgVeg6Gq/aqmKYWMPR07131u60I80BvExLAJ0FQEIBQ1BTicw+C5+jOyrg==
|
||||
|
||||
domutils@^1.5.1:
|
||||
version "1.6.2"
|
||||
|
|
Loading…
Reference in a new issue