Commit 9905d102 authored by GitLab Bot's avatar GitLab Bot

Automatic merge of gitlab-org/gitlab master

parents 056ad1c8 5abe2353
......@@ -3,6 +3,7 @@
*.mo
*.edit.po
*.rej
.dir-locals.el
.DS_Store
.bundle
.chef
......
......@@ -38,6 +38,8 @@ Are there any other stages or teams involved that need to be kept in the loop?
<!-- If applicable, any groups/projects that are happy to have this feature turned on early. Some organizations may wish to test big changes they are interested in with a small subset of users ahead of time for example. -->
- `gitlab-org/gitlab` project
- `gitlab-org/gitlab-foss` project
- `gitlab-com/www-gitlab-com` project
- `gitlab-org`/`gitlab-com` groups
- ...
......@@ -79,19 +81,24 @@ Are there any other stages or teams involved that need to be kept in the loop?
- [ ] Ensure that documentation has been updated ([More info](https://docs.gitlab.com/ee/development/documentation/feature_flags.html#features-that-became-enabled-by-default)).
- [ ] Announce on [the feature issue](ISSUE LINK) an estimated time this will be enabled on GitLab.com.
- [ ] If the feature might impact the user experience, notify `#support_gitlab-com` and your team channel ([more guidance when this is necessary in the dev docs](https://docs.gitlab.com/ee/development/feature_flags/controls.html#communicate-the-change)).
- [ ] If the feature flag in code has [an actor](https://docs.gitlab.com/ee/development/feature_flags/#feature-actors), enable it on GitLab.com for [testing groups/projects](#testing-groupsprojectsusers).
- [ ] `/chatops run feature set --<actor-type>=<actor> <feature-flag-name> true`
- [ ] Verify that the feature works as expected. Posting the QA result in this issue is preferable.
### Global rollout on production
All `/chatops` commands that target production should be done in the `#production` slack channel for visibility.
- [ ] Confirm the feature flag is enabled on `staging` without incident
- [ ] Roll out the feature to targeted testing projects/groups first
- [ ] `/chatops run feature set --project=gitlab-org/gitlab <feature-flag-name> true`
- [ ] `/chatops run feature set --project=gitlab-org/gitlab-foss <feature-flag-name> true`
- [ ] `/chatops run feature set --project=gitlab-com/www-gitlab-com <feature-flag-name> true`
- [ ] [Incrementally roll out](https://docs.gitlab.com/ee/development/feature_flags/controls.html#process) the feature.
- If the feature flag in code has [an actor](https://docs.gitlab.com/ee/development/feature_flags/#feature-actors), perform **actor-based** rollout.
- [ ] `/chatops run feature set <feature-flag-name> <rollout-percentage> --actors`
- If the feature flag in code does **NOT** have [an actor](https://docs.gitlab.com/ee/development/feature_flags/#feature-actors), perform time-based rollout (**random** rollout).
- [ ] `/chatops run feature set <feature-flag-name> <rollout-percentage>`
- Enable the feature globally on production environment.
- [ ] `/chatops run feature set <feature-flag-name> true`
- [ ] Verify the change has the desired outcome with the limited rollout before enabling the feature globally on production.
- [ ] Enable the feature globally on production environment. `/chatops run feature set <feature-flag-name> true`
- [ ] Announce on [the feature issue](ISSUE LINK) that the feature has been globally enabled.
- [ ] Wait for [at least one day for the verification term](https://about.gitlab.com/handbook/product-development-flow/feature-flag-lifecycle/#including-a-feature-behind-feature-flag-in-the-final-release).
......
......@@ -23,30 +23,6 @@ Graphql/Descriptions:
- 'ee/app/graphql/types/vulnerability_severity_enum.rb'
- 'ee/app/graphql/types/vulnerability_state_enum.rb'
- 'ee/app/graphql/types/vulnerability_confidence_enum.rb'
- 'app/graphql/types/design_management/design_at_version_type.rb'
- 'app/graphql/types/design_management/design_fields.rb'
- 'app/graphql/types/diff_paths_input_type.rb'
- 'app/graphql/types/environment_type.rb'
- 'app/graphql/types/eventable_type.rb'
- 'app/graphql/types/group_type.rb'
- 'app/graphql/types/merge_request_type.rb'
- 'app/graphql/types/metadata/kas_type.rb'
- 'app/graphql/types/milestone_wildcard_id_enum.rb'
- 'app/graphql/types/namespace_type.rb'
- 'app/graphql/types/notes/note_type.rb'
- 'app/graphql/types/notes/position_type_enum.rb'
- 'app/graphql/types/packages/composer/json_type.rb'
- 'app/graphql/types/packages/package_details_type.rb'
- 'app/graphql/types/packages/package_file_type.rb'
- 'app/graphql/types/packages/package_tag_type.rb'
- 'app/graphql/types/packages/package_type.rb'
- 'app/graphql/types/project_type.rb'
- 'app/graphql/types/prometheus_alert_type.rb'
- 'app/graphql/types/query_type.rb'
- 'app/graphql/types/range_input_type.rb'
- 'app/graphql/types/release_asset_link_shared_input_arguments.rb'
- 'app/graphql/types/release_assets_input_type.rb'
- 'app/graphql/types/release_type.rb'
- 'app/graphql/types/repository/blob_type.rb'
- 'app/graphql/types/root_storage_statistics_type.rb'
- 'app/graphql/types/snippet_type.rb'
......
......@@ -310,7 +310,7 @@ gem 'pg_query', '~> 2.1'
gem 'premailer-rails', '~> 1.10.3'
# LabKit: Tracing and Correlation
gem 'gitlab-labkit', '~> 0.21.0'
gem 'gitlab-labkit', '~> 0.21.1'
# Thrift is a dependency of gitlab-labkit, we want a version higher than 0.14.0
# because of https://gitlab.com/gitlab-org/gitlab/-/issues/321900
gem 'thrift', '>= 0.14.0'
......@@ -479,7 +479,7 @@ gem 'gitaly', '~> 14.2.0.pre.rc2'
# KAS GRPC protocol definitions
gem 'kas-grpc', '~> 0.0.2'
gem 'grpc', '~> 1.38.0'
gem 'grpc', '~> 1.30.2'
gem 'google-protobuf', '~> 3.17.1'
......
......@@ -475,10 +475,10 @@ GEM
fog-json (~> 1.2.0)
mime-types
ms_rest_azure (~> 0.12.0)
gitlab-labkit (0.21.0)
gitlab-labkit (0.21.1)
actionpack (>= 5.0.0, < 7.0.0)
activesupport (>= 5.0.0, < 7.0.0)
grpc (~> 1.38)
grpc (~> 1.30.2)
jaeger-client (~> 1.1)
opentracing (~> 0.4)
pg_query (~> 2.1)
......@@ -573,8 +573,8 @@ GEM
graphql (~> 1.6)
html-pipeline (~> 2.8)
sass (~> 3.4)
grpc (1.38.0)
google-protobuf (~> 3.15)
grpc (1.30.2)
google-protobuf (~> 3.12)
googleapis-common-protos-types (~> 1.0)
gssapi (1.2.0)
ffi (>= 1.0.1)
......@@ -1477,7 +1477,7 @@ DEPENDENCIES
gitlab-dangerfiles (~> 2.3.0)
gitlab-experiment (~> 0.6.4)
gitlab-fog-azure-rm (~> 1.1.1)
gitlab-labkit (~> 0.21.0)
gitlab-labkit (~> 0.21.1)
gitlab-license (~> 2.0)
gitlab-mail_room (~> 0.0.9)
gitlab-markup (~> 1.7.1)
......@@ -1499,7 +1499,7 @@ DEPENDENCIES
graphlient (~> 0.4.0)
graphql (~> 1.11.8)
graphql-docs (~> 1.6.0)
grpc (~> 1.38.0)
grpc (~> 1.30.2)
gssapi
guard-rspec
haml_lint (~> 0.36.0)
......
......@@ -18,12 +18,12 @@ module Types
field :version,
Types::DesignManagement::VersionType,
null: false,
description: 'The version this design-at-versions is pinned to.'
description: 'Version this design-at-versions is pinned to.'
field :design,
Types::DesignManagement::DesignType,
null: false,
description: 'The underlying design.'
description: 'Underlying design.'
def cached_stateful_version(_parent)
version
......
......@@ -7,12 +7,12 @@ module Types
field_class Types::BaseField
field :id, GraphQL::Types::ID, description: 'The ID of this design.', null: false
field :project, Types::ProjectType, null: false, description: 'The project the design belongs to.'
field :issue, Types::IssueType, null: false, description: 'The issue the design belongs to.'
field :filename, GraphQL::Types::String, null: false, description: 'The filename of the design.'
field :full_path, GraphQL::Types::String, null: false, description: 'The full path to the design file.'
field :image, GraphQL::Types::String, null: false, extras: [:parent], description: 'The URL of the full-sized image.'
field :id, GraphQL::Types::ID, description: 'ID of this design.', null: false
field :project, Types::ProjectType, null: false, description: 'Project the design belongs to.'
field :issue, Types::IssueType, null: false, description: 'Issue the design belongs to.'
field :filename, GraphQL::Types::String, null: false, description: 'Filename of the design.'
field :full_path, GraphQL::Types::String, null: false, description: 'Full path to the design file.'
field :image, GraphQL::Types::String, null: false, extras: [:parent], description: 'URL of the full-sized image.'
field :image_v432x230, GraphQL::Types::String, null: true, extras: [:parent],
description: 'The URL of the design resized to fit within the bounds of 432x230. ' \
'This will be `null` if the image has not been generated'
......@@ -20,7 +20,7 @@ module Types
null: false,
calls_gitaly: true,
extras: [:parent],
description: 'The diff refs for this design.'
description: 'Diff refs for this design.'
field :event, Types::DesignManagement::DesignVersionEventEnum,
null: false,
extras: [:parent],
......@@ -29,7 +29,7 @@ module Types
GraphQL::Types::Int,
null: false,
method: :user_notes_count,
description: 'The total count of user-created notes for this design.'
description: 'Total count of user-created notes for this design.'
def diff_refs(parent:)
version = cached_stateful_version(parent)
......
......@@ -3,8 +3,8 @@
module Types
class DiffPathsInputType < BaseInputObject
argument :old_path, GraphQL::Types::String, required: false,
description: 'The path of the file on the start sha.'
description: 'Path of the file on the start SHA.'
argument :new_path, GraphQL::Types::String, required: false,
description: 'The path of the file on the head sha.'
description: 'Path of the file on the HEAD SHA.'
end
end
......@@ -19,7 +19,7 @@ module Types
description: 'State of the environment, for example: available/stopped.'
field :path, GraphQL::Types::String, null: false,
description: 'The path to the environment.'
description: 'Path to the environment.'
field :metrics_dashboard, Types::Metrics::DashboardType, null: true,
description: 'Metrics dashboard schema for the environment.',
......@@ -28,6 +28,6 @@ module Types
field :latest_opened_most_severe_alert,
Types::AlertManagement::AlertType,
null: true,
description: 'The most severe open alert for the environment. If multiple alerts have equal severity, the most recent is returned.'
description: 'Most severe open alert for the environment. If multiple alerts have equal severity, the most recent is returned.'
end
end
......@@ -4,6 +4,6 @@ module Types
module EventableType
include Types::BaseInterface
field :events, Types::EventType.connection_type, null: true, description: 'A list of events associated with the object.'
field :events, Types::EventType.connection_type, null: true, description: 'List of events associated with the object.'
end
end
......@@ -33,12 +33,12 @@ module Types
type: GraphQL::Types::String,
null: true,
method: :project_creation_level_str,
description: 'The permission level required to create projects in the group.'
description: 'Permission level required to create projects in the group.'
field :subgroup_creation_level,
type: GraphQL::Types::String,
null: true,
method: :subgroup_creation_level_str,
description: 'The permission level required to create subgroups within the group.'
description: 'Permission level required to create subgroups within the group.'
field :require_two_factor_authentication,
type: GraphQL::Types::Boolean,
......@@ -101,7 +101,7 @@ module Types
field :label,
Types::LabelType,
null: true,
description: 'A label available on this group.' do
description: 'Label available on this group.' do
argument :title,
type: GraphQL::Types::String,
required: true,
......
......@@ -64,7 +64,7 @@ module Types
description: 'Diff head SHA of the merge request.'
field :diff_stats, [Types::DiffStatsType], null: true, calls_gitaly: true,
description: 'Details about which files were changed in this merge request.' do
argument :path, GraphQL::Types::String, required: false, description: 'A specific file-path.'
argument :path, GraphQL::Types::String, required: false, description: 'Specific file path.'
end
field :diff_stats_summary, Types::DiffStatsSummaryType, null: true, calls_gitaly: true,
......@@ -129,14 +129,14 @@ module Types
description: 'Number of downvotes for the merge request.'
field :head_pipeline, Types::Ci::PipelineType, null: true, method: :actual_head_pipeline,
description: 'The pipeline running on the branch HEAD of the merge request.'
description: 'Pipeline running on the branch HEAD of the merge request.'
field :pipelines,
null: true,
description: 'Pipelines for the merge request. Note: for performance reasons, no more than the most recent 500 pipelines will be returned.',
resolver: Resolvers::MergeRequestPipelinesResolver
field :milestone, Types::MilestoneType, null: true,
description: 'The milestone of the merge request.'
description: 'Milestone of the merge request.'
field :assignees,
type: Types::MergeRequests::AssigneeType.connection_type,
null: true,
......
......@@ -12,7 +12,7 @@ module Types
field :version, GraphQL::Types::String, null: true,
description: 'KAS version.'
field :external_url, GraphQL::Types::String, null: true,
description: 'The URL used by the Agents to communicate with KAS.'
description: 'URL used by the Agents to communicate with KAS.'
end
end
end
......@@ -6,7 +6,7 @@ module Types
description 'Milestone ID wildcard values'
value 'NONE', 'No milestone is assigned.'
value 'ANY', 'A milestone is assigned.'
value 'ANY', 'Milestone is assigned.'
value 'STARTED', 'An open, started milestone (start date <= today).'
value 'UPCOMING', 'An open milestone due in the future (due date >= today).'
end
......
......@@ -40,7 +40,7 @@ module Types
field :package_settings,
Types::Namespace::PackageSettingsType,
null: true,
description: 'The package settings for the namespace.'
description: 'Package settings for the namespace.'
field :shared_runners_setting,
Types::Namespace::SharedRunnersSettingEnum,
......
......@@ -40,9 +40,9 @@ module Types
field :updated_at, Types::TimeType, null: false,
description: "Timestamp of the note's last activity."
field :discussion, Types::Notes::DiscussionType, null: true,
description: 'The discussion this note is a part of.'
description: 'Discussion this note is a part of.'
field :position, Types::Notes::DiffPositionType, null: true,
description: 'The position of this note on a diff.'
description: 'Position of this note on a diff.'
field :confidential, GraphQL::Types::Boolean, null: true,
description: 'Indicates if this note is confidential.',
method: :confidential?
......
......@@ -6,7 +6,7 @@ module Types
graphql_name 'DiffPositionType'
description 'Type of file the position refers to'
value 'text', description: "A text file."
value 'text', description: "Text file."
value 'image', description: "An image."
end
end
......
......@@ -8,10 +8,10 @@ module Types
graphql_name 'PackageComposerJsonType'
description 'Represents a composer JSON file'
field :name, GraphQL::Types::String, null: true, description: 'The name set in the Composer JSON file.'
field :type, GraphQL::Types::String, null: true, description: 'The type set in the Composer JSON file.'
field :license, GraphQL::Types::String, null: true, description: 'The license set in the Composer JSON file.'
field :version, GraphQL::Types::String, null: true, description: 'The version set in the Composer JSON file.'
field :name, GraphQL::Types::String, null: true, description: 'Name set in the Composer JSON file.'
field :type, GraphQL::Types::String, null: true, description: 'Type set in the Composer JSON file.'
field :license, GraphQL::Types::String, null: true, description: 'License set in the Composer JSON file.'
field :version, GraphQL::Types::String, null: true, description: 'Version set in the Composer JSON file.'
end
end
end
......
......@@ -8,7 +8,7 @@ module Types
authorize :read_package
field :versions, ::Types::Packages::PackageType.connection_type, null: true,
description: 'The other versions of the package.'
description: 'Other versions of the package.'
field :package_files, Types::Packages::PackageFileType.connection_type, null: true, description: 'Package files.'
......
......@@ -8,8 +8,8 @@ module Types
authorize :read_package
field :id, ::Types::GlobalIDType[::Packages::PackageFile], null: false, description: 'ID of the file.'
field :created_at, Types::TimeType, null: false, description: 'The created date.'
field :updated_at, Types::TimeType, null: false, description: 'The updated date.'
field :created_at, Types::TimeType, null: false, description: 'Created date.'
field :updated_at, Types::TimeType, null: false, description: 'Updated date.'
field :size, GraphQL::Types::String, null: false, description: 'Size of the package file.'
field :file_name, GraphQL::Types::String, null: false, description: 'Name of the package file.'
field :download_path, GraphQL::Types::String, null: false, description: 'Download path of the package file.'
......
......@@ -7,10 +7,10 @@ module Types
description 'Represents a package tag'
authorize :read_package
field :id, GraphQL::Types::ID, null: false, description: 'The ID of the tag.'
field :name, GraphQL::Types::String, null: false, description: 'The name of the tag.'
field :created_at, Types::TimeType, null: false, description: 'The created date.'
field :updated_at, Types::TimeType, null: false, description: 'The updated date.'
field :id, GraphQL::Types::ID, null: false, description: 'ID of the tag.'
field :name, GraphQL::Types::String, null: false, description: 'Name of the tag.'
field :created_at, Types::TimeType, null: false, description: 'Created date.'
field :updated_at, Types::TimeType, null: false, description: 'Updated date.'
end
end
end
......@@ -23,7 +23,7 @@ module Types
field :metadata, Types::Packages::MetadataType, null: true,
description: 'Package metadata.'
field :versions, ::Types::Packages::PackageType.connection_type, null: true,
description: 'The other versions of the package.',
description: 'Other versions of the package.',
deprecated: { reason: 'This field is now only returned in the PackageDetailsType', milestone: '13.11' }
field :status, Types::Packages::PackageStatusEnum, null: false, description: 'Package status.'
......
......@@ -118,7 +118,7 @@ module Types
field :autoclose_referenced_issues, GraphQL::Types::Boolean, null: true,
description: 'Indicates if issues referenced by merge requests and commits within the default branch are closed automatically.'
field :suggestion_commit_message, GraphQL::Types::String, null: true,
description: 'The commit message used to apply merge request suggestions.'
description: 'Commit message used to apply merge request suggestions.'
field :squash_read_only, GraphQL::Types::Boolean, null: false, method: :squash_readonly?,
description: 'Indicates if `squashReadOnly` is enabled.'
......@@ -310,7 +310,7 @@ module Types
field :container_expiration_policy,
Types::ContainerExpirationPolicyType,
null: true,
description: 'The container expiration policy of the project.'
description: 'Container expiration policy of the project.'
field :container_repositories,
Types::ContainerRepositoryType.connection_type,
......@@ -324,7 +324,7 @@ module Types
field :label,
Types::LabelType,
null: true,
description: 'A label available on this project.' do
description: 'Label available on this project.' do
argument :title, GraphQL::Types::String,
required: true,
description: 'Title of the label.'
......
......@@ -15,6 +15,6 @@ module Types
field :humanized_text,
GraphQL::Types::String,
null: false,
description: 'The human-readable text of the alert condition.'
description: 'Human-readable text of the alert condition.'
end
end
......@@ -62,7 +62,7 @@ module Types
argument :id,
type: ::Types::GlobalIDType[::ContainerRepository],
required: true,
description: 'The global ID of the container repository.'
description: 'Global ID of the container repository.'
end
field :package,
......@@ -84,13 +84,13 @@ module Types
field :issue, Types::IssueType,
null: true,
description: 'Find an issue.' do
argument :id, ::Types::GlobalIDType[::Issue], required: true, description: 'The global ID of the issue.'
argument :id, ::Types::GlobalIDType[::Issue], required: true, description: 'Global ID of the issue.'
end
field :merge_request, Types::MergeRequestType,
null: true,
description: 'Find a merge request.' do
argument :id, ::Types::GlobalIDType[::MergeRequest], required: true, description: 'The global ID of the merge request.'
argument :id, ::Types::GlobalIDType[::MergeRequest], required: true, description: 'Global ID of the merge request.'
end
field :instance_statistics_measurements,
......
......@@ -8,11 +8,11 @@ module Types
@subtypes[[type, closed]] ||= Class.new(self) do
argument :start, type,
required: closed,
description: 'The start of the range.'
description: 'Start of the range.'
argument :end, type,
required: closed,
description: 'The end of the range.'
description: 'End of the range.'
end
end
......
......@@ -19,7 +19,7 @@ module Types
argument :link_type, Types::ReleaseAssetLinkTypeEnum,
required: false, default_value: 'other',
description: 'The type of the asset link.'
description: 'Type of the asset link.'
end
end
end
......@@ -7,6 +7,6 @@ module Types
argument :links, [Types::ReleaseAssetLinkInputType],
required: false,
description: 'A list of asset links to associate to the release.'
description: 'List of asset links to associate to the release.'
end
end
......@@ -49,7 +49,7 @@ module Types
field :commit, Types::CommitType, null: true,
complexity: 10, calls_gitaly: true,
description: 'The commit associated with the release.'
description: 'Commit associated with the release.'
def commit
return if release.sha.nil?
......
......@@ -209,6 +209,7 @@ fixup
Flawfinder
Flowdock
Fluentd
Flycheck
Forgerock
formatters
Fugit
......
......@@ -74,7 +74,7 @@ Returns [`ContainerRepositoryDetails`](#containerrepositorydetails).
| Name | Type | Description |
| ---- | ---- | ----------- |
| <a id="querycontainerrepositoryid"></a>`id` | [`ContainerRepositoryID!`](#containerrepositoryid) | The global ID of the container repository. |
| <a id="querycontainerrepositoryid"></a>`id` | [`ContainerRepositoryID!`](#containerrepositoryid) | Global ID of the container repository. |
### `Query.currentLicense`
......@@ -185,7 +185,7 @@ Returns [`Issue`](#issue).
| Name | Type | Description |
| ---- | ---- | ----------- |
| <a id="queryissueid"></a>`id` | [`IssueID!`](#issueid) | The global ID of the issue. |
| <a id="queryissueid"></a>`id` | [`IssueID!`](#issueid) | Global ID of the issue. |
### `Query.iteration`
......@@ -219,7 +219,7 @@ Returns [`MergeRequest`](#mergerequest).
| Name | Type | Description |
| ---- | ---- | ----------- |
| <a id="querymergerequestid"></a>`id` | [`MergeRequestID!`](#mergerequestid) | The global ID of the merge request. |
| <a id="querymergerequestid"></a>`id` | [`MergeRequestID!`](#mergerequestid) | Global ID of the merge request. |
### `Query.metadata`
......@@ -1186,7 +1186,7 @@ Input type: `CreateDiffNoteInput`
| <a id="mutationcreatediffnoteclientmutationid"></a>`clientMutationId` | [`String`](#string) | A unique identifier for the client performing the mutation. |
| <a id="mutationcreatediffnoteconfidential"></a>`confidential` | [`Boolean`](#boolean) | Confidentiality flag of a note. Default is false. |
| <a id="mutationcreatediffnotenoteableid"></a>`noteableId` | [`NoteableID!`](#noteableid) | Global ID of the resource to add a note to. |
| <a id="mutationcreatediffnoteposition"></a>`position` | [`DiffPositionInput!`](#diffpositioninput) | The position of this note on a diff. |
| <a id="mutationcreatediffnoteposition"></a>`position` | [`DiffPositionInput!`](#diffpositioninput) | Position of this note on a diff. |
#### Fields
......@@ -1236,7 +1236,7 @@ Input type: `CreateImageDiffNoteInput`
| <a id="mutationcreateimagediffnoteclientmutationid"></a>`clientMutationId` | [`String`](#string) | A unique identifier for the client performing the mutation. |
| <a id="mutationcreateimagediffnoteconfidential"></a>`confidential` | [`Boolean`](#boolean) | Confidentiality flag of a note. Default is false. |
| <a id="mutationcreateimagediffnotenoteableid"></a>`noteableId` | [`NoteableID!`](#noteableid) | Global ID of the resource to add a note to. |
| <a id="mutationcreateimagediffnoteposition"></a>`position` | [`DiffImagePositionInput!`](#diffimagepositioninput) | The position of this note on a diff. |
| <a id="mutationcreateimagediffnoteposition"></a>`position` | [`DiffImagePositionInput!`](#diffimagepositioninput) | Position of this note on a diff. |
#### Fields
......@@ -3601,7 +3601,7 @@ Input type: `ReleaseAssetLinkCreateInput`
| ---- | ---- | ----------- |
| <a id="mutationreleaseassetlinkcreateclientmutationid"></a>`clientMutationId` | [`String`](#string) | A unique identifier for the client performing the mutation. |
| <a id="mutationreleaseassetlinkcreatedirectassetpath"></a>`directAssetPath` | [`String`](#string) | Relative path for a direct asset link. |
| <a id="mutationreleaseassetlinkcreatelinktype"></a>`linkType` | [`ReleaseAssetLinkType`](#releaseassetlinktype) | The type of the asset link. |
| <a id="mutationreleaseassetlinkcreatelinktype"></a>`linkType` | [`ReleaseAssetLinkType`](#releaseassetlinktype) | Type of the asset link. |
| <a id="mutationreleaseassetlinkcreatename"></a>`name` | [`String!`](#string) | Name of the asset link. |
| <a id="mutationreleaseassetlinkcreateprojectpath"></a>`projectPath` | [`ID!`](#id) | Full path of the project the asset link is associated with. |
| <a id="mutationreleaseassetlinkcreatetagname"></a>`tagName` | [`String!`](#string) | Name of the associated release's tag. |
......@@ -3757,7 +3757,7 @@ Input type: `RepositionImageDiffNoteInput`
| ---- | ---- | ----------- |
| <a id="mutationrepositionimagediffnoteclientmutationid"></a>`clientMutationId` | [`String`](#string) | A unique identifier for the client performing the mutation. |
| <a id="mutationrepositionimagediffnoteid"></a>`id` | [`DiffNoteID!`](#diffnoteid) | Global ID of the DiffNote to update. |
| <a id="mutationrepositionimagediffnoteposition"></a>`position` | [`UpdateDiffImagePositionInput!`](#updatediffimagepositioninput) | The position of this note on a diff. |
| <a id="mutationrepositionimagediffnoteposition"></a>`position` | [`UpdateDiffImagePositionInput!`](#updatediffimagepositioninput) | Position of this note on a diff. |
#### Fields
......@@ -4251,7 +4251,7 @@ Input type: `UpdateImageDiffNoteInput`
| <a id="mutationupdateimagediffnotebody"></a>`body` | [`String`](#string) | Content of the note. |
| <a id="mutationupdateimagediffnoteclientmutationid"></a>`clientMutationId` | [`String`](#string) | A unique identifier for the client performing the mutation. |
| <a id="mutationupdateimagediffnoteid"></a>`id` | [`NoteID!`](#noteid) | Global ID of the note to update. |
| <a id="mutationupdateimagediffnoteposition"></a>`position` | [`UpdateDiffImagePositionInput`](#updatediffimagepositioninput) | The position of this note on a diff. |
| <a id="mutationupdateimagediffnoteposition"></a>`position` | [`UpdateDiffImagePositionInput`](#updatediffimagepositioninput) | Position of this note on a diff. |
#### Fields
......@@ -7752,7 +7752,7 @@ Represents an epic on an issue board.
| <a id="boardepicduedatefixed"></a>`dueDateFixed` | [`Time`](#time) | Fixed due date of the epic. |
| <a id="boardepicduedatefrommilestones"></a>`dueDateFromMilestones` | [`Time`](#time) | Inherited due date of the epic from milestones. |
| <a id="boardepicduedateisfixed"></a>`dueDateIsFixed` | [`Boolean`](#boolean) | Indicates if the due date has been manually set. |
| <a id="boardepicevents"></a>`events` | [`EventConnection`](#eventconnection) | A list of events associated with the object. (see [Connections](#connections)) |
| <a id="boardepicevents"></a>`events` | [`EventConnection`](#eventconnection) | List of events associated with the object. (see [Connections](#connections)) |
| <a id="boardepicgroup"></a>`group` | [`Group!`](#group) | Group to which the epic belongs. |
| <a id="boardepichaschildren"></a>`hasChildren` | [`Boolean!`](#boolean) | Indicates if the epic has children. |
| <a id="boardepichasissues"></a>`hasIssues` | [`Boolean!`](#boolean) | Indicates if the epic has direct issues. |
......@@ -8580,18 +8580,18 @@ A single design.
| Name | Type | Description |
| ---- | ---- | ----------- |
| <a id="designdiffrefs"></a>`diffRefs` | [`DiffRefs!`](#diffrefs) | The diff refs for this design. |
| <a id="designdiffrefs"></a>`diffRefs` | [`DiffRefs!`](#diffrefs) | Diff refs for this design. |
| <a id="designdiscussions"></a>`discussions` | [`DiscussionConnection!`](#discussionconnection) | All discussions on this noteable. (see [Connections](#connections)) |
| <a id="designevent"></a>`event` | [`DesignVersionEvent!`](#designversionevent) | How this design was changed in the current version. |
| <a id="designfilename"></a>`filename` | [`String!`](#string) | The filename of the design. |
| <a id="designfullpath"></a>`fullPath` | [`String!`](#string) | The full path to the design file. |
| <a id="designid"></a>`id` | [`ID!`](#id) | The ID of this design. |
| <a id="designimage"></a>`image` | [`String!`](#string) | The URL of the full-sized image. |
| <a id="designfilename"></a>`filename` | [`String!`](#string) | Filename of the design. |
| <a id="designfullpath"></a>`fullPath` | [`String!`](#string) | Full path to the design file. |
| <a id="designid"></a>`id` | [`ID!`](#id) | ID of this design. |
| <a id="designimage"></a>`image` | [`String!`](#string) | URL of the full-sized image. |
| <a id="designimagev432x230"></a>`imageV432x230` | [`String`](#string) | The URL of the design resized to fit within the bounds of 432x230. This will be `null` if the image has not been generated. |
| <a id="designissue"></a>`issue` | [`Issue!`](#issue) | The issue the design belongs to. |
| <a id="designissue"></a>`issue` | [`Issue!`](#issue) | Issue the design belongs to. |
| <a id="designnotes"></a>`notes` | [`NoteConnection!`](#noteconnection) | All notes on this noteable. (see [Connections](#connections)) |
| <a id="designnotescount"></a>`notesCount` | [`Int!`](#int) | The total count of user-created notes for this design. |
| <a id="designproject"></a>`project` | [`Project!`](#project) | The project the design belongs to. |
| <a id="designnotescount"></a>`notesCount` | [`Int!`](#int) | Total count of user-created notes for this design. |
| <a id="designproject"></a>`project` | [`Project!`](#project) | Project the design belongs to. |
#### Fields with arguments
......@@ -8636,18 +8636,18 @@ A design pinned to a specific version. The image field reflects the design as of
| Name | Type | Description |
| ---- | ---- | ----------- |
| <a id="designatversiondesign"></a>`design` | [`Design!`](#design) | The underlying design. |
| <a id="designatversiondiffrefs"></a>`diffRefs` | [`DiffRefs!`](#diffrefs) | The diff refs for this design. |
| <a id="designatversiondesign"></a>`design` | [`Design!`](#design) | Underlying design. |
| <a id="designatversiondiffrefs"></a>`diffRefs` | [`DiffRefs!`](#diffrefs) | Diff refs for this design. |
| <a id="designatversionevent"></a>`event` | [`DesignVersionEvent!`](#designversionevent) | How this design was changed in the current version. |
| <a id="designatversionfilename"></a>`filename` | [`String!`](#string) | The filename of the design. |
| <a id="designatversionfullpath"></a>`fullPath` | [`String!`](#string) | The full path to the design file. |
| <a id="designatversionid"></a>`id` | [`ID!`](#id) | The ID of this design. |
| <a id="designatversionimage"></a>`image` | [`String!`](#string) | The URL of the full-sized image. |
| <a id="designatversionfilename"></a>`filename` | [`String!`](#string) | Filename of the design. |
| <a id="designatversionfullpath"></a>`fullPath` | [`String!`](#string) | Full path to the design file. |
| <a id="designatversionid"></a>`id` | [`ID!`](#id) | ID of this design. |
| <a id="designatversionimage"></a>`image` | [`String!`](#string) | URL of the full-sized image. |
| <a id="designatversionimagev432x230"></a>`imageV432x230` | [`String`](#string) | The URL of the design resized to fit within the bounds of 432x230. This will be `null` if the image has not been generated. |
| <a id="designatversionissue"></a>`issue` | [`Issue!`](#issue) | The issue the design belongs to. |
| <a id="designatversionnotescount"></a>`notesCount` | [`Int!`](#int) | The total count of user-created notes for this design. |
| <a id="designatversionproject"></a>`project` | [`Project!`](#project) | The project the design belongs to. |
| <a id="designatversionversion"></a>`version` | [`DesignVersion!`](#designversion) | The version this design-at-versions is pinned to. |
| <a id="designatversionissue"></a>`issue` | [`Issue!`](#issue) | Issue the design belongs to. |
| <a id="designatversionnotescount"></a>`notesCount` | [`Int!`](#int) | Total count of user-created notes for this design. |
| <a id="designatversionproject"></a>`project` | [`Project!`](#project) | Project the design belongs to. |
| <a id="designatversionversion"></a>`version` | [`DesignVersion!`](#designversion) | Version this design-at-versions is pinned to. |
### `DesignCollection`
......@@ -8995,9 +8995,9 @@ Describes where code is deployed for a project.
| Name | Type | Description |
| ---- | ---- | ----------- |
| <a id="environmentid"></a>`id` | [`ID!`](#id) | ID of the environment. |
| <a id="environmentlatestopenedmostseverealert"></a>`latestOpenedMostSevereAlert` | [`AlertManagementAlert`](#alertmanagementalert) | The most severe open alert for the environment. If multiple alerts have equal severity, the most recent is returned. |
| <a id="environmentlatestopenedmostseverealert"></a>`latestOpenedMostSevereAlert` | [`AlertManagementAlert`](#alertmanagementalert) | Most severe open alert for the environment. If multiple alerts have equal severity, the most recent is returned. |
| <a id="environmentname"></a>`name` | [`String!`](#string) | Human-readable name of the environment. |
| <a id="environmentpath"></a>`path` | [`String!`](#string) | The path to the environment. |
| <a id="environmentpath"></a>`path` | [`String!`](#string) | Path to the environment. |
| <a id="environmentstate"></a>`state` | [`String!`](#string) | State of the environment, for example: available/stopped. |
#### Fields with arguments
......@@ -9037,7 +9037,7 @@ Represents an epic.
| <a id="epicduedatefixed"></a>`dueDateFixed` | [`Time`](#time) | Fixed due date of the epic. |
| <a id="epicduedatefrommilestones"></a>`dueDateFromMilestones` | [`Time`](#time) | Inherited due date of the epic from milestones. |
| <a id="epicduedateisfixed"></a>`dueDateIsFixed` | [`Boolean`](#boolean) | Indicates if the due date has been manually set. |
| <a id="epicevents"></a>`events` | [`EventConnection`](#eventconnection) | A list of events associated with the object. (see [Connections](#connections)) |
| <a id="epicevents"></a>`events` | [`EventConnection`](#eventconnection) | List of events associated with the object. (see [Connections](#connections)) |
| <a id="epicgroup"></a>`group` | [`Group!`](#group) | Group to which the epic belongs. |
| <a id="epichaschildren"></a>`hasChildren` | [`Boolean!`](#boolean) | Indicates if the epic has children. |
| <a id="epichasissues"></a>`hasIssues` | [`Boolean!`](#boolean) | Indicates if the epic has direct issues. |
......@@ -9616,10 +9616,10 @@ four standard [pagination arguments](#connection-pagination-arguments):
| <a id="grouplfsenabled"></a>`lfsEnabled` | [`Boolean`](#boolean) | Indicates if Large File Storage (LFS) is enabled for namespace. |
| <a id="groupmentionsdisabled"></a>`mentionsDisabled` | [`Boolean`](#boolean) | Indicates if a group is disabled from getting mentioned. |
| <a id="groupname"></a>`name` | [`String!`](#string) | Name of the namespace. |
| <a id="grouppackagesettings"></a>`packageSettings` | [`PackageSettings`](#packagesettings) | The package settings for the namespace. |
| <a id="grouppackagesettings"></a>`packageSettings` | [`PackageSettings`](#packagesettings) | Package settings for the namespace. |
| <a id="groupparent"></a>`parent` | [`Group`](#group) | Parent group. |
| <a id="grouppath"></a>`path` | [`String!`](#string) | Path of the namespace. |
| <a id="groupprojectcreationlevel"></a>`projectCreationLevel` | [`String`](#string) | The permission level required to create projects in the group. |
| <a id="groupprojectcreationlevel"></a>`projectCreationLevel` | [`String`](#string) | Permission level required to create projects in the group. |
| <a id="grouprepositorysizeexcessprojectcount"></a>`repositorySizeExcessProjectCount` | [`Int!`](#int) | Number of projects in the root namespace where the repository size exceeds the limit. |
| <a id="grouprequestaccessenabled"></a>`requestAccessEnabled` | [`Boolean`](#boolean) | Indicates if users can request access to namespace. |
| <a id="grouprequiretwofactorauthentication"></a>`requireTwoFactorAuthentication` | [`Boolean`](#boolean) | Indicates if all users in this group are required to set up two-factor authentication. |
......@@ -9628,7 +9628,7 @@ four standard [pagination arguments](#connection-pagination-arguments):
| <a id="groupsharedrunnerssetting"></a>`sharedRunnersSetting` | [`SharedRunnersSetting`](#sharedrunnerssetting) | Shared runners availability for the namespace and its descendants. |
| <a id="groupstats"></a>`stats` | [`GroupStats`](#groupstats) | Group statistics. |
| <a id="groupstoragesizelimit"></a>`storageSizeLimit` | [`Float`](#float) | Total storage limit of the root namespace in bytes. |
| <a id="groupsubgroupcreationlevel"></a>`subgroupCreationLevel` | [`String`](#string) | The permission level required to create subgroups within the group. |
| <a id="groupsubgroupcreationlevel"></a>`subgroupCreationLevel` | [`String`](#string) | Permission level required to create subgroups within the group. |
| <a id="grouptemporarystorageincreaseendson"></a>`temporaryStorageIncreaseEndsOn` | [`Time`](#time) | Date until the temporary storage increase is active. |
| <a id="grouptotalrepositorysize"></a>`totalRepositorySize` | [`Float`](#float) | Total repository size of all projects in the root namespace in bytes. |
| <a id="grouptotalrepositorysizeexcess"></a>`totalRepositorySizeExcess` | [`Float`](#float) | Total excess repository size of all projects in the root namespace in bytes. |
......@@ -9913,7 +9913,7 @@ four standard [pagination arguments](#connection-pagination-arguments):
##### `Group.label`
A label available on this group.
Label available on this group.
Returns [`Label`](#label).
......@@ -10587,7 +10587,7 @@ four standard [pagination arguments](#connection-pagination-arguments):
| Name | Type | Description |
| ---- | ---- | ----------- |
| <a id="kasenabled"></a>`enabled` | [`Boolean!`](#boolean) | Indicates whether the Kubernetes Agent Server is enabled. |
| <a id="kasexternalurl"></a>`externalUrl` | [`String`](#string) | The URL used by the Agents to communicate with KAS. |
| <a id="kasexternalurl"></a>`externalUrl` | [`String`](#string) | URL used by the Agents to communicate with KAS. |
| <a id="kasversion"></a>`version` | [`String`](#string) | KAS version. |
### `Label`
......@@ -10695,7 +10695,7 @@ Maven metadata.
| <a id="mergerequestforceremovesourcebranch"></a>`forceRemoveSourceBranch` | [`Boolean`](#boolean) | Indicates if the project settings will lead to source branch deletion after merge. |
| <a id="mergerequesthasci"></a>`hasCi` | [`Boolean!`](#boolean) | Indicates if the merge request has CI. |
| <a id="mergerequesthassecurityreports"></a>`hasSecurityReports` | [`Boolean!`](#boolean) | Indicates if the source branch has any security reports. |
| <a id="mergerequestheadpipeline"></a>`headPipeline` | [`Pipeline`](#pipeline) | The pipeline running on the branch HEAD of the merge request. |
| <a id="mergerequestheadpipeline"></a>`headPipeline` | [`Pipeline`](#pipeline) | Pipeline running on the branch HEAD of the merge request. |
| <a id="mergerequesthumantimeestimate"></a>`humanTimeEstimate` | [`String`](#string) | Human-readable time estimate of the merge request. |
| <a id="mergerequesthumantotaltimespent"></a>`humanTotalTimeSpent` | [`String`](#string) | Human-readable total time reported as spent on the merge request. |
| <a id="mergerequestid"></a>`id` | [`ID!`](#id) | ID of the merge request. |
......@@ -10713,7 +10713,7 @@ Maven metadata.
| <a id="mergerequestmergeable"></a>`mergeable` | [`Boolean!`](#boolean) | Indicates if the merge request is mergeable. |
| <a id="mergerequestmergeablediscussionsstate"></a>`mergeableDiscussionsState` | [`Boolean`](#boolean) | Indicates if all discussions in the merge request have been resolved, allowing the merge request to be merged. |
| <a id="mergerequestmergedat"></a>`mergedAt` | [`Time`](#time) | Timestamp of when the merge request was merged, null if not merged. |
| <a id="mergerequestmilestone"></a>`milestone` | [`Milestone`](#milestone) | The milestone of the merge request. |
| <a id="mergerequestmilestone"></a>`milestone` | [`Milestone`](#milestone) | Milestone of the merge request. |
| <a id="mergerequestnotes"></a>`notes` | [`NoteConnection!`](#noteconnection) | All notes on this noteable. (see [Connections](#connections)) |
| <a id="mergerequestparticipants"></a>`participants` | [`UserCoreConnection`](#usercoreconnection) | Participants in the merge request. This includes the author, assignees, reviewers, and users mentioned in notes. (see [Connections](#connections)) |
| <a id="mergerequestproject"></a>`project` | [`Project!`](#project) | Alias for target_project. |
......@@ -10780,7 +10780,7 @@ Returns [`[DiffStats!]`](#diffstats).
| Name | Type | Description |
| ---- | ---- | ----------- |
| <a id="mergerequestdiffstatspath"></a>`path` | [`String`](#string) | A specific file-path. |
| <a id="mergerequestdiffstatspath"></a>`path` | [`String`](#string) | Specific file path. |
##### `MergeRequest.pipelines`
......@@ -11397,7 +11397,7 @@ Contains statistics about a milestone.
| <a id="namespaceistemporarystorageincreaseenabled"></a>`isTemporaryStorageIncreaseEnabled` | [`Boolean!`](#boolean) | Status of the temporary storage increase. |
| <a id="namespacelfsenabled"></a>`lfsEnabled` | [`Boolean`](#boolean) | Indicates if Large File Storage (LFS) is enabled for namespace. |
| <a id="namespacename"></a>`name` | [`String!`](#string) | Name of the namespace. |
| <a id="namespacepackagesettings"></a>`packageSettings` | [`PackageSettings`](#packagesettings) | The package settings for the namespace. |
| <a id="namespacepackagesettings"></a>`packageSettings` | [`PackageSettings`](#packagesettings) | Package settings for the namespace. |
| <a id="namespacepath"></a>`path` | [`String!`](#string) | Path of the namespace. |
| <a id="namespacerepositorysizeexcessprojectcount"></a>`repositorySizeExcessProjectCount` | [`Int!`](#int) | Number of projects in the root namespace where the repository size exceeds the limit. |
| <a id="namespacerequestaccessenabled"></a>`requestAccessEnabled` | [`Boolean`](#boolean) | Indicates if users can request access to namespace. |
......@@ -11476,9 +11476,9 @@ Represents the network policy.
| <a id="notebodyhtml"></a>`bodyHtml` | [`String`](#string) | The GitLab Flavored Markdown rendering of `note`. |
| <a id="noteconfidential"></a>`confidential` | [`Boolean`](#boolean) | Indicates if this note is confidential. |
| <a id="notecreatedat"></a>`createdAt` | [`Time!`](#time) | Timestamp of the note creation. |
| <a id="notediscussion"></a>`discussion` | [`Discussion`](#discussion) | The discussion this note is a part of. |
| <a id="notediscussion"></a>`discussion` | [`Discussion`](#discussion) | Discussion this note is a part of. |
| <a id="noteid"></a>`id` | [`NoteID!`](#noteid) | ID of the note. |
| <a id="noteposition"></a>`position` | [`DiffPosition`](#diffposition) | The position of this note on a diff. |
| <a id="noteposition"></a>`position` | [`DiffPosition`](#diffposition) | Position of this note on a diff. |
| <a id="noteproject"></a>`project` | [`Project`](#project) | Project associated with the note. |
| <a id="noteresolvable"></a>`resolvable` | [`Boolean!`](#boolean) | Indicates if the object can be resolved. |
| <a id="noteresolved"></a>`resolved` | [`Boolean!`](#boolean) | Indicates if the object is resolved. |
......@@ -11580,10 +11580,10 @@ Represents a composer JSON file.
| Name | Type | Description |
| ---- | ---- | ----------- |
| <a id="packagecomposerjsontypelicense"></a>`license` | [`String`](#string) | The license set in the Composer JSON file. |
| <a id="packagecomposerjsontypename"></a>`name` | [`String`](#string) | The name set in the Composer JSON file. |
| <a id="packagecomposerjsontypetype"></a>`type` | [`String`](#string) | The type set in the Composer JSON file. |
| <a id="packagecomposerjsontypeversion"></a>`version` | [`String`](#string) | The version set in the Composer JSON file. |
| <a id="packagecomposerjsontypelicense"></a>`license` | [`String`](#string) | License set in the Composer JSON file. |
| <a id="packagecomposerjsontypename"></a>`name` | [`String`](#string) | Name set in the Composer JSON file. |
| <a id="packagecomposerjsontypetype"></a>`type` | [`String`](#string) | Type set in the Composer JSON file. |
| <a id="packagecomposerjsontypeversion"></a>`version` | [`String`](#string) | Version set in the Composer JSON file. |
### `PackageDependency`
......@@ -11631,7 +11631,7 @@ Represents a package details in the Package Registry. Note that this type is in
| <a id="packagedetailstypetags"></a>`tags` | [`PackageTagConnection`](#packagetagconnection) | Package tags. (see [Connections](#connections)) |
| <a id="packagedetailstypeupdatedat"></a>`updatedAt` | [`Time!`](#time) | Date of most recent update. |
| <a id="packagedetailstypeversion"></a>`version` | [`String`](#string) | Version string. |
| <a id="packagedetailstypeversions"></a>`versions` | [`PackageConnection`](#packageconnection) | The other versions of the package. (see [Connections](#connections)) |
| <a id="packagedetailstypeversions"></a>`versions` | [`PackageConnection`](#packageconnection) | Other versions of the package. (see [Connections](#connections)) |
### `PackageFile`
......@@ -11641,7 +11641,7 @@ Represents a package file.
| Name | Type | Description |
| ---- | ---- | ----------- |
| <a id="packagefilecreatedat"></a>`createdAt` | [`Time!`](#time) | The created date. |
| <a id="packagefilecreatedat"></a>`createdAt` | [`Time!`](#time) | Created date. |
| <a id="packagefiledownloadpath"></a>`downloadPath` | [`String!`](#string) | Download path of the package file. |
| <a id="packagefilefilemd5"></a>`fileMd5` | [`String`](#string) | Md5 of the package file. |
| <a id="packagefilefilemetadata"></a>`fileMetadata` | [`PackageFileMetadata`](#packagefilemetadata) | File metadata. |
......@@ -11650,7 +11650,7 @@ Represents a package file.
| <a id="packagefilefilesha256"></a>`fileSha256` | [`String`](#string) | Sha256 of the package file. |
| <a id="packagefileid"></a>`id` | [`PackagesPackageFileID!`](#packagespackagefileid) | ID of the file. |
| <a id="packagefilesize"></a>`size` | [`String!`](#string) | Size of the package file. |
| <a id="packagefileupdatedat"></a>`updatedAt` | [`Time!`](#time) | The updated date. |
| <a id="packagefileupdatedat"></a>`updatedAt` | [`Time!`](#time) | Updated date. |
### `PackageFileRegistry`
......@@ -11690,10 +11690,10 @@ Represents a package tag.
| Name | Type | Description |
| ---- | ---- | ----------- |
| <a id="packagetagcreatedat"></a>`createdAt` | [`Time!`](#time) | The created date. |
| <a id="packagetagid"></a>`id` | [`ID!`](#id) | The ID of the tag. |
| <a id="packagetagname"></a>`name` | [`String!`](#string) | The name of the tag. |
| <a id="packagetagupdatedat"></a>`updatedAt` | [`Time!`](#time) | The updated date. |
| <a id="packagetagcreatedat"></a>`createdAt` | [`Time!`](#time) | Created date. |
| <a id="packagetagid"></a>`id` | [`ID!`](#id) | ID of the tag. |
| <a id="packagetagname"></a>`name` | [`String!`](#string) | Name of the tag. |
| <a id="packagetagupdatedat"></a>`updatedAt` | [`Time!`](#time) | Updated date. |
### `PageInfo`
......@@ -11910,7 +11910,7 @@ Represents vulnerability finding of a security report on the pipeline.
| <a id="projectclusteragents"></a>`clusterAgents` | [`ClusterAgentConnection`](#clusteragentconnection) | Cluster agents associated with the project. (see [Connections](#connections)) |
| <a id="projectcodecoveragesummary"></a>`codeCoverageSummary` | [`CodeCoverageSummary`](#codecoveragesummary) | Code coverage summary associated with the project. |
| <a id="projectcomplianceframeworks"></a>`complianceFrameworks` | [`ComplianceFrameworkConnection`](#complianceframeworkconnection) | Compliance frameworks associated with the project. (see [Connections](#connections)) |
| <a id="projectcontainerexpirationpolicy"></a>`containerExpirationPolicy` | [`ContainerExpirationPolicy`](#containerexpirationpolicy) | The container expiration policy of the project. |
| <a id="projectcontainerexpirationpolicy"></a>`containerExpirationPolicy` | [`ContainerExpirationPolicy`](#containerexpirationpolicy) | Container expiration policy of the project. |
| <a id="projectcontainerregistryenabled"></a>`containerRegistryEnabled` | [`Boolean`](#boolean) | Indicates if Container Registry is enabled for the current user. |
| <a id="projectcontainerrepositoriescount"></a>`containerRepositoriesCount` | [`Int!`](#int) | Number of container repositories in the project. |
| <a id="projectcreatedat"></a>`createdAt` | [`Time`](#time) | Timestamp of the project creation. |
......@@ -11966,7 +11966,7 @@ Represents vulnerability finding of a security report on the pipeline.
| <a id="projectsshurltorepo"></a>`sshUrlToRepo` | [`String`](#string) | URL to connect to the project via SSH. |
| <a id="projectstarcount"></a>`starCount` | [`Int!`](#int) | Number of times the project has been starred. |
| <a id="projectstatistics"></a>`statistics` | [`ProjectStatistics`](#projectstatistics) | Statistics of the project. |
| <a id="projectsuggestioncommitmessage"></a>`suggestionCommitMessage` | [`String`](#string) | The commit message used to apply merge request suggestions. |
| <a id="projectsuggestioncommitmessage"></a>`suggestionCommitMessage` | [`String`](#string) | Commit message used to apply merge request suggestions. |
| <a id="projecttaglist"></a>`tagList` **{warning-solid}** | [`String`](#string) | **Deprecated** in 13.12. Use `topics`. |
| <a id="projectterraformstates"></a>`terraformStates` | [`TerraformStateConnection`](#terraformstateconnection) | Terraform states associated with the project. (see [Connections](#connections)) |
| <a id="projecttopics"></a>`topics` | [`[String!]`](#string) | List of project topics. |
......@@ -12408,7 +12408,7 @@ four standard [pagination arguments](#connection-pagination-arguments):
##### `Project.label`
A label available on this project.
Label available on this project.
Returns [`Label`](#label).
......@@ -12896,7 +12896,7 @@ The alert condition for Prometheus.
| Name | Type | Description |
| ---- | ---- | ----------- |
| <a id="prometheusalerthumanizedtext"></a>`humanizedText` | [`String!`](#string) | The human-readable text of the alert condition. |
| <a id="prometheusalerthumanizedtext"></a>`humanizedText` | [`String!`](#string) | Human-readable text of the alert condition. |
| <a id="prometheusalertid"></a>`id` | [`ID!`](#id) | ID of the alert condition. |
### `PushRules`
......@@ -12950,7 +12950,7 @@ Represents a release.
| ---- | ---- | ----------- |
| <a id="releaseassets"></a>`assets` | [`ReleaseAssets`](#releaseassets) | Assets of the release. |
| <a id="releaseauthor"></a>`author` | [`UserCore`](#usercore) | User that created the release. |
| <a id="releasecommit"></a>`commit` | [`Commit`](#commit) | The commit associated with the release. |
| <a id="releasecommit"></a>`commit` | [`Commit`](#commit) | Commit associated with the release. |
| <a id="releasecreatedat"></a>`createdAt` | [`Time`](#time) | Timestamp of when the release was created. |
| <a id="releasedescription"></a>`description` | [`String`](#string) | Description (also known as "release notes") of the release. |
| <a id="releasedescriptionhtml"></a>`descriptionHtml` | [`String`](#string) | The GitLab Flavored Markdown rendering of `description`. |
......@@ -15100,7 +15100,7 @@ Type of file the position refers to.
| Value | Description |
| ----- | ----------- |
| <a id="diffpositiontypeimage"></a>`image` | An image. |
| <a id="diffpositiontypetext"></a>`text` | A text file. |
| <a id="diffpositiontypetext"></a>`text` | Text file. |
### `DoraMetricBucketingInterval`
......@@ -15522,7 +15522,7 @@ Milestone ID wildcard values.
| Value | Description |
| ----- | ----------- |
| <a id="milestonewildcardidany"></a>`ANY` | A milestone is assigned. |
| <a id="milestonewildcardidany"></a>`ANY` | Milestone is assigned. |
| <a id="milestonewildcardidnone"></a>`NONE` | No milestone is assigned. |
| <a id="milestonewildcardidstarted"></a>`STARTED` | An open, started milestone (start date <= today). |
| <a id="milestonewildcardidupcoming"></a>`UPCOMING` | An open milestone due in the future (due date >= today). |
......@@ -16787,16 +16787,16 @@ Implementations:
| Name | Type | Description |
| ---- | ---- | ----------- |
| <a id="designfieldsdiffrefs"></a>`diffRefs` | [`DiffRefs!`](#diffrefs) | The diff refs for this design. |
| <a id="designfieldsdiffrefs"></a>`diffRefs` | [`DiffRefs!`](#diffrefs) | Diff refs for this design. |
| <a id="designfieldsevent"></a>`event` | [`DesignVersionEvent!`](#designversionevent) | How this design was changed in the current version. |
| <a id="designfieldsfilename"></a>`filename` | [`String!`](#string) | The filename of the design. |
| <a id="designfieldsfullpath"></a>`fullPath` | [`String!`](#string) | The full path to the design file. |
| <a id="designfieldsid"></a>`id` | [`ID!`](#id) | The ID of this design. |
| <a id="designfieldsimage"></a>`image` | [`String!`](#string) | The URL of the full-sized image. |
| <a id="designfieldsfilename"></a>`filename` | [`String!`](#string) | Filename of the design. |
| <a id="designfieldsfullpath"></a>`fullPath` | [`String!`](#string) | Full path to the design file. |
| <a id="designfieldsid"></a>`id` | [`ID!`](#id) | ID of this design. |
| <a id="designfieldsimage"></a>`image` | [`String!`](#string) | URL of the full-sized image. |
| <a id="designfieldsimagev432x230"></a>`imageV432x230` | [`String`](#string) | The URL of the design resized to fit within the bounds of 432x230. This will be `null` if the image has not been generated. |
| <a id="designfieldsissue"></a>`issue` | [`Issue!`](#issue) | The issue the design belongs to. |
| <a id="designfieldsnotescount"></a>`notesCount` | [`Int!`](#int) | The total count of user-created notes for this design. |
| <a id="designfieldsproject"></a>`project` | [`Project!`](#project) | The project the design belongs to. |
| <a id="designfieldsissue"></a>`issue` | [`Issue!`](#issue) | Issue the design belongs to. |
| <a id="designfieldsnotescount"></a>`notesCount` | [`Int!`](#int) | Total count of user-created notes for this design. |
| <a id="designfieldsproject"></a>`project` | [`Project!`](#project) | Project the design belongs to. |
#### `Entry`
......@@ -16828,7 +16828,7 @@ Implementations:
| Name | Type | Description |
| ---- | ---- | ----------- |
| <a id="eventableevents"></a>`events` | [`EventConnection`](#eventconnection) | A list of events associated with the object. (see [Connections](#connections)) |
| <a id="eventableevents"></a>`events` | [`EventConnection`](#eventconnection) | List of events associated with the object. (see [Connections](#connections)) |
#### `MemberInterface`
......@@ -17251,8 +17251,8 @@ Input type for DastSiteProfile authentication.
| Name | Type | Description |
| ---- | ---- | ----------- |
| <a id="diffpathsinputnewpath"></a>`newPath` | [`String`](#string) | The path of the file on the head sha. |
| <a id="diffpathsinputoldpath"></a>`oldPath` | [`String`](#string) | The path of the file on the start sha. |
| <a id="diffpathsinputnewpath"></a>`newPath` | [`String`](#string) | Path of the file on the HEAD SHA. |
| <a id="diffpathsinputoldpath"></a>`oldPath` | [`String`](#string) | Path of the file on the start SHA. |
### `DiffPositionInput`
......@@ -17434,7 +17434,7 @@ Fields that are available when modifying a release asset link.
| Name | Type | Description |
| ---- | ---- | ----------- |
| <a id="releaseassetlinkinputdirectassetpath"></a>`directAssetPath` | [`String`](#string) | Relative path for a direct asset link. |
| <a id="releaseassetlinkinputlinktype"></a>`linkType` | [`ReleaseAssetLinkType`](#releaseassetlinktype) | The type of the asset link. |
| <a id="releaseassetlinkinputlinktype"></a>`linkType` | [`ReleaseAssetLinkType`](#releaseassetlinktype) | Type of the asset link. |
| <a id="releaseassetlinkinputname"></a>`name` | [`String!`](#string) | Name of the asset link. |
| <a id="releaseassetlinkinputurl"></a>`url` | [`String!`](#string) | URL of the asset link. |
......@@ -17446,7 +17446,7 @@ Fields that are available when modifying release assets.
| Name | Type | Description |
| ---- | ---- | ----------- |
| <a id="releaseassetsinputlinks"></a>`links` | [`[ReleaseAssetLinkInput!]`](#releaseassetlinkinput) | A list of asset links to associate to the release. |
| <a id="releaseassetsinputlinks"></a>`links` | [`[ReleaseAssetLinkInput!]`](#releaseassetlinkinput) | List of asset links to associate to the release. |
### `SastCiConfigurationAnalyzersEntityInput`
......@@ -17505,8 +17505,8 @@ A time-frame defined as a closed inclusive range of two dates.
| Name | Type | Description |
| ---- | ---- | ----------- |
| <a id="timeframeend"></a>`end` | [`Date!`](#date) | The end of the range. |
| <a id="timeframestart"></a>`start` | [`Date!`](#date) | The start of the range. |
| <a id="timeframeend"></a>`end` | [`Date!`](#date) | End of the range. |
| <a id="timeframestart"></a>`start` | [`Date!`](#date) | Start of the range. |
### `UpdateDiffImagePositionInput`
......
......@@ -319,6 +319,38 @@ To configure Vale in your editor, install one of the following as appropriate:
cases, `vale` should work. To find the location, run `which vale` in a terminal.
- Vim [ALE plugin](https://github.com/dense-analysis/ale).
- Emacs [Flycheck extension](https://github.com/flycheck/flycheck).
This requires some configuration:
- `Flycheck` supports `markdownlint-cli` out of the box, but you must point it
to the `.markdownlint.yml` at the base of the project directory. A `.dir-locals.el`
file can accomplish this:
```lisp
;; Place this code in a file called `.dir-locals.el` at the root of the gitlab project.
((markdown-mode . ((flycheck-markdown-markdownlint-cli-config . ".markdownlint.yml"))))
```
- A minimal configuration for Flycheck to work with Vale could look like this:
```lisp
(flycheck-define-checker vale
"A checker for prose"
:command ("vale" "--output" "line" "--no-wrap"
source)
:standard-input nil
:error-patterns
((error line-start (file-name) ":" line ":" column ":" (id (one-or-more (not (any ":")))) ":" (message) line-end))
:modes (markdown-mode org-mode text-mode)
:next-checkers ((t . markdown-markdownlint-cli))
)
(add-to-list 'flycheck-checkers 'vale)
```
In this setup the `markdownlint` checker is set as a "next" checker from the defined `vale` checker.
Enabling this custom Vale checker provides error linting from both Vale and markdownlint.
We don't use [Vale Server](https://errata-ai.github.io/vale/#using-vale-with-a-text-editor-or-another-third-party-application).
......
......@@ -182,7 +182,7 @@ Find where your version sits in the upgrade path below, and upgrade GitLab
accordingly, while also consulting the
[version-specific upgrade instructions](#version-specific-upgrading-instructions):
`8.11.Z` -> [`8.12.0`](#upgrades-from-versions-earlier-than-812) -> `8.17.7` -> `9.5.10` -> `10.8.7` -> [`11.11.8`](#1200) -> `12.0.12` -> [`12.1.17`](#1210) -> `12.10.14` -> `13.0.14` -> [`13.1.11`](#1310) -> [latest `13.12.Z`](https://about.gitlab.com/releases/categories/releases/) -> [latest `14.0.Z`](#1400) -> [`14.1.Z`](#1410) -> [latest `14.Y.Z`](https://about.gitlab.com/releases/categories/releases/)
`8.11.Z` -> [`8.12.0`](#upgrades-from-versions-earlier-than-812) -> `8.17.7` -> `9.5.10` -> `10.8.7` -> [`11.11.8`](#1200) -> `12.0.12` -> [`12.1.17`](#1210) -> `12.10.14` -> `13.0.14` -> [`13.1.11`](#1310) -> [`13.8.3`](#1383) -> [latest `13.12.Z`](https://about.gitlab.com/releases/categories/releases/) -> [latest `14.0.Z`](#1400) -> [`14.1.Z`](#1410) -> [latest `14.Y.Z`](https://about.gitlab.com/releases/categories/releases/)
The following table, while not exhaustive, shows some examples of the supported
upgrade paths.
......@@ -190,7 +190,7 @@ upgrade paths.
| Target version | Your version | Supported upgrade path | Note |
| -------------- | ------------ | ---------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `14.1.2` | `13.9.2` | `13.9.2` -> `13.12.9` -> `14.0.7` -> `14.1.2` | Two intermediate versions are required: `13.12` and `14.0`, then `14.1`. |
| `13.5.4` | `12.9.2` | `12.9.2` -> `12.10.14` -> `13.0.14` -> `13.1.11` -> `13.5.4` | Three intermediate versions are required: `12.10`, `13.0` and `13.1`, then `13.5.4`. |
| `13.12.10` | `12.9.2` | `12.9.2` -> `12.10.14` -> `13.0.14` -> `13.1.11` -> `13.8.3` -> `13.12.10` | Four intermediate versions are required: `12.10`, `13.0`, `13.1` and `13.8.3`, then `13.12.10`. |
| `13.2.10` | `11.5.0` | `11.5.0` -> `11.11.8` -> `12.0.12` -> `12.1.17` -> `12.10.14` -> `13.0.14` -> `13.1.11` -> `13.2.10` | Six intermediate versions are required: `11.11`, `12.0`, `12.1`, `12.10`, `13.0` and `13.1`, then `13.2.10`. |
| `12.10.14` | `11.3.4` | `11.3.4` -> `11.11.8` -> `12.0.12` -> `12.1.17` -> `12.10.14` | Three intermediate versions are required: `11.11`, `12.0` and `12.1`, then `12.10.14`. |
| `12.9.5` | `10.4.5` | `10.4.5` -> `10.8.7` -> `11.11.8` -> `12.0.12` -> `12.1.17` -> `12.9.5` | Four intermediate versions are required: `10.8`, `11.11`, `12.0` and `12.1`, then `12.9.5`. |
......@@ -480,6 +480,17 @@ DETAIL: trigger trigger_0d588df444c8 on table application_settings depends on co
To work around this bug, follow the previous steps to complete the update.
More details are available [in this issue](https://gitlab.com/gitlab-org/gitlab/-/issues/324160).
### 13.8.3
GitLab 13.8 includes a background migration to address [an issue with duplicate service records](https://gitlab.com/gitlab-org/gitlab/-/issues/290008). If duplicate services are present, this background migration must complete before a unique index is applied to the services table, which was [introduced in GitLab 13.9](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/52563). Upgrades from GitLab 13.8 and earlier to later versions must include an intermediate upgrade to GitLab 13.8.3 and [must wait until the background migrations complete](#checking-for-background-migrations-before-upgrading) before proceeding.
If duplicate services are still present, an upgrade to 13.9.x or later results in a failed upgrade with the following error:
```console
PG::UniqueViolation: ERROR: could not create unique index "index_services_on_project_id_and_type_unique"
DETAIL: Key (project_id, type)=(NNN, ServiceName) is duplicated.
```
### 13.6.0
Ruby 2.7.2 is required. GitLab does not start with Ruby 2.6.6 or older versions.
......
......@@ -56,8 +56,12 @@ module DeprecationToolkitEnv
# In this case, we recommend to add a silence together with an issue to patch or update
# the dependency causing the problem.
# See https://gitlab.com/gitlab-org/gitlab/-/commit/aea37f506bbe036378998916d374966c031bf347#note_647515736
#
# - ruby/lib/grpc/generic/interceptors.rb: https://gitlab.com/gitlab-org/gitlab/-/issues/339305
def self.allowed_kwarg_warning_paths
%w[]
%w[
ruby/lib/grpc/generic/interceptors.rb
]
end
def self.configure!
......
......@@ -535,8 +535,8 @@ RSpec.describe Tooling::Graphql::Docs::Renderer do
| Name | Type | Description |
| ---- | ---- | ----------- |
| <a id="timeframeend"></a>`end` | [`Date!`](#date) | The end of the range. |
| <a id="timeframestart"></a>`start` | [`Date!`](#date) | The start of the range. |
| <a id="timeframeend"></a>`end` | [`Date!`](#date) | End of the range. |
| <a id="timeframestart"></a>`start` | [`Date!`](#date) | Start of the range. |
DOC
end
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment