diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-05-26 15:08:22 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-05-26 15:08:22 +0300 |
commit | 1691cbe307f7698b3ee39811278990c43b6751a5 (patch) | |
tree | 2bd7d5b7143242f540a9edde92c83c791ebf8af4 /app | |
parent | 27c6c4bf061c3a2289ce4808b1b354535994d09d (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app')
17 files changed, 50 insertions, 64 deletions
diff --git a/app/assets/javascripts/blob/components/blob_header.vue b/app/assets/javascripts/blob/components/blob_header.vue index e5e01caa9a5..76c5779f3ae 100644 --- a/app/assets/javascripts/blob/components/blob_header.vue +++ b/app/assets/javascripts/blob/components/blob_header.vue @@ -30,6 +30,11 @@ export default { required: false, default: SIMPLE_BLOB_VIEWER, }, + hasRenderError: { + type: Boolean, + required: false, + default: false, + }, }, data() { return { @@ -75,6 +80,7 @@ export default { v-if="showDefaultActions" :raw-path="blob.rawPath" :active-viewer="viewer" + :has-render-error="hasRenderError" @copy="proxyCopyRequest" /> </div> diff --git a/app/assets/javascripts/blob/components/blob_header_default_actions.vue b/app/assets/javascripts/blob/components/blob_header_default_actions.vue index 63ae70a37f4..62fef108b47 100644 --- a/app/assets/javascripts/blob/components/blob_header_default_actions.vue +++ b/app/assets/javascripts/blob/components/blob_header_default_actions.vue @@ -27,6 +27,11 @@ export default { default: SIMPLE_BLOB_VIEWER, required: false, }, + hasRenderError: { + type: Boolean, + required: false, + default: false, + }, }, computed: { downloadUrl() { @@ -44,11 +49,13 @@ export default { <template> <gl-button-group> <gl-deprecated-button + v-if="!hasRenderError" v-gl-tooltip.hover :aria-label="$options.BTN_COPY_CONTENTS_TITLE" :title="$options.BTN_COPY_CONTENTS_TITLE" :disabled="copyDisabled" data-clipboard-target="#blob-code-content" + data-testid="copyContentsButton" > <gl-icon name="copy-to-clipboard" :size="14" /> </gl-deprecated-button> diff --git a/app/assets/javascripts/snippets/components/snippet_blob_view.vue b/app/assets/javascripts/snippets/components/snippet_blob_view.vue index 6b218b21e56..7472aff3318 100644 --- a/app/assets/javascripts/snippets/components/snippet_blob_view.vue +++ b/app/assets/javascripts/snippets/components/snippet_blob_view.vue @@ -74,6 +74,9 @@ export default { canBeCloned() { return this.snippet.sshUrlToRepo || this.snippet.httpUrlToRepo; }, + hasRenderError() { + return Boolean(this.viewer.renderError); + }, }, methods: { switchViewer(newViewer) { @@ -92,7 +95,12 @@ export default { <div> <blob-embeddable v-if="embeddable" class="mb-3" :url="snippet.webUrl" /> <article class="file-holder snippet-file-content"> - <blob-header :blob="blob" :active-viewer-type="viewer.type" @viewer-changed="switchViewer"> + <blob-header + :blob="blob" + :active-viewer-type="viewer.type" + :has-render-error="hasRenderError" + @viewer-changed="switchViewer" + > <template #actions> <clone-dropdown-button v-if="canBeCloned" diff --git a/app/assets/javascripts/vue_merge_request_widget/components/states/mr_widget_rebase.vue b/app/assets/javascripts/vue_merge_request_widget/components/states/mr_widget_rebase.vue index b1fb377e47a..c3cc30a1a6f 100644 --- a/app/assets/javascripts/vue_merge_request_widget/components/states/mr_widget_rebase.vue +++ b/app/assets/javascripts/vue_merge_request_widget/components/states/mr_widget_rebase.vue @@ -127,7 +127,7 @@ export default { </button> <span v-if="!rebasingError" class="bold">{{ __( - 'Fast-forward merge is not possible. Rebase the source branch onto the target branch or merge target branch into source branch to allow this merge request to be merged.', + 'Fast-forward merge is not possible. Rebase the source branch onto the target branch.', ) }}</span> <span v-else class="bold danger">{{ rebasingError }}</span> diff --git a/app/assets/stylesheets/framework/common.scss b/app/assets/stylesheets/framework/common.scss index aed5086e6ba..8016b063de6 100644 --- a/app/assets/stylesheets/framework/common.scss +++ b/app/assets/stylesheets/framework/common.scss @@ -425,7 +425,6 @@ img.emoji { .append-right-32 { margin-right: 32px; } .append-right-48 { margin-right: 48px; } .prepend-right-32 { margin-right: 32px; } -.append-bottom-2 { margin-bottom: 2px; } .append-bottom-4 { margin-bottom: $gl-padding-4; } .append-bottom-5 { margin-bottom: 5px; } .append-bottom-8 { margin-bottom: $grid-size; } diff --git a/app/assets/stylesheets/pages/alert_management/list.scss b/app/assets/stylesheets/pages/alert_management/list.scss index 2eee093dfce..ebaeb3b345a 100644 --- a/app/assets/stylesheets/pages/alert_management/list.scss +++ b/app/assets/stylesheets/pages/alert_management/list.scss @@ -1,22 +1,4 @@ .alert-management-list { - // consider adding these stateful variants to @gitlab-ui - // https://gitlab.com/gitlab-org/gitlab-ui/-/merge_requests/1178 - .hover-bg-blue-50:hover { - background-color: $blue-50; - } - - .hover-gl-cursor-pointer:hover { - cursor: pointer; - } - - .hover-gl-border-b-solid:hover { - @include gl-border-b-solid; - } - - .hover-gl-border-blue-200:hover { - border-color: $blue-200; - } - // these styles need to be deleted once GlTable component looks in GitLab same as in @gitlab/ui table { color: $gray-700; diff --git a/app/controllers/projects/import/jira_controller.rb b/app/controllers/projects/import/jira_controller.rb index 711e23dc3ce..0ff8d34de66 100644 --- a/app/controllers/projects/import/jira_controller.rb +++ b/app/controllers/projects/import/jira_controller.rb @@ -6,7 +6,6 @@ module Projects before_action :authenticate_user! before_action :check_issues_available! before_action :authorize_read_project! - before_action :jira_import_enabled? before_action :jira_integration_configured? before_action :authorize_admin_project!, only: [:import] @@ -44,12 +43,6 @@ module Projects private - def jira_import_enabled? - return if @project.jira_issues_import_feature_flag_enabled? - - redirect_to project_issues_path(@project) - end - def jira_integration_configured? return if Feature.enabled?(:jira_issue_import_vue, @project, default_enabled: true) return if @project.jira_service diff --git a/app/graphql/resolvers/projects/jira_imports_resolver.rb b/app/graphql/resolvers/projects/jira_imports_resolver.rb index 25361c068d9..aa9b7139f38 100644 --- a/app/graphql/resolvers/projects/jira_imports_resolver.rb +++ b/app/graphql/resolvers/projects/jira_imports_resolver.rb @@ -14,8 +14,6 @@ module Resolvers end def authorized_resource?(project) - return false unless project.jira_issues_import_feature_flag_enabled? - context[:current_user].present? && Ability.allowed?(context[:current_user], :read_project, project) end end diff --git a/app/graphql/resolvers/projects/jira_projects_resolver.rb b/app/graphql/resolvers/projects/jira_projects_resolver.rb index 7004976adab..aaf10399c65 100644 --- a/app/graphql/resolvers/projects/jira_projects_resolver.rb +++ b/app/graphql/resolvers/projects/jira_projects_resolver.rb @@ -20,7 +20,7 @@ module Resolvers end def authorized_resource?(project) - Feature.enabled?(:jira_issue_import, project) && Ability.allowed?(context[:current_user], :admin_project, project) + Ability.allowed?(context[:current_user], :admin_project, project) end private diff --git a/app/helpers/notes_helper.rb b/app/helpers/notes_helper.rb index acf9f8c5b5b..bb9892ad596 100644 --- a/app/helpers/notes_helper.rb +++ b/app/helpers/notes_helper.rb @@ -3,6 +3,13 @@ module NotesHelper MAX_PRERENDERED_NOTES = 10 + def note_target_title(note) + # The design title is already present in `Event#note_target_reference`. + return if note.nil? || note.for_design? + + note.title + end + def note_target_fields(note) if note.noteable hidden_field_tag(:target_type, note.noteable.class.name.underscore) + diff --git a/app/models/project.rb b/app/models/project.rb index 795c2c5f1bd..99ac8a08ae3 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -808,10 +808,6 @@ class Project < ApplicationRecord Feature.enabled?(:context_commits, default_enabled: true) end - def jira_issues_import_feature_flag_enabled? - Feature.enabled?(:jira_issue_import, self, default_enabled: true) - end - # LFS and hashed repository storage are required for using Design Management. def design_management_enabled? lfs_enabled? && hashed_storage?(:repository) @@ -900,7 +896,6 @@ class Project < ApplicationRecord end def validate_jira_import_settings!(user: nil) - raise Projects::ImportService::Error, _('Jira import feature is disabled.') unless jira_issues_import_feature_flag_enabled? raise Projects::ImportService::Error, _('Jira integration not configured.') unless jira_service&.active? if user @@ -1015,7 +1010,7 @@ class Project < ApplicationRecord end def jira_import? - import_type == 'jira' && latest_jira_import.present? && jira_issues_import_feature_flag_enabled? + import_type == 'jira' && latest_jira_import.present? end def gitlab_project_import? diff --git a/app/models/user.rb b/app/models/user.rb index 3af53d06922..f6d945101b6 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -1818,7 +1818,7 @@ class User < ApplicationRecord def update_highest_role? return false unless persisted? - (previous_changes.keys & %w(state user_type ghost)).any? + (previous_changes.keys & %w(state user_type)).any? end def update_highest_role_attribute diff --git a/app/views/events/event/_note.html.haml b/app/views/events/event/_note.html.haml index 7e2103287f7..21e8b1401ca 100644 --- a/app/views/events/event/_note.html.haml +++ b/app/views/events/event/_note.html.haml @@ -7,8 +7,10 @@ %span.event-type.d-inline-block.append-right-4{ class: event.action_name } = event.action_name = event_note_title_html(event) - %span.event-target-title.append-right-4{ dir: "auto" } - = """.html_safe + event.target.title + """.html_safe + - title = note_target_title(event.target) + - if title.present? + %span.event-target-title.append-right-4{ dir: "auto" } + = """.html_safe + title + """.html_safe = render "events/event_scope", event: event diff --git a/app/views/projects/issues/import_csv/_button.html.haml b/app/views/projects/issues/import_csv/_button.html.haml index 07c34b51037..507dd91d571 100644 --- a/app/views/projects/issues/import_csv/_button.html.haml +++ b/app/views/projects/issues/import_csv/_button.html.haml @@ -1,22 +1,14 @@ - type = local_assigns.fetch(:type, :icon) -- if @project.jira_issues_import_feature_flag_enabled? - .dropdown.btn-group - %button.btn.rounded-right.text-center{ class: ('has-tooltip' if type == :icon), title: (_('Import issues') if type == :icon), - data: { toggle: 'dropdown' }, 'aria-label' => _('Import issues'), 'aria-haspopup' => 'true', 'aria-expanded' => 'false' } - - if type == :icon - = sprite_icon('import') - - else - = _('Import issues') - %ul.dropdown-menu - %li - %button.btn{ data: { toggle: 'modal', target: '.issues-import-modal' } } - = _('Import CSV') - %li= link_to _('Import from Jira'), project_import_jira_path(@project) -- else - %button.csv-import-button.btn{ title: _('Import CSV'), class: ('has-tooltip' if type == :icon), - data: { toggle: 'modal', target: '.issues-import-modal' } } +.dropdown.btn-group + %button.btn.rounded-right.text-center{ class: ('has-tooltip' if type == :icon), title: (_('Import issues') if type == :icon), + data: { toggle: 'dropdown' }, 'aria-label' => _('Import issues'), 'aria-haspopup' => 'true', 'aria-expanded' => 'false' } - if type == :icon = sprite_icon('import') - else - = _('Import CSV') + = _('Import issues') + %ul.dropdown-menu + %li + %button.btn{ data: { toggle: 'modal', target: '.issues-import-modal' } } + = _('Import CSV') + %li= link_to _('Import from Jira'), project_import_jira_path(@project) diff --git a/app/views/projects/issues/index.html.haml b/app/views/projects/issues/index.html.haml index 0aef4e39466..826a62e39d3 100644 --- a/app/views/projects/issues/index.html.haml +++ b/app/views/projects/issues/index.html.haml @@ -6,11 +6,10 @@ = content_for :meta_tags do = auto_discovery_link_tag(:atom, safe_params.merge(rss_url_options).to_h, title: "#{@project.name} issues") -- if @project.jira_issues_import_feature_flag_enabled? - .js-projects-issues-root{ data: { can_edit: can?(current_user, :admin_project, @project).to_s, - is_jira_configured: @project.jira_service.present?.to_s, - issues_path: project_issues_path(@project), - project_path: @project.full_path } } +.js-projects-issues-root{ data: { can_edit: can?(current_user, :admin_project, @project).to_s, + is_jira_configured: @project.jira_service.present?.to_s, + issues_path: project_issues_path(@project), + project_path: @project.full_path } } - if project_issues(@project).exists? .top-area diff --git a/app/workers/concerns/gitlab/jira_import/import_worker.rb b/app/workers/concerns/gitlab/jira_import/import_worker.rb index 7606cf76c0f..fdc6e64bbaa 100644 --- a/app/workers/concerns/gitlab/jira_import/import_worker.rb +++ b/app/workers/concerns/gitlab/jira_import/import_worker.rb @@ -27,7 +27,6 @@ module Gitlab def can_import?(project) return false unless project - return false unless project.jira_issues_import_feature_flag_enabled? project.latest_jira_import&.started? end diff --git a/app/workers/gitlab/jira_import/stage/start_import_worker.rb b/app/workers/gitlab/jira_import/stage/start_import_worker.rb index 5b36feadbd1..bfc02224ee4 100644 --- a/app/workers/gitlab/jira_import/stage/start_import_worker.rb +++ b/app/workers/gitlab/jira_import/stage/start_import_worker.rb @@ -25,7 +25,6 @@ module Gitlab def start_import return false unless project - return false unless project.jira_issues_import_feature_flag_enabled? return true if start(project.latest_jira_import) Gitlab::Import::Logger.info( |