diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2023-02-09 06:07:49 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2023-02-09 06:07:49 +0000 |
commit | c789d0002c97a00e262be992adfcc0d26b72910e (patch) | |
tree | f292cf7810c5c4b8318c29f6486e20e4a04277c2 | |
parent | 38ff3a81189c8323d323946afcf7dad62c84b9aa (diff) | |
download | gitlab-ce-c789d0002c97a00e262be992adfcc0d26b72910e.tar.gz |
Add latest changes from gitlab-org/gitlab@master
34 files changed, 86 insertions, 120 deletions
diff --git a/app/assets/javascripts/ci/ci_variable_list/components/ci_group_variables.vue b/app/assets/javascripts/ci/ci_variable_list/components/ci_group_variables.vue index 4466a6a8081..9c79adffdae 100644 --- a/app/assets/javascripts/ci/ci_variable_list/components/ci_group_variables.vue +++ b/app/assets/javascripts/ci/ci_variable_list/components/ci_group_variables.vue @@ -1,12 +1,8 @@ <script> +import { TYPENAME_GROUP } from '~/graphql_shared/constants'; import { convertToGraphQLId } from '~/graphql_shared/utils'; import glFeatureFlagsMixin from '~/vue_shared/mixins/gl_feature_flags_mixin'; -import { - ADD_MUTATION_ACTION, - DELETE_MUTATION_ACTION, - GRAPHQL_GROUP_TYPE, - UPDATE_MUTATION_ACTION, -} from '../constants'; +import { ADD_MUTATION_ACTION, DELETE_MUTATION_ACTION, UPDATE_MUTATION_ACTION } from '../constants'; import getGroupVariables from '../graphql/queries/group_variables.query.graphql'; import addGroupVariable from '../graphql/mutations/group_add_variable.mutation.graphql'; import deleteGroupVariable from '../graphql/mutations/group_delete_variable.mutation.graphql'; @@ -24,7 +20,7 @@ export default { return this.glFeatures.groupScopedCiVariables; }, graphqlId() { - return convertToGraphQLId(GRAPHQL_GROUP_TYPE, this.groupId); + return convertToGraphQLId(TYPENAME_GROUP, this.groupId); }, }, mutationData: { diff --git a/app/assets/javascripts/ci/ci_variable_list/components/ci_project_variables.vue b/app/assets/javascripts/ci/ci_variable_list/components/ci_project_variables.vue index 6326940148a..43938e9b88f 100644 --- a/app/assets/javascripts/ci/ci_variable_list/components/ci_project_variables.vue +++ b/app/assets/javascripts/ci/ci_variable_list/components/ci_project_variables.vue @@ -1,12 +1,8 @@ <script> +import { TYPENAME_PROJECT } from '~/graphql_shared/constants'; import { convertToGraphQLId } from '~/graphql_shared/utils'; import glFeatureFlagsMixin from '~/vue_shared/mixins/gl_feature_flags_mixin'; -import { - ADD_MUTATION_ACTION, - DELETE_MUTATION_ACTION, - GRAPHQL_PROJECT_TYPE, - UPDATE_MUTATION_ACTION, -} from '../constants'; +import { ADD_MUTATION_ACTION, DELETE_MUTATION_ACTION, UPDATE_MUTATION_ACTION } from '../constants'; import getProjectEnvironments from '../graphql/queries/project_environments.query.graphql'; import getProjectVariables from '../graphql/queries/project_variables.query.graphql'; import addProjectVariable from '../graphql/mutations/project_add_variable.mutation.graphql'; @@ -22,7 +18,7 @@ export default { inject: ['projectFullPath', 'projectId'], computed: { graphqlId() { - return convertToGraphQLId(GRAPHQL_PROJECT_TYPE, this.projectId); + return convertToGraphQLId(TYPENAME_PROJECT, this.projectId); }, }, mutationData: { diff --git a/app/assets/javascripts/ci/ci_variable_list/constants.js b/app/assets/javascripts/ci/ci_variable_list/constants.js index 2e781e3da0c..627ace1b28e 100644 --- a/app/assets/javascripts/ci/ci_variable_list/constants.js +++ b/app/assets/javascripts/ci/ci_variable_list/constants.js @@ -88,9 +88,6 @@ export const ADD_VARIABLE_ACTION = 'ADD_VARIABLE'; export const EDIT_VARIABLE_ACTION = 'EDIT_VARIABLE'; export const VARIABLE_ACTIONS = [ADD_VARIABLE_ACTION, EDIT_VARIABLE_ACTION]; -export const GRAPHQL_PROJECT_TYPE = 'Project'; -export const GRAPHQL_GROUP_TYPE = 'Group'; - export const ADD_MUTATION_ACTION = 'add'; export const UPDATE_MUTATION_ACTION = 'update'; export const DELETE_MUTATION_ACTION = 'delete'; diff --git a/app/assets/javascripts/ci/ci_variable_list/graphql/settings.js b/app/assets/javascripts/ci/ci_variable_list/graphql/settings.js index 10203383ba0..cafe3df35d0 100644 --- a/app/assets/javascripts/ci/ci_variable_list/graphql/settings.js +++ b/app/assets/javascripts/ci/ci_variable_list/graphql/settings.js @@ -3,14 +3,9 @@ import { convertObjectPropsToCamelCase, convertObjectPropsToSnakeCase, } from '~/lib/utils/common_utils'; +import { TYPENAME_CI_VARIABLE, TYPENAME_GROUP, TYPENAME_PROJECT } from '~/graphql_shared/constants'; import { convertToGraphQLId, getIdFromGraphQLId } from '~/graphql_shared/utils'; -import { - GRAPHQL_GROUP_TYPE, - GRAPHQL_PROJECT_TYPE, - groupString, - instanceString, - projectString, -} from '../constants'; +import { groupString, instanceString, projectString } from '../constants'; import getProjectVariables from './queries/project_variables.query.graphql'; import getGroupVariables from './queries/group_variables.query.graphql'; import getAdminVariables from './queries/variables.query.graphql'; @@ -30,7 +25,7 @@ const mapVariableTypes = (variables = [], kind) => { return { __typename: `Ci${kind}Variable`, ...convertObjectPropsToCamelCase(ciVar), - id: convertToGraphQLId('Ci::Variable', ciVar.id), + id: convertToGraphQLId(TYPENAME_CI_VARIABLE, ciVar.id), variableType: ciVar.variable_type ? ciVar.variable_type.toUpperCase() : ciVar.variableType, }; }); @@ -40,10 +35,10 @@ const prepareProjectGraphQLResponse = ({ data, id, errors = [] }) => { return { errors, project: { - __typename: GRAPHQL_PROJECT_TYPE, - id: convertToGraphQLId(GRAPHQL_PROJECT_TYPE, id), + __typename: TYPENAME_PROJECT, + id: convertToGraphQLId(TYPENAME_PROJECT, id), ciVariables: { - __typename: `Ci${GRAPHQL_PROJECT_TYPE}VariableConnection`, + __typename: 'CiProjectVariableConnection', pageInfo: { __typename: 'PageInfo', hasNextPage: false, @@ -61,10 +56,10 @@ const prepareGroupGraphQLResponse = ({ data, id, errors = [] }) => { return { errors, group: { - __typename: GRAPHQL_GROUP_TYPE, - id: convertToGraphQLId(GRAPHQL_GROUP_TYPE, id), + __typename: TYPENAME_GROUP, + id: convertToGraphQLId(TYPENAME_GROUP, id), ciVariables: { - __typename: `Ci${GRAPHQL_GROUP_TYPE}VariableConnection`, + __typename: `CiGroupVariableConnection`, pageInfo: { __typename: 'PageInfo', hasNextPage: false, diff --git a/app/assets/javascripts/graphql_shared/constants.js b/app/assets/javascripts/graphql_shared/constants.js index c187f975073..3c4ca4c197e 100644 --- a/app/assets/javascripts/graphql_shared/constants.js +++ b/app/assets/javascripts/graphql_shared/constants.js @@ -1,7 +1,11 @@ export const MINIMUM_SEARCH_LENGTH = 3; export const TYPENAME_BOARD = 'Board'; +export const TYPENAME_CI_BUILD = 'Ci::Build'; +export const TYPENAME_CI_PIPELINE = 'Ci::Pipeline'; export const TYPENAME_CI_RUNNER = 'Ci::Runner'; +export const TYPENAME_CI_VARIABLE = 'Ci::Variable'; +export const TYPENAME_COMMIT_STATUS = 'CommitStatus'; export const TYPENAME_CRM_CONTACT = 'CustomerRelations::Contact'; export const TYPENAME_CRM_ORGANIZATION = 'CustomerRelations::Organization'; export const TYPENAME_DISCUSSION = 'Discussion'; @@ -19,5 +23,6 @@ export const TYPENAME_PROJECT = 'Project'; export const TYPENAME_SCANNER_PROFILE = 'DastScannerProfile'; export const TYPENAME_SITE_PROFILE = 'DastSiteProfile'; export const TYPENAME_USER = 'User'; +export const TYPENAME_VULNERABILITIES_SCANNER = 'Vulnerabilities::Scanner'; export const TYPENAME_VULNERABILITY = 'Vulnerability'; export const TYPENAME_WORK_ITEM = 'WorkItem'; diff --git a/app/assets/javascripts/jobs/components/job/manual_variables_form.vue b/app/assets/javascripts/jobs/components/job/manual_variables_form.vue index 734d3ca0d49..d079e91a4d0 100644 --- a/app/assets/javascripts/jobs/components/job/manual_variables_form.vue +++ b/app/assets/javascripts/jobs/components/job/manual_variables_form.vue @@ -13,8 +13,9 @@ import { cloneDeep, uniqueId } from 'lodash'; import { mapActions } from 'vuex'; import { fetchPolicies } from '~/lib/graphql'; import { createAlert } from '~/flash'; +import { TYPENAME_CI_BUILD, TYPENAME_COMMIT_STATUS } from '~/graphql_shared/constants'; import { convertToGraphQLId } from '~/graphql_shared/utils'; -import { JOB_GRAPHQL_ERRORS, GRAPHQL_ID_TYPES } from '~/jobs/constants'; +import { JOB_GRAPHQL_ERRORS } from '~/jobs/constants'; import { helpPagePath } from '~/helpers/help_page_helper'; import { redirectTo } from '~/lib/utils/url_utility'; import { s__ } from '~/locale'; @@ -45,7 +46,7 @@ export default { variables() { return { fullPath: this.projectPath, - id: convertToGraphQLId(GRAPHQL_ID_TYPES.commitStatus, this.jobId), + id: convertToGraphQLId(TYPENAME_COMMIT_STATUS, this.jobId), }; }, fetchPolicy: fetchPolicies.CACHE_AND_NETWORK, @@ -157,7 +158,7 @@ export default { const { data } = await this.$apollo.mutate({ mutation: retryJobWithVariablesMutation, variables: { - id: convertToGraphQLId(GRAPHQL_ID_TYPES.ciBuild, this.jobId), + id: convertToGraphQLId(TYPENAME_CI_BUILD, this.jobId), // we need to ensure no empty variables are passed to the API variables: this.preparedVariables, }, diff --git a/app/assets/javascripts/jobs/components/job/sidebar/sidebar_header.vue b/app/assets/javascripts/jobs/components/job/sidebar/sidebar_header.vue index 40aec0b0536..8100bc2d87a 100644 --- a/app/assets/javascripts/jobs/components/job/sidebar/sidebar_header.vue +++ b/app/assets/javascripts/jobs/components/job/sidebar/sidebar_header.vue @@ -2,11 +2,11 @@ import { GlButton, GlTooltipDirective } from '@gitlab/ui'; import { mapActions } from 'vuex'; import { createAlert } from '~/flash'; +import { TYPENAME_COMMIT_STATUS } from '~/graphql_shared/constants'; import { convertToGraphQLId } from '~/graphql_shared/utils'; import TooltipOnTruncate from '~/vue_shared/components/tooltip_on_truncate/tooltip_on_truncate.vue'; import { JOB_GRAPHQL_ERRORS, - GRAPHQL_ID_TYPES, JOB_SIDEBAR_COPY, forwardDeploymentFailureModalId, PASSED_STATUS, @@ -35,7 +35,7 @@ export default { variables() { return { fullPath: this.projectPath, - id: convertToGraphQLId(GRAPHQL_ID_TYPES.commitStatus, this.jobId), + id: convertToGraphQLId(TYPENAME_COMMIT_STATUS, this.jobId), }; }, update(data) { diff --git a/app/assets/javascripts/jobs/constants.js b/app/assets/javascripts/jobs/constants.js index 57f0caa06ac..027d896ba0e 100644 --- a/app/assets/javascripts/jobs/constants.js +++ b/app/assets/javascripts/jobs/constants.js @@ -5,11 +5,6 @@ const moreInfo = __('More information'); export const forwardDeploymentFailureModalId = 'forward-deployment-failure'; -export const GRAPHQL_ID_TYPES = { - commitStatus: 'CommitStatus', - ciBuild: 'Ci::Build', -}; - export const JOB_SIDEBAR_COPY = { cancel, cancelJobButtonLabel: s__('Job|Cancel'), diff --git a/app/assets/javascripts/packages_and_registries/package_registry/pages/details.vue b/app/assets/javascripts/packages_and_registries/package_registry/pages/details.vue index 607f5c2af86..8f0efd5e74f 100644 --- a/app/assets/javascripts/packages_and_registries/package_registry/pages/details.vue +++ b/app/assets/javascripts/packages_and_registries/package_registry/pages/details.vue @@ -11,6 +11,7 @@ import { GlSprintf, } from '@gitlab/ui'; import { createAlert, VARIANT_SUCCESS, VARIANT_WARNING } from '~/flash'; +import { TYPENAME_PACKAGES_PACKAGE } from '~/graphql_shared/constants'; import { convertToGraphQLId } from '~/graphql_shared/utils'; import { numberToHumanSize } from '~/lib/utils/number_utils'; import { objectToQuery } from '~/lib/utils/url_utility'; @@ -132,7 +133,7 @@ export default { }, queryVariables() { return { - id: convertToGraphQLId('Packages::Package', this.packageId), + id: convertToGraphQLId(TYPENAME_PACKAGES_PACKAGE, this.packageId), first: GRAPHQL_PAGE_SIZE, }; }, diff --git a/app/assets/javascripts/pipelines/components/graph/linked_pipeline.vue b/app/assets/javascripts/pipelines/components/graph/linked_pipeline.vue index 225706265c3..9b4e5d471d6 100644 --- a/app/assets/javascripts/pipelines/components/graph/linked_pipeline.vue +++ b/app/assets/javascripts/pipelines/components/graph/linked_pipeline.vue @@ -7,13 +7,13 @@ import { GlTooltip, GlTooltipDirective, } from '@gitlab/ui'; +import { TYPENAME_CI_PIPELINE } from '~/graphql_shared/constants'; import { convertToGraphQLId } from '~/graphql_shared/utils'; import { BV_HIDE_TOOLTIP } from '~/lib/utils/constants'; import { __, sprintf } from '~/locale'; import CancelPipelineMutation from '~/pipelines/graphql/mutations/cancel_pipeline.mutation.graphql'; import RetryPipelineMutation from '~/pipelines/graphql/mutations/retry_pipeline.mutation.graphql'; import CiStatus from '~/vue_shared/components/ci_icon.vue'; -import { PIPELINE_GRAPHQL_TYPE } from '../../constants'; import { reportToSentry } from '../../utils'; import { ACTION_FAILURE, DOWNSTREAM, UPSTREAM } from './constants'; @@ -118,7 +118,7 @@ export default { return this.isUpstream ? 'gl-flex-direction-row-reverse' : 'gl-flex-direction-row'; }, graphqlPipelineId() { - return convertToGraphQLId(PIPELINE_GRAPHQL_TYPE, this.pipeline.id); + return convertToGraphQLId(TYPENAME_CI_PIPELINE, this.pipeline.id); }, hasUpdatePipelinePermissions() { return Boolean(this.pipeline?.userPermissions?.updatePipeline); diff --git a/app/assets/javascripts/pipelines/constants.js b/app/assets/javascripts/pipelines/constants.js index 2f37f90e625..820501089ed 100644 --- a/app/assets/javascripts/pipelines/constants.js +++ b/app/assets/javascripts/pipelines/constants.js @@ -9,7 +9,6 @@ export const FILTER_TAG_IDENTIFIER = 'tag'; export const SCHEDULE_ORIGIN = 'schedule'; export const NEEDS_PROPERTY = 'needs'; export const EXPLICIT_NEEDS_PROPERTY = 'previousStageJobsOrNeeds'; -export const PIPELINE_GRAPHQL_TYPE = 'Ci::Pipeline'; export const ICONS = { TAG: 'tag', diff --git a/app/assets/javascripts/vue_merge_request_widget/components/states/ready_to_merge.vue b/app/assets/javascripts/vue_merge_request_widget/components/states/ready_to_merge.vue index 77151ab4307..bb8990a48b1 100644 --- a/app/assets/javascripts/vue_merge_request_widget/components/states/ready_to_merge.vue +++ b/app/assets/javascripts/vue_merge_request_widget/components/states/ready_to_merge.vue @@ -15,6 +15,7 @@ import { isEmpty } from 'lodash'; import readyToMergeMixin from 'ee_else_ce/vue_merge_request_widget/mixins/ready_to_merge'; import readyToMergeQuery from 'ee_else_ce/vue_merge_request_widget/queries/states/ready_to_merge.query.graphql'; import { createAlert } from '~/flash'; +import { TYPENAME_MERGE_REQUEST } from '~/graphql_shared/constants'; import { secondsToMilliseconds } from '~/lib/utils/datetime_utility'; import simplePoll from '~/lib/utils/simple_poll'; import { __, s__, n__ } from '~/locale'; @@ -98,7 +99,7 @@ export default { }, variables() { return { - issuableId: convertToGraphQLId('MergeRequest', this.mr?.id), + issuableId: convertToGraphQLId(TYPENAME_MERGE_REQUEST, this.mr?.id), }; }, updateQuery( diff --git a/app/assets/javascripts/vue_merge_request_widget/mr_widget_options.vue b/app/assets/javascripts/vue_merge_request_widget/mr_widget_options.vue index 00024a594dc..ecbee6544ab 100644 --- a/app/assets/javascripts/vue_merge_request_widget/mr_widget_options.vue +++ b/app/assets/javascripts/vue_merge_request_widget/mr_widget_options.vue @@ -15,8 +15,9 @@ import notify from '~/lib/utils/notify'; import { sprintf, s__, __ } from '~/locale'; import Project from '~/pages/projects/project'; import SmartInterval from '~/smart_interval'; +import { TYPENAME_MERGE_REQUEST } from '~/graphql_shared/constants'; import { convertToGraphQLId } from '~/graphql_shared/utils'; -import { setFaviconOverlay } from '../lib/utils/favicon'; +import { setFaviconOverlay } from '~/lib/utils/favicon'; import Loading from './components/loading.vue'; import MrWidgetAlertMessage from './components/mr_widget_alert_message.vue'; import MrWidgetPipelineContainer from './components/mr_widget_pipeline_container.vue'; @@ -120,7 +121,7 @@ export default { }, variables() { return { - issuableId: convertToGraphQLId('MergeRequest', this.mr?.id), + issuableId: convertToGraphQLId(TYPENAME_MERGE_REQUEST, this.mr?.id), }; }, updateQuery( diff --git a/app/assets/javascripts/vue_shared/alert_details/components/system_notes/system_note.vue b/app/assets/javascripts/vue_shared/alert_details/components/system_notes/system_note.vue index 3c73f42b6b1..634b7da3def 100644 --- a/app/assets/javascripts/vue_shared/alert_details/components/system_notes/system_note.vue +++ b/app/assets/javascripts/vue_shared/alert_details/components/system_notes/system_note.vue @@ -34,7 +34,7 @@ export default { <template> <li :id="noteAnchorId" class="timeline-entry note system-note note-wrapper gl-p-0!"> - <div class="gl-display-inline-flex gl-align-items-center"> + <div class="gl-display-inline-flex gl-align-items-center gl-relative"> <div class="gl-display-inline gl-bg-white gl-text-gray-200 gl-border-gray-100 gl-border-1 gl-border-solid gl-rounded-full gl-box-sizing-content-box gl-p-3 gl-mt-n2 gl-mr-6" > diff --git a/app/assets/javascripts/vue_shared/components/filtered_search_bar/tokens/crm_contact_token.vue b/app/assets/javascripts/vue_shared/components/filtered_search_bar/tokens/crm_contact_token.vue index e0fa06c159e..c8aeac75645 100644 --- a/app/assets/javascripts/vue_shared/components/filtered_search_bar/tokens/crm_contact_token.vue +++ b/app/assets/javascripts/vue_shared/components/filtered_search_bar/tokens/crm_contact_token.vue @@ -2,6 +2,7 @@ import { GlFilteredSearchSuggestion } from '@gitlab/ui'; import { ITEM_TYPE } from '~/groups/constants'; +import { TYPENAME_CRM_CONTACT } from '~/graphql_shared/constants'; import { getIdFromGraphQLId, convertToGraphQLId } from '~/graphql_shared/utils'; import { createAlert } from '~/flash'; import { isPositiveInteger } from '~/lib/utils/number_utils'; @@ -93,7 +94,7 @@ export default { return `${getIdFromGraphQLId(contact.id)}`; }, formatContactGraphQLId(id) { - return convertToGraphQLId('CustomerRelations::Contact', id); + return convertToGraphQLId(TYPENAME_CRM_CONTACT, id); }, }, }; diff --git a/app/assets/javascripts/vue_shared/components/filtered_search_bar/tokens/crm_organization_token.vue b/app/assets/javascripts/vue_shared/components/filtered_search_bar/tokens/crm_organization_token.vue index 3f030c8698c..ff0571031b5 100644 --- a/app/assets/javascripts/vue_shared/components/filtered_search_bar/tokens/crm_organization_token.vue +++ b/app/assets/javascripts/vue_shared/components/filtered_search_bar/tokens/crm_organization_token.vue @@ -2,6 +2,7 @@ import { GlFilteredSearchSuggestion } from '@gitlab/ui'; import { ITEM_TYPE } from '~/groups/constants'; +import { TYPENAME_CRM_ORGANIZATION } from '~/graphql_shared/constants'; import { getIdFromGraphQLId, convertToGraphQLId } from '~/graphql_shared/utils'; import { createAlert } from '~/flash'; import { isPositiveInteger } from '~/lib/utils/number_utils'; @@ -90,7 +91,7 @@ export default { return `${getIdFromGraphQLId(organization.id)}`; }, formatOrganizationGraphQLId(id) { - return convertToGraphQLId('CustomerRelations::Organization', id); + return convertToGraphQLId(TYPENAME_CRM_ORGANIZATION, id); }, }, }; diff --git a/app/assets/javascripts/vue_shared/components/user_select/user_select.vue b/app/assets/javascripts/vue_shared/components/user_select/user_select.vue index 0c8cd7fd95c..3db48bf9cfb 100644 --- a/app/assets/javascripts/vue_shared/components/user_select/user_select.vue +++ b/app/assets/javascripts/vue_shared/components/user_select/user_select.vue @@ -14,6 +14,7 @@ import SidebarParticipant from '~/sidebar/components/assignees/sidebar_participa import { IssuableType } from '~/issues/constants'; import { DEFAULT_DEBOUNCE_AND_THROTTLE_MS } from '~/lib/utils/constants'; import { participantsQueries, userSearchQueries } from '~/sidebar/constants'; +import { TYPENAME_MERGE_REQUEST } from '~/graphql_shared/constants'; import { convertToGraphQLId } from '~/graphql_shared/utils'; export default { @@ -161,7 +162,7 @@ export default { } return { ...variables, - mergeRequestId: convertToGraphQLId('MergeRequest', this.issuableId), + mergeRequestId: convertToGraphQLId(TYPENAME_MERGE_REQUEST, this.issuableId), }; }, isLoading() { diff --git a/app/finders/projects_finder.rb b/app/finders/projects_finder.rb index 7226a4c0d82..401bc473216 100644 --- a/app/finders/projects_finder.rb +++ b/app/finders/projects_finder.rb @@ -236,7 +236,7 @@ class ProjectsFinder < UnionFinder end def by_language(items) - if Feature.enabled?(:project_language_search, current_user) && params[:language].present? + if params[:language].present? items.with_programming_language_id(params[:language]) else items diff --git a/app/helpers/explore_helper.rb b/app/helpers/explore_helper.rb index 721126a4f14..2967501f628 100644 --- a/app/helpers/explore_helper.rb +++ b/app/helpers/explore_helper.rb @@ -15,7 +15,7 @@ module ExploreHelper namespace_id: params[:namespace_id] } - exist_opts[:language] = params[:language] if Feature.enabled?(:project_language_search, current_user) + exist_opts[:language] = params[:language] options = exist_opts.merge(options).delete_if { |key, value| value.blank? } request_path_with_options(options) diff --git a/app/views/shared/projects/_search_form.html.haml b/app/views/shared/projects/_search_form.html.haml index 10b6b9e8f27..47e0e165276 100644 --- a/app/views/shared/projects/_search_form.html.haml +++ b/app/views/shared/projects/_search_form.html.haml @@ -28,16 +28,15 @@ - if params[:language].present? = hidden_field_tag :language, params[:language] - - if Feature.enabled?(:project_language_search, current_user) - .dropdown{ class: 'gl-m-0!' } - = dropdown_toggle(search_language_placeholder, { toggle: 'dropdown', testid: 'project-language-dropdown' }) - %ul.dropdown-menu.dropdown-menu-right.dropdown-menu-selectable + .dropdown{ class: 'gl-m-0!' } + = dropdown_toggle(search_language_placeholder, { toggle: 'dropdown', testid: 'project-language-dropdown' }) + %ul.dropdown-menu.dropdown-menu-right.dropdown-menu-selectable + %li + = link_to _('Any'), filter_projects_path(language: nil, name: nil) + - programming_languages.each do |language| %li - = link_to _('Any'), filter_projects_path(language: nil, name: nil) - - programming_languages.each do |language| - %li - = link_to filter_projects_path(language: language.id, name: nil), class: language_state_class(language) do - = language.name + = link_to filter_projects_path(language: language.id, name: nil), class: language_state_class(language) do + = language.name = submit_tag nil, class: 'gl-display-none!' diff --git a/config/feature_flags/development/project_language_search.yml b/config/feature_flags/development/project_language_search.yml deleted file mode 100644 index 2d8c24650d1..00000000000 --- a/config/feature_flags/development/project_language_search.yml +++ /dev/null @@ -1,8 +0,0 @@ ---- -name: project_language_search -introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/104167 -rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/385465 -milestone: '15.7' -type: development -group: group::workspace -default_enabled: false diff --git a/doc/development/testing_guide/best_practices.md b/doc/development/testing_guide/best_practices.md index 8672480e993..67e71dcbfce 100644 --- a/doc/development/testing_guide/best_practices.md +++ b/doc/development/testing_guide/best_practices.md @@ -415,7 +415,7 @@ results are available, and not just the first failure. - Don't assert against the absolute value of a sequence-generated attribute (see [Gotchas](../gotchas.md#do-not-assert-against-the-absolute-value-of-a-sequence-generated-attribute)). - Avoid using `expect_any_instance_of` or `allow_any_instance_of` (see - [Gotchas](../gotchas.md#do-not-assert-against-the-absolute-value-of-a-sequence-generated-attribute)). + [Gotchas](../gotchas.md#avoid-using-expect_any_instance_of-or-allow_any_instance_of-in-rspec)). - Don't supply the `:each` argument to hooks because it's the default. - On `before` and `after` hooks, prefer it scoped to `:context` over `:all` - When using `evaluate_script("$('.js-foo').testSomething()")` (or `execute_script`) which acts on a given element, diff --git a/doc/user/project/working_with_projects.md b/doc/user/project/working_with_projects.md index ce391618a62..5f3ceb51e10 100644 --- a/doc/user/project/working_with_projects.md +++ b/doc/user/project/working_with_projects.md @@ -159,7 +159,8 @@ You can also choose to hide or show archived projects. ### Filter projects by language -> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/385465) in GitLab 15.9 [with a flag](../../administration/feature_flags.md) named `project_language_search`. Enabled by default. +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/385465) in GitLab 15.9 [with a flag](../../administration/feature_flags.md) named `project_language_search`. Enabled by default. +> - [Generally available](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/110956) in GitLab 15.9. Feature flag `project_language_search` removed. You can filter projects by the programming language they use. To do this: diff --git a/lib/gitlab/usage_data_counters/ci_template_unique_counter.rb b/lib/gitlab/usage_data_counters/ci_template_unique_counter.rb index 04d1b1b4638..7f6d67e01c7 100644 --- a/lib/gitlab/usage_data_counters/ci_template_unique_counter.rb +++ b/lib/gitlab/usage_data_counters/ci_template_unique_counter.rb @@ -39,9 +39,9 @@ module Gitlab::UsageDataCounters expanded_template_name = expand_template_name(template_name) results = [expanded_template_name].tap do |result| template = Gitlab::Template::GitlabCiYmlTemplate.find(template_name.chomp('.gitlab-ci.yml')) - data = YAML.safe_load(template.content, aliases: true) - [data['include']].compact.flatten.each do |ci_include| - if ci_include_template = ci_include['template'] + data = Gitlab::Ci::Config::Yaml.load!(template.content) + [data[:include]].compact.flatten.each do |ci_include| + if ci_include_template = ci_include[:template] result.concat(all_included_templates(ci_include_template)) end end diff --git a/spec/features/dashboard/root_explore_spec.rb b/spec/features/dashboard/root_explore_spec.rb index c0d1f0de1f5..a232ebec68e 100644 --- a/spec/features/dashboard/root_explore_spec.rb +++ b/spec/features/dashboard/root_explore_spec.rb @@ -39,17 +39,5 @@ RSpec.describe 'Root explore', feature_category: :not_owned do expect(has_language_dropdown?).to eq(true) end - - context 'with project_language_search ff disabled' do - before do - stub_feature_flags(project_language_search: false) - end - - it 'is conditionally rendered' do - visit explore_projects_path - - expect(has_language_dropdown?).to eq(false) - end - end end end diff --git a/spec/finders/projects_finder_spec.rb b/spec/finders/projects_finder_spec.rb index b181c08b333..297c6f84cef 100644 --- a/spec/finders/projects_finder_spec.rb +++ b/spec/finders/projects_finder_spec.rb @@ -399,14 +399,6 @@ RSpec.describe ProjectsFinder do let(:params) { { language: ruby.id } } it { is_expected.to match_array([internal_project]) } - - context 'when project_language_search feature flag disabled' do - before do - stub_feature_flags(project_language_search: false) - end - - it { is_expected.to match_array([internal_project, public_project]) } - end end describe 'when with_issues_enabled is true' do diff --git a/spec/frontend/ci/ci_variable_list/components/ci_group_variables_spec.js b/spec/frontend/ci/ci_variable_list/components/ci_group_variables_spec.js index 3f1eebbc6a5..c0fb133b9b1 100644 --- a/spec/frontend/ci/ci_variable_list/components/ci_group_variables_spec.js +++ b/spec/frontend/ci/ci_variable_list/components/ci_group_variables_spec.js @@ -1,11 +1,10 @@ import { shallowMount } from '@vue/test-utils'; +import { TYPENAME_GROUP } from '~/graphql_shared/constants'; import { convertToGraphQLId } from '~/graphql_shared/utils'; import ciGroupVariables from '~/ci/ci_variable_list/components/ci_group_variables.vue'; import ciVariableShared from '~/ci/ci_variable_list/components/ci_variable_shared.vue'; -import { GRAPHQL_GROUP_TYPE } from '~/ci/ci_variable_list/constants'; - const mockProvide = { glFeatures: { groupScopedCiVariables: false, @@ -36,7 +35,7 @@ describe('Ci Group Variable wrapper', () => { it('are passed down the correctly to ci_variable_shared', () => { expect(findCiShared().props()).toEqual({ - id: convertToGraphQLId(GRAPHQL_GROUP_TYPE, mockProvide.groupId), + id: convertToGraphQLId(TYPENAME_GROUP, mockProvide.groupId), areScopedVariablesAvailable: false, componentName: 'GroupVariables', entity: 'group', diff --git a/spec/frontend/ci/ci_variable_list/components/ci_project_variables_spec.js b/spec/frontend/ci/ci_variable_list/components/ci_project_variables_spec.js index 7230017c560..bd1e6b17d6b 100644 --- a/spec/frontend/ci/ci_variable_list/components/ci_project_variables_spec.js +++ b/spec/frontend/ci/ci_variable_list/components/ci_project_variables_spec.js @@ -1,11 +1,10 @@ import { shallowMount } from '@vue/test-utils'; +import { TYPENAME_PROJECT } from '~/graphql_shared/constants'; import { convertToGraphQLId } from '~/graphql_shared/utils'; import ciProjectVariables from '~/ci/ci_variable_list/components/ci_project_variables.vue'; import ciVariableShared from '~/ci/ci_variable_list/components/ci_variable_shared.vue'; -import { GRAPHQL_PROJECT_TYPE } from '~/ci/ci_variable_list/constants'; - const mockProvide = { projectFullPath: '/namespace/project', projectId: 1, @@ -32,7 +31,7 @@ describe('Ci Project Variable wrapper', () => { it('Passes down the correct props to ci_variable_shared', () => { expect(findCiShared().props()).toEqual({ - id: convertToGraphQLId(GRAPHQL_PROJECT_TYPE, mockProvide.projectId), + id: convertToGraphQLId(TYPENAME_PROJECT, mockProvide.projectId), areScopedVariablesAvailable: true, componentName: 'ProjectVariables', entity: 'project', diff --git a/spec/frontend/ci/ci_variable_list/components/ci_variable_shared_spec.js b/spec/frontend/ci/ci_variable_list/components/ci_variable_shared_spec.js index 2d39bff8ce0..c977ae773db 100644 --- a/spec/frontend/ci/ci_variable_list/components/ci_variable_shared_spec.js +++ b/spec/frontend/ci/ci_variable_list/components/ci_variable_shared_spec.js @@ -6,6 +6,7 @@ import createMockApollo from 'helpers/mock_apollo_helper'; import waitForPromises from 'helpers/wait_for_promises'; import { createAlert } from '~/flash'; import { resolvers } from '~/ci/ci_variable_list/graphql/settings'; +import { TYPENAME_GROUP } from '~/graphql_shared/constants'; import { convertToGraphQLId } from '~/graphql_shared/utils'; import ciVariableShared from '~/ci/ci_variable_list/components/ci_variable_shared.vue'; @@ -227,7 +228,7 @@ describe('Ci Variable Shared Component', () => { variables: { endpoint: mockProvide.endpoint, fullPath: groupProps.fullPath, - id: convertToGraphQLId('Group', groupProps.id), + id: convertToGraphQLId(TYPENAME_GROUP, groupProps.id), variable: newVariable, }, }); diff --git a/spec/frontend/issues/list/components/issues_list_app_spec.js b/spec/frontend/issues/list/components/issues_list_app_spec.js index 1f09a8ad0e3..8281ce0ed1a 100644 --- a/spec/frontend/issues/list/components/issues_list_app_spec.js +++ b/spec/frontend/issues/list/components/issues_list_app_spec.js @@ -22,6 +22,7 @@ import { urlParams, } from 'jest/issues/list/mock_data'; import { createAlert, VARIANT_INFO } from '~/flash'; +import { TYPENAME_USER } from '~/graphql_shared/constants'; import { convertToGraphQLId, getIdFromGraphQLId } from '~/graphql_shared/utils'; import CsvImportExportButtons from '~/issuable/components/csv_import_export_buttons.vue'; import IssuableByEmail from '~/issuable/components/issuable_by_email.vue'; @@ -568,7 +569,7 @@ describe('CE IssuesListApp component', () => { it('renders all tokens alphabetically', () => { const preloadedUsers = [ - { ...mockCurrentUser, id: convertToGraphQLId('User', mockCurrentUser.id) }, + { ...mockCurrentUser, id: convertToGraphQLId(TYPENAME_USER, mockCurrentUser.id) }, ]; expect(findIssuableList().props('searchTokens')).toMatchObject([ diff --git a/spec/frontend/jobs/components/job/manual_variables_form_spec.js b/spec/frontend/jobs/components/job/manual_variables_form_spec.js index 674812931c2..a5b3b0e3b47 100644 --- a/spec/frontend/jobs/components/job/manual_variables_form_spec.js +++ b/spec/frontend/jobs/components/job/manual_variables_form_spec.js @@ -4,8 +4,8 @@ import VueApollo from 'vue-apollo'; import { nextTick } from 'vue'; import { mountExtended } from 'helpers/vue_test_utils_helper'; import createMockApollo from 'helpers/mock_apollo_helper'; +import { TYPENAME_CI_BUILD } from '~/graphql_shared/constants'; import { convertToGraphQLId } from '~/graphql_shared/utils'; -import { GRAPHQL_ID_TYPES } from '~/jobs/constants'; import waitForPromises from 'helpers/wait_for_promises'; import { redirectTo } from '~/lib/utils/url_utility'; import ManualVariablesForm from '~/jobs/components/job/manual_variables_form.vue'; @@ -152,7 +152,7 @@ describe('Manual Variables Form', () => { expect(wrapper.vm.$apollo.mutate).toHaveBeenCalledWith({ mutation: retryJobMutation, variables: { - id: convertToGraphQLId(GRAPHQL_ID_TYPES.ciBuild, mockId), + id: convertToGraphQLId(TYPENAME_CI_BUILD, mockId), variables: [ { key: 'new key', diff --git a/spec/frontend/pipelines/graph/linked_pipeline_spec.js b/spec/frontend/pipelines/graph/linked_pipeline_spec.js index 399d52c3dff..f396fe2aff4 100644 --- a/spec/frontend/pipelines/graph/linked_pipeline_spec.js +++ b/spec/frontend/pipelines/graph/linked_pipeline_spec.js @@ -5,10 +5,10 @@ import { mount } from '@vue/test-utils'; import createMockApollo from 'helpers/mock_apollo_helper'; import { extendedWrapper } from 'helpers/vue_test_utils_helper'; import { convertToGraphQLId } from '~/graphql_shared/utils'; +import { TYPENAME_CI_PIPELINE } from '~/graphql_shared/constants'; import { BV_HIDE_TOOLTIP } from '~/lib/utils/constants'; import { ACTION_FAILURE, UPSTREAM, DOWNSTREAM } from '~/pipelines/components/graph/constants'; import LinkedPipelineComponent from '~/pipelines/components/graph/linked_pipeline.vue'; -import { PIPELINE_GRAPHQL_TYPE } from '~/pipelines/constants'; import CancelPipelineMutation from '~/pipelines/graphql/mutations/cancel_pipeline.mutation.graphql'; import RetryPipelineMutation from '~/pipelines/graphql/mutations/retry_pipeline.mutation.graphql'; import CiStatus from '~/vue_shared/components/ci_icon.vue'; @@ -219,7 +219,7 @@ describe('Linked pipeline', () => { expect(wrapper.vm.$apollo.mutate).toHaveBeenCalledWith({ mutation: RetryPipelineMutation, variables: { - id: convertToGraphQLId(PIPELINE_GRAPHQL_TYPE, mockPipeline.id), + id: convertToGraphQLId(TYPENAME_CI_PIPELINE, mockPipeline.id), }, }); }); @@ -285,7 +285,7 @@ describe('Linked pipeline', () => { expect(wrapper.vm.$apollo.mutate).toHaveBeenCalledWith({ mutation: CancelPipelineMutation, variables: { - id: convertToGraphQLId(PIPELINE_GRAPHQL_TYPE, mockPipeline.id), + id: convertToGraphQLId(TYPENAME_CI_PIPELINE, mockPipeline.id), }, }); }); diff --git a/workhorse/go.mod b/workhorse/go.mod index 537aa130dc6..37563e7ef4c 100644 --- a/workhorse/go.mod +++ b/workhorse/go.mod @@ -33,17 +33,17 @@ require ( golang.org/x/image v0.0.0-20220722155232-062f8c9fd539 golang.org/x/lint v0.0.0-20210508222113-6edffad5e616 golang.org/x/net v0.5.0 - golang.org/x/oauth2 v0.2.0 + golang.org/x/oauth2 v0.4.0 golang.org/x/tools v0.2.0 - google.golang.org/grpc v1.52.3 + google.golang.org/grpc v1.53.0 google.golang.org/protobuf v1.28.1 honnef.co/go/tools v0.3.3 ) require ( cloud.google.com/go v0.107.0 // indirect - cloud.google.com/go/compute v1.13.0 // indirect - cloud.google.com/go/compute/metadata v0.2.2 // indirect + cloud.google.com/go/compute v1.15.1 // indirect + cloud.google.com/go/compute/metadata v0.2.3 // indirect cloud.google.com/go/iam v0.8.0 // indirect cloud.google.com/go/monitoring v1.9.0 // indirect cloud.google.com/go/profiler v0.1.0 // indirect @@ -64,7 +64,7 @@ require ( github.com/beorn7/perks v1.0.1 // indirect github.com/census-instrumentation/opencensus-proto v0.4.1 // indirect github.com/certifi/gocertifi v0.0.0-20210507211836-431795d63e8d // indirect - github.com/cespare/xxhash/v2 v2.1.2 // indirect + github.com/cespare/xxhash/v2 v2.2.0 // indirect github.com/client9/reopen v1.0.0 // indirect github.com/davecgh/go-spew v1.1.1 // indirect github.com/dlclark/regexp2 v1.4.0 // indirect diff --git a/workhorse/go.sum b/workhorse/go.sum index c88f844dcf9..8c0db7dd590 100644 --- a/workhorse/go.sum +++ b/workhorse/go.sum @@ -117,13 +117,15 @@ cloud.google.com/go/compute v1.7.0/go.mod h1:435lt8av5oL9P3fv1OEzSbSUe+ybHXGMPQH cloud.google.com/go/compute v1.10.0/go.mod h1:ER5CLbMxl90o2jtNbGSbtfOpQKR0t15FOtRsugnLrlU= cloud.google.com/go/compute v1.12.0/go.mod h1:e8yNOBcBONZU1vJKCvCoDw/4JQsA0dpM4x/6PIIOocU= cloud.google.com/go/compute v1.12.1/go.mod h1:e8yNOBcBONZU1vJKCvCoDw/4JQsA0dpM4x/6PIIOocU= -cloud.google.com/go/compute v1.13.0 h1:AYrLkB8NPdDRslNp4Jxmzrhdr03fUAIDbiGFjLWowoU= cloud.google.com/go/compute v1.13.0/go.mod h1:5aPTS0cUNMIc1CE546K+Th6weJUNQErARyZtRXDJ8GE= +cloud.google.com/go/compute v1.15.1 h1:7UGq3QknM33pw5xATlpzeoomNxsacIVvTqTTvbfajmE= +cloud.google.com/go/compute v1.15.1/go.mod h1:bjjoF/NtFUrkD/urWfdHaKuOPDR5nWIs63rR+SXhcpA= cloud.google.com/go/compute/metadata v0.1.0/go.mod h1:Z1VN+bulIf6bt4P/C37K4DyZYZEXYonfTBHHFPO/4UU= cloud.google.com/go/compute/metadata v0.2.0/go.mod h1:zFmK7XCadkQkj6TtorcaGlCW1hT1fIilQDwofLpJ20k= cloud.google.com/go/compute/metadata v0.2.1/go.mod h1:jgHgmJd2RKBGzXqF5LR2EZMGxBkeanZ9wwa75XHJgOM= -cloud.google.com/go/compute/metadata v0.2.2 h1:aWKAjYaBaOSrpKl57+jnS/3fJRQnxL7TvR/u1VVbt6k= cloud.google.com/go/compute/metadata v0.2.2/go.mod h1:jgHgmJd2RKBGzXqF5LR2EZMGxBkeanZ9wwa75XHJgOM= +cloud.google.com/go/compute/metadata v0.2.3 h1:mg4jlk7mCAj6xXp9UJ4fjI9VUI5rubuGBW5aJ7UnBMY= +cloud.google.com/go/compute/metadata v0.2.3/go.mod h1:VAV5nSsACxMJvgaAuX6Pk2AawlZn8kiOGuCv6gTkwuA= cloud.google.com/go/contactcenterinsights v1.3.0/go.mod h1:Eu2oemoePuEFc/xKFPjbTuPSj0fYJcPls9TFlPNnHHY= cloud.google.com/go/contactcenterinsights v1.4.0/go.mod h1:L2YzkGbPsv+vMQMCADxJoT9YiTTnSEd6fEvCeHTYVck= cloud.google.com/go/container v1.6.0/go.mod h1:Xazp7GjJSeUYo688S+6J5V+n/t+G5sKBTFkKNudGRxg= @@ -626,8 +628,9 @@ github.com/certifi/gocertifi v0.0.0-20210507211836-431795d63e8d h1:S2NE3iHSwP0XV github.com/certifi/gocertifi v0.0.0-20210507211836-431795d63e8d/go.mod h1:sGbDF6GwGcLpkNXPUTkMRoywsNa/ol15pxFe6ERfguA= github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= -github.com/cespare/xxhash/v2 v2.1.2 h1:YRXhKfTDauu4ajMg1TPgFO5jnlC2HCbmLXMcTG5cbYE= github.com/cespare/xxhash/v2 v2.1.2/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj44= +github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/checkpoint-restore/go-criu/v4 v4.1.0/go.mod h1:xUQBLp4RLc5zJtWY++yjOoMoB5lihDt7fai+75m+rGw= github.com/checkpoint-restore/go-criu/v5 v5.0.0/go.mod h1:cfwC0EG7HMUenopBsUf9d89JlCLQIfgVcNsNN0t6T2M= github.com/checkpoint-restore/go-criu/v5 v5.3.0/go.mod h1:E/eQpaFtUKGOOSEBZgmKAcn+zUUwWxqcaKZlF54wK8E= @@ -2152,8 +2155,9 @@ golang.org/x/oauth2 v0.0.0-20220909003341-f21342109be1/go.mod h1:h4gKUeWbJ4rQPri golang.org/x/oauth2 v0.0.0-20221006150949-b44042a4b9c1/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg= golang.org/x/oauth2 v0.0.0-20221014153046-6fdb5e3db783/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg= golang.org/x/oauth2 v0.1.0/go.mod h1:G9FE4dLTsbXUu90h/Pf85g4w1D+SSAgR+q46nJZ8M4A= -golang.org/x/oauth2 v0.2.0 h1:GtQkldQ9m7yvzCL1V+LrYow3Khe0eJH0w7RbX/VbaIU= golang.org/x/oauth2 v0.2.0/go.mod h1:Cwn6afJ8jrQwYMxQDTpISoXmXW9I6qF6vDeuuoX3Ibs= +golang.org/x/oauth2 v0.4.0 h1:NF0gk8LVPg1Ml7SSbGyySuoxdsXitj7TvgvuRxIMc/M= +golang.org/x/oauth2 v0.4.0/go.mod h1:RznEsdpjGAINPTOF0UH/t+xJ75L18YO3Ho6Pyn+uRec= golang.org/x/sync v0.0.0-20170517211232-f52d1811a629/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -2701,8 +2705,8 @@ google.golang.org/grpc v1.49.0/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCD google.golang.org/grpc v1.50.0/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI= google.golang.org/grpc v1.50.1/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI= google.golang.org/grpc v1.51.0/go.mod h1:wgNDFcnuBGmxLKI/qn4T+m5BtEBYXJPvibbUPsAIPww= -google.golang.org/grpc v1.52.3 h1:pf7sOysg4LdgBqduXveGKrcEwbStiK2rtfghdzlUYDQ= -google.golang.org/grpc v1.52.3/go.mod h1:pu6fVzoFb+NBYNAvQL08ic+lvB2IojljRYuun5vorUY= +google.golang.org/grpc v1.53.0 h1:LAv2ds7cmFV/XTS3XG1NneeENYrXGmorPxsBbptIjNc= +google.golang.org/grpc v1.53.0/go.mod h1:OnIrk0ipVdj4N5d9IUoFUx72/VlD7+jUsHwZgwSMQpw= google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.1.0/go.mod h1:6Kw0yEErY5E/yWrBtf03jp27GLLJujG4z/JK95pnjjw= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= |