diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2021-03-18 00:11:29 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2021-03-18 00:11:29 +0300 |
commit | a0b4a462b0c6f333651ae9e0c0ca1e5794e7b4e1 (patch) | |
tree | 37dce5303162eaf08841616347de9f65ba8dabf7 | |
parent | e388691e4a5b5b69be903c7eceb606b853719cd5 (diff) |
Add latest changes from gitlab-org/gitlab@master
599 files changed, 2517 insertions, 3462 deletions
diff --git a/.haml-lint.yml b/.haml-lint.yml index 4adb5e62f88..94e84462862 100644 --- a/.haml-lint.yml +++ b/.haml-lint.yml @@ -150,6 +150,9 @@ linters: - Style/WordArray - Style/ZeroLengthPredicate + # WIP See https://gitlab.com/gitlab-org/gitlab/-/issues/207950 + - Cop/UserAdmin + RubyComments: enabled: true diff --git a/.rubocop.yml b/.rubocop.yml index 8f5407c64c5..9413360e89e 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -629,3 +629,14 @@ Lint/RedundantSafeNavigation: Style/ClassEqualityComparison: Enabled: true + +# WIP See https://gitlab.com/gitlab-org/gitlab/-/issues/207950 +Cop/UserAdmin: + Enabled: true + Exclude: + - 'app/controllers/admin/sessions_controller.rb' + - 'app/controllers/concerns/enforces_admin_authentication.rb' + - 'app/policies/base_policy.rb' + - 'lib/gitlab/auth/current_user_mode.rb' + - 'spec/**/*.rb' + - 'ee/spec/**/*.rb' diff --git a/.rubocop_manual_todo.yml b/.rubocop_manual_todo.yml index 97217081e29..14b4cd028a0 100644 --- a/.rubocop_manual_todo.yml +++ b/.rubocop_manual_todo.yml @@ -2497,3 +2497,79 @@ Style/HashTransformation: - 'spec/support/helpers/graphql_helpers.rb' - 'spec/support/import_export/project_tree_expectations.rb' - 'spec/support/shared_contexts/services/projects/container_repository/delete_tags_service_shared_context.rb' + +Style/ClassEqualityComparison: + Exclude: + - spec/lib/peek/views/active_record_spec.rb + - ee/spec/lib/peek/views/active_record_spec.rb + +# WIP See https://gitlab.com/gitlab-org/gitlab/-/issues/207950 +Cop/UserAdmin: + Exclude: + - 'app/controllers/admin/impersonations_controller.rb' + - 'app/controllers/concerns/spammable_actions.rb' + - 'app/controllers/sessions_controller.rb' + - 'app/finders/autocomplete/routes_finder.rb' + - 'app/finders/ci/jobs_finder.rb' + - 'app/finders/ci/runners_finder.rb' + - 'app/finders/personal_access_tokens_finder.rb' + - 'app/finders/users_finder.rb' + - 'app/graphql/mutations/admin/sidekiq_queues/delete_jobs.rb' + - 'app/graphql/resolvers/admin/analytics/usage_trends/measurements_resolver.rb' + - 'app/helpers/application_helper.rb' + - 'app/helpers/import_helper.rb' + - 'app/helpers/nav_helper.rb' + - 'app/helpers/projects_helper.rb' + - 'app/helpers/search_helper.rb' + - 'app/helpers/user_callouts_helper.rb' + - 'app/helpers/users_helper.rb' + - 'app/helpers/visibility_level_helper.rb' + - 'app/models/concerns/protected_ref_access.rb' + - 'app/models/concerns/spammable.rb' + - 'app/models/issue_collection.rb' + - 'app/models/merge_requests_closing_issues.rb' + - 'app/models/protected_branch.rb' + - 'app/models/user.rb' + - 'app/policies/note_policy.rb' + - 'app/serializers/deploy_key_entity.rb' + - 'app/services/auth/container_registry_authentication_service.rb' + - 'app/services/emails/create_service.rb' + - 'app/services/projects/enable_deploy_key_service.rb' + - 'app/services/projects/fork_service.rb' + - 'app/services/users/build_service.rb' + - 'ee/app/controllers/ee/projects_controller.rb' + - 'ee/app/graphql/mutations/admin/analytics/devops_adoption/segments/mixins.rb' + - 'ee/app/graphql/resolvers/admin/analytics/devops_adoption/segments_resolver.rb' + - 'ee/app/helpers/ee/dashboard_helper.rb' + - 'ee/app/helpers/ee/import_helper.rb' + - 'ee/app/helpers/ee/subscribable_banner_helper.rb' + - 'ee/app/helpers/ee/user_callouts_helper.rb' + - 'ee/app/helpers/license_monitoring_helper.rb' + - 'ee/app/helpers/push_rules_helper.rb' + - 'ee/app/models/concerns/ee/protected_ref_access.rb' + - 'ee/app/models/ee/user.rb' + - 'ee/app/models/protected_environment/deploy_access_level.rb' + - 'ee/app/policies/ee/group_policy.rb' + - 'ee/app/policies/ee/project_policy.rb' + - 'ee/app/services/ee/groups/create_service.rb' + - 'ee/app/services/ee/groups/update_service.rb' + - 'ee/app/services/ee/projects/update_service.rb' + - 'ee/lib/ee/api/helpers.rb' + - 'ee/lib/ee/gitlab/git_access.rb' + - 'lib/api/award_emoji.rb' + - 'lib/api/ci/runners.rb' + - 'lib/api/entities/runner_details.rb' + - 'lib/api/entities/user_safe.rb' + - 'lib/api/groups.rb' + - 'lib/api/helpers.rb' + - 'lib/api/personal_access_tokens.rb' + - 'lib/api/users.rb' + - 'lib/api/v3/github.rb' + - 'lib/constraints/admin_constrainer.rb' + - 'lib/gitlab/auth.rb' + - 'lib/gitlab/background_migration/user_mentions/models/group.rb' + - 'lib/gitlab/ci/runner_instructions.rb' + - 'lib/gitlab/import_export/members_mapper.rb' + - 'lib/gitlab/performance_bar.rb' + - 'lib/gitlab/visibility_level.rb' + - 'qa/qa/runtime/api/client.rb' diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index deb7f287f76..ffa4ef8bd7b 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -32,24 +32,6 @@ Graphql/IDType: Layout/ArgumentAlignment: Enabled: false -# Offense count: 11 -# Cop supports --auto-correct. -# Configuration parameters: EnforcedStyleAlignWith, Severity. -# SupportedStylesAlignWith: start_of_line, begin -Layout/BeginEndAlignment: - Exclude: - - 'app/controllers/groups/shared_projects_controller.rb' - - 'app/workers/concerns/reactive_cacheable_worker.rb' - - 'ee/app/services/security/token_revocation_service.rb' - - 'ee/lib/gitlab/analytics/cycle_analytics/summary/group/deploy.rb' - - 'ee/lib/gitlab/ci/config/entry/vault/secret.rb' - - 'lib/api/internal/base.rb' - - 'lib/atlassian/jira_connect/serializers/build_entity.rb' - - 'lib/gitlab/ci/jwt.rb' - - 'lib/gitlab/external_authorization/client.rb' - - 'lib/gitlab/phabricator_import/project_creator.rb' - - 'scripts/gitaly_test.rb' - # Offense count: 54 # Cop supports --auto-correct. # Configuration parameters: AllowAliasSyntax, AllowedMethods. diff --git a/CHANGELOG.md b/CHANGELOG.md index faaf5c97a86..30fdc3cbaaf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,533 @@ documentation](doc/development/changelog.md) for instructions on adding your own entry. +## 13.10.0 (2021-03-22) + +### Security (3 changes) + +- Workhorse: prevent escaped router path traversal. +- Workhorse: Stop logging when path is excluded. +- Patch Kramdown syntax highlighter gem. + +### Removed (2 changes) + +- Remove Remove from board button from board sidebar. !53946 +- Remove workaround for icon loading in Chrome 84. !56114 + +### Fixed (99 changes, 23 of them are from the community) + +- Fix button alignment in design management header. !48003 +- Updated UI text to match style guidelines. !50383 +- Don't close auto suggest select boxes on click if only the mouseup (but not the mousedown) event happened outside the box. !51139 (Simon Stieger @sim0) +- Fix Auto DevOps deploys that use a default branch that's not named 'master'. !53280 (Mitchell Cash @MitchellCash) +- Correct job artifacts API download for expired and locked files. !53567 (Fabio Huser) +- Fix project import error occurring due to default visibility. !53827 (Jonas Wälter @wwwjon) +- Fix relative URL with composer package. !53918 +- Cleanup incorrect data in projects.has_external_issue_tracker. !53936 +- Fix not skipped manual and delayed DAG jobs. !54073 +- Skip orphaned pool repositories on restore. !54112 +- Add space next to icons in epic issue list. !54138 (Yogi (@yo)) +- Render version dropdowns in MR changes view above tab navbar. !54159 (Simon Stieger @sim0) +- Do not show button to resolve discussion opening an issue when issues are disabled. !54263 +- Hide issue count and link in project list for projects with disabled issues. !54275 (Simon Stieger @sim0) +- Handle GlobalIDs with invalid resource names. !54290 +- Fix overflowing width - at mention container. !54377 +- Update k8s version for EKS cluster. !54389 (Vincent Firmin @winkies) +- React to new DOM nodes being added to the page to bind the user information popover to them. !54411 +- move create_release_evidence sidekiq queue out of the cronjob namespace. !54432 +- Fix copy to clipboard tooltip button. !54472 +- Fix bold text mismatch in MR ⚙ menu. !54531 +- Wrap long code lines in markdown. !54540 +- Hide repeated trial offers on self-hosted instances. !54550 +- Fix bug when snippet blobs array contain a nil value. !54552 +- Fix the npm instance level API to exclude subgroups. !54554 +- Fix the value of `$CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX` when used in group with a name containing uppercase letters. !54559 (Eric Engestrom @1ace) +- Fixed typo on Two-Factor Authentication page. !54565 (Jani Uusitalo @uusijani) +- Forcibly load OpenSSL::X509::DEFAULT_CERT_FILE. !54569 +- Stop scrollbar stretching filtered search box. !54574 +- Correctly style Dark Mode application header in profile preferences. !54575 (Simon Stieger @sim0) +- Prevent removal of the last group owner if the last group owner is a blocked user. !54587 (Jonas Wälter @wwwjon) +- Fix style issue with "reply" placeholder textarea in firefox. !54592 +- Update batch_loader gem to v2.0.0. !54639 +- Fix rendering of projects when the last pipeline changes during rendering. !54651 +- Search: Log search.scope for the default scope. !54684 +- Fix double scrollbar in ref selector dropdown. !54719 +- Fix double scrollbar issue in milestone selector dropdown. !54734 +- Skip two factor setup for help pages. !54739 +- Fixed diff notes GraphQL mutation not allowing comments on deleted lines. !54801 +- Expand left sidebar `Issues` when viewing project iterations. !54815 +- Added a missing class to reply placeholder. !54817 +- Renamed the second project panel to group. !54834 (Niklas van Schrick @Taucher2003) +- Fix double scrollbars in some dropdowns. !54837 +- Fix pipeline notifications for Webex Teams / Unify Circuit integrations. !54852 +- Github Importer: Import Pull request "merged_at" attribute. !54862 +- Fix UTF-8 characters not working with Azure Blob storage. !54875 +- Upgrade gitlab-sidekiq-fetcher for correctly detecting interrupted jobs when Sidekiq pods are restarted. !54881 +- Include shared with groups in list of authorized groups. !54894 +- Fix `@` autocomplete selecting the loading icon. !54925 +- Fix status cache for upstream pipelines. !54937 +- Update gitlab-sidekiq-fetcher to 0.5.5 to handle namespaced queues. !55013 +- Use gitlab_web_url (if it exists) for issue title links in Issue lists. !55021 +- Fix issue with loading the repository compare page. !55058 +- Fix argument type for background migration. !55097 +- reconcile source installation and upgrade docs. !55170 (Jörg Behrmann @behrmann) +- Sync the maven metadata file upon package deletion through the UI. !55207 +- Fix empty field in custom notification events modal. !55313 (Kev @KevSlashNull) +- Fix 500 error for long commit messages. !55320 +- Include MRs for merge commits for changelogs. !55371 +- GithubImporter: Add Merge request approval only if it does not exists yet. !55376 +- Fix assignees search to show only project members. !55396 +- Do not break word in the code blocks under Safari. !55405 +- Fix typo in pipeline status email. !55412 (Gabriel Berke-Williams) +- Fix inconsistent heading style in email diffs. !55420 +- Ensure Project Approvals API casts to boolean. !55492 +- Update fog-aws to v3.9.0. !55528 +- Handle relative position on issue move or clone. !55555 +- Fix horizontal alignment of MR Changes cog menu dropdown checkboxes. !55591 +- checks: Skip LFS checks when deleting refs. !55609 +- Fix edited timestamp updated when transforming / resolving comments. !55671 (Mycroft Kang @TaehyeokKang) +- Allow saving repository weights after a storage has been removed. !55689 +- Resolve project from branch in commit resolver. !55694 +- Update validate_url gem. !55706 +- Fixes: No such file or directory lib/pager_duty/validator/schemas/message.json. !55725 +- Fix fork thumbnail overflow. !55764 +- Change terraform_states.locked_by_user_id foreign key to SET NULL. !55813 +- Fix invite member modal dropdown checkbox styling. !55832 (Kev @KevSlashNull) +- Reenable OAuth password grants without client credentials. !55873 +- Fixed vestigial Anchor links in doc/development/usage_ping/dictionary.md. !55874 (Raimund Hook) +- Fix 'viewed' checkbox in single-file view mode. !55922 +- Fix Web Project Export rate limiting scope. !55975 +- Remove merge manually message. !56016 +- fix stringify empty position object. !56037 +- Fix diff comment hidden dropdown. !56072 +- Handle RestClient errors in Discord integration. !56112 +- Turn off native autocomplete for ref selector components. !56128 +- Handle commits without descriptions for changelogs. !56224 +- Support maven plugins packaging in the maven metadata sync worker. !56229 +- Use gitlab-fog-google instead of upstream fog-google gem. !56245 +- Fix styling of "Enabled OAuth sign-in sources" checkboxes. !56254 +- Sanitize issue description in search result. !56256 +- Fix bug in wiki page destroy API endpoint when an error is raised. !56285 +- Correct generated maven repository instruction for Gradle Groovy DSL. !56318 (Cromefire_ (@cromefire_)) +- Add labels to GlToggles. !56387 +- Fixed error handling GraphQL API when issue board creation fails. !56467 +- Hide fork count and link in project list where forks are disabled. !56520 (Simon Stieger @sim0) +- Fix upgrade banner for Jira issues showing on group / instance level integrations. !56628 +- Fix tooltips failing to hide in commit graph on Firefox. !56631 (Jonathan Duncan) +- Hide MR count and link in project list where MRs are disabled. (Simon Stieger @sim0) + +### Changed (202 changes, 88 of them are from the community) + +- Mark `startDate` and `endDate` arguments as deprecated in the GraphQL schema for `Project.milestones` and `Group.milestones` (FOSS and EE), and `Project.iterations`, `Project.milestones`, `Group.epic`, `Group.epics`, `Group.iterations`, `Group.milestones`, `BoardEpic.children`, and `Epic.children` fields (EE-only). Previously these arguments were marked as deprecated only in their descriptions. !45229 +- Improve Linked Issues Usability. !50879 (Andrew Minion) +- Make new issue title look like wiki. !50940 (Jacopo Beschi @jacopo-beschi) +- Introduce WebIDE as an extension for Editor Lite. !51527 +- Update LaTeX Docker image in CI Templates to TexLive 2020. !52043 (Michael Schmitt @schmitmd) +- Allow creation of iterations in the past. !52403 +- Allow overlapping iteration dates with ancestor group iterations and restrict dates overlapping for iterations within same group. !52403 +- Send gitlab_standard context with events from the frontend. !52959 +- Prefill first multiline commit message for new MRs. !52984 (Max Coplan @vegerot) +- Auto-enable admin mode on privileged environments. !53015 (Diego Louzán) +- Add loading indicator to "Update username" button in account settings. !53142 (Kev @KevSlashNull) +- Replace btn-primary with btn-confirm in Start your free trial button. !53215 (Yogi (@yo)) +- Update project page buttons to conform to design system. !53260 +- Lift the NPM package naming convention for the project level API. !53266 +- Adds ability to have multiple cache per job. !53410 +- Improve Jira connect app styling and i18n. !53441 +- Restyle the repository compare show page. !53523 +- API: include external users in user search for non-admins. !53584 (Jonas Wälter @wwwjon) +- Record onboarding action for issue creation. !53611 +- Merge Sentry's contexts into Gitlab::ApplicationContext. !53691 +- Add divergedFromTargetBranch field to MergeRequestType to indicate the target branch has diverged from the source branch. !53759 +- Provide name of expiring token in personal access token expiration mail. !53766 +- Convert merge request widget state to use GraphQL. !53846 +- Sidebar confidentiality component updates in real-time. !53858 +- Add creator to custom emoji. !53879 +- Migrate namespaces delayed_project_removal to namespace_settings. !53916 +- Add name field to cluster agent token. !53920 +- Apply new GitLab UI for request email button. !53966 (Yogi (@yo)) +- Add support for ETag caching when using GraphQL. !53978 +- Allow anonymous access to public Conan packages. !54047 (Steve Mokris @smokris) +- Make the Geo OAuth application trusted by default. !54079 +- Add description field to cluster agent token. !54091 +- Project Settings CI/CD headers expand/collapse on click / tap. !54114 (Daniel Schömer) +- Project Settings CI/CD Variables header expands/collapses on click / tap. !54117 (Daniel Schömer) +- Add Role and Rolebinding for CiliumNetworkPolicies. !54130 +- Add btn-default and remove extra right margin. !54134 (Yogi (@yo)) +- Update user avatar in sidebar realtime. !54135 (Yogi (@yo)) +- Remove illustration in export/import CSV modal. !54136 (Yogi (@yo)) +- Update to btn-confirm and align subscription banner. !54137 (Yogi (@yo)) +- Remove service desk issue prefix. !54140 (Lee Tickett @leetickett) +- Apply new GitLab UI for learn more button in time tracking. !54142 (Yogi (@yo)) +- Apply new GitLab UI for apply template button in new issue. !54143 (Yogi (@yo)) +- Remove gl-overflow-scroll in merge instructions modal. !54144 (Yogi (@yo)) +- Align merge conflict warning text to center. !54145 (Yogi (@yo)) +- Deprecate instanceStatisticsMeasurements in favor of usageTrendsMeasurements GraphQL field. !54153 +- Web IDE disallow commit when project has 'reject unsigned commits' rule. !54166 +- Add space next to download icon in download artifacts button. !54228 (Yogi (@yo)) +- Convert IDE nav form tab to GlTab. !54274 +- Add btn-icon class for commit action buttons. !54286 (Yogi (@yo)) +- Convert Threat Monitoring environment picker to GlDropdown. !54309 +- Allow importing groups as new top-level groups. !54323 +- Show user follow button first instead of center. !54326 (Yogi (@yo)) +- Update 'Get Started with CI/CD' button with latest URL. !54344 +- Log individual user usage of Slack service. !54347 +- Add duration and finishedAt GraphQL fields to jobType in the CI namespace. !54358 +- Show icon next to reviewers who have approved. !54365 +- Add btn-icon for buttons in pipeline schedules. !54426 (Yogi (@yo)) +- Restore Sentry functionaly to the frontend. !54441 +- Github Importer: Validate repository size before importing. !54449 +- Allow search for pipeline by SHA as well as IID via GraphQL. !54471 +- Change default API content_type to JSON. !54479 +- Added environment details to Job Hook and Pipeline Hook. !54480 (AdrianLC) +- GraphQL: Expose Label "created_at" and "updated_at". !54487 +- Move CI_CONFIG_PATH as project variable and deprecate CI_PROJECT_CONFIG_PATH. !54498 +- Registry: make delete icon buttons secondary. !54545 +- Add GlToggle label in edit feature flag. !54546 (Yogi (@yo)) +- Add GlToggle label in sidebar subscription toggle. !54548 (Yogi (@yo)) +- Refine Registry Lists and Search Bar UI. !54549 +- Remove outdated ci db columns. !54564 +- BulkImports: Avoid import ProjectLabels in the Group import level. !54580 +- Update default title of alerts to New: Alert. !54621 +- Clear Environment Search in CI/CD Variables. !54626 +- Only show 2FA badge to project maintainers and group owners. !54646 +- Enable pages_serve_with_zip_file_protocol by default. !54650 +- Auto-scroll to top of page upon committing in pipeline editor. !54657 +- Remove Expiration Policy text from container registry header. !54665 +- Reduce elements in Pipeline page dropdowns with lazy. !54674 +- BulkImports: Import Label timestamps. !54678 +- Improve at.js members autocomplete matching. !54681 +- Use Root Image for images with missing name. !54693 +- Change the order of action buttons in the configure feature flags modal. !54731 +- Remove deprecated button variant in groups, projects and snippets. !54747 (Yogi (@yo)) +- Add selected state for ellipsis button in a commit. !54754 (Yogi (@yo)) +- Apply new GitLab UI for button in promotion link. !54755 (Yogi (@yo)) +- Apply new GitLab UI for buttons in empty label placeholder. !54760 (Yogi (@yo)) +- Add selected state for diff view in commit page. !54762 (Yogi (@yo)) +- Add selected state for chart button in vulnerabilities dashboard. !54763 (Yogi (@yo)) +- Add btn-default class for settings toggle button. !54764 (Yogi (@yo)) +- Apply new GitLab UI for badge in runners list. !54766 (Yogi (@yo)) +- Better error message when import fails due to backend validation. !54827 +- Moved CODEOWNERS tip into approvals Vue app. !54830 +- Add a new project feature called container_registry. !54831 +- Relax tag requirements when generating changelogs. !54832 +- Regroup alerts integration form into tabs. !54842 +- Reverts default sort order for Explore Projects to Last updated. !54879 +- Fix DOS on Math blocks. !54898 +- Added non-null constraint to terraform state name. !54940 +- Remove MergeRequestAssigneesMigrationProgressCheck background migration. !54943 +- Adjust text explaining content of Operations menu from visibility section of project settings. !54963 +- Use info colour for merged search results instead of primary. !55008 +- Update button variant to confirm on integration settings page. !55017 +- Allow `$CI_JOB_TOKEN` to access the "Download a single artifact file" endpoints of the Jobs Artifacts API. !55042 (Eric Engestrom @1ace) +- Ignore prerelease tags when generating changelogs. !55065 +- Rename comment form textarea label to `Comment`. !55088 +- Add runners api context metadata. !55089 +- Reschedule artifact expiry backfill. !55093 +- Small visual updates to Git ref selector dropdown on New/Edit Release page. !55121 +- Group integration settings buttons to the left. !55139 +- Optimize Metrics Dictionary. !55145 +- Show nested environments when change tab, page. !55167 +- Move to btn-confirm in app/views/devise directory. !55200 (Yogi (@yo)) +- Move to btn-confirm in app/views/shared/empty_states directory. !55203 (Yogi (@yo)) +- Change the button to Primary Blue. !55204 (Yogi (@yo)) +- Update button to btn-confirm on merge requests page. !55218 +- Add empty state to pipeline editor section. !55227 +- Project Settings Repository Default branch header expand/collaps on click. !55228 (Daniel Schömer) +- Project Settings Repository Mirroring repositories header expands/collapses on click / tap. !55229 (Daniel Schömer) +- Project Settings CI/CD Variables header expands/collapses on click / tap. !55230 (Daniel Schömer) +- Project Settings Repository Protected tags header expands/collapses on click / tap. !55231 (Daniel Schömer) +- Project Settings Repository Cleanup header expands/collapses on click / tap. !55232 (Daniel Schömer) +- Project Settings Repository Deploy tokens header expands/collapses on click / tap. !55233 (Daniel Schömer) +- Project Settings Repository Deploy keys header expands/collapses on click / tap. !55234 (Daniel Schömer) +- Collapse deployments in merge request if many. !55239 +- Move to btn-confirm from btn-success in abuse_reports folder. !55262 (Yogi (@yo)) +- Move to btn-confirm from btn-success in admin application_settings directory. !55263 (Yogi (@yo)) +- Move to btn-confirm from btn-success in admin/appearances directory. !55264 (Yogi (@yo)) +- Move to btn-confirm from btn-success in admin/applications directory. !55265 (Yogi (@yo)) +- Move to btn-confirm from btn-success in admin/broadcast_messages directory. !55266 (Yogi (@yo)) +- Move to btn-confirm from btn-success in admin/deploy_keys directory. !55267 (Yogi (@yo)) +- Move to btn-confirm from btn-success in admin/groups directory. !55268 (Yogi (@yo)) +- Move to btn-confirm from btn-success in admin/hooks directory. !55272 (Yogi (@yo)) +- Move to btn-confirm from btn-success in admin/labels directory. !55273 (Yogi (@yo)) +- Move to btn-confirm from btn-success in admin/projects directory. !55274 (Yogi (@yo)) +- Move to btn-confirm from btn-success in admin/serverless directory. !55275 (Yogi (@yo)) +- Move to btn-confirm from btn-success in admin/users directory. !55276 (Yogi (@yo)) +- Move to btn-confirm from btn-success in views/doorkeeper directory. !55277 (Yogi (@yo)) +- Move to btn-confirm from btn-success in groups/milestones directory. !55278 (Yogi (@yo)) +- Move to btn-confirm from btn-success in groups/settings directory. !55281 (Yogi (@yo)) +- Move to btn-confirm from btn-success in groups directory. !55282 (Yogi (@yo)) +- Move to btn-confirm from btn-success in views/import directory. !55291 (Yogi (@yo)) +- Move from btn-success to btn-confirm in shared/access_token directory. !55298 (Yogi (@yo)) +- Move from btn-success to btn-confirm in shared/deploy_keys directory. !55299 (Yogi (@yo)) +- Move from btn-success to btn-confirm in shared/deploy_tokens directory. !55300 (Yogi (@yo)) +- Move from btn-success to btn-confirm in shared/gitpod directory. !55301 (Yogi (@yo)) +- Move from btn-success to btn-confirm in shared/groups directory. !55302 (Yogi (@yo)) +- Move from btn-success to btn-confirm in shared/issuable directory. !55303 (Yogi (@yo)) +- Move from btn-success to btn-confirm in shared/labels directory. !55304 (Yogi (@yo)) +- Bump swagger-ui-dist to 3.44.1. !55310 (Roger Meier) +- Move from btn-success to btn-confirm in shared/members directory. !55315 (Yogi (@yo)) +- Move from btn-success to btn-confirm in shared/wikis directory. !55316 (Yogi (@yo)) +- Move from btn-success to btn-confirm in shared directory. !55317 (Yogi (@yo)) +- Remove suggestions custom commit feature flag. !55344 +- Use policies for group access rights as admin. !55349 (Diego Louzán) +- Increase contrast of Solarized Light in Web IDE. !55361 +- Enable `trace_memory_allocations` by default. !55369 +- Expose project access token value with create API. !55408 +- Allow alert to link to incidents. !55426 +- Send notifications to subscribers when merge request draft status removed. !55444 +- Show number of files in snippet lists. !55452 +- Use CodeQuality packaged with CodeClimate 0.85.23 by default in CI template. !55508 +- Simplify notifications dropdown. !55522 +- Improve Marginalia comments for API. !55564 +- Clarify epic delete warning. !55574 +- Exclude duplicates from emails on push recipients. !55588 +- Move IDE routes to Rails. !55597 +- Update cluster agent tokens with null names. !55673 +- Expand nested stopped environments. !55676 +- Add fields to BulkImports::Tracker for concurrent work. !55686 +- Move to confirm variant from success in 2fa codes component. !55729 (Yogi (@yo)) +- Move to confirm variant from success in badges component. !55730 (Yogi (@yo)) +- Add Gradle instructions and instruction selector to package details. !55738 +- Update text for email config under Incidents in Settings > Operations. !55753 +- Display suite errors on test summary page. !55770 +- Alert integrations UX cleanup. !55786 +- Remove project_transactionless_destroy feature flag. !55795 +- Update code owner approval tooltip message. !55842 +- Sort milestones within autocomplete dropdown. !55850 +- Adjust debug button icon size in job detail page. !55886 +- Link fields to types in GraphQL reference documentation. !55901 +- Remove `vue_project_members_list` feature flag. !55902 +- Public generic packages can now be accessed by developer, guest and anonymous users. !55978 (Mathieu Parent) +- Port essential database metrics to Sidekiq. !56005 +- Add API Fuzzing to Security Configuration page, and re-order scanners. !56022 +- Add last_used_at field to cluster agent token. !56023 +- Change the default batch_class_name for batched_background_migrations to the unqualified class name. !56036 +- Improve styling of user access role badges. !56061 +- Temporary make `GC.compact` no-op. !56079 +- Move to btn-default and selected class in toggle comment button. !56090 (Yogi (@yo)) +- Apply new GitLab UI for buttons in GitLab Import page. !56095 (Yogi (@yo)) +- Apply new GitLab UI for buttons on GitHub Import page. !56096 (Yogi (@yo)) +- Move to confirm variant from success in environments directory. !56203 (Yogi (@yo)) +- Move from btn-success to btn-confirm in clusters directory. !56205 (Yogi (@yo)) +- Remove security & compliance config page feature flag. !56219 +- Display in progress for pipeline duration cell when pipeline has not finished running. !56266 +- Add project_id to pipeline api. !56339 +- Move from btn-success to btn-confirm in milestones directory. !56342 (Yogi (@yo)) +- Move from btn-success to btn-confirm in mirrors directory. !56343 (Yogi (@yo)) +- Move from btn-success to btn-confirm in pages directory. !56348 (Yogi (@yo)) +- Move from btn-success to btn-confirm in pages_domains directory. !56349 (Yogi (@yo)) +- Consume check if user is bot from Users API. !56362 +- Hide archived projects from group boards project select dropdown. !56452 +- Update mailroom to v0.0.9. !56592 + +### Performance (32 changes) + +- Limit Project Authorizations refresh for shared groups only to direct members of the group being shared with. !51869 +- Remove unneeded transitions on MR for mark_as_unchecked event. !53537 +- Preload certain data used in the updating of a merge request. !53802 +- Enable codequality report comparison with backend. !54241 +- Add preload attribute to markdown videos. !54350 +- Improve pull mirroring performance. !54353 +- Remove coverage_data_new_finder feature flag. !54486 +- Improve performance of builds queuing by introducing a limit on the queue depth. !54579 +- Added composite index to epic_issues table and improved performance of loading bigger epic roadmaps. !54677 +- Consider only distinct user ids for project authorizations refresh jobs for group members. !54697 +- Improve performance of validations when a group has a lot of runners. !54774 +- Hardened "add" arithmetic for usage data. !54794 +- Harden added metrics. !54805 +- Cache /search/count requests in the browser. !55036 +- Use recursive approach to query all projects for a namespace. !55043 +- Fix N+1s related to per-build metadata lookups. !55053 +- Fetch build one-by-one. !55194 +- Improve build contention. !55202 +- Move branch deletion on merge to async worker. !55390 +- Improve performance of manual pipeline form by limiting the refs loaded on page load. !55394 +- Fix N+1 queries in api/v3/repos/:namespace/:project/events endpoint. !55442 +- Refactor blame view. !55488 +- Reduce queries when ticking runner queue. !55496 +- Shortcircuit expensive queries in Runner#can_pick?. !55518 +- Preload runner tags for `UpdateBuildQueueService`. !55543 +- Batch-load vulnerability findings by UUID. !55642 +- Improve a11y of the new project form by marking required fields. !55682 +- Reduce DB load when resetting CI minute notifications. !55765 +- Remove latest_builds_report_results preloading in pipeline serializer. !56181 +- Optimize branch commit resolution. !56204 +- Use `Namespace#all_projects` for NPM package finder. !56415 +- Project sharing to use specialized worker to calculate project authorizations. !56606 + +### Added (91 changes, 11 of them are from the community) + +- Add setting to control merge when pipeline succeeds notification. !37880 (Ravishankar) +- Adds Request CVE ID button to issue sidebar. !41203 +- convert to GlTabs in app/assets/javascripts/ide/components/repo_tabs.vue. !42162 (Brandon Everett) +- Add invite_email Quick Action. !49264 (Lee Tickett) +- Add API endpoint for fetching a single job by CI_JOB_TOKEN. !51727 (ahmet2mir) +- Add API endpoint for deleting stale review envs. !52224 +- Add active period columns to on-call rotations. !52998 +- Add user preference to turn off selected text keystroke formatting. !53079 +- Display success message after successfully adding a namespace in Jira Connect. !53332 +- Add groups endpoint for Projects API. !53642 +- Add suppport for an end time on on-call rotations. !53675 +- Replace scss with stylelint in documentation. !53700 +- Add composer cache rake task. !53772 +- Limit the payload size of Sidekiq jobs before scheduling. !53829 +- Expose `failure_reasons` in `Build#features`. !53964 +- Create ExternalApprovalRule table and associations. !54002 +- Jira Connect app: add ability to select namespace from list of available namespaces. !54037 +- Expose container_registry_image_prefix to project API. !54090 (Mathieu Parent) +- Default confidentiality of replies. !54122 (Lee Tickett @leetickett) +- Add environment to custom CI_JOB_JWT claims. !54168 +- Make `to` in the changelog API optional. !54229 +- Add API endpoint /application/plan_limits for package file size limits. !54232 (Jonas Wälter @wwwjon) +- Add pagination of file diffs when viewing a large commit. !54236 +- Add internal and external URL config for KAS. !54260 +- Add Azure ActiveDirectory v2 OmniAuth provider. !54265 +- Add application setting for enabling in-product marketing emails. !54324 +- Enable customize homepage banner by default. !54357 +- Expose epic board list collapsed value via GraphQL. !54541 +- Implement passing trigger payload into pipeline variable. !54544 +- Support "view_diffs_file_by_file" param in the Users create and update API. !54595 +- Add GraphQL mutation to create release asset link. !54605 +- Create tables to track auto-batched background migrations. !54628 +- Create system note on alert when its auto-resolved via alert integration. !54645 +- Add package list to group graphql type. !54672 +- Add Import options to projects and groups dropdown. !54749 +- Add mutation to accept merge requests. !54758 +- Add Operating System details to usage ping. !54778 +- Add is_removed column on Oncall Participant model. !54779 +- Add reviewers detail to new merge request email. !54781 +- Add wiki_size and storage_size to NamespaceStatistics. !54786 +- Add branch_name to dast_profiles table. !54891 +- Support composer v2 metadata-url. !54906 +- Bump auto-deploy-image tag in Deploy.latest.gitlab-ci.yml to v2.6.0, which includes changes to ciliumnetworkpolicies. !54983 +- Add CI_JOB_STARTED_AT and CI_PIPELINE_CREATED_AT variables. !54989 (Vincent Firmin @winkies) +- Add styling to de-emphasize nested test reports in merge requests. !55001 +- Display parsing errors in test reports MR widget. !55037 +- Add user callouts to GraphQL. !55099 +- Add 'Followed User Activity' as dashboard user choices. !55165 (Benj Fassbind @randombenj) +- Improve Vulnerability Tracking: Store Fingerprints. !55173 +- Cleanup invite_members_version_a experiment. !55178 +- Incident management: add issue state to alerts table. !55185 +- Document propagate_correlation_id configuration for GitLab Pages. !55205 (Ercan Ucan @ercan.ucan) +- Add Allow force push option to Protected branches. !55261 (Mycroft Kang @TaehyeokKang) +- Add a background migration to copy projects.container_registry_enabled to project_features.container_registry_access_level. !55327 +- Add trigger support for matrix jobs. !55348 +- Add more explanation about the presented data and show the last updated time on the DevOps Score page. !55357 +- Query group projects by ids with GraphQL. !55383 +- Allow users to work on non-default branch in pipeline editor. !55413 +- Add reviewers detail to merge when pipeline succeeds email. !55463 +- Implement needs:job:optional for CI pipelines. !55468 +- Add tier column to the environments table. !55471 +- Add DORA daily metrics modeling. !55473 +- Add setting to control Rails.application.config.hosts. !55491 +- Ignore reverted commits when generating changelogs. !55537 +- Add reviewers detail to merge request unmergeable email. !55582 +- Add reviewers detail to merge request status email. !55584 +- Add reviewers detail to merged merge request email. !55589 +- Add reviewers detail to text version of closed merge request email. !55594 +- Add client_id to application context. !55683 +- Allow release to be created on existing tag through the UI. !55697 +- Add index for pages migration. !55757 +- Remove improved_merge_diff_highlighting feature flag. !55771 +- Usage ping: Histogram for enabled integrations per project. !55782 +- Add Pages cache configuration settings. !55812 +- Add package and quickaction metrics to Metrics Dictionary. !55846 +- Enable serving GitLab Pages sites migrated to zip storage. !55847 +- Log large multipart messages from Rack. !55933 +- Add update GraphQL mutation for Oncall Rotations. !55955 +- Cache open issues count in group sidebar. !55968 +- Add the ability to cherry pick accross forks. !55970 +- Migrate group milestones when using Bulk Import. !55981 +- Introduce `info` column for the `security_scans` table. !55983 +- Support environment deployment tier. !56081 +- Add Prometheus metrics for ActionCable subscription events. !56157 +- Add reviewers detail to new mention in merge request email. !56184 +- Add more settings to group MR approval settings. !56215 +- Automatically retarget merge requests upon merge (default on). !56233 +- Add section headers for the test report widget on the merge request page. !56252 +- Add GraphQL mutation to update existing release asset link. !56265 +- Upgrade Pages to v1.36.0. !56295 +- Add plan limit for Terraform Module package file size. !56414 + +### Other (74 changes, 9 of them are from the community) + +- Add a confirmation prompt to lock and unlock path locks. !44849 +- Recalculate UUID for all Vulnerability::Findings. !47529 +- Use Created instead of opened when describing issue creation. !49478 +- Removes collect_package_events_redis feature flag. !49897 +- Fix a crash when logging in using SAML for the first time when sign-ups are disabled. !50216 +- Add iterations_cadences table and respective model. !50707 +- Migrated Bootstrap dropdown to GitLab UI GlDropdown used for comment submit button. !50933 +- Rename indexes to remove inconsistencies. !51011 +- Notify issue email participants instead of external author. !51023 (Lee Tickett @leetickett) +- Remove usage_data_i_source_code_code_intelligence flag. !51765 +- Apply GitLab UI button styles to buttons in ee/app/views/subscriptions/groups directory. !51784 (Yogi (@yo)) +- Updated UI text to match style guidelines. !53179 +- Update the Sign In button to use the new confirm button variant, migrate OAuth buttons to use the default variant of GlButton. !53254 +- Apply new GitLab UI for button is project settings/repository page. !53346 (Yogi (@yo)) +- Add btn-default class for edit buttons in admin projects and groups. !53453 +- Add btn-default for cancel button in issueable form. !53458 (Yogi (@yo)) +- Set MobSF version to 3.2.9 in SAST template. !53545 +- Move add reaction button of note to gl-button. !53565 (Yogi (@yo)) +- Improve Service Desk empty states. !54006 +- Spell "npm" with lowercase letters in Package Registry UI. !54163 (Simon Stieger @sim0) +- Replace import/export CSV modal with Vue component. !54214 +- Add quick action data to usage ping. !54293 +- Add documentation for graphQL queries. !54302 +- Add NOT NULL constraint to gitlab_subscriptions namespace_id. !54319 +- Update accessibility of the "Reply to discussion" UX. !54380 +- Remove temporary index on issues. !54387 (Lee Tickett @leetickett) +- Add Vue notifications dropdown component. !54422 +- Move wiki helper alert to Vue. !54517 +- Composer cache update worker. !54551 +- Fix setting default cadences migration. !54598 +- Update protected branches buttons to pajamas style. !54612 +- Dry up notes build service spec. !54632 (Lee Tickett @leetickett) +- Updating general Chef .gitlab-ci.yml template. !54676 +- Enable `nakayoshi_fork` by default. !54688 +- Remove backup_labels table. !54856 +- Update GitLab Runner Helm Chart to 0.26.0. !54863 +- Add notification templates for merge request draft/WIP status change events. !54870 +- Remove pipeline editor feature flag. !54971 +- Remove graphql_logging feature flag. !54984 +- Add tracking to merge request time estimate/spent changes. !55046 +- Track usage pings when MR gets locked/unlocked. !55069 +- Deemphasize comment and close button. !55075 +- Log Optimistic Locks with retries. !55187 +- Add environment_scope column to ci_group_variables. !55256 +- Align heading style with subheadings in markdown. !55284 +- Restore accidental changes to structure.sql. !55352 +- Show API errors when a command-only comment fails. !55457 +- Remove dashboard_pipeline_status feature flag. !55472 +- Add tracking to merge request labels/milestone changes. !55484 +- Add tracking to merge request assignees/reviewers changes. !55486 +- Remove unique index and add composite key index to Security Orchestration. !55521 +- Fix Sidekiq system check for cluster mode. !55530 (Horst Prote) +- Rename vulnerability fingerprints indexes. !55552 +- Refactor docs and UI for embedding Grafana panels. !55567 +- Remove the optimized_merge_request_count_with_merged_at_filter feature flag. !55600 +- Add histogram for optimistic lock retries. !55614 +- Replace Bootstrap popover with GitLab UI popover for merge conflict. !55652 +- Use more common help icon in security report MR widget. !55741 +- Schedule removal of duplicate Findings. !55749 +- Update spacing between Notifications dropdown, New Subgroup button, and New Project buttons while using the new confirm variant instead of the deprecated success variant for the New Project button. Better left alignment of Notifications dropdown at smaller breakpoints. variant. !55819 +- Update buttons on a job page to conform to the Pajamas design system. !55858 +- Add web_hook_logs partitioning migration. !55938 +- Updating usage dictionary generator. !55956 +- Reorder user profile actions and use the confirm variant for the follow button. !55999 +- Link to the merge request in its creation email notification. !56064 +- Update UI text to CI/CD from CI / CD. !56070 +- Harden Prometheus client usage data wrapper. !56210 +- Update Pages template examples to default branch. !56298 +- Update CI template examples to default branch. !56301 +- Update templates to refer to default branch. !56304 +- Remove bottom border from header. !56315 +- Remove merge_request_rebase_nowait_lock flag. !56406 +- Update mobsf version in the SAST template. !56413 +- Convert mattermost alert to pajamas. !56556 + + ## 13.9.4 (2021-03-17) ### Security (1 change) diff --git a/app/assets/javascripts/content_editor/services/create_editor.js b/app/assets/javascripts/content_editor/services/create_editor.js new file mode 100644 index 00000000000..c6e24bdf9bb --- /dev/null +++ b/app/assets/javascripts/content_editor/services/create_editor.js @@ -0,0 +1,11 @@ +const createEditor = async ({ content }) => { + const { Editor } = await import(/* webpackChunkName: 'tiptap' */ 'tiptap'); + const { Bold, Code } = await import(/* webpackChunkName: 'tiptap' */ 'tiptap-extensions'); + + return new Editor({ + extensions: [new Bold(), new Code()], + content, + }); +}; + +export default createEditor; diff --git a/app/assets/javascripts/content_editor/services/to_markdown.js b/app/assets/javascripts/content_editor/services/to_markdown.js new file mode 100644 index 00000000000..0b4fdeb1ad5 --- /dev/null +++ b/app/assets/javascripts/content_editor/services/to_markdown.js @@ -0,0 +1,15 @@ +import { MarkdownSerializer, defaultMarkdownSerializer } from 'prosemirror-markdown'; + +const toMarkdown = (document) => { + const serializer = new MarkdownSerializer(defaultMarkdownSerializer.nodes, { + ...defaultMarkdownSerializer.marks, + bold: { + // creates a bold alias for the strong mark converter + ...defaultMarkdownSerializer.marks.strong, + }, + }); + + return serializer.serialize(document); +}; + +export default toMarkdown; diff --git a/app/assets/javascripts/issuable_list/components/issuable_list_root.vue b/app/assets/javascripts/issuable_list/components/issuable_list_root.vue index 40b0fcbb8c6..1b54ba766ff 100644 --- a/app/assets/javascripts/issuable_list/components/issuable_list_root.vue +++ b/app/assets/javascripts/issuable_list/components/issuable_list_root.vue @@ -10,7 +10,14 @@ import IssuableBulkEditSidebar from './issuable_bulk_edit_sidebar.vue'; import IssuableItem from './issuable_item.vue'; import IssuableTabs from './issuable_tabs.vue'; +const VueDraggable = () => import('vuedraggable'); + export default { + vueDraggableAttributes: { + animation: 200, + ghostClass: 'gl-visibility-hidden', + tag: 'ul', + }, components: { GlSkeletonLoading, IssuableTabs, @@ -18,6 +25,7 @@ export default { IssuableItem, IssuableBulkEditSidebar, GlPagination, + VueDraggable, }, props: { namespace: { @@ -127,6 +135,11 @@ export default { required: false, default: null, }, + isManualOrdering: { + type: Boolean, + required: false, + default: false, + }, }, data() { return { @@ -159,6 +172,9 @@ export default { return acc; }, []); }, + issuablesWrapper() { + return this.isManualOrdering ? VueDraggable : 'ul'; + }, }, watch: { issuables(list) { @@ -208,6 +224,9 @@ export default { this.checkedIssuables[issuableId].checked = value; }); }, + handleVueDraggableUpdate({ newIndex, oldIndex }) { + this.$emit('reorder', { newIndex, oldIndex }); + }, }, }; </script> @@ -253,13 +272,18 @@ export default { <gl-skeleton-loading /> </li> </ul> - <ul + <component + :is="issuablesWrapper" v-if="!issuablesLoading && issuables.length" class="content-list issuable-list issues-list" + :class="{ 'manual-ordering': isManualOrdering }" + v-bind="$options.vueDraggableAttributes" + @update="handleVueDraggableUpdate" > <issuable-item v-for="issuable in issuables" :key="issuableId(issuable)" + :class="{ 'gl-cursor-grab': isManualOrdering }" :issuable-symbol="issuableSymbol" :issuable="issuable" :enable-label-permalinks="enableLabelPermalinks" @@ -284,7 +308,7 @@ export default { <slot name="statistics" :issuable="issuable"></slot> </template> </issuable-item> - </ul> + </component> <slot v-if="!issuablesLoading && !issuables.length" name="empty-state"></slot> <gl-pagination v-if="showPaginationControls" diff --git a/app/assets/javascripts/issues_list/components/issuables_list_app.vue b/app/assets/javascripts/issues_list/components/issuables_list_app.vue index 0b413ce0b06..51cad662ebf 100644 --- a/app/assets/javascripts/issues_list/components/issuables_list_app.vue +++ b/app/assets/javascripts/issues_list/components/issuables_list_app.vue @@ -30,6 +30,9 @@ import issueableEventHub from '../eventhub'; import { emptyStateHelper } from '../service_desk_helper'; import Issuable from './issuable.vue'; +/** + * @deprecated Use app/assets/javascripts/issuable_list/components/issuable_list_root.vue instead + */ export default { LOADING_LIST_ITEMS_LENGTH, directives: { diff --git a/app/assets/javascripts/issues_list/components/issues_list_app.vue b/app/assets/javascripts/issues_list/components/issues_list_app.vue index c57fa5a82fa..e4bb3ecabd0 100644 --- a/app/assets/javascripts/issues_list/components/issues_list_app.vue +++ b/app/assets/javascripts/issues_list/components/issues_list_app.vue @@ -4,14 +4,26 @@ import { toNumber } from 'lodash'; import createFlash from '~/flash'; import IssuableList from '~/issuable_list/components/issuable_list_root.vue'; import { IssuableStatus } from '~/issue_show/constants'; -import { PAGE_SIZE } from '~/issues_list/constants'; +import { + CREATED_DESC, + PAGE_SIZE, + RELATIVE_POSITION_ASC, + sortOptions, + sortParams, +} from '~/issues_list/constants'; import axios from '~/lib/utils/axios_utils'; import { convertObjectPropsToCamelCase, getParameterByName } from '~/lib/utils/common_utils'; import { __ } from '~/locale'; import IssueCardTimeInfo from './issue_card_time_info.vue'; export default { + CREATED_DESC, PAGE_SIZE, + sortOptions, + sortParams, + i18n: { + reorderError: __('An error occurred while reordering issues.'), + }, components: { GlIcon, IssuableList, @@ -28,12 +40,23 @@ export default { fullPath: { default: '', }, + issuesPath: { + default: '', + }, }, data() { + const orderBy = getParameterByName('order_by'); + const sort = getParameterByName('sort'); + const sortKey = Object.keys(sortParams).find( + (key) => sortParams[key].order_by === orderBy && sortParams[key].sort === sort, + ); + return { currentPage: toNumber(getParameterByName('page')) || 1, + filters: sortParams[sortKey] || {}, isLoading: false, issues: [], + sortKey: sortKey || CREATED_DESC, totalIssues: 0, }; }, @@ -42,8 +65,12 @@ export default { return { page: this.currentPage, state: IssuableStatus.Open, + ...this.filters, }; }, + isManualOrdering() { + return this.sortKey === RELATIVE_POSITION_ASC; + }, }, mounted() { this.fetchIssues(); @@ -59,6 +86,7 @@ export default { per_page: this.$options.PAGE_SIZE, state: IssuableStatus.Open, with_labels_details: true, + ...this.filters, }, }) .then(({ data, headers }) => { @@ -76,6 +104,44 @@ export default { handlePageChange(page) { this.fetchIssues(page); }, + handleReorder({ newIndex, oldIndex }) { + const issueToMove = this.issues[oldIndex]; + const isDragDropDownwards = newIndex > oldIndex; + const isMovingToBeginning = newIndex === 0; + const isMovingToEnd = newIndex === this.issues.length - 1; + + let moveBeforeId; + let moveAfterId; + + if (isDragDropDownwards) { + const afterIndex = isMovingToEnd ? newIndex : newIndex + 1; + moveBeforeId = this.issues[newIndex].id; + moveAfterId = this.issues[afterIndex].id; + } else { + const beforeIndex = isMovingToBeginning ? newIndex : newIndex - 1; + moveBeforeId = this.issues[beforeIndex].id; + moveAfterId = this.issues[newIndex].id; + } + + return axios + .put(`${this.issuesPath}/${issueToMove.iid}/reorder`, { + move_before_id: isMovingToBeginning ? null : moveBeforeId, + move_after_id: isMovingToEnd ? null : moveAfterId, + }) + .then(() => { + // Move issue to new position in list + this.issues.splice(oldIndex, 1); + this.issues.splice(newIndex, 0, issueToMove); + }) + .catch(() => { + createFlash({ message: this.$options.i18n.reorderError }); + }); + }, + handleSort(value) { + this.sortKey = value; + this.filters = sortParams[value]; + this.fetchIssues(); + }, }, }; </script> @@ -86,11 +152,13 @@ export default { recent-searches-storage-key="issues" :search-input-placeholder="__('Search or filter results…')" :search-tokens="[]" - :sort-options="[]" + :sort-options="$options.sortOptions" + :initial-sort-by="sortKey" :issuables="issues" :tabs="[]" current-tab="" :issuables-loading="isLoading" + :is-manual-ordering="isManualOrdering" :show-pagination-controls="true" :total-items="totalIssues" :current-page="currentPage" @@ -98,6 +166,8 @@ export default { :next-page="currentPage + 1" :url-params="urlParams" @page-change="handlePageChange" + @reorder="handleReorder" + @sort="handleSort" > <template #timeframe="{ issuable = {} }"> <issue-card-time-info :issue="issuable" /> diff --git a/app/assets/javascripts/issues_list/constants.js b/app/assets/javascripts/issues_list/constants.js index f008ba1bf4a..f6f23af80ba 100644 --- a/app/assets/javascripts/issues_list/constants.js +++ b/app/assets/javascripts/issues_list/constants.js @@ -54,3 +54,191 @@ export const availableSortOptionsJira = [ ]; export const JIRA_IMPORT_SUCCESS_ALERT_HIDE_MAP_KEY = 'jira-import-success-alert-hide-map'; + +export const BLOCKING_ISSUES_ASC = 'BLOCKING_ISSUES_ASC'; +export const BLOCKING_ISSUES_DESC = 'BLOCKING_ISSUES_DESC'; +export const CREATED_ASC = 'CREATED_ASC'; +export const CREATED_DESC = 'CREATED_DESC'; +export const DUE_DATE_ASC = 'DUE_DATE_ASC'; +export const DUE_DATE_DESC = 'DUE_DATE_DESC'; +export const LABEL_PRIORITY_ASC = 'LABEL_PRIORITY_ASC'; +export const LABEL_PRIORITY_DESC = 'LABEL_PRIORITY_DESC'; +export const MILESTONE_DUE_ASC = 'MILESTONE_DUE_ASC'; +export const MILESTONE_DUE_DESC = 'MILESTONE_DUE_DESC'; +export const POPULARITY_ASC = 'POPULARITY_ASC'; +export const POPULARITY_DESC = 'POPULARITY_DESC'; +export const PRIORITY_ASC = 'PRIORITY_ASC'; +export const PRIORITY_DESC = 'PRIORITY_DESC'; +export const RELATIVE_POSITION_ASC = 'RELATIVE_POSITION_ASC'; +export const UPDATED_ASC = 'UPDATED_ASC'; +export const UPDATED_DESC = 'UPDATED_DESC'; +export const WEIGHT_ASC = 'WEIGHT_ASC'; +export const WEIGHT_DESC = 'WEIGHT_DESC'; + +const SORT_ASC = 'asc'; +const SORT_DESC = 'desc'; + +const BLOCKING_ISSUES = 'blocking_issues'; + +export const sortParams = { + [PRIORITY_ASC]: { + order_by: PRIORITY, + sort: SORT_ASC, + }, + [PRIORITY_DESC]: { + order_by: PRIORITY, + sort: SORT_DESC, + }, + [CREATED_ASC]: { + order_by: CREATED_AT, + sort: SORT_ASC, + }, + [CREATED_DESC]: { + order_by: CREATED_AT, + sort: SORT_DESC, + }, + [UPDATED_ASC]: { + order_by: UPDATED_AT, + sort: SORT_ASC, + }, + [UPDATED_DESC]: { + order_by: UPDATED_AT, + sort: SORT_DESC, + }, + [MILESTONE_DUE_ASC]: { + order_by: MILESTONE_DUE, + sort: SORT_ASC, + }, + [MILESTONE_DUE_DESC]: { + order_by: MILESTONE_DUE, + sort: SORT_DESC, + }, + [DUE_DATE_ASC]: { + order_by: DUE_DATE, + sort: SORT_ASC, + }, + [DUE_DATE_DESC]: { + order_by: DUE_DATE, + sort: SORT_DESC, + }, + [POPULARITY_ASC]: { + order_by: POPULARITY, + sort: SORT_ASC, + }, + [POPULARITY_DESC]: { + order_by: POPULARITY, + sort: SORT_DESC, + }, + [LABEL_PRIORITY_ASC]: { + order_by: LABEL_PRIORITY, + sort: SORT_ASC, + }, + [LABEL_PRIORITY_DESC]: { + order_by: LABEL_PRIORITY, + sort: SORT_DESC, + }, + [RELATIVE_POSITION_ASC]: { + order_by: RELATIVE_POSITION, + per_page: 100, + sort: SORT_ASC, + }, + [WEIGHT_ASC]: { + order_by: WEIGHT, + sort: SORT_ASC, + }, + [WEIGHT_DESC]: { + order_by: WEIGHT, + sort: SORT_DESC, + }, + [BLOCKING_ISSUES_ASC]: { + order_by: BLOCKING_ISSUES, + sort: SORT_ASC, + }, + [BLOCKING_ISSUES_DESC]: { + order_by: BLOCKING_ISSUES, + sort: SORT_DESC, + }, +}; + +export const sortOptions = [ + { + id: 1, + title: __('Priority'), + sortDirection: { + ascending: PRIORITY_ASC, + descending: PRIORITY_DESC, + }, + }, + { + id: 2, + title: __('Created date'), + sortDirection: { + ascending: CREATED_ASC, + descending: CREATED_DESC, + }, + }, + { + id: 3, + title: __('Last updated'), + sortDirection: { + ascending: UPDATED_ASC, + descending: UPDATED_DESC, + }, + }, + { + id: 4, + title: __('Milestone due date'), + sortDirection: { + ascending: MILESTONE_DUE_ASC, + descending: MILESTONE_DUE_DESC, + }, + }, + { + id: 5, + title: __('Due date'), + sortDirection: { + ascending: DUE_DATE_ASC, + descending: DUE_DATE_DESC, + }, + }, + { + id: 6, + title: __('Popularity'), + sortDirection: { + ascending: POPULARITY_ASC, + descending: POPULARITY_DESC, + }, + }, + { + id: 7, + title: __('Label priority'), + sortDirection: { + ascending: LABEL_PRIORITY_ASC, + descending: LABEL_PRIORITY_DESC, + }, + }, + { + id: 8, + title: __('Manual'), + sortDirection: { + ascending: RELATIVE_POSITION_ASC, + descending: RELATIVE_POSITION_ASC, + }, + }, + { + id: 9, + title: __('Weight'), + sortDirection: { + ascending: WEIGHT_ASC, + descending: WEIGHT_DESC, + }, + }, + { + id: 10, + title: __('Blocking'), + sortDirection: { + ascending: BLOCKING_ISSUES_ASC, + descending: BLOCKING_ISSUES_DESC, + }, + }, +]; diff --git a/app/assets/javascripts/issues_list/index.js b/app/assets/javascripts/issues_list/index.js index a283cbdc86b..b55ebf8dbdb 100644 --- a/app/assets/javascripts/issues_list/index.js +++ b/app/assets/javascripts/issues_list/index.js @@ -78,6 +78,7 @@ export function initIssuesListApp() { hasBlockedIssuesFeature, hasIssuableHealthStatusFeature, hasIssueWeightsFeature, + issuesPath, } = el.dataset; return new Vue({ @@ -91,6 +92,7 @@ export function initIssuesListApp() { hasBlockedIssuesFeature: parseBoolean(hasBlockedIssuesFeature), hasIssuableHealthStatusFeature: parseBoolean(hasIssuableHealthStatusFeature), hasIssueWeightsFeature: parseBoolean(hasIssueWeightsFeature), + issuesPath, }, render: (createComponent) => createComponent(IssuesListApp), }); diff --git a/app/assets/javascripts/merge_conflicts/components/diff_file_editor.vue b/app/assets/javascripts/merge_conflicts/components/diff_file_editor.vue index 2c7c8038af5..7649c363daa 100644 --- a/app/assets/javascripts/merge_conflicts/components/diff_file_editor.vue +++ b/app/assets/javascripts/merge_conflicts/components/diff_file_editor.vue @@ -1,8 +1,10 @@ <script> import { debounce } from 'lodash'; +import { mapActions } from 'vuex'; import { deprecatedCreateFlash as flash } from '~/flash'; import axios from '~/lib/utils/axios_utils'; import { __ } from '~/locale'; +import { INTERACTIVE_RESOLVE_MODE } from '../constants'; export default { props: { @@ -10,14 +12,6 @@ export default { type: Object, required: true, }, - onCancelDiscardConfirmation: { - type: Function, - required: true, - }, - onAcceptDiscardConfirmation: { - type: Function, - required: true, - }, }, data() { return { @@ -50,6 +44,7 @@ export default { } }, methods: { + ...mapActions(['setFileResolveMode', 'setPromptConfirmationState', 'updateFile']), loadEditor() { const EditorPromise = import(/* webpackChunkName: 'EditorLite' */ '~/editor/editor_lite'); const DataPromise = axios.get(this.file.content_path); @@ -82,23 +77,24 @@ export default { saveDiffResolution() { this.saved = true; - // This probably be better placed in the data provider - /* eslint-disable vue/no-mutating-props */ - this.file.content = this.editor.getValue(); - this.file.resolveEditChanged = this.file.content !== this.originalContent; - this.file.promptDiscardConfirmation = false; - /* eslint-enable vue/no-mutating-props */ + this.updateFile({ + ...this.file, + content: this.editor.getValue(), + resolveEditChanged: this.file.content !== this.originalContent, + promptDiscardConfirmation: false, + }); }, resetEditorContent() { if (this.fileLoaded) { this.editor.setValue(this.originalContent); } }, - cancelDiscardConfirmation(file) { - this.onCancelDiscardConfirmation(file); - }, acceptDiscardConfirmation(file) { - this.onAcceptDiscardConfirmation(file); + this.setPromptConfirmationState({ file, promptDiscardConfirmation: false }); + this.setFileResolveMode({ file, mode: INTERACTIVE_RESOLVE_MODE }); + }, + cancelDiscardConfirmation(file) { + this.setPromptConfirmationState({ file, promptDiscardConfirmation: false }); }, }, }; diff --git a/app/assets/javascripts/merge_conflicts/components/inline_conflict_lines.vue b/app/assets/javascripts/merge_conflicts/components/inline_conflict_lines.vue index 519fd53af1e..9721481e6be 100644 --- a/app/assets/javascripts/merge_conflicts/components/inline_conflict_lines.vue +++ b/app/assets/javascripts/merge_conflicts/components/inline_conflict_lines.vue @@ -1,34 +1,41 @@ <script> import { GlSafeHtmlDirective as SafeHtml } from '@gitlab/ui'; -import actionsMixin from '../mixins/line_conflict_actions'; +import { mapActions } from 'vuex'; +import syntaxHighlight from '~/syntax_highlight'; +import { SYNTAX_HIGHLIGHT_CLASS } from '../constants'; import utilsMixin from '../mixins/line_conflict_utils'; export default { directives: { SafeHtml, }, - mixins: [utilsMixin, actionsMixin], + mixins: [utilsMixin], + SYNTAX_HIGHLIGHT_CLASS, props: { file: { type: Object, required: true, }, }, + mounted() { + syntaxHighlight(document.querySelectorAll(`.${SYNTAX_HIGHLIGHT_CLASS}`)); + }, + methods: { + ...mapActions(['handleSelected']), + }, }; </script> <template> - <table class="diff-wrap-lines code code-commit js-syntax-highlight"> - <tr - v-for="line in file.inlineLines" - :key="(line.isHeader ? line.id : line.new_line) + line.richText" - class="line_holder diff-inline" - > + <table :class="['diff-wrap-lines code code-commit', $options.SYNTAX_HIGHLIGHT_CLASS]"> + <!-- Unfortunately there isn't a good key for these sections --> + <!-- eslint-disable vue/require-v-for-key --> + <tr v-for="line in file.inlineLines" class="line_holder diff-inline"> <template v-if="line.isHeader"> <td :class="lineCssClass(line)" class="diff-line-num header"></td> <td :class="lineCssClass(line)" class="diff-line-num header"></td> <td :class="lineCssClass(line)" class="line_content header"> <strong>{{ line.richText }}</strong> - <button class="btn" @click="handleSelected(file, line.id, line.section)"> + <button class="btn" @click="handleSelected({ file, line })"> {{ line.buttonTitle }} </button> </td> diff --git a/app/assets/javascripts/merge_conflicts/components/parallel_conflict_lines.vue b/app/assets/javascripts/merge_conflicts/components/parallel_conflict_lines.vue index e66f641f70d..7b1d947ccff 100644 --- a/app/assets/javascripts/merge_conflicts/components/parallel_conflict_lines.vue +++ b/app/assets/javascripts/merge_conflicts/components/parallel_conflict_lines.vue @@ -1,32 +1,41 @@ <script> import { GlSafeHtmlDirective as SafeHtml } from '@gitlab/ui'; -import actionsMixin from '../mixins/line_conflict_actions'; +import { mapActions } from 'vuex'; +import syntaxHighlight from '~/syntax_highlight'; +import { SYNTAX_HIGHLIGHT_CLASS } from '../constants'; import utilsMixin from '../mixins/line_conflict_utils'; export default { directives: { SafeHtml, }, - mixins: [utilsMixin, actionsMixin], + mixins: [utilsMixin], + SYNTAX_HIGHLIGHT_CLASS, props: { file: { type: Object, required: true, }, }, + mounted() { + syntaxHighlight(document.querySelectorAll(`.${SYNTAX_HIGHLIGHT_CLASS}`)); + }, + methods: { + ...mapActions(['handleSelected']), + }, }; </script> <template> <!-- Unfortunately there isn't a good key for these sections --> <!-- eslint-disable vue/require-v-for-key --> - <table class="diff-wrap-lines code js-syntax-highlight"> + <table :class="['diff-wrap-lines code', $options.SYNTAX_HIGHLIGHT_CLASS]"> <tr v-for="section in file.parallelLines" class="line_holder parallel"> <template v-for="line in section"> <template v-if="line.isHeader"> <td class="diff-line-num header" :class="lineCssClass(line)"></td> <td class="line_content header" :class="lineCssClass(line)"> <strong>{{ line.richText }}</strong> - <button class="btn" @click="handleSelected(file, line.id, line.section)"> + <button class="btn" @click="handleSelected({ file, line })"> {{ line.buttonTitle }} </button> </td> diff --git a/app/assets/javascripts/merge_conflicts/constants.js b/app/assets/javascripts/merge_conflicts/constants.js index 6f3ee339e36..dddcc891e81 100644 --- a/app/assets/javascripts/merge_conflicts/constants.js +++ b/app/assets/javascripts/merge_conflicts/constants.js @@ -13,6 +13,7 @@ export const VIEW_TYPES = { export const EDIT_RESOLVE_MODE = 'edit'; export const INTERACTIVE_RESOLVE_MODE = 'interactive'; export const DEFAULT_RESOLVE_MODE = INTERACTIVE_RESOLVE_MODE; +export const SYNTAX_HIGHLIGHT_CLASS = 'js-syntax-highlight'; export const HEAD_HEADER_TEXT = s__('MergeConflict|HEAD//our changes'); export const ORIGIN_HEADER_TEXT = s__('MergeConflict|origin//their changes'); diff --git a/app/assets/javascripts/merge_conflicts/merge_conflict_resolver_app.vue b/app/assets/javascripts/merge_conflicts/merge_conflict_resolver_app.vue index 16a7cfb2ba8..0509cf0afa1 100644 --- a/app/assets/javascripts/merge_conflicts/merge_conflict_resolver_app.vue +++ b/app/assets/javascripts/merge_conflicts/merge_conflict_resolver_app.vue @@ -1,14 +1,15 @@ <script> import { GlSprintf } from '@gitlab/ui'; +import { mapGetters, mapState, mapActions } from 'vuex'; import { __ } from '~/locale'; import FileIcon from '~/vue_shared/components/file_icon.vue'; import DiffFileEditor from './components/diff_file_editor.vue'; import InlineConflictLines from './components/inline_conflict_lines.vue'; import ParallelConflictLines from './components/parallel_conflict_lines.vue'; +import { INTERACTIVE_RESOLVE_MODE } from './constants'; /** - * NOTE: Most of this component is directly using $root, rather than props or a better data store. - * This is BAD and one shouldn't copy that behavior. Similarly a lot of the classes below should + * A lot of the classes below should * be replaced with GitLab UI components. * * We are just doing it temporarily in order to migrate the template from HAML => Vue in an iterative manner @@ -25,60 +26,88 @@ export default { InlineConflictLines, ParallelConflictLines, }, - inject: ['mergeRequestPath', 'sourceBranchPath'], + inject: ['mergeRequestPath', 'sourceBranchPath', 'resolveConflictsPath'], i18n: { commitStatSummary: __('Showing %{conflict} between %{sourceBranch} and %{targetBranch}'), resolveInfo: __( 'You can resolve the merge conflict using either the Interactive mode, by choosing %{use_ours} or %{use_theirs} buttons, or by editing the files directly. Commit these changes into %{branch_name}', ), }, + computed: { + ...mapGetters([ + 'getConflictsCountText', + 'isReadyToCommit', + 'getCommitButtonText', + 'fileTextTypePresent', + ]), + ...mapState(['isLoading', 'hasError', 'isParallel', 'conflictsData']), + commitMessage: { + get() { + return this.conflictsData.commitMessage; + }, + set(value) { + this.updateCommitMessage(value); + }, + }, + }, + methods: { + ...mapActions([ + 'setViewType', + 'submitResolvedConflicts', + 'setFileResolveMode', + 'setPromptConfirmationState', + 'updateCommitMessage', + ]), + onClickResolveModeButton(file, mode) { + if (mode === INTERACTIVE_RESOLVE_MODE && file.resolveEditChanged) { + this.setPromptConfirmationState({ file, promptDiscardConfirmation: true }); + } else { + this.setFileResolveMode({ file, mode }); + } + }, + }, }; </script> <template> <div id="conflicts"> - <div v-if="$root.isLoading" class="loading"> + <div v-if="isLoading" class="loading"> <div class="spinner spinner-md"></div> </div> - <div v-if="$root.hasError" class="nothing-here-block"> - {{ $root.conflictsData.errorMessage }} + <div v-if="hasError" class="nothing-here-block"> + {{ conflictsData.errorMessage }} </div> - <template v-if="!$root.isLoading && !$root.hasError"> + <template v-if="!isLoading && !hasError"> <div class="content-block oneline-block files-changed"> - <div v-if="$root.showDiffViewTypeSwitcher" class="inline-parallel-buttons"> + <div v-if="fileTextTypePresent" class="inline-parallel-buttons"> <div class="btn-group"> <button - :class="{ active: !$root.isParallel }" + :class="{ active: !isParallel }" class="btn gl-button" - @click="$root.handleViewTypeChange('inline')" + @click="setViewType('inline')" > {{ __('Inline') }} </button> <button - :class="{ active: $root.isParallel }" + :class="{ active: isParallel }" class="btn gl-button" - @click="$root.handleViewTypeChange('parallel')" + data-testid="side-by-side" + @click="setViewType('parallel')" > {{ __('Side-by-side') }} </button> </div> </div> <div class="js-toggle-container"> - <div class="commit-stat-summary"> + <div class="commit-stat-summary" data-testid="conflicts-count"> <gl-sprintf :message="$options.i18n.commitStatSummary"> <template #conflict> - <strong class="cred"> - {{ $root.conflictsCountText }} - </strong> + <strong class="cred">{{ getConflictsCountText }}</strong> </template> <template #sourceBranch> - <strong class="ref-name"> - {{ $root.conflictsData.sourceBranch }} - </strong> + <strong class="ref-name">{{ conflictsData.sourceBranch }}</strong> </template> <template #targetBranch> - <strong class="ref-name"> - {{ $root.conflictsData.targetBranch }} - </strong> + <strong class="ref-name">{{ conflictsData.targetBranch }}</strong> </template> </gl-sprintf> </div> @@ -87,12 +116,13 @@ export default { <div class="files-wrapper"> <div class="files"> <div - v-for="file in $root.conflictsData.files" + v-for="file in conflictsData.files" :key="file.blobPath" class="diff-file file-holder conflict" + data-testid="files" > <div class="js-file-title file-title file-title-flex-parent cursor-default"> - <div class="file-header-content"> + <div class="file-header-content" data-testid="file-name"> <file-icon :file-name="file.filePath" :size="18" css-classes="gl-mr-2" /> <strong class="file-title-name">{{ file.filePath }}</strong> </div> @@ -102,7 +132,8 @@ export default { :class="{ active: file.resolveMode === 'interactive' }" class="btn gl-button" type="button" - @click="$root.onClickResolveModeButton(file, 'interactive')" + data-testid="interactive-button" + @click="onClickResolveModeButton(file, 'interactive')" > {{ __('Interactive mode') }} </button> @@ -110,7 +141,8 @@ export default { :class="{ active: file.resolveMode === 'edit' }" class="btn gl-button" type="button" - @click="$root.onClickResolveModeButton(file, 'edit')" + data-testid="inline-button" + @click="onClickResolveModeButton(file, 'edit')" > {{ __('Edit inline') }} </button> @@ -118,35 +150,23 @@ export default { <a :href="file.blobPath" class="btn gl-button view-file"> <gl-sprintf :message="__('View file @ %{commitSha}')"> <template #commitSha> - {{ $root.conflictsData.shortCommitSha }} + {{ conflictsData.shortCommitSha }} </template> </gl-sprintf> </a> </div> </div> <div class="diff-content diff-wrap-lines"> - <div - v-show=" - !$root.isParallel && file.resolveMode === 'interactive' && file.type === 'text' - " - class="file-content" - > - <inline-conflict-lines :file="file" /> - </div> - <div - v-show=" - $root.isParallel && file.resolveMode === 'interactive' && file.type === 'text' - " - class="file-content" - > - <parallel-conflict-lines :file="file" /> - </div> - <div v-show="file.resolveMode === 'edit' || file.type === 'text-editor'"> - <diff-file-editor - :file="file" - :on-accept-discard-confirmation="$root.acceptDiscardConfirmation" - :on-cancel-discard-confirmation="$root.cancelDiscardConfirmation" - /> + <template v-if="file.resolveMode === 'interactive' && file.type === 'text'"> + <div v-if="!isParallel" class="file-content"> + <inline-conflict-lines :file="file" /> + </div> + <div v-if="isParallel" class="file-content"> + <parallel-conflict-lines :file="file" /> + </div> + </template> + <div v-if="file.resolveMode === 'edit' || file.type === 'text-editor'"> + <diff-file-editor :file="file" /> </div> </div> </div> @@ -169,7 +189,7 @@ export default { </template> <template #branch_name> <a class="ref-name" :href="sourceBranchPath"> - {{ $root.conflictsData.sourceBranch }} + {{ conflictsData.sourceBranch }} </a> </template> </gl-sprintf> @@ -183,7 +203,8 @@ export default { <div class="max-width-marker"></div> <textarea id="commit-message" - v-model="$root.conflictsData.commitMessage" + v-model="commitMessage" + data-testid="commit-message" class="form-control js-commit-message" rows="5" ></textarea> @@ -195,12 +216,12 @@ export default { <div class="row"> <div class="col-6"> <button - :disabled="!$root.readyToCommit" + :disabled="!isReadyToCommit" class="btn gl-button btn-success js-submit-button" type="button" - @click="$root.commit()" + @click="submitResolvedConflicts(resolveConflictsPath)" > - <span>{{ $root.commitButtonText }}</span> + <span>{{ getCommitButtonText }}</span> </button> </div> <div class="col-6 text-right"> diff --git a/app/assets/javascripts/merge_conflicts/merge_conflict_service.js b/app/assets/javascripts/merge_conflicts/merge_conflict_service.js deleted file mode 100644 index 64d69159222..00000000000 --- a/app/assets/javascripts/merge_conflicts/merge_conflict_service.js +++ /dev/null @@ -1,16 +0,0 @@ -import axios from '../lib/utils/axios_utils'; - -export default class MergeConflictsService { - constructor(options) { - this.conflictsPath = options.conflictsPath; - this.resolveConflictsPath = options.resolveConflictsPath; - } - - fetchConflictsData() { - return axios.get(this.conflictsPath); - } - - submitResolveConflicts(data) { - return axios.post(this.resolveConflictsPath, data); - } -} diff --git a/app/assets/javascripts/merge_conflicts/merge_conflict_store.js b/app/assets/javascripts/merge_conflicts/merge_conflict_store.js deleted file mode 100644 index fb3444262ea..00000000000 --- a/app/assets/javascripts/merge_conflicts/merge_conflict_store.js +++ /dev/null @@ -1,432 +0,0 @@ -/* eslint-disable no-param-reassign, babel/camelcase, no-nested-ternary, no-continue */ - -import $ from 'jquery'; -import Cookies from 'js-cookie'; -import Vue from 'vue'; -import { s__ } from '~/locale'; - -((global) => { - global.mergeConflicts = global.mergeConflicts || {}; - - const diffViewType = Cookies.get('diff_view'); - const HEAD_HEADER_TEXT = s__('MergeConflict|HEAD//our changes'); - const ORIGIN_HEADER_TEXT = s__('MergeConflict|origin//their changes'); - const HEAD_BUTTON_TITLE = s__('MergeConflict|Use ours'); - const ORIGIN_BUTTON_TITLE = s__('MergeConflict|Use theirs'); - const INTERACTIVE_RESOLVE_MODE = 'interactive'; - const EDIT_RESOLVE_MODE = 'edit'; - const DEFAULT_RESOLVE_MODE = INTERACTIVE_RESOLVE_MODE; - const VIEW_TYPES = { - INLINE: 'inline', - PARALLEL: 'parallel', - }; - const CONFLICT_TYPES = { - TEXT: 'text', - TEXT_EDITOR: 'text-editor', - }; - - global.mergeConflicts.mergeConflictsStore = { - state: { - isLoading: true, - hasError: false, - isSubmitting: false, - isParallel: diffViewType === VIEW_TYPES.PARALLEL, - diffViewType, - conflictsData: {}, - }, - - setConflictsData(data) { - this.decorateFiles(data.files); - - this.state.conflictsData = { - files: data.files, - commitMessage: data.commit_message, - sourceBranch: data.source_branch, - targetBranch: data.target_branch, - shortCommitSha: data.commit_sha.slice(0, 7), - }; - }, - - decorateFiles(files) { - files.forEach((file) => { - file.content = ''; - file.resolutionData = {}; - file.promptDiscardConfirmation = false; - file.resolveMode = DEFAULT_RESOLVE_MODE; - file.filePath = this.getFilePath(file); - file.blobPath = file.blob_path; - - if (file.type === CONFLICT_TYPES.TEXT) { - file.showEditor = false; - file.loadEditor = false; - - this.setInlineLine(file); - this.setParallelLine(file); - } else if (file.type === CONFLICT_TYPES.TEXT_EDITOR) { - file.showEditor = true; - file.loadEditor = true; - } - }); - }, - - setInlineLine(file) { - file.inlineLines = []; - - file.sections.forEach((section) => { - let currentLineType = 'new'; - const { conflict, lines, id } = section; - - if (conflict) { - file.inlineLines.push(this.getHeadHeaderLine(id)); - } - - lines.forEach((line) => { - const { type } = line; - - if ((type === 'new' || type === 'old') && currentLineType !== type) { - currentLineType = type; - file.inlineLines.push({ lineType: 'emptyLine', richText: '' }); - } - - this.decorateLineForInlineView(line, id, conflict); - file.inlineLines.push(line); - }); - - if (conflict) { - file.inlineLines.push(this.getOriginHeaderLine(id)); - } - }); - }, - - setParallelLine(file) { - file.parallelLines = []; - const linesObj = { left: [], right: [] }; - - file.sections.forEach((section) => { - const { conflict, lines, id } = section; - - if (conflict) { - linesObj.left.push(this.getOriginHeaderLine(id)); - linesObj.right.push(this.getHeadHeaderLine(id)); - } - - lines.forEach((line) => { - const { type } = line; - - if (conflict) { - if (type === 'old') { - linesObj.left.push(this.getLineForParallelView(line, id, 'conflict')); - } else if (type === 'new') { - linesObj.right.push(this.getLineForParallelView(line, id, 'conflict', true)); - } - } else { - const lineType = type || 'context'; - - linesObj.left.push(this.getLineForParallelView(line, id, lineType)); - linesObj.right.push(this.getLineForParallelView(line, id, lineType, true)); - } - }); - - this.checkLineLengths(linesObj); - }); - - for (let i = 0, len = linesObj.left.length; i < len; i += 1) { - file.parallelLines.push([linesObj.right[i], linesObj.left[i]]); - } - }, - - setLoadingState(state) { - this.state.isLoading = state; - }, - - setErrorState(state) { - this.state.hasError = state; - }, - - setFailedRequest(message) { - this.state.hasError = true; - this.state.conflictsData.errorMessage = message; - }, - - getConflictsCount() { - if (!this.state.conflictsData.files.length) { - return 0; - } - - const { files } = this.state.conflictsData; - let count = 0; - - files.forEach((file) => { - if (file.type === CONFLICT_TYPES.TEXT) { - file.sections.forEach((section) => { - if (section.conflict) { - count += 1; - } - }); - } else { - count += 1; - } - }); - - return count; - }, - - getConflictsCountText() { - const count = this.getConflictsCount(); - const text = count > 1 ? s__('MergeConflict|conflicts') : s__('MergeConflict|conflict'); - - return `${count} ${text}`; - }, - - setViewType(viewType) { - this.state.diffView = viewType; - this.state.isParallel = viewType === VIEW_TYPES.PARALLEL; - - Cookies.set('diff_view', viewType); - }, - - getHeadHeaderLine(id) { - return { - id, - richText: HEAD_HEADER_TEXT, - buttonTitle: HEAD_BUTTON_TITLE, - type: 'new', - section: 'head', - isHeader: true, - isHead: true, - isSelected: false, - isUnselected: false, - }; - }, - - decorateLineForInlineView(line, id, conflict) { - const { type } = line; - line.id = id; - line.hasConflict = conflict; - line.isHead = type === 'new'; - line.isOrigin = type === 'old'; - line.hasMatch = type === 'match'; - line.richText = line.rich_text; - line.isSelected = false; - line.isUnselected = false; - }, - - getLineForParallelView(line, id, lineType, isHead) { - const { old_line, new_line, rich_text } = line; - const hasConflict = lineType === 'conflict'; - - return { - id, - lineType, - hasConflict, - isHead: hasConflict && isHead, - isOrigin: hasConflict && !isHead, - hasMatch: lineType === 'match', - lineNumber: isHead ? new_line : old_line, - section: isHead ? 'head' : 'origin', - richText: rich_text, - isSelected: false, - isUnselected: false, - }; - }, - - getOriginHeaderLine(id) { - return { - id, - richText: ORIGIN_HEADER_TEXT, - buttonTitle: ORIGIN_BUTTON_TITLE, - type: 'old', - section: 'origin', - isHeader: true, - isOrigin: true, - isSelected: false, - isUnselected: false, - }; - }, - - getFilePath(file) { - const { old_path, new_path } = file; - return old_path === new_path ? new_path : `${old_path} → ${new_path}`; - }, - - checkLineLengths(linesObj) { - const { left, right } = linesObj; - - if (left.length !== right.length) { - if (left.length > right.length) { - const diff = left.length - right.length; - for (let i = 0; i < diff; i += 1) { - right.push({ lineType: 'emptyLine', richText: '' }); - } - } else { - const diff = right.length - left.length; - for (let i = 0; i < diff; i += 1) { - left.push({ lineType: 'emptyLine', richText: '' }); - } - } - } - }, - - setPromptConfirmationState(file, state) { - file.promptDiscardConfirmation = state; - }, - - setFileResolveMode(file, mode) { - if (mode === INTERACTIVE_RESOLVE_MODE) { - file.showEditor = false; - } else if (mode === EDIT_RESOLVE_MODE) { - // Restore Interactive mode when switching to Edit mode - file.showEditor = true; - file.loadEditor = true; - file.resolutionData = {}; - - this.restoreFileLinesState(file); - } - - file.resolveMode = mode; - }, - - restoreFileLinesState(file) { - file.inlineLines.forEach((line) => { - if (line.hasConflict || line.isHeader) { - line.isSelected = false; - line.isUnselected = false; - } - }); - - file.parallelLines.forEach((lines) => { - const left = lines[0]; - const right = lines[1]; - const isLeftMatch = left.hasConflict || left.isHeader; - const isRightMatch = right.hasConflict || right.isHeader; - - if (isLeftMatch || isRightMatch) { - left.isSelected = false; - left.isUnselected = false; - right.isSelected = false; - right.isUnselected = false; - } - }); - }, - - isReadyToCommit() { - const { files } = this.state.conflictsData; - const hasCommitMessage = $.trim(this.state.conflictsData.commitMessage).length; - let unresolved = 0; - - for (let i = 0, l = files.length; i < l; i += 1) { - const file = files[i]; - - if (file.resolveMode === INTERACTIVE_RESOLVE_MODE) { - let numberConflicts = 0; - const resolvedConflicts = Object.keys(file.resolutionData).length; - - // We only check for conflicts type 'text' - // since conflicts `text_editor` can´t be resolved in interactive mode - if (file.type === CONFLICT_TYPES.TEXT) { - for (let j = 0, k = file.sections.length; j < k; j += 1) { - if (file.sections[j].conflict) { - numberConflicts += 1; - } - } - - if (resolvedConflicts !== numberConflicts) { - unresolved += 1; - } - } - } else if (file.resolveMode === EDIT_RESOLVE_MODE) { - // Unlikely to happen since switching to Edit mode saves content automatically. - // Checking anyway in case the save strategy changes in the future - if (!file.content) { - unresolved += 1; - continue; - } - } - } - - return !this.state.isSubmitting && hasCommitMessage && !unresolved; - }, - - getCommitButtonText() { - const initial = s__('MergeConflict|Commit to source branch'); - const inProgress = s__('MergeConflict|Committing...'); - - return this.state ? (this.state.isSubmitting ? inProgress : initial) : initial; - }, - - getCommitData() { - let commitData = {}; - - commitData = { - commit_message: this.state.conflictsData.commitMessage, - files: [], - }; - - this.state.conflictsData.files.forEach((file) => { - const addFile = { - old_path: file.old_path, - new_path: file.new_path, - }; - - if (file.type === CONFLICT_TYPES.TEXT) { - // Submit only one data for type of editing - if (file.resolveMode === INTERACTIVE_RESOLVE_MODE) { - addFile.sections = file.resolutionData; - } else if (file.resolveMode === EDIT_RESOLVE_MODE) { - addFile.content = file.content; - } - } else if (file.type === CONFLICT_TYPES.TEXT_EDITOR) { - addFile.content = file.content; - } - - commitData.files.push(addFile); - }); - - return commitData; - }, - - handleSelected(file, sectionId, selection) { - Vue.set(file.resolutionData, sectionId, selection); - - file.inlineLines.forEach((line) => { - if (line.id === sectionId && (line.hasConflict || line.isHeader)) { - this.markLine(line, selection); - } - }); - - file.parallelLines.forEach((lines) => { - const left = lines[0]; - const right = lines[1]; - const hasSameId = right.id === sectionId || left.id === sectionId; - const isLeftMatch = left.hasConflict || left.isHeader; - const isRightMatch = right.hasConflict || right.isHeader; - - if (hasSameId && (isLeftMatch || isRightMatch)) { - this.markLine(left, selection); - this.markLine(right, selection); - } - }); - }, - - markLine(line, selection) { - if (selection === 'head' && line.isHead) { - line.isSelected = true; - line.isUnselected = false; - } else if (selection === 'origin' && line.isOrigin) { - line.isSelected = true; - line.isUnselected = false; - } else { - line.isSelected = false; - line.isUnselected = true; - } - }, - - setSubmitState(state) { - this.state.isSubmitting = state; - }, - - fileTextTypePresent() { - return this.state.conflictsData.files.some((f) => f.type === CONFLICT_TYPES.TEXT); - }, - }; -})(window.gl || (window.gl = {})); diff --git a/app/assets/javascripts/merge_conflicts/merge_conflicts_bundle.js b/app/assets/javascripts/merge_conflicts/merge_conflicts_bundle.js index 4b73dd317cd..cf02c6fbd6b 100644 --- a/app/assets/javascripts/merge_conflicts/merge_conflicts_bundle.js +++ b/app/assets/javascripts/merge_conflicts/merge_conflicts_bundle.js @@ -1,100 +1,32 @@ -import $ from 'jquery'; import Vue from 'vue'; -import { __ } from '~/locale'; -import { deprecatedCreateFlash as createFlash } from '../flash'; import initIssuableSidebar from '../init_issuable_sidebar'; -import './merge_conflict_store'; -import syntaxHighlight from '../syntax_highlight'; import MergeConflictsResolverApp from './merge_conflict_resolver_app.vue'; -import MergeConflictsService from './merge_conflict_service'; +import { createStore } from './store'; export default function initMergeConflicts() { - const INTERACTIVE_RESOLVE_MODE = 'interactive'; const conflictsEl = document.querySelector('#conflicts'); - const { mergeConflictsStore } = gl.mergeConflicts; - const mergeConflictsService = new MergeConflictsService({ - conflictsPath: conflictsEl.dataset.conflictsPath, - resolveConflictsPath: conflictsEl.dataset.resolveConflictsPath, - }); - const { sourceBranchPath, mergeRequestPath } = conflictsEl.dataset; + const { + sourceBranchPath, + mergeRequestPath, + conflictsPath, + resolveConflictsPath, + } = conflictsEl.dataset; initIssuableSidebar(); + const store = createStore(); + return new Vue({ el: conflictsEl, + store, provide: { sourceBranchPath, mergeRequestPath, - }, - data: mergeConflictsStore.state, - computed: { - conflictsCountText() { - return mergeConflictsStore.getConflictsCountText(); - }, - readyToCommit() { - return mergeConflictsStore.isReadyToCommit(); - }, - commitButtonText() { - return mergeConflictsStore.getCommitButtonText(); - }, - showDiffViewTypeSwitcher() { - return mergeConflictsStore.fileTextTypePresent(); - }, + resolveConflictsPath, }, created() { - mergeConflictsService - .fetchConflictsData() - .then(({ data }) => { - if (data.type === 'error') { - mergeConflictsStore.setFailedRequest(data.message); - } else { - mergeConflictsStore.setConflictsData(data); - } - - mergeConflictsStore.setLoadingState(false); - - this.$nextTick(() => { - syntaxHighlight($('.js-syntax-highlight')); - }); - }) - .catch(() => { - mergeConflictsStore.setLoadingState(false); - mergeConflictsStore.setFailedRequest(); - }); - }, - methods: { - handleViewTypeChange(viewType) { - mergeConflictsStore.setViewType(viewType); - }, - onClickResolveModeButton(file, mode) { - if (mode === INTERACTIVE_RESOLVE_MODE && file.resolveEditChanged) { - mergeConflictsStore.setPromptConfirmationState(file, true); - return; - } - - mergeConflictsStore.setFileResolveMode(file, mode); - }, - acceptDiscardConfirmation(file) { - mergeConflictsStore.setPromptConfirmationState(file, false); - mergeConflictsStore.setFileResolveMode(file, INTERACTIVE_RESOLVE_MODE); - }, - cancelDiscardConfirmation(file) { - mergeConflictsStore.setPromptConfirmationState(file, false); - }, - commit() { - mergeConflictsStore.setSubmitState(true); - - mergeConflictsService - .submitResolveConflicts(mergeConflictsStore.getCommitData()) - .then(({ data }) => { - window.location.href = data.redirect_to; - }) - .catch(() => { - mergeConflictsStore.setSubmitState(false); - createFlash(__('Failed to save merge conflicts resolutions. Please try again!')); - }); - }, + store.dispatch('fetchConflictsData', conflictsPath); }, render(createElement) { return createElement(MergeConflictsResolverApp); diff --git a/app/assets/javascripts/merge_conflicts/mixins/line_conflict_actions.js b/app/assets/javascripts/merge_conflicts/mixins/line_conflict_actions.js deleted file mode 100644 index 364ae2b2688..00000000000 --- a/app/assets/javascripts/merge_conflicts/mixins/line_conflict_actions.js +++ /dev/null @@ -1,7 +0,0 @@ -export default { - methods: { - handleSelected(file, sectionId, selection) { - gl.mergeConflicts.mergeConflictsStore.handleSelected(file, sectionId, selection); - }, - }, -}; diff --git a/app/assets/javascripts/merge_conflicts/store/actions.js b/app/assets/javascripts/merge_conflicts/store/actions.js index 8036e90c58c..df515c4ac1a 100644 --- a/app/assets/javascripts/merge_conflicts/store/actions.js +++ b/app/assets/javascripts/merge_conflicts/store/actions.js @@ -118,3 +118,8 @@ export const handleSelected = ({ commit, state, getters }, { file, line: { id, s commit(types.UPDATE_FILE, { file: updated, index }); }; + +export const updateFile = ({ commit, getters }, file) => { + const index = getters.getFileIndex(file); + commit(types.UPDATE_FILE, { file, index }); +}; diff --git a/app/assets/javascripts/vue_shared/components/filtered_search_bar/filtered_search_bar_root.vue b/app/assets/javascripts/vue_shared/components/filtered_search_bar/filtered_search_bar_root.vue index 97a8f681faf..6952c5def8c 100644 --- a/app/assets/javascripts/vue_shared/components/filtered_search_bar/filtered_search_bar_root.vue +++ b/app/assets/javascripts/vue_shared/components/filtered_search_bar/filtered_search_bar_root.vue @@ -58,7 +58,7 @@ export default { type: String, required: false, default: '', - validator: (value) => value === '' || /(_desc)|(_asc)/g.test(value), + validator: (value) => value === '' || /(_desc)|(_asc)/gi.test(value), }, showCheckbox: { type: Boolean, diff --git a/app/controllers/concerns/authenticates_with_two_factor.rb b/app/controllers/concerns/authenticates_with_two_factor.rb index 5c74d79951f..87555a28eb8 100644 --- a/app/controllers/concerns/authenticates_with_two_factor.rb +++ b/app/controllers/concerns/authenticates_with_two_factor.rb @@ -70,7 +70,7 @@ module AuthenticatesWithTwoFactor elsif !user.confirmed? I18n.t('devise.failure.unconfirmed') else - _('Invalid Login or password') + _('Invalid login or password') end end diff --git a/app/controllers/groups/shared_projects_controller.rb b/app/controllers/groups/shared_projects_controller.rb index 90ec64d4768..7acdacc2d46 100644 --- a/app/controllers/groups/shared_projects_controller.rb +++ b/app/controllers/groups/shared_projects_controller.rb @@ -25,13 +25,13 @@ module Groups def finder_params @finder_params ||= begin - # Make the `search` param consistent for the frontend, - # which will be using `filter`. - params[:search] ||= params[:filter] if params[:filter] - # Don't show archived projects - params[:non_archived] = true - params.permit(:sort, :search, :non_archived) - end + # Make the `search` param consistent for the frontend, + # which will be using `filter`. + params[:search] ||= params[:filter] if params[:filter] + # Don't show archived projects + params[:non_archived] = true + params.permit(:sort, :search, :non_archived) + end end end end diff --git a/app/graphql/types/boards/board_issuable_input_base_type.rb b/app/graphql/types/boards/board_issuable_input_base_type.rb new file mode 100644 index 00000000000..a70d90ce253 --- /dev/null +++ b/app/graphql/types/boards/board_issuable_input_base_type.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +module Types + module Boards + # Common arguments that we can be used to filter boards epics and issues + class BoardIssuableInputBaseType < BaseInputObject + argument :label_name, GraphQL::STRING_TYPE.to_list_type, + required: false, + description: 'Filter by label name.' + + argument :author_username, GraphQL::STRING_TYPE, + required: false, + description: 'Filter by author username.' + + argument :my_reaction_emoji, GraphQL::STRING_TYPE, + required: false, + description: 'Filter by reaction emoji applied by the current user.' + end + end +end diff --git a/app/graphql/types/boards/board_issue_input_base_type.rb b/app/graphql/types/boards/board_issue_input_base_type.rb index b762cef6e58..5bd2334c722 100644 --- a/app/graphql/types/boards/board_issue_input_base_type.rb +++ b/app/graphql/types/boards/board_issue_input_base_type.rb @@ -2,11 +2,8 @@ module Types module Boards - class BoardIssueInputBaseType < BaseInputObject - argument :label_name, GraphQL::STRING_TYPE.to_list_type, - required: false, - description: 'Filter by label name.' - + # rubocop: disable Graphql/AuthorizeTypes + class BoardIssueInputBaseType < BoardIssuableInputBaseType argument :milestone_title, GraphQL::STRING_TYPE, required: false, description: 'Filter by milestone title.' @@ -15,17 +12,9 @@ module Types required: false, description: 'Filter by assignee username.' - argument :author_username, GraphQL::STRING_TYPE, - required: false, - description: 'Filter by author username.' - argument :release_tag, GraphQL::STRING_TYPE, required: false, description: 'Filter by release tag.' - - argument :my_reaction_emoji, GraphQL::STRING_TYPE, - required: false, - description: 'Filter by reaction emoji.' end end end diff --git a/app/models/board.rb b/app/models/board.rb index 418ea67fc6a..b26a9461ffc 100644 --- a/app/models/board.rb +++ b/app/models/board.rb @@ -34,14 +34,6 @@ class Board < ApplicationRecord project_id.present? end - def backlog_list - lists.merge(List.backlog).take - end - - def closed_list - lists.merge(List.closed).take - end - def scoped? false end diff --git a/app/models/concerns/boards/listable.rb b/app/models/concerns/boards/listable.rb index d6863e87261..b9827a79422 100644 --- a/app/models/concerns/boards/listable.rb +++ b/app/models/concerns/boards/listable.rb @@ -13,6 +13,7 @@ module Boards scope :ordered, -> { order(:list_type, :position) } scope :destroyable, -> { where(list_type: list_types.slice(*destroyable_types).values) } scope :movable, -> { where(list_type: list_types.slice(*movable_types).values) } + scope :without_types, ->(list_types) { where.not(list_type: list_types) } class << self def preload_preferences_for_user(lists, user) diff --git a/app/models/list.rb b/app/models/list.rb index e1954ed72c4..d72afbaee69 100644 --- a/app/models/list.rb +++ b/app/models/list.rb @@ -14,7 +14,6 @@ class List < ApplicationRecord validates :label_id, uniqueness: { scope: :board_id }, if: :label? scope :preload_associated_models, -> { preload(:board, label: :priorities) } - scope :without_types, ->(list_types) { where.not(list_type: list_types) } alias_method :preferences, :list_user_preferences diff --git a/app/services/boards/lists/list_service.rb b/app/services/boards/lists/list_service.rb index 3c296cde51e..03d54a8c74c 100644 --- a/app/services/boards/lists/list_service.rb +++ b/app/services/boards/lists/list_service.rb @@ -23,12 +23,10 @@ module Boards end def hidden_lists_for(board) - hidden = [] - - hidden << ::List.list_types[:backlog] if board.hide_backlog_list - hidden << ::List.list_types[:closed] if board.hide_closed_list - - hidden + [].tap do |hidden| + hidden << ::List.list_types[:backlog] if board.hide_backlog_list? + hidden << ::List.list_types[:closed] if board.hide_closed_list? + end end end end diff --git a/app/views/projects/branches/index.html.haml b/app/views/projects/branches/index.html.haml index beccf458138..ef7f036bb49 100644 --- a/app/views/projects/branches/index.html.haml +++ b/app/views/projects/branches/index.html.haml @@ -40,7 +40,7 @@ data: { confirm: s_('Branches|Deleting the merged branches cannot be undone. Are you sure?'), container: 'body' } do = s_('Branches|Delete merged branches') - = link_to new_project_branch_path(@project), class: 'gl-button btn btn-success' do + = link_to new_project_branch_path(@project), class: 'gl-button btn btn-confirm' do = s_('Branches|New branch') = render_if_exists 'projects/commits/mirror_status' diff --git a/app/views/projects/branches/new.html.haml b/app/views/projects/branches/new.html.haml index 17314cd7c5a..6cb2c435a30 100644 --- a/app/views/projects/branches/new.html.haml +++ b/app/views/projects/branches/new.html.haml @@ -29,6 +29,6 @@ = render 'shared/ref_dropdown', dropdown_class: 'wide' .form-text.text-muted Existing branch name, tag, or commit SHA .form-actions - = button_tag 'Create branch', class: 'gl-button btn btn-success' - = link_to 'Cancel', project_branches_path(@project), class: 'gl-button btn btn-cancel' + = button_tag 'Create branch', class: 'gl-button btn btn-confirm' + = link_to 'Cancel', project_branches_path(@project), class: 'gl-button btn btn-default btn-cancel' %script#availableRefs{ type: "application/json" }= @project.repository.ref_names.to_json.html_safe diff --git a/app/views/projects/cleanup/_show.html.haml b/app/views/projects/cleanup/_show.html.haml index b0112be0e3d..5e14b6dacfd 100644 --- a/app/views/projects/cleanup/_show.html.haml +++ b/app/views/projects/cleanup/_show.html.haml @@ -21,7 +21,7 @@ .gl-mb-3 %h5.gl-mt-0 = _("Upload object map") - %button.btn.btn-default.js-choose-file{ type: "button" } + %button.gl-button.btn.btn-default.js-choose-file{ type: "button" } = _("Choose a file") %span.gl-ml-3.js-filename = _("No file selected") @@ -29,4 +29,4 @@ .form-text.text-muted = _("The maximum file size is %{size}.") % { size: number_to_human_size(Gitlab::CurrentSettings.max_attachment_size.megabytes) } - = f.submit _('Start cleanup'), class: 'gl-button btn btn-success' + = f.submit _('Start cleanup'), class: 'gl-button btn btn-confirm' diff --git a/app/views/projects/deploy_keys/edit.html.haml b/app/views/projects/deploy_keys/edit.html.haml index 780ec128d63..1527d06e9dc 100644 --- a/app/views/projects/deploy_keys/edit.html.haml +++ b/app/views/projects/deploy_keys/edit.html.haml @@ -6,5 +6,5 @@ = form_for [@project, @deploy_key], include_id: false, html: { class: 'js-requires-input' } do |f| = render partial: 'shared/deploy_keys/form', locals: { form: f, deploy_key: @deploy_key } .form-actions - = f.submit 'Save changes', class: 'btn-success btn' - = link_to 'Cancel', project_settings_repository_path(@project), class: 'gl-button btn btn-cancel' + = f.submit 'Save changes', class: 'gl-button btn btn-confirm' + = link_to 'Cancel', project_settings_repository_path(@project), class: 'gl-button btn btn-default btn-cancel' diff --git a/app/views/projects/hooks/edit.html.haml b/app/views/projects/hooks/edit.html.haml index fb19b251d41..226cd7d89b6 100644 --- a/app/views/projects/hooks/edit.html.haml +++ b/app/views/projects/hooks/edit.html.haml @@ -10,7 +10,7 @@ = form_for [@project, @hook], as: :hook, url: project_hook_path(@project, @hook) do |f| = render partial: 'shared/web_hooks/form', locals: { form: f, hook: @hook } - = f.submit 'Save changes', class: 'btn gl-button btn-success gl-mr-3' + = f.submit 'Save changes', class: 'btn gl-button btn-confirm gl-mr-3' = render 'shared/web_hooks/test_button', hook: @hook = link_to _('Delete'), project_hook_path(@project, @hook), method: :delete, class: 'btn gl-button btn-danger float-right', data: { confirm: _('Are you sure?') } diff --git a/app/views/projects/hooks/index.html.haml b/app/views/projects/hooks/index.html.haml index 03ea623f4c6..5ca65d55eea 100644 --- a/app/views/projects/hooks/index.html.haml +++ b/app/views/projects/hooks/index.html.haml @@ -9,6 +9,6 @@ .col-lg-8.gl-mb-3 = form_for @hook, as: :hook, url: polymorphic_path([@project, :hooks]) do |f| = render partial: 'shared/web_hooks/form', locals: { form: f, hook: @hook } - = f.submit 'Add webhook', class: 'gl-button btn btn-success' + = f.submit 'Add webhook', class: 'gl-button btn btn-confirm' = render 'shared/web_hooks/index', hooks: @hooks, hook_class: @hook.class diff --git a/app/views/projects/issues/index.html.haml b/app/views/projects/issues/index.html.haml index 1d300c42768..9c54b117f4c 100644 --- a/app/views/projects/issues/index.html.haml +++ b/app/views/projects/issues/index.html.haml @@ -24,7 +24,8 @@ full_path: @project.full_path, has_blocked_issues_feature: Gitlab.ee? && @project.feature_available?(:blocked_issues).to_s, has_issuable_health_status_feature: Gitlab.ee? && @project.feature_available?(:issuable_health_status).to_s, - has_issue_weights_feature: Gitlab.ee? && @project.feature_available?(:issue_weights).to_s } } + has_issue_weights_feature: Gitlab.ee? && @project.feature_available?(:issue_weights).to_s, + issues_path: project_issues_path(@project) } } - else = render 'shared/issuable/search_bar', type: :issues diff --git a/app/views/projects/protected_branches/shared/_create_protected_branch.html.haml b/app/views/projects/protected_branches/shared/_create_protected_branch.html.haml index ae03b198bc9..308fe90d608 100644 --- a/app/views/projects/protected_branches/shared/_create_protected_branch.html.haml +++ b/app/views/projects/protected_branches/shared/_create_protected_branch.html.haml @@ -30,4 +30,4 @@ = s_("ProtectedBranch|Allow force push for all users with push access.") = render_if_exists 'projects/protected_branches/ee/code_owner_approval_form', f: f .card-footer - = f.submit s_('ProtectedBranch|Protect'), class: 'btn-success gl-button btn', disabled: true, data: { qa_selector: 'protect_button' } + = f.submit s_('ProtectedBranch|Protect'), class: 'gl-button btn btn-confirm', disabled: true, data: { qa_selector: 'protect_button' } diff --git a/app/views/projects/protected_tags/shared/_create_protected_tag.html.haml b/app/views/projects/protected_tags/shared/_create_protected_tag.html.haml index 332cdd98e4a..ba0935fff7d 100644 --- a/app/views/projects/protected_tags/shared/_create_protected_tag.html.haml +++ b/app/views/projects/protected_tags/shared/_create_protected_tag.html.haml @@ -20,4 +20,4 @@ = yield :create_access_levels .card-footer - = f.submit _('Protect'), class: 'btn-success btn', disabled: true, data: { qa_selector: 'protect_tag_button' } + = f.submit _('Protect'), class: 'gl-button btn btn-confirm', disabled: true, data: { qa_selector: 'protect_tag_button' } diff --git a/app/workers/concerns/reactive_cacheable_worker.rb b/app/workers/concerns/reactive_cacheable_worker.rb index 189b0607605..9e882c8ac7a 100644 --- a/app/workers/concerns/reactive_cacheable_worker.rb +++ b/app/workers/concerns/reactive_cacheable_worker.rb @@ -17,10 +17,10 @@ module ReactiveCacheableWorker def perform(class_name, id, *args) klass = begin - class_name.constantize - rescue NameError - nil - end + class_name.constantize + rescue NameError + nil + end return unless klass diff --git a/changelogs/unreleased/11424-background-worker-for-updating-the-maven-metadata-xml-file.yml b/changelogs/unreleased/11424-background-worker-for-updating-the-maven-metadata-xml-file.yml deleted file mode 100644 index 762f40be0f4..00000000000 --- a/changelogs/unreleased/11424-background-worker-for-updating-the-maven-metadata-xml-file.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Sync the maven metadata file upon package deletion through the UI -merge_request: 55207 -author: -type: fixed diff --git a/changelogs/unreleased/11424-sync-maven-metadata-for-maven-plugins.yml b/changelogs/unreleased/11424-sync-maven-metadata-for-maven-plugins.yml deleted file mode 100644 index b5163ef4b67..00000000000 --- a/changelogs/unreleased/11424-sync-maven-metadata-for-maven-plugins.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Support maven plugins packaging in the maven metadata sync worker -merge_request: 56229 -author: -type: fixed diff --git a/changelogs/unreleased/118597-improve-autofill-suggestions-for-usernames.yml b/changelogs/unreleased/118597-improve-autofill-suggestions-for-usernames.yml deleted file mode 100644 index 9feb3af9984..00000000000 --- a/changelogs/unreleased/118597-improve-autofill-suggestions-for-usernames.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Improve at.js members autocomplete matching -merge_request: 54681 -author: -type: changed diff --git a/changelogs/unreleased/15332-add-draft-status-change-email.yml b/changelogs/unreleased/15332-add-draft-status-change-email.yml deleted file mode 100644 index 4592395d1b2..00000000000 --- a/changelogs/unreleased/15332-add-draft-status-change-email.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add notification templates for merge request draft/WIP status change events -merge_request: 54870 -author: -type: other diff --git a/changelogs/unreleased/15332-notify-when-merge-request-draft-status-changes.yml b/changelogs/unreleased/15332-notify-when-merge-request-draft-status-changes.yml deleted file mode 100644 index eace8a9a2f8..00000000000 --- a/changelogs/unreleased/15332-notify-when-merge-request-draft-status-changes.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Send notifications to subscribers when merge request draft status removed -merge_request: 55444 -author: -type: changed diff --git a/changelogs/unreleased/18573-tooltip-remain-displayed-in-the-graph-view.yml b/changelogs/unreleased/18573-tooltip-remain-displayed-in-the-graph-view.yml deleted file mode 100644 index d4c0e903562..00000000000 --- a/changelogs/unreleased/18573-tooltip-remain-displayed-in-the-graph-view.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix tooltips failing to hide in commit graph on Firefox -merge_request: 56631 -author: Jonathan Duncan -type: fixed diff --git a/changelogs/unreleased/18792-add-container_registry_access_level.yml b/changelogs/unreleased/18792-add-container_registry_access_level.yml deleted file mode 100644 index 7775c7fe197..00000000000 --- a/changelogs/unreleased/18792-add-container_registry_access_level.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add a new project feature called container_registry -merge_request: 54831 -author: -type: changed diff --git a/changelogs/unreleased/18792-background-migration.yml b/changelogs/unreleased/18792-background-migration.yml deleted file mode 100644 index 2f873ecc047..00000000000 --- a/changelogs/unreleased/18792-background-migration.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add a background migration to copy projects.container_registry_enabled to project_features.container_registry_access_level -merge_request: 55327 -author: -type: added diff --git a/changelogs/unreleased/198562-merge-request-user-interface-encourages-accidentally-closing-the-r.yml b/changelogs/unreleased/198562-merge-request-user-interface-encourages-accidentally-closing-the-r.yml deleted file mode 100644 index ccc69cfcefe..00000000000 --- a/changelogs/unreleased/198562-merge-request-user-interface-encourages-accidentally-closing-the-r.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Deemphasize comment and close button -merge_request: 55075 -author: -type: other diff --git a/changelogs/unreleased/205484-01-project-settings-headers-cicd.yml b/changelogs/unreleased/205484-01-project-settings-headers-cicd.yml deleted file mode 100644 index 9353ccfef31..00000000000 --- a/changelogs/unreleased/205484-01-project-settings-headers-cicd.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Project Settings CI/CD headers expand/collapse on click / tap -merge_request: 54114 -author: Daniel Schömer -type: changed diff --git a/changelogs/unreleased/205484-03-project-settings-headers-cicd-variables.yml b/changelogs/unreleased/205484-03-project-settings-headers-cicd-variables.yml deleted file mode 100644 index 81b94db0f97..00000000000 --- a/changelogs/unreleased/205484-03-project-settings-headers-cicd-variables.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Project Settings CI/CD Variables header expands/collapses on click / tap -merge_request: 54117 -author: Daniel Schömer -type: changed diff --git a/changelogs/unreleased/205484-04-project-settings-headers-repo-default-branch.yml b/changelogs/unreleased/205484-04-project-settings-headers-repo-default-branch.yml deleted file mode 100644 index ab446448b76..00000000000 --- a/changelogs/unreleased/205484-04-project-settings-headers-repo-default-branch.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Project Settings Repository Default branch header expand/collaps on click -merge_request: 55228 -author: Daniel Schömer -type: changed diff --git a/changelogs/unreleased/205484-05-project-settings-headers-repository-mirroring-repositories.yml b/changelogs/unreleased/205484-05-project-settings-headers-repository-mirroring-repositories.yml deleted file mode 100644 index e471108aa3b..00000000000 --- a/changelogs/unreleased/205484-05-project-settings-headers-repository-mirroring-repositories.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Project Settings Repository Mirroring repositories header expands/collapses on click / tap -merge_request: 55229 -author: Daniel Schömer -type: changed diff --git a/changelogs/unreleased/205484-06-project-settings-headers-repository-protected-branches.yml b/changelogs/unreleased/205484-06-project-settings-headers-repository-protected-branches.yml deleted file mode 100644 index 6debece1199..00000000000 --- a/changelogs/unreleased/205484-06-project-settings-headers-repository-protected-branches.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Project Settings CI/CD Variables header expands/collapses on click / tap -merge_request: 55230 -author: Daniel Schömer -type: changed diff --git a/changelogs/unreleased/205484-07-project-settings-headers-repository-protected-tags.yml b/changelogs/unreleased/205484-07-project-settings-headers-repository-protected-tags.yml deleted file mode 100644 index 06eca221721..00000000000 --- a/changelogs/unreleased/205484-07-project-settings-headers-repository-protected-tags.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Project Settings Repository Protected tags header expands/collapses on click / tap -merge_request: 55231 -author: Daniel Schömer -type: changed diff --git a/changelogs/unreleased/205484-08-project-settings-headers-repository-cleanup.yml b/changelogs/unreleased/205484-08-project-settings-headers-repository-cleanup.yml deleted file mode 100644 index a0f79c935da..00000000000 --- a/changelogs/unreleased/205484-08-project-settings-headers-repository-cleanup.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Project Settings Repository Cleanup header expands/collapses on click / tap -merge_request: 55232 -author: Daniel Schömer -type: changed diff --git a/changelogs/unreleased/205484-09-project-settings-headers-repository-deploy-tokens.yml b/changelogs/unreleased/205484-09-project-settings-headers-repository-deploy-tokens.yml deleted file mode 100644 index b285a9e973f..00000000000 --- a/changelogs/unreleased/205484-09-project-settings-headers-repository-deploy-tokens.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Project Settings Repository Deploy tokens header expands/collapses on click / tap -merge_request: 55233 -author: Daniel Schömer -type: changed diff --git a/changelogs/unreleased/205484-10-project-settings-headers-repository-deploy-keys.yml b/changelogs/unreleased/205484-10-project-settings-headers-repository-deploy-keys.yml deleted file mode 100644 index acc49458164..00000000000 --- a/changelogs/unreleased/205484-10-project-settings-headers-repository-deploy-keys.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Project Settings Repository Deploy keys header expands/collapses on click / tap -merge_request: 55234 -author: Daniel Schömer -type: changed diff --git a/changelogs/unreleased/209061-remove-dashboard-pipeline-status-ff.yml b/changelogs/unreleased/209061-remove-dashboard-pipeline-status-ff.yml deleted file mode 100644 index 5abe0575a0f..00000000000 --- a/changelogs/unreleased/209061-remove-dashboard-pipeline-status-ff.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove dashboard_pipeline_status feature flag -merge_request: 55472 -author: -type: other diff --git a/changelogs/unreleased/20917-do-not-show-button-to-resolve-discussion-opening-an-issue-when-issu.yml b/changelogs/unreleased/20917-do-not-show-button-to-resolve-discussion-opening-an-issue-when-issu.yml deleted file mode 100644 index afa3336d83b..00000000000 --- a/changelogs/unreleased/20917-do-not-show-button-to-resolve-discussion-opening-an-issue-when-issu.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Do not show button to resolve discussion opening an issue when issues are disabled -merge_request: 54263 -author: -type: fixed diff --git a/changelogs/unreleased/212322-update-existing-vulnerabilities-occurrences-uuids.yml b/changelogs/unreleased/212322-update-existing-vulnerabilities-occurrences-uuids.yml deleted file mode 100644 index 9df5ee1920e..00000000000 --- a/changelogs/unreleased/212322-update-existing-vulnerabilities-occurrences-uuids.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Recalculate UUID for all Vulnerability::Findings -merge_request: 47529 -author: -type: other diff --git a/changelogs/unreleased/21268-cherry-pick-accross-forks-fe.yml b/changelogs/unreleased/21268-cherry-pick-accross-forks-fe.yml deleted file mode 100644 index 3f6ed77df9d..00000000000 --- a/changelogs/unreleased/21268-cherry-pick-accross-forks-fe.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add the ability to cherry pick accross forks -merge_request: 55970 -author: -type: added diff --git a/changelogs/unreleased/213581-ide-alert-user-when-reject-unsigned-commits.yml b/changelogs/unreleased/213581-ide-alert-user-when-reject-unsigned-commits.yml deleted file mode 100644 index 62ba5d7828d..00000000000 --- a/changelogs/unreleased/213581-ide-alert-user-when-reject-unsigned-commits.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Web IDE disallow commit when project has 'reject unsigned commits' rule -merge_request: 54166 -author: -type: changed diff --git a/changelogs/unreleased/215043-include-number-of-files-in-snippet-lists.yml b/changelogs/unreleased/215043-include-number-of-files-in-snippet-lists.yml deleted file mode 100644 index f2eba09c5b1..00000000000 --- a/changelogs/unreleased/215043-include-number-of-files-in-snippet-lists.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Show number of files in snippet lists -merge_request: 55452 -author: -type: changed diff --git a/changelogs/unreleased/21759-add-loading-indicator-to-update-username-button.yml b/changelogs/unreleased/21759-add-loading-indicator-to-update-username-button.yml deleted file mode 100644 index 90fe09551a8..00000000000 --- a/changelogs/unreleased/21759-add-loading-indicator-to-update-username-button.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add loading indicator to "Update username" button in account settings -merge_request: 53142 -author: Kev @KevSlashNull -type: changed diff --git a/changelogs/unreleased/218964-downstream-pipeline-caching.yml b/changelogs/unreleased/218964-downstream-pipeline-caching.yml deleted file mode 100644 index ba862b4591f..00000000000 --- a/changelogs/unreleased/218964-downstream-pipeline-caching.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix status cache for upstream pipelines -merge_request: 54937 -author: -type: fixed diff --git a/changelogs/unreleased/221296-skip_orphaned_pool_repositories_on_restore.yml b/changelogs/unreleased/221296-skip_orphaned_pool_repositories_on_restore.yml deleted file mode 100644 index 387fd59236d..00000000000 --- a/changelogs/unreleased/221296-skip_orphaned_pool_repositories_on_restore.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Skip orphaned pool repositories on restore -merge_request: 54112 -author: -type: fixed diff --git a/changelogs/unreleased/225309-add-invite_email-quick-action.yml b/changelogs/unreleased/225309-add-invite_email-quick-action.yml deleted file mode 100644 index c932f2f6b36..00000000000 --- a/changelogs/unreleased/225309-add-invite_email-quick-action.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add invite_email Quick Action -merge_request: 49264 -author: Lee Tickett -type: added diff --git a/changelogs/unreleased/226988-notify-email_participants-instead-of-external_author.yml b/changelogs/unreleased/226988-notify-email_participants-instead-of-external_author.yml deleted file mode 100644 index 9e0385549ef..00000000000 --- a/changelogs/unreleased/226988-notify-email_participants-instead-of-external_author.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Notify issue email participants instead of external author -merge_request: 51023 -author: Lee Tickett @leetickett -type: other diff --git a/changelogs/unreleased/227257-replace-bootstrap-popover-with-gitlab-ui-popover-in-merge-conflict.yml b/changelogs/unreleased/227257-replace-bootstrap-popover-with-gitlab-ui-popover-in-merge-conflict.yml deleted file mode 100644 index 67592b1baaf..00000000000 --- a/changelogs/unreleased/227257-replace-bootstrap-popover-with-gitlab-ui-popover-in-merge-conflict.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Replace Bootstrap popover with GitLab UI popover for merge conflict -merge_request: 55652 -author: -type: other diff --git a/changelogs/unreleased/228733-alert-issue-status.yml b/changelogs/unreleased/228733-alert-issue-status.yml deleted file mode 100644 index 265e4955195..00000000000 --- a/changelogs/unreleased/228733-alert-issue-status.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: 'Incident management: add issue state to alerts table' -merge_request: 55185 -author: -type: added diff --git a/changelogs/unreleased/22901-add-predefined-variable.yml b/changelogs/unreleased/22901-add-predefined-variable.yml deleted file mode 100644 index e6ff9f68453..00000000000 --- a/changelogs/unreleased/22901-add-predefined-variable.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add CI_JOB_STARTED_AT and CI_PIPELINE_CREATED_AT variables -merge_request: 54989 -author: Vincent Firmin @winkies -type: added diff --git a/changelogs/unreleased/229507-graphql-mutation-to-remove-issue-from-board.yml b/changelogs/unreleased/229507-graphql-mutation-to-remove-issue-from-board.yml deleted file mode 100644 index e8b4573d8f8..00000000000 --- a/changelogs/unreleased/229507-graphql-mutation-to-remove-issue-from-board.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove Remove from board button from board sidebar -merge_request: 53946 -author: -type: removed diff --git a/changelogs/unreleased/230465-fj-add-columns-to-track-group-wiki-storage.yml b/changelogs/unreleased/230465-fj-add-columns-to-track-group-wiki-storage.yml deleted file mode 100644 index 3bce5234ea1..00000000000 --- a/changelogs/unreleased/230465-fj-add-columns-to-track-group-wiki-storage.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add wiki_size and storage_size to NamespaceStatistics -merge_request: 54786 -author: -type: added diff --git a/changelogs/unreleased/231064-update-settings-buttons-to-pajamas.yml b/changelogs/unreleased/231064-update-settings-buttons-to-pajamas.yml deleted file mode 100644 index 780cb864703..00000000000 --- a/changelogs/unreleased/231064-update-settings-buttons-to-pajamas.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update protected branches buttons to pajamas style -merge_request: 54612 -author: -type: other diff --git a/changelogs/unreleased/231126-yo-gitlab-ui.yml b/changelogs/unreleased/231126-yo-gitlab-ui.yml deleted file mode 100644 index 4b726401bdc..00000000000 --- a/changelogs/unreleased/231126-yo-gitlab-ui.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: Apply GitLab UI button styles to buttons in ee/app/views/subscriptions/groups - directory -merge_request: 51784 -author: Yogi (@yo) -type: other diff --git a/changelogs/unreleased/233678-pajamas-mattermost-alert.yml b/changelogs/unreleased/233678-pajamas-mattermost-alert.yml deleted file mode 100644 index 62766ccd8b5..00000000000 --- a/changelogs/unreleased/233678-pajamas-mattermost-alert.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Convert mattermost alert to pajamas -merge_request: 56556 -author: -type: other diff --git a/changelogs/unreleased/235909-make-it-clearer-what-to-do-after-adding-a-namespace.yml b/changelogs/unreleased/235909-make-it-clearer-what-to-do-after-adding-a-namespace.yml deleted file mode 100644 index 76fbfedee7c..00000000000 --- a/changelogs/unreleased/235909-make-it-clearer-what-to-do-after-adding-a-namespace.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Display success message after successfully adding a namespace in Jira Connect -merge_request: 53332 -author: -type: added diff --git a/changelogs/unreleased/241058-mg-update-reply-placeholder.yml b/changelogs/unreleased/241058-mg-update-reply-placeholder.yml deleted file mode 100644 index 04a1368b46b..00000000000 --- a/changelogs/unreleased/241058-mg-update-reply-placeholder.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update accessibility of the "Reply to discussion" UX -merge_request: 54380 -author: -type: other diff --git a/changelogs/unreleased/241735-add-import-options-to-projects-and-groups-dropdown.yml b/changelogs/unreleased/241735-add-import-options-to-projects-and-groups-dropdown.yml deleted file mode 100644 index 7fbb6fca740..00000000000 --- a/changelogs/unreleased/241735-add-import-options-to-projects-and-groups-dropdown.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add Import options to projects and groups dropdown -merge_request: 54749 -author: -type: added diff --git a/changelogs/unreleased/246959-msj-opened-created-ui.yml b/changelogs/unreleased/246959-msj-opened-created-ui.yml deleted file mode 100644 index d0435638be8..00000000000 --- a/changelogs/unreleased/246959-msj-opened-created-ui.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Use Created instead of opened when describing issue creation -merge_request: 49478 -author: -type: other diff --git a/changelogs/unreleased/247636-fix-logging-search-scope.yml b/changelogs/unreleased/247636-fix-logging-search-scope.yml deleted file mode 100644 index c9e5a7a7a58..00000000000 --- a/changelogs/unreleased/247636-fix-logging-search-scope.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: 'Search: Log search.scope for the default scope' -merge_request: 54684 -author: -type: fixed diff --git a/changelogs/unreleased/247918-add-user-preference-to-turn-off-keystroke-formatting.yml b/changelogs/unreleased/247918-add-user-preference-to-turn-off-keystroke-formatting.yml deleted file mode 100644 index a68e6c67e6b..00000000000 --- a/changelogs/unreleased/247918-add-user-preference-to-turn-off-keystroke-formatting.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add user preference to turn off selected text keystroke formatting -merge_request: 53079 -author: -type: added diff --git a/changelogs/unreleased/24908-user-2fa-status-should-not-be-publicly-shown.yml b/changelogs/unreleased/24908-user-2fa-status-should-not-be-publicly-shown.yml deleted file mode 100644 index b47577d3e69..00000000000 --- a/changelogs/unreleased/24908-user-2fa-status-should-not-be-publicly-shown.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Only show 2FA badge to project maintainers and group owners -merge_request: 54646 -author: -type: changed diff --git a/changelogs/unreleased/254267-replace-bootstrap-modal-in-app-views-projects-issues-export_csv-_b.yml b/changelogs/unreleased/254267-replace-bootstrap-modal-in-app-views-projects-issues-export_csv-_b.yml deleted file mode 100644 index d905c4a618a..00000000000 --- a/changelogs/unreleased/254267-replace-bootstrap-modal-in-app-views-projects-issues-export_csv-_b.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Replace import/export CSV modal with Vue component -merge_request: 54214 -author: -type: other diff --git a/changelogs/unreleased/255913-webex-teams-pipeline-notifications.yml b/changelogs/unreleased/255913-webex-teams-pipeline-notifications.yml deleted file mode 100644 index 90468f7448b..00000000000 --- a/changelogs/unreleased/255913-webex-teams-pipeline-notifications.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix pipeline notifications for Webex Teams / Unify Circuit integrations -merge_request: 54852 -author: -type: fixed diff --git a/changelogs/unreleased/259840-composer-v2-metadata-url.yml b/changelogs/unreleased/259840-composer-v2-metadata-url.yml deleted file mode 100644 index 01896ac82ce..00000000000 --- a/changelogs/unreleased/259840-composer-v2-metadata-url.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Support composer v2 metadata-url -merge_request: 54906 -author: -type: added diff --git a/changelogs/unreleased/262859-restrict-oncall-rotation-to-interval.yml b/changelogs/unreleased/262859-restrict-oncall-rotation-to-interval.yml deleted file mode 100644 index bb6ca6da372..00000000000 --- a/changelogs/unreleased/262859-restrict-oncall-rotation-to-interval.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add active period columns to on-call rotations. -merge_request: 52998 -author: -type: added diff --git a/changelogs/unreleased/262862-add-deleted-at-to-oncall-rotation-participant.yml b/changelogs/unreleased/262862-add-deleted-at-to-oncall-rotation-participant.yml deleted file mode 100644 index d49fbdfdba6..00000000000 --- a/changelogs/unreleased/262862-add-deleted-at-to-oncall-rotation-participant.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add is_removed column on Oncall Participant model -merge_request: 54779 -author: -type: added diff --git a/changelogs/unreleased/262862-edit-rotation-graphql-mutation.yml b/changelogs/unreleased/262862-edit-rotation-graphql-mutation.yml deleted file mode 100644 index 17ea09ffa31..00000000000 --- a/changelogs/unreleased/262862-edit-rotation-graphql-mutation.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add update GraphQL mutation for Oncall Rotations -merge_request: 55955 -author: -type: added diff --git a/changelogs/unreleased/263442_remove_recursive_approach_for_all_projects_feature_flag.yml b/changelogs/unreleased/263442_remove_recursive_approach_for_all_projects_feature_flag.yml deleted file mode 100644 index 828aedf350c..00000000000 --- a/changelogs/unreleased/263442_remove_recursive_approach_for_all_projects_feature_flag.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Use recursive approach to query all projects for a namespace -merge_request: 55043 -author: -type: performance diff --git a/changelogs/unreleased/263532-instrument-usage-ping-count-number-of-enabled-integrations-per-pro.yml b/changelogs/unreleased/263532-instrument-usage-ping-count-number-of-enabled-integrations-per-pro.yml deleted file mode 100644 index d08f1a76fe2..00000000000 --- a/changelogs/unreleased/263532-instrument-usage-ping-count-number-of-enabled-integrations-per-pro.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: 'Usage ping: Histogram for enabled integrations per project' -merge_request: 55782 -author: -type: added diff --git a/changelogs/unreleased/267511-approval-gate-rule-type.yml b/changelogs/unreleased/267511-approval-gate-rule-type.yml deleted file mode 100644 index ebc2a7d80aa..00000000000 --- a/changelogs/unreleased/267511-approval-gate-rule-type.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Create ExternalApprovalRule table and associations -merge_request: 54002 -author: -type: added diff --git a/changelogs/unreleased/268207_exclude_duplicates_from_emails_on_push_recipients_when_sending.yml b/changelogs/unreleased/268207_exclude_duplicates_from_emails_on_push_recipients_when_sending.yml deleted file mode 100644 index 7c68f52d18e..00000000000 --- a/changelogs/unreleased/268207_exclude_duplicates_from_emails_on_push_recipients_when_sending.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Exclude duplicates from emails on push recipients -merge_request: 55588 -author: -type: changed diff --git a/changelogs/unreleased/270957-parallel-trigger.yml b/changelogs/unreleased/270957-parallel-trigger.yml deleted file mode 100644 index 28e290e3bd5..00000000000 --- a/changelogs/unreleased/270957-parallel-trigger.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add trigger support for matrix jobs -merge_request: 55348 -author: -type: added diff --git a/changelogs/unreleased/273286-update-project-view-buttons.yml b/changelogs/unreleased/273286-update-project-view-buttons.yml deleted file mode 100644 index 9717c98bb03..00000000000 --- a/changelogs/unreleased/273286-update-project-view-buttons.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update project page buttons to conform to design system -merge_request: 53260 -author: -type: changed diff --git a/changelogs/unreleased/273292-fy21q4-foundations-kr2-audit-and-update-buttons-on-sessionscontrol.yml b/changelogs/unreleased/273292-fy21q4-foundations-kr2-audit-and-update-buttons-on-sessionscontrol.yml deleted file mode 100644 index c6f180481bd..00000000000 --- a/changelogs/unreleased/273292-fy21q4-foundations-kr2-audit-and-update-buttons-on-sessionscontrol.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: Update the Sign In button to use the new confirm button variant, migrate OAuth - buttons to use the default variant of GlButton. -merge_request: 53254 -author: -type: other diff --git a/changelogs/unreleased/273294-fy21q4-foundations-kr2-audit-and-update-buttons-on-groupscontrolle.yml b/changelogs/unreleased/273294-fy21q4-foundations-kr2-audit-and-update-buttons-on-groupscontrolle.yml deleted file mode 100644 index 703d3639a7f..00000000000 --- a/changelogs/unreleased/273294-fy21q4-foundations-kr2-audit-and-update-buttons-on-groupscontrolle.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: Update spacing between Notifications dropdown, New Subgroup button, and New Project buttons while using the new confirm variant instead of the deprecated success variant for the New Project button. Better left alignment of Notifications dropdown at smaller breakpoints. - variant -merge_request: 55819 -author: -type: other diff --git a/changelogs/unreleased/273295-fy21q4-foundations-kr2-audit-and-update-buttons-on-userscontroller.yml b/changelogs/unreleased/273295-fy21q4-foundations-kr2-audit-and-update-buttons-on-userscontroller.yml deleted file mode 100644 index 72872c90b16..00000000000 --- a/changelogs/unreleased/273295-fy21q4-foundations-kr2-audit-and-update-buttons-on-userscontroller.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Reorder user profile actions and use the confirm variant for the follow button -merge_request: 55999 -author: -type: other diff --git a/changelogs/unreleased/273296-fy21q4-foundations-kr2-audit-and-update-buttons-on-projects-jobsco.yml b/changelogs/unreleased/273296-fy21q4-foundations-kr2-audit-and-update-buttons-on-projects-jobsco.yml deleted file mode 100644 index 1f005d67d8b..00000000000 --- a/changelogs/unreleased/273296-fy21q4-foundations-kr2-audit-and-update-buttons-on-projects-jobsco.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update buttons on a job page to conform to the Pajamas design system -merge_request: 55858 -author: -type: other diff --git a/changelogs/unreleased/273574-fix-bad-projects-has_external_issue_tracker-data.yml b/changelogs/unreleased/273574-fix-bad-projects-has_external_issue_tracker-data.yml deleted file mode 100644 index 4d8f19a04fa..00000000000 --- a/changelogs/unreleased/273574-fix-bad-projects-has_external_issue_tracker-data.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Cleanup incorrect data in projects.has_external_issue_tracker -merge_request: 53936 -author: -type: fixed diff --git a/changelogs/unreleased/275169-remove-service-desk-issue-prefix.yml b/changelogs/unreleased/275169-remove-service-desk-issue-prefix.yml deleted file mode 100644 index 9ac7247129b..00000000000 --- a/changelogs/unreleased/275169-remove-service-desk-issue-prefix.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove service desk issue prefix -merge_request: 54140 -author: Lee Tickett @leetickett -type: changed diff --git a/changelogs/unreleased/275818-be-add-info-error-messages-to-security-widget-summary-diverged.yml b/changelogs/unreleased/275818-be-add-info-error-messages-to-security-widget-summary-diverged.yml deleted file mode 100644 index c0fd71b3e58..00000000000 --- a/changelogs/unreleased/275818-be-add-info-error-messages-to-security-widget-summary-diverged.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: Add divergedFromTargetBranch field to MergeRequestType to indicate the target - branch has diverged from the source branch -merge_request: 53759 -author: -type: changed diff --git a/changelogs/unreleased/277327-fix-background-migration-argument-type.yml b/changelogs/unreleased/277327-fix-background-migration-argument-type.yml deleted file mode 100644 index 0a572fba951..00000000000 --- a/changelogs/unreleased/277327-fix-background-migration-argument-type.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix argument type for background migration -merge_request: 55097 -author: -type: fixed diff --git a/changelogs/unreleased/284116-sync-or-remove-single-file-mode-user-preference.yml b/changelogs/unreleased/284116-sync-or-remove-single-file-mode-user-preference.yml deleted file mode 100644 index 1eddb7ab59e..00000000000 --- a/changelogs/unreleased/284116-sync-or-remove-single-file-mode-user-preference.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Support "view_diffs_file_by_file" param in the Users create and update API -merge_request: 54595 -author: -type: added diff --git a/changelogs/unreleased/284392-use-info-style-for-merged-instead-of-primary.yml b/changelogs/unreleased/284392-use-info-style-for-merged-instead-of-primary.yml deleted file mode 100644 index d307bbdcd58..00000000000 --- a/changelogs/unreleased/284392-use-info-style-for-merged-instead-of-primary.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Use info colour for merged search results instead of primary -merge_request: 55008 -author: -type: changed diff --git a/changelogs/unreleased/285438-rename-instance-statistics-to-usage-trends.yml b/changelogs/unreleased/285438-rename-instance-statistics-to-usage-trends.yml deleted file mode 100644 index 7ab19331bfc..00000000000 --- a/changelogs/unreleased/285438-rename-instance-statistics-to-usage-trends.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: Deprecate instanceStatisticsMeasurements in favor of usageTrendsMeasurements - GraphQL field -merge_request: 54153 -author: -type: changed diff --git a/changelogs/unreleased/285467-package-registry-graphql-api.yml b/changelogs/unreleased/285467-package-registry-graphql-api.yml deleted file mode 100644 index ce417f42073..00000000000 --- a/changelogs/unreleased/285467-package-registry-graphql-api.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add package list to group graphql type -merge_request: 54672 -author: -type: added diff --git a/changelogs/unreleased/288326-wiki-edit-page-title-s-styling-mismatch-2.yml b/changelogs/unreleased/288326-wiki-edit-page-title-s-styling-mismatch-2.yml deleted file mode 100644 index 8bf3a59872c..00000000000 --- a/changelogs/unreleased/288326-wiki-edit-page-title-s-styling-mismatch-2.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Make new issue title look like wiki -merge_request: 50940 -author: Jacopo Beschi @jacopo-beschi -type: changed diff --git a/changelogs/unreleased/28902_extend_group_api.yml b/changelogs/unreleased/28902_extend_group_api.yml deleted file mode 100644 index 249ebb0039e..00000000000 --- a/changelogs/unreleased/28902_extend_group_api.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add groups endpoint for Projects API -merge_request: 53642 -author: -type: added diff --git a/changelogs/unreleased/290254-override-approvers-setting-does-not-reflect-actual-behavior.yml b/changelogs/unreleased/290254-override-approvers-setting-does-not-reflect-actual-behavior.yml deleted file mode 100644 index 92f6bfa5574..00000000000 --- a/changelogs/unreleased/290254-override-approvers-setting-does-not-reflect-actual-behavior.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Ensure Project Approvals API casts to boolean -merge_request: 55492 -author: -type: fixed diff --git a/changelogs/unreleased/290288-composer-cache-build-pages-task.yml b/changelogs/unreleased/290288-composer-cache-build-pages-task.yml deleted file mode 100644 index 56df4303333..00000000000 --- a/changelogs/unreleased/290288-composer-cache-build-pages-task.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add composer cache rake task -merge_request: 53772 -author: -type: added diff --git a/changelogs/unreleased/290288-composer-cache-hooks.yml b/changelogs/unreleased/290288-composer-cache-hooks.yml deleted file mode 100644 index d03ee6ebd14..00000000000 --- a/changelogs/unreleased/290288-composer-cache-hooks.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Composer cache update worker -merge_request: 54551 -author: -type: other diff --git a/changelogs/unreleased/29126-enabled-oauth-sign-in-sources-has-confusing-ui-for-disabling-enabli.yml b/changelogs/unreleased/29126-enabled-oauth-sign-in-sources-has-confusing-ui-for-disabling-enabli.yml deleted file mode 100644 index 602892efe05..00000000000 --- a/changelogs/unreleased/29126-enabled-oauth-sign-in-sources-has-confusing-ui-for-disabling-enabli.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix styling of "Enabled OAuth sign-in sources" checkboxes -merge_request: 56254 -author: -type: fixed diff --git a/changelogs/unreleased/291994-remove-the-merge-manually-message-from-mrs.yml b/changelogs/unreleased/291994-remove-the-merge-manually-message-from-mrs.yml deleted file mode 100644 index 78c71502452..00000000000 --- a/changelogs/unreleased/291994-remove-the-merge-manually-message-from-mrs.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove merge manually message -merge_request: 56016 -author: -type: fixed diff --git a/changelogs/unreleased/292128-fix-icon-spacing.yml b/changelogs/unreleased/292128-fix-icon-spacing.yml deleted file mode 100644 index d832dc9beee..00000000000 --- a/changelogs/unreleased/292128-fix-icon-spacing.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add space next to icons in epic issue list -merge_request: 54138 -author: Yogi (@yo) -type: fixed diff --git a/changelogs/unreleased/292239-schedule-duplicate-findings-removal.yml b/changelogs/unreleased/292239-schedule-duplicate-findings-removal.yml deleted file mode 100644 index 2bba7b41836..00000000000 --- a/changelogs/unreleased/292239-schedule-duplicate-findings-removal.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Schedule removal of duplicate Findings -merge_request: 55749 -author: -type: other diff --git a/changelogs/unreleased/292498-webid-extension.yml b/changelogs/unreleased/292498-webid-extension.yml deleted file mode 100644 index f2e89b78e72..00000000000 --- a/changelogs/unreleased/292498-webid-extension.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Introduce WebIDE as an extension for Editor Lite -merge_request: 51527 -author: -type: changed diff --git a/changelogs/unreleased/292602-remove-fetch_mirror_check_tags_changed-ff.yml b/changelogs/unreleased/292602-remove-fetch_mirror_check_tags_changed-ff.yml deleted file mode 100644 index b55370ee108..00000000000 --- a/changelogs/unreleased/292602-remove-fetch_mirror_check_tags_changed-ff.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Improve pull mirroring performance -merge_request: 54353 -author: -type: performance diff --git a/changelogs/unreleased/292824-track-assignee-reviewer-changes.yml b/changelogs/unreleased/292824-track-assignee-reviewer-changes.yml deleted file mode 100644 index fd404fc80d5..00000000000 --- a/changelogs/unreleased/292824-track-assignee-reviewer-changes.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add tracking to merge request assignees/reviewers changes -merge_request: 55486 -author: -type: other diff --git a/changelogs/unreleased/292824-track-label-milestone-change.yml b/changelogs/unreleased/292824-track-label-milestone-change.yml deleted file mode 100644 index 4430cbda898..00000000000 --- a/changelogs/unreleased/292824-track-label-milestone-change.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add tracking to merge request labels/milestone changes -merge_request: 55484 -author: -type: other diff --git a/changelogs/unreleased/292824-track-mr-lock-changes.yml b/changelogs/unreleased/292824-track-mr-lock-changes.yml deleted file mode 100644 index 89102528aed..00000000000 --- a/changelogs/unreleased/292824-track-mr-lock-changes.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Track usage pings when MR gets locked/unlocked -merge_request: 55069 -author: -type: other diff --git a/changelogs/unreleased/292824-track-mr-time-changes.yml b/changelogs/unreleased/292824-track-mr-time-changes.yml deleted file mode 100644 index 89721e8f8c5..00000000000 --- a/changelogs/unreleased/292824-track-mr-time-changes.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add tracking to merge request time estimate/spent changes -merge_request: 55046 -author: -type: other diff --git a/changelogs/unreleased/293655-de-emphasize-nested-reports-in-mr-widget.yml b/changelogs/unreleased/293655-de-emphasize-nested-reports-in-mr-widget.yml deleted file mode 100644 index 31d70210b17..00000000000 --- a/changelogs/unreleased/293655-de-emphasize-nested-reports-in-mr-widget.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add styling to de-emphasize nested test reports in merge requests -merge_request: 55001 -author: -type: added diff --git a/changelogs/unreleased/293921-wrap-iterations.yml b/changelogs/unreleased/293921-wrap-iterations.yml deleted file mode 100644 index 0b1c4de2642..00000000000 --- a/changelogs/unreleased/293921-wrap-iterations.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add iterations_cadences table and respective model -merge_request: 50707 -author: -type: other diff --git a/changelogs/unreleased/294436-create-project-required-fields.yml b/changelogs/unreleased/294436-create-project-required-fields.yml deleted file mode 100644 index 96f0ca574d9..00000000000 --- a/changelogs/unreleased/294436-create-project-required-fields.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Improve a11y of the new project form by marking required fields -merge_request: 55682 -author: -type: performance diff --git a/changelogs/unreleased/294443-move-wiki-helper-error-to-vue.yml b/changelogs/unreleased/294443-move-wiki-helper-error-to-vue.yml deleted file mode 100644 index d28401c2a2d..00000000000 --- a/changelogs/unreleased/294443-move-wiki-helper-error-to-vue.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move wiki helper alert to Vue -merge_request: 54517 -author: -type: other diff --git a/changelogs/unreleased/294482-conan-anonymous.yml b/changelogs/unreleased/294482-conan-anonymous.yml deleted file mode 100644 index e6724264711..00000000000 --- a/changelogs/unreleased/294482-conan-anonymous.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Allow anonymous access to public Conan packages -merge_request: 54047 -author: Steve Mokris @smokris -type: changed diff --git a/changelogs/unreleased/295665-fix-sidekiq-check.yml b/changelogs/unreleased/295665-fix-sidekiq-check.yml deleted file mode 100644 index 1afe8142289..00000000000 --- a/changelogs/unreleased/295665-fix-sidekiq-check.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix Sidekiq system check for cluster mode -merge_request: 55530 -author: Horst Prote -type: other diff --git a/changelogs/unreleased/296125-show-timeline-for-devops-score.yml b/changelogs/unreleased/296125-show-timeline-for-devops-score.yml deleted file mode 100644 index 76d60982f57..00000000000 --- a/changelogs/unreleased/296125-show-timeline-for-devops-score.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add more explanation about the presented data and show the last updated time on the DevOps Score page -merge_request: 55357 -author: -type: added diff --git a/changelogs/unreleased/296845-cablett-actioncable-prometheus-metrics.yml b/changelogs/unreleased/296845-cablett-actioncable-prometheus-metrics.yml deleted file mode 100644 index 2874ab01778..00000000000 --- a/changelogs/unreleased/296845-cablett-actioncable-prometheus-metrics.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add Prometheus metrics for ActionCable subscription events -merge_request: 56157 -author: -type: added diff --git a/changelogs/unreleased/296945-update-the-container-registry-ui-header-copy-to-remove-expiration-.yml b/changelogs/unreleased/296945-update-the-container-registry-ui-header-copy-to-remove-expiration-.yml deleted file mode 100644 index cc9dec724ef..00000000000 --- a/changelogs/unreleased/296945-update-the-container-registry-ui-header-copy-to-remove-expiration-.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove Expiration Policy text from container registry header -merge_request: 54665 -author: -type: changed diff --git a/changelogs/unreleased/297020-linux-distribution-details-in-usage-ping.yml b/changelogs/unreleased/297020-linux-distribution-details-in-usage-ping.yml deleted file mode 100644 index 644973f4b01..00000000000 --- a/changelogs/unreleased/297020-linux-distribution-details-in-usage-ping.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add Operating System details to usage ping -merge_request: 54778 -author: -type: added diff --git a/changelogs/unreleased/297240-enable-skip_dag_manual_and_delayed_jobs.yml b/changelogs/unreleased/297240-enable-skip_dag_manual_and_delayed_jobs.yml deleted file mode 100644 index 8c83a73fdfd..00000000000 --- a/changelogs/unreleased/297240-enable-skip_dag_manual_and_delayed_jobs.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix not skipped manual and delayed DAG jobs -merge_request: 54073 -author: -type: fixed diff --git a/changelogs/unreleased/297404-remove-suggestions-custom-commit-ff.yml b/changelogs/unreleased/297404-remove-suggestions-custom-commit-ff.yml deleted file mode 100644 index cb5e7bbdf8b..00000000000 --- a/changelogs/unreleased/297404-remove-suggestions-custom-commit-ff.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove suggestions custom commit feature flag -merge_request: 55344 -author: -type: changed diff --git a/changelogs/unreleased/297428-code-owner-optional-section.yml b/changelogs/unreleased/297428-code-owner-optional-section.yml deleted file mode 100644 index 7de07ee38e6..00000000000 --- a/changelogs/unreleased/297428-code-owner-optional-section.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update code owner approval tooltip message -merge_request: 55842 -author: -type: changed diff --git a/changelogs/unreleased/298827-graphql-getting-mr-diff-discussions-often-returns-500.yml b/changelogs/unreleased/298827-graphql-getting-mr-diff-discussions-often-returns-500.yml deleted file mode 100644 index c994a7d11aa..00000000000 --- a/changelogs/unreleased/298827-graphql-getting-mr-diff-discussions-often-returns-500.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: fix stringify empty position object -merge_request: 56037 -author: -type: fixed diff --git a/changelogs/unreleased/299034-group-group-links-project-authorizations-refresh-can-be-limited-to.yml b/changelogs/unreleased/299034-group-group-links-project-authorizations-refresh-can-be-limited-to.yml deleted file mode 100644 index cb64ea9f16a..00000000000 --- a/changelogs/unreleased/299034-group-group-links-project-authorizations-refresh-can-be-limited-to.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: Limit Project Authorizations refresh for shared groups only to direct members - of the group being shared with -merge_request: 51869 -author: -type: performance diff --git a/changelogs/unreleased/299884_remove_diff_highlighting_feature_flag.yml b/changelogs/unreleased/299884_remove_diff_highlighting_feature_flag.yml deleted file mode 100644 index 4ce01f2dd48..00000000000 --- a/changelogs/unreleased/299884_remove_diff_highlighting_feature_flag.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove improved_merge_diff_highlighting feature flag -merge_request: 55771 -author: -type: added diff --git a/changelogs/unreleased/299895-experiment-cleanup-customize_homepage-banner.yml b/changelogs/unreleased/299895-experiment-cleanup-customize_homepage-banner.yml deleted file mode 100644 index 07752ef9f78..00000000000 --- a/changelogs/unreleased/299895-experiment-cleanup-customize_homepage-banner.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Enable customize homepage banner by default -merge_request: 54357 -author: -type: added diff --git a/changelogs/unreleased/300021-rollout-serving-migrated-data-feature-flag-pages_serve_from_migrat.yml b/changelogs/unreleased/300021-rollout-serving-migrated-data-feature-flag-pages_serve_from_migrat.yml deleted file mode 100644 index 261cbdf516e..00000000000 --- a/changelogs/unreleased/300021-rollout-serving-migrated-data-feature-flag-pages_serve_from_migrat.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Enable serving GitLab Pages sites migrated to zip storage -merge_request: 55847 -author: -type: added diff --git a/changelogs/unreleased/30010-graphql-doc.yml b/changelogs/unreleased/30010-graphql-doc.yml deleted file mode 100644 index bc4757e4c24..00000000000 --- a/changelogs/unreleased/30010-graphql-doc.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add documentation for graphQL queries -merge_request: 54302 -author: -type: other diff --git a/changelogs/unreleased/300150-cache-search-tab-counters.yml b/changelogs/unreleased/300150-cache-search-tab-counters.yml deleted file mode 100644 index 8ed84148142..00000000000 --- a/changelogs/unreleased/300150-cache-search-tab-counters.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Cache /search/count requests in the browser -merge_request: 55036 -author: -type: performance diff --git a/changelogs/unreleased/300302-db-constraint-terraform-name.yml b/changelogs/unreleased/300302-db-constraint-terraform-name.yml deleted file mode 100644 index bbbe52224fb..00000000000 --- a/changelogs/unreleased/300302-db-constraint-terraform-name.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Added non-null constraint to terraform state name -merge_request: 54940 -author: -type: changed diff --git a/changelogs/unreleased/300417-agent-token-description.yml b/changelogs/unreleased/300417-agent-token-description.yml deleted file mode 100644 index 2ec438ac75f..00000000000 --- a/changelogs/unreleased/300417-agent-token-description.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add description field to cluster agent token -merge_request: 54091 -author: -type: changed diff --git a/changelogs/unreleased/300435-add-label.yml b/changelogs/unreleased/300435-add-label.yml deleted file mode 100644 index 544ae90a238..00000000000 --- a/changelogs/unreleased/300435-add-label.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add GlToggle label in sidebar subscription toggle -merge_request: 54548 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/300443-add-label.yml b/changelogs/unreleased/300443-add-label.yml deleted file mode 100644 index 93694ba5ad3..00000000000 --- a/changelogs/unreleased/300443-add-label.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add GlToggle label in edit feature flag -merge_request: 54546 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/300458-send-gitlab_standard-context-with-requirements-events-from-the-fro.yml b/changelogs/unreleased/300458-send-gitlab_standard-context-with-requirements-events-from-the-fro.yml deleted file mode 100644 index 8f05ba746f7..00000000000 --- a/changelogs/unreleased/300458-send-gitlab_standard-context-with-requirements-events-from-the-fro.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Send gitlab_standard context with events from the frontend -merge_request: 52959 -author: -type: changed diff --git a/changelogs/unreleased/300479-change-prefilled-mr-title-description.yml b/changelogs/unreleased/300479-change-prefilled-mr-title-description.yml deleted file mode 100644 index 6b360bde0ae..00000000000 --- a/changelogs/unreleased/300479-change-prefilled-mr-title-description.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Prefill first multiline commit message for new MRs -merge_request: 52984 -author: Max Coplan @vegerot -type: changed diff --git a/changelogs/unreleased/300617-aqualls-prometheus-settings.yml b/changelogs/unreleased/300617-aqualls-prometheus-settings.yml deleted file mode 100644 index 7b2e6d43d9b..00000000000 --- a/changelogs/unreleased/300617-aqualls-prometheus-settings.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Updated UI text to match style guidelines -merge_request: 53179 -author: -type: other diff --git a/changelogs/unreleased/300654-refactor-confidentiality-sidebar-component-to-use-vue-apollo.yml b/changelogs/unreleased/300654-refactor-confidentiality-sidebar-component-to-use-vue-apollo.yml deleted file mode 100644 index 4c26e6db2f6..00000000000 --- a/changelogs/unreleased/300654-refactor-confidentiality-sidebar-component-to-use-vue-apollo.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Sidebar confidentiality component updates in real-time -merge_request: 53858 -author: -type: changed diff --git a/changelogs/unreleased/300714-provide-name-of-expiring-token-in-personal-access-token-expiration.yml b/changelogs/unreleased/300714-provide-name-of-expiring-token-in-personal-access-token-expiration.yml deleted file mode 100644 index 8ecf876eab7..00000000000 --- a/changelogs/unreleased/300714-provide-name-of-expiring-token-in-personal-access-token-expiration.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Provide name of expiring token in personal access token expiration mail -merge_request: 53766 -author: -type: changed diff --git a/changelogs/unreleased/300750-add-missing-reviewers-information-to-closed-merge-request-email.yml b/changelogs/unreleased/300750-add-missing-reviewers-information-to-closed-merge-request-email.yml deleted file mode 100644 index 814b4280ed2..00000000000 --- a/changelogs/unreleased/300750-add-missing-reviewers-information-to-closed-merge-request-email.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add reviewers detail to text version of closed merge request email -merge_request: 55594 -author: -type: added diff --git a/changelogs/unreleased/300750-add-missing-reviewers-information-to-merge-request-email-notificat.yml b/changelogs/unreleased/300750-add-missing-reviewers-information-to-merge-request-email-notificat.yml deleted file mode 100644 index 5b23c6204b6..00000000000 --- a/changelogs/unreleased/300750-add-missing-reviewers-information-to-merge-request-email-notificat.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add reviewers detail to merge when pipeline succeeds email -merge_request: 55463 -author: -type: added diff --git a/changelogs/unreleased/300750-add-missing-reviewers-information-to-merge_request_status_email.yml b/changelogs/unreleased/300750-add-missing-reviewers-information-to-merge_request_status_email.yml deleted file mode 100644 index 83712f4b799..00000000000 --- a/changelogs/unreleased/300750-add-missing-reviewers-information-to-merge_request_status_email.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add reviewers detail to merge request status email -merge_request: 55584 -author: -type: added diff --git a/changelogs/unreleased/300750-add-missing-reviewers-information-to-merge_request_unmergeable_ema.yml b/changelogs/unreleased/300750-add-missing-reviewers-information-to-merge_request_unmergeable_ema.yml deleted file mode 100644 index 1b0656d8777..00000000000 --- a/changelogs/unreleased/300750-add-missing-reviewers-information-to-merge_request_unmergeable_ema.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add reviewers detail to merge request unmergeable email -merge_request: 55582 -author: -type: added diff --git a/changelogs/unreleased/300750-add-missing-reviewers-information-to-merged-merge-request-email.yml b/changelogs/unreleased/300750-add-missing-reviewers-information-to-merged-merge-request-email.yml deleted file mode 100644 index e0ab1b8153f..00000000000 --- a/changelogs/unreleased/300750-add-missing-reviewers-information-to-merged-merge-request-email.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add reviewers detail to merged merge request email -merge_request: 55589 -author: -type: added diff --git a/changelogs/unreleased/300750-add-missing-reviewers-information-to-new_mention_in_merge_request_.yml b/changelogs/unreleased/300750-add-missing-reviewers-information-to-new_mention_in_merge_request_.yml deleted file mode 100644 index 899eb1f6784..00000000000 --- a/changelogs/unreleased/300750-add-missing-reviewers-information-to-new_mention_in_merge_request_.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add reviewers detail to new mention in merge request email -merge_request: 56184 -author: -type: added diff --git a/changelogs/unreleased/300750-merge-request-email-notifications-don-t-include-reviewer-informati.yml b/changelogs/unreleased/300750-merge-request-email-notifications-don-t-include-reviewer-informati.yml deleted file mode 100644 index f8dc5102854..00000000000 --- a/changelogs/unreleased/300750-merge-request-email-notifications-don-t-include-reviewer-informati.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add reviewers detail to new merge request email -merge_request: 54781 -author: -type: added diff --git a/changelogs/unreleased/300787-clean-up-block-class-for-jobs-feature.yml b/changelogs/unreleased/300787-clean-up-block-class-for-jobs-feature.yml deleted file mode 100644 index 1b8daefa223..00000000000 --- a/changelogs/unreleased/300787-clean-up-block-class-for-jobs-feature.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Adjust debug button icon size in job detail page -merge_request: 55886 -author: -type: changed diff --git a/changelogs/unreleased/300827-alerts-integrations-UX-cleanup-2nd-part.yml b/changelogs/unreleased/300827-alerts-integrations-UX-cleanup-2nd-part.yml deleted file mode 100644 index 2b9278a1c16..00000000000 --- a/changelogs/unreleased/300827-alerts-integrations-UX-cleanup-2nd-part.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Alert integrations UX cleanup -merge_request: 55786 -author: -type: changed diff --git a/changelogs/unreleased/300827-split-alert-integrations-form.yml b/changelogs/unreleased/300827-split-alert-integrations-form.yml deleted file mode 100644 index 8825f2908d1..00000000000 --- a/changelogs/unreleased/300827-split-alert-integrations-form.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Regroup alerts integration form into tabs -merge_request: 54842 -author: -type: changed diff --git a/changelogs/unreleased/300853-convert-compare-show-to-vue.yml b/changelogs/unreleased/300853-convert-compare-show-to-vue.yml deleted file mode 100644 index 2926ef2682b..00000000000 --- a/changelogs/unreleased/300853-convert-compare-show-to-vue.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Restyle the repository compare show page -merge_request: 53523 -author: -type: changed diff --git a/changelogs/unreleased/300865-default-confidentiality-of-replies.yml b/changelogs/unreleased/300865-default-confidentiality-of-replies.yml deleted file mode 100644 index 3a4e2531d3e..00000000000 --- a/changelogs/unreleased/300865-default-confidentiality-of-replies.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Default confidentiality of replies -merge_request: 54122 -author: Lee Tickett @leetickett -type: added diff --git a/changelogs/unreleased/301018-cablett-collapsed-epic-board-list.yml b/changelogs/unreleased/301018-cablett-collapsed-epic-board-list.yml deleted file mode 100644 index 89862375316..00000000000 --- a/changelogs/unreleased/301018-cablett-collapsed-epic-board-list.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Expose epic board list collapsed value via GraphQL -merge_request: 54541 -author: -type: added diff --git a/changelogs/unreleased/301032-license-creation-via-api.yml b/changelogs/unreleased/301032-license-creation-via-api.yml deleted file mode 100644 index a16d1442981..00000000000 --- a/changelogs/unreleased/301032-license-creation-via-api.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Hide repeated trial offers on self-hosted instances -merge_request: 54550 -author: -type: fixed diff --git a/changelogs/unreleased/301056-make-the-geo-oauth-application-trusted-by-default.yml b/changelogs/unreleased/301056-make-the-geo-oauth-application-trusted-by-default.yml deleted file mode 100644 index 4215b6620b1..00000000000 --- a/changelogs/unreleased/301056-make-the-geo-oauth-application-trusted-by-default.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Make the Geo OAuth application trusted by default -merge_request: 54079 -author: -type: changed diff --git a/changelogs/unreleased/30680-job-needs-optional.yml b/changelogs/unreleased/30680-job-needs-optional.yml deleted file mode 100644 index 577a3467c4d..00000000000 --- a/changelogs/unreleased/30680-job-needs-optional.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Implement needs:job:optional for CI pipelines -merge_request: 55468 -author: -type: added diff --git a/changelogs/unreleased/320746-update-the-package-list-item-ui-make-action-buttons-in-list-items-.yml b/changelogs/unreleased/320746-update-the-package-list-item-ui-make-action-buttons-in-list-items-.yml deleted file mode 100644 index 795f54f8fa1..00000000000 --- a/changelogs/unreleased/320746-update-the-package-list-item-ui-make-action-buttons-in-list-items-.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: 'Registry: make delete icon buttons secondary' -merge_request: 54545 -author: -type: changed diff --git a/changelogs/unreleased/320758-remove-merge_request_rebase_nowait_lock-feature-flag.yml b/changelogs/unreleased/320758-remove-merge_request_rebase_nowait_lock-feature-flag.yml deleted file mode 100644 index 136bf392bf4..00000000000 --- a/changelogs/unreleased/320758-remove-merge_request_rebase_nowait_lock-feature-flag.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove merge_request_rebase_nowait_lock flag -merge_request: 56406 -author: -type: other diff --git a/changelogs/unreleased/320901-container-page-says-image-repository-not-found.yml b/changelogs/unreleased/320901-container-page-says-image-repository-not-found.yml deleted file mode 100644 index a9494b43b2e..00000000000 --- a/changelogs/unreleased/320901-container-page-says-image-repository-not-found.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Use Root Image for images with missing name -merge_request: 54693 -author: -type: changed diff --git a/changelogs/unreleased/320949-ci-help-path-remove-prop.yml b/changelogs/unreleased/320949-ci-help-path-remove-prop.yml deleted file mode 100644 index 62cf0b2de64..00000000000 --- a/changelogs/unreleased/320949-ci-help-path-remove-prop.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update 'Get Started with CI/CD' button with latest URL -merge_request: 54344 -author: -type: changed diff --git a/changelogs/unreleased/321027-enable-ci_trigger_payload_into_pipeline.yml b/changelogs/unreleased/321027-enable-ci_trigger_payload_into_pipeline.yml deleted file mode 100644 index b42836a2011..00000000000 --- a/changelogs/unreleased/321027-enable-ci_trigger_payload_into_pipeline.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Implement passing trigger payload into pipeline variable -merge_request: 54544 -author: -type: added diff --git a/changelogs/unreleased/321054-enable-quick-actions-usage-data.yml b/changelogs/unreleased/321054-enable-quick-actions-usage-data.yml deleted file mode 100644 index 759d5375cc6..00000000000 --- a/changelogs/unreleased/321054-enable-quick-actions-usage-data.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add quick action data to usage ping -merge_request: 54293 -author: -type: other diff --git a/changelogs/unreleased/321057-refine-the-user-interface-related-to-package-lists-and-the-search-.yml b/changelogs/unreleased/321057-refine-the-user-interface-related-to-package-lists-and-the-search-.yml deleted file mode 100644 index fea15e883f3..00000000000 --- a/changelogs/unreleased/321057-refine-the-user-interface-related-to-package-lists-and-the-search-.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Refine Registry Lists and Search Bar UI -merge_request: 54549 -author: -type: changed diff --git a/changelogs/unreleased/321102-terraform-module-registry-iteration-1.yml b/changelogs/unreleased/321102-terraform-module-registry-iteration-1.yml deleted file mode 100644 index 1ceddac6a88..00000000000 --- a/changelogs/unreleased/321102-terraform-module-registry-iteration-1.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add plan limit for Terraform Module package file size -merge_request: 56414 -author: -type: added diff --git a/changelogs/unreleased/321185-experiment-cleanup-invite_members_version_a-add-invite-members-to-.yml b/changelogs/unreleased/321185-experiment-cleanup-invite_members_version_a-add-invite-members-to-.yml deleted file mode 100644 index 6dc3c991128..00000000000 --- a/changelogs/unreleased/321185-experiment-cleanup-invite_members_version_a-add-invite-members-to-.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Cleanup invite_members_version_a experiment -merge_request: 55178 -author: -type: added diff --git a/changelogs/unreleased/321283-update-kubernetes-version-supported.yml b/changelogs/unreleased/321283-update-kubernetes-version-supported.yml deleted file mode 100644 index 66cd57ff2a5..00000000000 --- a/changelogs/unreleased/321283-update-kubernetes-version-supported.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update k8s version for EKS cluster -merge_request: 54389 -author: Vincent Firmin @winkies -type: fixed diff --git a/changelogs/unreleased/321297-load-only-metadata-for-markdown-video-include.yml b/changelogs/unreleased/321297-load-only-metadata-for-markdown-video-include.yml deleted file mode 100644 index 74e9bc68e6e..00000000000 --- a/changelogs/unreleased/321297-load-only-metadata-for-markdown-video-include.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add preload attribute to markdown videos -merge_request: 54350 -author: -type: performance diff --git a/changelogs/unreleased/321372-feature-flag-rollout-of-vue_notification_dropdown.yml b/changelogs/unreleased/321372-feature-flag-rollout-of-vue_notification_dropdown.yml deleted file mode 100644 index 02cd7ab47b6..00000000000 --- a/changelogs/unreleased/321372-feature-flag-rollout-of-vue_notification_dropdown.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add Vue notifications dropdown component -merge_request: 54422 -author: -type: other diff --git a/changelogs/unreleased/321420-spell-npm-with-lowercase-letters-in-package-registry-ui.yml b/changelogs/unreleased/321420-spell-npm-with-lowercase-letters-in-package-registry-ui.yml deleted file mode 100644 index c3db475ff87..00000000000 --- a/changelogs/unreleased/321420-spell-npm-with-lowercase-letters-in-package-registry-ui.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Spell "npm" with lowercase letters in Package Registry UI -merge_request: 54163 -author: Simon Stieger @sim0 -type: other diff --git a/changelogs/unreleased/321488-mr-changes-view-render-version-dropdowns-above-navbar.yml b/changelogs/unreleased/321488-mr-changes-view-render-version-dropdowns-above-navbar.yml deleted file mode 100644 index 101ab1bfffc..00000000000 --- a/changelogs/unreleased/321488-mr-changes-view-render-version-dropdowns-above-navbar.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Render version dropdowns in MR changes view above tab navbar -merge_request: 54159 -author: Simon Stieger @sim0 -type: fixed diff --git a/changelogs/unreleased/321514-fix-clipboard-buttons.yml b/changelogs/unreleased/321514-fix-clipboard-buttons.yml deleted file mode 100644 index b7a27104c7a..00000000000 --- a/changelogs/unreleased/321514-fix-clipboard-buttons.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix copy to clipboard tooltip button -merge_request: 54472 -author: -type: fixed diff --git a/changelogs/unreleased/321593-hide-issue-counts-in-project-list-where-issues-disabled.yml b/changelogs/unreleased/321593-hide-issue-counts-in-project-list-where-issues-disabled.yml deleted file mode 100644 index 7d53db8fa13..00000000000 --- a/changelogs/unreleased/321593-hide-issue-counts-in-project-list-where-issues-disabled.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Hide issue count and link in project list for projects with disabled issues -merge_request: 54275 -author: Simon Stieger @sim0 -type: fixed diff --git a/changelogs/unreleased/321659-handle-discord-errors.yml b/changelogs/unreleased/321659-handle-discord-errors.yml deleted file mode 100644 index 2bf969dd8b0..00000000000 --- a/changelogs/unreleased/321659-handle-discord-errors.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Handle RestClient errors in Discord integration -merge_request: 56112 -author: -type: fixed diff --git a/changelogs/unreleased/321667-follow-first.yml b/changelogs/unreleased/321667-follow-first.yml deleted file mode 100644 index e0670e58fa5..00000000000 --- a/changelogs/unreleased/321667-follow-first.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Show user follow button first instead of center -merge_request: 54326 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/321677-enable-pages-zip-file-protocol-by-default.yml b/changelogs/unreleased/321677-enable-pages-zip-file-protocol-by-default.yml deleted file mode 100644 index b745c40c932..00000000000 --- a/changelogs/unreleased/321677-enable-pages-zip-file-protocol-by-default.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Enable pages_serve_with_zip_file_protocol by default -merge_request: 54650 -author: -type: changed diff --git a/changelogs/unreleased/321745-remove-temporary-index-idx_on_issues_where_service_desk_reply_to_i.yml b/changelogs/unreleased/321745-remove-temporary-index-idx_on_issues_where_service_desk_reply_to_i.yml deleted file mode 100644 index ae68dcc1824..00000000000 --- a/changelogs/unreleased/321745-remove-temporary-index-idx_on_issues_where_service_desk_reply_to_i.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove temporary index on issues -merge_request: 54387 -author: Lee Tickett @leetickett -type: other diff --git a/changelogs/unreleased/321752-cablett-delete-epic-warning.yml b/changelogs/unreleased/321752-cablett-delete-epic-warning.yml deleted file mode 100644 index 6ca739c60b7..00000000000 --- a/changelogs/unreleased/321752-cablett-delete-epic-warning.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Clarify epic delete warning -merge_request: 55574 -author: -type: changed diff --git a/changelogs/unreleased/321788-fix-n-plus-1s.yml b/changelogs/unreleased/321788-fix-n-plus-1s.yml deleted file mode 100644 index 93246bc5988..00000000000 --- a/changelogs/unreleased/321788-fix-n-plus-1s.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix N+1s related to per-build metadata lookups -merge_request: 55053 -author: -type: performance diff --git a/changelogs/unreleased/321790-load-refs-on-demand.yml b/changelogs/unreleased/321790-load-refs-on-demand.yml deleted file mode 100644 index c20ad02500d..00000000000 --- a/changelogs/unreleased/321790-load-refs-on-demand.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Improve performance of manual pipeline form by limiting the refs loaded on page load. -merge_request: 55394 -author: -type: performance diff --git a/changelogs/unreleased/321827-fix-n-1-in-runner-validations.yml b/changelogs/unreleased/321827-fix-n-1-in-runner-validations.yml deleted file mode 100644 index 0fff3673afd..00000000000 --- a/changelogs/unreleased/321827-fix-n-1-in-runner-validations.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Improve performance of validations when a group has a lot of runners -merge_request: 54774 -author: -type: performance diff --git a/changelogs/unreleased/321834-fj-remove-nil-values-from-snippet-blobs.yml b/changelogs/unreleased/321834-fj-remove-nil-values-from-snippet-blobs.yml deleted file mode 100644 index ffbe850246e..00000000000 --- a/changelogs/unreleased/321834-fj-remove-nil-values-from-snippet-blobs.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix bug when snippet blobs array contain a nil value -merge_request: 54552 -author: -type: fixed diff --git a/changelogs/unreleased/321845-performance-pipeline-table-dropdowns.yml b/changelogs/unreleased/321845-performance-pipeline-table-dropdowns.yml deleted file mode 100644 index 0fac7a05f7a..00000000000 --- a/changelogs/unreleased/321845-performance-pipeline-table-dropdowns.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Reduce elements in Pipeline page dropdowns with lazy -merge_request: 54674 -author: -type: changed diff --git a/changelogs/unreleased/321862_fix_long_commit_messages_error.yml b/changelogs/unreleased/321862_fix_long_commit_messages_error.yml deleted file mode 100644 index f21c864b7ed..00000000000 --- a/changelogs/unreleased/321862_fix_long_commit_messages_error.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix 500 error for long commit messages -merge_request: 55320 -author: -type: fixed diff --git a/changelogs/unreleased/321917_introduce_info_column_for_the_security_scans_table.yml b/changelogs/unreleased/321917_introduce_info_column_for_the_security_scans_table.yml deleted file mode 100644 index 761bd7970c4..00000000000 --- a/changelogs/unreleased/321917_introduce_info_column_for_the_security_scans_table.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: "Introduce `info` column for the `security_scans` table" -merge_request: 55983 -author: -type: added diff --git a/changelogs/unreleased/321929-fix-dark-mode-app-header-on-profile-preferences-page.yml b/changelogs/unreleased/321929-fix-dark-mode-app-header-on-profile-preferences-page.yml deleted file mode 100644 index 9d2647b3904..00000000000 --- a/changelogs/unreleased/321929-fix-dark-mode-app-header-on-profile-preferences-page.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Correctly style Dark Mode application header in profile preferences -merge_request: 54575 -author: Simon Stieger @sim0 -type: fixed diff --git a/changelogs/unreleased/321939-fix-error-when-rendering-project-pipeline.yml b/changelogs/unreleased/321939-fix-error-when-rendering-project-pipeline.yml deleted file mode 100644 index 06ee0f27cc0..00000000000 --- a/changelogs/unreleased/321939-fix-error-when-rendering-project-pipeline.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix rendering of projects when the last pipeline changes during rendering -merge_request: 54651 -author: -type: fixed diff --git a/changelogs/unreleased/321958-fix-npm-instance-level-api-with-scoped-packages.yml b/changelogs/unreleased/321958-fix-npm-instance-level-api-with-scoped-packages.yml deleted file mode 100644 index 2a1ca8c7845..00000000000 --- a/changelogs/unreleased/321958-fix-npm-instance-level-api-with-scoped-packages.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix the npm instance level API to exclude subgroups -merge_request: 54554 -author: -type: fixed diff --git a/changelogs/unreleased/322019-iterations-list-and-report-views-missing-left-sidebar-status.yml b/changelogs/unreleased/322019-iterations-list-and-report-views-missing-left-sidebar-status.yml deleted file mode 100644 index 48e391e7b32..00000000000 --- a/changelogs/unreleased/322019-iterations-list-and-report-views-missing-left-sidebar-status.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Expand left sidebar `Issues` when viewing project iterations -merge_request: 54815 -author: -type: fixed diff --git a/changelogs/unreleased/322059-remove-api_v3_repos_events_optimization-flag.yml b/changelogs/unreleased/322059-remove-api_v3_repos_events_optimization-flag.yml deleted file mode 100644 index dafad2cb1eb..00000000000 --- a/changelogs/unreleased/322059-remove-api_v3_repos_events_optimization-flag.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix N+1 queries in api/v3/repos/:namespace/:project/events endpoint -merge_request: 55442 -author: -type: performance diff --git a/changelogs/unreleased/322082-fix-invite-member-modal-dropdown-styling.yml b/changelogs/unreleased/322082-fix-invite-member-modal-dropdown-styling.yml deleted file mode 100644 index 9767730bd45..00000000000 --- a/changelogs/unreleased/322082-fix-invite-member-modal-dropdown-styling.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix invite member modal dropdown checkbox styling -merge_request: 55832 -author: Kev @KevSlashNull -type: fixed diff --git a/changelogs/unreleased/322098-limit-projectauthorizations-refresh-jobs-to-distinct-users.yml b/changelogs/unreleased/322098-limit-projectauthorizations-refresh-jobs-to-distinct-users.yml deleted file mode 100644 index 6908a48cee0..00000000000 --- a/changelogs/unreleased/322098-limit-projectauthorizations-refresh-jobs-to-distinct-users.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: Consider only distinct user ids for project authorizations refresh jobs for - group members -merge_request: 54697 -author: -type: performance diff --git a/changelogs/unreleased/322099-harden-addition-for-template-repositoriu.yml b/changelogs/unreleased/322099-harden-addition-for-template-repositoriu.yml deleted file mode 100644 index 6a18b8bff3a..00000000000 --- a/changelogs/unreleased/322099-harden-addition-for-template-repositoriu.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Harden added metrics -merge_request: 54805 -author: -type: performance diff --git a/changelogs/unreleased/322099-sql-definition-for-template_repositories.yml b/changelogs/unreleased/322099-sql-definition-for-template_repositories.yml deleted file mode 100644 index 3d8ca3577d2..00000000000 --- a/changelogs/unreleased/322099-sql-definition-for-template_repositories.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Hardened "add" arithmetic for usage data -merge_request: 54794 -author: -type: performance diff --git a/changelogs/unreleased/322103-optimize-the-dictionary-view-to-not-repeat-same-columns.yml b/changelogs/unreleased/322103-optimize-the-dictionary-view-to-not-repeat-same-columns.yml deleted file mode 100644 index 52dfdb2fe35..00000000000 --- a/changelogs/unreleased/322103-optimize-the-dictionary-view-to-not-repeat-same-columns.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Optimize Metrics Dictionary -merge_request: 55145 -author: -type: changed diff --git a/changelogs/unreleased/322125-add-prometheus-histo-on-retries.yml b/changelogs/unreleased/322125-add-prometheus-histo-on-retries.yml deleted file mode 100644 index c478e7cc75d..00000000000 --- a/changelogs/unreleased/322125-add-prometheus-histo-on-retries.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add histogram for optimistic lock retries -merge_request: 55614 -author: -type: other diff --git a/changelogs/unreleased/322125-log-optimistic-locking-retries.yml b/changelogs/unreleased/322125-log-optimistic-locking-retries.yml deleted file mode 100644 index 3be2d28fda9..00000000000 --- a/changelogs/unreleased/322125-log-optimistic-locking-retries.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Log Optimistic Locks with retries -merge_request: 55187 -author: -type: other diff --git a/changelogs/unreleased/322128-token-used-field.yml b/changelogs/unreleased/322128-token-used-field.yml deleted file mode 100644 index 91738da7046..00000000000 --- a/changelogs/unreleased/322128-token-used-field.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add last_used_at field to cluster agent token -merge_request: 56023 -author: -type: changed diff --git a/changelogs/unreleased/322395-hide-archived-projects-from-select-project.yml b/changelogs/unreleased/322395-hide-archived-projects-from-select-project.yml deleted file mode 100644 index 7dc2d20c33e..00000000000 --- a/changelogs/unreleased/322395-hide-archived-projects-from-select-project.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Hide archived projects from group boards project select dropdown -merge_request: 56452 -author: -type: changed diff --git a/changelogs/unreleased/322424-btn-confirm.yml b/changelogs/unreleased/322424-btn-confirm.yml deleted file mode 100644 index d5d854b9803..00000000000 --- a/changelogs/unreleased/322424-btn-confirm.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Change the button to Primary Blue -merge_request: 55204 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/322598-skip_client_authentication_for_password_grant.yml b/changelogs/unreleased/322598-skip_client_authentication_for_password_grant.yml deleted file mode 100644 index 92c52f120e2..00000000000 --- a/changelogs/unreleased/322598-skip_client_authentication_for_password_grant.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Reenable OAuth password grants without client credentials -merge_request: 55873 -author: -type: fixed diff --git a/changelogs/unreleased/322626-use-grouped-list-for-test-report-widget.yml b/changelogs/unreleased/322626-use-grouped-list-for-test-report-widget.yml deleted file mode 100644 index a16a804f975..00000000000 --- a/changelogs/unreleased/322626-use-grouped-list-for-test-report-widget.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add section headers for the test report widget on the merge request page -merge_request: 56252 -author: -type: added diff --git a/changelogs/unreleased/322663-remove-deprecated-button-variant-on-integration-configuration-view.yml b/changelogs/unreleased/322663-remove-deprecated-button-variant-on-integration-configuration-view.yml deleted file mode 100644 index a52136ecbb8..00000000000 --- a/changelogs/unreleased/322663-remove-deprecated-button-variant-on-integration-configuration-view.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update button variant to confirm on integration settings page -merge_request: 55017 -author: -type: changed diff --git a/changelogs/unreleased/322724-fix-compare-page-dropdown-loading.yml b/changelogs/unreleased/322724-fix-compare-page-dropdown-loading.yml deleted file mode 100644 index 42359bb81d2..00000000000 --- a/changelogs/unreleased/322724-fix-compare-page-dropdown-loading.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix issue with loading the repository compare page -merge_request: 55058 -author: -type: fixed diff --git a/changelogs/unreleased/322745-add-missing-token-names.yml b/changelogs/unreleased/322745-add-missing-token-names.yml deleted file mode 100644 index 2f54e6d46b3..00000000000 --- a/changelogs/unreleased/322745-add-missing-token-names.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update cluster agent tokens with null names -merge_request: 55673 -author: -type: changed diff --git a/changelogs/unreleased/322770-change-security-mr-widget-icon.yml b/changelogs/unreleased/322770-change-security-mr-widget-icon.yml deleted file mode 100644 index 07933f247c1..00000000000 --- a/changelogs/unreleased/322770-change-security-mr-widget-icon.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Use more common help icon in security report MR widget -merge_request: 55741 -author: -type: other diff --git a/changelogs/unreleased/322782-increase-contrast-of-solarized-light-in-web-ide.yml b/changelogs/unreleased/322782-increase-contrast-of-solarized-light-in-web-ide.yml deleted file mode 100644 index 907b45576f4..00000000000 --- a/changelogs/unreleased/322782-increase-contrast-of-solarized-light-in-web-ide.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Increase contrast of Solarized Light in Web IDE -merge_request: 55361 -author: -type: changed diff --git a/changelogs/unreleased/322901-fix-pagerduty-webhook.yml b/changelogs/unreleased/322901-fix-pagerduty-webhook.yml deleted file mode 100644 index 96063a0f937..00000000000 --- a/changelogs/unreleased/322901-fix-pagerduty-webhook.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: 'Fixes: No such file or directory lib/pager_duty/validator/schemas/message.json' -merge_request: 55725 -author: -type: fixed diff --git a/changelogs/unreleased/322960-degredation-in-assigning-team-members-on-boards-view.yml b/changelogs/unreleased/322960-degredation-in-assigning-team-members-on-boards-view.yml deleted file mode 100644 index ac2bf901187..00000000000 --- a/changelogs/unreleased/322960-degredation-in-assigning-team-members-on-boards-view.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix assignees search to show only project members -merge_request: 55396 -author: -type: fixed diff --git a/changelogs/unreleased/323015-fix-empty-field-in-custom-notification-events-modal.yml b/changelogs/unreleased/323015-fix-empty-field-in-custom-notification-events-modal.yml deleted file mode 100644 index 70b4e90f911..00000000000 --- a/changelogs/unreleased/323015-fix-empty-field-in-custom-notification-events-modal.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix empty field in custom notification events modal -merge_request: 55313 -author: Kev @KevSlashNull -type: fixed diff --git a/changelogs/unreleased/323059-batch-load-findings-by-uuid.yml b/changelogs/unreleased/323059-batch-load-findings-by-uuid.yml deleted file mode 100644 index b2b20c337b8..00000000000 --- a/changelogs/unreleased/323059-batch-load-findings-by-uuid.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Batch-load vulnerability findings by UUID -merge_request: 55642 -author: -type: performance diff --git a/changelogs/unreleased/323088-expose-project-access-token-value-with-create-api.yml b/changelogs/unreleased/323088-expose-project-access-token-value-with-create-api.yml deleted file mode 100644 index afe3f5118b7..00000000000 --- a/changelogs/unreleased/323088-expose-project-access-token-value-with-create-api.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Expose project access token value with create API -merge_request: 55408 -author: -type: changed diff --git a/changelogs/unreleased/323127-add-more-mr-approval-settings-to-group-level.yml b/changelogs/unreleased/323127-add-more-mr-approval-settings-to-group-level.yml deleted file mode 100644 index 780874a1e15..00000000000 --- a/changelogs/unreleased/323127-add-more-mr-approval-settings-to-group-level.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add more settings to group MR approval settings -merge_request: 56215 -author: -type: added diff --git a/changelogs/unreleased/323163-restore-gitlab_database_transaction_seconds_sum-for-sidekiq.yml b/changelogs/unreleased/323163-restore-gitlab_database_transaction_seconds_sum-for-sidekiq.yml deleted file mode 100644 index 3a942971ee2..00000000000 --- a/changelogs/unreleased/323163-restore-gitlab_database_transaction_seconds_sum-for-sidekiq.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Port essential database metrics to Sidekiq -merge_request: 56005 -author: -type: changed diff --git a/changelogs/unreleased/323175-database-timeout-in-pages-migration-task.yml b/changelogs/unreleased/323175-database-timeout-in-pages-migration-task.yml deleted file mode 100644 index 9d7fec257f5..00000000000 --- a/changelogs/unreleased/323175-database-timeout-in-pages-migration-task.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add index for pages migration -merge_request: 55757 -author: -type: added diff --git a/changelogs/unreleased/323376-security-configuration-ui-strings-ssot.yml b/changelogs/unreleased/323376-security-configuration-ui-strings-ssot.yml deleted file mode 100644 index 5b901a6e158..00000000000 --- a/changelogs/unreleased/323376-security-configuration-ui-strings-ssot.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add API Fuzzing to Security Configuration page, and re-order scanners -merge_request: 56022 -author: -type: changed diff --git a/changelogs/unreleased/323474-update-incident-setting-copy.yml b/changelogs/unreleased/323474-update-incident-setting-copy.yml deleted file mode 100644 index 2d3f090c804..00000000000 --- a/changelogs/unreleased/323474-update-incident-setting-copy.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update text for email config under Incidents in Settings > Operations -merge_request: 55753 -author: -type: changed diff --git a/changelogs/unreleased/323493-feature-flag-enable-caching-issues-count-in-group-sidebar.yml b/changelogs/unreleased/323493-feature-flag-enable-caching-issues-count-in-group-sidebar.yml deleted file mode 100644 index f24fad89305..00000000000 --- a/changelogs/unreleased/323493-feature-flag-enable-caching-issues-count-in-group-sidebar.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Cache open issues count in group sidebar -merge_request: 55968 -author: -type: added diff --git a/changelogs/unreleased/323555-disable-gc-compacting-via-monkey-patch.yml b/changelogs/unreleased/323555-disable-gc-compacting-via-monkey-patch.yml deleted file mode 100644 index e30ea036c86..00000000000 --- a/changelogs/unreleased/323555-disable-gc-compacting-via-monkey-patch.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Temporary make `GC.compact` no-op -merge_request: 56079 -author: -type: changed diff --git a/changelogs/unreleased/323674-initiate-web-hook-logs-partitioning.yml b/changelogs/unreleased/323674-initiate-web-hook-logs-partitioning.yml deleted file mode 100644 index 7b36ed31e4d..00000000000 --- a/changelogs/unreleased/323674-initiate-web-hook-logs-partitioning.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add web_hook_logs partitioning migration -merge_request: 55938 -author: -type: other diff --git a/changelogs/unreleased/323848-fix-diff-comment-hidden-menu.yml b/changelogs/unreleased/323848-fix-diff-comment-hidden-menu.yml deleted file mode 100644 index 7f32410cf75..00000000000 --- a/changelogs/unreleased/323848-fix-diff-comment-hidden-menu.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix diff comment hidden dropdown -merge_request: 56072 -author: -type: fixed diff --git a/changelogs/unreleased/323863-add-project-id.yml b/changelogs/unreleased/323863-add-project-id.yml deleted file mode 100644 index 59dbf6ee7e4..00000000000 --- a/changelogs/unreleased/323863-add-project-id.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add project_id to pipeline api -merge_request: 56339 -author: -type: changed diff --git a/changelogs/unreleased/324388-jira-integration-form-on-groups-doesn-t-check-license-correctly.yml b/changelogs/unreleased/324388-jira-integration-form-on-groups-doesn-t-check-license-correctly.yml deleted file mode 100644 index 7458a5a3783..00000000000 --- a/changelogs/unreleased/324388-jira-integration-form-on-groups-doesn-t-check-license-correctly.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix upgrade banner for Jira issues showing on group / instance level integrations -merge_request: 56628 -author: -type: fixed diff --git a/changelogs/unreleased/33283-remove-svg.yml b/changelogs/unreleased/33283-remove-svg.yml deleted file mode 100644 index 67b5775c639..00000000000 --- a/changelogs/unreleased/33283-remove-svg.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove illustration in export/import CSV modal -merge_request: 54136 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/33685-lift-npm-package-naming-convention-for-project-level-api.yml b/changelogs/unreleased/33685-lift-npm-package-naming-convention-for-project-level-api.yml deleted file mode 100644 index 0aedf325fcf..00000000000 --- a/changelogs/unreleased/33685-lift-npm-package-naming-convention-for-project-level-api.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Lift the NPM package naming convention for the project level API -merge_request: 53266 -author: -type: changed diff --git a/changelogs/unreleased/33748-dont-close-auto-suggest-select-boxes-if-only-mouseup-outside-box.yml b/changelogs/unreleased/33748-dont-close-auto-suggest-select-boxes-if-only-mouseup-outside-box.yml deleted file mode 100644 index e9ed4250c2e..00000000000 --- a/changelogs/unreleased/33748-dont-close-auto-suggest-select-boxes-if-only-mouseup-outside-box.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Don't close auto suggest select boxes on click if only the mouseup (but not the mousedown) event happened outside the box -merge_request: 51139 -author: Simon Stieger @sim0 -type: fixed diff --git a/changelogs/unreleased/35579-remove-graphql_logging-feature-flag.yml b/changelogs/unreleased/35579-remove-graphql_logging-feature-flag.yml deleted file mode 100644 index d6b8caec999..00000000000 --- a/changelogs/unreleased/35579-remove-graphql_logging-feature-flag.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove graphql_logging feature flag -merge_request: 54984 -author: -type: other diff --git a/changelogs/unreleased/51727-allow-job-identiy-self.yml b/changelogs/unreleased/51727-allow-job-identiy-self.yml deleted file mode 100644 index 03e91a8b6b7..00000000000 --- a/changelogs/unreleased/51727-allow-job-identiy-self.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add API endpoint for fetching a single job by CI_JOB_TOKEN -merge_request: 51727 -author: ahmet2mir -type: added diff --git a/changelogs/unreleased/55412-typo-in-pipeline-status-email.yml b/changelogs/unreleased/55412-typo-in-pipeline-status-email.yml deleted file mode 100644 index 7fc2fb9416e..00000000000 --- a/changelogs/unreleased/55412-typo-in-pipeline-status-email.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix typo in pipeline status email -merge_request: 55412 -author: Gabriel Berke-Williams -type: fixed diff --git a/changelogs/unreleased/6utzeit-de-master-patch-15431.yml b/changelogs/unreleased/6utzeit-de-master-patch-15431.yml deleted file mode 100644 index 71da21dc571..00000000000 --- a/changelogs/unreleased/6utzeit-de-master-patch-15431.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Updating general Chef .gitlab-ci.yml template -merge_request: 54676 -author: -type: other diff --git a/changelogs/unreleased/aa-harden-with-prometheus-callback.yml b/changelogs/unreleased/aa-harden-with-prometheus-callback.yml deleted file mode 100644 index 084bcd136f0..00000000000 --- a/changelogs/unreleased/aa-harden-with-prometheus-callback.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Harden Prometheus client usage data wrapper -merge_request: 56210 -author: -type: other diff --git a/changelogs/unreleased/ab-index-rename.yml b/changelogs/unreleased/ab-index-rename.yml deleted file mode 100644 index 3fe01db7581..00000000000 --- a/changelogs/unreleased/ab-index-rename.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Rename indexes to remove inconsistencies -merge_request: 51011 -author: -type: other diff --git a/changelogs/unreleased/add-allow-force-push-option.yml b/changelogs/unreleased/add-allow-force-push-option.yml deleted file mode 100644 index 2441d42b073..00000000000 --- a/changelogs/unreleased/add-allow-force-push-option.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add Allow force push option to Protected branches -merge_request: 55261 -author: Mycroft Kang @TaehyeokKang -type: added diff --git a/changelogs/unreleased/add-ci-job-token-job-artifacts.yml b/changelogs/unreleased/add-ci-job-token-job-artifacts.yml deleted file mode 100644 index d88cb4ca8b5..00000000000 --- a/changelogs/unreleased/add-ci-job-token-job-artifacts.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Allow `$CI_JOB_TOKEN` to access the "Download a single artifact file" endpoints of the Jobs Artifacts API. -merge_request: 55042 -author: Eric Engestrom @1ace -type: changed diff --git a/changelogs/unreleased/add-client-id-application-context-metadata.yml b/changelogs/unreleased/add-client-id-application-context-metadata.yml deleted file mode 100644 index e0b89fd13cc..00000000000 --- a/changelogs/unreleased/add-client-id-application-context-metadata.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add client_id to application context -merge_request: 55683 -author: -type: added diff --git a/changelogs/unreleased/add-enable-in-product-marketing-emails-application-setting.yml b/changelogs/unreleased/add-enable-in-product-marketing-emails-application-setting.yml deleted file mode 100644 index bc9dfaa1ec8..00000000000 --- a/changelogs/unreleased/add-enable-in-product-marketing-emails-application-setting.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add application setting for enabling in-product marketing emails -merge_request: 54324 -author: -type: added diff --git a/changelogs/unreleased/add-environment-job-pipeline-hooks.yml b/changelogs/unreleased/add-environment-job-pipeline-hooks.yml deleted file mode 100644 index e138ea742ac..00000000000 --- a/changelogs/unreleased/add-environment-job-pipeline-hooks.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Added environment details to Job Hook and Pipeline Hook -merge_request: 54480 -author: AdrianLC -type: changed diff --git a/changelogs/unreleased/add-graphql-etag-caching.yml b/changelogs/unreleased/add-graphql-etag-caching.yml deleted file mode 100644 index 45021b4d965..00000000000 --- a/changelogs/unreleased/add-graphql-etag-caching.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add support for ETag caching when using GraphQL -merge_request: 53978 -author: -type: changed diff --git a/changelogs/unreleased/add-kas-api-url-config.yml b/changelogs/unreleased/add-kas-api-url-config.yml deleted file mode 100644 index e1e7682c659..00000000000 --- a/changelogs/unreleased/add-kas-api-url-config.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add internal and external URL config for KAS -merge_request: 54260 -author: -type: added diff --git a/changelogs/unreleased/add-not-null-constraint-to-gitlab-subscriptions-namespace-id.yml b/changelogs/unreleased/add-not-null-constraint-to-gitlab-subscriptions-namespace-id.yml deleted file mode 100644 index 5a3008fc892..00000000000 --- a/changelogs/unreleased/add-not-null-constraint-to-gitlab-subscriptions-namespace-id.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add NOT NULL constraint to gitlab_subscriptions namespace_id -merge_request: 54319 -author: -type: other diff --git a/changelogs/unreleased/add-ollowed-user-activity-as-dashboard-user-choices.yml b/changelogs/unreleased/add-ollowed-user-activity-as-dashboard-user-choices.yml deleted file mode 100644 index 5188cd2ee08..00000000000 --- a/changelogs/unreleased/add-ollowed-user-activity-as-dashboard-user-choices.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: "Add 'Followed User Activity' as dashboard user choices" -merge_request: 55165 -author: Benj Fassbind @randombenj -type: added diff --git a/changelogs/unreleased/add-pages-cache-settings-to-docs.yml b/changelogs/unreleased/add-pages-cache-settings-to-docs.yml deleted file mode 100644 index c21e99ec7ac..00000000000 --- a/changelogs/unreleased/add-pages-cache-settings-to-docs.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add Pages cache configuration settings -merge_request: 55812 -author: -type: added diff --git a/changelogs/unreleased/add-rails-application-config-hosts.yml b/changelogs/unreleased/add-rails-application-config-hosts.yml deleted file mode 100644 index bfa339a5759..00000000000 --- a/changelogs/unreleased/add-rails-application-config-hosts.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add setting to control Rails.application.config.hosts -merge_request: 55491 -author: -type: added diff --git a/changelogs/unreleased/add-space-download-icon.yml b/changelogs/unreleased/add-space-download-icon.yml deleted file mode 100644 index 85012d9bbcb..00000000000 --- a/changelogs/unreleased/add-space-download-icon.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add space next to download icon in download artifacts button -merge_request: 54228 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/add_request_cve_issue.yml b/changelogs/unreleased/add_request_cve_issue.yml deleted file mode 100644 index 45b2c1bf384..00000000000 --- a/changelogs/unreleased/add_request_cve_issue.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Adds Request CVE ID button to issue sidebar -merge_request: 41203 -author: -type: added diff --git a/changelogs/unreleased/add_role_and_rolebinding_for_cilium_network_policies.yml b/changelogs/unreleased/add_role_and_rolebinding_for_cilium_network_policies.yml deleted file mode 100644 index a04cb215c1f..00000000000 --- a/changelogs/unreleased/add_role_and_rolebinding_for_cilium_network_policies.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add Role and Rolebinding for CiliumNetworkPolicies -merge_request: 54130 -author: -type: changed diff --git a/changelogs/unreleased/admin-dashboard-typo.yml b/changelogs/unreleased/admin-dashboard-typo.yml deleted file mode 100644 index 81b113f8b1a..00000000000 --- a/changelogs/unreleased/admin-dashboard-typo.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: "Renamed the second project panel to group" -merge_request: 54834 -author: Niklas van Schrick @Taucher2003 -type: fixed diff --git a/changelogs/unreleased/afontaine-collapse-deployments-in-merge-requests.yml b/changelogs/unreleased/afontaine-collapse-deployments-in-merge-requests.yml deleted file mode 100644 index 80e57a65c33..00000000000 --- a/changelogs/unreleased/afontaine-collapse-deployments-in-merge-requests.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Collapse deployments in merge request if many -merge_request: 55239 -author: -type: changed diff --git a/changelogs/unreleased/ajk-graphql-accept-mr.yml b/changelogs/unreleased/ajk-graphql-accept-mr.yml deleted file mode 100644 index de9001f00a9..00000000000 --- a/changelogs/unreleased/ajk-graphql-accept-mr.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add mutation to accept merge requests -merge_request: 54758 -author: -type: added diff --git a/changelogs/unreleased/ajk-linked-graphql-docs.yml b/changelogs/unreleased/ajk-linked-graphql-docs.yml deleted file mode 100644 index 0dad77f4684..00000000000 --- a/changelogs/unreleased/ajk-linked-graphql-docs.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Link fields to types in GraphQL reference documentation -merge_request: 55901 -author: -type: changed diff --git a/changelogs/unreleased/ajk-reviewer-widget-approved.yml b/changelogs/unreleased/ajk-reviewer-widget-approved.yml deleted file mode 100644 index 36cd7c97406..00000000000 --- a/changelogs/unreleased/ajk-reviewer-widget-approved.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Show icon next to reviewers who have approved -merge_request: 54365 -author: -type: changed diff --git a/changelogs/unreleased/alert-incident-url-follow.yml b/changelogs/unreleased/alert-incident-url-follow.yml deleted file mode 100644 index 9320520f8ab..00000000000 --- a/changelogs/unreleased/alert-incident-url-follow.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Allow alert to link to incidents -merge_request: 55426 -author: -type: changed diff --git a/changelogs/unreleased/alexpooley-remove_shared_group_membership_auth_ff.yml b/changelogs/unreleased/alexpooley-remove_shared_group_membership_auth_ff.yml deleted file mode 100644 index 2d676854b3f..00000000000 --- a/changelogs/unreleased/alexpooley-remove_shared_group_membership_auth_ff.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Include shared with groups in list of authorized groups -merge_request: 54894 -author: -type: fixed diff --git a/changelogs/unreleased/align-mr-conflict-center.yml b/changelogs/unreleased/align-mr-conflict-center.yml deleted file mode 100644 index 6dd58206b3c..00000000000 --- a/changelogs/unreleased/align-mr-conflict-center.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Align merge conflict warning text to center -merge_request: 54145 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/am-import-metrics-definitions-for-usage_ping.yml b/changelogs/unreleased/am-import-metrics-definitions-for-usage_ping.yml deleted file mode 100644 index b771574acbf..00000000000 --- a/changelogs/unreleased/am-import-metrics-definitions-for-usage_ping.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add package and quickaction metrics to Metrics Dictionary -merge_request: 55846 -author: -type: added diff --git a/changelogs/unreleased/auto-devops-default-branch-deploy.yml b/changelogs/unreleased/auto-devops-default-branch-deploy.yml deleted file mode 100644 index 0b0738afa37..00000000000 --- a/changelogs/unreleased/auto-devops-default-branch-deploy.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix Auto DevOps deploys that use a default branch that's not named 'master' -merge_request: 53280 -author: Mitchell Cash @MitchellCash -type: fixed diff --git a/changelogs/unreleased/auto-scroll-pipeline-editor-on-commit.yml b/changelogs/unreleased/auto-scroll-pipeline-editor-on-commit.yml deleted file mode 100644 index af2a3ab9974..00000000000 --- a/changelogs/unreleased/auto-scroll-pipeline-editor-on-commit.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Auto-scroll to top of page upon committing in pipeline editor -merge_request: 54657 -author: -type: changed diff --git a/changelogs/unreleased/blame-performance.yml b/changelogs/unreleased/blame-performance.yml deleted file mode 100644 index ef19b47c412..00000000000 --- a/changelogs/unreleased/blame-performance.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Refactor blame view -merge_request: 55488 -author: -type: performance diff --git a/changelogs/unreleased/board_args_consolidation.yml b/changelogs/unreleased/board_args_consolidation.yml deleted file mode 100644 index 137ef740b4f..00000000000 --- a/changelogs/unreleased/board_args_consolidation.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fixed error handling GraphQL API when issue board creation fails -merge_request: 56467 -author: -type: fixed diff --git a/changelogs/unreleased/btn-confirm-abuse-reports.yml b/changelogs/unreleased/btn-confirm-abuse-reports.yml deleted file mode 100644 index 8bda61fdc62..00000000000 --- a/changelogs/unreleased/btn-confirm-abuse-reports.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-confirm from btn-success in abuse_reports folder -merge_request: 55262 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-admin-appearances.yml b/changelogs/unreleased/btn-confirm-admin-appearances.yml deleted file mode 100644 index a315f8bba5c..00000000000 --- a/changelogs/unreleased/btn-confirm-admin-appearances.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-confirm from btn-success in admin/appearances directory -merge_request: 55264 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-admin-application-settings.yml b/changelogs/unreleased/btn-confirm-admin-application-settings.yml deleted file mode 100644 index d76e20b410a..00000000000 --- a/changelogs/unreleased/btn-confirm-admin-application-settings.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-confirm from btn-success in admin application_settings directory -merge_request: 55263 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-admin-applications.yml b/changelogs/unreleased/btn-confirm-admin-applications.yml deleted file mode 100644 index fd37336e32c..00000000000 --- a/changelogs/unreleased/btn-confirm-admin-applications.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-confirm from btn-success in admin/applications directory -merge_request: 55265 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-admin-broadcast-messages.yml b/changelogs/unreleased/btn-confirm-admin-broadcast-messages.yml deleted file mode 100644 index 2e3a3608739..00000000000 --- a/changelogs/unreleased/btn-confirm-admin-broadcast-messages.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-confirm from btn-success in admin/broadcast_messages directory -merge_request: 55266 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-admin-deploy-keys.yml b/changelogs/unreleased/btn-confirm-admin-deploy-keys.yml deleted file mode 100644 index 108545d6b10..00000000000 --- a/changelogs/unreleased/btn-confirm-admin-deploy-keys.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-confirm from btn-success in admin/deploy_keys directory -merge_request: 55267 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-admin-groups.yml b/changelogs/unreleased/btn-confirm-admin-groups.yml deleted file mode 100644 index 6096a1fcc0c..00000000000 --- a/changelogs/unreleased/btn-confirm-admin-groups.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-confirm from btn-success in admin/groups directory -merge_request: 55268 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-admin-hooks.yml b/changelogs/unreleased/btn-confirm-admin-hooks.yml deleted file mode 100644 index 64423b5f166..00000000000 --- a/changelogs/unreleased/btn-confirm-admin-hooks.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-confirm from btn-success in admin/hooks directory -merge_request: 55272 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-admin-labels.yml b/changelogs/unreleased/btn-confirm-admin-labels.yml deleted file mode 100644 index c725e94553c..00000000000 --- a/changelogs/unreleased/btn-confirm-admin-labels.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-confirm from btn-success in admin/labels directory -merge_request: 55273 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-admin-projects.yml b/changelogs/unreleased/btn-confirm-admin-projects.yml deleted file mode 100644 index 1718ea79164..00000000000 --- a/changelogs/unreleased/btn-confirm-admin-projects.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-confirm from btn-success in admin/projects directory -merge_request: 55274 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-admin-serverless.yml b/changelogs/unreleased/btn-confirm-admin-serverless.yml deleted file mode 100644 index 80ede18d4fe..00000000000 --- a/changelogs/unreleased/btn-confirm-admin-serverless.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-confirm from btn-success in admin/serverless directory -merge_request: 55275 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-admin-users.yml b/changelogs/unreleased/btn-confirm-admin-users.yml deleted file mode 100644 index cafd375323f..00000000000 --- a/changelogs/unreleased/btn-confirm-admin-users.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-confirm from btn-success in admin/users directory -merge_request: 55276 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-auth.yml b/changelogs/unreleased/btn-confirm-auth.yml deleted file mode 100644 index ea7797c4c75..00000000000 --- a/changelogs/unreleased/btn-confirm-auth.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-confirm in app/views/devise directory -merge_request: 55200 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-clusters.yml b/changelogs/unreleased/btn-confirm-clusters.yml deleted file mode 100644 index fe1b0d732dc..00000000000 --- a/changelogs/unreleased/btn-confirm-clusters.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move from btn-success to btn-confirm in clusters directory -merge_request: 56205 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-doorkeeper.yml b/changelogs/unreleased/btn-confirm-doorkeeper.yml deleted file mode 100644 index dd36f4dcfc4..00000000000 --- a/changelogs/unreleased/btn-confirm-doorkeeper.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-confirm from btn-success in views/doorkeeper directory -merge_request: 55277 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-empty-states.yml b/changelogs/unreleased/btn-confirm-empty-states.yml deleted file mode 100644 index 746d6ae71a7..00000000000 --- a/changelogs/unreleased/btn-confirm-empty-states.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-confirm in app/views/shared/empty_states directory -merge_request: 55203 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-envs.yml b/changelogs/unreleased/btn-confirm-envs.yml deleted file mode 100644 index 00331aa31f6..00000000000 --- a/changelogs/unreleased/btn-confirm-envs.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to confirm variant from success in environments directory -merge_request: 56203 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-group-milestones.yml b/changelogs/unreleased/btn-confirm-group-milestones.yml deleted file mode 100644 index 199126c8a3a..00000000000 --- a/changelogs/unreleased/btn-confirm-group-milestones.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-confirm from btn-success in groups/milestones directory -merge_request: 55278 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-group-settings.yml b/changelogs/unreleased/btn-confirm-group-settings.yml deleted file mode 100644 index 93597600920..00000000000 --- a/changelogs/unreleased/btn-confirm-group-settings.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-confirm from btn-success in groups/settings directory -merge_request: 55281 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-group.yml b/changelogs/unreleased/btn-confirm-group.yml deleted file mode 100644 index f344de75b83..00000000000 --- a/changelogs/unreleased/btn-confirm-group.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-confirm from btn-success in groups directory -merge_request: 55282 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-home.yml b/changelogs/unreleased/btn-confirm-home.yml deleted file mode 100644 index a8b063fc5f3..00000000000 --- a/changelogs/unreleased/btn-confirm-home.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove deprecated button variant in groups, projects and snippets -merge_request: 54747 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-imports.yml b/changelogs/unreleased/btn-confirm-imports.yml deleted file mode 100644 index efc5730d6ce..00000000000 --- a/changelogs/unreleased/btn-confirm-imports.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-confirm from btn-success in views/import directory -merge_request: 55291 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-js-2fa.yml b/changelogs/unreleased/btn-confirm-js-2fa.yml deleted file mode 100644 index ea56cd1df0f..00000000000 --- a/changelogs/unreleased/btn-confirm-js-2fa.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to confirm variant from success in 2fa codes component -merge_request: 55729 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-js-badges.yml b/changelogs/unreleased/btn-confirm-js-badges.yml deleted file mode 100644 index a20bb68fa43..00000000000 --- a/changelogs/unreleased/btn-confirm-js-badges.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to confirm variant from success in badges component -merge_request: 55730 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-project-branches.yml b/changelogs/unreleased/btn-confirm-project-branches.yml new file mode 100644 index 00000000000..343a133b97b --- /dev/null +++ b/changelogs/unreleased/btn-confirm-project-branches.yml @@ -0,0 +1,5 @@ +--- +title: Move from btn-success to btn-confirm in branches directory +merge_request: 56325 +author: Yogi (@yo) +type: changed diff --git a/changelogs/unreleased/btn-confirm-project-cleanup.yml b/changelogs/unreleased/btn-confirm-project-cleanup.yml new file mode 100644 index 00000000000..3555adeb975 --- /dev/null +++ b/changelogs/unreleased/btn-confirm-project-cleanup.yml @@ -0,0 +1,5 @@ +--- +title: Move from btn-success to btn-confirm in cleanup directory +merge_request: 56329 +author: Yogi (@yo) +type: changed diff --git a/changelogs/unreleased/btn-confirm-project-deploy-keys.yml b/changelogs/unreleased/btn-confirm-project-deploy-keys.yml new file mode 100644 index 00000000000..5379cf2364f --- /dev/null +++ b/changelogs/unreleased/btn-confirm-project-deploy-keys.yml @@ -0,0 +1,5 @@ +--- +title: Move from btn-success to btn-confirm in deploy_keys directory +merge_request: 56331 +author: Yogi (@yo) +type: changed diff --git a/changelogs/unreleased/btn-confirm-project-hooks.yml b/changelogs/unreleased/btn-confirm-project-hooks.yml new file mode 100644 index 00000000000..a69db9ba302 --- /dev/null +++ b/changelogs/unreleased/btn-confirm-project-hooks.yml @@ -0,0 +1,5 @@ +--- +title: Move from btn-success to btn-confirm in hooks directory +merge_request: 56334 +author: Yogi (@yo) +type: changed diff --git a/changelogs/unreleased/btn-confirm-project-milestones.yml b/changelogs/unreleased/btn-confirm-project-milestones.yml deleted file mode 100644 index b03e041f1a4..00000000000 --- a/changelogs/unreleased/btn-confirm-project-milestones.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move from btn-success to btn-confirm in milestones directory -merge_request: 56342 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-project-mirrors.yml b/changelogs/unreleased/btn-confirm-project-mirrors.yml deleted file mode 100644 index 9f847c6fdac..00000000000 --- a/changelogs/unreleased/btn-confirm-project-mirrors.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move from btn-success to btn-confirm in mirrors directory -merge_request: 56343 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-project-pages-domains.yml b/changelogs/unreleased/btn-confirm-project-pages-domains.yml deleted file mode 100644 index 1bfe960e7a1..00000000000 --- a/changelogs/unreleased/btn-confirm-project-pages-domains.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move from btn-success to btn-confirm in pages_domains directory -merge_request: 56349 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-project-pages.yml b/changelogs/unreleased/btn-confirm-project-pages.yml deleted file mode 100644 index f3887bf8eb0..00000000000 --- a/changelogs/unreleased/btn-confirm-project-pages.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move from btn-success to btn-confirm in pages directory -merge_request: 56348 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-protected-branches.yml b/changelogs/unreleased/btn-confirm-protected-branches.yml new file mode 100644 index 00000000000..e39494df273 --- /dev/null +++ b/changelogs/unreleased/btn-confirm-protected-branches.yml @@ -0,0 +1,5 @@ +--- +title: Move from btn-success to btn-confirm in protected_branches directory +merge_request: 56477 +author: Yogi (@yo) +type: changed diff --git a/changelogs/unreleased/207467-add-gradle-setup-and-install-commands-to-the-package-details-page-.yml b/changelogs/unreleased/btn-confirm-protected-tags.yml index aba03f19142..4429eaf21e8 100644 --- a/changelogs/unreleased/207467-add-gradle-setup-and-install-commands-to-the-package-details-page-.yml +++ b/changelogs/unreleased/btn-confirm-protected-tags.yml @@ -1,5 +1,5 @@ --- -title: Add Gradle instructions and instruction selector to package details -merge_request: 55738 -author: +title: Move from btn-success to btn-confirm in protected_tags directory +merge_request: 56478 +author: Yogi (@yo) type: changed diff --git a/changelogs/unreleased/btn-confirm-shared-access-tokens.yml b/changelogs/unreleased/btn-confirm-shared-access-tokens.yml deleted file mode 100644 index e1e72fc884e..00000000000 --- a/changelogs/unreleased/btn-confirm-shared-access-tokens.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move from btn-success to btn-confirm in shared/access_token directory -merge_request: 55298 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-shared-deploy-keys.yml b/changelogs/unreleased/btn-confirm-shared-deploy-keys.yml deleted file mode 100644 index 36968fff64f..00000000000 --- a/changelogs/unreleased/btn-confirm-shared-deploy-keys.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move from btn-success to btn-confirm in shared/deploy_keys directory -merge_request: 55299 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-shared-deploy-tokens.yml b/changelogs/unreleased/btn-confirm-shared-deploy-tokens.yml deleted file mode 100644 index 37016c27eb6..00000000000 --- a/changelogs/unreleased/btn-confirm-shared-deploy-tokens.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move from btn-success to btn-confirm in shared/deploy_tokens directory -merge_request: 55300 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-shared-gitpod.yml b/changelogs/unreleased/btn-confirm-shared-gitpod.yml deleted file mode 100644 index 0cce62a474d..00000000000 --- a/changelogs/unreleased/btn-confirm-shared-gitpod.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move from btn-success to btn-confirm in shared/gitpod directory -merge_request: 55301 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-shared-groups.yml b/changelogs/unreleased/btn-confirm-shared-groups.yml deleted file mode 100644 index 0f97ca6e9c8..00000000000 --- a/changelogs/unreleased/btn-confirm-shared-groups.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move from btn-success to btn-confirm in shared/groups directory -merge_request: 55302 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-shared-members.yml b/changelogs/unreleased/btn-confirm-shared-members.yml deleted file mode 100644 index 9ef08007f89..00000000000 --- a/changelogs/unreleased/btn-confirm-shared-members.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move from btn-success to btn-confirm in shared/members directory -merge_request: 55315 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-shared-wikis.yml b/changelogs/unreleased/btn-confirm-shared-wikis.yml deleted file mode 100644 index fd9fefefc6c..00000000000 --- a/changelogs/unreleased/btn-confirm-shared-wikis.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move from btn-success to btn-confirm in shared/wikis directory -merge_request: 55316 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-shared.yml b/changelogs/unreleased/btn-confirm-shared.yml deleted file mode 100644 index 9b5fc864289..00000000000 --- a/changelogs/unreleased/btn-confirm-shared.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move from btn-success to btn-confirm in shared directory -merge_request: 55317 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-confirm-subs-banner.yml b/changelogs/unreleased/btn-confirm-subs-banner.yml deleted file mode 100644 index a5c3c233f31..00000000000 --- a/changelogs/unreleased/btn-confirm-subs-banner.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update to btn-confirm and align subscription banner -merge_request: 54137 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-default-admin-edit.yml b/changelogs/unreleased/btn-default-admin-edit.yml deleted file mode 100644 index cc6e7c8898f..00000000000 --- a/changelogs/unreleased/btn-default-admin-edit.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add btn-default class for edit buttons in admin projects and groups -merge_request: 53453 -author: -type: other diff --git a/changelogs/unreleased/btn-default-admin-general-settings.yml b/changelogs/unreleased/btn-default-admin-general-settings.yml deleted file mode 100644 index afce2e26c81..00000000000 --- a/changelogs/unreleased/btn-default-admin-general-settings.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add btn-default class for settings toggle button -merge_request: 54764 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-default-mr-cancel.yml b/changelogs/unreleased/btn-default-mr-cancel.yml deleted file mode 100644 index 4921af91608..00000000000 --- a/changelogs/unreleased/btn-default-mr-cancel.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add btn-default for cancel button in issueable form -merge_request: 53458 -author: Yogi (@yo) -type: other diff --git a/changelogs/unreleased/btn-default-toggle-comment.yml b/changelogs/unreleased/btn-default-toggle-comment.yml deleted file mode 100644 index 5c064e2be6d..00000000000 --- a/changelogs/unreleased/btn-default-toggle-comment.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move to btn-default and selected class in toggle comment button -merge_request: 56090 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-icon-commit-action.yml b/changelogs/unreleased/btn-icon-commit-action.yml deleted file mode 100644 index a6ffb73ffdb..00000000000 --- a/changelogs/unreleased/btn-icon-commit-action.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add btn-icon class for commit action buttons -merge_request: 54286 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/btn-icon-schedules.yml b/changelogs/unreleased/btn-icon-schedules.yml deleted file mode 100644 index 37ae9605975..00000000000 --- a/changelogs/unreleased/btn-icon-schedules.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add btn-icon for buttons in pipeline schedules -merge_request: 54426 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/bugfix-linked-issue-autocomplete.yml b/changelogs/unreleased/bugfix-linked-issue-autocomplete.yml deleted file mode 100644 index 20b36d33bbd..00000000000 --- a/changelogs/unreleased/bugfix-linked-issue-autocomplete.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Improve Linked Issues Usability -merge_request: 50879 -author: Andrew Minion -type: changed diff --git a/changelogs/unreleased/bump-reliable-fetch.yml b/changelogs/unreleased/bump-reliable-fetch.yml deleted file mode 100644 index 4ed2b386806..00000000000 --- a/changelogs/unreleased/bump-reliable-fetch.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update gitlab-sidekiq-fetcher to 0.5.5 to handle namespaced queues -merge_request: 55013 -author: -type: fixed diff --git a/changelogs/unreleased/bump_auto_deploy_image_version.yml b/changelogs/unreleased/bump_auto_deploy_image_version.yml deleted file mode 100644 index 533f4072cd5..00000000000 --- a/changelogs/unreleased/bump_auto_deploy_image_version.yml +++ /dev/null @@ -1,4 +0,0 @@ -title: Bump auto-deploy-image tag in Deploy.latest.gitlab-ci.yml to v2.6.0, which includes changes to ciliumnetworkpolicies. -merge_request: 54983 -author: -type: added diff --git a/changelogs/unreleased/bvl-fix-create-release-worker-is-not-cron.yml b/changelogs/unreleased/bvl-fix-create-release-worker-is-not-cron.yml deleted file mode 100644 index 9ab4bc33b92..00000000000 --- a/changelogs/unreleased/bvl-fix-create-release-worker-is-not-cron.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: move create_release_evidence sidekiq queue out of the cronjob namespace -merge_request: 54432 -author: -type: fixed diff --git a/changelogs/unreleased/cablett-restore-database-structure.yml b/changelogs/unreleased/cablett-restore-database-structure.yml deleted file mode 100644 index 362cf7146a6..00000000000 --- a/changelogs/unreleased/cablett-restore-database-structure.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Restore accidental changes to structure.sql -merge_request: 55352 -author: -type: other diff --git a/changelogs/unreleased/changelog-api-to-optional.yml b/changelogs/unreleased/changelog-api-to-optional.yml deleted file mode 100644 index ca08201c3b9..00000000000 --- a/changelogs/unreleased/changelog-api-to-optional.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Make `to` in the changelog API optional -merge_request: 54229 -author: -type: added diff --git a/changelogs/unreleased/changelog-commits-without-description.yml b/changelogs/unreleased/changelog-commits-without-description.yml deleted file mode 100644 index 41f757e5e2b..00000000000 --- a/changelogs/unreleased/changelog-commits-without-description.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Handle commits without descriptions for changelogs -merge_request: 56224 -author: -type: fixed diff --git a/changelogs/unreleased/changelog-ignore-reverted-commits.yml b/changelogs/unreleased/changelog-ignore-reverted-commits.yml deleted file mode 100644 index 4b07e846f34..00000000000 --- a/changelogs/unreleased/changelog-ignore-reverted-commits.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Ignore reverted commits when generating changelogs -merge_request: 55537 -author: -type: added diff --git a/changelogs/unreleased/changelog-include-merge-commits.yml b/changelogs/unreleased/changelog-include-merge-commits.yml deleted file mode 100644 index 547806b717f..00000000000 --- a/changelogs/unreleased/changelog-include-merge-commits.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Include MRs for merge commits for changelogs -merge_request: 55371 -author: -type: fixed diff --git a/changelogs/unreleased/chore-bump-swagger-ui-dist.yml b/changelogs/unreleased/chore-bump-swagger-ui-dist.yml deleted file mode 100644 index 0b609c8ab3b..00000000000 --- a/changelogs/unreleased/chore-bump-swagger-ui-dist.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Bump swagger-ui-dist to 3.44.1 -merge_request: 55310 -author: Roger Meier -type: changed diff --git a/changelogs/unreleased/chore-rubocop-user-admin.yml b/changelogs/unreleased/chore-rubocop-user-admin.yml new file mode 100644 index 00000000000..be72a2180df --- /dev/null +++ b/changelogs/unreleased/chore-rubocop-user-admin.yml @@ -0,0 +1,5 @@ +--- +title: Create Cop to enforce using policies framework for administrators +merge_request: 55693 +author: Diego Louzán +type: other diff --git a/changelogs/unreleased/ci-improve-users-cancelable-pipelines-query.yml b/changelogs/unreleased/ci-improve-users-cancelable-pipelines-query.yml new file mode 100644 index 00000000000..916d4b307c6 --- /dev/null +++ b/changelogs/unreleased/ci-improve-users-cancelable-pipelines-query.yml @@ -0,0 +1,5 @@ +--- +title: Add database index for cancelable ci_pipelines on user and id +merge_request: 56314 +author: +type: performance diff --git a/changelogs/unreleased/ci_register_job_service_one_by_one.yml b/changelogs/unreleased/ci_register_job_service_one_by_one.yml deleted file mode 100644 index 818d728e6c3..00000000000 --- a/changelogs/unreleased/ci_register_job_service_one_by_one.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fetch build one-by-one -merge_request: 55194 -author: -type: performance diff --git a/changelogs/unreleased/ci_temporary_lock.yml b/changelogs/unreleased/ci_temporary_lock.yml deleted file mode 100644 index 3a7f423f5ed..00000000000 --- a/changelogs/unreleased/ci_temporary_lock.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Improve build contention -merge_request: 55202 -author: -type: performance diff --git a/changelogs/unreleased/ck3g-remove-MergeRequestAssigneesMigrationProgressCheck-background-migrat.yml b/changelogs/unreleased/ck3g-remove-MergeRequestAssigneesMigrationProgressCheck-background-migrat.yml deleted file mode 100644 index 6cba82c7a5f..00000000000 --- a/changelogs/unreleased/ck3g-remove-MergeRequestAssigneesMigrationProgressCheck-background-migrat.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove MergeRequestAssigneesMigrationProgressCheck background migration -merge_request: 54943 -author: -type: changed diff --git a/changelogs/unreleased/cmiskell-upgrade-sidekiq-reliable-fetch.yml b/changelogs/unreleased/cmiskell-upgrade-sidekiq-reliable-fetch.yml deleted file mode 100644 index ec2bc728398..00000000000 --- a/changelogs/unreleased/cmiskell-upgrade-sidekiq-reliable-fetch.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: Upgrade gitlab-sidekiq-fetcher for correctly detecting interrupted jobs when - Sidekiq pods are restarted -merge_request: 54881 -author: -type: fixed diff --git a/changelogs/unreleased/cngo-add-labels-to-gltoggles.yml b/changelogs/unreleased/cngo-add-labels-to-gltoggles.yml deleted file mode 100644 index 707bff89e6a..00000000000 --- a/changelogs/unreleased/cngo-add-labels-to-gltoggles.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add labels to GlToggles -merge_request: 56387 -author: -type: fixed diff --git a/changelogs/unreleased/cngo-convert-tab-to-gl-tab.yml b/changelogs/unreleased/cngo-convert-tab-to-gl-tab.yml deleted file mode 100644 index f4a843ea6dc..00000000000 --- a/changelogs/unreleased/cngo-convert-tab-to-gl-tab.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Convert IDE nav form tab to GlTab -merge_request: 54274 -author: -type: changed diff --git a/changelogs/unreleased/cngo-convert-threat-monitoring-environment-picker-to-gl-dropdown.yml b/changelogs/unreleased/cngo-convert-threat-monitoring-environment-picker-to-gl-dropdown.yml deleted file mode 100644 index 18e40d36db6..00000000000 --- a/changelogs/unreleased/cngo-convert-threat-monitoring-environment-picker-to-gl-dropdown.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Convert Threat Monitoring environment picker to GlDropdown -merge_request: 54309 -author: -type: changed diff --git a/changelogs/unreleased/cngo-fix-autocomplete-selecting-loading.yml b/changelogs/unreleased/cngo-fix-autocomplete-selecting-loading.yml deleted file mode 100644 index 29b8bbcfda5..00000000000 --- a/changelogs/unreleased/cngo-fix-autocomplete-selecting-loading.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix `@` autocomplete selecting the loading icon -merge_request: 54925 -author: -type: fixed diff --git a/changelogs/unreleased/cngo-rename-comment-form-textarea-label.yml b/changelogs/unreleased/cngo-rename-comment-form-textarea-label.yml deleted file mode 100644 index a8a7499e260..00000000000 --- a/changelogs/unreleased/cngo-rename-comment-form-textarea-label.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Rename comment form textarea label to `Comment` -merge_request: 55088 -author: -type: changed diff --git a/changelogs/unreleased/cq-template-0-85-23.yml b/changelogs/unreleased/cq-template-0-85-23.yml deleted file mode 100644 index 1513b61363b..00000000000 --- a/changelogs/unreleased/cq-template-0-85-23.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Use CodeQuality packaged with CodeClimate 0.85.23 by default in CI template -merge_request: 55508 -author: -type: changed diff --git a/changelogs/unreleased/cromefire_-master-patch-00495.yml b/changelogs/unreleased/cromefire_-master-patch-00495.yml deleted file mode 100644 index e9a9f52ae69..00000000000 --- a/changelogs/unreleased/cromefire_-master-patch-00495.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Correct generated maven repository instruction for Gradle Groovy DSL -merge_request: 56318 -author: Cromefire_ (@cromefire_) -type: fixed diff --git a/changelogs/unreleased/cwoolley-gitlab-master-patch-20932.yml b/changelogs/unreleased/cwoolley-gitlab-master-patch-20932.yml deleted file mode 100644 index 86679560713..00000000000 --- a/changelogs/unreleased/cwoolley-gitlab-master-patch-20932.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix bug in wiki page destroy API endpoint when an error is raised -merge_request: 56285 -author: -type: fixed diff --git a/changelogs/unreleased/dblessing_bypass_2fa_setup_help.yml b/changelogs/unreleased/dblessing_bypass_2fa_setup_help.yml deleted file mode 100644 index 831a8b35ac8..00000000000 --- a/changelogs/unreleased/dblessing_bypass_2fa_setup_help.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Skip two factor setup for help pages -merge_request: 54739 -author: -type: fixed diff --git a/changelogs/unreleased/dblessing_migrate_delayed_project_removal.yml b/changelogs/unreleased/dblessing_migrate_delayed_project_removal.yml deleted file mode 100644 index c1ed2293e86..00000000000 --- a/changelogs/unreleased/dblessing_migrate_delayed_project_removal.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Migrate namespaces delayed_project_removal to namespace_settings -merge_request: 53916 -author: -type: changed diff --git a/changelogs/unreleased/default-enabled-api_always_use_application_json.yml b/changelogs/unreleased/default-enabled-api_always_use_application_json.yml deleted file mode 100644 index eabb936a32e..00000000000 --- a/changelogs/unreleased/default-enabled-api_always_use_application_json.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Change default API content_type to JSON -merge_request: 54479 -author: -type: changed diff --git a/changelogs/unreleased/denys-fj-ide-routes.yml b/changelogs/unreleased/denys-fj-ide-routes.yml deleted file mode 100644 index 2ba27b0fad6..00000000000 --- a/changelogs/unreleased/denys-fj-ide-routes.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move IDE routes to Rails -merge_request: 55597 -author: -type: changed diff --git a/changelogs/unreleased/design-management-minor-fixe.yml b/changelogs/unreleased/design-management-minor-fixe.yml deleted file mode 100644 index 1100ce55f78..00000000000 --- a/changelogs/unreleased/design-management-minor-fixe.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix button alignment in design management header -merge_request: 48003 -author: -type: fixed diff --git a/changelogs/unreleased/dictionary-md-generated-links.yml b/changelogs/unreleased/dictionary-md-generated-links.yml deleted file mode 100644 index 4a5a221127f..00000000000 --- a/changelogs/unreleased/dictionary-md-generated-links.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fixed vestigial Anchor links in doc/development/usage_ping/dictionary.md -merge_request: 55874 -author: Raimund Hook -type: fixed diff --git a/changelogs/unreleased/docs-environment-tier.yml b/changelogs/unreleased/docs-environment-tier.yml deleted file mode 100644 index e9ce97f18bf..00000000000 --- a/changelogs/unreleased/docs-environment-tier.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Support environment deployment tier -merge_request: 56081 -author: -type: added diff --git a/changelogs/unreleased/document-propagate-correlation-id-for-pages.yml b/changelogs/unreleased/document-propagate-correlation-id-for-pages.yml deleted file mode 100644 index a54e9420763..00000000000 --- a/changelogs/unreleased/document-propagate-correlation-id-for-pages.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Document propagate_correlation_id configuration for GitLab Pages -merge_request: 55205 -author: Ercan Ucan @ercan.ucan -type: added diff --git a/changelogs/unreleased/dora-metrics-modeling.yml b/changelogs/unreleased/dora-metrics-modeling.yml deleted file mode 100644 index 12724faa7b7..00000000000 --- a/changelogs/unreleased/dora-metrics-modeling.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add DORA daily metrics modeling -merge_request: 55473 -author: -type: added diff --git a/changelogs/unreleased/dry-up-notes-build-service-spec.yml b/changelogs/unreleased/dry-up-notes-build-service-spec.yml deleted file mode 100644 index 4aadaaa6030..00000000000 --- a/changelogs/unreleased/dry-up-notes-build-service-spec.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Dry up notes build service spec -merge_request: 54632 -author: Lee Tickett @leetickett -type: other diff --git a/changelogs/unreleased/dz-fix-fork-thumbnail-height.yml b/changelogs/unreleased/dz-fix-fork-thumbnail-height.yml deleted file mode 100644 index 94f03854d98..00000000000 --- a/changelogs/unreleased/dz-fix-fork-thumbnail-height.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix fork thumbnail overflow -merge_request: 55764 -author: -type: fixed diff --git a/changelogs/unreleased/eb-test-summary-suite-error.yml b/changelogs/unreleased/eb-test-summary-suite-error.yml deleted file mode 100644 index ad93a725ebd..00000000000 --- a/changelogs/unreleased/eb-test-summary-suite-error.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Display suite errors on test summary page -merge_request: 55770 -author: -type: changed diff --git a/changelogs/unreleased/ellipsis-expand-state-commits.yml b/changelogs/unreleased/ellipsis-expand-state-commits.yml deleted file mode 100644 index 1e655514f72..00000000000 --- a/changelogs/unreleased/ellipsis-expand-state-commits.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add selected state for ellipsis button in a commit -merge_request: 54754 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/emilyring-clustertoken-name.yml b/changelogs/unreleased/emilyring-clustertoken-name.yml deleted file mode 100644 index 887a88b3b29..00000000000 --- a/changelogs/unreleased/emilyring-clustertoken-name.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add name field to cluster agent token -merge_request: 53920 -author: -type: changed diff --git a/changelogs/unreleased/enable-trace_memory_allocations.yml b/changelogs/unreleased/enable-trace_memory_allocations.yml deleted file mode 100644 index e8aec91de13..00000000000 --- a/changelogs/unreleased/enable-trace_memory_allocations.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Enable `trace_memory_allocations` by default -merge_request: 55369 -author: -type: changed diff --git a/changelogs/unreleased/enable_specialized_project_share_ff.yml b/changelogs/unreleased/enable_specialized_project_share_ff.yml deleted file mode 100644 index fd958afd9b9..00000000000 --- a/changelogs/unreleased/enable_specialized_project_share_ff.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Project sharing to use specialized worker to calculate project authorizations -merge_request: 56606 -author: -type: performance diff --git a/changelogs/unreleased/environment-scoped-group-variables.yml b/changelogs/unreleased/environment-scoped-group-variables.yml deleted file mode 100644 index d0cdb31851d..00000000000 --- a/changelogs/unreleased/environment-scoped-group-variables.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add environment_scope column to ci_group_variables -merge_request: 55256 -author: -type: other diff --git a/changelogs/unreleased/environment-tier.yml b/changelogs/unreleased/environment-tier.yml deleted file mode 100644 index 0f3f7e14133..00000000000 --- a/changelogs/unreleased/environment-tier.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add tier column to the environments table -merge_request: 55471 -author: -type: added diff --git a/changelogs/unreleased/epic_count_query.yml b/changelogs/unreleased/epic_count_query.yml deleted file mode 100644 index e449caa1fad..00000000000 --- a/changelogs/unreleased/epic_count_query.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: Added composite index to epic_issues table and improved performance of loading - bigger epic roadmaps -merge_request: 54677 -author: -type: performance diff --git a/changelogs/unreleased/eread-refactor-embedded-grafana-panels.yml b/changelogs/unreleased/eread-refactor-embedded-grafana-panels.yml deleted file mode 100644 index 369414db551..00000000000 --- a/changelogs/unreleased/eread-refactor-embedded-grafana-panels.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Refactor docs and UI for embedding Grafana panels -merge_request: 55567 -author: -type: other diff --git a/changelogs/unreleased/expand-stopped-env.yml b/changelogs/unreleased/expand-stopped-env.yml deleted file mode 100644 index 87b47b59b7e..00000000000 --- a/changelogs/unreleased/expand-stopped-env.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Expand nested stopped environments -merge_request: 55676 -author: -type: changed diff --git a/changelogs/unreleased/expose-failure-reasons-features.yml b/changelogs/unreleased/expose-failure-reasons-features.yml deleted file mode 100644 index 1fb7d63b911..00000000000 --- a/changelogs/unreleased/expose-failure-reasons-features.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Expose `failure_reasons` in `Build#features` -merge_request: 53964 -author: -type: added diff --git a/changelogs/unreleased/expose_project_container_registry_url.yml b/changelogs/unreleased/expose_project_container_registry_url.yml deleted file mode 100644 index 923d14ed5a6..00000000000 --- a/changelogs/unreleased/expose_project_container_registry_url.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Expose container_registry_image_prefix to project API -merge_request: 54090 -author: Mathieu Parent -type: added diff --git a/changelogs/unreleased/feat-api-application-settings-package-file-size-limits.yml b/changelogs/unreleased/feat-api-application-settings-package-file-size-limits.yml deleted file mode 100644 index f07fd8210f3..00000000000 --- a/changelogs/unreleased/feat-api-application-settings-package-file-size-limits.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add API endpoint /application/plan_limits for package file size limits -merge_request: 54232 -author: Jonas Wälter @wwwjon -type: added diff --git a/changelogs/unreleased/feat-auto-enable-admin-mode-rake-runtime.yml b/changelogs/unreleased/feat-auto-enable-admin-mode-rake-runtime.yml deleted file mode 100644 index 2f933cc250d..00000000000 --- a/changelogs/unreleased/feat-auto-enable-admin-mode-rake-runtime.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Auto-enable admin mode on privileged environments -merge_request: 53015 -author: Diego Louzán -type: changed diff --git a/changelogs/unreleased/feature-230726-repo-tabs.yml b/changelogs/unreleased/feature-230726-repo-tabs.yml deleted file mode 100644 index 7de7085fd04..00000000000 --- a/changelogs/unreleased/feature-230726-repo-tabs.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: convert to GlTabs in app/assets/javascripts/ide/components/repo_tabs.vue -merge_request: 42162 -author: Brandon Everett -type: added diff --git a/changelogs/unreleased/feature-gb-improve-builds-queueing.yml b/changelogs/unreleased/feature-gb-improve-builds-queueing.yml deleted file mode 100644 index c334fb188e3..00000000000 --- a/changelogs/unreleased/feature-gb-improve-builds-queueing.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Improve performance of builds queuing by introducing a limit on the queue depth -merge_request: 54579 -author: -type: performance diff --git a/changelogs/unreleased/fix-ci-dependency-proxy-group-name.yml b/changelogs/unreleased/fix-ci-dependency-proxy-group-name.yml deleted file mode 100644 index 87e14068b85..00000000000 --- a/changelogs/unreleased/fix-ci-dependency-proxy-group-name.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix the value of `$CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX` when used in group with a name containing uppercase letters -merge_request: 54559 -author: Eric Engestrom @1ace -type: fixed diff --git a/changelogs/unreleased/fix-edited-timestamp.yml b/changelogs/unreleased/fix-edited-timestamp.yml deleted file mode 100644 index 83b8e4fcf21..00000000000 --- a/changelogs/unreleased/fix-edited-timestamp.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix edited timestamp updated when transforming / resolving comments -merge_request: 55671 -author: Mycroft Kang @TaehyeokKang -type: fixed diff --git a/changelogs/unreleased/fix-include-external-users-in-user-search.yml b/changelogs/unreleased/fix-include-external-users-in-user-search.yml deleted file mode 100644 index 7421db86f1e..00000000000 --- a/changelogs/unreleased/fix-include-external-users-in-user-search.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: 'API: include external users in user search for non-admins' -merge_request: 53584 -author: Jonas Wälter @wwwjon -type: changed diff --git a/changelogs/unreleased/fix-iteration-migr.yml b/changelogs/unreleased/fix-iteration-migr.yml deleted file mode 100644 index 0f74cb695a0..00000000000 --- a/changelogs/unreleased/fix-iteration-migr.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix setting default cadences migration -merge_request: 54598 -author: -type: other diff --git a/changelogs/unreleased/fix-locked-job-artifacts-expired-api.yml b/changelogs/unreleased/fix-locked-job-artifacts-expired-api.yml deleted file mode 100644 index 13cc21e83dd..00000000000 --- a/changelogs/unreleased/fix-locked-job-artifacts-expired-api.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Correct job artifacts API download for expired and locked files -merge_request: 53567 -author: Fabio Huser -type: fixed diff --git a/changelogs/unreleased/fix-overflowing-width-at-mention-selector.yml b/changelogs/unreleased/fix-overflowing-width-at-mention-selector.yml deleted file mode 100644 index b28395fccca..00000000000 --- a/changelogs/unreleased/fix-overflowing-width-at-mention-selector.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix overflowing width - at mention container -merge_request: 54377 -author: -type: fixed diff --git a/changelogs/unreleased/fix-prevent-to-remove-last-blocked-group-owner.yml b/changelogs/unreleased/fix-prevent-to-remove-last-blocked-group-owner.yml deleted file mode 100644 index 2e8d05dc9b3..00000000000 --- a/changelogs/unreleased/fix-prevent-to-remove-last-blocked-group-owner.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Prevent removal of the last group owner if the last group owner is a blocked user -merge_request: 54587 -author: Jonas Wälter @wwwjon -type: fixed diff --git a/changelogs/unreleased/fix-project-import-visibility-error.yml b/changelogs/unreleased/fix-project-import-visibility-error.yml deleted file mode 100644 index 266ddce039d..00000000000 --- a/changelogs/unreleased/fix-project-import-visibility-error.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix project import error occurring due to default visibility -merge_request: 53827 -author: Jonas Wälter @wwwjon -type: fixed diff --git a/changelogs/unreleased/fix-relative-position-on-move-and-copy-issue.yml b/changelogs/unreleased/fix-relative-position-on-move-and-copy-issue.yml deleted file mode 100644 index 03eb4dcb767..00000000000 --- a/changelogs/unreleased/fix-relative-position-on-move-and-copy-issue.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Handle relative position on issue move or clone -merge_request: 55555 -author: -type: fixed diff --git a/changelogs/unreleased/fix-web-url-jira.yml b/changelogs/unreleased/fix-web-url-jira.yml deleted file mode 100644 index 0a0b973bb84..00000000000 --- a/changelogs/unreleased/fix-web-url-jira.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Use gitlab_web_url (if it exists) for issue title links in Issue lists -merge_request: 55021 -author: -type: fixed diff --git a/changelogs/unreleased/fix_repo_storage_weights_admin.yml b/changelogs/unreleased/fix_repo_storage_weights_admin.yml deleted file mode 100644 index 159c2f0903d..00000000000 --- a/changelogs/unreleased/fix_repo_storage_weights_admin.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Allow saving repository weights after a storage has been removed -merge_request: 55689 -author: -type: fixed diff --git a/changelogs/unreleased/fp-reduce-queries-when-ticking-runner-queue.yml b/changelogs/unreleased/fp-reduce-queries-when-ticking-runner-queue.yml deleted file mode 100644 index ac43d37ebeb..00000000000 --- a/changelogs/unreleased/fp-reduce-queries-when-ticking-runner-queue.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Reduce queries when ticking runner queue -merge_request: 55496 -author: -type: performance diff --git a/changelogs/unreleased/fp-reduce-runners-queries-when-picking-builds.yml b/changelogs/unreleased/fp-reduce-runners-queries-when-picking-builds.yml deleted file mode 100644 index c339a51e571..00000000000 --- a/changelogs/unreleased/fp-reduce-runners-queries-when-picking-builds.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Shortcircuit expensive queries in Runner#can_pick? -merge_request: 55518 -author: -type: performance diff --git a/changelogs/unreleased/georgekoltsov-bulk-import-migrate-milestones.yml b/changelogs/unreleased/georgekoltsov-bulk-import-migrate-milestones.yml deleted file mode 100644 index 2418c12dad8..00000000000 --- a/changelogs/unreleased/georgekoltsov-bulk-import-migrate-milestones.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Migrate group milestones when using Bulk Import -merge_request: 55981 -author: -type: added diff --git a/changelogs/unreleased/georgekoltsov-fix-project-export-web-rate-limit.yml b/changelogs/unreleased/georgekoltsov-fix-project-export-web-rate-limit.yml deleted file mode 100644 index d38c4e93709..00000000000 --- a/changelogs/unreleased/georgekoltsov-fix-project-export-web-rate-limit.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix Web Project Export rate limiting scope -merge_request: 55975 -author: -type: fixed diff --git a/changelogs/unreleased/gl-badge-runners.yml b/changelogs/unreleased/gl-badge-runners.yml deleted file mode 100644 index 9b572401264..00000000000 --- a/changelogs/unreleased/gl-badge-runners.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Apply new GitLab UI for badge in runners list -merge_request: 54766 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/gl-button-apply-template.yml b/changelogs/unreleased/gl-button-apply-template.yml deleted file mode 100644 index cf03a388a69..00000000000 --- a/changelogs/unreleased/gl-button-apply-template.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Apply new GitLab UI for apply template button in new issue -merge_request: 54143 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/gl-button-audit-events.yml b/changelogs/unreleased/gl-button-audit-events.yml deleted file mode 100644 index 8a4989da2e3..00000000000 --- a/changelogs/unreleased/gl-button-audit-events.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Apply new GitLab UI for button in promotion link -merge_request: 54755 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/gl-button-email-request.yml b/changelogs/unreleased/gl-button-email-request.yml deleted file mode 100644 index d5c26d4e124..00000000000 --- a/changelogs/unreleased/gl-button-email-request.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Apply new GitLab UI for request email button -merge_request: 53966 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/gl-button-gh-import.yml b/changelogs/unreleased/gl-button-gh-import.yml deleted file mode 100644 index c70acaaf8a9..00000000000 --- a/changelogs/unreleased/gl-button-gh-import.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Apply new GitLab UI for buttons on GitHub Import page -merge_request: 56096 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/gl-button-gl-import.yml b/changelogs/unreleased/gl-button-gl-import.yml deleted file mode 100644 index 83420bd0b68..00000000000 --- a/changelogs/unreleased/gl-button-gl-import.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Apply new GitLab UI for buttons in GitLab Import page -merge_request: 56095 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/gl-button-labels.yml b/changelogs/unreleased/gl-button-labels.yml deleted file mode 100644 index ef25d3a778d..00000000000 --- a/changelogs/unreleased/gl-button-labels.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Apply new GitLab UI for buttons in empty label placeholder -merge_request: 54760 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/gl-button-reaction.yml b/changelogs/unreleased/gl-button-reaction.yml deleted file mode 100644 index 5fe4cc11f92..00000000000 --- a/changelogs/unreleased/gl-button-reaction.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move add reaction button of note to gl-button -merge_request: 53565 -author: Yogi (@yo) -type: other diff --git a/changelogs/unreleased/gl-button-repository-settings.yml b/changelogs/unreleased/gl-button-repository-settings.yml deleted file mode 100644 index 921309f97fa..00000000000 --- a/changelogs/unreleased/gl-button-repository-settings.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Apply new GitLab UI for button is project settings/repository page -merge_request: 53346 -author: Yogi (@yo) -type: other diff --git a/changelogs/unreleased/gl-button-time-tracking.yml b/changelogs/unreleased/gl-button-time-tracking.yml deleted file mode 100644 index 923cc3db7d8..00000000000 --- a/changelogs/unreleased/gl-button-time-tracking.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Apply new GitLab UI for learn more button in time tracking -merge_request: 54142 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/hchouraria-notify-email-html-link-to-mr-on-top.yml b/changelogs/unreleased/hchouraria-notify-email-html-link-to-mr-on-top.yml deleted file mode 100644 index 3f7bc60b4e6..00000000000 --- a/changelogs/unreleased/hchouraria-notify-email-html-link-to-mr-on-top.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Link to the merge request in its creation email notification -merge_request: 56064 -author: -type: other diff --git a/changelogs/unreleased/hide-fork-counts-in-project-list-where-forks-disabled.yml b/changelogs/unreleased/hide-fork-counts-in-project-list-where-forks-disabled.yml deleted file mode 100644 index 9d346630531..00000000000 --- a/changelogs/unreleased/hide-fork-counts-in-project-list-where-forks-disabled.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Hide fork count and link in project list where forks are disabled -merge_request: 56520 -author: Simon Stieger @sim0 -type: fixed diff --git a/changelogs/unreleased/hide-mr-counts-in-project-list-where-mrs-disabled.yml b/changelogs/unreleased/hide-mr-counts-in-project-list-where-mrs-disabled.yml deleted file mode 100644 index be9cfbdfecd..00000000000 --- a/changelogs/unreleased/hide-mr-counts-in-project-list-where-mrs-disabled.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Hide MR count and link in project list where MRs are disabled -merge_request: !56432 -author: Simon Stieger @sim0 -type: fixed diff --git a/changelogs/unreleased/id-move-delete-branch-to-workers.yml b/changelogs/unreleased/id-move-delete-branch-to-workers.yml deleted file mode 100644 index b5dd5dbfb9f..00000000000 --- a/changelogs/unreleased/id-move-delete-branch-to-workers.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move branch deletion on merge to async worker -merge_request: 55390 -author: -type: performance diff --git a/changelogs/unreleased/ignore-unstable-changelog-tags.yml b/changelogs/unreleased/ignore-unstable-changelog-tags.yml deleted file mode 100644 index d701b3f67cc..00000000000 --- a/changelogs/unreleased/ignore-unstable-changelog-tags.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Ignore prerelease tags when generating changelogs -merge_request: 55065 -author: -type: changed diff --git a/changelogs/unreleased/improve-retarget-merge-requests.yml b/changelogs/unreleased/improve-retarget-merge-requests.yml deleted file mode 100644 index f194ef7a151..00000000000 --- a/changelogs/unreleased/improve-retarget-merge-requests.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Automatically retarget merge requests upon merge (default on) -merge_request: 56233 -author: -type: added diff --git a/changelogs/unreleased/improve_vuln_tracking-backend_store_only.yml b/changelogs/unreleased/improve_vuln_tracking-backend_store_only.yml deleted file mode 100644 index f3f68d62043..00000000000 --- a/changelogs/unreleased/improve_vuln_tracking-backend_store_only.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: 'Improve Vulnerability Tracking: Store Fingerprints' -merge_request: 55173 -author: -type: added diff --git a/changelogs/unreleased/issue_227753-remove_backup_labels_table.yml b/changelogs/unreleased/issue_227753-remove_backup_labels_table.yml deleted file mode 100644 index 17ebced5ccb..00000000000 --- a/changelogs/unreleased/issue_227753-remove_backup_labels_table.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove backup_labels table -merge_request: 54856 -author: -type: other diff --git a/changelogs/unreleased/iterations-dates-validations.yml b/changelogs/unreleased/iterations-dates-validations.yml deleted file mode 100644 index f22ac76c72d..00000000000 --- a/changelogs/unreleased/iterations-dates-validations.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Allow overlapping iteration dates with ancestor group iterations and restrict dates overlapping for iterations within same group -merge_request: 52403 -author: -type: changed diff --git a/changelogs/unreleased/iterations-in-the-past.yml b/changelogs/unreleased/iterations-in-the-past.yml deleted file mode 100644 index 07386448d6c..00000000000 --- a/changelogs/unreleased/iterations-in-the-past.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Allow creation of iterations in the past -merge_request: 52403 -author: -type: changed diff --git a/changelogs/unreleased/jira-connect-app-style-cleanup.yml b/changelogs/unreleased/jira-connect-app-style-cleanup.yml deleted file mode 100644 index 1f28ebb276b..00000000000 --- a/changelogs/unreleased/jira-connect-app-style-cleanup.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Improve Jira connect app styling and i18n -merge_request: 53441 -author: -type: changed diff --git a/changelogs/unreleased/jivanvl-add-duration-finished-at-fields-job-type.yml b/changelogs/unreleased/jivanvl-add-duration-finished-at-fields-job-type.yml deleted file mode 100644 index 480e8bea486..00000000000 --- a/changelogs/unreleased/jivanvl-add-duration-finished-at-fields-job-type.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add duration and finishedAt GraphQL fields to jobType in the CI namespace -merge_request: 54358 -author: -type: changed diff --git a/changelogs/unreleased/jnnkl-bot-popover-be-info.yml b/changelogs/unreleased/jnnkl-bot-popover-be-info.yml deleted file mode 100644 index 84c8ff2fbce..00000000000 --- a/changelogs/unreleased/jnnkl-bot-popover-be-info.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Consume check if user is bot from Users API -merge_request: 56362 -author: -type: changed diff --git a/changelogs/unreleased/john_long-composer-package-relative-url.yml b/changelogs/unreleased/john_long-composer-package-relative-url.yml deleted file mode 100644 index d1938a72a9b..00000000000 --- a/changelogs/unreleased/john_long-composer-package-relative-url.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix relative URL with composer package -merge_request: 53918 -author: -type: fixed diff --git a/changelogs/unreleased/kassio-bulkimports-add-new-fields-to-trackers.yml b/changelogs/unreleased/kassio-bulkimports-add-new-fields-to-trackers.yml deleted file mode 100644 index bc2aaed181d..00000000000 --- a/changelogs/unreleased/kassio-bulkimports-add-new-fields-to-trackers.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add fields to BulkImports::Tracker for concurrent work -merge_request: 55686 -author: -type: changed diff --git a/changelogs/unreleased/kassio-bulkimports-better-destination-validation-error-message.yml b/changelogs/unreleased/kassio-bulkimports-better-destination-validation-error-message.yml deleted file mode 100644 index 5a87d152630..00000000000 --- a/changelogs/unreleased/kassio-bulkimports-better-destination-validation-error-message.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Better error message when import fails due to backend validation -merge_request: 54827 -author: -type: changed diff --git a/changelogs/unreleased/kassio-bulkimports-filter-group-labels.yml b/changelogs/unreleased/kassio-bulkimports-filter-group-labels.yml deleted file mode 100644 index 19248571a01..00000000000 --- a/changelogs/unreleased/kassio-bulkimports-filter-group-labels.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: 'BulkImports: Avoid import ProjectLabels in the Group import level' -merge_request: 54580 -author: -type: changed diff --git a/changelogs/unreleased/kassio-bulkimports-import-group-label-timestamps.yml b/changelogs/unreleased/kassio-bulkimports-import-group-label-timestamps.yml deleted file mode 100644 index 6abf01ddfeb..00000000000 --- a/changelogs/unreleased/kassio-bulkimports-import-group-label-timestamps.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: 'BulkImports: Import Label timestamps' -merge_request: 54678 -author: -type: changed diff --git a/changelogs/unreleased/kassio-githubimporter-avoid-approval-exception.yml b/changelogs/unreleased/kassio-githubimporter-avoid-approval-exception.yml deleted file mode 100644 index cc994d50f4e..00000000000 --- a/changelogs/unreleased/kassio-githubimporter-avoid-approval-exception.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: 'GithubImporter: Add Merge request approval only if it does not exists yet' -merge_request: 55376 -author: -type: fixed diff --git a/changelogs/unreleased/kassio-githubimporter-import-merged-at.yml b/changelogs/unreleased/kassio-githubimporter-import-merged-at.yml deleted file mode 100644 index bc4b196bb94..00000000000 --- a/changelogs/unreleased/kassio-githubimporter-import-merged-at.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: 'Github Importer: Import Pull request "merged_at" attribute' -merge_request: 54862 -author: -type: fixed diff --git a/changelogs/unreleased/kassio-githubimporter-validate-repository-size.yml b/changelogs/unreleased/kassio-githubimporter-validate-repository-size.yml deleted file mode 100644 index c4688acbec5..00000000000 --- a/changelogs/unreleased/kassio-githubimporter-validate-repository-size.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: 'Github Importer: Validate repository size before importing' -merge_request: 54449 -author: -type: changed diff --git a/changelogs/unreleased/kassio-graphql-expose-label-create-at-updated-at.yml b/changelogs/unreleased/kassio-graphql-expose-label-create-at-updated-at.yml deleted file mode 100644 index 134b0090146..00000000000 --- a/changelogs/unreleased/kassio-graphql-expose-label-create-at-updated-at.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: 'GraphQL: Expose Label "created_at" and "updated_at"' -merge_request: 54487 -author: -type: changed diff --git a/changelogs/unreleased/katex-dos.yml b/changelogs/unreleased/katex-dos.yml deleted file mode 100644 index 629c008b26f..00000000000 --- a/changelogs/unreleased/katex-dos.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix DOS on Math blocks -merge_request: 54898 -author: -type: changed diff --git a/changelogs/unreleased/kerrizor-remove-oprhaned-feature-flag-yml.yml b/changelogs/unreleased/kerrizor-remove-oprhaned-feature-flag-yml.yml deleted file mode 100644 index 25bb361818f..00000000000 --- a/changelogs/unreleased/kerrizor-remove-oprhaned-feature-flag-yml.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove usage_data_i_source_code_code_intelligence flag -merge_request: 51765 -author: -type: other diff --git a/changelogs/unreleased/kp-sort-milestone-autocomplete.yml b/changelogs/unreleased/kp-sort-milestone-autocomplete.yml deleted file mode 100644 index 0d331deecb2..00000000000 --- a/changelogs/unreleased/kp-sort-milestone-autocomplete.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Sort milestones within autocomplete dropdown -merge_request: 55850 -author: -type: changed diff --git a/changelogs/unreleased/ld-graphql-version-bump-gem-for-argument-deprecations.yml b/changelogs/unreleased/ld-graphql-version-bump-gem-for-argument-deprecations.yml deleted file mode 100644 index 170eef47f71..00000000000 --- a/changelogs/unreleased/ld-graphql-version-bump-gem-for-argument-deprecations.yml +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Mark `startDate` and `endDate` arguments as deprecated in the GraphQL schema for `Project.milestones` and `Group.milestones` - (FOSS and EE), and `Project.iterations`, `Project.milestones`, `Group.epic`, `Group.epics`, `Group.iterations`, `Group.milestones`, - `BoardEpic.children`, and `Epic.children` fields (EE-only). Previously these arguments were marked as deprecated only in their descriptions -merge_request: 45229 -author: -type: changed diff --git a/changelogs/unreleased/ld-handle-gids-for-unknown-objects.yml b/changelogs/unreleased/ld-handle-gids-for-unknown-objects.yml deleted file mode 100644 index 1b4cdc859ce..00000000000 --- a/changelogs/unreleased/ld-handle-gids-for-unknown-objects.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Handle GlobalIDs with invalid resource names -merge_request: 54290 -author: -type: fixed diff --git a/changelogs/unreleased/leipert-remove-chrome-84-workaround.yml b/changelogs/unreleased/leipert-remove-chrome-84-workaround.yml deleted file mode 100644 index 9761525b030..00000000000 --- a/changelogs/unreleased/leipert-remove-chrome-84-workaround.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove workaround for icon loading in Chrome 84 -merge_request: 56114 -author: -type: removed diff --git a/changelogs/unreleased/lm-add-short-sha-and-path-to-pipeline.yml b/changelogs/unreleased/lm-add-short-sha-and-path-to-pipeline.yml deleted file mode 100644 index 6795afd4c64..00000000000 --- a/changelogs/unreleased/lm-add-short-sha-and-path-to-pipeline.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Allow search for pipeline by SHA as well as IID via GraphQL -merge_request: 54471 -author: -type: changed diff --git a/changelogs/unreleased/lm-multiple-cache-per-file.yml b/changelogs/unreleased/lm-multiple-cache-per-file.yml deleted file mode 100644 index edd1afd4b7f..00000000000 --- a/changelogs/unreleased/lm-multiple-cache-per-file.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Adds ability to have multiple cache per job -merge_request: 53410 -author: -type: changed diff --git a/changelogs/unreleased/mc-backstage-optimize-branch-loading.yml b/changelogs/unreleased/mc-backstage-optimize-branch-loading.yml deleted file mode 100644 index 9685b6869a0..00000000000 --- a/changelogs/unreleased/mc-backstage-optimize-branch-loading.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Optimize branch commit resolution. -merge_request: 56204 -author: -type: performance diff --git a/changelogs/unreleased/mc-backstage-reschedule-artifact-expiry-backfill.yml b/changelogs/unreleased/mc-backstage-reschedule-artifact-expiry-backfill.yml deleted file mode 100644 index b6c82a06ce9..00000000000 --- a/changelogs/unreleased/mc-backstage-reschedule-artifact-expiry-backfill.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Reschedule artifact expiry backfill -merge_request: 55093 -author: -type: changed diff --git a/changelogs/unreleased/mc-bug-reduce-ci-minute-namespace-notification-db-load.yml b/changelogs/unreleased/mc-bug-reduce-ci-minute-namespace-notification-db-load.yml deleted file mode 100644 index 9707dc4623e..00000000000 --- a/changelogs/unreleased/mc-bug-reduce-ci-minute-namespace-notification-db-load.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Reduce DB load when resetting CI minute notifications. -merge_request: 55765 -author: -type: performance diff --git a/changelogs/unreleased/mc-bug-remove-reliance-on-branch-context.yml b/changelogs/unreleased/mc-bug-remove-reliance-on-branch-context.yml deleted file mode 100644 index a4631a8394f..00000000000 --- a/changelogs/unreleased/mc-bug-remove-reliance-on-branch-context.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Resolve project from branch in commit resolver. -merge_request: 55694 -author: -type: fixed diff --git a/changelogs/unreleased/mc-feature-add-user-callout-graphql.yml b/changelogs/unreleased/mc-feature-add-user-callout-graphql.yml deleted file mode 100644 index cdfa42826cb..00000000000 --- a/changelogs/unreleased/mc-feature-add-user-callout-graphql.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add user callouts to GraphQL. -merge_request: 55099 -author: -type: added diff --git a/changelogs/unreleased/mf-test-report-parsing-errors-frontend.yml b/changelogs/unreleased/mf-test-report-parsing-errors-frontend.yml deleted file mode 100644 index 82458400041..00000000000 --- a/changelogs/unreleased/mf-test-report-parsing-errors-frontend.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Display parsing errors in test reports MR widget -merge_request: 55037 -author: -type: added diff --git a/changelogs/unreleased/mg-fix-firefox-textarea-styling.yml b/changelogs/unreleased/mg-fix-firefox-textarea-styling.yml deleted file mode 100644 index 6830be548f5..00000000000 --- a/changelogs/unreleased/mg-fix-firefox-textarea-styling.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix style issue with "reply" placeholder textarea in firefox -merge_request: 54592 -author: -type: fixed diff --git a/changelogs/unreleased/mo-enable-cq-comparision-backend.yml b/changelogs/unreleased/mo-enable-cq-comparision-backend.yml deleted file mode 100644 index 74536b16d6f..00000000000 --- a/changelogs/unreleased/mo-enable-cq-comparision-backend.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Enable codequality report comparison with backend -merge_request: 54241 -author: -type: performance diff --git a/changelogs/unreleased/mo-filter-group-projects-by-ids-graphql.yml b/changelogs/unreleased/mo-filter-group-projects-by-ids-graphql.yml deleted file mode 100644 index 13f4d0a2df1..00000000000 --- a/changelogs/unreleased/mo-filter-group-projects-by-ids-graphql.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Query group projects by ids with GraphQL -merge_request: 55383 -author: -type: added diff --git a/changelogs/unreleased/mo-refactor-coverage-finder.yml b/changelogs/unreleased/mo-refactor-coverage-finder.yml deleted file mode 100644 index a064f148f6a..00000000000 --- a/changelogs/unreleased/mo-refactor-coverage-finder.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove coverage_data_new_finder feature flag -merge_request: 54486 -author: -type: performance diff --git a/changelogs/unreleased/move-cancel-btn-integrations.yml b/changelogs/unreleased/move-cancel-btn-integrations.yml deleted file mode 100644 index d69652631f1..00000000000 --- a/changelogs/unreleased/move-cancel-btn-integrations.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Group integration settings buttons to the left -merge_request: 55139 -author: -type: changed diff --git a/changelogs/unreleased/move_ci_config_path_project_variable.yml b/changelogs/unreleased/move_ci_config_path_project_variable.yml deleted file mode 100644 index f24a58a92d9..00000000000 --- a/changelogs/unreleased/move_ci_config_path_project_variable.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move CI_CONFIG_PATH as project variable and deprecate CI_PROJECT_CONFIG_PATH -merge_request: 54498 -author: -type: changed diff --git a/changelogs/unreleased/msj-service-desk-empty.yml b/changelogs/unreleased/msj-service-desk-empty.yml deleted file mode 100644 index 12c75c45295..00000000000 --- a/changelogs/unreleased/msj-service-desk-empty.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Improve Service Desk empty states -merge_request: 54006 -author: -type: other diff --git a/changelogs/unreleased/msj-settings-merge-requests.yml b/changelogs/unreleased/msj-settings-merge-requests.yml deleted file mode 100644 index d8dfe021b26..00000000000 --- a/changelogs/unreleased/msj-settings-merge-requests.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Updated UI text to match style guidelines -merge_request: 50383 -author: -type: fixed diff --git a/changelogs/unreleased/mvanremmerden-master-patch-50309.yml b/changelogs/unreleased/mvanremmerden-master-patch-50309.yml deleted file mode 100644 index a4a54c915b7..00000000000 --- a/changelogs/unreleased/mvanremmerden-master-patch-50309.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove bottom border from header -merge_request: 56315 -author: -type: other diff --git a/changelogs/unreleased/mvanremmerden-master-patch-70791.yml b/changelogs/unreleased/mvanremmerden-master-patch-70791.yml deleted file mode 100644 index b7a2a57a805..00000000000 --- a/changelogs/unreleased/mvanremmerden-master-patch-70791.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Align heading style with subheadings in markdown -merge_request: 55284 -author: -type: other diff --git a/changelogs/unreleased/mwps-settings.yml b/changelogs/unreleased/mwps-settings.yml deleted file mode 100644 index cf4c4c7be6c..00000000000 --- a/changelogs/unreleased/mwps-settings.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add setting to control merge when pipeline succeeds notification -merge_request: 37880 -author: Ravishankar -type: added diff --git a/changelogs/unreleased/nakayoshi-default-enabled.yml b/changelogs/unreleased/nakayoshi-default-enabled.yml deleted file mode 100644 index 7bc6ecac334..00000000000 --- a/changelogs/unreleased/nakayoshi-default-enabled.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Enable `nakayoshi_fork` by default -merge_request: 54688 -author: -type: other diff --git a/changelogs/unreleased/nfriend-add-release-asset-link-create-mutation.yml b/changelogs/unreleased/nfriend-add-release-asset-link-create-mutation.yml deleted file mode 100644 index 0ec1c4a04f3..00000000000 --- a/changelogs/unreleased/nfriend-add-release-asset-link-create-mutation.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add GraphQL mutation to create release asset link -merge_request: 54605 -author: -type: added diff --git a/changelogs/unreleased/nfriend-add-release-asset-link-update-mutation.yml b/changelogs/unreleased/nfriend-add-release-asset-link-update-mutation.yml deleted file mode 100644 index 0efd0fc3612..00000000000 --- a/changelogs/unreleased/nfriend-add-release-asset-link-update-mutation.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add GraphQL mutation to update existing release asset link -merge_request: 56265 -author: -type: added diff --git a/changelogs/unreleased/nfriend-allow-release-creation-on-existing-tag-through-ui.yml b/changelogs/unreleased/nfriend-allow-release-creation-on-existing-tag-through-ui.yml deleted file mode 100644 index 9f909eac708..00000000000 --- a/changelogs/unreleased/nfriend-allow-release-creation-on-existing-tag-through-ui.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Allow release to be created on existing tag through the UI -merge_request: 55697 -author: -type: added diff --git a/changelogs/unreleased/nfriend-fix-gl-dropdown-double-scrollbars.yml b/changelogs/unreleased/nfriend-fix-gl-dropdown-double-scrollbars.yml deleted file mode 100644 index 7898da24731..00000000000 --- a/changelogs/unreleased/nfriend-fix-gl-dropdown-double-scrollbars.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix double scrollbars in some dropdowns -merge_request: 54837 -author: -type: fixed diff --git a/changelogs/unreleased/nfriend-fix-milestone-combobox-double-scrollbar.yml b/changelogs/unreleased/nfriend-fix-milestone-combobox-double-scrollbar.yml deleted file mode 100644 index d31de30feca..00000000000 --- a/changelogs/unreleased/nfriend-fix-milestone-combobox-double-scrollbar.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix double scrollbar issue in milestone selector dropdown -merge_request: 54734 -author: -type: fixed diff --git a/changelogs/unreleased/nfriend-fix-ref-selector-double-dropdown.yml b/changelogs/unreleased/nfriend-fix-ref-selector-double-dropdown.yml deleted file mode 100644 index 61d549bd15b..00000000000 --- a/changelogs/unreleased/nfriend-fix-ref-selector-double-dropdown.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix double scrollbar in ref selector dropdown -merge_request: 54719 -author: -type: fixed diff --git a/changelogs/unreleased/nfriend-ref-selector-dropdown-cleanup.yml b/changelogs/unreleased/nfriend-ref-selector-dropdown-cleanup.yml deleted file mode 100644 index f9fd96dac48..00000000000 --- a/changelogs/unreleased/nfriend-ref-selector-dropdown-cleanup.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Small visual updates to Git ref selector dropdown on New/Edit Release page -merge_request: 55121 -author: -type: changed diff --git a/changelogs/unreleased/nfriend-turn-off-ref-selector-autocomplete.yml b/changelogs/unreleased/nfriend-turn-off-ref-selector-autocomplete.yml deleted file mode 100644 index 8e67251f06d..00000000000 --- a/changelogs/unreleased/nfriend-turn-off-ref-selector-autocomplete.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Turn off native autocomplete for ref selector components -merge_request: 56128 -author: -type: fixed diff --git a/changelogs/unreleased/nicolasdular-record-issue-creation-onboarding-progress.yml b/changelogs/unreleased/nicolasdular-record-issue-creation-onboarding-progress.yml deleted file mode 100644 index 604335202b5..00000000000 --- a/changelogs/unreleased/nicolasdular-record-issue-creation-onboarding-progress.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Record onboarding action for issue creation -merge_request: 53611 -author: -type: changed diff --git a/changelogs/unreleased/ntepluhina-fix-design-management-reply-placeholder.yml b/changelogs/unreleased/ntepluhina-fix-design-management-reply-placeholder.yml deleted file mode 100644 index c48e549462a..00000000000 --- a/changelogs/unreleased/ntepluhina-fix-design-management-reply-placeholder.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Added a missing class to reply placeholder -merge_request: 54817 -author: -type: fixed diff --git a/changelogs/unreleased/pb-add-hourglass-icon-to-empty-duration-cell.yml b/changelogs/unreleased/pb-add-hourglass-icon-to-empty-duration-cell.yml deleted file mode 100644 index f7fe185d7e3..00000000000 --- a/changelogs/unreleased/pb-add-hourglass-icon-to-empty-duration-cell.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Display in progress for pipeline duration cell when pipeline has not finished running -merge_request: 56266 -author: -type: changed diff --git a/changelogs/unreleased/pb-store-bare-class-name-for-batched-migrations.yml b/changelogs/unreleased/pb-store-bare-class-name-for-batched-migrations.yml deleted file mode 100644 index 7c27d4ae9a2..00000000000 --- a/changelogs/unreleased/pb-store-bare-class-name-for-batched-migrations.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: Change the default batch_class_name for batched_background_migrations to the - unqualified class name -merge_request: 56036 -author: -type: changed diff --git a/changelogs/unreleased/pb-track-background-job-executions.yml b/changelogs/unreleased/pb-track-background-job-executions.yml deleted file mode 100644 index bedf6317e8d..00000000000 --- a/changelogs/unreleased/pb-track-background-job-executions.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Create tables to track auto-batched background migrations -merge_request: 54628 -author: -type: added diff --git a/changelogs/unreleased/peterhegman-remove-vue_project_members_list-feature-flag.yml b/changelogs/unreleased/peterhegman-remove-vue_project_members_list-feature-flag.yml deleted file mode 100644 index 06617c82212..00000000000 --- a/changelogs/unreleased/peterhegman-remove-vue_project_members_list-feature-flag.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove `vue_project_members_list` feature flag -merge_request: 55902 -author: -type: changed diff --git a/changelogs/unreleased/ph-282476-fixGraphQLDiffComments.yml b/changelogs/unreleased/ph-282476-fixGraphQLDiffComments.yml deleted file mode 100644 index c7b5acf018d..00000000000 --- a/changelogs/unreleased/ph-282476-fixGraphQLDiffComments.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fixed diff notes GraphQL mutation not allowing comments on deleted lines -merge_request: 54801 -author: -type: fixed diff --git a/changelogs/unreleased/ph-284212-moveCodeownersTipToVueApp.yml b/changelogs/unreleased/ph-284212-moveCodeownersTipToVueApp.yml deleted file mode 100644 index a73782b0975..00000000000 --- a/changelogs/unreleased/ph-284212-moveCodeownersTipToVueApp.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Moved CODEOWNERS tip into approvals Vue app -merge_request: 54830 -author: -type: changed diff --git a/changelogs/unreleased/ph-defaultEnableWidgetGraphqlFlag.yml b/changelogs/unreleased/ph-defaultEnableWidgetGraphqlFlag.yml deleted file mode 100644 index 09bd5864bd7..00000000000 --- a/changelogs/unreleased/ph-defaultEnableWidgetGraphqlFlag.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Convert merge request widget state to use GraphQL -merge_request: 53846 -author: -type: changed diff --git a/changelogs/unreleased/philipcunningham-add-branch-to-dast-profile-322526.yml b/changelogs/unreleased/philipcunningham-add-branch-to-dast-profile-322526.yml deleted file mode 100644 index 4ad204b7cd1..00000000000 --- a/changelogs/unreleased/philipcunningham-add-branch-to-dast-profile-322526.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add branch_name to dast_profiles table -merge_request: 54891 -author: -type: added diff --git a/changelogs/unreleased/pipeline-editor-branch-param.yml b/changelogs/unreleased/pipeline-editor-branch-param.yml deleted file mode 100644 index 4a58c4a4676..00000000000 --- a/changelogs/unreleased/pipeline-editor-branch-param.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Allow users to work on non-default branch in pipeline editor -merge_request: 55413 -author: -type: added diff --git a/changelogs/unreleased/pipeline-editor-empty-state.yml b/changelogs/unreleased/pipeline-editor-empty-state.yml deleted file mode 100644 index 9c729aa1b7f..00000000000 --- a/changelogs/unreleased/pipeline-editor-empty-state.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add empty state to pipeline editor section -merge_request: 55227 -author: -type: changed diff --git a/changelogs/unreleased/pks-checks-skip-integrity-lfs-deletions.yml b/changelogs/unreleased/pks-checks-skip-integrity-lfs-deletions.yml deleted file mode 100644 index ffbc6cff4c3..00000000000 --- a/changelogs/unreleased/pks-checks-skip-integrity-lfs-deletions.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: 'checks: Skip LFS checks when deleting refs' -merge_request: 55609 -author: -type: fixed diff --git a/changelogs/unreleased/pl-rubocop-todo-begin-end-alignment.yml b/changelogs/unreleased/pl-rubocop-todo-begin-end-alignment.yml new file mode 100644 index 00000000000..7c7ae3fb0ca --- /dev/null +++ b/changelogs/unreleased/pl-rubocop-todo-begin-end-alignment.yml @@ -0,0 +1,5 @@ +--- +title: Fixed offenses Layout/BeginEndAlignment +merge_request: 56827 +author: Shubham Kumar (@imskr) +type: fixed diff --git a/changelogs/unreleased/preload-environments-for-ci-cd-variables.yml b/changelogs/unreleased/preload-environments-for-ci-cd-variables.yml deleted file mode 100644 index 1c0b4938420..00000000000 --- a/changelogs/unreleased/preload-environments-for-ci-cd-variables.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Clear Environment Search in CI/CD Variables -merge_request: 54626 -author: -type: changed diff --git a/changelogs/unreleased/preload-runner-tags.yml b/changelogs/unreleased/preload-runner-tags.yml deleted file mode 100644 index 1b733ce4113..00000000000 --- a/changelogs/unreleased/preload-runner-tags.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Preload runner tags for `UpdateBuildQueueService` -merge_request: 55543 -author: -type: performance diff --git a/changelogs/unreleased/ps-fix-heading-style-email-diffs.yml b/changelogs/unreleased/ps-fix-heading-style-email-diffs.yml deleted file mode 100644 index 0511518ef24..00000000000 --- a/changelogs/unreleased/ps-fix-heading-style-email-diffs.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix inconsistent heading style in email diffs -merge_request: 55420 -author: -type: fixed diff --git a/changelogs/unreleased/psi-boards-scrollbar.yml b/changelogs/unreleased/psi-boards-scrollbar.yml deleted file mode 100644 index f797c8c0c76..00000000000 --- a/changelogs/unreleased/psi-boards-scrollbar.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Stop scrollbar stretching filtered search box -merge_request: 54574 -author: -type: fixed diff --git a/changelogs/unreleased/public_generic_packages.yml b/changelogs/unreleased/public_generic_packages.yml deleted file mode 100644 index 64fabb0540c..00000000000 --- a/changelogs/unreleased/public_generic_packages.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Public generic packages can now be accessed by developer, guest and anonymous users -merge_request: 55978 -author: Mathieu Parent -type: changed diff --git a/changelogs/unreleased/qmnguyen0711-825-limit-the-size-of-sidekiq-jobs.yml b/changelogs/unreleased/qmnguyen0711-825-limit-the-size-of-sidekiq-jobs.yml deleted file mode 100644 index f16acc6781b..00000000000 --- a/changelogs/unreleased/qmnguyen0711-825-limit-the-size-of-sidekiq-jobs.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Limit the payload size of Sidekiq jobs before scheduling -merge_request: 53829 -author: -type: added diff --git a/changelogs/unreleased/qmnguyen0711-846-sentry-merge-sentry-s-contexts-and-users-into-applicatio.yml b/changelogs/unreleased/qmnguyen0711-846-sentry-merge-sentry-s-contexts-and-users-into-applicatio.yml deleted file mode 100644 index bd4a97d264f..00000000000 --- a/changelogs/unreleased/qmnguyen0711-846-sentry-merge-sentry-s-contexts-and-users-into-applicatio.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Merge Sentry's contexts into Gitlab::ApplicationContext -merge_request: 53691 -author: -type: changed diff --git a/changelogs/unreleased/qmnguyen0711-remove-latest-report-results-preloading.yml b/changelogs/unreleased/qmnguyen0711-remove-latest-report-results-preloading.yml deleted file mode 100644 index 19e5b039db2..00000000000 --- a/changelogs/unreleased/qmnguyen0711-remove-latest-report-results-preloading.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove latest_builds_report_results preloading in pipeline serializer -merge_request: 56181 -author: -type: performance diff --git a/changelogs/unreleased/reenable-sentry-pipeline-graph-only.yml b/changelogs/unreleased/reenable-sentry-pipeline-graph-only.yml deleted file mode 100644 index 47711e6da82..00000000000 --- a/changelogs/unreleased/reenable-sentry-pipeline-graph-only.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Restore Sentry functionaly to the frontend -merge_request: 54441 -author: -type: changed diff --git a/changelogs/unreleased/refactor-use-policies-framework-for-admin.yml b/changelogs/unreleased/refactor-use-policies-framework-for-admin.yml deleted file mode 100644 index 6b282a6e8cc..00000000000 --- a/changelogs/unreleased/refactor-use-policies-framework-for-admin.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Use policies for group access rights as admin -merge_request: 55349 -author: Diego Louzán -type: changed diff --git a/changelogs/unreleased/relax-changelog-tag-restriction.yml b/changelogs/unreleased/relax-changelog-tag-restriction.yml deleted file mode 100644 index ef8e74dc797..00000000000 --- a/changelogs/unreleased/relax-changelog-tag-restriction.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Relax tag requirements when generating changelogs -merge_request: 54832 -author: -type: changed diff --git a/changelogs/unreleased/remove-bootstrap-dropdowns-from-note-components.yml b/changelogs/unreleased/remove-bootstrap-dropdowns-from-note-components.yml deleted file mode 100644 index b55e6b2da7d..00000000000 --- a/changelogs/unreleased/remove-bootstrap-dropdowns-from-note-components.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: Migrated Bootstrap dropdown to GitLab UI GlDropdown used for comment submit - button -merge_request: 50933 -author: -type: other diff --git a/changelogs/unreleased/remove-ci_jwt_include_environment-feature-flag.yml b/changelogs/unreleased/remove-ci_jwt_include_environment-feature-flag.yml deleted file mode 100644 index 459c1f69d32..00000000000 --- a/changelogs/unreleased/remove-ci_jwt_include_environment-feature-flag.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add environment to custom CI_JOB_JWT claims -merge_request: 54168 -author: -type: added diff --git a/changelogs/unreleased/remove-commit-paginate-ff.yml b/changelogs/unreleased/remove-commit-paginate-ff.yml deleted file mode 100644 index 7f511ce2eeb..00000000000 --- a/changelogs/unreleased/remove-commit-paginate-ff.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add pagination of file diffs when viewing a large commit -merge_request: 54236 -author: -type: added diff --git a/changelogs/unreleased/remove-deprecated-columns.yml b/changelogs/unreleased/remove-deprecated-columns.yml deleted file mode 100644 index 42039fed758..00000000000 --- a/changelogs/unreleased/remove-deprecated-columns.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove outdated ci db columns -merge_request: 54564 -author: -type: changed diff --git a/changelogs/unreleased/remove-index-add-index.yml b/changelogs/unreleased/remove-index-add-index.yml deleted file mode 100644 index 57ed8a99772..00000000000 --- a/changelogs/unreleased/remove-index-add-index.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove unique index and add composite key index to Security Orchestration -merge_request: 55521 -author: -type: other diff --git a/changelogs/unreleased/remove-margin-status.yml b/changelogs/unreleased/remove-margin-status.yml deleted file mode 100644 index dc8db7e5785..00000000000 --- a/changelogs/unreleased/remove-margin-status.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add btn-default and remove extra right margin -merge_request: 54134 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/remove-merge-request-count-with-merged-at-ff.yml b/changelogs/unreleased/remove-merge-request-count-with-merged-at-ff.yml deleted file mode 100644 index 105ffae9841..00000000000 --- a/changelogs/unreleased/remove-merge-request-count-with-merged-at-ff.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove the optimized_merge_request_count_with_merged_at_filter feature flag -merge_request: 55600 -author: -type: other diff --git a/changelogs/unreleased/remove-new_jira_connect_ui-feature-flag.yml b/changelogs/unreleased/remove-new_jira_connect_ui-feature-flag.yml deleted file mode 100644 index 812ecf6c937..00000000000 --- a/changelogs/unreleased/remove-new_jira_connect_ui-feature-flag.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: 'Jira Connect app: add ability to select namespace from list of available namespaces' -merge_request: 54037 -author: -type: added diff --git a/changelogs/unreleased/remove-pipeline-editor-section-feature-flag.yml b/changelogs/unreleased/remove-pipeline-editor-section-feature-flag.yml deleted file mode 100644 index 4cfdc38fd4b..00000000000 --- a/changelogs/unreleased/remove-pipeline-editor-section-feature-flag.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove pipeline editor feature flag -merge_request: 54971 -author: -type: other diff --git a/changelogs/unreleased/remove-pkg-event-redis-feature-flag.yml b/changelogs/unreleased/remove-pkg-event-redis-feature-flag.yml deleted file mode 100644 index 638a9c7bd73..00000000000 --- a/changelogs/unreleased/remove-pkg-event-redis-feature-flag.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Removes collect_package_events_redis feature flag -merge_request: 49897 -author: -type: other diff --git a/changelogs/unreleased/remove-scroll-merge-instruction.yml b/changelogs/unreleased/remove-scroll-merge-instruction.yml deleted file mode 100644 index 0c3e606139f..00000000000 --- a/changelogs/unreleased/remove-scroll-merge-instruction.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove gl-overflow-scroll in merge instructions modal -merge_request: 54144 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/remove-secure_security_and_compliance_configuration_page_on_ce-flag.yml b/changelogs/unreleased/remove-secure_security_and_compliance_configuration_page_on_ce-flag.yml deleted file mode 100644 index 38637c48a94..00000000000 --- a/changelogs/unreleased/remove-secure_security_and_compliance_configuration_page_on_ce-flag.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove security & compliance config page feature flag -merge_request: 56219 -author: -type: changed diff --git a/changelogs/unreleased/remove-transactionless-destroy-feature-flag.yml b/changelogs/unreleased/remove-transactionless-destroy-feature-flag.yml deleted file mode 100644 index 5ae09c3e2f1..00000000000 --- a/changelogs/unreleased/remove-transactionless-destroy-feature-flag.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove project_transactionless_destroy feature flag -merge_request: 55795 -author: -type: changed diff --git a/changelogs/unreleased/rename-vuln-fingerprint-indexes.yml b/changelogs/unreleased/rename-vuln-fingerprint-indexes.yml deleted file mode 100644 index 59f9530a8a6..00000000000 --- a/changelogs/unreleased/rename-vuln-fingerprint-indexes.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Rename vulnerability fingerprints indexes -merge_request: 55552 -author: -type: other diff --git a/changelogs/unreleased/revert_sort_order_explore_projects.yml b/changelogs/unreleased/revert_sort_order_explore_projects.yml deleted file mode 100644 index 58256502c78..00000000000 --- a/changelogs/unreleased/revert_sort_order_explore_projects.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Reverts default sort order for Explore Projects to Last updated -merge_request: 54879 -author: -type: changed diff --git a/changelogs/unreleased/runners-api-context-metadata.yml b/changelogs/unreleased/runners-api-context-metadata.yml deleted file mode 100644 index e5c4edd1755..00000000000 --- a/changelogs/unreleased/runners-api-context-metadata.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add runners api context metadata -merge_request: 55089 -author: -type: changed diff --git a/changelogs/unreleased/sanddown.yml b/changelogs/unreleased/sanddown.yml deleted file mode 100644 index 2350ec70633..00000000000 --- a/changelogs/unreleased/sanddown.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: reconcile source installation and upgrade docs -merge_request: 55170 -author: Jörg Behrmann @behrmann -type: fixed diff --git a/changelogs/unreleased/security-image-rendered-in-search-result.yml b/changelogs/unreleased/security-image-rendered-in-search-result.yml deleted file mode 100644 index 10d89a0d815..00000000000 --- a/changelogs/unreleased/security-image-rendered-in-search-result.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Sanitize issue description in search result -merge_request: 56256 -author: -type: fixed diff --git a/changelogs/unreleased/security-jv-workhorse-router.yml b/changelogs/unreleased/security-jv-workhorse-router.yml deleted file mode 100644 index af17a71086d..00000000000 --- a/changelogs/unreleased/security-jv-workhorse-router.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: 'Workhorse: prevent escaped router path traversal' -merge_request: -author: -type: security diff --git a/changelogs/unreleased/security-workhorse-validate-path-logging-removal.yml b/changelogs/unreleased/security-workhorse-validate-path-logging-removal.yml deleted file mode 100644 index c8b68da684b..00000000000 --- a/changelogs/unreleased/security-workhorse-validate-path-logging-removal.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: 'Workhorse: Stop logging when path is excluded' -merge_request: -author: -type: security diff --git a/changelogs/unreleased/seleced-state-vulnerabilities-dashboard.yml b/changelogs/unreleased/seleced-state-vulnerabilities-dashboard.yml deleted file mode 100644 index 3751666d088..00000000000 --- a/changelogs/unreleased/seleced-state-vulnerabilities-dashboard.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add selected state for chart button in vulnerabilities dashboard -merge_request: 54763 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/selected-state-commit-view.yml b/changelogs/unreleased/selected-state-commit-view.yml deleted file mode 100644 index fdcb6f5d616..00000000000 --- a/changelogs/unreleased/selected-state-commit-view.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add selected state for diff view in commit page -merge_request: 54762 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/sh-add-path-lock-confirmation.yml b/changelogs/unreleased/sh-add-path-lock-confirmation.yml deleted file mode 100644 index 7f7df21e141..00000000000 --- a/changelogs/unreleased/sh-add-path-lock-confirmation.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add a confirmation prompt to lock and unlock path locks -merge_request: 44849 -author: -type: other diff --git a/changelogs/unreleased/sh-azure-ad-v2-omniauth.yml b/changelogs/unreleased/sh-azure-ad-v2-omniauth.yml deleted file mode 100644 index cb11aa97920..00000000000 --- a/changelogs/unreleased/sh-azure-ad-v2-omniauth.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add Azure ActiveDirectory v2 OmniAuth provider -merge_request: 54265 -author: -type: added diff --git a/changelogs/unreleased/sh-azure-blob-utf8-fix.yml b/changelogs/unreleased/sh-azure-blob-utf8-fix.yml deleted file mode 100644 index 6bcee9d4aa2..00000000000 --- a/changelogs/unreleased/sh-azure-blob-utf8-fix.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix UTF-8 characters not working with Azure Blob storage -merge_request: 54875 -author: -type: fixed diff --git a/changelogs/unreleased/sh-fix-npm-package-finder-all-projects.yml b/changelogs/unreleased/sh-fix-npm-package-finder-all-projects.yml deleted file mode 100644 index 909e2baa449..00000000000 --- a/changelogs/unreleased/sh-fix-npm-package-finder-all-projects.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Use `Namespace#all_projects` for NPM package finder -merge_request: 56415 -author: -type: performance diff --git a/changelogs/unreleased/sh-improve-api-marginalia-comments.yml b/changelogs/unreleased/sh-improve-api-marginalia-comments.yml deleted file mode 100644 index ad4823edadf..00000000000 --- a/changelogs/unreleased/sh-improve-api-marginalia-comments.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Improve Marginalia comments for API -merge_request: 55564 -author: -type: changed diff --git a/changelogs/unreleased/sh-log-large-multipart-files-com.yml b/changelogs/unreleased/sh-log-large-multipart-files-com.yml deleted file mode 100644 index a964ae37ccb..00000000000 --- a/changelogs/unreleased/sh-log-large-multipart-files-com.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Log large multipart messages from Rack -merge_request: 55933 -author: -type: added diff --git a/changelogs/unreleased/sh-update-batchloader-2-0-0.yml b/changelogs/unreleased/sh-update-batchloader-2-0-0.yml deleted file mode 100644 index aca22a38803..00000000000 --- a/changelogs/unreleased/sh-update-batchloader-2-0-0.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update batch_loader gem to v2.0.0 -merge_request: 54639 -author: -type: fixed diff --git a/changelogs/unreleased/sh-update-fog-aws-3-9.yml b/changelogs/unreleased/sh-update-fog-aws-3-9.yml deleted file mode 100644 index 86d5a3ef145..00000000000 --- a/changelogs/unreleased/sh-update-fog-aws-3-9.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update fog-aws to v3.9.0 -merge_request: 55528 -author: -type: fixed diff --git a/changelogs/unreleased/sh-update-mailroom-0-0-9.yml b/changelogs/unreleased/sh-update-mailroom-0-0-9.yml deleted file mode 100644 index fea6c72c6d8..00000000000 --- a/changelogs/unreleased/sh-update-mailroom-0-0-9.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update mailroom to v0.0.9 -merge_request: 56592 -author: -type: changed diff --git a/changelogs/unreleased/sh-use-gitlab-fog-google.yml b/changelogs/unreleased/sh-use-gitlab-fog-google.yml deleted file mode 100644 index 98420f279ca..00000000000 --- a/changelogs/unreleased/sh-use-gitlab-fog-google.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Use gitlab-fog-google instead of upstream fog-google gem -merge_request: 56245 -author: -type: fixed diff --git a/changelogs/unreleased/show-nested-env.yml b/changelogs/unreleased/show-nested-env.yml deleted file mode 100644 index 7305cf17975..00000000000 --- a/changelogs/unreleased/show-nested-env.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Show nested environments when change tab, page -merge_request: 55167 -author: -type: changed diff --git a/changelogs/unreleased/sidebar-user-avatar.yml b/changelogs/unreleased/sidebar-user-avatar.yml deleted file mode 100644 index ea5aa910a46..00000000000 --- a/changelogs/unreleased/sidebar-user-avatar.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update user avatar in sidebar realtime -merge_request: 54135 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/simplify-notifications-dropdown.yml b/changelogs/unreleased/simplify-notifications-dropdown.yml deleted file mode 100644 index 5a90d6784c6..00000000000 --- a/changelogs/unreleased/simplify-notifications-dropdown.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Simplify notifications dropdown -merge_request: 55522 -author: -type: changed diff --git a/changelogs/unreleased/slack_service_usage_data.yml b/changelogs/unreleased/slack_service_usage_data.yml deleted file mode 100644 index 34b1b516360..00000000000 --- a/changelogs/unreleased/slack_service_usage_data.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Log individual user usage of Slack service -merge_request: 54347 -author: -type: changed diff --git a/changelogs/unreleased/ssarka-master-patch-39936.yml b/changelogs/unreleased/ssarka-master-patch-39936.yml deleted file mode 100644 index 8edd44d9f45..00000000000 --- a/changelogs/unreleased/ssarka-master-patch-39936.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Set MobSF version to 3.2.9 in SAST template -merge_request: 53545 -author: -type: other diff --git a/changelogs/unreleased/ssarka-master-patch-48911.yml b/changelogs/unreleased/ssarka-master-patch-48911.yml deleted file mode 100644 index 754434639f9..00000000000 --- a/changelogs/unreleased/ssarka-master-patch-48911.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update mobsf version in the SAST template -merge_request: 56413 -author: -type: other diff --git a/changelogs/unreleased/stale-environment-cleanup.yml b/changelogs/unreleased/stale-environment-cleanup.yml deleted file mode 100644 index db4bc61f080..00000000000 --- a/changelogs/unreleased/stale-environment-cleanup.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add API endpoint for deleting stale review envs -merge_request: 52224 -author: -type: added diff --git a/changelogs/unreleased/switch-order-of-buttons-configure-feature-flag-modal.yml b/changelogs/unreleased/switch-order-of-buttons-configure-feature-flag-modal.yml deleted file mode 100644 index 7257d63bf1d..00000000000 --- a/changelogs/unreleased/switch-order-of-buttons-configure-feature-flag-modal.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Change the order of action buttons in the configure feature flags modal -merge_request: 54731 -author: -type: changed diff --git a/changelogs/unreleased/sy-add-end-date-to-rotations.yml b/changelogs/unreleased/sy-add-end-date-to-rotations.yml deleted file mode 100644 index fb93c5d1d3d..00000000000 --- a/changelogs/unreleased/sy-add-end-date-to-rotations.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add suppport for an end time on on-call rotations -merge_request: 53675 -author: -type: added diff --git a/changelogs/unreleased/sy-system-note-for-resolving-alert.yml b/changelogs/unreleased/sy-system-note-for-resolving-alert.yml deleted file mode 100644 index 04a1b3e6807..00000000000 --- a/changelogs/unreleased/sy-system-note-for-resolving-alert.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Create system note on alert when its auto-resolved via alert integration -merge_request: 54645 -author: -type: added diff --git a/changelogs/unreleased/sy-update-alert-title.yml b/changelogs/unreleased/sy-update-alert-title.yml deleted file mode 100644 index da22a831a97..00000000000 --- a/changelogs/unreleased/sy-update-alert-title.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: 'Update default title of alerts to New: Alert' -merge_request: 54621 -author: -type: changed diff --git a/changelogs/unreleased/sy-update-operations-visibility-text.yml b/changelogs/unreleased/sy-update-operations-visibility-text.yml deleted file mode 100644 index ab7d134f69f..00000000000 --- a/changelogs/unreleased/sy-update-operations-visibility-text.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: Adjust text explaining content of Operations menu from visibility section of - project settings -merge_request: 54963 -author: -type: changed diff --git a/changelogs/unreleased/tc-add-custom-emoji-creator.yml b/changelogs/unreleased/tc-add-custom-emoji-creator.yml deleted file mode 100644 index da4d33f674b..00000000000 --- a/changelogs/unreleased/tc-add-custom-emoji-creator.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Add creator to custom emoji -merge_request: 53879 -author: -type: changed diff --git a/changelogs/unreleased/test_update_merge_request_worker_performance_2.yml b/changelogs/unreleased/test_update_merge_request_worker_performance_2.yml deleted file mode 100644 index 1a307918e27..00000000000 --- a/changelogs/unreleased/test_update_merge_request_worker_performance_2.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Remove unneeded transitions on MR for mark_as_unchecked event -merge_request: 53537 -author: -type: performance diff --git a/changelogs/unreleased/test_update_merge_request_worker_performance_3.yml b/changelogs/unreleased/test_update_merge_request_worker_performance_3.yml deleted file mode 100644 index df116e54f2d..00000000000 --- a/changelogs/unreleased/test_update_merge_request_worker_performance_3.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Preload certain data used in the updating of a merge request -merge_request: 53802 -author: -type: performance diff --git a/changelogs/unreleased/tor-defect-file-viewed-reviews-convert-to-vuex.yml b/changelogs/unreleased/tor-defect-file-viewed-reviews-convert-to-vuex.yml deleted file mode 100644 index 1d9fc46b875..00000000000 --- a/changelogs/unreleased/tor-defect-file-viewed-reviews-convert-to-vuex.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix 'viewed' checkbox in single-file view mode -merge_request: 55922 -author: -type: fixed diff --git a/changelogs/unreleased/tor-defect-missing-popovers-from-async-DOM.yml b/changelogs/unreleased/tor-defect-missing-popovers-from-async-DOM.yml deleted file mode 100644 index 139f6aedf6b..00000000000 --- a/changelogs/unreleased/tor-defect-missing-popovers-from-async-DOM.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: React to new DOM nodes being added to the page to bind the user information - popover to them -merge_request: 54411 -author: -type: fixed diff --git a/changelogs/unreleased/tor-defect-mr-cog-checkboxes.yml b/changelogs/unreleased/tor-defect-mr-cog-checkboxes.yml deleted file mode 100644 index adb564bfd15..00000000000 --- a/changelogs/unreleased/tor-defect-mr-cog-checkboxes.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix horizontal alignment of MR Changes cog menu dropdown checkboxes -merge_request: 55591 -author: -type: fixed diff --git a/changelogs/unreleased/tor-defect-network-error-message-show-api-errors.yml b/changelogs/unreleased/tor-defect-network-error-message-show-api-errors.yml deleted file mode 100644 index 627dc8bf741..00000000000 --- a/changelogs/unreleased/tor-defect-network-error-message-show-api-errors.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Show API errors when a command-only comment fails -merge_request: 55457 -author: -type: other diff --git a/changelogs/unreleased/tor-defect-out-of-place-bold-label-in-diffs-dropdown-menu.yml b/changelogs/unreleased/tor-defect-out-of-place-bold-label-in-diffs-dropdown-menu.yml deleted file mode 100644 index 8525204ee7e..00000000000 --- a/changelogs/unreleased/tor-defect-out-of-place-bold-label-in-diffs-dropdown-menu.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix bold text mismatch in MR ⚙ menu -merge_request: 54531 -author: -type: fixed diff --git a/changelogs/unreleased/trial-button-confirm.yml b/changelogs/unreleased/trial-button-confirm.yml deleted file mode 100644 index 96972f0e3ce..00000000000 --- a/changelogs/unreleased/trial-button-confirm.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Replace btn-primary with btn-confirm in Start your free trial button -merge_request: 53215 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/update-ci-template-default-branch-1.yml b/changelogs/unreleased/update-ci-template-default-branch-1.yml deleted file mode 100644 index a1236e353d1..00000000000 --- a/changelogs/unreleased/update-ci-template-default-branch-1.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update Pages template examples to default branch -merge_request: 56298 -author: -type: other diff --git a/changelogs/unreleased/update-ci-template-default-branch-2.yml b/changelogs/unreleased/update-ci-template-default-branch-2.yml deleted file mode 100644 index 188bcacd8d8..00000000000 --- a/changelogs/unreleased/update-ci-template-default-branch-2.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update CI template examples to default branch -merge_request: 56301 -author: -type: other diff --git a/changelogs/unreleased/update-ci-template-default-branch-3.yml b/changelogs/unreleased/update-ci-template-default-branch-3.yml deleted file mode 100644 index 008ed062f86..00000000000 --- a/changelogs/unreleased/update-ci-template-default-branch-3.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update templates to refer to default branch -merge_request: 56304 -author: -type: other diff --git a/changelogs/unreleased/update-cicd-naming.yml b/changelogs/unreleased/update-cicd-naming.yml deleted file mode 100644 index 1fc24217393..00000000000 --- a/changelogs/unreleased/update-cicd-naming.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update UI text to CI/CD from CI / CD -merge_request: 56070 -author: -type: other diff --git a/changelogs/unreleased/update-gitlab-runner-helm-chart-to-0-26-0.yml b/changelogs/unreleased/update-gitlab-runner-helm-chart-to-0-26-0.yml deleted file mode 100644 index d3fac44001f..00000000000 --- a/changelogs/unreleased/update-gitlab-runner-helm-chart-to-0-26-0.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update GitLab Runner Helm Chart to 0.26.0 -merge_request: 54863 -author: -type: other diff --git a/changelogs/unreleased/update-mr-page-buttons.yml b/changelogs/unreleased/update-mr-page-buttons.yml deleted file mode 100644 index 9cd872fc649..00000000000 --- a/changelogs/unreleased/update-mr-page-buttons.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update button to btn-confirm on merge requests page -merge_request: 55218 -author: -type: changed diff --git a/changelogs/unreleased/update-terraform-states-user-foreign-key.yml b/changelogs/unreleased/update-terraform-states-user-foreign-key.yml deleted file mode 100644 index 8eb6e5b9c96..00000000000 --- a/changelogs/unreleased/update-terraform-states-user-foreign-key.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Change terraform_states.locked_by_user_id foreign key to SET NULL -merge_request: 55813 -author: -type: fixed diff --git a/changelogs/unreleased/update-validate-url-gem.yml b/changelogs/unreleased/update-validate-url-gem.yml deleted file mode 100644 index 9500d70b11f..00000000000 --- a/changelogs/unreleased/update-validate-url-gem.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update validate_url gem -merge_request: 55706 -author: -type: fixed diff --git a/changelogs/unreleased/update_latex_template.yml b/changelogs/unreleased/update_latex_template.yml deleted file mode 100644 index 33213112768..00000000000 --- a/changelogs/unreleased/update_latex_template.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Update LaTeX Docker image in CI Templates to TexLive 2020 -merge_request: 52043 -author: Michael Schmitt @schmitmd -type: changed diff --git a/changelogs/unreleased/upgrade-pages-1-36.yml b/changelogs/unreleased/upgrade-pages-1-36.yml deleted file mode 100644 index 7f888fe0a25..00000000000 --- a/changelogs/unreleased/upgrade-pages-1-36.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Upgrade Pages to v1.36.0 -merge_request: 56295 -author: -type: added diff --git a/changelogs/unreleased/usage-ping-dictionary-whitespace.yml b/changelogs/unreleased/usage-ping-dictionary-whitespace.yml deleted file mode 100644 index 2baf68ba9df..00000000000 --- a/changelogs/unreleased/usage-ping-dictionary-whitespace.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Updating usage dictionary generator -merge_request: 55956 -author: -type: other diff --git a/changelogs/unreleased/user-access-role-badge-component.yml b/changelogs/unreleased/user-access-role-badge-component.yml deleted file mode 100644 index bad431dd9fb..00000000000 --- a/changelogs/unreleased/user-access-role-badge-component.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Improve styling of user access role badges -merge_request: 56061 -author: -type: changed diff --git a/changelogs/unreleased/user-auth-bmiller-return-early-if-user-is-nil.yml b/changelogs/unreleased/user-auth-bmiller-return-early-if-user-is-nil.yml deleted file mode 100644 index b259fdecd56..00000000000 --- a/changelogs/unreleased/user-auth-bmiller-return-early-if-user-is-nil.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fix a crash when logging in using SAML for the first time when sign-ups are disabled -merge_request: 50216 -author: -type: other diff --git a/changelogs/unreleased/uusijani-gitlab-uusijani-master-patch-65195.yml b/changelogs/unreleased/uusijani-gitlab-uusijani-master-patch-65195.yml deleted file mode 100644 index 7ed23b2f681..00000000000 --- a/changelogs/unreleased/uusijani-gitlab-uusijani-master-patch-65195.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Fixed typo on Two-Factor Authentication page -merge_request: 54565 -author: Jani Uusitalo @uusijani -type: fixed diff --git a/changelogs/unreleased/vs-break-long-code-line-in-markdown.yml b/changelogs/unreleased/vs-break-long-code-line-in-markdown.yml deleted file mode 100644 index 5ebf0cad97a..00000000000 --- a/changelogs/unreleased/vs-break-long-code-line-in-markdown.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Wrap long code lines in markdown -merge_request: 54540 -author: -type: fixed diff --git a/changelogs/unreleased/vs-enable-gitlab-stylelint-config.yml b/changelogs/unreleased/vs-enable-gitlab-stylelint-config.yml deleted file mode 100644 index 4373b67bbe7..00000000000 --- a/changelogs/unreleased/vs-enable-gitlab-stylelint-config.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Replace scss with stylelint in documentation -merge_request: 53700 -author: -type: added diff --git a/changelogs/unreleased/vs-wrap-code-lines-blocks-properly.yml b/changelogs/unreleased/vs-wrap-code-lines-blocks-properly.yml deleted file mode 100644 index 28932c44cd5..00000000000 --- a/changelogs/unreleased/vs-wrap-code-lines-blocks-properly.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Do not break word in the code blocks under Safari -merge_request: 55405 -author: -type: fixed diff --git a/changelogs/unreleased/x509-cert-loading.yml b/changelogs/unreleased/x509-cert-loading.yml deleted file mode 100644 index 76fa6907730..00000000000 --- a/changelogs/unreleased/x509-cert-loading.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Forcibly load OpenSSL::X509::DEFAULT_CERT_FILE -merge_request: 54569 -author: -type: fixed diff --git a/changelogs/unreleased/xanf-allow-top-level-bulk-imports.yml b/changelogs/unreleased/xanf-allow-top-level-bulk-imports.yml deleted file mode 100644 index 9a02ec07ef7..00000000000 --- a/changelogs/unreleased/xanf-allow-top-level-bulk-imports.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Allow importing groups as new top-level groups -merge_request: 54323 -author: -type: changed diff --git a/changelogs/unreleased/yo-btn-confirm-shared-issuable.yml b/changelogs/unreleased/yo-btn-confirm-shared-issuable.yml deleted file mode 100644 index bcaacc9443c..00000000000 --- a/changelogs/unreleased/yo-btn-confirm-shared-issuable.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move from btn-success to btn-confirm in shared/issuable directory -merge_request: 55303 -author: Yogi (@yo) -type: changed diff --git a/changelogs/unreleased/yo-btn-confirm-shared-labels.yml b/changelogs/unreleased/yo-btn-confirm-shared-labels.yml deleted file mode 100644 index c708a454bc1..00000000000 --- a/changelogs/unreleased/yo-btn-confirm-shared-labels.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Move from btn-success to btn-confirm in shared/labels directory -merge_request: 55304 -author: Yogi (@yo) -type: changed diff --git a/config/locales/devise.en.yml b/config/locales/devise.en.yml index 06dece58173..036bafef134 100644 --- a/config/locales/devise.en.yml +++ b/config/locales/devise.en.yml @@ -9,10 +9,10 @@ en: failure: already_authenticated: "You are already signed in." inactive: "Your account is not activated yet." - invalid: "Invalid %{authentication_keys} or password." + invalid: "Invalid login or password." locked: "Your account is locked." last_attempt: "You have one more attempt before your account is locked." - not_found_in_database: "Invalid %{authentication_keys} or password." + not_found_in_database: "Invalid login or password." timeout: "Your session expired. Please sign in again to continue." unauthenticated: "You need to sign in or sign up before continuing." unconfirmed: "You have to confirm your email address before continuing. Please check your email for the link we sent you, or click 'Resend confirmation email'." diff --git a/db/post_migrate/20210311093723_add_partial_index_on_ci_pipelines_by_cancelable_status_and_users.rb b/db/post_migrate/20210311093723_add_partial_index_on_ci_pipelines_by_cancelable_status_and_users.rb new file mode 100644 index 00000000000..176548be6e6 --- /dev/null +++ b/db/post_migrate/20210311093723_add_partial_index_on_ci_pipelines_by_cancelable_status_and_users.rb @@ -0,0 +1,30 @@ +# frozen_string_literal: true + +class AddPartialIndexOnCiPipelinesByCancelableStatusAndUsers < ActiveRecord::Migration[6.0] + include Gitlab::Database::MigrationHelpers + + DOWNTIME = false + INDEX_NAME = 'index_ci_pipelines_on_user_id_and_id_and_cancelable_status' + INDEX_FILTER_CONDITION = <<~SQL + ((status)::text = ANY ( + ARRAY[ + ('running'::character varying)::text, + ('waiting_for_resource'::character varying)::text, + ('preparing'::character varying)::text, + ('pending'::character varying)::text, + ('created'::character varying)::text, + ('scheduled'::character varying)::text + ] + )) + SQL + + disable_ddl_transaction! + + def up + add_concurrent_index :ci_pipelines, [:user_id, :id], where: INDEX_FILTER_CONDITION, name: INDEX_NAME + end + + def down + remove_concurrent_index_by_name :ci_pipelines, INDEX_NAME + end +end diff --git a/db/schema_migrations/20210311093723 b/db/schema_migrations/20210311093723 new file mode 100644 index 00000000000..9036880454b --- /dev/null +++ b/db/schema_migrations/20210311093723 @@ -0,0 +1 @@ +6af1c870e685b5a7fbc31b658959018c313713f0f35ad776f97d0a804f1c0f05
\ No newline at end of file diff --git a/db/structure.sql b/db/structure.sql index 0c4bd0d4ff6..443d54d8c7b 100644 --- a/db/structure.sql +++ b/db/structure.sql @@ -22104,6 +22104,8 @@ CREATE INDEX index_ci_pipelines_on_user_id_and_created_at_and_config_source ON c CREATE INDEX index_ci_pipelines_on_user_id_and_created_at_and_source ON ci_pipelines USING btree (user_id, created_at, source); +CREATE INDEX index_ci_pipelines_on_user_id_and_id_and_cancelable_status ON ci_pipelines USING btree (user_id, id) WHERE ((status)::text = ANY (ARRAY[('running'::character varying)::text, ('waiting_for_resource'::character varying)::text, ('preparing'::character varying)::text, ('pending'::character varying)::text, ('created'::character varying)::text, ('scheduled'::character varying)::text])); + CREATE UNIQUE INDEX index_ci_project_monthly_usages_on_project_id_and_date ON ci_project_monthly_usages USING btree (project_id, date); CREATE UNIQUE INDEX index_ci_refs_on_project_id_and_ref_path ON ci_refs USING btree (project_id, ref_path); diff --git a/doc/api/groups.md b/doc/api/groups.md index b3ab00b362e..cedfba4689f 100644 --- a/doc/api/groups.md +++ b/doc/api/groups.md @@ -769,7 +769,7 @@ Parameters: ### Options for `default_branch_protection` -The `default_branch_protection` attribute determines whether developers and maintainers can push to the applicable master branch, as described in the following table: +The `default_branch_protection` attribute determines whether developers and maintainers can push to the applicable [default branch](../user/project/repository/branches/default.md), as described in the following table: | Value | Description | |-------|-------------------------------------------------------------------------------------------------------------| diff --git a/doc/api/projects.md b/doc/api/projects.md index 46997a1e8ae..edd89bc34d5 100644 --- a/doc/api/projects.md +++ b/doc/api/projects.md @@ -1127,7 +1127,7 @@ POST /projects | `ci_config_path` | string | **{dotted-circle}** No | The path to CI configuration file. | | `container_expiration_policy_attributes` | hash | **{dotted-circle}** No | Update the image cleanup policy for this project. Accepts: `cadence` (string), `keep_n` (integer), `older_than` (string), `name_regex` (string), `name_regex_delete` (string), `name_regex_keep` (string), `enabled` (boolean). | | `container_registry_enabled` | boolean | **{dotted-circle}** No | Enable container registry for this project. | -| `default_branch` | string | **{dotted-circle}** No | `master` by default. | +| `default_branch` | string | **{dotted-circle}** No | The [default branch](../user/project/repository/branches/default.md) name. | | `description` | string | **{dotted-circle}** No | Short project description. | | `emails_disabled` | boolean | **{dotted-circle}** No | Disable email notifications. | | `external_authorization_classification_label` **(PREMIUM)** | string | **{dotted-circle}** No | The classification label for the project. | @@ -1276,7 +1276,7 @@ PUT /projects/:id | `ci_forward_deployment_enabled` | boolean | **{dotted-circle}** No | When a new deployment job starts, [skip older deployment jobs](../ci/pipelines/settings.md#skip-outdated-deployment-jobs) that are still pending | | `container_expiration_policy_attributes` | hash | **{dotted-circle}** No | Update the image cleanup policy for this project. Accepts: `cadence` (string), `keep_n` (integer), `older_than` (string), `name_regex` (string), `name_regex_delete` (string), `name_regex_keep` (string), `enabled` (boolean). | | `container_registry_enabled` | boolean | **{dotted-circle}** No | Enable container registry for this project. | -| `default_branch` | string | **{dotted-circle}** No | `master` by default. | +| `default_branch` | string | **{dotted-circle}** No | The [default branch](../user/project/repository/branches/default.md) name. | | `description` | string | **{dotted-circle}** No | Short project description. | | `emails_disabled` | boolean | **{dotted-circle}** No | Disable email notifications. | | `external_authorization_classification_label` **(PREMIUM)** | string | **{dotted-circle}** No | The classification label for the project. | diff --git a/doc/development/changelog.md b/doc/development/changelog.md index 98a3e75bb3c..2cabb447781 100644 --- a/doc/development/changelog.md +++ b/doc/development/changelog.md @@ -53,8 +53,8 @@ the `author` field. GitLab team members **should not**. a changelog entry regardless of these guidelines if the contributor wants one. Example: "Fixed a typo on the search results page." - Any docs-only changes **should not** have a changelog entry. -- Any change behind a disabled feature flag **should not** have a changelog entry. -- Any change behind an enabled feature flag **should** have a changelog entry. +- Any change behind a feature flag **disabled** by default **should not** have a changelog entry. +- Any change behind a feature flag that is **enabled** by default **should** have a changelog entry. - Any change that adds new usage data metrics and changes that needs to be documented in Product Intelligence [Event Dictionary](https://about.gitlab.com/handbook/product/product-intelligence-guide/#event-dictionary) **should** have a changelog entry. - A change that adds snowplow events **should** have a changelog entry - - A change that [removes a feature flag](feature_flags/index.md) **must** have a changelog entry. diff --git a/doc/user/admin_area/settings/index.md b/doc/user/admin_area/settings/index.md index 2c084477152..90de72ce4b7 100644 --- a/doc/user/admin_area/settings/index.md +++ b/doc/user/admin_area/settings/index.md @@ -46,7 +46,7 @@ Access the default page for admin area settings by navigating to **Admin Area > | Option | Description | | ------ | ----------- | -| [Repository's custom initial branch name](../../project/repository/branches/index.md#custom-initial-branch-name) | Set a custom branch name rather than master for all the new repositories created within your instance. | +| [Repository's custom initial branch name](../../project/repository/branches/default.md#instance-level-custom-initial-branch-name) | Set a custom branch name for new repositories created in your instance. | | [Repository mirror](visibility_and_access_controls.md#allow-mirrors-to-be-set-up-for-projects) | Configure repository mirroring. | | [Repository storage](../../../administration/repository_storage_types.md) | Configure storage path settings. | | Repository maintenance | ([Repository checks](../../../administration/repository_checks.md) and [Housekeeping](../../../administration/housekeeping.md)). Configure automatic Git checks and housekeeping on repositories. | diff --git a/doc/user/application_security/dast/index.md b/doc/user/application_security/dast/index.md index 46255755132..924b9b22e14 100644 --- a/doc/user/application_security/dast/index.md +++ b/doc/user/application_security/dast/index.md @@ -969,7 +969,9 @@ To edit an existing site profile: 1. In the profile's row select the **More actions** (**{ellipsis_v}**) menu, then select **Edit**. 1. Edit the fields then select **Save profile**. -The site profile is updated with the edited details. +If a site profile is linked to a security policy, a user cannot edit the profile from this page. See +[Scan Policies](../policies/index.md) +for more information. #### Delete a site profile @@ -981,7 +983,9 @@ To delete an existing site profile: 1. In the profile's row select the **More actions** (**{ellipsis_v}**) menu, then select **Delete**. 1. Select **Delete** to confirm the deletion. -The site profile is deleted. +If a site profile is linked to a security policy, a user cannot delete the profile from this page. +See [Scan Policies](../policies/index.md) +for more information. #### Validate a site profile @@ -1103,7 +1107,9 @@ To edit a scanner profile: 1. Edit the form. 1. Select **Save profile**. -The scanner profile is updated with the edited details. +If a scanner profile is linked to a security policy, a user cannot edit the profile from this page. +See [Scan Policies](../policies/index.md) +for more information. #### Delete a scanner profile @@ -1115,7 +1121,9 @@ To delete a scanner profile: 1. In the scanner's row select the **More actions** (**{ellipsis_v}**) menu, then select **Delete**. 1. Select **Delete**. -The scanner profile is deleted. +If a scanner profile is linked to a security policy, a user cannot delete the profile from this +page. See [Scan Policies](../policies/index.md) +for more information. ## Reports diff --git a/doc/user/application_security/policies/index.md b/doc/user/application_security/policies/index.md new file mode 100644 index 00000000000..33d792001e3 --- /dev/null +++ b/doc/user/application_security/policies/index.md @@ -0,0 +1,151 @@ +--- +stage: Protect +group: Container Security +info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#designated-technical-writers +--- + +# Scan Policies **(ULTIMATE)** + +> - [Introduced](https://gitlab.com/groups/gitlab-org/-/epics/5329) in [GitLab Ultimate](https://about.gitlab.com/pricing/) 13.10. +> - Deployed behind a feature flag, disabled by default. +> - Disabled on GitLab.com. + +Scan Policies in GitLab provide security teams a way to require scans of their choice to be run +whenever a project pipeline runs according to the configuration specified. Security teams can +therefore be confident that the scans they set up have not been changed, altered, or disabled. You +can access these by navigating to your project's **Security & Compliance > Scan Policies** page. + +GitLab supports the following security policies: + +- [Scan Execution Policy](#scan-execution-policy-schema) + +WARNING: +Scan Policies is under development and is not ready for production use. It's deployed behind a +feature flag that's disabled by default. + +NOTE: +We recommend using the [Security Policies project](#security-policies-project) +exclusively for managing policies for the project. Do not add your application's source code to such +projects. + +## Enable or disable scan policies + +Scan Policies is under development and is not ready for production use. It's deployed behind a +feature flag that's disabled by default. +[GitLab administrators with access to the GitLab Rails console](../../../administration/feature_flags.md) +can enable it for your instance. Scan Policies can be enabled or disabled per-project. + +To enable it: + +```ruby +# Instance-wide +Feature.enable(:security_orchestration_policies_configuration) +# or by project +Feature.enable(:security_orchestration_policies_configuration, Project.find(<project ID>)) +``` + +To disable it: + +```ruby +# Instance-wide +Feature.disable(:security_orchestration_policies_configuration) +# or by project +Feature.disable(:security_orchestration_policies_configuration, Project.find(<project ID>)) +``` + +## Security Policies project + +The Security Policies feature is a repository to store policies. All security policies are stored in +the `.gitlab/security-policies` directory as a YAML file with this format: + +```yaml +--- +type: scan_execution_policy +name: Enforce DAST in every pipeline +description: This policy enforces pipeline configuration to have a job with DAST scan +enabled: true +rules: +- type: pipeline + branch: master +actions: +- scan: dast + scanner_profile: Scanner Profile A + site_profile: Site Profile B +``` + +### Scan Execution Policy Schema + +| Field | Type | Possible values | Description | +|-------|------|-----------------|-------------| +| `type` | `string` | `scan_execution_policy` | The policy's type. | +| `name` | `string` | | Name of the policy. | +| `description` (optional) | `string` | | Description of the policy. | +| `enabled` | `boolean` | `true`, `false` | Flag to enable (`true`) or disable (`false`) the policy. | +| `rules` | `array` of rules | | List of rules that the policy applies. | +| `actions` | `array` of actions | | List of actions that the policy enforces. | + +### `pipeline` rule type + +This rule enforces the defined actions whenever the pipeline runs for a selected branch. + +| Field | Type | Possible values | Description | +|-------|------|-----------------|-------------| +| `type` | `string` | `pipeline` | The rule's type. | +| `branch` | `string` | `*` or the branch's name | The branch the given policy applies to (supports wildcard). | + +### `scan` action type + +This action executes the selected `scan` with additional parameters when conditions for at least one +rule in the defined policy are met. + +| Field | Type | Possible values | Description | +|-------|------|-----------------|-------------| +| `scan` | `string` | `dast` | The action's type. | +| `site_profile` | `string` | Name of the selected [DAST site profile](../dast/index.md#site-profile). | The DAST site profile to execute the DAST scan. | +| `scanner_profile` | `string` or `null` | Name of the selected [DAST scanner profile](../dast/index.md#scanner-profile). | The DAST scanner profile to execute the DAST scan. | + +Note the following: + +- You must create the [site profile](../dast/index.md#site-profile) and [scanner profile](../dast/index.md#scanner-profile) + with selected names for the project that is assigned to the selected Security Policy Project. + Otherwise, the policy is not applied and a job with an error message is created instead. +- Once you associate the site profile and scanner profile by name in the policy, it is not possible + to modify or delete them. If you want to modify them, you must first disable the policy by setting + the `active` flag to `false`. + +Here's an example: + +```yaml +--- +type: scan_execution_policy +name: Enforce DAST in every pipeline +description: This policy enforces pipeline configuration to have a job with DAST scan +enabled: true +rules: +- type: pipeline + branch: release/* +actions: +- scan: dast + scanner_profile: Scanner Profile A + site_profile: Site Profile B +``` + +In this example, the DAST scan runs with the scanner profile `Scanner Profile A` and the site +profile `Site Profile B`. The scan runs for every pipeline executed on branches that match the +`release/*` wildcard (for example, branch name `release/v1.2.1`). + +## Security Policy project selection + +When the Security Policy project is created and policies are created within that repository, you +must create an association between that project and the project you want to apply policies to. To do +this, navigate to your project's **Security & Compliance > Policies**, select +**Security policy project** from the dropdown menu, then select the **Create policy** button to save +changes. + +You can always change the **Security policy project** by navigating to your project's +**Security & Compliance > Policies** and modifying the selected project. + +## Roadmap + +See the [Category Direction page](https://about.gitlab.com/direction/protect/container_network_security/) +for more information on the product direction of Container Network Security. diff --git a/doc/user/application_security/security_dashboard/index.md b/doc/user/application_security/security_dashboard/index.md index 8a2c40406e2..e5942aea754 100644 --- a/doc/user/application_security/security_dashboard/index.md +++ b/doc/user/application_security/security_dashboard/index.md @@ -152,7 +152,7 @@ found in those projects' default branches. ## Keeping the dashboards up to date The Security Dashboard displays information from the results of the most recent -security scan on the [default branch](../../project/repository/branches/index.md#default-branch), +security scan on the [default branch](../../project/repository/branches/default.md), which means that security scans are performed every time the branch is updated. If the default branch is updated infrequently, scans are run infrequently and the diff --git a/doc/user/clusters/agent/index.md b/doc/user/clusters/agent/index.md index 9af339b20c6..38d95ccd0be 100644 --- a/doc/user/clusters/agent/index.md +++ b/doc/user/clusters/agent/index.md @@ -246,6 +246,10 @@ Replace the value of `agent-token` below with the token received from the previo docker run --rm registry.gitlab.com/gitlab-org/cluster-integration/gitlab-agent/cli:latest generate --agent-token=your-agent-token --kas-address=wss://kas.gitlab.example.com --agent-version latest | kubectl apply -f - ``` +Set `agent-version` to the latest released patch version matching your +GitLab installation's major and minor versions. For example, if you have +GitLab v13.9.0, set `--agent-version=v13.9.1`. + To find out the various options the above Docker container supports, run: ```shell diff --git a/doc/user/group/index.md b/doc/user/group/index.md index 58d2a97ba21..111cd2bf5c9 100644 --- a/doc/user/group/index.md +++ b/doc/user/group/index.md @@ -387,16 +387,10 @@ because the project cannot be moved. > - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/43290) in GitLab 13.6. -By default, when you create a new project in GitLab, the initial branch is called `master`. -For groups, a group owner can customize the initial branch name to something -else. This way, every new project created under that group from then on starts from the custom branch name rather than `master`. - -To use a custom name for the initial branch: - -1. Go to the group's **Settings > Repository** page. -1. Expand the **Default initial branch name** section. -1. Change the default initial branch to a custom name of your choice. -1. Select **Save changes**. +When you create a new project in GitLab, a default branch is created with the +first push. The group owner can +[customize the initial branch](../project/repository/branches/default.md#group-level-custom-initial-branch-name) +for the group's projects to meet your group's needs. ## Remove a group @@ -467,7 +461,7 @@ For more information, [see this issue](https://gitlab.com/gitlab-org/gitlab/-/is To ensure only people from your organization can access particular resources, you can restrict access to groups by IP address. This setting applies to all subgroups, -projects, issues, and so on. +projects, issues, and so on. IP access restrictions can be configured at the group level only. diff --git a/doc/user/group/repositories_analytics/index.md b/doc/user/group/repositories_analytics/index.md index 42522723047..ef47ceadd88 100644 --- a/doc/user/group/repositories_analytics/index.md +++ b/doc/user/group/repositories_analytics/index.md @@ -69,7 +69,7 @@ For each day that a coverage report was generated by a job in a project's pipeli If the project's code coverage was calculated more than once in a day, we will take the last value from that day. NOTE: -[In GitLab 13.7 and later](https://gitlab.com/gitlab-org/gitlab/-/issues/270102), group code coverage data is taken from the configured [default branch](../../project/repository/branches/index.md#default-branch). In earlier versions, it is taken from the `master` branch. +[In GitLab 13.7 and later](https://gitlab.com/gitlab-org/gitlab/-/issues/270102), group code coverage data is taken from the configured [default branch](../../project/repository/branches/default.md). In earlier versions, it is taken from the `master` branch. <!-- ## Troubleshooting diff --git a/doc/user/project/issues/managing_issues.md b/doc/user/project/issues/managing_issues.md index cfb22881431..4c79eb3ccbe 100644 --- a/doc/user/project/issues/managing_issues.md +++ b/doc/user/project/issues/managing_issues.md @@ -199,7 +199,7 @@ can be closed automatically when the commit reaches the project's default branch If a commit message or merge request description contains text matching a [defined pattern](#default-closing-pattern), all issues referenced in the matched text are closed. This happens when the commit -is pushed to a project's [**default** branch](../repository/branches/index.md#default-branch), +is pushed to a project's [**default** branch](../repository/branches/default.md), or when a commit or merge request is merged into it. For example, if `Closes #4, #6, Related to #5` is included in a Merge Request diff --git a/doc/user/project/protected_branches.md b/doc/user/project/protected_branches.md index aef96ff12c9..73c7f0eb91f 100644 --- a/doc/user/project/protected_branches.md +++ b/doc/user/project/protected_branches.md @@ -26,7 +26,7 @@ By default, a protected branch does these things: - GitLab administrators are allowed to push to the protected branches. - Users with [Developer permissions](../permissions.md) are allowed to create a project in a group, but might not be allowed to initially - push to the [default branch](repository/branches/index.md#default-branch). + push to the [default branch](repository/branches/default.md). The default branch protection level is set in the [Admin Area](../admin_area/settings/visibility_and_access_controls.md#default-branch-protection). diff --git a/doc/user/project/repository/branches/default.md b/doc/user/project/repository/branches/default.md new file mode 100644 index 00000000000..1363d883e76 --- /dev/null +++ b/doc/user/project/repository/branches/default.md @@ -0,0 +1,180 @@ +--- +stage: Create +group: Source Code +info: "To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments" +type: concepts, howto +--- + +# Default branch + +When you create a new [project](../../index.md), GitLab creates a default branch +in the repository. A default branch has special configuration options not shared +by other branches: + +- It's [initially protected](../../protected_branches.md#protected-branches) against + accidental deletion and forced pushes. +- When a merge request uses an + [issue closing pattern](../../issues/managing_issues.md#closing-issues-automatically) + to close an issue, the work is merged into this branch. + +The name of your [new project's](../../index.md) default branch depends on any +instance-level or group-level configuration changes made by your GitLab administrator. +GitLab checks first for specific customizations, then checks at a broader level, +using the GitLab default only if no customizations are set: + +1. A [project-specific](#change-the-default-branch-name-for-a-project) custom default branch name. +1. A [subgroup-level](#group-level-custom-initial-branch-name) custom default branch name. +1. A [group-level](#group-level-custom-initial-branch-name) custom default branch name. +1. An [instance-level](#instance-level-custom-initial-branch-name) custom default branch name. **(FREE SELF)** +1. If no custom default branch name is set at any level, GitLab defaults to: + - `main`: Projects created with GitLab 14.0 or later. + - `master`: Projects created before GitLab 14.0. + +In the GitLab UI, you can change the defaults at any level. GitLab also provides +the [Git commands you need](#update-the-default-branch-name-in-your-repository) to update your copy of the repository. + +## Change the default branch name for a project + +To update the default branch name for an individual [project](../../index.md): + +1. Sign in to GitLab as a user with [Administrator](../../../permissions.md) permissions. +1. In the left navigation menu, go to **Settings > Repository**. +1. Expand **Default branch**, and select a new default branch. +1. (Optional) Select the **Auto-close referenced issues on default branch** check box to close + issues when a merge request + [uses a closing pattern](../../issues/managing_issues.md#closing-issues-automatically). +1. Select **Save changes**. + +API users can also use the `default_branch` attribute of the +[Projects API](../../../../api/projects.md) when creating or editing a project. + +## Change the default branch name for an instance or group + +GitLab administrators can configure a new default branch name at the +[instance level](#instance-level-custom-initial-branch-name) or +[group level](#group-level-custom-initial-branch-name). + +### Instance-level custom initial branch name **(FREE SELF)** + +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/221013) in GitLab 13.2. +> - It's deployed behind a feature flag, enabled by default. +> - It cannot be enabled or disabled per-project. +> - It's recommended for production use. +> - For GitLab self-managed instances, GitLab administrators can opt to [disable it](#enable-or-disable-custom-initial-branch-name). + +GitLab [administrators](../../../permissions.md) of self-managed instances can +customize the initial branch for projects hosted on that instance. Individual +groups and subgroups can override this instance-wide setting for their projects. + +1. Go to **Admin Area > Settings > Repository**. +1. Expand **Default initial branch name**. +1. Change the default initial branch to a custom name of your choice. +1. Select **Save changes**. + +Projects created on this instance after you change the setting use the +custom branch name, unless a group-level or subgroup-level configuration +overrides it. + +#### Enable or disable custom initial branch name **(FREE SELF)** + +Setting the default initial branch name is under development but ready for production use. +It is deployed behind a feature flag that is **enabled by default**. +[GitLab administrators with access to the GitLab Rails console](../../../../administration/feature_flags.md) +can opt to disable it for your instance. + +To disable it: + +```ruby +Feature.disable(:global_default_branch_name) +``` + +To enable it: + +```ruby +Feature.enable(:global_default_branch_name) +``` + +### Group-level custom initial branch name **(FREE)** + +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/221014) in GitLab 13.6. + +Administrators of groups and subgroups can configure the default branch name for a group: + +1. Go to the group **Settings > Repository**. +1. Expand **Default initial branch name**. +1. Change the default initial branch to a custom name of your choice. +1. Select **Save changes**. + +Projects created in this group after you change the setting use the custom branch name, +unless a subgroup configuration overrides it. + +## Update the default branch name in your repository + +WARNING: +Changing the name of your default branch can potentially break tests, +CI/CD configuration, services, helper utilities, and any integrations your repository +uses. Before you change this branch name, consult with your project owners and maintainers. +Ensure they understand the scope of this change includes references to the old +branch name in related code and scripts. + +When changing the default branch name for an existing repository, you should preserve +the history of your default branch by renaming it, instead of deleting it. This example +renames a Git repository's (`example`) default branch. + +1. On your local command line, navigate to your `example` repository, and ensure + you're on the default branch: + + ```plaintext + cd example + git checkout master + ``` + +1. Rename the existing default branch to the new name (`main`). The argument `-m` + transfers all commit history to the new branch: + + ```plaintext + git branch -m master main + ``` + +1. Push the newly created `main` branch upstream, and set your local branch to track + the remote branch with the same name: + + ```plaintext + git push -u origin main + ``` + +1. If you plan to remove the old default branch, update `HEAD` to point to your new default branch, `main`: + + ```plaintext + git symbolic-ref refs/remotes/origin/HEAD refs/remotes/origin/main + ``` + +1. Sign in to GitLab as an [administrator](../../../permissions.md) and follow + the instructions to + [change the default branch for this project](#change-the-default-branch-name-for-a-project). + Select `main` as your new default branch. +1. Protect your new `main` branch as described in the [protected branches documentation](../../protected_branches.md). +1. (Optional) If you want to delete the old default branch: + 1. Verify that nothing is pointing to it. + 1. Delete the branch on the remote: + + ```plaintext + git push origin --delete master + ``` + + You can delete the branch at a later time, after you confirm the new default branch is working as expected. + +1. Notify your project contributors of this change, because they must also take some steps: + + - Contributors should pull the new default branch to their local copy of the repository. + - Contributors with open merge requests that target the old default branch should manually + re-point the merge requests to use `main` instead. +1. In your repository, update any references to the old branch name in your code. +1. Update references to the old branch name in related code and scripts that reside outside + your repository, such as helper utilities and integrations. + +## Resources + +- [Discussion of default branch renaming](https://lore.kernel.org/git/pull.656.v4.git.1593009996.gitgitgadget@gmail.com/) + on the Git mailing list +- [March 2021 blog post: The new Git default branch name](https://about.gitlab.com/blog/2021/03/10/new-git-default-branch-name/) diff --git a/doc/user/project/repository/branches/index.md b/doc/user/project/repository/branches/index.md index d049b2108ee..66963fc1ea5 100644 --- a/doc/user/project/repository/branches/index.md +++ b/doc/user/project/repository/branches/index.md @@ -24,7 +24,9 @@ With [GitLab Starter](https://about.gitlab.com/pricing/), you can also request For more information on managing branches using the GitLab UI, see: -- [Default branches](#default-branch) +- [Default branches](default.md): When you create a new [project](../../index.md), GitLab creates a + default branch for the repository. You can change this setting at the project, + subgroup, group, or instance level. - [Create a branch](../web_editor.md#create-a-new-branch) - [Protected branches](../../protected_branches.md#protected-branches) - [Delete merged branches](#delete-merged-branches) @@ -41,55 +43,6 @@ See also: - [GitLab Flow](../../../../university/training/gitlab_flow.md) documentation. - [Getting started with Git](../../../../topics/git/index.md) and GitLab. -## Default branch - -When you create a new [project](../../index.md), GitLab sets `master` as the default -branch of the repository. You can choose another branch to be your project's -default under your project's **Settings > Repository**. - -When closing issues directly from merge requests through the [issue closing pattern](../../issues/managing_issues.md#closing-issues-automatically), -the target is the project's **default branch**. - -The default branch is also initially [protected](../../protected_branches.md#protected-branches) -against accidental deletion and forced pushes. - -### Custom initial branch name **(FREE SELF)** - -> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/221013) in GitLab 13.2. -> - It's deployed behind a feature flag, enabled by default. -> - It's enabled on GitLab.com. -> - It cannot be enabled or disabled per-project. -> - It's recommended for production use. -> - For GitLab self-managed instances, GitLab administrators can opt to [disable it](#enable-or-disable-custom-initial-branch-name). **(FREE SELF)** - -By default, when you create a new project in GitLab, the initial branch is called `master`. -For self-managed instances, a GitLab administrator can customize the initial branch name to something -else. This way, every new project created from then on starts from the custom branch name rather than `master`. To do so: - -1. Go to the **Admin Area > Settings > Repository** and expand **Default initial - branch name**. -1. Change the default initial branch to a custom name of your choice. -1. **Save Changes**. - -#### Enable or disable custom initial branch name **(FREE SELF)** - -Setting the default initial branch name is under development but ready for production use. -It is deployed behind a feature flag that is **enabled by default**. -[GitLab administrators with access to the GitLab Rails console](../../../../administration/feature_flags.md) -can opt to disable it for your instance. - -To disable it: - -```ruby -Feature.disable(:global_default_branch_name) -``` - -To enable it: - -```ruby -Feature.enable(:global_default_branch_name) -``` - ## Compare To compare branches in a repository: diff --git a/doc/user/project/settings/index.md b/doc/user/project/settings/index.md index 785618a862a..73baab76c8e 100644 --- a/doc/user/project/settings/index.md +++ b/doc/user/project/settings/index.md @@ -21,7 +21,7 @@ functionality of a project. ### General project settings -Adjust your project's name, description, avatar, [default branch](../repository/branches/index.md#default-branch), and topics: +Adjust your project's name, description, avatar, [default branch](../repository/branches/default.md), and topics: ![general project settings](img/general_settings.png) diff --git a/lib/api/internal/base.rb b/lib/api/internal/base.rb index a3fee49cd8f..3dd01b96e39 100644 --- a/lib/api/internal/base.rb +++ b/lib/api/internal/base.rb @@ -52,20 +52,20 @@ module API actor.update_last_used_at! check_result = begin - Gitlab::Auth::CurrentUserMode.bypass_session!(actor.user&.id) do - access_check!(actor, params) - end - rescue Gitlab::GitAccess::ForbiddenError => e - # The return code needs to be 401. If we return 403 - # the custom message we return won't be shown to the user - # and, instead, the default message 'GitLab: API is not accessible' - # will be displayed - return response_with_status(code: 401, success: false, message: e.message) - rescue Gitlab::GitAccess::TimeoutError => e - return response_with_status(code: 503, success: false, message: e.message) - rescue Gitlab::GitAccess::NotFoundError => e - return response_with_status(code: 404, success: false, message: e.message) - end + Gitlab::Auth::CurrentUserMode.bypass_session!(actor.user&.id) do + access_check!(actor, params) + end + rescue Gitlab::GitAccess::ForbiddenError => e + # The return code needs to be 401. If we return 403 + # the custom message we return won't be shown to the user + # and, instead, the default message 'GitLab: API is not accessible' + # will be displayed + return response_with_status(code: 401, success: false, message: e.message) + rescue Gitlab::GitAccess::TimeoutError => e + return response_with_status(code: 503, success: false, message: e.message) + rescue Gitlab::GitAccess::NotFoundError => e + return response_with_status(code: 404, success: false, message: e.message) + end log_user_activity(actor.user) diff --git a/lib/atlassian/jira_connect/serializers/build_entity.rb b/lib/atlassian/jira_connect/serializers/build_entity.rb index 8372d2a62da..a3434c529a4 100644 --- a/lib/atlassian/jira_connect/serializers/build_entity.rb +++ b/lib/atlassian/jira_connect/serializers/build_entity.rb @@ -25,11 +25,11 @@ module Atlassian # extract Jira issue keys from either the source branch/ref or the # merge request title. @issue_keys ||= begin - pipeline.all_merge_requests.flat_map do |mr| - src = "#{mr.source_branch} #{mr.title}" - JiraIssueKeyExtractor.new(src).issue_keys - end.uniq - end + pipeline.all_merge_requests.flat_map do |mr| + src = "#{mr.source_branch} #{mr.title}" + JiraIssueKeyExtractor.new(src).issue_keys + end.uniq + end end private diff --git a/lib/gitlab/ci/jwt.rb b/lib/gitlab/ci/jwt.rb index af06e124736..a6ae249fa58 100644 --- a/lib/gitlab/ci/jwt.rb +++ b/lib/gitlab/ci/jwt.rb @@ -72,16 +72,16 @@ module Gitlab def key @key ||= begin - key_data = if Feature.enabled?(:ci_jwt_signing_key, build.project, default_enabled: true) - Gitlab::CurrentSettings.ci_jwt_signing_key - else - Rails.application.secrets.openid_connect_signing_key - end + key_data = if Feature.enabled?(:ci_jwt_signing_key, build.project, default_enabled: true) + Gitlab::CurrentSettings.ci_jwt_signing_key + else + Rails.application.secrets.openid_connect_signing_key + end - raise NoSigningKeyError unless key_data + raise NoSigningKeyError unless key_data - OpenSSL::PKey::RSA.new(key_data) - end + OpenSSL::PKey::RSA.new(key_data) + end end def public_key diff --git a/lib/gitlab/external_authorization/client.rb b/lib/gitlab/external_authorization/client.rb index fc859304eab..b93a15a977c 100644 --- a/lib/gitlab/external_authorization/client.rb +++ b/lib/gitlab/external_authorization/client.rb @@ -51,18 +51,18 @@ module Gitlab def body @body ||= begin - body = { - user_identifier: @user.email, - project_classification_label: @label, - identities: @user.identities.map { |identity| { provider: identity.provider, extern_uid: identity.extern_uid } } - } + body = { + user_identifier: @user.email, + project_classification_label: @label, + identities: @user.identities.map { |identity| { provider: identity.provider, extern_uid: identity.extern_uid } } + } - if @user.ldap_identity - body[:user_ldap_dn] = @user.ldap_identity.extern_uid - end + if @user.ldap_identity + body[:user_ldap_dn] = @user.ldap_identity.extern_uid + end - body - end + body + end end end end diff --git a/lib/gitlab/phabricator_import/project_creator.rb b/lib/gitlab/phabricator_import/project_creator.rb index b37a5b44980..5ace31386e0 100644 --- a/lib/gitlab/phabricator_import/project_creator.rb +++ b/lib/gitlab/phabricator_import/project_creator.rb @@ -56,11 +56,11 @@ module Gitlab def project_feature_attributes @project_features_attributes ||= begin - # everything disabled except for issues - ProjectFeature::FEATURES.map do |feature| - [ProjectFeature.access_level_attribute(feature), ProjectFeature::DISABLED] - end.to_h.merge(ProjectFeature.access_level_attribute(:issues) => ProjectFeature::ENABLED) - end + # everything disabled except for issues + ProjectFeature::FEATURES.map do |feature| + [ProjectFeature.access_level_attribute(feature), ProjectFeature::DISABLED] + end.to_h.merge(ProjectFeature.access_level_attribute(:issues) => ProjectFeature::ENABLED) + end end def import_data diff --git a/locale/gitlab.pot b/locale/gitlab.pot index 96c0cbcf327..cd493a1aeea 100644 --- a/locale/gitlab.pot +++ b/locale/gitlab.pot @@ -4856,6 +4856,9 @@ msgstr[1] "" msgid "Blocked issue" msgstr "" +msgid "Blocking" +msgstr "" + msgid "Blocking issues" msgstr "" @@ -16650,9 +16653,6 @@ msgstr "" msgid "Invalid Insights config file detected" msgstr "" -msgid "Invalid Login or password" -msgstr "" - msgid "Invalid OS" msgstr "" @@ -17730,6 +17730,9 @@ msgstr "" msgid "Label lists show all issues with the selected label." msgstr "" +msgid "Label priority" +msgstr "" + msgid "Label was created" msgstr "" @@ -18619,6 +18622,9 @@ msgstr "" msgid "Manifest import" msgstr "" +msgid "Manual" +msgstr "" + msgid "ManualOrdering|Couldn't save the order of the issues" msgstr "" @@ -19685,6 +19691,9 @@ msgid_plural "Milestones" msgstr[0] "" msgstr[1] "" +msgid "Milestone due date" +msgstr "" + msgid "Milestone lists not available with your current license" msgstr "" @@ -22939,6 +22948,9 @@ msgstr "" msgid "Policy project doesn't exists" msgstr "" +msgid "Popularity" +msgstr "" + msgid "Postman collection" msgstr "" @@ -23128,6 +23140,9 @@ msgstr "" msgid "Prioritized label" msgstr "" +msgid "Priority" +msgstr "" + msgid "Private" msgstr "" diff --git a/qa/qa/specs/features/browser_ui/1_manage/login/register_spec.rb b/qa/qa/specs/features/browser_ui/1_manage/login/register_spec.rb index 4141060b6cb..5fbcd69817b 100644 --- a/qa/qa/specs/features/browser_ui/1_manage/login/register_spec.rb +++ b/qa/qa/specs/features/browser_ui/1_manage/login/register_spec.rb @@ -71,7 +71,7 @@ module QA Flow::Login.sign_in(as: user, skip_page_validation: true) - expect(page).to have_text("Invalid Login or password") + expect(page).to have_text("Invalid login or password") @recreated_user = Resource::User.fabricate_via_browser_ui! do |resource| resource.name = user.name diff --git a/rubocop/cop/user_admin.rb b/rubocop/cop/user_admin.rb new file mode 100644 index 00000000000..3ba0e770ec1 --- /dev/null +++ b/rubocop/cop/user_admin.rb @@ -0,0 +1,33 @@ +# frozen_string_literal: true + +module RuboCop + module Cop + # Cop that rejects the usage of `User#admin?` + class UserAdmin < RuboCop::Cop::Cop + MSG = 'Direct calls to `User#admin?` to determine admin status should be ' \ + 'avoided as they will not take into account the policies framework ' \ + 'and will ignore Admin Mode if enabled. Please use a policy check ' \ + 'with `User#can_admin_all_resources?` or `User#can_read_all_resources?`.' + + def_node_matcher :admin_call?, <<~PATTERN + ({send | csend} _ :admin? ...) + PATTERN + + def on_send(node) + on_handler(node) + end + + def on_csend(node) + on_handler(node) + end + + private + + def on_handler(node) + return unless admin_call?(node) + + add_offense(node, location: :selector) + end + end + end +end diff --git a/scripts/gitaly_test.rb b/scripts/gitaly_test.rb index 2262870eb96..7ce1d7b16e4 100644 --- a/scripts/gitaly_test.rb +++ b/scripts/gitaly_test.rb @@ -12,11 +12,11 @@ require 'logger' module GitalyTest LOGGER = begin - default_name = ENV['CI'] ? 'DEBUG' : 'WARN' - level_name = ENV['GITLAB_TESTING_LOG_LEVEL']&.upcase - level = Logger.const_get(level_name || default_name, true) # rubocop: disable Gitlab/ConstGetInheritFalse - Logger.new(STDOUT, level: level, formatter: ->(_, _, _, msg) { msg }) - end + default_name = ENV['CI'] ? 'DEBUG' : 'WARN' + level_name = ENV['GITLAB_TESTING_LOG_LEVEL']&.upcase + level = Logger.const_get(level_name || default_name, true) # rubocop: disable Gitlab/ConstGetInheritFalse + Logger.new(STDOUT, level: level, formatter: ->(_, _, _, msg) { msg }) + end def tmp_tests_gitaly_dir File.expand_path('../tmp/tests/gitaly', __dir__) diff --git a/spec/controllers/sessions_controller_spec.rb b/spec/controllers/sessions_controller_spec.rb index 5bee7698c3f..abdafa2880a 100644 --- a/spec/controllers/sessions_controller_spec.rb +++ b/spec/controllers/sessions_controller_spec.rb @@ -86,7 +86,7 @@ RSpec.describe SessionsController do post(:create, params: { user: { login: 'invalid', password: 'invalid' } }) expect(response) - .to set_flash.now[:alert].to(/Invalid Login or password/) + .to set_flash.now[:alert].to(/Invalid login or password/) end end @@ -348,7 +348,7 @@ RSpec.describe SessionsController do otp_user_id: user.id ) - expect(response).to set_flash.now[:alert].to(/Invalid Login or password/) + expect(response).to set_flash.now[:alert].to(/Invalid login or password/) end end diff --git a/spec/features/users/anonymous_sessions_spec.rb b/spec/features/users/anonymous_sessions_spec.rb index 420fb225f94..273d3aa346f 100644 --- a/spec/features/users/anonymous_sessions_spec.rb +++ b/spec/features/users/anonymous_sessions_spec.rb @@ -10,7 +10,7 @@ RSpec.describe 'Session TTLs', :clean_gitlab_redis_shared_state do fill_in 'user_password', with: '12345678' click_button 'Sign in' - expect(page).to have_content('Invalid Login or password') + expect(page).to have_content('Invalid login or password') expect_single_session_with_expiration(Settings.gitlab['unauthenticated_session_expire_delay']) end diff --git a/spec/features/users/login_spec.rb b/spec/features/users/login_spec.rb index 1d1120709b5..d6057c55b77 100644 --- a/spec/features/users/login_spec.rb +++ b/spec/features/users/login_spec.rb @@ -138,7 +138,7 @@ RSpec.describe 'Login' do gitlab_sign_in(User.ghost) - expect(page).to have_content('Invalid Login or password.') + expect(page).to have_content('Invalid login or password.') end it 'does not update Devise trackable attributes', :clean_gitlab_redis_shared_state do @@ -406,7 +406,7 @@ RSpec.describe 'Login' do gitlab_sign_in(user) - expect(page).to have_content('Invalid Login or password.') + expect(page).to have_content('Invalid login or password.') end end end diff --git a/spec/frontend/content_editor/markdown_processing_examples.js b/spec/frontend/content_editor/markdown_processing_examples.js new file mode 100644 index 00000000000..12bf2cbb747 --- /dev/null +++ b/spec/frontend/content_editor/markdown_processing_examples.js @@ -0,0 +1,19 @@ +import fs from 'fs'; +import path from 'path'; +import jsYaml from 'js-yaml'; +import { toArray } from 'lodash'; +import { getJSONFixture } from 'helpers/fixtures'; + +export const loadMarkdownApiResult = (testName) => { + const fixturePathPrefix = `api/markdown/${testName}.json`; + + return getJSONFixture(fixturePathPrefix); +}; + +export const loadMarkdownApiExamples = () => { + const apiMarkdownYamlPath = path.join(__dirname, '..', 'fixtures', 'api_markdown.yml'); + const apiMarkdownYamlText = fs.readFileSync(apiMarkdownYamlPath); + const apiMarkdownExampleObjects = jsYaml.safeLoad(apiMarkdownYamlText); + + return apiMarkdownExampleObjects.map((example) => toArray(example)); +}; diff --git a/spec/frontend/content_editor/markdown_processing_spec.js b/spec/frontend/content_editor/markdown_processing_spec.js new file mode 100644 index 00000000000..79ddfb8b125 --- /dev/null +++ b/spec/frontend/content_editor/markdown_processing_spec.js @@ -0,0 +1,13 @@ +import createEditor from '~/content_editor/services/create_editor'; +import toMarkdown from '~/content_editor/services/to_markdown'; +import { loadMarkdownApiExamples, loadMarkdownApiResult } from './markdown_processing_examples'; + +describe('markdown processing', () => { + // Ensure we generate same markdown that was provided to Markdown API. + it.each(loadMarkdownApiExamples())('correctly handles %s', async (testName, markdown) => { + const { html } = loadMarkdownApiResult(testName); + const editor = await createEditor({ content: html }); + + expect(toMarkdown(editor.state.doc)).toBe(markdown); + }); +}); diff --git a/spec/frontend/fixtures/api_markdown.rb b/spec/frontend/fixtures/api_markdown.rb new file mode 100644 index 00000000000..e012d922aad --- /dev/null +++ b/spec/frontend/fixtures/api_markdown.rb @@ -0,0 +1,34 @@ +# frozen_string_literal: true + +require 'spec_helper' + +RSpec.describe API::MergeRequests, '(JavaScript fixtures)', type: :request do + include ApiHelpers + include JavaScriptFixturesHelpers + + fixture_subdir = 'api/markdown' + + before(:all) do + clean_frontend_fixtures(fixture_subdir) + end + + markdown_examples = begin + yaml_file_path = File.expand_path('api_markdown.yml', __dir__) + yaml = File.read(yaml_file_path) + YAML.safe_load(yaml, symbolize_names: true) + end + + markdown_examples.each do |markdown_example| + name = markdown_example.fetch(:name) + + context "for #{name}" do + let(:markdown) { markdown_example.fetch(:markdown) } + + it "#{fixture_subdir}/#{name}.json" do + post api("/markdown"), params: { text: markdown } + + expect(response).to be_successful + end + end + end +end diff --git a/spec/frontend/fixtures/api_markdown.yml b/spec/frontend/fixtures/api_markdown.yml new file mode 100644 index 00000000000..4e458e364e1 --- /dev/null +++ b/spec/frontend/fixtures/api_markdown.yml @@ -0,0 +1,8 @@ +# This data file drives the specs in +# spec/frontend/fixtures/api_markdown.rb and +# spec/frontend/rich_text_editor/extensions/markdown_processing_spec.js +--- +- name: bold + markdown: '**bold**' +- name: code + markdown: '`code`' diff --git a/spec/frontend/issuable_list/components/issuable_list_root_spec.js b/spec/frontend/issuable_list/components/issuable_list_root_spec.js index 9c57233548c..53f5d7874e1 100644 --- a/spec/frontend/issuable_list/components/issuable_list_root_spec.js +++ b/spec/frontend/issuable_list/components/issuable_list_root_spec.js @@ -1,5 +1,6 @@ import { GlSkeletonLoading, GlPagination } from '@gitlab/ui'; -import { mount } from '@vue/test-utils'; +import { shallowMount } from '@vue/test-utils'; +import VueDraggable from 'vuedraggable'; import { TEST_HOST } from 'helpers/test_constants'; @@ -11,7 +12,7 @@ import FilteredSearchBar from '~/vue_shared/components/filtered_search_bar/filte import { mockIssuableListProps, mockIssuables } from '../mock_data'; const createComponent = ({ props = mockIssuableListProps, data = {} } = {}) => - mount(IssuableListRoot, { + shallowMount(IssuableListRoot, { propsData: props, data() { return data; @@ -24,20 +25,28 @@ const createComponent = ({ props = mockIssuableListProps, data = {} } = {}) => <p class="js-issuable-empty-state">Issuable empty state</p> `, }, + stubs: { + IssuableTabs, + }, }); describe('IssuableListRoot', () => { let wrapper; - beforeEach(() => { - wrapper = createComponent(); - }); + const findFilteredSearchBar = () => wrapper.findComponent(FilteredSearchBar); + const findGlPagination = () => wrapper.findComponent(GlPagination); + const findIssuableTabs = () => wrapper.findComponent(IssuableTabs); + const findVueDraggable = () => wrapper.findComponent(VueDraggable); afterEach(() => { wrapper.destroy(); }); describe('computed', () => { + beforeEach(() => { + wrapper = createComponent(); + }); + const mockCheckedIssuables = { [mockIssuables[0].iid]: { checked: true, issuable: mockIssuables[0] }, [mockIssuables[1].iid]: { checked: true, issuable: mockIssuables[1] }, @@ -108,6 +117,10 @@ describe('IssuableListRoot', () => { }); describe('watch', () => { + beforeEach(() => { + wrapper = createComponent(); + }); + describe('issuables', () => { it('populates `checkedIssuables` prop with all issuables', async () => { wrapper.setProps({ @@ -147,6 +160,10 @@ describe('IssuableListRoot', () => { }); describe('methods', () => { + beforeEach(() => { + wrapper = createComponent(); + }); + describe('issuableId', () => { it('returns id value from provided issuable object', () => { expect(wrapper.vm.issuableId({ id: 1 })).toBe(1); @@ -171,12 +188,16 @@ describe('IssuableListRoot', () => { }); describe('template', () => { + beforeEach(() => { + wrapper = createComponent(); + }); + it('renders component container element with class "issuable-list-container"', () => { expect(wrapper.classes()).toContain('issuable-list-container'); }); it('renders issuable-tabs component', () => { - const tabsEl = wrapper.find(IssuableTabs); + const tabsEl = findIssuableTabs(); expect(tabsEl.exists()).toBe(true); expect(tabsEl.props()).toMatchObject({ @@ -187,14 +208,14 @@ describe('IssuableListRoot', () => { }); it('renders contents for slot "nav-actions" within issuable-tab component', () => { - const buttonEl = wrapper.find(IssuableTabs).find('button.js-new-issuable'); + const buttonEl = findIssuableTabs().find('button.js-new-issuable'); expect(buttonEl.exists()).toBe(true); expect(buttonEl.text()).toBe('New issuable'); }); it('renders filtered-search-bar component', () => { - const searchEl = wrapper.find(FilteredSearchBar); + const searchEl = findFilteredSearchBar(); const { namespace, recentSearchesStorageKey, @@ -224,11 +245,13 @@ describe('IssuableListRoot', () => { await wrapper.vm.$nextTick(); - expect(wrapper.findAll(GlSkeletonLoading)).toHaveLength(wrapper.vm.skeletonItemCount); + expect(wrapper.findAllComponents(GlSkeletonLoading)).toHaveLength( + wrapper.vm.skeletonItemCount, + ); }); it('renders issuable-item component for each item within `issuables` array', () => { - const itemsEl = wrapper.findAll(IssuableItem); + const itemsEl = wrapper.findAllComponents(IssuableItem); const mockIssuable = mockIssuableListProps.issuables[0]; expect(itemsEl).toHaveLength(mockIssuableListProps.issuables.length); @@ -257,7 +280,7 @@ describe('IssuableListRoot', () => { await wrapper.vm.$nextTick(); - const paginationEl = wrapper.find(GlPagination); + const paginationEl = findGlPagination(); expect(paginationEl.exists()).toBe(true); expect(paginationEl.props()).toMatchObject({ perPage: 20, @@ -271,10 +294,8 @@ describe('IssuableListRoot', () => { }); describe('events', () => { - let wrapperChecked; - beforeEach(() => { - wrapperChecked = createComponent({ + wrapper = createComponent({ data: { checkedIssuables: { [mockIssuables[0].iid]: { checked: true, issuable: mockIssuables[0] }, @@ -283,34 +304,30 @@ describe('IssuableListRoot', () => { }); }); - afterEach(() => { - wrapperChecked.destroy(); - }); - it('issuable-tabs component emits `click-tab` event on `click-tab` event', () => { - wrapper.find(IssuableTabs).vm.$emit('click'); + findIssuableTabs().vm.$emit('click'); expect(wrapper.emitted('click-tab')).toBeTruthy(); }); it('sets all issuables as checked when filtered-search-bar component emits `checked-input` event', async () => { - const searchEl = wrapperChecked.find(FilteredSearchBar); + const searchEl = findFilteredSearchBar(); searchEl.vm.$emit('checked-input', true); - await wrapperChecked.vm.$nextTick(); + await wrapper.vm.$nextTick(); expect(searchEl.emitted('checked-input')).toBeTruthy(); expect(searchEl.emitted('checked-input').length).toBe(1); - expect(wrapperChecked.vm.checkedIssuables[mockIssuables[0].iid]).toEqual({ + expect(wrapper.vm.checkedIssuables[mockIssuables[0].iid]).toEqual({ checked: true, issuable: mockIssuables[0], }); }); it('filtered-search-bar component emits `filter` event on `onFilter` & `sort` event on `onSort` events', () => { - const searchEl = wrapper.find(FilteredSearchBar); + const searchEl = findFilteredSearchBar(); searchEl.vm.$emit('onFilter'); expect(wrapper.emitted('filter')).toBeTruthy(); @@ -319,16 +336,16 @@ describe('IssuableListRoot', () => { }); it('sets an issuable as checked when issuable-item component emits `checked-input` event', async () => { - const issuableItem = wrapperChecked.findAll(IssuableItem).at(0); + const issuableItem = wrapper.findAllComponents(IssuableItem).at(0); issuableItem.vm.$emit('checked-input', true); - await wrapperChecked.vm.$nextTick(); + await wrapper.vm.$nextTick(); expect(issuableItem.emitted('checked-input')).toBeTruthy(); expect(issuableItem.emitted('checked-input').length).toBe(1); - expect(wrapperChecked.vm.checkedIssuables[mockIssuables[0].iid]).toEqual({ + expect(wrapper.vm.checkedIssuables[mockIssuables[0].iid]).toEqual({ checked: true, issuable: mockIssuables[0], }); @@ -341,8 +358,48 @@ describe('IssuableListRoot', () => { await wrapper.vm.$nextTick(); - wrapper.find(GlPagination).vm.$emit('input'); + findGlPagination().vm.$emit('input'); expect(wrapper.emitted('page-change')).toBeTruthy(); }); }); + + describe('manual sorting', () => { + describe('when enabled', () => { + beforeEach(() => { + wrapper = createComponent({ + props: { + ...mockIssuableListProps, + isManualOrdering: true, + }, + }); + }); + + it('renders VueDraggable component', () => { + expect(findVueDraggable().exists()).toBe(true); + }); + + it('IssuableItem has grab cursor', () => { + expect(wrapper.findComponent(IssuableItem).classes()).toContain('gl-cursor-grab'); + }); + + it('emits a "reorder" event when user updates the issue order', () => { + const oldIndex = 4; + const newIndex = 6; + + findVueDraggable().vm.$emit('update', { oldIndex, newIndex }); + + expect(wrapper.emitted('reorder')).toEqual([[{ oldIndex, newIndex }]]); + }); + }); + + describe('when disabled', () => { + beforeEach(() => { + wrapper = createComponent(); + }); + + it('does not render VueDraggable component', () => { + expect(findVueDraggable().exists()).toBe(false); + }); + }); + }); }); 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 1053e8934c9..0a445973c14 100644 --- a/spec/frontend/issues_list/components/issues_list_app_spec.js +++ b/spec/frontend/issues_list/components/issues_list_app_spec.js @@ -1,16 +1,31 @@ import { shallowMount } from '@vue/test-utils'; import AxiosMockAdapter from 'axios-mock-adapter'; +import { TEST_HOST } from 'helpers/test_constants'; import waitForPromises from 'helpers/wait_for_promises'; +import createFlash from '~/flash'; import IssuableList from '~/issuable_list/components/issuable_list_root.vue'; import IssuesListApp from '~/issues_list/components/issues_list_app.vue'; +import { + CREATED_DESC, + PAGE_SIZE, + PAGE_SIZE_MANUAL, + RELATIVE_POSITION_ASC, + sortOptions, + sortParams, +} from '~/issues_list/constants'; import axios from '~/lib/utils/axios_utils'; +import { setUrlParams } from '~/lib/utils/url_utility'; + +jest.mock('~/flash'); describe('IssuesListApp component', () => { + const originalWindowLocation = window.location; let axiosMock; let wrapper; const fullPath = 'path/to/project'; const endpoint = 'api/endpoint'; + const issuesPath = `${fullPath}/-/issues`; const state = 'opened'; const xPage = 1; const xTotal = 25; @@ -29,37 +44,64 @@ describe('IssuesListApp component', () => { provide: { endpoint, fullPath, + issuesPath, }, }); - beforeEach(async () => { + beforeEach(() => { axiosMock = new AxiosMockAdapter(axios); axiosMock.onGet(endpoint).reply(200, fetchIssuesResponse.data, fetchIssuesResponse.headers); - wrapper = mountComponent(); - await waitForPromises(); }); afterEach(() => { + window.location = originalWindowLocation; axiosMock.reset(); wrapper.destroy(); }); - it('renders IssuableList', () => { - expect(findIssuableList().props()).toMatchObject({ - namespace: fullPath, - recentSearchesStorageKey: 'issues', - searchInputPlaceholder: 'Search or filter results…', - showPaginationControls: true, - issuables: [], - totalItems: xTotal, - currentPage: xPage, - previousPage: xPage - 1, - nextPage: xPage + 1, - urlParams: { page: xPage, state }, + describe('IssuableList', () => { + beforeEach(async () => { + wrapper = mountComponent(); + await waitForPromises(); + }); + + it('renders', () => { + expect(findIssuableList().props()).toMatchObject({ + namespace: fullPath, + recentSearchesStorageKey: 'issues', + searchInputPlaceholder: 'Search or filter results…', + sortOptions, + initialSortBy: CREATED_DESC, + showPaginationControls: true, + issuables: [], + totalItems: xTotal, + currentPage: xPage, + previousPage: xPage - 1, + nextPage: xPage + 1, + urlParams: { page: xPage, state }, + }); }); }); - describe('when "page-change" event is emitted', () => { + describe('initial sort', () => { + it.each(Object.keys(sortParams))('is set as %s when the url query matches', (sortKey) => { + Object.defineProperty(window, 'location', { + writable: true, + value: { + href: setUrlParams(sortParams[sortKey], TEST_HOST), + }, + }); + + wrapper = mountComponent(); + + expect(findIssuableList().props()).toMatchObject({ + initialSortBy: sortKey, + urlParams: sortParams[sortKey], + }); + }); + }); + + describe('when "page-change" event is emitted by IssuableList', () => { const data = [{ id: 10, title: 'title', state }]; const page = 2; const totalItems = 21; @@ -70,6 +112,8 @@ describe('IssuesListApp component', () => { 'x-total': totalItems, }); + wrapper = mountComponent(); + findIssuableList().vm.$emit('page-change', page); await waitForPromises(); @@ -78,7 +122,7 @@ describe('IssuesListApp component', () => { it('fetches issues with expected params', async () => { expect(axiosMock.history.get[1].params).toEqual({ page, - per_page: 20, + per_page: PAGE_SIZE, state, with_labels_details: true, }); @@ -95,4 +139,75 @@ describe('IssuesListApp component', () => { }); }); }); + + describe('when "reorder" event is emitted by IssuableList', () => { + const issueOne = { id: 1, iid: 101, title: 'Issue one' }; + const issueTwo = { id: 2, iid: 102, title: 'Issue two' }; + const issueThree = { id: 3, iid: 103, title: 'Issue three' }; + const issueFour = { id: 4, iid: 104, title: 'Issue four' }; + const issues = [issueOne, issueTwo, issueThree, issueFour]; + + beforeEach(async () => { + axiosMock.onGet(endpoint).reply(200, issues, fetchIssuesResponse.headers); + wrapper = mountComponent(); + await waitForPromises(); + }); + + describe('when successful', () => { + describe.each` + description | issueToMove | oldIndex | newIndex | moveBeforeId | moveAfterId + ${'to the beginning of the list'} | ${issueThree} | ${2} | ${0} | ${null} | ${issueOne.id} + ${'down the list'} | ${issueOne} | ${0} | ${1} | ${issueTwo.id} | ${issueThree.id} + ${'up the list'} | ${issueThree} | ${2} | ${1} | ${issueOne.id} | ${issueTwo.id} + ${'to the end of the list'} | ${issueTwo} | ${1} | ${3} | ${issueFour.id} | ${null} + `( + 'when moving issue $description', + ({ issueToMove, oldIndex, newIndex, moveBeforeId, moveAfterId }) => { + it('makes API call to reorder the issue', async () => { + findIssuableList().vm.$emit('reorder', { oldIndex, newIndex }); + + await waitForPromises(); + + expect(axiosMock.history.put[0]).toMatchObject({ + url: `${issuesPath}/${issueToMove.iid}/reorder`, + data: JSON.stringify({ move_before_id: moveBeforeId, move_after_id: moveAfterId }), + }); + }); + }, + ); + }); + + describe('when unsuccessful', () => { + it('displays an error message', async () => { + axiosMock.onPut(`${issuesPath}/${issueOne.iid}/reorder`).reply(500); + + findIssuableList().vm.$emit('reorder', { oldIndex: 0, newIndex: 1 }); + + await waitForPromises(); + + expect(createFlash).toHaveBeenCalledWith({ message: IssuesListApp.i18n.reorderError }); + }); + }); + }); + + describe('when "sort" event is emitted by IssuableList', () => { + it.each(Object.keys(sortParams))( + 'fetches issues with correct params for "sort" payload %s', + async (sortKey) => { + wrapper = mountComponent(); + + findIssuableList().vm.$emit('sort', sortKey); + + await waitForPromises(); + + expect(axiosMock.history.get[1].params).toEqual({ + page: xPage, + per_page: sortKey === RELATIVE_POSITION_ASC ? PAGE_SIZE_MANUAL : PAGE_SIZE, + state, + with_labels_details: true, + ...sortParams[sortKey], + }); + }, + ); + }); }); diff --git a/spec/frontend/merge_conflicts/components/merge_conflict_resolver_app_spec.js b/spec/frontend/merge_conflicts/components/merge_conflict_resolver_app_spec.js new file mode 100644 index 00000000000..eaa3b1c5d53 --- /dev/null +++ b/spec/frontend/merge_conflicts/components/merge_conflict_resolver_app_spec.js @@ -0,0 +1,131 @@ +import { GlSprintf } from '@gitlab/ui'; +import { shallowMount, createLocalVue } from '@vue/test-utils'; +import Vuex from 'vuex'; +import InlineConflictLines from '~/merge_conflicts/components/inline_conflict_lines.vue'; +import ParallelConflictLines from '~/merge_conflicts/components/parallel_conflict_lines.vue'; +import component from '~/merge_conflicts/merge_conflict_resolver_app.vue'; +import { createStore } from '~/merge_conflicts/store'; +import { decorateFiles } from '~/merge_conflicts/utils'; +import { conflictsMock } from '../mock_data'; + +const localVue = createLocalVue(); +localVue.use(Vuex); + +describe('Merge Conflict Resolver App', () => { + let wrapper; + let store; + + const decoratedMockFiles = decorateFiles(conflictsMock.files); + + const mountComponent = () => { + wrapper = shallowMount(component, { + store, + stubs: { GlSprintf }, + provide() { + return { + mergeRequestPath: 'foo', + sourceBranchPath: 'foo', + resolveConflictsPath: 'bar', + }; + }, + }); + }; + + beforeEach(() => { + store = createStore(); + store.commit('SET_LOADING_STATE', false); + store.dispatch('setConflictsData', conflictsMock); + }); + + afterEach(() => { + wrapper.destroy(); + }); + + const findConflictsCount = () => wrapper.find('[data-testid="conflicts-count"]'); + const findFiles = () => wrapper.findAll('[data-testid="files"]'); + const findFileHeader = (w = wrapper) => w.find('[data-testid="file-name"]'); + const findFileInteractiveButton = (w = wrapper) => w.find('[data-testid="interactive-button"]'); + const findFileInlineButton = (w = wrapper) => w.find('[data-testid="inline-button"]'); + const findSideBySideButton = () => wrapper.find('[data-testid="side-by-side"]'); + const findInlineConflictLines = (w = wrapper) => w.find(InlineConflictLines); + const findParallelConflictLines = (w = wrapper) => w.find(ParallelConflictLines); + const findCommitMessageTextarea = () => wrapper.find('[data-testid="commit-message"]'); + + it('shows the amount of conflicts', () => { + mountComponent(); + + const title = findConflictsCount(); + + expect(title.exists()).toBe(true); + expect(title.text().trim()).toBe('Showing 3 conflicts between test-conflicts and master'); + }); + + describe('files', () => { + it('shows one file area for each file', () => { + mountComponent(); + + expect(findFiles()).toHaveLength(conflictsMock.files.length); + }); + + it('has the appropriate file header', () => { + mountComponent(); + + const fileHeader = findFileHeader(findFiles().at(0)); + + expect(fileHeader.text()).toBe(decoratedMockFiles[0].filePath); + }); + + describe('editing', () => { + it('interactive mode is the default', () => { + mountComponent(); + + const interactiveButton = findFileInteractiveButton(findFiles().at(0)); + const inlineButton = findFileInlineButton(findFiles().at(0)); + + expect(interactiveButton.classes('active')).toBe(true); + expect(inlineButton.classes('active')).toBe(false); + }); + + it('clicking inline set inline as default', async () => { + mountComponent(); + + const inlineButton = findFileInlineButton(findFiles().at(0)); + expect(inlineButton.classes('active')).toBe(false); + + inlineButton.trigger('click'); + await wrapper.vm.$nextTick(); + + expect(inlineButton.classes('active')).toBe(true); + }); + + it('inline mode shows a inline-conflict-lines', () => { + mountComponent(); + + const inlineConflictLinesComponent = findInlineConflictLines(findFiles().at(0)); + + expect(inlineConflictLinesComponent.exists()).toBe(true); + expect(inlineConflictLinesComponent.props('file')).toEqual(decoratedMockFiles[0]); + }); + + it('parallel mode shows a parallel-conflict-lines', async () => { + mountComponent(); + + findSideBySideButton().trigger('click'); + await wrapper.vm.$nextTick(); + + const parallelConflictLinesComponent = findParallelConflictLines(findFiles().at(0)); + + expect(parallelConflictLinesComponent.exists()).toBe(true); + expect(parallelConflictLinesComponent.props('file')).toEqual(decoratedMockFiles[0]); + }); + }); + }); + + describe('submit form', () => { + it('contains a commit message textarea', () => { + mountComponent(); + + expect(findCommitMessageTextarea().exists()).toBe(true); + }); + }); +}); diff --git a/spec/frontend/merge_conflicts/mock_data.js b/spec/frontend/merge_conflicts/mock_data.js new file mode 100644 index 00000000000..8948f2a3c1e --- /dev/null +++ b/spec/frontend/merge_conflicts/mock_data.js @@ -0,0 +1,340 @@ +export const conflictsMock = { + target_branch: 'master', + source_branch: 'test-conflicts', + commit_sha: '6dbf385a3c7bf01e09b5d2d9e5d72f8fb8c590a3', + commit_message: + "Merge branch 'master' into 'test-conflicts'\n\n# Conflicts:\n# .gitlab-ci.yml\n# README.md", + files: [ + { + old_path: '.gitlab-ci.yml', + new_path: '.gitlab-ci.yml', + blob_icon: 'doc-text', + blob_path: + '/gitlab-org/gitlab-test/-/blob/6dbf385a3c7bf01e09b5d2d9e5d72f8fb8c590a3/.gitlab-ci.yml', + sections: [ + { + conflict: false, + lines: [ + { + line_code: null, + type: 'match', + old_line: null, + new_line: null, + text: '@@ -7,10 +7,11 @@ upload:', + meta_data: { old_pos: 7, new_pos: 7 }, + rich_text: '@@ -7,10 +7,11 @@ upload:', + can_receive_suggestion: true, + }, + { + line_code: '587d266bb27a4dc3022bbed44dfa19849df3044c_7_7', + type: null, + old_line: 7, + new_line: 7, + text: ' stage: upload', + meta_data: null, + rich_text: + '\u003cspan id="LC7" class="line" lang="yaml"\u003e \u003cspan class="na"\u003estage\u003c/span\u003e\u003cspan class="pi"\u003e:\u003c/span\u003e \u003cspan class="s"\u003eupload\u003c/span\u003e\u003c/span\u003e\n', + can_receive_suggestion: true, + }, + { + line_code: '587d266bb27a4dc3022bbed44dfa19849df3044c_8_8', + type: null, + old_line: 8, + new_line: 8, + text: ' script:', + meta_data: null, + rich_text: + '\u003cspan id="LC8" class="line" lang="yaml"\u003e \u003cspan class="na"\u003escript\u003c/span\u003e\u003cspan class="pi"\u003e:\u003c/span\u003e\u003c/span\u003e\n', + can_receive_suggestion: true, + }, + { + line_code: '587d266bb27a4dc3022bbed44dfa19849df3044c_9_9', + type: null, + old_line: 9, + new_line: 9, + text: + // eslint-disable-next-line no-template-curly-in-string + ' - \'curl --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file README.md ${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/my_package/0.0.1/file.txt\'', + meta_data: null, + rich_text: + // eslint-disable-next-line no-template-curly-in-string + '\u003cspan id="LC9" class="line" lang="yaml"\u003e \u003cspan class="pi"\u003e-\u003c/span\u003e \u003cspan class="s1"\u003e\'\u003c/span\u003e\u003cspan class="s"\u003ecurl\u003c/span\u003e\u003cspan class="nv"\u003e \u003c/span\u003e\u003cspan class="s"\u003e--header\u003c/span\u003e\u003cspan class="nv"\u003e \u003c/span\u003e\u003cspan class="s"\u003e"JOB-TOKEN:\u003c/span\u003e\u003cspan class="nv"\u003e \u003c/span\u003e\u003cspan class="s"\u003e$CI_JOB_TOKEN"\u003c/span\u003e\u003cspan class="nv"\u003e \u003c/span\u003e\u003cspan class="s"\u003e--upload-file\u003c/span\u003e\u003cspan class="nv"\u003e \u003c/span\u003e\u003cspan class="s"\u003eREADME.md\u003c/span\u003e\u003cspan class="nv"\u003e \u003c/span\u003e\u003cspan class="s"\u003e${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/my_package/0.0.1/file.txt\'\u003c/span\u003e\u003c/span\u003e\n', + can_receive_suggestion: true, + }, + ], + }, + { + conflict: true, + lines: [ + { + line_code: '587d266bb27a4dc3022bbed44dfa19849df3044c_10_10', + type: 'new', + old_line: null, + new_line: 10, + text: '# some new comments', + meta_data: null, + rich_text: + '\u003cspan id="LC10" class="line" lang="yaml"\u003e\u003cspan class="c1"\u003e# some new comments\u003c/span\u003e\u003c/span\u003e', + can_receive_suggestion: true, + }, + { + line_code: '587d266bb27a4dc3022bbed44dfa19849df3044c_10_11', + type: 'old', + old_line: 10, + new_line: null, + text: '# a different comment', + meta_data: null, + rich_text: + '\u003cspan id="LC10" class="line" lang="yaml"\u003e\u003cspan class="c1"\u003e# a different comment\u003c/span\u003e\u003c/span\u003e', + can_receive_suggestion: false, + }, + ], + id: '587d266bb27a4dc3022bbed44dfa19849df3044c_10_10', + }, + ], + type: 'text', + content_path: + '/gitlab-org/gitlab-test/-/merge_requests/2/conflict_for_path?new_path=.gitlab-ci.yml\u0026old_path=.gitlab-ci.yml', + }, + { + old_path: 'README.md', + new_path: 'README.md', + blob_icon: 'doc-text', + blob_path: + '/gitlab-org/gitlab-test/-/blob/6dbf385a3c7bf01e09b5d2d9e5d72f8fb8c590a3/README.md', + sections: [ + { + conflict: false, + lines: [ + { + line_code: '8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_1_1', + type: null, + old_line: 1, + new_line: 1, + text: '- 1', + meta_data: null, + rich_text: + '\u003cspan id="LC1" class="line" lang="markdown"\u003e\u003cspan class="p"\u003e-\u003c/span\u003e 1\u003c/span\u003e\n', + can_receive_suggestion: true, + }, + { + line_code: '8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_2_2', + type: null, + old_line: 2, + new_line: 2, + text: '- 2', + meta_data: null, + rich_text: + '\u003cspan id="LC2" class="line" lang="markdown"\u003e\u003cspan class="p"\u003e-\u003c/span\u003e 2\u003c/span\u003e\n', + can_receive_suggestion: true, + }, + { + line_code: '8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_3_3', + type: null, + old_line: 3, + new_line: 3, + text: '- 3', + meta_data: null, + rich_text: + '\u003cspan id="LC3" class="line" lang="markdown"\u003e\u003cspan class="p"\u003e-\u003c/span\u003e 3\u003c/span\u003e\n', + can_receive_suggestion: true, + }, + ], + }, + { + conflict: true, + lines: [ + { + line_code: '8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_4_4', + type: 'new', + old_line: null, + new_line: 4, + text: '- 4c', + meta_data: null, + rich_text: + '\u003cspan id="LC4" class="line" lang="markdown"\u003e\u003cspan class="p"\u003e-\u003c/span\u003e 4c\u003c/span\u003e\n', + can_receive_suggestion: true, + }, + { + line_code: '8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_4_5', + type: 'old', + old_line: 4, + new_line: null, + text: '- 4b', + meta_data: null, + rich_text: + '\u003cspan id="LC4" class="line" lang="markdown"\u003e\u003cspan class="p"\u003e-\u003c/span\u003e 4b\u003c/span\u003e\n', + can_receive_suggestion: false, + }, + ], + id: '8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_4_4', + }, + { + conflict: false, + lines: [ + { + line_code: '8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_5_5', + type: null, + old_line: 5, + new_line: 5, + text: '- 5', + meta_data: null, + rich_text: + '\u003cspan id="LC5" class="line" lang="markdown"\u003e\u003cspan class="p"\u003e-\u003c/span\u003e 5\u003c/span\u003e\n', + can_receive_suggestion: true, + }, + { + line_code: '8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_6_6', + type: null, + old_line: 6, + new_line: 6, + text: '- 6', + meta_data: null, + rich_text: + '\u003cspan id="LC6" class="line" lang="markdown"\u003e\u003cspan class="p"\u003e-\u003c/span\u003e 6\u003c/span\u003e\n', + can_receive_suggestion: true, + }, + { + line_code: '8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_7_7', + type: null, + old_line: 7, + new_line: 7, + text: '- 7', + meta_data: null, + rich_text: + '\u003cspan id="LC7" class="line" lang="markdown"\u003e\u003cspan class="p"\u003e-\u003c/span\u003e 7\u003c/span\u003e\n', + can_receive_suggestion: true, + }, + ], + }, + { + conflict: false, + lines: [ + { + line_code: null, + type: 'match', + old_line: null, + new_line: null, + text: '@@ -9,15 +9,15 @@', + meta_data: { old_pos: 9, new_pos: 9 }, + rich_text: '@@ -9,15 +9,15 @@', + can_receive_suggestion: true, + }, + { + line_code: '8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_9_9', + type: null, + old_line: 9, + new_line: 9, + text: '- 9', + meta_data: null, + rich_text: + '\u003cspan id="LC9" class="line" lang="markdown"\u003e\u003cspan class="p"\u003e-\u003c/span\u003e 9\u003c/span\u003e\n', + can_receive_suggestion: true, + }, + { + line_code: '8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_10_10', + type: null, + old_line: 10, + new_line: 10, + text: '- 10', + meta_data: null, + rich_text: + '\u003cspan id="LC10" class="line" lang="markdown"\u003e\u003cspan class="p"\u003e-\u003c/span\u003e 10\u003c/span\u003e\n', + can_receive_suggestion: true, + }, + { + line_code: '8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_11_11', + type: null, + old_line: 11, + new_line: 11, + text: '- 11', + meta_data: null, + rich_text: + '\u003cspan id="LC11" class="line" lang="markdown"\u003e\u003cspan class="p"\u003e-\u003c/span\u003e 11\u003c/span\u003e\n', + can_receive_suggestion: true, + }, + ], + }, + { + conflict: true, + lines: [ + { + line_code: '8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_12_12', + type: 'new', + old_line: null, + new_line: 12, + text: '- 12c', + meta_data: null, + rich_text: + '\u003cspan id="LC12" class="line" lang="markdown"\u003e\u003cspan class="p"\u003e-\u003c/span\u003e 12c\u003c/span\u003e\n', + can_receive_suggestion: true, + }, + { + line_code: '8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_12_13', + type: 'old', + old_line: 12, + new_line: null, + text: '- 12b', + meta_data: null, + rich_text: + '\u003cspan id="LC12" class="line" lang="markdown"\u003e\u003cspan class="p"\u003e-\u003c/span\u003e 12b\u003c/span\u003e\n', + can_receive_suggestion: false, + }, + ], + id: '8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_12_12', + }, + { + conflict: false, + lines: [ + { + line_code: '8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_13_13', + type: null, + old_line: 13, + new_line: 13, + text: '- 13', + meta_data: null, + rich_text: + '\u003cspan id="LC13" class="line" lang="markdown"\u003e\u003cspan class="p"\u003e-\u003c/span\u003e 13\u003c/span\u003e\n', + can_receive_suggestion: true, + }, + { + line_code: '8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_14_14', + type: null, + old_line: 14, + new_line: 14, + text: '- 14 ', + meta_data: null, + rich_text: + '\u003cspan id="LC14" class="line" lang="markdown"\u003e\u003cspan class="p"\u003e-\u003c/span\u003e 14 \u003c/span\u003e\n', + can_receive_suggestion: true, + }, + { + line_code: '8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_15_15', + type: null, + old_line: 15, + new_line: 15, + text: '- 15', + meta_data: null, + rich_text: + '\u003cspan id="LC15" class="line" lang="markdown"\u003e\u003cspan class="p"\u003e-\u003c/span\u003e 15\u003c/span\u003e\n', + can_receive_suggestion: true, + }, + { + line_code: null, + type: 'match', + old_line: null, + new_line: null, + text: '', + meta_data: { old_pos: 15, new_pos: 15 }, + rich_text: '', + can_receive_suggestion: true, + }, + ], + }, + ], + type: 'text', + content_path: + '/gitlab-org/gitlab-test/-/merge_requests/2/conflict_for_path?new_path=README.md\u0026old_path=README.md', + }, + ], +}; diff --git a/spec/models/list_spec.rb b/spec/models/list_spec.rb index ad07ee1115b..67a76c305f6 100644 --- a/spec/models/list_spec.rb +++ b/spec/models/list_spec.rb @@ -17,17 +17,4 @@ RSpec.describe List do it { is_expected.to validate_presence_of(:label) } it { is_expected.to validate_presence_of(:list_type) } end - - describe '.without_types' do - it 'exclude lists of given types' do - board = create(:list, list_type: :label).board - # closed list is created by default - backlog_list = create(:list, list_type: :backlog, board: board) - - exclude_type = [described_class.list_types[:label], described_class.list_types[:closed]] - - lists = described_class.without_types(exclude_type) - expect(lists.where(board: board)).to match_array([backlog_list]) - end - end end diff --git a/spec/rubocop/cop/user_admin_spec.rb b/spec/rubocop/cop/user_admin_spec.rb new file mode 100644 index 00000000000..3bf458348f3 --- /dev/null +++ b/spec/rubocop/cop/user_admin_spec.rb @@ -0,0 +1,24 @@ +# frozen_string_literal: true + +require 'fast_spec_helper' + +require 'rubocop' +require_relative '../../../rubocop/cop/user_admin' + +RSpec.describe RuboCop::Cop::UserAdmin do + subject(:cop) { described_class.new } + + it 'flags a method call' do + expect_offense(<<~SOURCE) + user.admin? + ^^^^^^ #{described_class::MSG} + SOURCE + end + + it 'flags a method call with safe operator' do + expect_offense(<<~SOURCE) + user&.admin? + ^^^^^^ #{described_class::MSG} + SOURCE + end +end diff --git a/spec/services/boards/lists/list_service_spec.rb b/spec/services/boards/lists/list_service_spec.rb index 21619abf6aa..0c8a8dc7329 100644 --- a/spec/services/boards/lists/list_service_spec.rb +++ b/spec/services/boards/lists/list_service_spec.rb @@ -8,46 +8,32 @@ RSpec.describe Boards::Lists::ListService do describe '#execute' do let(:service) { described_class.new(parent, user) } - shared_examples 'hidden lists' do - let!(:list) { create(:list, board: board, label: label) } - - context 'when hide_backlog_list is true' do - it 'hides backlog list' do - board.update!(hide_backlog_list: true) - - expect(service.execute(board)).to match_array([board.closed_list, list]) - end - end - - context 'when hide_closed_list is true' do - it 'hides closed list' do - board.update!(hide_closed_list: true) - - expect(service.execute(board)).to match_array([board.backlog_list, list]) - end - end - end - context 'when board parent is a project' do - let(:project) { create(:project) } - let(:board) { create(:board, project: project) } - let(:label) { create(:label, project: project) } - let!(:list) { create(:list, board: board, label: label) } + let_it_be(:project) { create(:project) } + let_it_be_with_reload(:board) { create(:board, project: project) } + let_it_be(:label) { create(:label, project: project) } + let_it_be(:list) { create(:list, board: board, label: label) } + let_it_be(:unrelated_list) { create(:list) } + let(:parent) { project } it_behaves_like 'lists list service' - it_behaves_like 'hidden lists' end context 'when board parent is a group' do - let(:group) { create(:group) } - let(:board) { create(:board, group: group) } - let(:label) { create(:group_label, group: group) } - let!(:list) { create(:list, board: board, label: label) } + let_it_be(:group) { create(:group) } + let_it_be_with_reload(:board) { create(:board, group: group) } + let_it_be(:label) { create(:group_label, group: group) } + let_it_be(:list) { create(:list, board: board, label: label) } + let_it_be(:unrelated_list) { create(:list) } + let(:parent) { group } it_behaves_like 'lists list service' - it_behaves_like 'hidden lists' + end + + def create_backlog_list(board) + create(:backlog_list, board: board) end end end diff --git a/spec/support/helpers/javascript_fixtures_helpers.rb b/spec/support/helpers/javascript_fixtures_helpers.rb index 09425c3742a..28375c1d51e 100644 --- a/spec/support/helpers/javascript_fixtures_helpers.rb +++ b/spec/support/helpers/javascript_fixtures_helpers.rb @@ -31,7 +31,7 @@ module JavaScriptFixturesHelpers # def clean_frontend_fixtures(directory_name) full_directory_name = File.expand_path(directory_name, fixture_root_path) - Dir[File.expand_path('*.html', full_directory_name)].each do |file_name| + Dir[File.expand_path('*.{html,json,md}', full_directory_name)].each do |file_name| FileUtils.rm(file_name) end end diff --git a/spec/support/shared_examples/models/boards/listable_shared_examples.rb b/spec/support/shared_examples/models/boards/listable_shared_examples.rb index e733a5488fb..250a4c1b1bd 100644 --- a/spec/support/shared_examples/models/boards/listable_shared_examples.rb +++ b/spec/support/shared_examples/models/boards/listable_shared_examples.rb @@ -16,18 +16,23 @@ RSpec.shared_examples 'boards listable model' do |list_factory| end describe 'scopes' do + let_it_be(:list1) { create(list_factory, list_type: :backlog) } + let_it_be(:list2) { create(list_factory, list_type: :closed) } + let_it_be(:list3) { create(list_factory, position: 1) } + let_it_be(:list4) { create(list_factory, position: 2) } + describe '.ordered' do it 'returns lists ordered by type and position' do - # rubocop:disable Rails/SaveBang - lists = [ - create(list_factory, list_type: :backlog), - create(list_factory, list_type: :closed), - create(list_factory, position: 1), - create(list_factory, position: 2) - ] - # rubocop:enable Rails/SaveBang - - expect(described_class.where(id: lists).ordered).to eq([lists[0], lists[2], lists[3], lists[1]]) + expect(described_class.where(id: [list1, list2, list3, list4]).ordered) + .to eq([list1, list3, list4, list2]) + end + end + + describe '.without_types' do + it 'excludes lists of given types' do + lists = described_class.without_types([:label, :closed]) + + expect(lists).to match_array([list1]) end end end diff --git a/spec/support/shared_examples/services/boards/lists_destroy_service_shared_examples.rb b/spec/support/shared_examples/services/boards/lists_destroy_service_shared_examples.rb index 6a4f284ec54..94da405e491 100644 --- a/spec/support/shared_examples/services/boards/lists_destroy_service_shared_examples.rb +++ b/spec/support/shared_examples/services/boards/lists_destroy_service_shared_examples.rb @@ -13,7 +13,7 @@ RSpec.shared_examples 'lists destroy service' do development = create(:list, board: board, position: 0) review = create(:list, board: board, position: 1) staging = create(:list, board: board, position: 2) - closed = board.closed_list + closed = board.lists.closed.first described_class.new(parent, user).execute(development) @@ -24,7 +24,7 @@ RSpec.shared_examples 'lists destroy service' do end it 'does not remove list from board when list type is closed' do - list = board.closed_list + list = board.lists.closed.first service = described_class.new(parent, user) expect { service.execute(list) }.not_to change(board.lists, :count) diff --git a/spec/support/shared_examples/services/boards/lists_list_service_shared_examples.rb b/spec/support/shared_examples/services/boards/lists_list_service_shared_examples.rb index 41fd286682e..e1143562661 100644 --- a/spec/support/shared_examples/services/boards/lists_list_service_shared_examples.rb +++ b/spec/support/shared_examples/services/boards/lists_list_service_shared_examples.rb @@ -2,14 +2,34 @@ RSpec.shared_examples 'lists list service' do context 'when the board has a backlog list' do - let!(:backlog_list) { create(:backlog_list, board: board) } + let!(:backlog_list) { create_backlog_list(board) } it 'does not create a backlog list' do expect { service.execute(board) }.not_to change(board.lists, :count) end it "returns board's lists" do - expect(service.execute(board)).to eq [backlog_list, list, board.closed_list] + expect(service.execute(board)).to eq [backlog_list, list, board.lists.closed.first] + end + + context 'when hide_backlog_list is true' do + before do + board.update_column(:hide_backlog_list, true) + end + + it 'hides backlog list' do + expect(service.execute(board)).to match_array([board.lists.closed.first, list]) + end + end + + context 'when hide_closed_list is true' do + before do + board.update_column(:hide_closed_list, true) + end + + it 'hides closed list' do + expect(service.execute(board)).to match_array([backlog_list, list]) + end end end @@ -23,25 +43,21 @@ RSpec.shared_examples 'lists list service' do end it "returns board's lists" do - expect(service.execute(board)).to eq [board.backlog_list, list, board.closed_list] + expect(service.execute(board)).to eq [board.lists.backlog.first, list, board.lists.closed.first] end end context 'when wanting a specific list' do - let!(:list1) { create(:list, board: board) } - it 'returns list specified by id' do - service = described_class.new(parent, user, list_id: list1.id) + service = described_class.new(parent, user, list_id: list.id) - expect(service.execute(board, create_default_lists: false)).to eq [list1] + expect(service.execute(board, create_default_lists: false)).to eq [list] end it 'returns empty result when list is not found' do - external_board = create(:board, resource_parent: create(:project)) - external_list = create(:list, board: external_board) - service = described_class.new(parent, user, list_id: external_list.id) + service = described_class.new(parent, user, list_id: unrelated_list.id) - expect(service.execute(board, create_default_lists: false)).to eq(List.none) + expect(service.execute(board, create_default_lists: false)).to be_empty end end end diff --git a/vendor/gitignore/C++.gitignore b/vendor/gitignore/C++.gitignore index 259148fa18f..259148fa18f 100755..100644 --- a/vendor/gitignore/C++.gitignore +++ b/vendor/gitignore/C++.gitignore diff --git a/vendor/gitignore/Java.gitignore b/vendor/gitignore/Java.gitignore index a1c2a238a96..a1c2a238a96 100755..100644 --- a/vendor/gitignore/Java.gitignore +++ b/vendor/gitignore/Java.gitignore |