json
Sun Oct 16 2022 10:40:44 GMT+0000 (UTC)
{ "$id": "https://json.schemastore.org/pre-commit-config.json", "$schema": "http://json-schema.org/draft-07/schema", "definitions": { "meta_repo": { "type": "object", "properties": { "repo": { "default": "meta", "description": "meta hooks", "enum": ["meta"], "type": "string" }, "hooks": { "type": "array", "items": { "type": "object", "required": ["id"], "properties": { "id": { "type": "string", "enum": [ "check-hooks-apply", "check-useless-excludes", "identity" ] } } } } } }, "local_repo": { "type": "object", "properties": { "repo": { "default": "local", "description": "local hooks", "enum": ["local"], "type": "string" }, "hooks": { "type": "array", "items": { "$ref": "#/definitions/hook_definition", "type": "object", "required": ["id", "name", "entry", "language"] } } } }, "uri_repo": { "type": "object", "properties": { "repo": { "description": "the repository url to git clone from", "type": "string", "pattern": "^(?!.*(local|meta)).*$" }, "rev": { "description": "the revision or tag to clone at (previously sha).", "type": "string" }, "hooks": { "description": "A list of hook mappings. See https://pre-commit.com/#pre-commit-configyaml---hooks.", "type": "array", "items": { "type": "object", "$ref": "#/definitions/hook_definition" } } } }, "hook_definition": { "type": "object", "properties": { "id": { "description": "which hook from the repository to use.", "type": "string" }, "alias": { "description": "(optional) allows the hook to be referenced using an additional id when using pre-commit run <hookid>.", "type": "string" }, "name": { "description": "(optional) override the name of the hook - shown during hook execution.", "type": "string" }, "language": { "description": "(optional) Tells pre-commit on how to install the hook. See https://pre-commit.com/#supported-languages", "$ref": "https://json.schemastore.org/pre-commit-hooks.json#/definitions/language" }, "language_version": { "description": "(optional) override the language version for the hook. See https://pre-commit.com/#overriding-language-version.", "type": "string" }, "files": { "description": "(optional) override the default pattern for files to run on.", "type": "string" }, "entry": { "description": "(optional) Override default command to execute for the hook.", "type": "string" }, "exclude": { "description": "(optional) file exclude pattern.", "type": "string" }, "types": { "description": "(optional) override the default file types to run on. See https://pre-commit.com/#filtering-files-with-types.", "$ref": "https://json.schemastore.org/pre-commit-hooks.json#/definitions/file_types" }, "types_or": { "description": "(optional) override the default file types to run on (OR). See Filtering files with types. new in 2.9.0.", "$ref": "https://json.schemastore.org/pre-commit-hooks.json#/definitions/file_types" }, "exclude_types": { "description": "(optional) file types to exclude.", "$ref": "https://json.schemastore.org/pre-commit-hooks.json#/definitions/file_types" }, "args": { "description": "(optional) list of additional parameters to pass to the hook.", "type": "array", "items": { "type": "string" } }, "stages": { "description": "(optional) confines the hook to the commit, merge-commit, push, prepare-commit-msg, commit-msg, post-checkout, post-commit or manual stage. See https://pre-commit.com/#confining-hooks-to-run-at-certain-stages.", "$ref": "https://json.schemastore.org/pre-commit-hooks.json#/definitions/stages" }, "additional_dependencies": { "description": "(optional) a list of dependencies that will be installed in the environment where this hook gets run. One useful application is to install plugins for hooks such as eslint.", "type": "array", "items": { "type": "string" } }, "always_run": { "description": "(optional) if true, this hook will run even if there are no matching files.", "type": "boolean" }, "verbose": { "description": "(optional) if true, forces the output of the hook to be printed even when the hook passes.", "type": "boolean" }, "log_file": { "description": "(optional) if present, the hook output will additionally be written to a file.", "type": "string" }, "pass_filenames": { "description": "(optional) if false, this hook will be called only once without being called for each matching file.", "type": "boolean", "default": false } } } }, "properties": { "ci": { "description": "pre-commit.ci specific settings. See https://pre-commit.ci/#configuration", "type": "object", "properties": { "autofix_commit_msg": { "description": "custom commit message for PR autofixes", "default": "[pre-commit.ci] auto fixes from pre-commit.com hooks\n\nfor more information, see https://pre-commit.ci", "type": "string" }, "autofix_prs": { "description": "whether to autofix pull requests. when disabled, comment \"pre-commit.ci autofix\" on a pull request to manually trigger auto-fixing", "default": true, "type": "boolean" }, "autoupdate_branch": { "description": "branch to send autoupdate PRs to. by default, pre-commit.ci will update the default branch of the repository.", "default": "", "type": "string" }, "autoupdate_commit_msg": { "description": "custom commit message for autoupdate PRs", "default": "[pre-commit.ci] pre-commit autoupdate", "type": "string" }, "autoupdate_schedule": { "description": "control when the autoupdate runs", "type": "string", "default": "weekly", "enum": ["weekly", "monthly", "quarterly"] }, "skip": { "description": "which hook ids to be skipped when running under pre-commit.ci", "type": "array", "items": { "type": "string" } }, "submodules": { "description": "whether to recursive check out submodules", "default": false, "type": "boolean" } } }, "repos": { "description": "A list of repository mappings. See https://pre-commit.com/#pre-commit-configyaml---repos.", "type": "array", "items": { "anyOf": [ { "$ref": "#/definitions/meta_repo" }, { "$ref": "#/definitions/local_repo" }, { "$ref": "#/definitions/uri_repo" } ] } }, "default_language_version": { "description": "(optional: default {}) a mapping from language to the default language_version that should be used for that language. This will only override individual hooks that do not set language_version.", "type": "object", "additionalProperties": { "type": "string" } }, "default_stages": { "description": "(optional: default (all stages)) a configuration-wide default for the stages property of hooks. This will only override individual hooks that do not set stages.", "$ref": "https://json.schemastore.org/pre-commit-hooks.json#/definitions/stages" }, "files": { "description": "(optional: default '') global file include pattern.", "type": "string", "default": "" }, "exclude": { "description": "(optional: default ^$) global file exclude pattern.", "type": "string", "default": "^$" }, "fail_fast": { "description": "(optional: default false) set to true to have pre-commit stop running hooks after the first failure.", "type": "boolean", "default": false }, "minimum_pre_commit_version": { "description": "(optional: default '0') require a minimum version of pre-commit.", "type": "string", "default": "0" } }, "required": ["repos"], "title": "JSON schema for .pre-commit-config.yaml", "type": "object" }
visual studio code insiders
https://json.schemastore.org/pre-commit-config.json
Comments