summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2023-02-09 06:07:49 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2023-02-09 06:07:49 +0000
commitc789d0002c97a00e262be992adfcc0d26b72910e (patch)
treef292cf7810c5c4b8318c29f6486e20e4a04277c2
parent38ff3a81189c8323d323946afcf7dad62c84b9aa (diff)
downloadgitlab-ce-c789d0002c97a00e262be992adfcc0d26b72910e.tar.gz
Add latest changes from gitlab-org/gitlab@master
-rw-r--r--app/assets/javascripts/ci/ci_variable_list/components/ci_group_variables.vue10
-rw-r--r--app/assets/javascripts/ci/ci_variable_list/components/ci_project_variables.vue10
-rw-r--r--app/assets/javascripts/ci/ci_variable_list/constants.js3
-rw-r--r--app/assets/javascripts/ci/ci_variable_list/graphql/settings.js23
-rw-r--r--app/assets/javascripts/graphql_shared/constants.js5
-rw-r--r--app/assets/javascripts/jobs/components/job/manual_variables_form.vue7
-rw-r--r--app/assets/javascripts/jobs/components/job/sidebar/sidebar_header.vue4
-rw-r--r--app/assets/javascripts/jobs/constants.js5
-rw-r--r--app/assets/javascripts/packages_and_registries/package_registry/pages/details.vue3
-rw-r--r--app/assets/javascripts/pipelines/components/graph/linked_pipeline.vue4
-rw-r--r--app/assets/javascripts/pipelines/constants.js1
-rw-r--r--app/assets/javascripts/vue_merge_request_widget/components/states/ready_to_merge.vue3
-rw-r--r--app/assets/javascripts/vue_merge_request_widget/mr_widget_options.vue5
-rw-r--r--app/assets/javascripts/vue_shared/alert_details/components/system_notes/system_note.vue2
-rw-r--r--app/assets/javascripts/vue_shared/components/filtered_search_bar/tokens/crm_contact_token.vue3
-rw-r--r--app/assets/javascripts/vue_shared/components/filtered_search_bar/tokens/crm_organization_token.vue3
-rw-r--r--app/assets/javascripts/vue_shared/components/user_select/user_select.vue3
-rw-r--r--app/finders/projects_finder.rb2
-rw-r--r--app/helpers/explore_helper.rb2
-rw-r--r--app/views/shared/projects/_search_form.html.haml17
-rw-r--r--config/feature_flags/development/project_language_search.yml8
-rw-r--r--doc/development/testing_guide/best_practices.md2
-rw-r--r--doc/user/project/working_with_projects.md3
-rw-r--r--lib/gitlab/usage_data_counters/ci_template_unique_counter.rb6
-rw-r--r--spec/features/dashboard/root_explore_spec.rb12
-rw-r--r--spec/finders/projects_finder_spec.rb8
-rw-r--r--spec/frontend/ci/ci_variable_list/components/ci_group_variables_spec.js5
-rw-r--r--spec/frontend/ci/ci_variable_list/components/ci_project_variables_spec.js5
-rw-r--r--spec/frontend/ci/ci_variable_list/components/ci_variable_shared_spec.js3
-rw-r--r--spec/frontend/issues/list/components/issues_list_app_spec.js3
-rw-r--r--spec/frontend/jobs/components/job/manual_variables_form_spec.js4
-rw-r--r--spec/frontend/pipelines/graph/linked_pipeline_spec.js6
-rw-r--r--workhorse/go.mod10
-rw-r--r--workhorse/go.sum16
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=