From 047075f12ac7d33ecea4001879993ba9b2c7d8ec Mon Sep 17 00:00:00 2001 From: sirosen <1300022+sirosen@users.noreply.github.com> Date: Sun, 19 Jul 2026 06:36:41 +0000 Subject: [PATCH] [vendor-schemas] automated update --- CHANGELOG.rst | 3 + .../builtin_schemas/vendor/compose-spec.json | 214 ++- .../builtin_schemas/vendor/mergify.json | 1347 ++++++++++++++++- .../builtin_schemas/vendor/readthedocs.json | 7 +- .../builtin_schemas/vendor/renovate.json | 22 +- .../vendor/sha256/compose-spec.sha256 | 2 +- .../vendor/sha256/mergify.sha256 | 2 +- .../vendor/sha256/readthedocs.sha256 | 2 +- .../vendor/sha256/renovate.sha256 | 2 +- .../vendor/sha256/taskfile.sha256 | 2 +- .../builtin_schemas/vendor/taskfile.json | 35 +- 11 files changed, 1460 insertions(+), 178 deletions(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 4630b456a..79e79c09e 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -10,6 +10,9 @@ Unreleased .. vendor-insert-here +- Update vendored schemas: compose-spec, mergify, readthedocs, renovate, taskfile + (2026-07-19) + - Add a dedicated ``check-github-workflows-require-timeout`` pre-commit hook for requiring ``timeout-minutes`` on all GitHub Workflow jobs. (:issue:`639`) diff --git a/src/check_jsonschema/builtin_schemas/vendor/compose-spec.json b/src/check_jsonschema/builtin_schemas/vendor/compose-spec.json index 5db97d0fb..fe0e45d68 100644 --- a/src/check_jsonschema/builtin_schemas/vendor/compose-spec.json +++ b/src/check_jsonschema/builtin_schemas/vendor/compose-spec.json @@ -1,5 +1,5 @@ { - "$schema": "https://json-schema.org/draft-07/schema", + "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "compose_spec.json", "type": "object", "title": "Compose Specification", @@ -20,7 +20,7 @@ "include": { "type": "array", "items": { - "$ref": "#/definitions/include" + "$ref": "#/$defs/include" }, "description": "compose sub-projects to be included." }, @@ -29,7 +29,7 @@ "type": "object", "patternProperties": { "^[a-zA-Z0-9._-]+$": { - "$ref": "#/definitions/service" + "$ref": "#/$defs/service" } }, "additionalProperties": false, @@ -40,7 +40,7 @@ "type": "object", "patternProperties": { "^[a-zA-Z0-9._-]+$": { - "$ref": "#/definitions/model" + "$ref": "#/$defs/model" } }, "description": "Language models that will be used by your application." @@ -51,7 +51,7 @@ "type": "object", "patternProperties": { "^[a-zA-Z0-9._-]+$": { - "$ref": "#/definitions/network" + "$ref": "#/$defs/network" } }, "description": "Networks that are shared among multiple services." @@ -61,7 +61,7 @@ "type": "object", "patternProperties": { "^[a-zA-Z0-9._-]+$": { - "$ref": "#/definitions/volume" + "$ref": "#/$defs/volume" } }, "additionalProperties": false, @@ -72,7 +72,7 @@ "type": "object", "patternProperties": { "^[a-zA-Z0-9._-]+$": { - "$ref": "#/definitions/secret" + "$ref": "#/$defs/secret" } }, "additionalProperties": false, @@ -83,7 +83,7 @@ "type": "object", "patternProperties": { "^[a-zA-Z0-9._-]+$": { - "$ref": "#/definitions/config" + "$ref": "#/$defs/config" } }, "additionalProperties": false, @@ -94,15 +94,15 @@ "patternProperties": {"^x-": {}}, "additionalProperties": false, - "definitions": { + "$defs": { "service": { "type": "object", "description": "Configuration for a service.", "properties": { - "develop": {"$ref": "#/definitions/development"}, - "deploy": {"$ref": "#/definitions/deployment"}, - "annotations": {"$ref": "#/definitions/list_or_dict"}, + "develop": {"$ref": "#/$defs/development"}, + "deploy": {"$ref": "#/$defs/deployment"}, + "annotations": {"$ref": "#/$defs/list_or_dict"}, "attach": {"type": ["boolean", "string"]}, "build": { "description": "Configuration options for building the service's image.", @@ -115,25 +115,26 @@ "dockerfile": {"type": "string", "description": "Name of the Dockerfile to use for building the image."}, "dockerfile_inline": {"type": "string", "description": "Inline Dockerfile content to use instead of a Dockerfile from the build context."}, "entitlements": {"type": "array", "items": {"type": "string"}, "description": "List of extra privileged entitlements to grant to the build process."}, - "args": {"$ref": "#/definitions/list_or_dict", "description": "Build-time variables, specified as a map or a list of KEY=VAL pairs."}, - "ssh": {"$ref": "#/definitions/list_or_dict", "description": "SSH agent socket or keys to expose to the build. Format is either a string or a list of 'default|[=|[,]]'."}, - "labels": {"$ref": "#/definitions/list_or_dict", "description": "Labels to apply to the built image."}, + "args": {"$ref": "#/$defs/list_or_dict", "description": "Build-time variables, specified as a map or a list of KEY=VAL pairs."}, + "ssh": {"$ref": "#/$defs/list_or_dict", "description": "SSH agent socket or keys to expose to the build. Format is either a string or a list of 'default|[=|[,]]'."}, + "labels": {"$ref": "#/$defs/list_or_dict", "description": "Labels to apply to the built image."}, "cache_from": {"type": "array", "items": {"type": "string"}, "description": "List of sources the image builder should use for cache resolution"}, "cache_to": {"type": "array", "items": {"type": "string"}, "description": "Cache destinations for the build cache."}, "no_cache": {"type": ["boolean", "string"], "description": "Do not use cache when building the image."}, - "additional_contexts": {"$ref": "#/definitions/list_or_dict", "description": "Additional build contexts to use, specified as a map of name to context path or URL."}, + "no_cache_filter": {"$ref": "#/$defs/string_or_list", "description": "Do not use build cache for the specified stages."}, + "additional_contexts": {"$ref": "#/$defs/list_or_dict", "description": "Additional build contexts to use, specified as a map of name to context path or URL."}, "network": {"type": "string", "description": "Network mode to use for the build. Options include 'default', 'none', 'host', or a network name."}, "provenance": {"type": ["string","boolean"], "description": "Add a provenance attestation"}, "sbom": {"type": ["string","boolean"], "description": "Add a SBOM attestation"}, "pull": {"type": ["boolean", "string"], "description": "Always attempt to pull a newer version of the image."}, "target": {"type": "string", "description": "Build stage to target in a multi-stage Dockerfile."}, "shm_size": {"type": ["integer", "string"], "description": "Size of /dev/shm for the build container. A string value can use suffix like '2g' for 2 gigabytes."}, - "extra_hosts": {"$ref": "#/definitions/extra_hosts", "description": "Add hostname mappings for the build container."}, + "extra_hosts": {"$ref": "#/$defs/extra_hosts", "description": "Add hostname mappings for the build container."}, "isolation": {"type": "string", "description": "Container isolation technology to use for the build process."}, "privileged": {"type": ["boolean", "string"], "description": "Give extended privileges to the build container."}, - "secrets": {"$ref": "#/definitions/service_config_or_secret", "description": "Secrets to expose to the build. These are accessible at build-time."}, + "secrets": {"$ref": "#/$defs/service_config_or_secret", "description": "Secrets to expose to the build. These are accessible at build-time."}, "tags": {"type": "array", "items": {"type": "string"}, "description": "Additional tags to apply to the built image."}, - "ulimits": {"$ref": "#/definitions/ulimits", "description": "Override the default ulimits for the build container."}, + "ulimits": {"$ref": "#/$defs/ulimits", "description": "Override the default ulimits for the build container."}, "platforms": {"type": "array", "items": {"type": "string"}, "description": "Platforms to build for, e.g., 'linux/amd64', 'linux/arm64', or 'windows/amd64'."} }, "additionalProperties": false, @@ -148,22 +149,22 @@ "device_read_bps": { "type": "array", "description": "Limit read rate (bytes per second) from a device.", - "items": {"$ref": "#/definitions/blkio_limit"} + "items": {"$ref": "#/$defs/blkio_limit"} }, "device_read_iops": { "type": "array", "description": "Limit read rate (IO per second) from a device.", - "items": {"$ref": "#/definitions/blkio_limit"} + "items": {"$ref": "#/$defs/blkio_limit"} }, "device_write_bps": { "type": "array", "description": "Limit write rate (bytes per second) to a device.", - "items": {"$ref": "#/definitions/blkio_limit"} + "items": {"$ref": "#/$defs/blkio_limit"} }, "device_write_iops": { "type": "array", "description": "Limit write rate (IO per second) to a device.", - "items": {"$ref": "#/definitions/blkio_limit"} + "items": {"$ref": "#/$defs/blkio_limit"} }, "weight": { "type": ["integer", "string"], @@ -172,7 +173,7 @@ "weight_device": { "type": "array", "description": "Block IO weight (relative weight) for specific devices.", - "items": {"$ref": "#/definitions/blkio_weight"} + "items": {"$ref": "#/$defs/blkio_weight"} } }, "additionalProperties": false @@ -199,11 +200,11 @@ "description": "Specify an optional parent cgroup for the container." }, "command": { - "$ref": "#/definitions/command", + "$ref": "#/$defs/command", "description": "Override the default command declared by the container image, for example 'CMD' in Dockerfile." }, "configs": { - "$ref": "#/definitions/service_config_or_secret", + "$ref": "#/$defs/service_config_or_secret", "description": "Grant access to Configs on a per-service basis." }, "container_name": { @@ -275,7 +276,7 @@ }, "depends_on": { "oneOf": [ - {"$ref": "#/definitions/list_of_strings"}, + {"$ref": "#/$defs/list_of_strings"}, { "type": "object", "additionalProperties": false, @@ -308,7 +309,7 @@ "description": "Express dependency between services. Service dependencies cause services to be started in dependency order. The dependent service will wait for the dependency to be ready before starting." }, "device_cgroup_rules": { - "$ref": "#/definitions/list_of_strings", + "$ref": "#/$defs/list_of_strings", "description": "Add rules to the cgroup allowed devices list." }, "devices": { @@ -341,7 +342,7 @@ } }, "dns": { - "$ref": "#/definitions/string_or_list", + "$ref": "#/$defs/string_or_list", "description": "Custom DNS servers to set for the service container." }, "dns_opt": { @@ -351,7 +352,7 @@ "description": "Custom DNS options to be passed to the container's DNS resolver." }, "dns_search": { - "$ref": "#/definitions/string_or_list", + "$ref": "#/$defs/string_or_list", "description": "Custom DNS search domains to set on the service container." }, "domainname": { @@ -359,19 +360,19 @@ "description": "Custom domain name to use for the service container." }, "entrypoint": { - "$ref": "#/definitions/command", + "$ref": "#/$defs/command", "description": "Override the default entrypoint declared by the container image, for example 'ENTRYPOINT' in Dockerfile." }, "env_file": { - "$ref": "#/definitions/env_file", + "$ref": "#/$defs/env_file", "description": "Add environment variables from a file or multiple files. Can be a single file path or a list of file paths." }, "label_file": { - "$ref": "#/definitions/label_file", + "$ref": "#/$defs/label_file", "description": "Add metadata to containers using files containing Docker labels." }, "environment": { - "$ref": "#/definitions/list_or_dict", + "$ref": "#/$defs/list_or_dict", "description": "Add environment variables. You can use either an array or a list of KEY=VAL pairs." }, "expose": { @@ -433,11 +434,11 @@ "description": "Link to services started outside this Compose application. Specify services as :." }, "extra_hosts": { - "$ref": "#/definitions/extra_hosts", + "$ref": "#/$defs/extra_hosts", "description": "Add hostname mappings to the container network interface configuration." }, "gpus": { - "$ref": "#/definitions/gpus", + "$ref": "#/$defs/gpus", "description": "Define GPU devices to use. Can be set to 'all' to use all GPUs, or a list of specific GPU devices." }, "group_add": { @@ -449,7 +450,7 @@ "description": "Add additional groups which user inside the container should be member of." }, "healthcheck": { - "$ref": "#/definitions/healthcheck", + "$ref": "#/$defs/healthcheck", "description": "Configure a health check for the container to monitor its health status." }, "hostname": { @@ -473,7 +474,7 @@ "description": "Container isolation technology to use. Supported values are platform-specific." }, "labels": { - "$ref": "#/definitions/list_or_dict", + "$ref": "#/$defs/list_or_dict", "description": "Add metadata to containers using Docker labels. You can use either an array or a list." }, "links": { @@ -527,23 +528,28 @@ }, "models": { "oneOf": [ - {"$ref": "#/definitions/list_of_strings"}, + {"$ref": "#/$defs/list_of_strings"}, {"type": "object", "patternProperties": { "^[a-zA-Z0-9._-]+$": { - "type": "object", - "properties": { - "endpoint_var": { - "type": "string", - "description": "Environment variable set to AI model endpoint." + "oneOf": [ + { + "type": "object", + "properties": { + "endpoint_var": { + "type": "string", + "description": "Environment variable set to AI model endpoint." + }, + "model_var": { + "type": "string", + "description": "Environment variable set to AI model name." + } + }, + "additionalProperties": false, + "patternProperties": {"^x-": {}} }, - "model_var": { - "type": "string", - "description": "Environment variable set to AI model name." - } - }, - "additionalProperties": false, - "patternProperties": {"^x-": {}} + {"type": "null"} + ] } } } @@ -552,7 +558,7 @@ }, "networks": { "oneOf": [ - {"$ref": "#/definitions/list_of_strings"}, + {"$ref": "#/$defs/list_of_strings"}, { "type": "object", "patternProperties": { @@ -562,7 +568,7 @@ "type": "object", "properties": { "aliases": { - "$ref": "#/definitions/list_of_strings", + "$ref": "#/$defs/list_of_strings", "description": "Alternative hostnames for this service on the network." }, "interface_name": { @@ -578,7 +584,7 @@ "description": "Specify a static IPv6 address for this service on this network." }, "link_local_ips": { - "$ref": "#/definitions/list_of_strings", + "$ref": "#/$defs/list_of_strings", "description": "List of link-local IPs." }, "mac_address": { @@ -682,14 +688,19 @@ }, "uniqueItems": true }, + "pre_start": { + "type": "array", + "items": {"$ref": "#/$defs/pre_start_hook"}, + "description": "Init containers to run to completion before the service container is started. Each step runs in its own ephemeral container, in declared order; a non-zero exit fails the bring-up of the service and its dependents." + }, "post_start": { "type": "array", - "items": {"$ref": "#/definitions/service_hook"}, + "items": {"$ref": "#/$defs/service_hook"}, "description": "Commands to run after the container starts. If any command fails, the container stops." }, "pre_stop": { "type": "array", - "items": {"$ref": "#/definitions/service_hook"}, + "items": {"$ref": "#/$defs/service_hook"}, "description": "Commands to run before the container stops. If any command fails, the container stop is aborted." }, "privileged": { @@ -697,7 +708,7 @@ "description": "Give extended privileges to the service container." }, "profiles": { - "$ref": "#/definitions/list_of_strings", + "$ref": "#/$defs/list_of_strings", "description": "List of profiles for this service. When profiles are specified, services are only started when the profile is activated." }, "pull_policy": { @@ -736,11 +747,11 @@ "description": "Size of /dev/shm. A string value can use suffix like '2g' for 2 gigabytes." }, "secrets": { - "$ref": "#/definitions/service_config_or_secret", + "$ref": "#/$defs/service_config_or_secret", "description": "Grant access to Secrets on a per-service basis." }, "sysctls": { - "$ref": "#/definitions/list_or_dict", + "$ref": "#/$defs/list_or_dict", "description": "Kernel parameters to set in the container. You can use either an array or a list." }, "stdin_open": { @@ -760,7 +771,7 @@ "description": "Storage driver options for the container." }, "tmpfs": { - "$ref": "#/definitions/string_or_list", + "$ref": "#/$defs/string_or_list", "description": "Mount a temporary filesystem (tmpfs) into the container. Can be a single value or a list." }, "tty": { @@ -768,7 +779,7 @@ "description": "Allocate a pseudo-TTY to service container." }, "ulimits": { - "$ref": "#/definitions/ulimits", + "$ref": "#/$defs/ulimits", "description": "Override the default ulimits for a container." }, "use_api_socket": { @@ -849,7 +860,7 @@ "description": "Configuration specific to volume mounts.", "properties": { "labels": { - "$ref": "#/definitions/list_or_dict", + "$ref": "#/$defs/list_or_dict", "description": "Labels to apply to the volume." }, "nocopy": { @@ -969,11 +980,11 @@ "required": ["path", "action"], "properties": { "ignore": { - "$ref": "#/definitions/string_or_list", + "$ref": "#/$defs/string_or_list", "description": "Patterns to exclude from watching." }, "include": { - "$ref": "#/definitions/string_or_list", + "$ref": "#/$defs/string_or_list", "description": "Patterns to include in watching." }, "path": { @@ -990,7 +1001,7 @@ "description": "Target path in the container for sync operations." }, "exec": { - "$ref": "#/definitions/service_hook", + "$ref": "#/$defs/service_hook", "description": "Command to execute when a change is detected and action is sync+exec." }, "initial_sync": { @@ -1023,7 +1034,7 @@ "description": "Number of replicas of the service container to run." }, "labels": { - "$ref": "#/definitions/list_or_dict", + "$ref": "#/$defs/list_or_dict", "description": "Labels to apply to the service." }, "rollback_config": { @@ -1129,11 +1140,11 @@ "description": "Reservation on the amount of memory a container can allocate (e.g., '1g', '1024m')." }, "generic_resources": { - "$ref": "#/definitions/generic_resources", + "$ref": "#/$defs/generic_resources", "description": "User-defined resources to reserve." }, "devices": { - "$ref": "#/definitions/devices", + "$ref": "#/$defs/devices", "description": "Device reservations for the container." } }, @@ -1240,7 +1251,7 @@ "type": "object", "properties": { "capabilities": { - "$ref": "#/definitions/list_of_strings", + "$ref": "#/$defs/list_of_strings", "description": "List of capabilities the device needs to have (e.g., 'gpu', 'compute', 'utility')." }, "count": { @@ -1248,7 +1259,7 @@ "description": "Number of devices of this type to reserve." }, "device_ids": { - "$ref": "#/definitions/list_of_strings", + "$ref": "#/$defs/list_of_strings", "description": "List of specific device IDs to reserve." }, "driver": { @@ -1256,7 +1267,7 @@ "description": "Device driver to use (e.g., 'nvidia')." }, "options": { - "$ref": "#/definitions/list_or_dict", + "$ref": "#/$defs/list_or_dict", "description": "Driver-specific options for the device." } }, @@ -1282,7 +1293,7 @@ "type": "object", "properties": { "capabilities": { - "$ref": "#/definitions/list_of_strings", + "$ref": "#/$defs/list_of_strings", "description": "List of capabilities the GPU needs to have (e.g., 'compute', 'utility')." }, "count": { @@ -1290,7 +1301,7 @@ "description": "Number of GPUs to use." }, "device_ids": { - "$ref": "#/definitions/list_of_strings", + "$ref": "#/$defs/list_of_strings", "description": "List of specific GPU device IDs to use." }, "driver": { @@ -1298,7 +1309,7 @@ "description": "GPU driver to use (e.g., 'nvidia')." }, "options": { - "$ref": "#/definitions/list_or_dict", + "$ref": "#/$defs/list_or_dict", "description": "Driver-specific options for the GPU." } } @@ -1317,11 +1328,11 @@ "type": "object", "properties": { "path": { - "$ref": "#/definitions/string_or_list", + "$ref": "#/$defs/string_or_list", "description": "Path to the Compose application or sub-project files to include." }, "env_file": { - "$ref": "#/definitions/string_or_list", + "$ref": "#/$defs/string_or_list", "description": "Path to the environment files to use to define default values when interpolating variables in the Compose files being parsed." }, "project_directory": { @@ -1430,7 +1441,7 @@ "description": "If true, standalone containers can attach to this network." }, "labels": { - "$ref": "#/definitions/list_or_dict", + "$ref": "#/$defs/list_or_dict", "description": "Add metadata to the network using labels." } }, @@ -1471,7 +1482,7 @@ "patternProperties": {"^x-": {}} }, "labels": { - "$ref": "#/definitions/list_or_dict", + "$ref": "#/$defs/list_or_dict", "description": "Add metadata to the volume using labels." } }, @@ -1506,7 +1517,7 @@ } }, "labels": { - "$ref": "#/definitions/list_or_dict", + "$ref": "#/$defs/list_or_dict", "description": "Add metadata to the secret using labels." }, "driver": { @@ -1561,7 +1572,7 @@ } }, "labels": { - "$ref": "#/definitions/list_or_dict", + "$ref": "#/$defs/list_or_dict", "description": "Add metadata to the config using labels." }, "template_driver": { @@ -1626,7 +1637,7 @@ "description": "Configuration for service lifecycle hooks, which are commands executed at specific points in a container's lifecycle.", "properties": { "command": { - "$ref": "#/definitions/command", + "$ref": "#/$defs/command", "description": "Command to execute as part of the hook." }, "user": { @@ -1642,7 +1653,7 @@ "description": "Working directory for the command." }, "environment": { - "$ref": "#/definitions/list_or_dict", + "$ref": "#/$defs/list_or_dict", "description": "Environment variables for the command." } }, @@ -1651,6 +1662,43 @@ "required": ["command"] }, + "pre_start_hook": { + "type": "object", + "description": "Configuration for a pre_start init container, run to completion before the service container starts.", + "properties": { + "command": { + "$ref": "#/$defs/command", + "description": "Command to execute. Optional when the chosen image's entrypoint already runs the intended command." + }, + "image": { + "type": "string", + "description": "Image used for the ephemeral container. If omitted, the parent service's image is used." + }, + "user": { + "type": "string", + "description": "User to run the command as. Defaults to the user declared in image (or to the service's user when image is omitted)." + }, + "privileged": { + "type": ["boolean", "string"], + "description": "Whether to run the command with extended privileges." + }, + "working_dir": { + "type": "string", + "description": "Working directory for the command. Defaults to the service's working directory." + }, + "environment": { + "$ref": "#/$defs/list_or_dict", + "description": "Environment variables for the command. Appended to or overriding the service environment." + }, + "per_replica": { + "type": ["boolean", "string"], + "description": "Whether the hook runs once per service replica (true), or once for the service as a whole before any replica starts (false, the default)." + } + }, + "additionalProperties": false, + "patternProperties": {"^x-": {}} + }, + "env_file": { "oneOf": [ { @@ -1719,7 +1767,7 @@ "description": "A single string value." }, { - "$ref": "#/definitions/list_of_strings", + "$ref": "#/$defs/list_of_strings", "description": "A list of string values." } ], diff --git a/src/check_jsonschema/builtin_schemas/vendor/mergify.json b/src/check_jsonschema/builtin_schemas/vendor/mergify.json index a0354a378..d235c340a 100644 --- a/src/check_jsonschema/builtin_schemas/vendor/mergify.json +++ b/src/check_jsonschema/builtin_schemas/vendor/mergify.json @@ -493,6 +493,33 @@ "title": "BackportActionModel", "type": "object" }, + "BarrierFileFilters": { + "additionalProperties": false, + "properties": { + "include": { + "description": "Glob patterns of files that impact every scope. At least one pattern is required. Examples: ('.github/workflows/**', 'Makefile')", + "items": { + "type": "string" + }, + "minItems": 1, + "title": "Include", + "type": "array" + }, + "exclude": { + "description": "Glob patterns of files to exclude from this scope. Evaluated after `include` and takes precedence. Examples: ('**/tests/**', '*.md')", + "items": { + "type": "string" + }, + "title": "Exclude", + "type": "array" + } + }, + "required": [ + "include" + ], + "title": "BarrierFileFilters", + "type": "object" + }, "BatchSizeBounds": { "anyOf": [ { @@ -1617,8 +1644,13 @@ "type": "null" } ], + "configuration_deprecated_attribute": { + "deprecated_summary_ghes_mode": "`commit_message_template` is deprecated and will be removed on 2026-09-30. Use the declarative `commit_message_format` instead: https://docs.mergify.com/workflow/actions/merge#migrating-from-commit_message_template", + "deprecated_summary_saas_mode": "`commit_message_template` is deprecated and will be removed on 2026-09-30. Use the declarative `commit_message_format` instead: https://docs.mergify.com/workflow/actions/merge#migrating-from-commit_message_template" + }, "default": null, - "description": "Template to use as the commit message when using the merge or squash merge method.", + "deprecated": true, + "description": "Template to use as the commit message when using the merge or squash merge method. Deprecated: use `commit_message_format` instead.", "title": "Commit Message Template" }, "commit_message_format": { @@ -1802,7 +1834,7 @@ }, "mode": { "default": "serial", - "description": "Defines how the merge queue schedules pull requests.\n- `serial`: PRs are tested cumulatively.\n- `parallel`: PRs whose scopes don't overlap are tested in parallel.\n- `isolated`: PRs are grouped into batches by changed-files similarity; each batch runs as a fully isolated car, with no dependency on any other batch.\n", + "description": "Defines how the merge queue schedules pull requests.\n- `serial`: PRs are tested cumulatively.\n- `parallel`: PRs whose scopes don't overlap are tested in parallel.\n- `isolated`: PRs are grouped into batches by changed-files similarity; each batch runs as a fully isolated batch, with no dependency on any other batch.\n", "enum": [ "serial", "parallel", @@ -1979,7 +2011,7 @@ "title": "Priority" }, "allow_checks_interruption": { - "default": true, + "default": false, "description": "Allow interrupting the ongoing checks when the pull request entering the queue has a higher priority than the queued one(s). If set to false, a pull request with higher priority will be inserted just after the pull requests that have checks running.", "title": "Allow Checks Interruption", "type": "boolean" @@ -2005,37 +2037,79 @@ "draft": { "description": "Whether the pull request is in draft state.", "title": "Draft", - "type": "boolean" + "type": "boolean", + "x-allowed-operators": [], + "x-modifiers": [ + { + "type": "negate" + } + ] }, "merged": { "description": "Whether the pull request is merged.", "title": "Merged", - "type": "boolean" + "type": "boolean", + "x-allowed-operators": [], + "x-modifiers": [ + { + "type": "negate" + } + ] }, "mergify-configuration-changed": { "description": "Whether the pull request contains changes in the configuration file.", "title": "Mergify configuration changed", - "type": "boolean" + "type": "boolean", + "x-allowed-operators": [], + "x-modifiers": [ + { + "type": "negate" + } + ] }, "closed": { "description": "Whether the pull request is closed.", "title": "Closed", - "type": "boolean" + "type": "boolean", + "x-allowed-operators": [], + "x-modifiers": [ + { + "type": "negate" + } + ] }, "locked": { "description": "Whether the pull request is locked.", "title": "Locked", - "type": "boolean" + "type": "boolean", + "x-allowed-operators": [], + "x-modifiers": [ + { + "type": "negate" + } + ] }, "linear-history": { "description": "Whether the pull request commits history is linear (no merge commit).", "title": "Linear history", - "type": "boolean" + "type": "boolean", + "x-allowed-operators": [], + "x-modifiers": [ + { + "type": "negate" + } + ] }, "conflict": { "description": "Whether the pull request is conflicting with its base branch.", "title": "Conflict", - "type": "boolean" + "type": "boolean", + "x-allowed-operators": [], + "x-modifiers": [ + { + "type": "negate" + } + ] }, "github-review-decision": { "anyOf": [ @@ -2052,44 +2126,145 @@ } ], "description": "The review decision computed by GitHub from its `pullRequest.reviewDecision` field, driven by either classic branch protection or repository / organization rulesets. Typically reflects whether required approvals and `CODEOWNERS` reviews have been satisfied.", - "title": "GitHub review decision" + "title": "GitHub review decision", + "x-allowed-operators": [ + "=", + "!=", + "~=" + ], + "x-mergify-attribute-metadata": { + "documentation_url": "https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches#require-pull-request-reviews-before-merging", + "source": "github" + }, + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "github-require-review-from-specific-teams": { "description": "Whether every `required_reviewers` entry on the branch's active GitHub rulesets is satisfied (each named team has the requested number of approvals, each named user has approved). When the rule scopes the requirement to a subset of files via `file_patterns`, the check only applies to PRs that touch a matching file. Returns `false` if an entry references a team or user id that cannot be resolved.", "title": "GitHub require review from specific teams", - "type": "boolean" + "type": "boolean", + "x-allowed-operators": [], + "x-mergify-attribute-metadata": { + "documentation_url": "https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/available-rules-for-rulesets#required-reviewers", + "source": "github" + }, + "x-modifiers": [ + { + "type": "negate" + } + ] }, "github-code-owner-review-satisfied": { "description": "Whether every file the pull request touches that is owned in the repository's `CODEOWNERS` file has at least one approval from one of its owners (a user, or any member of an owning team). Mirrors GitHub's 'Require review from Code Owners', covering the case where GitHub blocks the merge on a code-owner review while `pullRequest.reviewDecision` is `null`. Returns `true` when there is no `CODEOWNERS` file or no touched file is owned, and `false` when an owner cannot be resolved to a GitHub login (an email address, or a team in another org).", "title": "GitHub code owner review satisfied", - "type": "boolean" + "type": "boolean", + "x-allowed-operators": [], + "x-mergify-attribute-metadata": { + "documentation_url": "https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners", + "source": "github" + }, + "x-modifiers": [ + { + "type": "negate" + } + ] }, "github-review-approved": { "description": "Whether GitHub's effective review enforcement is satisfied: the required approvals are in and no eligible reviewer is blocking with an active 'Request changes'. When the rule requires at least one approval, this mirrors GitHub's `pullRequest.reviewDecision` (so a blocking review from a reviewer other than the approver is honored, unlike a bare approval count). When the rule requires a pull request with no approval count, it blocks only on a write+ reviewer's active 'Request changes'. Returns `true` when no rule on the base branch requires a review.", "title": "GitHub review approved", - "type": "boolean" + "type": "boolean", + "x-allowed-operators": [], + "x-mergify-attribute-metadata": { + "documentation_url": "https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches#require-pull-request-reviews-before-merging", + "source": "github" + }, + "x-modifiers": [ + { + "type": "negate" + } + ] }, "github-require-last-push-approval": { "description": "Whether GitHub's 'Require approval of the most recent reviewable push' is satisfied: the required number of approvals are in from reviewers other than the user who pushed the most recent commit, and approvals submitted against an earlier head no longer count. Mirrors how GitHub's `pullRequest.reviewDecision` evaluates the `require_last_push_approval` branch protection / ruleset option. Returns `true` when no rule on the base branch requires last-push approval, and (leniently) when Mergify has not recorded the most recent push, such as pull requests opened before push tracking.", "title": "GitHub require last push approval", - "type": "boolean" + "type": "boolean", + "x-allowed-operators": [], + "x-mergify-attribute-metadata": { + "documentation_url": "https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches#require-pull-request-reviews-before-merging", + "source": "github" + }, + "x-modifiers": [ + { + "type": "negate" + } + ] }, "number": { "description": "The pull request number.", "maximum": 9223372036854775807, "minimum": 0, "title": "Number", - "type": "integer" + "type": "integer", + "x-allowed-operators": [ + "=", + "!=", + ">=", + "<=", + "<", + ">" + ], + "x-modifiers": [ + { + "type": "negate" + } + ] }, "queue-position": { "description": "The position of the pull request in its queue if queued. The first pull request in the queue has position 0. The value is set to -1 if the pull request is not queued.", "title": "Queue position", - "type": "integer" + "type": "integer", + "x-allowed-operators": [ + "=", + "!=", + ">=", + "<=", + "<", + ">" + ], + "x-modifiers": [ + { + "type": "negate" + } + ] }, "author": { "description": "The GitHub user or team login of the author of the pull request.", "title": "Author", - "type": "string" + "type": "string", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "merged-by": { "anyOf": [ @@ -2101,7 +2276,25 @@ } ], "description": "The GitHub user that merged the pull request.", - "title": "Merged by" + "title": "Merged by", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "merge-commit-sha": { "anyOf": [ @@ -2113,7 +2306,25 @@ } ], "description": "The merge commit SHA of the pull request returned by GitHub.", - "title": "Merge commit sha" + "title": "Merge commit sha", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "milestone": { "anyOf": [ @@ -2125,47 +2336,208 @@ } ], "description": "The milestone title associated to the pull request.", - "title": "Milestone" + "title": "Milestone", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "base": { "description": "The name of the branch the pull request should be pulled into.", "title": "Base", - "type": "string" + "type": "string", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "head": { "description": "The name of the branch where the pull request changes are implemented.", "title": "Head", - "type": "string" + "type": "string", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "head-repo-full-name": { "description": "The head branch repository full name (complete version with the organization name).", "title": "Head repo full name", - "type": "string" + "type": "string", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "title": { "description": "The title of the pull request.", "title": "Title", - "type": "string" + "type": "string", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "body": { "description": "The content of the pull request description without Markdown/HTML comments.", "title": "Body", - "type": "string" + "type": "string", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "body-raw": { "description": "The content of the pull request description.", "title": "Body raw", - "type": "string" + "type": "string", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "repository-name": { "description": "The current repository name (short version without the organization name).", "title": "Repository name", - "type": "string" + "type": "string", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "repository-full-name": { "description": "The current repository full name (complete version with the organization name).", "title": "Repository full name", - "type": "string" + "type": "string", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "queue-dequeue-reason": { "anyOf": [ @@ -2191,6 +2563,7 @@ "SPECULATIVE_CHECK_NUMBER_REDUCED", "CHECKS_TIMEOUT", "CHECKS_FAILED", + "DROPPED_BY_BISECTION_ELIMINATION", "QUEUE_RULE_MISSING", "BASE_BRANCH_MISSING", "BASE_BRANCH_CHANGED", @@ -2215,7 +2588,8 @@ "INTERMEDIATE_RESULTS_SKIPPED", "CHECKS_RETRIED", "SCHEDULE_BLOCKED_AHEAD_YIELDED", - "BASE_REF_ALIGNMENT_TIMEOUT" + "BASE_REF_ALIGNMENT_TIMEOUT", + "GITHUB_STACKED_PULL_REQUEST_MERGE_UNSUPPORTED" ], "type": "string" }, @@ -2223,8 +2597,62 @@ "type": "null" } ], - "description": "A dequeue code for when a pull request has been dequeued from the merge queue.", - "title": "Queue dequeue reason" + "description": "The code identifying why a pull request's merge queue checks ended \u2014 the pull request may have left the queue, or had its checks interrupted while staying in the queue.", + "title": "Queue dequeue reason", + "x-allowed-operators": [ + "=", + "!=", + "~=" + ], + "x-enum-descriptions": { + "BASE_BRANCH_CHANGED": "The pull request's base branch changed.", + "BASE_BRANCH_MISSING": "The pull request's base branch no longer exists.", + "BASE_REF_ALIGNMENT_TIMEOUT": "The pull request could not be retargeted onto the queue base branch, for example a stacked pull request GitHub never retargeted.", + "BATCH_AHEAD_FAILED": "A batch ahead in the queue failed, so this pull request's speculative checks are restarted. It stays in the queue.", + "BATCH_MAX_FAILURE_RESOLUTION_ATTEMPTS": "The maximum number of `batch_max_failure_resolution_attempts` was reached while isolating a batch failure.", + "BATCH_PULL_REQUEST_CLOSED": "The merge queue batch pull request was closed.", + "BRANCH_UPDATE_FAILED": "Updating the pull request's head branch failed.", + "CHECKS_FAILED": "The queue conditions cannot be satisfied because required checks failed.", + "CHECKS_RETRIED": "The pull request's failed checks are being retried. It stays in the queue.", + "CHECKS_TIMEOUT": "The configured `checks_timeout` was reached before the queue conditions were satisfied.", + "CONFIGURATION_CHANGED": "The Mergify configuration changed while the pull request was queued.", + "CONFLICT_WITH_BASE_BRANCH": "The pull request conflicts with its base branch.", + "CONFLICT_WITH_PULL_AHEAD": "The pull request conflicts with a pull request ahead of it in the queue.", + "DRAFT_PULL_REQUEST_CHANGED": "The merge queue draft pull request received commits that Mergify did not create.", + "DRAFT_PULL_REQUEST_CREATION_BRANCH_NOT_INDEXED": "Mergify could not create the merge queue draft pull request because GitHub had not yet indexed the new branch.", + "DRAFT_PULL_REQUEST_CREATION_FAILED": "Mergify could not create the merge queue draft pull request.", + "DROPPED_BY_BISECTION_ELIMINATION": "Batch bisection isolated the failure to other pull requests and dropped this one without testing it individually.", + "GITHUB_STACKED_PULL_REQUEST_MERGE_UNSUPPORTED": "The pull request is a GitHub stacked pull request, which GitHub does not support merging through its API.", + "INCOMPATIBILITY_WITH_BRANCH_PROTECTIONS": "The pull request cannot be checked because of an incompatibility between the queue and the repository's branch protections.", + "INTERMEDIATE_RESULTS_SKIPPED": "The pull request's intermediate speculative results were skipped. It stays in the queue.", + "MERGE_QUEUE_RESET": "The merge queue was reset.", + "NONE": "The pull request is not, and never was, in a merge queue.", + "PR_AHEAD_DEQUEUED": "A pull request ahead in the queue was removed, so this pull request's speculative checks are restarted. It stays in the queue.", + "PR_CHECKS_STOPPED_BECAUSE_MERGE_QUEUE_PAUSE": "The pull request's checks were interrupted because the merge queue is paused on the repository. It stays in the queue.", + "PR_DEQUEUED": "The pull request was removed from the queue, for example because its queue conditions no longer match.", + "PR_DEQUEUED_FROM_PARTITION": "The pull request stopped matching a partition's rules and was removed from that partition.", + "PR_MANUALLY_DEQUEUED": "The pull request was removed from the queue by a `dequeue` command.", + "PR_MANUALLY_MERGED": "The pull request was merged manually, outside of the merge queue.", + "PR_MERGED": "The pull request was merged by the merge queue.", + "PR_MERGED_INTERMEDIATE_RESULTS_SKIPPED": "The pull request was merged based on the successful result of a later pull request in the same speculative batch, skipping its own intermediate checks.", + "PR_UNEXPECTEDLY_FAILED_TO_MERGE": "An unexpected error happened while merging the pull request.", + "PR_WITH_HIGHER_PRIORITY_QUEUED": "A higher-priority pull request was queued ahead of this one. It stays in the queue.", + "PULL_REQUEST_UPDATED": "The pull request was manually updated.", + "QUEUE_RULE_MISSING": "The queue rule referenced by the pull request no longer exists in the configuration.", + "SCHEDULED_FREEZE_STATUS_CHANGED": "A scheduled queue freeze changed the freeze status of the batch's pull requests, so the batch was split. It stays in the queue.", + "SCHEDULE_BLOCKED_AHEAD_YIELDED": "A pull request ahead that was waiting for its merge schedule yielded its position so ready pull requests behind it can merge first. It stays in the queue.", + "SPECULATIVE_CHECK_NUMBER_REDUCED": "The number of speculative checks was reduced. The pull request stays in the queue.", + "STACK_PREDECESSOR_DEQUEUED": "A predecessor pull request in the same stack was dequeued, so this one was removed as well.", + "UNPROCESSABLE_PULL_REQUEST": "Mergify cannot process the pull request, for example because it has too many check runs, comments, or files." + }, + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "queue-name": { "anyOf": [ @@ -2236,7 +2664,25 @@ } ], "description": "The name of the queue containing the pull request.", - "title": "Queue name" + "title": "Queue name", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "assignee": { "description": "The list of GitHub user or team login that are assigned to the pull request. Team logins are prefixed with the `@` character and must belong to the repository organization.", @@ -2244,7 +2690,25 @@ "type": "string" }, "title": "Assignee", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "label": { "description": "The list of labels of the pull request.", @@ -2252,7 +2716,25 @@ "type": "string" }, "title": "Label", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "review-requested": { "description": "The list of GitHub user or team login that were requested to review the pull request. Team logins are prefixed with the @ character. This only matches reviewers with `admin`, `write` or `maintain` permission on the repository.", @@ -2260,7 +2742,25 @@ "type": "string" }, "title": "Review requested", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "approved-reviews-by": { "description": "The list of GitHub user or team login that approved the pull request. Team logins are prefixed with the `@` character and must belong to the repository organization. This only matches reviewers with `admin`, `write` or `maintain` permission on the repository.", @@ -2268,7 +2768,25 @@ "type": "string" }, "title": "Approved reviews by", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "dismissed-reviews-by": { "description": "The list of GitHub user login that have their review dismissed in the pull request.", @@ -2276,7 +2794,25 @@ "type": "string" }, "title": "Dismissed reviews by", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "changes-requested-reviews-by": { "description": "The list of GitHub user or team login that have requested changes in a review for the pull request.", @@ -2284,7 +2820,25 @@ "type": "string" }, "title": "Changes requested reviews by", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "commented-reviews-by": { "description": "The list of GitHub user that have commented in a review for the pull request. This only matches reviewers with `admin`, `write` or `maintain` permission on the repository.", @@ -2292,7 +2846,25 @@ "type": "string" }, "title": "Commented reviews by", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "check-success": { "description": "The list of checks that successfully passed for the pull request.", @@ -2300,7 +2872,25 @@ "type": "string" }, "title": "Check success", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "check-failure": { "description": "The list of checks that failed for the pull request. Checks that report being cancelled, timed out, and action required are also considered as failures.", @@ -2308,7 +2898,25 @@ "type": "string" }, "title": "Check failure", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "check-neutral": { "description": "The list of checks that are neutral for the pull request. ", @@ -2316,7 +2924,25 @@ "type": "string" }, "title": "Check neutral", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "check-timed-out": { "description": "The list of checks that timed out for the pull request.", @@ -2324,7 +2950,25 @@ "type": "string" }, "title": "Check timed out", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "check-skipped": { "description": "The list of checks that was skipped for the pull request.", @@ -2332,7 +2976,25 @@ "type": "string" }, "title": "Check skipped", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "check-cancelled": { "description": "The list of checks that were cancelled for the pull request. Cancelled checks are also matched by `check-failure`; use `check-cancelled` to address them independently.", @@ -2340,7 +3002,25 @@ "type": "string" }, "title": "Check cancelled", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "check-pending": { "description": "The list of checks that are pending for the pull request.", @@ -2348,7 +3028,25 @@ "type": "string" }, "title": "Check pending", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "check": { "description": "The list of checks for that pull request.", @@ -2364,7 +3062,25 @@ "type": "string" }, "title": "Check stale", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "commits-unverified": { "description": "The list of commit messages that are marked as unverified by GitHub.", @@ -2372,7 +3088,25 @@ "type": "string" }, "title": "Commits unverified", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "deployment-success": { "description": "The list of deployments that successfully passed for the pull request.", @@ -2380,7 +3114,25 @@ "type": "string" }, "title": "Deployment success", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "deployment-failure": { "description": "The list of deployments that failed for the pull request.", @@ -2388,7 +3140,25 @@ "type": "string" }, "title": "Deployment failure", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "review-threads-resolved": { "description": "The list of ids associated to review threads that are marked as resolved by GitHub.", @@ -2396,7 +3166,25 @@ "type": "string" }, "title": "Review threads resolved", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "review-threads-unresolved": { "description": "The list of ids associated to review threads that are NOT marked as resolved by GitHub.", @@ -2404,7 +3192,25 @@ "type": "string" }, "title": "Review threads unresolved", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "files": { "description": "The files that are modified, deleted or added by the pull request.", @@ -2412,7 +3218,25 @@ "type": "string" }, "title": "Files", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "added-files": { "description": "The files that are added by the pull request.", @@ -2420,7 +3244,25 @@ "type": "string" }, "title": "Added files", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "modified-files": { "description": "The files that are modified by the pull request.", @@ -2428,7 +3270,25 @@ "type": "string" }, "title": "Modified files", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "removed-files": { "description": "The files that are removed by the pull request.", @@ -2436,7 +3296,25 @@ "type": "string" }, "title": "Removed files", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "added-lines": { "description": "The lines that are added by the pull request. Only usable as `#added-lines` for the number of added lines.", @@ -2444,7 +3322,25 @@ "type": "string" }, "title": "Added lines", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "modified-lines": { "description": "The lines that are modified by the pull request. Only usable as `#modified-lines` for the number of modified lines.", @@ -2452,7 +3348,25 @@ "type": "string" }, "title": "Modified lines", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "deleted-lines": { "description": "The lines that are deleted by the pull request. Only usable as `#deleted-lines` for the number of deleted lines.", @@ -2460,7 +3374,25 @@ "type": "string" }, "title": "Deleted lines", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "co-authors": { "description": "The list of co-authors on the pull request (excluding merge commits and bots).", @@ -2476,7 +3408,24 @@ "type": "string" }, "title": "Commits behind", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + ">=", + "<=", + "<", + ">" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "required": true, + "type": "length" + } + ] }, "depends-on": { "description": "The list of dependencies to other pull request in the format `owner/repo#prnumber`.", @@ -2484,7 +3433,25 @@ "type": "string" }, "title": "Depends on", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "dependabot-dependency-name": { "description": "The dependency-name value included in the Dependabot commit message.", @@ -2492,7 +3459,25 @@ "type": "string" }, "title": "Dependabot dependency name", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "dependabot-dependency-type": { "description": "The dependency-type value included in the Dependabot commit message.", @@ -2500,7 +3485,25 @@ "type": "string" }, "title": "Dependabot dependency type", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "dependabot-update-type": { "description": "The update-type value included in the Dependabot commit message.", @@ -2508,7 +3511,25 @@ "type": "string" }, "title": "Dependabot update type", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "scope": { "description": "The list of scopes associated with the pull request for merge queue batching.", @@ -2516,7 +3537,25 @@ "type": "string" }, "title": "Scope", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "commits": { "description": "The list of commits of the pull request. The index 0 is the first commit, while -1 is the last commit.", @@ -2524,25 +3563,66 @@ "$ref": "#/$defs/Commit" }, "title": "Commits", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "current-datetime": { "description": "The current date and time.", "format": "date-time", "title": "Current datetime", - "type": "string" + "type": "string", + "x-allowed-operators": [ + "=", + "!=", + ">=", + "<=", + "<", + ">" + ], + "x-modifiers": [] }, "updated-at": { "description": "The time the pull request was updated at.", "format": "date-time", "title": "Updated at", - "type": "string" + "type": "string", + "x-allowed-operators": [ + ">=", + "<=", + "<", + ">" + ], + "x-modifiers": [] }, "created-at": { "description": "The time the pull request was created at.", "format": "date-time", "title": "Created at", - "type": "string" + "type": "string", + "x-allowed-operators": [ + ">=", + "<=", + "<", + ">" + ], + "x-modifiers": [] }, "closed-at": { "anyOf": [ @@ -2555,7 +3635,14 @@ } ], "description": "The time the pull request was closed at.", - "title": "Closed at" + "title": "Closed at", + "x-allowed-operators": [ + ">=", + "<=", + "<", + ">" + ], + "x-modifiers": [] }, "merged-at": { "anyOf": [ @@ -2568,7 +3655,14 @@ } ], "description": "The time the pull request was merged at.", - "title": "Merged at" + "title": "Merged at", + "x-allowed-operators": [ + ">=", + "<=", + "<", + ">" + ], + "x-modifiers": [] }, "queued-at": { "anyOf": [ @@ -2581,7 +3675,14 @@ } ], "description": "The time the pull request was queued at for merge.", - "title": "Queued at" + "title": "Queued at", + "x-allowed-operators": [ + ">=", + "<=", + "<", + ">" + ], + "x-modifiers": [] }, "queue-merge-started-at": { "anyOf": [ @@ -2594,22 +3695,68 @@ } ], "description": "The time the pull request mergeability checks have started at.", - "title": "Queue merge started at" + "title": "Queue merge started at", + "x-allowed-operators": [ + ">=", + "<=", + "<", + ">" + ], + "x-modifiers": [] }, "schedule": { "description": "The current time will be compared against this schedule to validate this attribute.", "title": "Schedule", - "type": "string" + "type": "string", + "x-allowed-operators": [ + "=", + "!=" + ], + "x-modifiers": [] }, "sender-permission": { "$ref": "#/$defs/GitHubRepositoryPermission", "description": "The permission of the command author.", - "title": "Sender permission" + "title": "Sender permission", + "x-allowed-operators": [ + "=", + "!=", + ">=", + "<=", + "<", + ">" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "sender": { "description": "The GitHub login of the command author.", "title": "Sender", - "type": "string" + "type": "string", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] }, "updates": { "description": "The list of updates done on an opened pull request.", @@ -2617,7 +3764,25 @@ "$ref": "#/$defs/PullRequestHeadShaHistoryDict" }, "title": "Updates", - "type": "array" + "type": "array", + "x-allowed-operators": [ + "=", + "!=", + "~=", + ">=", + "<=", + "<", + ">", + "*=" + ], + "x-modifiers": [ + { + "type": "negate" + }, + { + "type": "length" + } + ] } }, "required": [ @@ -3042,8 +4207,13 @@ "type": "null" } ], + "configuration_deprecated_attribute": { + "deprecated_summary_ghes_mode": "`commit_message_template` is deprecated and will be removed on 2026-09-30. Use the declarative `commit_message_format` instead: https://docs.mergify.com/workflow/actions/merge#migrating-from-commit_message_template", + "deprecated_summary_saas_mode": "`commit_message_template` is deprecated and will be removed on 2026-09-30. Use the declarative `commit_message_format` instead: https://docs.mergify.com/workflow/actions/merge#migrating-from-commit_message_template" + }, "default": null, - "description": "Template to use as the commit message when using the merge or squash merge method.", + "deprecated": true, + "description": "Template to use as the commit message when using the merge or squash merge method. Deprecated: use `commit_message_format` instead.", "title": "Commit Message Template" }, "commit_message_format": { @@ -3304,8 +4474,13 @@ "type": "null" } ], + "configuration_deprecated_attribute": { + "deprecated_summary_ghes_mode": "`commit_message_template` is deprecated and will be removed on 2026-09-30. Use the declarative `commit_message_format` instead: https://docs.mergify.com/workflow/actions/merge#migrating-from-commit_message_template", + "deprecated_summary_saas_mode": "`commit_message_template` is deprecated and will be removed on 2026-09-30. Use the declarative `commit_message_format` instead: https://docs.mergify.com/workflow/actions/merge#migrating-from-commit_message_template" + }, "default": null, - "description": "Template to use as the commit message when using the merge or squash merge method.", + "deprecated": true, + "description": "Template to use as the commit message when using the merge or squash merge method. Deprecated: use `commit_message_format` instead.", "title": "Commit Message Template" }, "commit_message_format": { @@ -3641,6 +4816,18 @@ "description": "Where scopes come from. `files` derives scopes from the pull request's changed files using file-pattern rules; `manual` uses scopes sent via API or `mergify scopes-send`; `None` disables scoping.", "title": "Source" }, + "barrier_files": { + "anyOf": [ + { + "$ref": "#/$defs/BarrierFileFilters" + }, + { + "type": "null" + } + ], + "default": null, + "description": "File filters marking files that impact every scope. Only valid with a `files` source; a `manual` source reports the barrier flag via the API instead. A pull request changing a matching file becomes a merge-queue barrier: it runs alone and serializes the queue at that point. At least one `include` pattern is required. Examples: ('.github/workflows/**', 'Makefile')" + }, "merge_queue_scope": { "default": "merge-queue", "description": "Scope name automatically applied to merge queue PRs.", diff --git a/src/check_jsonschema/builtin_schemas/vendor/readthedocs.json b/src/check_jsonschema/builtin_schemas/vendor/readthedocs.json index 4cb0fba15..52c133b4d 100644 --- a/src/check_jsonschema/builtin_schemas/vendor/readthedocs.json +++ b/src/check_jsonschema/builtin_schemas/vendor/readthedocs.json @@ -205,14 +205,15 @@ "mambaforge-23.11", "mambaforge-latest", "miniforge3-25.11", + "miniforge3-26.3", "miniforge3-latest" ] }, "nodejs": { - "enum": ["14", "16", "18", "19", "20", "22", "23", "24", "25", "latest"] + "enum": ["14", "16", "18", "19", "20", "22", "23", "24", "25", "26", "latest"] }, "ruby": { - "enum": ["3.3", "3.4", "latest"] + "enum": ["3.3", "3.4", "4.0", "latest"] }, "rust": { "enum": [ @@ -225,6 +226,7 @@ "1.82", "1.86", "1.91", + "1.96", "latest" ] }, @@ -239,6 +241,7 @@ "1.23", "1.24", "1.25", + "1.26", "latest" ] } diff --git a/src/check_jsonschema/builtin_schemas/vendor/renovate.json b/src/check_jsonschema/builtin_schemas/vendor/renovate.json index 70de9127a..644ed14cf 100644 --- a/src/check_jsonschema/builtin_schemas/vendor/renovate.json +++ b/src/check_jsonschema/builtin_schemas/vendor/renovate.json @@ -1,8 +1,8 @@ { "$id": "https://docs.renovatebot.com/renovate-schema.json", - "title": "JSON schema for Renovate 43.248.0 config files (https://renovatebot.com/)", + "title": "JSON schema for Renovate 43.270.1 config files (https://renovatebot.com/)", "$schema": "http://json-schema.org/draft-07/schema#", - "x-renovate-version": "43.248.0", + "x-renovate-version": "43.270.1", "allowComments": true, "type": "object", "definitions": { @@ -5573,12 +5573,20 @@ "type": "object", "default": { "managerFilePatterns": [ - "/\\.(?:cs|fs|vb)proj$/", + "/\\.(?:cs|fs|vb|sql)proj$/", "/\\.(?:props|targets)$/", "/(^|/)dotnet-tools\\.json$/", "/(^|/)global\\.json$/" ], - "rangeStrategy": "bump" + "rangeStrategy": "bump", + "packageRules": [ + { + "matchDepTypes": [ + "msbuild-sdk" + ], + "rangeStrategy": "bump" + } + ] }, "$ref": "#", "items": { @@ -8218,6 +8226,7 @@ "node", "npm", "nuget", + "paket", "pep440", "perl", "poetry", @@ -9767,6 +9776,11 @@ "checkedBranches" ] }, + { + "required": [ + "rebaseAllOpenBranches" + ] + }, { "required": [ "httpCacheTtlDays" diff --git a/src/check_jsonschema/builtin_schemas/vendor/sha256/compose-spec.sha256 b/src/check_jsonschema/builtin_schemas/vendor/sha256/compose-spec.sha256 index 4e808f89d..94cfd11ce 100644 --- a/src/check_jsonschema/builtin_schemas/vendor/sha256/compose-spec.sha256 +++ b/src/check_jsonschema/builtin_schemas/vendor/sha256/compose-spec.sha256 @@ -1 +1 @@ -1f91e091f16b2dd50ab8860e02bb391d22df553d91c145eacedb1b6eff9c3f0e \ No newline at end of file +73ca5878c77570ba222a558016c7b3c6770ba5f3377786593e32180666512f8f \ No newline at end of file diff --git a/src/check_jsonschema/builtin_schemas/vendor/sha256/mergify.sha256 b/src/check_jsonschema/builtin_schemas/vendor/sha256/mergify.sha256 index 561e80889..2f1f6f5a4 100644 --- a/src/check_jsonschema/builtin_schemas/vendor/sha256/mergify.sha256 +++ b/src/check_jsonschema/builtin_schemas/vendor/sha256/mergify.sha256 @@ -1 +1 @@ -8e6a09b8608bfc9bf26154aeb88c836e00844c89a19d0fd5100ab55ec510d197 \ No newline at end of file +04c72e85965f4c56fa1f512c03cc83de8ca75b5644c5c19ccd03641eb607e640 \ No newline at end of file diff --git a/src/check_jsonschema/builtin_schemas/vendor/sha256/readthedocs.sha256 b/src/check_jsonschema/builtin_schemas/vendor/sha256/readthedocs.sha256 index 643913ee7..42e2a97ec 100644 --- a/src/check_jsonschema/builtin_schemas/vendor/sha256/readthedocs.sha256 +++ b/src/check_jsonschema/builtin_schemas/vendor/sha256/readthedocs.sha256 @@ -1 +1 @@ -94a4af1da3f9d1152dc82dc5ace12ea7b504504f63baff3d4dacb6bf78586c4f \ No newline at end of file +9cbf6059a2b60f68867e650e45f74bfbde6ed1f28d4bcaebe766b5c184030e74 \ No newline at end of file diff --git a/src/check_jsonschema/builtin_schemas/vendor/sha256/renovate.sha256 b/src/check_jsonschema/builtin_schemas/vendor/sha256/renovate.sha256 index ddd9757ad..818a470b3 100644 --- a/src/check_jsonschema/builtin_schemas/vendor/sha256/renovate.sha256 +++ b/src/check_jsonschema/builtin_schemas/vendor/sha256/renovate.sha256 @@ -1 +1 @@ -0835792462428365ba6ab2a517233b714f00609a52062c314f7a55aae5fb329e \ No newline at end of file +7f806a704c7342f57dfb610dad6289698c30c3995a49d8011dc92a7e1f05689c \ No newline at end of file diff --git a/src/check_jsonschema/builtin_schemas/vendor/sha256/taskfile.sha256 b/src/check_jsonschema/builtin_schemas/vendor/sha256/taskfile.sha256 index 1c44415b6..b20925fe7 100644 --- a/src/check_jsonschema/builtin_schemas/vendor/sha256/taskfile.sha256 +++ b/src/check_jsonschema/builtin_schemas/vendor/sha256/taskfile.sha256 @@ -1 +1 @@ -04d7f12c851f02d43e78ebaccf418a1b694596f19ba7d1c6e67b5144a4adffa1 \ No newline at end of file +c12ec913625a91c15aa49f8d30bd975fb4faab0b27009c3421f9bfdaa0e1980d \ No newline at end of file diff --git a/src/check_jsonschema/builtin_schemas/vendor/taskfile.json b/src/check_jsonschema/builtin_schemas/vendor/taskfile.json index 2210952d6..df0637b7e 100644 --- a/src/check_jsonschema/builtin_schemas/vendor/taskfile.json +++ b/src/check_jsonschema/builtin_schemas/vendor/taskfile.json @@ -1,5 +1,5 @@ { - "$schema": "http://json-schema.org/draft-07/schema", + "$schema": "http://json-schema.org/draft-07/schema#", "title": "Taskfile YAML Schema", "description": "Schema for Taskfile files.", "definitions": { @@ -177,6 +177,11 @@ "enum": ["none", "checksum", "timestamp"], "default": "none" }, + "use_gitignore": { + "description": "When set to true, files matching .gitignore rules will be excluded from sources and generates glob resolution. Overrides the global gitignore setting.", + "type": "boolean", + "default": false + }, "prefix": { "description": "Defines a string to prefix the output of tasks running in parallel. Only used when the output mode is `prefixed`.", "type": "string" @@ -318,6 +323,13 @@ "map": { "type": "object", "description": "The value will be treated as a literal map type and stored in the variable" + }, + "value": { + "description": "A literal value assigned to the variable. Useful together with other keys such as 'secret'" + }, + "secret": { + "type": "boolean", + "description": "Marks the variable as secret. Secret values will be masked as ***** in command logs to prevent accidental exposure of sensitive information." } }, "additionalProperties": false @@ -687,6 +699,11 @@ "enum": ["none", "checksum", "timestamp"], "default": "checksum" }, + "use_gitignore": { + "description": "When set to true, files matching .gitignore rules will be excluded from sources and generates glob resolution for all tasks. Can be overridden per task.", + "type": "boolean", + "default": false + }, "includes": { "description": "Imports tasks from the specified taskfiles. The tasks described in the given Taskfiles will be available with the informed namespace.", "type": "object", @@ -701,11 +718,13 @@ "properties": { "taskfile": { "description": "The path for the Taskfile or directory to be included. If a directory, Task will look for files named `Taskfile.yml` or `Taskfile.yaml` inside that directory. If a relative path, resolved relative to the directory containing the including Taskfile.", - "type": "string" + "type": "string", + "minLength": 1 }, "dir": { "description": "The working directory of the included tasks when run.", - "type": "string" + "type": "string", + "minLength": 1 }, "optional": { "description": "If `true`, no errors will be thrown if the specified file does not exist.", @@ -741,7 +760,15 @@ "description": "The checksum of the file you expect to include. If the checksum does not match, the file will not be included.", "type": "string" } - } + }, + "anyOf": [ + { + "required": ["taskfile"] + }, + { + "required": ["dir"] + } + ] } ] }