diff --git a/.gitlab/CODEOWNERS b/.gitlab/CODEOWNERS index 7f289351fa7..5f3f060ac4f 100644 --- a/.gitlab/CODEOWNERS +++ b/.gitlab/CODEOWNERS @@ -952,6 +952,7 @@ lib/gitlab/checks/** /doc/user/project/push_options.md @aqualls /doc/user/project/quick_actions.md @msedlakjakubowski /doc/user/project/releases/ @phillipwells +/doc/user/project/releases/release_evidence.md @eread /doc/user/project/remote_development/ @ashrafkhamis /doc/user/project/repository/ @aqualls /doc/user/project/repository/file_finder.md @ashrafkhamis diff --git a/.rubocop_todo/gettext/static_identifier.yml b/.rubocop_todo/gettext/static_identifier.yml new file mode 100644 index 00000000000..c330ffe1482 --- /dev/null +++ b/.rubocop_todo/gettext/static_identifier.yml @@ -0,0 +1,28 @@ +--- +Gettext/StaticIdentifier: + Details: grace period + Exclude: + - 'app/graphql/types/project_type.rb' + - 'app/models/integrations/apple_app_store.rb' + - 'app/models/integrations/confluence.rb' + - 'app/models/integrations/google_play.rb' + - 'app/services/import/fogbugz_service.rb' + - 'app/services/issuable_links/create_service.rb' + - 'app/services/issues/set_crm_contacts_service.rb' + - 'app/services/projects/create_from_template_service.rb' + - 'app/services/security/ci_configuration/base_create_service.rb' + - 'app/services/users/banned_user_base_service.rb' + - 'app/services/work_items/widgets/hierarchy_service/base_service.rb' + - 'ee/app/controllers/admin/licenses_controller.rb' + - 'ee/app/controllers/subscriptions/groups_controller.rb' + - 'ee/app/mailers/ee/emails/admin_notification.rb' + - 'ee/app/mailers/emails/namespace_storage_usage_mailer.rb' + - 'ee/app/models/ee/member.rb' + - 'ee/app/models/integrations/github.rb' + - 'ee/app/services/ee/projects/create_from_template_service.rb' + - 'ee/app/services/security/security_orchestration_policies/policy_configuration_validation_service.rb' + - 'ee/app/services/timebox/rollup_report_service.rb' + - 'ee/app/services/timebox_report_service.rb' + - 'ee/spec/controllers/groups/security/policies_controller_spec.rb' + - 'ee/spec/features/registrations/identity_verification_spec.rb' + - 'lib/gitlab/github_import/settings.rb' diff --git a/GITALY_SERVER_VERSION b/GITALY_SERVER_VERSION index 7fe3c5c323f..c71ea0ca833 100644 --- a/GITALY_SERVER_VERSION +++ b/GITALY_SERVER_VERSION @@ -1 +1 @@ -3da9f535e6e0c9194e2201ef389171c84ab8c0dc +5db2d4b7c1b5f2cdb4dbf5c28b31b21e8d6f19e9 diff --git a/GITLAB_KAS_VERSION b/GITLAB_KAS_VERSION index 9f28d5d9d5e..3ac9201d3ac 100644 --- a/GITLAB_KAS_VERSION +++ b/GITLAB_KAS_VERSION @@ -1 +1 @@ -v15.11.0 +v16.0.0-rc1 diff --git a/app/assets/javascripts/boards/components/board_column.vue b/app/assets/javascripts/boards/components/board_column.vue index df280a03ac3..b2054d76e95 100644 --- a/app/assets/javascripts/boards/components/board_column.vue +++ b/app/assets/javascripts/boards/components/board_column.vue @@ -93,6 +93,7 @@ export default { diff --git a/app/assets/javascripts/boards/constants.js b/app/assets/javascripts/boards/constants.js index d12270e58a4..7fe89ffbb52 100644 --- a/app/assets/javascripts/boards/constants.js +++ b/app/assets/javascripts/boards/constants.js @@ -6,6 +6,7 @@ import updateEpicTitleMutation from '~/sidebar/queries/update_epic_title.mutatio import destroyBoardListMutation from './graphql/board_list_destroy.mutation.graphql'; import updateBoardListMutation from './graphql/board_list_update.mutation.graphql'; +import toggleListCollapsedMutation from './graphql/client/board_toggle_collapsed.mutation.graphql'; import issueSetSubscriptionMutation from './graphql/issue_set_subscription.mutation.graphql'; import issueSetTitleMutation from './graphql/issue_set_title.mutation.graphql'; import groupBoardQuery from './graphql/group_board.query.graphql'; @@ -76,6 +77,12 @@ export const updateListQueries = { }, }; +export const toggleCollapsedMutations = { + [TYPE_ISSUE]: { + mutation: toggleListCollapsedMutation, + }, +}; + export const deleteListQueries = { [TYPE_ISSUE]: { mutation: destroyBoardListMutation, diff --git a/app/assets/javascripts/boards/graphql/client/board_toggle_collapsed.mutation.graphql b/app/assets/javascripts/boards/graphql/client/board_toggle_collapsed.mutation.graphql new file mode 100644 index 00000000000..890152989eb --- /dev/null +++ b/app/assets/javascripts/boards/graphql/client/board_toggle_collapsed.mutation.graphql @@ -0,0 +1,9 @@ +#import "ee_else_ce/boards/graphql/board_list.fragment.graphql" + +mutation toggleListCollapsed($list: BoardList!, $collapsed: Boolean!) { + clientToggleListCollapsed(list: $list, collapsed: $collapsed) @client { + list { + ...BoardListFragment + } + } +} diff --git a/app/assets/javascripts/graphql_shared/issuable_client.js b/app/assets/javascripts/graphql_shared/issuable_client.js index 740eb722629..ebe349b7411 100644 --- a/app/assets/javascripts/graphql_shared/issuable_client.js +++ b/app/assets/javascripts/graphql_shared/issuable_client.js @@ -217,6 +217,22 @@ export const resolvers = { }); return boardItem; }, + clientToggleListCollapsed(_, { list = {}, collapsed = false }) { + return { + list: { + ...list, + collapsed, + }, + }; + }, + clientToggleEpicListCollapsed(_, { list = {}, collapsed = false }) { + return { + list: { + ...list, + collapsed, + }, + }; + }, }, }; diff --git a/app/assets/javascripts/lib/utils/datetime/date_format_utility.js b/app/assets/javascripts/lib/utils/datetime/date_format_utility.js index 04a82836f69..d54410a55e6 100644 --- a/app/assets/javascripts/lib/utils/datetime/date_format_utility.js +++ b/app/assets/javascripts/lib/utils/datetime/date_format_utility.js @@ -388,9 +388,10 @@ export const formatTimeAsSummary = ({ seconds, hours, days, minutes, weeks, mont }; export const durationTimeFormatted = (duration) => { - const date = new Date(duration * 1000); + const date = new Date(Math.abs(duration) * 1000); - let hh = date.getUTCHours(); + const days = date.getUTCDate() - 1; + let hh = 24 * days + date.getUTCHours(); let mm = date.getUTCMinutes(); let ss = date.getSeconds(); @@ -404,7 +405,7 @@ export const durationTimeFormatted = (duration) => { ss = `0${ss}`; } - return `${hh}:${mm}:${ss}`; + return `${duration < 0 ? '-' : ''}${hh}:${mm}:${ss}`; }; /** diff --git a/app/assets/javascripts/super_sidebar/components/menu_section.vue b/app/assets/javascripts/super_sidebar/components/menu_section.vue index 702678b9e15..86bf3837c10 100644 --- a/app/assets/javascripts/super_sidebar/components/menu_section.vue +++ b/app/assets/javascripts/super_sidebar/components/menu_section.vue @@ -66,7 +66,7 @@ export default {