diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 4854c730a64..1282da6fe6d 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -25,7 +25,7 @@
- [Compatible Language Servers and Tools](#compatible-language-servers-and-tools)
- [`redhat-developer/yaml-language-server`](#redhat-developeryaml-language-server)
- [`tamasfe/taplo`](#tamasfetaplo)
- - [`tombi-toml/tombi`](#tombi-toml-tombi)
+ - [`tombi-toml/tombi](#tombi-toml-tombi)
- [`Microsoft/vscode-json-languageservice`](#microsoftvscode-json-languageservice)
- [Other](#other)
- [Troubleshooting](#troubleshooting)
diff --git a/src/schema-validation.jsonc b/src/schema-validation.jsonc
index 7b8681f4c2d..c5f13bba462 100644
--- a/src/schema-validation.jsonc
+++ b/src/schema-validation.jsonc
@@ -249,7 +249,6 @@
"partial-pyright.json",
"pep-723.json",
"pyproject.json",
- "pyproject-tools.json",
"sarif-2.1.0-rtm.0.json",
"sarif-2.1.0-rtm.1.json",
"sarif-2.1.0-rtm.2.json",
@@ -318,7 +317,6 @@
"partial-fusion-texture-metadata.json", // minecraft-texture-mcmeta.json[fusion]
"partial-taskipy.json", // pyproject.json[tool.taskipy]
"poetry.json", // backwards-compat
- "pyproject-tools.json",
"setuptools.json", // backwards-compat
"scikit-build.json", // backwards-compat
"azure-deviceupdate-manifest-definitions-4.0.json",
@@ -1037,7 +1035,6 @@
"partial-taskipy.json",
"partial-tox.json",
"poetry.json",
- "pyproject-tools.json",
"ruff.json",
"tombi.json",
"uv.json",
@@ -1090,53 +1087,6 @@
"externalSchema": ["base.json"]
},
"pyproject.json": {
- "externalSchema": [
- "hatch.json",
- "maturin.json",
- "partial-black.json",
- "partial-cibuildwheel.json",
- "partial-mypy.json",
- "partial-pdm.json",
- "partial-pdm-dockerize.json",
- "partial-poe.json",
- "partial-poetry.json",
- "partial-pyright.json",
- "partial-repo-review.json",
- "partial-scikit-build.json",
- "partial-setuptools.json",
- "partial-setuptools-scm.json",
- "partial-taskipy.json",
- "partial-tox.json",
- "poetry.json",
- "pyproject-tools.json",
- "ruff.json",
- "tombi.json",
- "uv.json",
- "base.json"
- ],
- "unknownFormat": [
- "uint16",
- "uint8",
- "uint",
- "int",
- "python-module-name",
- "pep508-identifier",
- "python-qualified-identifier",
- "python-identifier",
- "pep561-stub-name"
- ],
- "unknownKeywords": [
- "markdownDescription",
- "x-taplo",
- "x-taplo-info",
- "x-tombi-toml-version",
- "x-tombi-table-keys-order",
- "x-tombi-array-values-order",
- "x-intellij-html-description",
- "x-intellij-language-injection"
- ]
- },
- "pyproject-tools.json": {
"externalSchema": [
"hatch.json",
"maturin.json",
diff --git a/src/schemas/json/bitrise.json b/src/schemas/json/bitrise.json
index b4df2959e0f..53f2edb7085 100644
--- a/src/schemas/json/bitrise.json
+++ b/src/schemas/json/bitrise.json
@@ -311,6 +311,15 @@
},
"run_if": {
"$ref": "#/definitions/GraphPipelineWorkflowRunIfModel"
+ },
+ "parallel": {
+ "oneOf": [{ "type": "integer" }, { "type": "string" }]
+ },
+ "uses": {
+ "type": "string"
+ },
+ "inputs": {
+ "$ref": "#/definitions/EnvModel"
}
},
"additionalProperties": false,
diff --git a/src/schemas/json/cargo.json b/src/schemas/json/cargo.json
index 2a16fe4a7a3..c4dbd10b5f7 100644
--- a/src/schemas/json/cargo.json
+++ b/src/schemas/json/cargo.json
@@ -248,7 +248,6 @@
}
}
},
- "additionalProperties": false,
"x-tombi-table-keys-order": "ascending"
},
"Edition": {
@@ -812,7 +811,6 @@
}
}
},
- "additionalProperties": false,
"x-tombi-table-keys-order": "schema"
},
"BuildOverride": {
@@ -844,7 +842,6 @@
"$ref": "#/definitions/Profile"
}
},
- "additionalProperties": false,
"x-tombi-table-keys-order": "schema"
}
]
@@ -938,7 +935,6 @@
}
}
},
- "additionalProperties": false,
"x-tombi-table-keys-order": "schema"
},
"Profiles": {
@@ -1221,7 +1217,6 @@
}
}
},
- "additionalProperties": false,
"x-tombi-table-keys-order": "schema"
},
"Workspace": {
@@ -1342,7 +1337,6 @@
"$ref": "#/definitions/Publish"
}
},
- "additionalProperties": false,
"x-tombi-table-keys-order": "schema",
"x-taplo": {
"links": {
@@ -1383,7 +1377,6 @@
}
}
},
- "additionalProperties": false,
"x-tombi-table-keys-order": "schema",
"x-taplo": {
"links": {
diff --git a/src/schemas/json/pep-723.json b/src/schemas/json/pep-723.json
index f24455767b9..c147315c0b2 100644
--- a/src/schemas/json/pep-723.json
+++ b/src/schemas/json/pep-723.json
@@ -34,7 +34,91 @@
"examples": [["attrs", "requests ~= 2.28"]]
},
"tool": {
- "$ref": "https://json.schemastore.org/pyproject-tools.json"
+ "type": "object",
+ "additionalProperties": {
+ "type": "object"
+ },
+ "title": "Tool-specific configuration",
+ "description": "Every tool that is used by the project can have users specify configuration data as long as they use a sub-table within `[tool]`. Generally a project can use the subtable `tool.$NAME` if, and only if, they own the entry for `$NAME` in the Cheeseshop/PyPI.",
+ "markdownDescription": "Every tool that is used by the project can have users specify configuration data as long as they use a sub-table within `[tool]`. Generally a project can use the subtable `tool.$NAME` if, and only if, they own the entry for `$NAME` in the Cheeseshop/PyPI.",
+ "x-intellij-html-description": "
Every tool that is used by the project can have users specify configuration data as long as they use a sub-table within [tool]. Generally a project can use the subtable tool.$NAME if, and only if, they own the entry for $NAME in the Cheeseshop/PyPI.
",
+ "x-taplo": {
+ "links": {
+ "key": "https://packaging.python.org/en/latest/specifications/pyproject-toml/#arbitrary-tool-configuration-the-tool-table"
+ }
+ },
+ "x-tombi-table-keys-order": "ascending",
+ "properties": {
+ "black": {
+ "$ref": "https://json.schemastore.org/partial-black.json"
+ },
+ "cibuildwheel": {
+ "$ref": "https://json.schemastore.org/partial-cibuildwheel.json"
+ },
+ "mypy": {
+ "$ref": "https://json.schemastore.org/partial-mypy.json"
+ },
+ "ruff": {
+ "$ref": "https://json.schemastore.org/ruff.json"
+ },
+ "hatch": {
+ "$ref": "https://json.schemastore.org/hatch.json"
+ },
+ "maturin": {
+ "$ref": "https://json.schemastore.org/maturin.json",
+ "title": "Maturin",
+ "description": "Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages"
+ },
+ "scikit-build": {
+ "$ref": "https://json.schemastore.org/partial-scikit-build.json"
+ },
+ "setuptools": {
+ "$ref": "https://json.schemastore.org/partial-setuptools.json"
+ },
+ "setuptools_scm": {
+ "$ref": "https://json.schemastore.org/partial-setuptools-scm.json"
+ },
+ "poe": {
+ "$ref": "https://json.schemastore.org/partial-poe.json"
+ },
+ "poetry": {
+ "$ref": "https://json.schemastore.org/partial-poetry.json"
+ },
+ "pdm": {
+ "$ref": "https://json.schemastore.org/partial-pdm.json"
+ },
+ "pyright": {
+ "$ref": "https://json.schemastore.org/partial-pyright.json"
+ },
+ "repo-review": {
+ "$ref": "https://json.schemastore.org/partial-repo-review.json"
+ },
+ "taskipy": {
+ "$ref": "https://json.schemastore.org/partial-taskipy.json",
+ "title": "Task Runner",
+ "description": "The complementary task runner for python."
+ },
+ "tombi": {
+ "$ref": "https://json.schemastore.org/tombi.json",
+ "title": "TOML Toolkit",
+ "description": "Tombi (鳶) is a toolkit for TOML; providing a formatter/linter and language server"
+ },
+ "tox": {
+ "$ref": "https://json.schemastore.org/partial-tox.json"
+ },
+ "uv": {
+ "$ref": "https://json.schemastore.org/uv.json"
+ }
+ },
+ "examples": [
+ {
+ "tool": {
+ "isort": {
+ "profile": "black"
+ }
+ }
+ }
+ ]
}
}
}
diff --git a/src/schemas/json/pyproject-tools.json b/src/schemas/json/pyproject-tools.json
deleted file mode 100644
index 8c600182501..00000000000
--- a/src/schemas/json/pyproject-tools.json
+++ /dev/null
@@ -1,89 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "https://json.schemastore.org/pyproject-tools.json",
- "type": "object",
- "additionalProperties": {
- "type": "object"
- },
- "title": "Tool-specific configuration",
- "description": "Every tool that is used by the project can have users specify configuration data as long as they use a sub-table within `[tool]`. Generally a project can use the subtable `tool.$NAME` if, and only if, they own the entry for `$NAME` in the Cheeseshop/PyPI.",
- "markdownDescription": "Every tool that is used by the project can have users specify configuration data as long as they use a sub-table within `[tool]`. Generally a project can use the subtable `tool.$NAME` if, and only if, they own the entry for `$NAME` in the Cheeseshop/PyPI.",
- "x-intellij-html-description": "Every tool that is used by the project can have users specify configuration data as long as they use a sub-table within [tool]. Generally a project can use the subtable tool.$NAME if, and only if, they own the entry for $NAME in the Cheeseshop/PyPI.
",
- "x-taplo": {
- "links": {
- "key": "https://packaging.python.org/en/latest/specifications/pyproject-toml/#arbitrary-tool-configuration-the-tool-table"
- }
- },
- "x-tombi-table-keys-order": "ascending",
- "properties": {
- "black": {
- "$ref": "https://json.schemastore.org/partial-black.json"
- },
- "cibuildwheel": {
- "$ref": "https://json.schemastore.org/partial-cibuildwheel.json"
- },
- "mypy": {
- "$ref": "https://json.schemastore.org/partial-mypy.json"
- },
- "ruff": {
- "$ref": "https://json.schemastore.org/ruff.json"
- },
- "hatch": {
- "$ref": "https://json.schemastore.org/hatch.json"
- },
- "maturin": {
- "$ref": "https://json.schemastore.org/maturin.json",
- "title": "Maturin",
- "description": "Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages"
- },
- "scikit-build": {
- "$ref": "https://json.schemastore.org/partial-scikit-build.json"
- },
- "setuptools": {
- "$ref": "https://json.schemastore.org/partial-setuptools.json"
- },
- "setuptools_scm": {
- "$ref": "https://json.schemastore.org/partial-setuptools-scm.json"
- },
- "poe": {
- "$ref": "https://json.schemastore.org/partial-poe.json"
- },
- "poetry": {
- "$ref": "https://json.schemastore.org/partial-poetry.json"
- },
- "pdm": {
- "$ref": "https://json.schemastore.org/partial-pdm.json"
- },
- "pyright": {
- "$ref": "https://json.schemastore.org/partial-pyright.json"
- },
- "repo-review": {
- "$ref": "https://json.schemastore.org/partial-repo-review.json"
- },
- "taskipy": {
- "$ref": "https://json.schemastore.org/partial-taskipy.json",
- "title": "Task Runner",
- "description": "The complementary task runner for python."
- },
- "tombi": {
- "$ref": "https://json.schemastore.org/tombi.json",
- "title": "TOML Toolkit",
- "description": "Tombi (鳶) is a toolkit for TOML; providing a formatter/linter and language server"
- },
- "tox": {
- "$ref": "https://json.schemastore.org/partial-tox.json"
- },
- "uv": {
- "$ref": "https://json.schemastore.org/uv.json"
- }
- },
- "examples": [
- {
- "tool": {
- "isort": {
- "profile": "black"
- }
- }
- }
- ]
-}
diff --git a/src/schemas/json/pyproject.json b/src/schemas/json/pyproject.json
index 150d881ba7b..2dc3d76b18c 100644
--- a/src/schemas/json/pyproject.json
+++ b/src/schemas/json/pyproject.json
@@ -853,7 +853,91 @@
"$ref": "#/definitions/BuildSystem"
},
"tool": {
- "$ref": "https://json.schemastore.org/pyproject-tools.json"
+ "type": "object",
+ "additionalProperties": {
+ "type": "object"
+ },
+ "title": "Tool-specific configuration",
+ "description": "Every tool that is used by the project can have users specify configuration data as long as they use a sub-table within `[tool]`. Generally a project can use the subtable `tool.$NAME` if, and only if, they own the entry for `$NAME` in the Cheeseshop/PyPI.",
+ "markdownDescription": "Every tool that is used by the project can have users specify configuration data as long as they use a sub-table within `[tool]`. Generally a project can use the subtable `tool.$NAME` if, and only if, they own the entry for `$NAME` in the Cheeseshop/PyPI.",
+ "x-intellij-html-description": "Every tool that is used by the project can have users specify configuration data as long as they use a sub-table within [tool]. Generally a project can use the subtable tool.$NAME if, and only if, they own the entry for $NAME in the Cheeseshop/PyPI.
",
+ "x-taplo": {
+ "links": {
+ "key": "https://packaging.python.org/en/latest/specifications/pyproject-toml/#arbitrary-tool-configuration-the-tool-table"
+ }
+ },
+ "x-tombi-table-keys-order": "ascending",
+ "properties": {
+ "black": {
+ "$ref": "https://json.schemastore.org/partial-black.json"
+ },
+ "cibuildwheel": {
+ "$ref": "https://json.schemastore.org/partial-cibuildwheel.json"
+ },
+ "mypy": {
+ "$ref": "https://json.schemastore.org/partial-mypy.json"
+ },
+ "ruff": {
+ "$ref": "https://json.schemastore.org/ruff.json"
+ },
+ "hatch": {
+ "$ref": "https://json.schemastore.org/hatch.json"
+ },
+ "maturin": {
+ "$ref": "https://json.schemastore.org/maturin.json",
+ "title": "Maturin",
+ "description": "Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages"
+ },
+ "scikit-build": {
+ "$ref": "https://json.schemastore.org/partial-scikit-build.json"
+ },
+ "setuptools": {
+ "$ref": "https://json.schemastore.org/partial-setuptools.json"
+ },
+ "setuptools_scm": {
+ "$ref": "https://json.schemastore.org/partial-setuptools-scm.json"
+ },
+ "poe": {
+ "$ref": "https://json.schemastore.org/partial-poe.json"
+ },
+ "poetry": {
+ "$ref": "https://json.schemastore.org/partial-poetry.json"
+ },
+ "pdm": {
+ "$ref": "https://json.schemastore.org/partial-pdm.json"
+ },
+ "pyright": {
+ "$ref": "https://json.schemastore.org/partial-pyright.json"
+ },
+ "repo-review": {
+ "$ref": "https://json.schemastore.org/partial-repo-review.json"
+ },
+ "taskipy": {
+ "$ref": "https://json.schemastore.org/partial-taskipy.json",
+ "title": "Task Runner",
+ "description": "The complementary task runner for python."
+ },
+ "tombi": {
+ "$ref": "https://json.schemastore.org/tombi.json",
+ "title": "TOML Toolkit",
+ "description": "Tombi (鳶) is a toolkit for TOML; providing a formatter/linter and language server"
+ },
+ "tox": {
+ "$ref": "https://json.schemastore.org/partial-tox.json"
+ },
+ "uv": {
+ "$ref": "https://json.schemastore.org/uv.json"
+ }
+ },
+ "examples": [
+ {
+ "tool": {
+ "isort": {
+ "profile": "black"
+ }
+ }
+ }
+ ]
}
},
"title": "JSON schema for Python project metadata and configuration",
diff --git a/src/test/pyproject-tools/pyproject-tools.toml b/src/test/pyproject-tools/pyproject-tools.toml
deleted file mode 100644
index 00d4d21ba58..00000000000
--- a/src/test/pyproject-tools/pyproject-tools.toml
+++ /dev/null
@@ -1,5 +0,0 @@
-#:schema ../../schemas/json/pyproject-tools.json
-[tool.uv]
-
-[tool.ruff]
-select = ["RUF001"]